01 is powered by Vocal creators. You support wolfgang fischer by reading, sharing and tipping stories... more

01 is powered by Vocal.
Vocal is a platform that provides storytelling tools and engaged communities for writers, musicians, filmmakers, podcasters, and other creators to get discovered and fund their creativity.

How does Vocal work?
Creators share their stories on Vocal’s communities. In return, creators earn money when they are tipped and when their stories are read.

How do I join Vocal?
Vocal welcomes creators of all shapes and sizes. Join for free and start creating.

To learn more about Vocal, visit our resources.

Show less

A Beginner's Guide to Getting Started with Programming

Discussing Programming Languages and IDEs; How a Complete Beginner Can Get Started with Programming

Introduction

In our ever-growing digital world, technology dominates almost every corner of our lives. From browsing Spotify playlists to asking Alexa what the capital of Finland is, software is everywhere, and hence programming education is being pushed more so every day. However, it's not always clear where and how one goes about starting to read and write these modern-day hieroglyphics. 

In this article, I hope to give you a brief introduction into the purpose of different programming languages, and what integrated development environments are; helping you start your journey from amateur to tech magnate.

Why learn to program?

Programming has a multitude of different uses and with technology getting evermore ubiquitous, it's becoming more motivating than ever to jump on the programming bandwagon. 

Learning to program is a bit like learning the alphabet; initially, it can be quite confusing as you don't understand how all these letters correspond with one another, however, with time, you begin to put the pieces together and creates syllables, then words, then entire sentences. Eventually, you're able to go even further and create pages upon pages of paragraphs rich with information.

It's not an easy path, but with due time, you'll be able to develop mobile/desktop applications, play around with fun scripts, make video games, make websites, etc. It's an incredibly creative hobby; giving you the freedom to make whatever you want.

Choosing Your Language

When I started getting into programming, I thought learning as many languages as possible would pave my path to success. The problem with this philosophy was that I didn't really understand how time-consuming it is to truly master a language.

Programmers are constantly learning new things even after years of interacting with a language. It would be my advice to you to stick with just one language initially before you start experimenting with others.

Luckily, there are a lot of parallels between many programming languages, so learning one will make learning a second much easier.

Languages: Python

Python is a popular scripting language, meaning its real strength is how it allows for the ability to create small programs that don't need to utilise complex programming paradigms and instead want to be written quickly and succinctly. Due to the language's syntax and lack of abstraction, it's incredibly beginner friendly and is often used in education to seamlessly ease students into programming. Its more simplistic nature and availability of tutorials online make it a very solid choice for the complete beginner.

Languages: C#

C# is an object-orientated programming language* (OOP language) with very close links to Java, so learning C# will make learning Java effortless due to the parallels between the two (and vice-versa.) C# is a popular language when it comes to game development due to major game engines like Unity and frameworks such as Microsoft XNA utilising the language. Hence, I recommend learning starting here if you're looking to start making games. 

  • An object-orientated programming language allows for ideas/information to be represented as "objects;" an abstract programming paradigm. These languages are different to scripting languages which are generally simpler to understand. OOP languages are less beginner friendly, however, they are much more powerful in what they can achieve.

Languages: Java

Java is, essentially, a programming behemoth. It's widely used in industry and continues to reign as one of the most popular languages to learn. It, like C#, is an OOP language, so it can be slightly daunting to beginners. However, due to its widespread popularity, tutorials are not difficult to find, so it still stands as a solid choice for beginners.

Languages: C++

C++ is another OOP and is generally seen as being harder than C#/Java as it includes many features that are absent from the prior two. Amidst its difficulty, it creates incredibly efficient programs and helps give learners a strong understanding of the inner mechanisms of computers. I wouldn't recommend this to an absolute beginner unless you're up for a hefty challenge.

Languages: Javascript

Don't be confused, as Javascript and Java are very different from one another, despite the name similarity. Javascript is mainly used for giving websites their interactivity; making buttons move, changing colours, handling animations, etc. This is a great advantage for beginners because it means code can be executed in the browser. This language is very interactive from the get-go, making it another great beginner choice.

Integrated Development Environments

By now, you should have a basic understanding of some of the different programming languages. Great, so, now what? How do I get started with actually writing code? This is where an IDE comes in.

IDE stands for integrated development environment which, in layman's terms, is simply software you download on your computer in which you can write and execute code in. IDEs are usually (but not always) specific to a language, so you may have to download multiple IDEs if you plan on working in multiple languages. 

The IDE you use is mostly down to personal preference, however, some possess some handy features that can aid development. For a beginner, some of the most useful features are IntelliSense (which is similar to predictive text), line numbers, error checking (similar to spell check), hassle-free setup, and a nice and easy to use user interface. 

Below are some links I've added that you can visit to download different IDEs.

Python - IDLE

This is the default Python IDE. It features an incredibly simple design, however, lacks some nice features like IntelliSense, error checking, and unfortunately, it doesn't display line numbers. Yet, its simplicity makes it attractive to beginners.

Python - PyCharm

PyCharm is a slightly more rigorous Python IDE possessing many of the features IDLE lacks. You sacrifice simplicity/minimalism for a better ease of use.

C#/C++ - Visual Studio

Visual Studio is an excellent C#/C++ IDE developed by Microsoft that has pretty much all the features you can ask for. I honestly wouldn't recommend anything else.

Java - Eclipse

Eclipse is one of (if not the) most popular Java IDE. It, again like Visual Studio, has pretty much all the tools you need.

Java - IntelliJ IDEA

Made by the same developers as PyCharm, IntelliJ IDEA is a nice clean alternative to Eclipse with much of the same functionality.

As for Javascript...

You do not need to use an IDE for Javascript as it can be used within a text file. However, there are still text editors available to offer a nice development experience, such as Sublime Text. There are also many online editors where you can start programming straight in the browser.

What next?

I hope this article has been useful in giving you some idea of how to get started programming. There's a lot more I'd like to cover, however, it's getting pretty long at this point. 

Once you've got your IDE setup, I'd recommend browsing some online tutorials as to where to go next. There are many YouTube series that teach these languages from the grounds up, so you should be good to go from there. 

I may do a follow-up article, giving a more comprehensive answer to this question, going more in detail about how to improve, good resources, and some tips, but for now I hope I've given you some sort of skeletal foundation.

Now Reading
A Beginner's Guide to Getting Started with Programming
Read Next
The End of YouTube