Skip to content

kdaigle/level-up

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 

Repository files navigation

Level Up

A while back, I found this excellent post by my colleague @jasonrudolph. I'm finally going to tackle this because I've got a little bit of non-work time right now. Follow along with my unedited and likely embarrassing approach to learning.

A guide on my journey

  • I will be digging into everything I'm not completely convinced I could explain without fault to a co-worker, colleague, friend, or newbie. Thus, you'll likely see items in the "Digest" lists that make you question if I know anything at all. I'm taking some great advice from @r00k and I'm gonna say "I don't know that" when I only have a rough idea about something. This will no doubt slow my journey but the goal here is to understand as much as possible. I don't want to leave this experience with a bunch of "I sort of know that"-s.

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

About

I'd like +10 to 💡 and +5 to 😀

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors