Skip to content

Instantly share code, notes, and snippets.

@Nzen
Forked from nivertech/about.md
Last active December 5, 2022 23:15

Revisions

  1. Nzen revised this gist Jan 21, 2017. 1 changed file with 21 additions and 19 deletions.
    40 changes: 21 additions & 19 deletions Projects.md
    Original file line number Diff line number Diff line change
    @@ -1,43 +1,44 @@
    ## Top Plate ##

    * Vacation scheduler (printable date constraint calendar)
    * [Vacation scheduler](https://github.com/Nzen/Vacation_Scheduler) (printable date constraint calendar)
    * (BR) Model class generator (finish the data type analysis)
    * java certification
    * Website compiler from gradle or [cocoon](http://cocoon.apache.org/3.0/)

    ### Projects ###

    * Vacation scheduler (printable date constraint calendar)
    * PDistillery (plugin focused website compiler) OR a website compiler from gradle or cocoon
    * E2 yearnodes: 1936 1987 1924 ^ 1978 1995 ^ 1945 2007 1896 1954 2013 1908
    * PDistillery (plugin focused website compiler) OR a website compiler from gradle / cocoon
    * pay bills
    * ergodox labels
    * tingbot
    * blog posts; write them, convert old ones
    * priest game
    * E2 yearnodes: 1936 1987 1924 ^ 1978 1995 ^ 1945 2007 1896 1954 2013 1908
    * reorganize files to a project orientation
    * cheeaun life ;; with labella.js ?
    * scan journals
    * memoto cover
    * sudoku android app
    * priest game

    ### Work projects ###

    * Model class generator (finish the data type analysis)
    * Dao class generator (freestanding, so bbx can invoke it)
    * study the pricing module
    * gen a dotlang of the BR db erd (for my wall?)
    * keepass emitter for admin site
    * dotlang planning emitter
    * Dao class generator (freestanding, so bbx can invoke it)
    * zpl birt emitter
    * ms shortcut creator
    * sql / java / BR-dsl noteeditor with RSyntaxTextArea
    * gen a dotlang of the BR db erd
    * zpl birt emitter
    * kill sessions for update (with some anti-tamper/forgetful mechanism)

    ### Tools to use, eventually ###

    * Presentation : JavaFx, React.js, Lanterna
    * Programming Language : Clisp, C, Erlang
    * Platform : Gradle, Tomcat, Android, Webassembly, Pentaho
    * Programming Language : Clisp, C, Erlang, XSLT
    * Platform : Gradle, Tomcat, Android, Pentaho, Webassembly

    ### Education ###

    @@ -56,36 +57,37 @@

    ### Fantasy ###

    * programming font
    * noiseware from jlooch, boodler, applpi
    * learn programming languages : AspectJ, Groovy, Oberon, Go, Forth/Factor, Haskell, Nim, C#, Elixer, Prolog, Ocaml/Sml, Ada, Fortran, Lua, D
    * naive mips register allocator
    * programming font
    * learn programming languages : AspectJ, Groovy, Oberon, Forth/Factor, Haskell, Nim, C#, Elixer, Prolog, Ocaml/Sml, Ada, Lua
    * simple english articles : svg, compiler
    * js canvas calendis for exotic calendars
    * implement dbms : simpleDB/minibase
    * implement compiler : (lang) kalidescope, tinylisp, pascal, C ;; (targets) llvm, dcpu-16, mips v1, risc v, arm
    * implement os : tutorials ;; study oberon, templeos, fishbarrel, unikernel, riscos, yalo, plan9
    * toy netflix homework, spy game
    * implement web browser
    * javafx 'ncurses' (perhaps from blacken)
    * javafx 'ncurses' (perhaps for laterna)
    * picolove ide extensions
    * cross linked cpu / os / software [timeline](https://www.levenez.com/lang/) for my office
    * [book scanner](https://linearbookscanner.org/)
    * volkswanderung game
    * png decoder
    * advanced python bst functions: to optimal, merge, split
    * naive mips register allocator
    * [multiplayer monopoly](http://weblog.raganwald.com/2006/06/my-favourite-interview-question.html)
    * [directory contents summarizer](https://github.com/keybase/codesign)
    * ascii art birt emitter
    * time travel IF game with [propagating consequences](http://nitku.net/blog/2015/10/please-excuse-the-crudity-of-this-model/)
    * implement compiler : (lang) kalidescope, tinylisp, pascal, C ;; (targets) llvm, dcpu-16, mips v1, risc v, arm
    * implement web browser
    * implement os : tutorials ;; study oberon, templeos, fishbarrel, unikernel, riscos, yalo, plan9
    * implement a png decoder
    * implement a satellite telemetry simulation

    ### Study and contribute to ###

    * calibre: html columns
    * grappa (graphviz)
    * calibre: pdf/html columns
    * pyjvm
    * asciinema: show keypresses
    * hoon, urbit
    * grappa (graphviz)
    * sphinx (doc gen)
    * metalsmith (site gen)

  2. Nzen revised this gist Jan 15, 2017. 1 changed file with 4 additions and 3 deletions.
    7 changes: 4 additions & 3 deletions Projects.md
    Original file line number Diff line number Diff line change
    @@ -2,6 +2,7 @@

    * Vacation scheduler (printable date constraint calendar)
    * (BR) Model class generator (finish the data type analysis)
    * java certification
    * Website compiler from gradle or [cocoon](http://cocoon.apache.org/3.0/)

    ### Projects ###
    @@ -25,18 +26,18 @@
    * Model class generator (finish the data type analysis)
    * Dao class generator (freestanding, so bbx can invoke it)
    * study the pricing module
    * keepass emitter for admin site
    * dotlang planning emitter
    * ms shortcut creator
    * sql / java / BR-dsl noteeditor with RSyntaxTextArea
    * keepass emitter for admin site
    * gen a dotlang of the BR db erd
    * zpl birt emitter

    ### Tools to use, eventually ###

    * Presentation : JavaFx, React.js, Lanterna
    * Programming Language : Clisp, C, Erlang
    * Platform : Gradle, Tomcat, Android, Webassembly
    * Platform : Gradle, Tomcat, Android, Webassembly, Pentaho

    ### Education ###

    @@ -56,7 +57,7 @@
    ### Fantasy ###

    * programming font
    * noiseware from jlooch, boodler
    * noiseware from jlooch, boodler, applpi
    * learn programming languages : AspectJ, Groovy, Oberon, Go, Forth/Factor, Haskell, Nim, C#, Elixer, Prolog, Ocaml/Sml, Ada, Fortran, Lua, D
    * naive mips register allocator
    * simple english articles : svg, compiler
  3. Nzen revised this gist Jan 15, 2017. 2 changed files with 14 additions and 15 deletions.
    27 changes: 13 additions & 14 deletions Projects.md
    Original file line number Diff line number Diff line change
    @@ -1,24 +1,21 @@
    ## Top Plate ##

    * Vacation scheduler (printable date constraint calendar)
    * PDistillery (plugin focussed website compiler)
    * (BR) Model class generator (finish the data type analysis)
    * Website compiler from gradle
    * Website compiler from gradle or [cocoon](http://cocoon.apache.org/3.0/)

    ### Projects ###

    * Vacation scheduler (printable date constraint calendar)
    * PDistillery (plugin focused website compiler)
    * Website compiler from gradle
    * PDistillery (plugin focused website compiler) OR a website compiler from gradle or cocoon
    * E2 yearnodes: 1936 1987 1924 ^ 1978 1995 ^ 1945 2007 1896 1954 2013 1908
    * pay bills
    * ergodox labels
    * tingbot
    * blog posts
    * blog posts; write them, convert old ones
    * priest game
    * reorganize files to a project orientation
    * cheeaun life ;; with labella.js ?
    * advanced python bst
    * scan journals
    * memoto cover
    * sudoku android app
    @@ -28,18 +25,18 @@
    * Model class generator (finish the data type analysis)
    * Dao class generator (freestanding, so bbx can invoke it)
    * study the pricing module
    * ms shortcut creator
    * dotlang planning emitter
    * ms shortcut creator
    * sql / java / BR-dsl noteeditor with RSyntaxTextArea
    * keepass emitter for admin site
    * gen a dotlang of the BR db erd
    * zpl birt emitter

    ### Tools to use, eventually ###

    * Presentation : JavaFx, Android, -Blacken- lanterna
    * Programming Language : Clojure, C, Erlang
    * Platform : gradle, tomcat, webassembly, node.js
    * Presentation : JavaFx, React.js, Lanterna
    * Programming Language : Clisp, C, Erlang
    * Platform : Gradle, Tomcat, Android, Webassembly

    ### Education ###

    @@ -65,19 +62,21 @@
    * simple english articles : svg, compiler
    * js canvas calendis for exotic calendars
    * implement dbms : simpleDB/minibase
    * implement compiler : kalidescope, lisp, pascal, C ;; llvm, dcpu-16, mips v1, risc v, arm
    * implement compiler : (lang) kalidescope, tinylisp, pascal, C ;; (targets) llvm, dcpu-16, mips v1, risc v, arm
    * implement os : tutorials ;; study oberon, templeos, fishbarrel, unikernel, riscos, yalo, plan9
    * toy netflix homework, spy game
    * implement web browser
    * javafx 'ncurses' (perhaps from blacken)
    * picolove ide
    * cross linked cpu / os / software [timeline](https://www.levenez.com/lang/)
    * picolove ide extensions
    * cross linked cpu / os / software [timeline](https://www.levenez.com/lang/) for my office
    * [book scanner](https://linearbookscanner.org/)
    * volkswanderung game
    * png decoder
    * monopoly
    * advanced python bst functions: to optimal, merge, split
    * [multiplayer monopoly](http://weblog.raganwald.com/2006/06/my-favourite-interview-question.html)
    * [directory contents summarizer](https://github.com/keybase/codesign)
    * ascii art birt emitter
    * time travel IF game with [propagating consequences](http://nitku.net/blog/2015/10/please-excuse-the-crudity-of-this-model/)

    ### Study and contribute to ###

    2 changes: 1 addition & 1 deletion programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -13,7 +13,7 @@
    * Write an application using a language supporting the Actor model: Erlang, Scala
    * Write an application in a design-by-contract language: Eiffel

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

    * Write a simple compiler: **[Basic](https://github.com/Nzen/Simpletron)**
    * Write a database manager: [SimpleDB](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/assignments/) or [MicroBase](http://research.cs.wisc.edu/coral/minibase/minibase.dist.html)
  4. Nzen revised this gist Oct 30, 2016. 1 changed file with 1 addition and 0 deletions.
    1 change: 1 addition & 0 deletions Projects.md
    Original file line number Diff line number Diff line change
    @@ -32,6 +32,7 @@
    * dotlang planning emitter
    * sql / java / BR-dsl noteeditor with RSyntaxTextArea
    * keepass emitter for admin site
    * gen a dotlang of the BR db erd
    * zpl birt emitter

    ### Tools to use, eventually ###
  5. Nzen revised this gist Oct 29, 2016. 1 changed file with 4 additions and 2 deletions.
    6 changes: 4 additions & 2 deletions Projects.md
    Original file line number Diff line number Diff line change
    @@ -8,11 +8,12 @@
    ### Projects ###

    * Vacation scheduler (printable date constraint calendar)
    * PDistillery (plugin focussed website compiler)
    * PDistillery (plugin focused website compiler)
    * Website compiler from gradle
    * E2 yearnodes: 1936 1987 1924 ^ 1978 1995 ^ 1945 2007 1896 1954 2013 1908
    * pay bills
    * ergodox labels
    * tingbot
    * blog posts
    * priest game
    * reorganize files to a project orientation
    @@ -29,7 +30,8 @@
    * study the pricing module
    * ms shortcut creator
    * dotlang planning emitter
    * sql / java noteeditor with RSyntaxTextArea
    * sql / java / BR-dsl noteeditor with RSyntaxTextArea
    * keepass emitter for admin site
    * zpl birt emitter

    ### Tools to use, eventually ###
  6. Nzen revised this gist Oct 23, 2016. 1 changed file with 3 additions and 2 deletions.
    5 changes: 3 additions & 2 deletions Projects.md
    Original file line number Diff line number Diff line change
    @@ -25,7 +25,7 @@
    ### Work projects ###

    * Model class generator (finish the data type analysis)
    * Record class generator (freestanding, so bbx can invoke it)
    * Dao class generator (freestanding, so bbx can invoke it)
    * study the pricing module
    * ms shortcut creator
    * dotlang planning emitter
    @@ -34,7 +34,7 @@

    ### Tools to use, eventually ###

    * Presentation : JavaFx, Android, -Blacken- laterna
    * Presentation : JavaFx, Android, -Blacken- lanterna
    * Programming Language : Clojure, C, Erlang
    * Platform : gradle, tomcat, webassembly, node.js

    @@ -74,6 +74,7 @@
    * png decoder
    * monopoly
    * [directory contents summarizer](https://github.com/keybase/codesign)
    * ascii art birt emitter

    ### Study and contribute to ###

  7. Nzen revised this gist Sep 25, 2016. 1 changed file with 5 additions and 3 deletions.
    8 changes: 5 additions & 3 deletions Projects.md
    Original file line number Diff line number Diff line change
    @@ -34,7 +34,7 @@

    ### Tools to use, eventually ###

    * Presentation : JavaFx, Android, Blacken
    * Presentation : JavaFx, Android, -Blacken- laterna
    * Programming Language : Clojure, C, Erlang
    * Platform : gradle, tomcat, webassembly, node.js

    @@ -68,10 +68,12 @@
    * implement web browser
    * javafx 'ncurses' (perhaps from blacken)
    * picolove ide
    * cross linked cpu / os / software timeline
    * book scanner
    * cross linked cpu / os / software [timeline](https://www.levenez.com/lang/)
    * [book scanner](https://linearbookscanner.org/)
    * volkswanderung game
    * png decoder
    * monopoly
    * [directory contents summarizer](https://github.com/keybase/codesign)

    ### Study and contribute to ###

  8. Nzen revised this gist Sep 12, 2016. 1 changed file with 161 additions and 0 deletions.
    161 changes: 161 additions & 0 deletions Projects.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,161 @@
    ## Top Plate ##

    * Vacation scheduler (printable date constraint calendar)
    * PDistillery (plugin focussed website compiler)
    * (BR) Model class generator (finish the data type analysis)
    * Website compiler from gradle

    ### Projects ###

    * Vacation scheduler (printable date constraint calendar)
    * PDistillery (plugin focussed website compiler)
    * Website compiler from gradle
    * E2 yearnodes: 1936 1987 1924 ^ 1978 1995 ^ 1945 2007 1896 1954 2013 1908
    * pay bills
    * ergodox labels
    * blog posts
    * priest game
    * reorganize files to a project orientation
    * cheeaun life ;; with labella.js ?
    * advanced python bst
    * scan journals
    * memoto cover
    * sudoku android app

    ### Work projects ###

    * Model class generator (finish the data type analysis)
    * Record class generator (freestanding, so bbx can invoke it)
    * study the pricing module
    * ms shortcut creator
    * dotlang planning emitter
    * sql / java noteeditor with RSyntaxTextArea
    * zpl birt emitter

    ### Tools to use, eventually ###

    * Presentation : JavaFx, Android, Blacken
    * Programming Language : Clojure, C, Erlang
    * Platform : gradle, tomcat, webassembly, node.js

    ### Education ###

    * java certification
    * CS 331 - Design and Analysis of Algorithms
    * CS 365 - Computer Architecture
    * CS 408 - Programming Languages
    * CS 431 - Operating Systems
    * CS 480 - Software Engineering
    * CS 356 - Object-Oriented Design and Programming
    * CS 370 - Parallel Processing
    * CS 411 - Compilers and Interpreters
    * CS 420 - Artificial Intelligence
    * CS 470 - Game Development
    * Classical Software Studies: VisiCalc, AppleWorks, Robot Odyssey, Zork, MacPaint, Oberon, 500lines

    ### Fantasy ###

    * programming font
    * noiseware from jlooch, boodler
    * learn programming languages : AspectJ, Groovy, Oberon, Go, Forth/Factor, Haskell, Nim, C#, Elixer, Prolog, Ocaml/Sml, Ada, Fortran, Lua, D
    * naive mips register allocator
    * simple english articles : svg, compiler
    * js canvas calendis for exotic calendars
    * implement dbms : simpleDB/minibase
    * implement compiler : kalidescope, lisp, pascal, C ;; llvm, dcpu-16, mips v1, risc v, arm
    * implement os : tutorials ;; study oberon, templeos, fishbarrel, unikernel, riscos, yalo, plan9
    * toy netflix homework, spy game
    * implement web browser
    * javafx 'ncurses' (perhaps from blacken)
    * picolove ide
    * cross linked cpu / os / software timeline
    * book scanner
    * volkswanderung game
    * png decoder

    ### Study and contribute to ###

    * calibre: html columns
    * pyjvm
    * asciinema: show keypresses
    * hoon, urbit
    * grappa (graphviz)
    * sphinx (doc gen)
    * metalsmith (site gen)

    ### Education II ###

    * CS 445 - Computer Graphics
    * ECE 207 - Network Analysis
    * ART 251A - Lettering and Typography
    * CS 435 - Database Systems
    * ECE 220 - Electronic Devices and Circuits
    * MHR 318 - Organizational Behavior
    * CS 450 - Computability
    * ECE 309 - Control Systems Engineering
    * CS 460 - Secure Communication
    * ECE 325 - Design of Digital Circuits
    * CS 301 - Numerical Methods
    * ART 342A - Technical Illustration
    * MAT 370 - Graph Theory
    * CIS 310 - Management Information Systems
    * ECE 341 - Introduction to Microcontrollers
    * CS 245 - Programming Graphical User Interfaces
    * ECE 404 - Robotics
    * ACC 207/207A - Financial Accounting for Decision Making
    * ART 253A - Design and Color Theory
    * TOM 301 - Operations Management
    * CIS 307 - Business Telecommunications
    * ECE 426 - Operating Systems for Embedded Applications
    * CS 260 - Unix and Scripting
    * ART 311 - History of Design
    * CHM 340 - The Chemist in Industry
    * CIS 433 - Information Systems Auditing
    * MAT 216 - Differential Equations
    * CIS 467 - Network Security
    * MAT 380 - Mathematics of Operations Research
    * MAT 470 - Combinatorics
    * FRL 330 - Investment Analysis
    * IE 429/429L - Discrete Systems Simulation
    * CHM 409 - Polymer Chemistry
    * MFE 217/217L - Manufacturing Processes
    * CIS 481 - Computer Forensics
    * IME 112 - Industrial Engineering Fundamentals
    * CHM 342/342L - Spectroscopic Methods
    * IBM 330 - Marketing Research
    * MU 120 - Music Theory
    * IME 326 - Supply Chain Planning and Control
    * MFE 465 - Metal Working Theory and Applications
    * CHM 344/344L - Electroanalytical Methods
    * PLS 207 - Introduction to Public Law
    * ME 218 - Strength of Materials
    * IME 239 - Industrial Costs and Controls
    * FRL 201 - Legal Environment of Business Transactions
    * EC 407 - History of Economic Thought
    * FST 232/232L - Food Process Engineering
    * IME 415/415L - Statistical Quality Control
    * ME 301 - Thermodynamics
    * FRL 300 - Managerial Finance
    * FST 420/420L - Food Chemistry
    * GEO 315 - Urban Geography
    * ME 311 - Fluid Mechanics
    * TH 231/231A - Principles of Theatrical Design
    * GSC 300/300L - Introduction to Geochemistry
    * ME 315 - Engineering Materials
    * MIC 320/320L - Food Microbiology
    * GSC 215/215L - Mineralogy
    * ME 316 - Intermediate Dynamics
    * MFE 201/201L - Manufacturing Systems Processes
    * URP 337/337L - Planning Public Infrastructure
    * MU 129 - Songwriting
    * GSC 433/433L - Ore Deposits










  9. Nzen revised this gist Dec 9, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -18,7 +18,7 @@
    * Write a simple compiler: **[Basic](https://github.com/Nzen/Simpletron)**
    * Write a database manager: [SimpleDB](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/assignments/) or [MicroBase](http://research.cs.wisc.edu/coral/minibase/minibase.dist.html)
    * Write a multithreaded application: **[Handshake server](https://bitbucket.org/Nzen/380-dhcp)**
    * Write a networking client: [TCP](http://users.crhc.illinois.edu/vraman3/438.fall08/projects.html)
    * Write a networking client: [TCP](http://users.crhc.illinois.edu/vraman3/438.fall08/projects.html), IRC bot
    * Write a device driver: [tape drive](https://lkml.org/lkml/2006/12/3/183)?
    * Write a [baysean spam filter](http://www.paulgraham.com/spam.html) or game AI
    * Write an application that provides a plugin model
  10. Nzen revised this gist Jul 31, 2014. 1 changed file with 1 addition and 2 deletions.
    3 changes: 1 addition & 2 deletions goals.md
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,4 @@
    Programming Achievements: How to Level Up as a Developer
    ========================================================
    ### Programming Achievements: How to Level Up as a Developer

    This gist descended from a blog post and made specific to my interests and accomplishments. [Original Blog post](
    http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer)
  11. Nzen revised this gist Dec 5, 2013. 1 changed file with 12 additions and 12 deletions.
    24 changes: 12 additions & 12 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -4,26 +4,26 @@
    * ~~Write an application in an object-oriented language~~: **[Java](https://github.com/Nzen/Sudoku)**, Smalltalk
    * ~~Write an application in a dynamic language~~: **[Python](https://github.com/Nzen/Simpletron)**, Ruby
    * ~~Write an application with a query language~~: **SQL**, Tutorial D
    * Write an application in a functional language: Clojure, Sml, Haskell
    * Write an application in a functional language: *Clojure*, Sml, Haskell
    * Write an application with aspect oriented components: AspectJ
    * Write a program in assembly language: **Pep8**, MIPS, Dcpu10
    * Write an application in a prototype-based language: Javascript, Io
    * Write an application in a logic programming language: Prolog
    * Write a program in assembly language: **Pep8**, *MIPS*, Dcpu10
    * Write an application in a prototype-based language: *Javascript*, Io
    * Write an application in a logic programming language: *Prolog*
    * Write an application in a concatenative language: Forth
    * Write an application using a language supporting the Actor model: Erlang, Scala
    * Write an application in a design-by-contract language: Eiffel

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

    * Write a simple compiler: **Basic**
    * Write a simple compiler: **[Basic](https://github.com/Nzen/Simpletron)**
    * Write a database manager: [SimpleDB](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/assignments/) or [MicroBase](http://research.cs.wisc.edu/coral/minibase/minibase.dist.html)
    * Write a multithreaded application: **Handshake server**
    * Write a multithreaded application: **[Handshake server](https://bitbucket.org/Nzen/380-dhcp)**
    * Write a networking client: [TCP](http://users.crhc.illinois.edu/vraman3/438.fall08/projects.html)
    * Write a device driver: [tape drive](https://lkml.org/lkml/2006/12/3/183)?
    * Write a [baysean spam filter](http://www.paulgraham.com/spam.html)
    * Write a [baysean spam filter](http://www.paulgraham.com/spam.html) or game AI
    * Write an application that provides a plugin model
    * Write a png renderer
    * Write a toy operating system: [OSP/2](http://www.cs.sunysb.edu/~sas/courses/cse306/spr02/project/general.html), [kernel utilities](http://www.cse.unsw.edu.au/~cs9242/12/project/index.shtml)
    * Write a toy operating system: [OSP/2](http://www.cs.sunysb.edu/~sas/courses/cse306/spr02/project/general.html), [unsw kernel utilities](http://www.cse.unsw.edu.au/~cs9242/12/project/index.shtml)

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

    @@ -37,15 +37,15 @@

    * ~~Use Visual Studio exclusively for a month~~
    * ~~Use Eclipse exclusively for a month~~
    * ~Use emacs exclusively for a month
    * *Use emacs exclusively for a month*
    * Use IDLE exclusively for a month
    * Use XCode exclusively for a month

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

    * Complete five [code katas](http://en.wikipedia.org/wiki/Kata_\(programming\) "Wikipedia: Kata (programming)")
    * Complete the [programming koans](http://sett.ociweb.com/sett/settJan2011.html "Learning Programming Languages with Koans") for a language that you want to learn
    * Contribute a [literate program](http://en.literateprograms.org/Binary_search_tree_%28Python%29)
    * ~~Contribute a [literate program](http://en.literateprograms.org/Binary_search_tree_%28Python%29)~~
    * Read [SICP](http://mitpress.mit.edu/sicp/ "MIT: SICP") and complete all the exercises
    * Attend a [code retreat](http://coderetreat.com/ "Code Retreat with Corey Haines")

    @@ -58,7 +58,7 @@

    **Learn by teaching others:**

    * Present a lightning talk
    * Present at a local user group: ~~git/hub tutorial~~
    * Present a lightning talk: ~~[git/hub tutorial](http://www.csupomona.edu/~nmprado/git.pdf)~~
    * Present at a local user group: ~~[encrypted databases](http://www.csupomona.edu/~nmprado/obfusca.pdf)~~
    * Publish a tutorial
    * Publish a constructive code review of an open source project
  12. Nzen revised this gist Mar 3, 2013. 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
    @@ -16,14 +16,14 @@
    **Enhance your understanding of the building blocks that we use as developers:**

    * Write a simple compiler: **Basic**
    * Write a B-tree database: [SimpleDB](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/assignments/) or [MicroBase](http://research.cs.wisc.edu/coral/minibase/minibase.dist.html)
    * Write a database manager: [SimpleDB](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/assignments/) or [MicroBase](http://research.cs.wisc.edu/coral/minibase/minibase.dist.html)
    * Write a multithreaded application: **Handshake server**
    * Write a networking client: [TCP](http://users.crhc.illinois.edu/vraman3/438.fall08/projects.html)
    * Write a toy operating system: [OSP/2](http://www.cs.sunysb.edu/~sas/courses/cse306/spr02/project/general.html), [kernel utilities](http://www.cse.unsw.edu.au/~cs9242/12/project/index.shtml)
    * Write a device driver: [tape drive](https://lkml.org/lkml/2006/12/3/183)?
    * Write a baysean spam filter
    * Write a [baysean spam filter](http://www.paulgraham.com/spam.html)
    * Write an application that provides a plugin model
    * Write a real time text editor?
    * Write a multithreaded application: **Handshake server**
    * Write a png renderer
    * Write a toy operating system: [OSP/2](http://www.cs.sunysb.edu/~sas/courses/cse306/spr02/project/general.html), [kernel utilities](http://www.cse.unsw.edu.au/~cs9242/12/project/index.shtml)

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

  13. Nzen revised this gist Feb 14, 2013. 2 changed files with 4 additions and 2 deletions.
    File renamed without changes.
    6 changes: 4 additions & 2 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -22,6 +22,8 @@
    * Write a device driver: [tape drive](https://lkml.org/lkml/2006/12/3/183)?
    * Write a baysean spam filter
    * Write an application that provides a plugin model
    * Write a real time text editor?
    * Write a multithreaded application: **Handshake server**

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

    @@ -35,7 +37,7 @@

    * ~~Use Visual Studio exclusively for a month~~
    * ~~Use Eclipse exclusively for a month~~
    * Use emacs exclusively for a month
    * ~Use emacs exclusively for a month
    * Use IDLE exclusively for a month
    * Use XCode exclusively for a month

    @@ -57,6 +59,6 @@
    **Learn by teaching others:**

    * Present a lightning talk
    * Present at a local user group
    * Present at a local user group: ~~git/hub tutorial~~
    * Publish a tutorial
    * Publish a constructive code review of an open source project
  14. Nzen revised this gist Jan 13, 2013. 2 changed files with 18 additions and 18 deletions.
    2 changes: 1 addition & 1 deletion about.md
    Original file line number Diff line number Diff line change
    @@ -2,4 +2,4 @@ Programming Achievements: How to Level Up as a Developer
    ========================================================

    This gist descended from a blog post and made specific to my interests and accomplishments. [Original Blog post](
    http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer)
    http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer)
    34 changes: 17 additions & 17 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,8 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * ~~Write an application in an imperative language~~: **C++**, Oberon'7, D
    * ~~Write an application in an object-oriented language~~: **Java**, Smalltalk
    * ~~Write an application in a dynamic language~~: **Python**, Ruby
    * ~~Write an application in an imperative language~~: **[C++](https://github.com/Nzen/DeviantArt-Renamer)**, Oberon'7, D
    * ~~Write an application in an object-oriented language~~: **[Java](https://github.com/Nzen/Sudoku)**, Smalltalk
    * ~~Write an application in a dynamic language~~: **[Python](https://github.com/Nzen/Simpletron)**, Ruby
    * ~~Write an application with a query language~~: **SQL**, Tutorial D
    * Write an application in a functional language: Clojure, Sml, Haskell
    * Write an application with aspect oriented components: AspectJ
    @@ -16,13 +16,21 @@
    **Enhance your understanding of the building blocks that we use as developers:**

    * Write a simple compiler: **Basic**
    * Write a B-tree database: SimpleDB or MicroBase
    * Write a networking client
    * Write a toy operating system
    * Write a device driver
    * Write a B-tree database: [SimpleDB](http://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-830-database-systems-fall-2010/assignments/) or [MicroBase](http://research.cs.wisc.edu/coral/minibase/minibase.dist.html)
    * Write a networking client: [TCP](http://users.crhc.illinois.edu/vraman3/438.fall08/projects.html)
    * Write a toy operating system: [OSP/2](http://www.cs.sunysb.edu/~sas/courses/cse306/spr02/project/general.html), [kernel utilities](http://www.cse.unsw.edu.au/~cs9242/12/project/index.shtml)
    * Write a device driver: [tape drive](https://lkml.org/lkml/2006/12/3/183)?
    * Write a baysean spam filter
    * Write an application that provides a plugin model

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

    * Write a nontrivial desktop app
    * Write a nontrivial web app
    * Write a nontrivial mobile app
    * Write a nontrivial game
    * Write a nontrivial embedded app

    **Learn a variety of editors/IDEs:**

    * ~~Use Visual Studio exclusively for a month~~
    @@ -35,7 +43,7 @@

    * Complete five [code katas](http://en.wikipedia.org/wiki/Kata_\(programming\) "Wikipedia: Kata (programming)")
    * Complete the [programming koans](http://sett.ociweb.com/sett/settJan2011.html "Learning Programming Languages with Koans") for a language that you want to learn
    * Contribute a [literate program](http://en.literateprograms.org/LiteratePrograms:Welcome "Literate Programming")
    * Contribute a [literate program](http://en.literateprograms.org/Binary_search_tree_%28Python%29)
    * Read [SICP](http://mitpress.mit.edu/sicp/ "MIT: SICP") and complete all the exercises
    * Attend a [code retreat](http://coderetreat.com/ "Code Retreat with Corey Haines")

    @@ -51,12 +59,4 @@
    * Present a lightning talk
    * Present at a local user group
    * Publish a tutorial
    * Publish a constructive code review of an open source project

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

    * Write a nontrivial desktop app
    * Write a nontrivial web app
    * Write a nontrivial mobile app
    * Write a nontrivial game
    * Write an embedded app
    * Publish a constructive code review of an open source project
  15. Nzen revised this gist Nov 28, 2012. 1 changed file with 2 additions and 1 deletion.
    3 changes: 2 additions & 1 deletion programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -1,8 +1,9 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * ~~Write a program in an imperative language~~: **C++**, Oberon'7, D
    * ~~Write an application in an imperative language~~: **C++**, Oberon'7, D
    * ~~Write an application in an object-oriented language~~: **Java**, Smalltalk
    * ~~Write an application in a dynamic language~~: **Python**, Ruby
    * ~~Write an application with a query language~~: **SQL**, Tutorial D
    * Write an application in a functional language: Clojure, Sml, Haskell
    * Write an application with aspect oriented components: AspectJ
    * Write a program in assembly language: **Pep8**, MIPS, Dcpu10
  16. Nzen revised this gist Nov 28, 2012. 2 changed files with 6 additions and 6 deletions.
    2 changes: 1 addition & 1 deletion about.md
    Original file line number Diff line number Diff line change
    @@ -1,5 +1,5 @@
    Programming Achievements: How to Level Up as a Developer
    ========================================================

    This gist descended from a blog post and made specific to my interests and accomplishments. [Check it out](
    This gist descended from a blog post and made specific to my interests and accomplishments. [Original Blog post](
    http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer)
    10 changes: 5 additions & 5 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -1,21 +1,21 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * ~~Write a program in an imperative language~~: **C++**, D, Oberon'7
    * ~~Write a program in an imperative language~~: **C++**, Oberon'7, D
    * ~~Write an application in an object-oriented language~~: **Java**, Smalltalk
    * ~~Write an application in a dynamic language~~: **Python**, Ruby
    * Write an application in a functional language: Clojure, Sml, Haskell
    * Write an application with aspect oriented components: AspectJ
    * Write a program in assembly language: **Pep8**, MIPS, Dcpu10
    * Write an application in a prototype-based language: Javascript, Io
    * Write an application in a logic programming language: Prolog
    * Write an application in a concatenative language: Forth
    * Write an application using a language supporting the Actor model: Erlang, Scala
    * Write an application with aspect oriented concerns: AspectJ
    * Write a program in assembly language: **Pep8**, *Basic*, Dcpu10
    * Write an application in a design-by-contract language: Eiffel

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

    * Write a simple compiler: **Basic**
    * Write a B-tree database
    * Write a B-tree database: SimpleDB or MicroBase
    * Write a networking client
    * Write a toy operating system
    * Write a device driver
    @@ -26,7 +26,7 @@

    * ~~Use Visual Studio exclusively for a month~~
    * ~~Use Eclipse exclusively for a month~~
    * ~~Use emacs exclusively for a month~~
    * Use emacs exclusively for a month
    * Use IDLE exclusively for a month
    * Use XCode exclusively for a month

  17. Nzen revised this gist Oct 9, 2012. 1 changed file with 9 additions and 9 deletions.
    18 changes: 9 additions & 9 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -1,33 +1,33 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * ~~Write a program in an imperative language~~: **C++**, D, Pascal
    * ~~Write a program in an imperative language~~: **C++**, D, Oberon'7
    * ~~Write an application in an object-oriented language~~: **Java**, Smalltalk
    * ~~Write an application in a dynamic language~~: **Python**, Ruby
    * Write an application in a functional language: Clojure, Sml, Haskell
    * Write an application in a prototype-based language: Javascript, Io
    * Write an application in a logic programming language: Prolog
    * Write an application using a language supporting the Actor model: Erlang, Scala
    * Write an application in a concatenative language: Forth
    * Write an application in an aspect oriented language: AspectJ
    * Write a program in assembly language: **Pep8**, Dcpu10, C--, JVM
    * Write an application using a language supporting the Actor model: Erlang, Scala
    * Write an application with aspect oriented concerns: AspectJ
    * Write a program in assembly language: **Pep8**, *Basic*, Dcpu10
    * Write an application in a design-by-contract language: Eiffel

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

    * Write a networking client (HTTP, Tcp via udp)
    * Write a simple compiler: **Basic**
    * Write a simple operating system
    * Write a device driver
    * Write a B-tree database
    * Write a networking client
    * Write a toy operating system
    * Write a device driver
    * Write a baysean spam filter
    * Write an application that provides a plugin model

    **Learn a variety of editors/IDEs:
    **Learn a variety of editors/IDEs:**

    * ~~Use Visual Studio exclusively for a month~~
    * ~~Use Eclipse exclusively for a month~~
    * ~~Use emacs exclusively for a month~~
    * Use IDLE exclusively for a month
    * Use emacs exclusively for a month
    * Use XCode exclusively for a month

    **Enlighten yourself with koans, katas, and the wisdom of ages:**
  18. Nzen revised this gist Jul 30, 2012. 1 changed file with 9 additions and 10 deletions.
    19 changes: 9 additions & 10 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -1,43 +1,42 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * ~~Write a program in an imperative language~~: **C++**, C, D
    * ~~Write a program in an imperative language~~: **C++**, D, Pascal
    * ~~Write an application in an object-oriented language~~: **Java**, Smalltalk
    * ~~Write an application in a dynamic language~~: **Python**, Ruby
    * Write an application in a functional language: Clojure, Sml, Haskell
    * Write an application in a prototype-based language: Javascript, Io
    * Write an application in a logic programming language: Prolog
    * Write a program in assembly language: **PICbasic**, C--, LLVM, JVM
    * Write an application using a language supporting the Actor model: Erlang, Scala
    * Write an application in an aspect oriented language: AspectJ
    * Write an application in a concatenative language: Forth
    * Write an application in an aspect oriented language: AspectJ
    * Write a program in assembly language: **Pep8**, Dcpu10, C--, JVM
    * Write an application in a design-by-contract language: Eiffel
    * Write a data definition and data access layer for a complex domain

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

    * Write a networking client (e.g., HTTP, FTP)
    * Write a simple compiler
    * Write a networking client (HTTP, Tcp via udp)
    * Write a simple compiler: **Basic**
    * Write a simple operating system
    * Write a device driver
    * Write a B-tree database
    * Write an application or framework that provides a plugin model
    * Write a baysean spam filter
    * Write an application that provides a plugin model

    **Learn a variety of editors/IDEs:

    * ~~Use Visual Studio exclusively for a month~~
    * ~~Use Eclipse exclusively for a month~~
    * Use IDLE exclusively for a month
    * Use emacs exclusively for a month
    * Use vim exclusively for a month
    * Use XCode exclusively for a month

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

    * Complete five [code katas](http://en.wikipedia.org/wiki/Kata_\(programming\) "Wikipedia: Kata (programming)")
    * Complete the [programming koans](http://sett.ociweb.com/sett/settJan2011.html "Learning Programming Languages with Koans") for a language that you want to learn
    * Contribute a [literate program](http://en.literateprograms.org/LiteratePrograms:Welcome "Literate Programming")
    * Attend a [code retreat](http://coderetreat.com/ "Code Retreat with Corey Haines")
    * Read [SICP](http://mitpress.mit.edu/sicp/ "MIT: SICP") and complete all the exercises
    * Attend a [code retreat](http://coderetreat.com/ "Code Retreat with Corey Haines")

    **Program in the open:**

    @@ -59,4 +58,4 @@
    * Write a nontrivial web app
    * Write a nontrivial mobile app
    * Write a nontrivial game
    * Write an embedded app
    * Write an embedded app
  19. Nzen revised this gist May 3, 2012. 2 changed files with 38 additions and 32 deletions.
    5 changes: 2 additions & 3 deletions about.md
    Original file line number Diff line number Diff line change
    @@ -1,6 +1,5 @@
    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
    This gist descended from a blog post and made specific to my interests and accomplishments. [Check it out](
    http://jasonrudolph.com/blog/2011/08/09/programming-achievements-how-to-level-up-as-a-developer)
    65 changes: 36 additions & 29 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -1,55 +1,62 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * Write a program in assembly language
    * **Write a program in an imperative 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 a language supporting the Actor model
    * **Write an application in a concatenative language**
    * **Write a data definition and data access layer for a complex domain**

    **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 a nontrivial game**
    * Write an embedded app
    * Write a realtime system
    * ~~Write a program in an imperative language~~: **C++**, C, D
    * ~~Write an application in an object-oriented language~~: **Java**, Smalltalk
    * ~~Write an application in a dynamic language~~: **Python**, Ruby
    * Write an application in a functional language: Clojure, Sml, Haskell
    * Write an application in a prototype-based language: Javascript, Io
    * Write an application in a logic programming language: Prolog
    * Write a program in assembly language: **PICbasic**, C--, LLVM, JVM
    * Write an application using a language supporting the Actor model: Erlang, Scala
    * Write an application in an aspect oriented language: AspectJ
    * Write an application in a concatenative language: Forth
    * Write an application in a design-by-contract language: Eiffel
    * Write a data definition and data access layer for a complex domain

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

    * Write a networking client (e.g., HTTP, FTP)
    * Write a simple compiler
    * Write a simple operating system
    * 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
    * Write a baysean spam filter

    **Learn a variety of editors/IDEs:

    * ~~Use Visual Studio exclusively for a month~~
    * ~~Use Eclipse exclusively for a month~~
    * Use emacs exclusively for a month
    * Use vim exclusively for a month
    * Use XCode exclusively for a month

    **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
    * Complete five [code katas](http://en.wikipedia.org/wiki/Kata_\(programming\) "Wikipedia: Kata (programming)")
    * Complete the [programming koans](http://sett.ociweb.com/sett/settJan2011.html "Learning Programming Languages with Koans") for a language that you want to learn
    * Contribute a [literate program](http://en.literateprograms.org/LiteratePrograms:Welcome "Literate Programming")
    * 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
    * Read [SICP](http://mitpress.mit.edu/sicp/ "MIT: SICP") 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
    * Gather a following on my own 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

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

    * Write a nontrivial desktop app
    * Write a nontrivial web app
    * Write a nontrivial mobile app
    * Write a nontrivial game
    * Write an embedded app
  20. @fogus fogus revised this gist Aug 11, 2011. 1 changed file with 4 additions and 3 deletions.
    7 changes: 4 additions & 3 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -1,20 +1,21 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * Write a program in assembly language
    * Write a program in an imperative
    * **Write a program in an imperative 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 a language supporting the Actor model
    * Write an application in a concatenative language
    * Write a data definition and data access layer for a complex domain
    * **Write an application in a concatenative language**
    * **Write a data definition and data access layer for a complex domain**

    **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 a nontrivial game**
    * Write an embedded app
    * Write a realtime system

  21. @fogus fogus revised this gist Aug 11, 2011. 1 changed file with 2 additions and 0 deletions.
    2 changes: 2 additions & 0 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -1,12 +1,14 @@
    **Learn a variety of [programming paradigms](http://en.wikipedia.org/wiki/Programming_paradigm "Programming paradigm - Wikipedia"):**

    * Write a program in assembly language
    * Write a program in an imperative
    * 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 a language supporting the Actor model
    * Write an application in a concatenative language
    * Write a data definition and data access layer for a complex domain

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

  22. @fogus fogus revised this gist Aug 11, 2011. 1 changed file with 2 additions and 2 deletions.
    4 changes: 2 additions & 2 deletions programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -5,8 +5,8 @@
    * 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
    * Write an application using a language supporting the Actor model
    * Write an application in a concatenative language

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

  23. @jasonrudolph jasonrudolph revised this gist Aug 9, 2011. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion programming-achievements.md
    Original file line number Diff line number Diff line change
    @@ -39,7 +39,7 @@
    * 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
    * Perform a [Refactotum](http://thinkrelevance.com/blog/2007/04/03/twir.html "Refactotum") of an open source project

    **Learn by teaching others:**

  24. @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