Code Monkey home page Code Monkey logo

day-ploy's Introduction

day-ploy

A Python program that assists you in creating a realistic daily schedule depending on how much you love each activity.

What is this?

ploy (noun) a slightly dishonest method used to try to achieve something

Source: https://dictionary.cambridge.org/dictionary/learner-english/ploy

day-ploy is a Python program that allows you to manipulate the flow of time. It will day-ploy (deploy) a perfect daily plan for you to follow (as best as you can) based on the basic facts you provide.

This program is based on the concept behind SuperMemo Plan, which is a game-changing piece of software that will... well, change your life for the better.

This Python program is not intended to be a complete replacement for SuperMemo Plan, but rather as a starting point for further development and expansion. I'm hoping for this to serve as a skeleton for something more considerable.

How do you use it?

Very simple:

  1. Put the txt file in the same location as the code
  2. Run the program and enter the list of the activities which you want to do today
  3. Enter the desired number of minutes which you would like to spend on each of these activities
  4. Let the program give you a more realistic number of minutes for each of your activities

Contributing

The program is still a massive work-in-progress. If you would like to contribute, then please do so!

You can fork this project and build something pretty :).

Not sure what you should be aiming for? Read this guide to find out about how the original SuperMemo Plan is supposed to work. Then simply transform those concepts into Python letters and numbers to bring it to life.

Feel free to contact me if you get stuck, I will be more than happy to help!

TODO list

  • Need to make the program figure out the start time based on ActLen
  • Need to make the program add the start time to the CSV
  • Let the user enter their own start time
  • Rigid feature
  • Fixed feature (I need to first figure out the maths behind it)
  • There is an issue where ActLen is not being written into the CSV file
  • Think about whether we should use Pandas or JSON. The reason being is that, currently, Pandas uses about 30 Mb of RAM, whereas JSON uses 2 Mb.
    • Furthermore, Pandas is a somewhat esoteric library, and few people will be comfortable using it. Therefore, this could limit the number of contributors.
  • Might need to make the name of the CSV file change according to the date. But this can be done later: "data.csv" should do for now.
  • Ability to move activities up and down
  • Print the index of each activity to make it easier for the user to delete something
  • Create a timer. Perhaps use something like:
    import winsound
    start_time = "13:00"
    start_time_stripped = datetime.strptime(start_time, "%H:%M")
    start_time_formatted = datetime.strftime(start_time_stripped, "%H:%M")
    while True: # This consumes a lot of CPU, and is therefore not resource-friendly
      if start_time_formatted == datetime.strftime(datetime.now(), "%H:%M"):
      winsound.Beep(1000,1000)
      print("timer!")
      break
    

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.