An Introduction into Software Development
Just three weeks ago I was invited to join Purple Tuesday as a means of introducing myself to software programming & development and to experience what goes on in a ‘real life’ workplace in this industry, since in October I will be starting an Open University degree in Computing and IT (specifically in software development). This will be the first of a number of blog posts in which I will share my progress with you and give you an insight into what I have been learning.
Getting Started with Visual Studio
Purple Tuesday use the Microsoft .NET framework and write their code in C# for the back end of software development. The best tool to do this, known as an IDE (Integrated Development Environment), is Microsoft Visual Studio. It is very easy to get set up and use, and it allows you to begin writing code in a very understandable and straightforward way. The code editor supports syntax highlighting and also code completion using Microsoft’s intelliSense tool for not only variables, functions and methods but also language constructs like loops and queries. This makes is especially useful when, like myself, you are learning to write code, since it gives you hints as to what code you might want to enter next.
If you want to get started with Visual Studio, the best way would be to visit the Microsoft website and download Visual Studio 2012 Express, which is available free for anyone to download:
I recommend learning with the desktop version which allows you to create executable console and windows form applications which can run on your pc. This way you can practice writing applications which function and once you have learnt to write code, your will be able to adapt to using Visual Studio for Web if you are wanting to get into web-based system development.
As a complete beginner to programming and writing code, I had to start from the very basics; I was a blank canvas. It is quite daunting when you explore how much there is to learn, but as with anything, if you start from with the basics and begin to understand it, the rest will just fall into place as you take the time to learn and develop.
My Open University course will actually focus more on the Java programming language, however after researching and comparing Java and C# I am hoping that my skills from learning one will be relatively transferable when learning the other in a year’s time once I am at a more advanced level.
Google is your Friend
The first thing many people do when learning to write code in any language is, as you may know, write a ‘Hello World!’ application. It is extremely basic but is a good introduction into writing code. As you begin to learn more about the syntax used in programming languages and the structure of code, you will be able to develop more and more advanced software applications.
However, if you are beginning from scratch like I was, you may be at the point where you have downloaded Visual Studio and now don’t know the first thing about what to do with it or how to go about writing any sort of application. But have no fear! There are hundreds of fantastic tutorials available just a few clicks away online, both written as text and also as videos on YouTube, which I personally have found extremely useful. These range from teaching complete beginners how to write the ‘Hello World!’ application, to in-depth explanations of what all the code means and how to write more advanced applications. Another good resource available is the Microsoft website, which offers four step-by-step tutorials for Visual Studio, which you can find here:
I have also discovered that there are plenty of forums where people have had the exact same problems as you, which provide solutions and help you understand what you are learning. So, don’t be afraid to use Google at your advantage!
After three weeks I have gone from having a very limited knowledge about software development and writing code, to having created some small Windows applications including a maze game, an alert timer and a basic login system. If I was told to build these projects again just from memory then I would find it almost impossible since I still find it difficult to remember how to do a lot things, however when I am following a tutorial or guidance of some kind, I am able to understand what almost all of the code means and what is happening as the programs run, which I think shows that I am making good progress.
I’m having a great time with the guys at Purple Tuesday who are very encouraging and great to work with. They have been very helpful and ensured me that the best way to learn is to just keep practicing by making different applications and once I understand the main principles of how to write code, I will just pick up all the more detailed knowledge as I go along.
I will share my progress with you in future blog posts as I continue to learn more about software development with Purple Tuesday. Stay tuned…