So you know how to code in twenty different languages from Assembly 8088 to LINQ, but how much do you know about business processes, project management and business acumen. The following series is my personal take aways from Tek Pub’s Coder to Developer open community videos and Mike Gunderloy’s Coder to Developer book. This online streaming series breaks the book into four separate videos and it can be found at the following link at http://tekpub.com/view/coder/1. The following blog post is a summary of this material.
In the first video, Tek Pub descibes the three tiers to developing applications, with each tier leaning on each other like the sides of a triangle. They are: Open Mind, Dedication to Learning, and Patience.
Developers are exposed to a wide variety of languages, frameworks, platforms, and projects, so to be an effective contributor to any project you should enter the project with an open mind. Remove any biases you might have regarding Microsoft, Java, Ruby, etc. and focus on the project and the possibility of learning something new. This brings us right into the second tier, which is a dedication to learning. As described in the Software Engineering Handbook’s fourteen points, “”…the engineer will devote themselves to a lifelong dedication to learning…””. Everyday new technologies are emerging from new file formats (ex. New Google Image Format Announced 10/1/2010), new languages (ex. Ruby), and even new platforms (ex. Silverlight). Make it a goal of yours to learn a new language or framework every few months. Who knows… some of the unique features of a new language could help you better understand your primary project’s languages. Lastly, learning something new does not happen overnight. It may take you several weeks, months, years, ages, eons, to learn a new technology or framework. However, you need PATIENCE to take the time to learn something new and immense yourself in it. Often one of best ways to learn something new is to address an applicable project and try applying the new skill set on it. There are also countless resources available at your fingertips including online blogs, programming/developing web sites, books, and web casts. Here are a few of my favorite blogs and tech sites: