Reader Level:
Articles

How to become a C# Programmer

By Mahesh Chand on January 28, 2013
So you want to be a C# programmer? In this article, I will try to answer this question with some real world examples.
  • 3
  • 0
  • 39071

How to become a C# Programmer

So you want to be a C# programmer? In this article, I will try to answer your questions.

Before I start, let me emphasize that some people use terms such as coder and developer for a programmer. In this article, I am talking about a person who writes code.

Are you a programmer material?

Programming has to be in your blood. Not everybody is programming material. You need to make sure you are that material.

Computer programming is not a rocket science but neither is it an art

CsharpProgrammer.png

Computer programming is about logic, analysis, solving problems and finding the optimal solutions of problems. Problem solving is directly proportional to your logical and analytical skills. If you have these two skills, you are almost qualified to become a programmer.

Before you say, "Ahh .. Let's start programming today", you really need to understand what it takes to become a good programmer.

Programming is problem solving.

But I always believe in one more skill. That is dedication. If you are fully committed to it and you have time, you will do well. Time is the key though. Programming is not something you can learn quickly. It's just so much to cover. Not only do you need to understand and speak (alright! at least type) what computers speak but you also need to know how to create that language for the problem.

Some people ask:

"How much time it will take me to learn C# programming?"

Answer: Nobody knows!

Nobody knows. There is no timeframe for learning programming. You're never finished learning. I have seen programmers that have been programming for 50 years and still learning.

So, if you are thinking, if I am finished with 2 years, I will be done. Forget it. Programming is not for you. A programmer never stops learning.

A good programmer needs to be persistent. Another word for persistent is stubborn. All programmers become confused but a good programmer does not give up. There will be times when you are very confused and you think it is impossible to figure something out. When that happens, take a break. If you are a good programmer, you will not give up. You will however return to the problem and solve it.

You must enjoy thinking; not everyone does.

"A programmer must enjoy thinking."
- Sam Hobbs, Author C# Corner

Some programmers must be taught programming and related skills. A good programmer can read books, documentation and other resources and learn on their own.

I started programming in 1993 in college and am still learning. Every year there is something new. There is always something to learn.  You must be prepared to read documentation every day you program. Reading documentation can be frustrating and you must understand that it takes time to learn things. I cannot emphasize enough the requirement to read documentation and other resources.

Becoming a C# Programmer

If you are still reading this article, I assume you are programming material. You have all the skills it needs to be a programmer and on top of that, you have plenty of time.


Step 1: Download and Install Tools

To write your C# code, compile, build and run it, you need a tool. There are several tools for this but the best tool is Visual Studio 2012.

Visual Studio Express 2012 is a free tool for students and beginners. You can download it here:

Download Visual Studio Express 2012 for Windows Desktop


Step 2: Learning Material

Next, you need a very basic book. Here is a very basic book that will teach you the basics of the C# language and help you learn to write basic programs.

Here is a good article:

Books are a good way to start programming.


Step 3: Pick a Track

Congratulations! After finishing Step 2, you're officially a C# programmer. But just knowing the C# language will not take you too far. You must know one of the technologies that is used to build commercial applications.

There are three different tracks for you:

  • Windows Desktop Applications
  • Web Applications
  • Windows Store Apps

Windows Desktop Applications are traditional Windows applications and they run on your local machine. Windows Desktop applications are built using two major technologies – Windows Forms and Windows Presentation Foundation (WPF). Windows Forms are an old technology and WPF is a new technology. I would recommend using WPF. Some examples of Windows applications are Outlook, Microsoft Office, Visual Studio, Notepad, Internet Explorer, Graphics tools and so on. You can get started with WPF here >. It is always a good idea to buy a WPF book from your local store. We have also listed hundreds of basic tutorials on various topics on WPF in C# Corner. 

Web Applications are usually Websites that run on a Web Server and can be accessed from anywhere in the world. Web Applications are built using ASP.NET,  HTML 5, JavaScript and related technologies. Some examples of Web applications are Facebook, C# Corner, Google, Yahoo, TimesOfIndia.com, and your online banking. Here are good resources about ASP.NET: 

Windows Store Apps are a new technology that only runs on the Windows 8 operating system. You can build Windows Store apps using C#/XAML or HTML 5/JavaScript combo. This is very new and it does not have too much scope in the commercial world yet. I would not recommend this for students or beginners.

Windows Store Apps are not for beginners.

Step 4: Wrap it up!

Congratulations Again! Now you are on your own. You can start learning from a book. Come online on C# Corner and read articles here. Work with some people on a project. Join a company as an intern and put in more and more time.

Programming requires a lot of time and dedication. The more time you spend, the better you get.

Good Luck!

Authors

Sam Hobbs and Mahesh Chand

Author Note

This is an open-dialog article. Feel free to post your opinion about this topic by clicking on Add your contents and source code to this article below. 

More Readings

Here are some good readings

Mahesh Chand

Mahesh Chand is founder of C# Corner. C# Corner founded in 1999 is a FREE member contributions based open platform for developers to solve problems, learn new technology and hang out.  Mahesh has been awar... Read more

COMMENT USING

Trending up