How To Be A Developer

One of the hardest things about web development is focusing your learning. There are so many things to know! I've prepared a few different frameworks and resources to guide you. Hopefully these can help novice/intermediate developers get the right mix of breadth and depth, and maybe help advanced devs clarify their perspectives.


I've broken out 130 technical concepts in this google doc. It includes a rubric to rate yourself - copy the sheet, make a column for today's date, and see what you know! Do it again every few months and watch yourself improve.

The point is just to have one place that tracks both your technical breadth and depth as a developer. Going forward, as you have time for side projects or some leeway to choose what you take on at work, this list can help you make those decisions and progress as you desire. This is a good starting point but absolutely feel free to add/delete/update the list to fit your goals!

Project Management

Building software is about so much more than writing code! Being able to move the whole project forward to successful completion requires an entirely different skill set. The best developers are strong communicators and excel in all these areas in addition to being technically competent.

Steps in the Project Pipeline

Context is always important. Writing code happens mostly in the "implementation" step, but that's only one piece of the puzzle. The more you know about what comes before and after the code, the better your code will be. Here are some important contexts for your work, from broadest to narrowest:

Developer Competencies

Knowing syntax isn't enough, you have to know how to apply it. Any problem has half a dozen acceptable tech solutions. Picking the right one comes from experience and process.

Given a problem statement/business goal

Given a spec (formally written or from verbal group consensus)

Given a tech plan


Given a bug report or error report

Given an existing codebase


In no particular order...

My ruby gems :)


For exploration

Specific Pages

Every Line of Code is Documented - Effective Spelunking of Git History via mislav

Jim Weirich on Decoupling from Rails

Rules, by Sandi Metz

Shortcuts for Creating String and Array Literals

The Magic Tricks of Testing by Sandi Metz

Not free, but excellent


I love helping people with ruby and with their careers. Get in touch! I'm @archslide on twitter and @arches on github.