Skip to content

Instantly share code, notes, and snippets.

@amir-hadzic
Forked from jasonrudolph/about.md
Created August 12, 2011 08:14
Show Gist options
  • Save amir-hadzic/1141682 to your computer and use it in GitHub Desktop.
Save amir-hadzic/1141682 to your computer and use it in GitHub Desktop.
Programming Achievements: How to Level Up as a Developer

My Programming Archivements

Learn a variety of programming paradigms:

Write a program in assembly language
Write an application in a functional language
Write an application in a object-oriented language
Write an application in a prototype-based language
Write an application in a logic programming language
Write an application using the Actor model
Write an application in Forth

Experience the ins and outs of programming for different platforms:

Write a nontrivial web app
Write a nontrivial desktop app
Write a nontrivial mobile app
Write an embedded app
Write a realtime system

Enhance your understanding of the building blocks that we use as developers:

Write a networking client (e.g., HTTP, FTP)
Write a device driver
Write a B-tree database
Wrap an existing library to provide a better (more pleasant) user experience
Write an application or framework that provides a plugin model
Write a testing framework
Write a programming language

Enlighten yourself with koans, katas, and the wisdom of ages:

Complete five [code katas](http://en.wikipedia.org/wiki/Kata_\(programming\) "Kata (programming) - Wikipedia")
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
Attend a [code retreat](http://coderetreat.com/ "Code Retreat with Corey Haines")
Read [SICP](http://mitpress.mit.edu/sicp/ "SICP web site") and complete all the exercises

Program in the open:

Contribute to an open source project
Have a patch accepted
Earn commit rights on a significant open source project
Publish an open source project
Perform a [Refactotum](http://thinkrelevance.com/blog/2007/04/03/twir.html "Refactotum") of an open source project

Learn by teaching others:

Present a lightning talk
Present at a local user group
Present at a conference
Deliver a training course
Publish a tutorial
Publish a constructive code review of an open source project
Write a programming book
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment