We’ve all been there at one point or another during our developer careers. You’ve spent a lot of time, energy, and dollars learning a technology. You’ve come to know it’s quirks, it’s pitfalls, it’s strong points, and it’s weak points. You’ve come to rely on your ability to bend and shape it to your will in completing projects on time with a high-level of polish. You’re comfortable with it. You dismiss some other technologies because of a fear of the unknown or perhaps you think you don’t have the ability to take on something new given how busy you already are.
There is a danger in complacency. You might end up gripping on too tightly to a certain technology, putting up blinders on yourself and fighting a little too hard to keep things familiar. It could cloud your developer vision and make things harder on yourself in the long run. You might need to sprint to catch up to the moving targets of application development and platform knowledge – when others rubbed the sleep from their eyes (from support education) and gracefully boarded long before you even considered it.
You might end up gripping on too tightly to a certain technology, putting up blinders on yourself and fighting a little too hard to keep things familiar.
I’m leading here a bit – but in my opinion it’s always a good thing to learn new things – even if they are out of your “wheelhouse”. When I first started learning Lingo a million years ago, I stayed up until 3 or 4 in the morning with some other developers learning it, kicking it’s tires, making it do really awesome things. For our own personal projects that never shipped. We did it to have fun learning something new. Shake things up a bit beyond the normal HTML stuff we were doing. We destroyed ourselves with endless cups of old coffee and a general lack of sleep. We felt like hackers though and the experience was exhilarating. After a summer of it, we had our Lingo down and we could create some incredible stuff for new projects.
Then we did the video editing thing. Work, work, work. We added audio authoring and editing. Paired with video. Then of course we needed to make things in 3D (Strata 3D at the time) – and we paired all of that to make really engaging and moving audio-video experiences. Then we paired with HTML/Director and we had some monstrously ambitious and beautiful creations. I’m not talking about spinning 3D titling over lame building fly-overs with cheesy audio. Awesome stuff.
This of course was followed by Flash. As Flash matured, so did our skills and ability to make that do what we wanted to do. Anything was possible and we spent many hours and hours coding and designing rich and engaging experiences. The language changed (thankfully) to AS3 and we banged on that and twisted the Flash towel, wringing out all we could from it.
Then came iOS/Mac OS X development – and using the previous experiences up to this point, the transition wasn’t that hard – or as hard as one might imagine. Once you have a few languages under your belt, you realize that they are all similar in some fashion and the leaps mostly come in the form of syntax and available frameworks. Surely a lot of work and ambition, but continually the toolbox grows heavier with all the new tools being added to it. Adding to the list of developer/designer capabilities. Whether you used it for shipping applications or not… those tools can prove invaluable in regards to how you look at projects in the future. Or working with others doing some heavy lifting.
Surely a lot of work and ambition, but continually the toolbox grows heavier with all the new tools being added to it.
Make your developer toolbox as heavy as you can. Learn as many languages as you can. Make your skills deep and flexible so you can be considered for a great number of possible projects. Make applications for yourself that you can’t find anywhere else. Pick up an Arduino board and start wiring and coding it up.
Don’t get stuck doing the same kind of stuff over and over if you can help it. This is just my opinion, but this kind of thinking has paid off in spades for me.