When you love what you do for a living, a great thing to do is never stop getting better. For a web developer, the best way to get better is to work out in the open, for all the world to see.
Most devs probably feel some amount of intimidation when they see the amazing projects posted on Github every day (if not, they may have narcissism issues). Yet even Github masters like Paul Irish, Addy Osmani, Chris Coyier, Rebecca Murphey, Dave Rupert, Lea Verou, Seb Lee-Delisle (..the list goes on) all had to start somewhere.
No matter the skill level, we all need to learn constantly just to keep up with the relentless pace of change. It doesn’t matter whether you are great, or even good. Trying to get better is what matters. Giving a damn about your craft matters. If you do, then you have what it takes.
A little over a year ago, my second son was born. Having kids changes your perspective. The need to provide for them is highly motivating. Last December, I stayed home to spend time with my family, and work on some projects. Having seen some interesting HTML5 presentation frameworks, I decided make one of my own.
Thanks to helpful relatives and the fact that babies sleep a lot, I created What The Heck Is Responsive Web Design? which I built on Scrolldeck.js, an HTML5 presentation framework that I created using Scrollorama, a plugin that I also created. (Synergy!)
Much to my surprise, when I posted Scrollorama to Hacker News, it made it to #1. All three projects were very well received, and it was amazing to me. I got hooked.
During the course of the year, I released other projects, like BigVideo.js, Responsivator and Scrollorama2: SuperScrollorama. Now that little project that started it all somehow got to be the #3 Google search result for Responsive Web Design (right behind Ethan Marcotte and Wikipedia). That’s madness!
Now, I’m always looking for opportunities to build things I can share on Github. Even if I make something that turns out to be a dud, it forces me to write better code. To comment or write documentation so people (perhaps my future self) can use what I’ve created.
Just today, I released controldeck.js, my first node.js project. It works with various HTML5 presentation frameworks to allow you to control slides from a web page, presumably one on your phone. I made a quick little video demo:
I sometimes wonder why more of us don’t develop in the open. Maybe some devs think what they’re doing isn’t interesting, or good enough. That it takes too much time to clean up their code, write docs or create a project page.
The web can be a harsh, judgmental place. For me, the year I’ve had has been a great success. Still, it would have been easy to get bogged down by negative comments, frustrated by issues and bug reports, or embarrassed by code mistakes. Will people say you are doing it wrong? Of course! I have literally been told I am ruining the internet.
Put aside those doubts and negative feelings. If it takes too long to make an amazing project page, then don’t. If writing documentation is taking forever, then write less and let your code do the talking.
Developing in the open isn’t about being perfect. It is about getting yourself out there. Do cool stuff, share it and talk about it. Over and over. It is about getting better. It is about being a part of something bigger than the desk you sit at. So, get out there and mix it up. You’ll be glad you did.