
Programming Activities
======================

Architecture
____________

Philosophise and think --> e.g. container framework --> one week to many months
Investigate standards and existing solutions --> e.g. calendar/date/time/duration --> two months
Design prototype --> one to three months

New Data Format Im-/Export
__________________________

Investigate format, history, similar formats --> e.g. date-time formats --> two to four weeks
Define constants for as many things as possible --> routine diligence work --> one to two weeks
Write de-/serialiser --> one to many months

Test
____

Write cybol application --> one to two weeks
Test
Search bug, e.g. by adding test log messages --> one day to four weeks

Reflexion
_________

Reflect nature/human thinking, e.g. on which data filters are used for communication:
serialisation + encoding + compression + send
--> difficult, open end, often knot in head, uncertainty if solvable satisfactorily, self-pressure since unclear how much time it will take, write code fragments or paint diagrams on paper
--> days to weeks

Programming
___________

Program code, e.g. socket functions
Test at runtime by executing cybol example applications
Document design, e.g. as pure text file or diagram
--> sometimes boring, other times interesting, at least safety how solution looks like, calm since path is clear
--> days to weeks

Basics
______

Implement basic things:
constants, variables, if-else blocks for several executors
--> simple, no thinking necessary, assembly-line work, annoying, but visible success, may be done in non-silent environment where concentration is difficult, good to fill an hour of time without having to think myself in deeply
--> some days

Open Problems
_____________

hard time, since it is unclear if they will be solvable satisfyingly at all
e.g. peeking for available data at a blocking socket
if buffer size and count are equal, the next loop cycle will block at the "recv" call

Clever Way
__________

sometimes, I know/feel that a problem is solvable
but thinking about how best to implement it, breaks my head
takes time to code and try out several designs
a lot of creating/moving/deleting new source code files

Investigate
___________

- e.g. reflect design of input/output filter pipeline (executor/communicator/)
- read about HTTP header fields (charset, encoding, transfer-encoding etc.)
- investigate compression algorithms
- reflect about how (in which order) to combine all of these into a pipeline, when some are optional
- draw UML activity diagram (programme flow chart) showing this
- about 1 day of thinking (but many ideas had been collected previously, written into "todo" file)

