Skip to content

Instantly share code, notes, and snippets.

@mostlygeek
Forked from jasonrudolph/about.md
Created August 9, 2011 15:17
Show Gist options
  • Save mostlygeek/1134337 to your computer and use it in GitHub Desktop.
Save mostlygeek/1134337 to your computer and use it in GitHub Desktop.

Revisions

  1. mostlygeek revised this gist Aug 9, 2011. 1 changed file with 3 additions and 3 deletions.
    6 changes: 3 additions & 3 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -35,7 +35,7 @@

    **Program in the open:**

    * Contribute to an open source project
    * Contribute to an open source project,
    * Have a patch accepted
    * Earn commit rights on a significant open source project
    * Publish an open source project
    @@ -44,9 +44,9 @@
    **Learn by teaching others:**

    * Present a lightning talk
    * Present at a local user group
    * _Present at a local user group_, founder of vancouver PHP group (years ago). Gave talks.
    * Present at a conference
    * Deliver a training course
    * Publish a tutorial
    * _Publish a tutorial_, Published for Zend. Long time ago. :)
    * Publish a constructive code review of an open source project
    * Write a programming book
  2. mostlygeek revised this gist Aug 9, 2011. 1 changed file with 5 additions and 5 deletions.
    10 changes: 5 additions & 5 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -1,16 +1,16 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * 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 functional language, learning Erlang.
    * _Write an application in an object-oriented language_, PHP (web app), C# (Unity/Mono game dev), Java (Ugh!)
    * _Write an application in a prototype-based language_, JavaScript. I hate prototypal inheritance. :\
    * Write an application in a logic programming language
    * Write an application using the Actor model
    * Write an application using the Actor model, learning Erlang.
    * Write an application in Forth

    **Experience the ins and outs of programming for different platforms:**

    * Write a nontrivial web app
    * _Write a nontrivial web app_, PHP. Written lots.
    * Write a nontrivial desktop app
    * Write a nontrivial mobile app
    * Write an embedded app
  3. @jasonrudolph jasonrudolph created this gist Aug 9, 2011.
    6 changes: 6 additions & 0 deletions about.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,6 @@
    Programming Achievements: How to Level Up as a Developer
    ========================================================

    This gist is part of a blog post. Check it out at:

    http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer
    52 changes: 52 additions & 0 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,52 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * 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:**

    * 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 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