Feature ideas - gropax/qiq GitHub Wiki
List of possible extensions/programs
- Learning suggestions
- Redaction of texts
- Model language patterns (natural language, programming languages)
- Create and model philosophical systems
- Create and oppose arguments
- Records memories or dreams
Learning project
I want to be told the list of learning projects I created in the past. One of my problems is that I want to learn many things want I am busy, but don't remember anything while at rest. Therefore, I want to store these learning tasks in a place I can easily retrieve data from.
$ qiq task list -t @learning
- Learn chinese
- Learn Haskell
- Learn Monads
- Learn State Monad
It would be nice to receive suggestions from the system about some learning tasks, accompanied from a little teaser. It could show me a sample of curious Haskell code, or a chinese sentence, to catch my mind and give me motivation to start this new activity.
$ qiq task pick
What about learning how to use the State monad in Haskell ?
This is a great way to improve your programming skills. It will help you develop the functional way of thinking. It will be a stimulating challenge and you will feel empowered and satisfied by want you will learn from it.
Doesn't it looks cool ?
instance Monad (State s) where
The return function is implemented as:
return :: a -> State s a
return x = State ( \ st -> (x, st) )
Do we start ? (Yn)
The teaser may contain different parts: a title (how to use the State monad), a sample of the subject (return :: a -> State s a
), a rationale about all the good reasons to do the task (This is a great way to improve your programming skills).
The program may promp at the end what I want to do about the suggested task. I may refuse or postpone, and the system could then provide another suggestion.
All these features may be generalized to every kind of tasks.
"Business" value
- Manage list of tasks and subtasks.
- Help remember things to do
- Provide pertinent suggestions
- Give motivation by teasing and providing good reasons
Composition
objects
Provide Compositions
are text file under construction. They are progressively incorporation and formating content from notes, collected regularly.
$ qiq note new @my-resume --content "I can lick my own nose"
925
...
$ qiq comp status my-resume
Number of lines: 45
Unprocessed notes: 2
$ qiq comp my-resume --notes
Note 925, created two minutes ago
I can lick my own nose
$ qiq comp edit -N # Append all notes to composition
(text editor, append all notes)
Actions
- Create a note
- Inline/with text editor
- In default/special channel
- With/without tags
- Update a note in text editor
- Show a note
- Delete a note
- List notes:
- All notes/in chanel/with tag
- Sort by creation/update time/tage name, etc..
- Add tag to note
- Remove tag from note
- Copy note in another channel