To celebrate our new Learn C# course release this week, we interviewed several developers who work in C# extensively. We got a ton of insightful answers on what it is like to work in C# and why it is a valuable language to learn. Meet these developers: Nam, Altan, Nada, Jesse, Hayden, Harley, Young and Simon!
Tell me a little about yourself!
How and why did you learn C#?
Harley: I first picked up C# during my computer science degree. I remember appreciating how easy it was to debug the code. Stepping through, line by line, and seeing what every command did was the best way to learn how to write C# code. I found that most of the tech companies in my home town were using C# along with the .NET framework, so having these skills was helpful in my job search.
How do you use C# in your day to day?
Altan: Learning C# at my first internship was really useful because I ended up using it at all of my internships and my full-time job at Microsoft!
Here is a quick list of some of the C# projects I worked on:
- A touchscreen mapping application.
- A Windows desktop application to monitor a messaging system between stealth jets.
- An application for graphic designers to fit any custom-made design on blank document within an image (imagine a picture of you holding a blank piece of paper, this application could apply any design onto the paper).
- An application for photographers to preview what a custom design would look like on natural curved surfaces, such as embroidery on wrinkled clothing or images on water bottles.
- A distributed system made up of a web application, web service, and big data service that processes terabytes of data daily.
Simon: I am working on some Azure microservices that are almost fully written in C#.
Our client application is a webpage written mostly using Typescript and common JavaScript libraries, but from the code that serves those pages to our users, over the backend all the way to our DevOps and build pipeline tooling (both on our build machines as well as tooling for our local repositories on the dev machines) pretty much everything else is written in C#.
Since I am working on the backend of our service, pretty much my entire day is working on C# code.
Why should I learn C#?
Young: In the past some of the more popular languages I’ve used included Python, Java, and Javascript/Typescript. I’m constantly impressed with how elegant programming in C# can be, and how much support it has, both in terms of what you can do with the language itself and the C# community (looking at you Jon Skeet!).
It also goes without saying that a lot of companies (Microsoft included) look for C# developers. Another nice thing about learning a language like C# is it has a lot of similarities to other (C-family) languages, and a lot of the concepts you’ll learn carry over too.
Altan: C# is one of the most ubiquitous languages used in tech today and can be adapted to almost any type of application that you would like to build. For example, you can use C# to build a Windows application, a web application, mobile apps for Android and iOS (when used with the Xamarin library), or a back-end system doing heavy data processing.
The syntax is straightforward, the best practices are tried-and-true, and the documentation is excellent. The developer toolset typically used with C# (Visual Studio) is the best in the business. As a beginner, you won’t have any problem searching the Internet for any issues or questions you have about the language because of its popularity.
Lastly, C# is built and maintained by Microsoft, a company that has an incentive to help software developers become more productive, so it still receives useful updates regularly and will be continued to be supported in the future.
Top tip when learning a new language or specifically C#?
Nada: When learning a new programming language, it’s easy to quickly get lost by the terminology and syntax and be unable to verbalize what you have learned. My advice would be to constantly take a step back while learning a new programming language and ask yourself, can you explain what you’re learning to someone else? If not, spend more doing mini coding challenges to help you better understand what you’re learning.
Young: If you use tabs in a C# file, it won’t compile, so don’t use tabs. Just kidding. My real advice is use an IDE if you aren’t already (e.g. for C#, something like Visual Studio). Code completion can be a real lifesaver when getting started (and even well after that)!
Responses have been condensed and edited for clarity.