img by Coba

How to Become a Good C# Programmer, Part 10

This is final post in my 10-part series on How to Become a Good C# Developer. If you need to reference the full list of steps to take to be a good C# programmer, you can find those here.

  • Part 1 - Overview of a System for Becoming a Good C# Programmer
  • Part 2 - Steps 1 and 2: Picking a Language and Picking a Pet Project
  • Part 3 - Steps 3 and 4: Picking a Book or Class to Get Started
  • Part 4 - Step 5: Implementing Your Pet Project
  • Part 5 - Step 6: Minimizing the Trough of Disillusionment
  • Part 6 - Steps 7 and 8: Finish your Book/Class and Start a New One
  • Part 7 - Steps 9 and 10: Begin Answering Questions and Pick a New Project
  • Part 8 - Steps 11 and 12: Review more apps and Start Contributing!
  • Part 9 - Steps 13 and 14: Write a few articles and the Bonus Step
  • Part 10 - Next Steps and What Does It Take to Be a Great Programmer?

Now You Have the System

I believe that, if you follow the thirteen steps that I outlined in this article, you will become a good C# programmer. You just can't help but become a good programmer when you do things like learn from people with tons of experience (i.e. reading the right books, taking the right video classes, and reviewing quality developer's code). It will take you time to become a good C# developer but, like all things worth doing, you will have a sense of pride once you've gone through these steps. And if you do Step 14 - the one where you create your own business - you might even be one of those people who makes their living from writing their own software (and that's a great feeling - trust me).

I wish you luck and I hope that you will share this article with others so that, together, you and I can make someone's life a little bit better.

The Next Steps

Inevitably everyone wants to know, "What now? I've followed the system and I'm doing well - where do I go from here?" Really it's just more of a "Rinse and Repeat" mantra: find some books/classes, contribute to more open source projects, develop more pet projects, read more books, take more classes, etc. You need time and "seasoning" to go from "good" to "great". The good news is that even good programmers can write great programs, enjoy programming, and make a great living. In fact, it's quite easy to just be a "good programmer" for your whole life. I hope you'll go on to become a "great programmer" though :)

What Does It Take to Become a Great C# Programmer?

Whew - big question! It certainly takes years of experience - I think everyone can agree on that point. What else though? I think most people who list these attributes:

  • High intelligence
  • Training on the right things (i.e. "perfect practice" as opposed to "practice makes perfect")
  • Exposure to many systems and styles
  • Passion for learning, developing
  • Creativity
  • In-depth knowledge of internals
  • Ability to make complex topics simple
  • Unit testing knowledge
  • Knowledge of patterns
  • Ability to quickly solve problems
  • Ability to accurately scope projects and provide accurate timelines
  • Ability to hit deadlines
  • Ability to debug quickly and efficiently

There are many more attributes and skills, of course, but these are definitely in the ballpark.

How can you develop these skills?

I wish I could say, "This one thing - if you'll go do this one thing, you'll become a great developer" but I just can't - it's not possible. In my opinion, some people aren't born to be great programmers. Some people have all of the attributes except the ability to stay focused and hit a deadline - and they aren't great programmers. Others become really great at a specific version yet allow their skills to age - they don't update their skillset as new versions or technologies replace what they mastered. That's where the passion for learning and technology comes into play - you've really got to love developing to put in the hours it takes to remain a great developer.

I'll give you a few books that will allow you to help yourself:

There are many, many more books worth reading - I've only focused on pure programming-related books. There are books that change your outlook on life, books that motivate you, and inspirational biographies that can make you feel like a small, insignificant ant - all of which great developers enjoy. The one thing I'm sure of is that it takes a desire to learn and improve. Without that, the rest will not follow.

I wish you luck on your journey!

Scott Whigham


  • Part 1 - Overview of a System for Becoming a Good C# Programmer
  • Part 2 - Steps 1 and 2: Picking a Language and Picking a Pet Project
  • Part 3 - Steps 3 and 4: Picking a Book or Class to Get Started
  • Part 4 - Step 5: Implementing Your Pet Project
  • Part 5 - Step 6: Minimizing the Trough of Disillusionment
  • Part 6 - Steps 7 and 8: Finish your Book/Class and Start a New One
  • Part 7 - Steps 9 and 10: Begin Answering Questions and Pick a New Project
  • Part 8 - Steps 11 and 12: Review more apps and Start Contributing!
  • Part 9 - Steps 13 and 14: Write a few articles and the Bonus Step
  • Part 10 - Next Steps and What Does It Take to Be a Great C# Programmer?
authors
scott whigham
grant moyle
chad weaver
recent comments
  • Maxwell Wenzinger: I saw something about this on TV the other night. read more
  • Elbert Quinby: Hello webmaster can I use some of the information from read more
  • Club Penguin: I don't know if you have any difficulties with spammers. read more
  • Shae Vanlew: I Under no circumstances knew that. Thanks for your info. read more
  • Olin Branscombe: Wow!This is extraordinary,practically as well very much to digest. Great read more
  • Roland Ernspiker: Being a rookie blogger myself, it is always great you read more
  • Kai Kreinbring: Thanks just for taking time to talk about this, I read more
  • Lou Almonte: Yo, I check up on your blog a few times read more
  • PRK: Howdy, your site is discussed in a radioshow! Great job read more
  • WritingWriting.info: Have you ever thought concerning the processes from which a read more