Boohoo... I'm not Apprentice yet. :-)
Begin bragging session.
Anyway, I think I qualify for Apprentice because I have made an OSS project called hexman (which I am documenting better). I've actually done a lot of programming of little things, and I've submitted a few bug reports over the years, but not anything major yet. I consider my C programming skills to be good. I fully understand the grammar of the language (OK, I haven't totally memorized operator precedence yet), and I know some extra programming things. Here's what comes to mind:
- Function pointers (very cool, IMO)
- Pointer addition
- Screwing around with dynamic memory using malloc(), realloc(), and free()
- String handling
- Linked lists
- B-trees (haven't really used 'em yet)
- Structs, bitfields
- Variable arguments
- Binary logic and bitwise operators
- File I/O
- Modular programming (multiple .c and .h)
- Really simple stuff: loops, strings, displaying, functions, etc.
- How to use man pages <-- Ultra-necessary, IMHO
End bragging session.
Update: I fixed a bug in hexman which I thought I had gotten rid of. You can now move properly using the keypad with numlock off.
Update: I'm really working on this thing now. I'll update the diary again when I get finished doing stuff.
Update: OK, I made the PLAYING file. I haven't repackaged yet, I'll do it tommorow.