Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Programming Achievements: How to Level Up as a Developer

The [x] is what I had already achieved

Learn a variety of programming paradigms:

  • Write a program in assembly language
  • Write an application in a functional language
  • Write an application in an 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:

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 of on 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
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.