Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 9th, 2012  |  syntax: None  |  size: 2.11 KB  |  hits: 15  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**
  2.  
  3. * Write a program in assembly language
  4. * Write an application in a functional language
  5. * Write an application in an object-oriented language
  6. * Write an application in a prototype-based language
  7. * Write an application in a logic programming language
  8. * Write an application using the Actor model
  9. * Write an application in Forth
  10.  
  11. **Experience the ins and outs of programming for different platforms:**
  12.  
  13. * Write a nontrivial web app
  14. * Write a nontrivial desktop app
  15. * Write a nontrivial mobile app
  16. * Write an embedded app
  17. * Write a realtime system
  18.  
  19. **Enhance your understanding of the building blocks that we use as developers:**
  20.  
  21. * Write a networking client (e.g., HTTP, FTP)
  22. * Write a device driver
  23. * Write a B-tree database
  24. * Wrap an existing library to provide a better (more pleasant) user experience
  25. * Write an application or framework that provides a plugin model
  26. * Write a testing framework
  27. * Write a programming language
  28.  
  29. **Enlighten yourself with koans, katas, and the wisdom of ages:**
  30.  
  31. * Complete five [code katas](http://en.wikipedia.org/wiki/Kata_\(programming\) "Kata (programming) - Wikipedia")
  32. * Complete the [programming koans](http://sett.ociweb.com/sett/settJan2011.html "Learning Programming Languages with Koans - Object Computing, Inc.") for a language that you want to learn
  33. * Attend a [code retreat](http://coderetreat.com/ "Code Retreat with Corey Haines")
  34. * Read [SICP](http://mitpress.mit.edu/sicp/ "SICP web site") and complete all the exercises
  35.  
  36. **Program in the open:**
  37.  
  38. * Contribute to an open source project
  39. * Have a patch accepted
  40. * Earn commit rights on a significant open source project
  41. * Publish an open source project
  42. * Perform a [Refactotum](http://thinkrelevance.com/blog/2007/04/03/twir.html "Refactotum") of on open source project
  43.  
  44. **Learn by teaching others:**
  45.  
  46. * Present a lightning talk
  47. * Present at a local user group
  48. * Present at a conference
  49. * Deliver a training course
  50. * Publish a tutorial
  51. * Publish a constructive code review of an open source project
  52. * Write a programming book