Skip to content

Lessons learned

mwatts15 edited this page Feb 1, 2013 · 1 revision
  1. Software design (diagramming and statement of expected program function)
    
  2. The C language
    
  3. Memory management--and memory leaks
    
  4. Trie data structures ("staged" directories)
    
  5. Developing a types system (tag value types)
    
  6. Using an issue tracker and public code repository (GitHub)
    
  7. Using software revision control (git--still learning)
    
  8. Software build process (Makefiles)
    
  9. Logging program execution with levels of verbosity
    
  10. User level file system operations on Linux
    
  11. Code generation (very ad-hoc and a pain to work with, but I am using it)
    
  12. Input parsing (query interface; doesn't follow the formal (tokenize-> parse) pattern, but it works)
    
  13. Vim-fu
    
  14. Data serialization and storage (the database file and proposed xattr data storage formats)
    
  15. Software testing (made some attempts at automation)
    
  16. Pacing
    
  17. Exercise regularly and eat right--you can't code effectively if you're tired and out of shape all the time
    
  18. Your code won't runaway overnight--turn off the laptop and get a full night's sleep
    

Clone this wiki locally