Geeks With Blogs
Lee Brandt's Blog You're only as smart as your last line of code
Self-portrait of Leonardo da Vinci. Red chalk....

I’ve been doing the whole programming thing for awhile and reading and watching some of the best in the business. I have come to notice that the really great developers do a few things that (I think) makes them great. Now don’t get me wrong, I am not saying that I am one of these few. I still struggle with doing some of the things that makes one great at development. Coincidently, many of these things also make you a better person period.

Believe That Guidance Is Better Than Answers

This is one I have no problem with. I prefer guidance any time I am learning from another developer. Answers may get you going, but guidance will leave you stranded. At some point, you will come across a problem that can only be solved by thinking for yourself and this is where that guidance will really come in handy. You can use that guidance and extrapolate whatever technology to salve that problem (if it’s the right tool for solving that problem).

The problem is, lots of developers simply want someone to tell them, “Do this, then this, then set that, and write this.”

Favor thinking and learn the guidance of doing X and don’t ask someone to show you how to do X, if that makes sense.

Read, Read and Read

If you don’t like reading, you’re probably NOT going to make it into the Great Developer group. Great developers read books, they read magazines and they read code. Open source playgrounds like SourceForge, CodePlex and GitHub, have made it extremely easy to download code from developers you admire and see how they do stuff. Chances are, if you read their blog too, they’ll even explain WHY they did what they did (see “Guidance” above). MSDN and Code Magazine have not only code samples, but explanations of how to use certain technologies and sometimes even when NOT to use that same technology. Books are also out on just about every topic. I still favor the less technology centric books. For instance, I generally don’t buy books like, “Getting Started with Jiminy Jappets”. I look for titles like, “How To Write More Effective Code” (again, see guidance). The Addison-Wesley Signature Series is a great example of these types of books. They teach technology-agnostic concepts. Head First Design Patterns is another great guidance book. It teaches the "Gang Of Four" Design Patterns in a very easy-to-understand, picture-heavy way (I LIKE pictures).

Hang Your Balls Out There

Even though the advice came from a 3rd-shift Kinko’s attendant, doesn’t mean it’s not sound advice. Write some code and put it out for others to read, criticize and castigate you for. Understand that there are some real jerks out there who are absolute geniuses. Don’t be afraid to get some great advice wrapped in some really nasty language. Try to take what’s good about it and leave what’s not. I have a tough time with this myself. I don’t really have any code out there that is available for review (other than my demo code). It takes some guts to do, but in the end, there is no substitute for getting a community of developers to critique your code and give you ways to improve.

Get Involved

Speaking of community, the local and online user groups and discussion forums are a great place to hear about technologies and techniques you might never come across otherwise. Mostly because you might not know to look. But, once you sit down with a bunch of other developers and start discussing what you’re interested in, you may open up a whole new perspective on it. Don’t just go to the UG meetings and watch the presentations either, get out there and talk, socialize. I realize geeks weren’t meant to necessarily be social creatures, but if you’re amongst other geeks, it’s much easier. I’ve learned more in the last 3-4 years that I have been involved in the community that I did in my previous 8 years of coding without it. Socializing works, even if socialism doesn’t.

Continuous Improvement

Lean proponents might call this “Kaizen”, but I call it progress. We all know, especially in the technology realm, if you’re not moving ahead, you’re falling behind. It may seem like drinking from a fire hose, but step back and pick out the technologies that speak to you. The ones that may you’re little heart go pitter-patter. Concentrate on those. If you’re still overloaded, pick the best of the best. Just know that if you’re not looking at the code you wrote last week or at least last year with some embarrassment, you’re probably stagnating. That’s about all I can say about that, cause I am all out of clichés to throw at it. :0)

Write Code

Great painters paint, great writers write, and great developers develop. The most sure-fire way to improve your coding ability is to continue writing code. Don’t just write code that your work throws on you, pick that technology you love or are curious to know more about and walk through some blog demo examples. Take the language you use everyday and try to get it to do something crazy. Who knows, you might create the next Google search algorithm!

All in all, being a great developer is about finding yourself in all this code. If it is just a job to you, you will probably never be one of the “Great Developers”, but you’re probably okay with that. If, on the other hand, you do aspire to greatness, get out there and GET it. No one’s going hand it to you.

Enhanced by Zemanta

 

Posted on Tuesday, April 13, 2010 11:53 PM | Back to top


Comments on this post: Becoming A Great Developer

# re: Becoming A Great Developer
Requesting Gravatar...
Great article Lee. There are few very interesting points out there aren't made frequently enough. Reading other people's code no one ever talks about. I think that is definitely a must. In college I studied music, and all the great composeres studied other people's scores or "muscial code" if you will. They also were always writing music, some of the greats have hundreds and thousands of published pieces of music. Not all of them are the best, but they did improve over time. The big thing is being social, I have learned of all the new technologies and frameworks that I know of through some sort of social activity, mainly twitter, and blogs, but you can interact with those individuals as well. I don't think anyone will ever deny that writing code is probalby one of the best ways to learn, especially because you run into the same sorts of problems frequently and often solve them differently. Once again great post.
Left by Adam Wright on Apr 14, 2010 7:38 AM

# re: Becoming A Great Developer
Requesting Gravatar...
Great post, with very interesting points you raised there. However, i think that in the "Write Code" section, you should have said "great developers develop" instead of "great developers Write Code".
Left by Tidjani on Apr 23, 2010 10:45 AM

# re: Becoming A Great Developer
Requesting Gravatar...
Tidjani: great idea: fixed.
Left by Lee Brandt on Apr 28, 2010 2:19 PM

Your comment:
 (will show your gravatar)


Copyright © Lee Brandt | Powered by: GeeksWithBlogs.net