You want to learn programming? We tell you which programming languages make sense and how you can get there fast.
The will to learn a programming language is there – congratulations! But in which of the countless programming languages should you invest your valuable time and effort? First of all, clarify: Do you want to develop apps for smartphones and tablets? Or prefer to build websites? Or programming embedded chips – microcontrollers in your TV or car? We introduce you to some programming languages with which you can venture into the world of the code.
Programming in blocks
One of the programming languages most commonly taught in (elementary) schools is Scratch – developed by the Lifelong Kindergarten Group at the MIT Media Lab. Unlike other languages, scratch programs are created by merging blocks on the screen. Students not only learn the structure of applications, but also the concept of algorithms, without having to learn the syntax – that is, without having to write a text in the respective language. The blocks represent puzzle pieces. As with a real puzzle, it is therefore impossible to put two pieces together that do not match – that is, if the result of the merge would not make sense.
In spite of the unconventional approach, Scratch is actually a procedural programming language, like many other popular computer languages. In other words, it allows the programmer to specify a sequence of operations that the computer will perform at the end. Scratch is often used at primary school, but it would not be wise to say that the language is only suitable for children. If you’ve never written a line of code in your life, Scratch might even be a good start. Scratch is free – you can either download a version for offline use or program programs directly on the website.
The BASIC alternative
Also BASIC is one of the programming languages that are particularly popular in computer science lessons at the school – with mixed opinions. Some say that BASIC is such an old language that the learner will struggle to get into a newer, more modern language later on. Others say that because BASIC is so straightforward, it provides the best insights into the work of a processor and, thanks to these insights, makes it easier to work with others and to understand other programming languages.
In the now 50 years that BASIC already exists, numerous “dialects” have formed. Newer versions of BASIC even include concepts such as block structure and object orientation. For starters, working with a version called SmallBASIC, with appropriate graphics programming extensions, works well. You can download this language for free. Note that Microsoft’s Visual Basic, despite its similar name, is fundamentally different from the original BASIC. The current version of Visual Basic is object-oriented (more on this in the next section) – another potential candidate if you want to continue your education in this area.
Object-oriented programming languages
Python occupies second place in the ranking of the most popular programming languages in school lessons. In contrast to BASIC, Python already picks up on more recent thinking structures of programming – such as the block structure and object orientation. This makes it more akin to popular languages such as Java, C ++, and C #, which are widely used in the industry. But Python is easier to learn. At this point, we will not go into what object orientation really means, you’ll learn quickly anyway, if you’re concerned with Python. So much to say: well-founded knowledge in an object-oriented programming language is a very useful skill. You can download a Python interpreter for free. If you want to learn Python, there are plenty of online courses, such as the “Complete Python Bootcamp” and “The Complete Python Developer Course”.
Alternatively, there are several online vendors where you can write the code online and try it on a web page – CompileJava is one of them. If you’re looking specifically for Android app development, you’ll need Android Studio and – in addition to the Java language – a good understanding of Android’s development environment. Do not rush and focus on Java for the time being. Nowadays, most programming languages are object-oriented.
Although the syntax varies between languages, it’s still easier to change to another after learning an object-oriented language. If you want to know which programming languages are most commonly used in the industry, take a look at the Ttiobe Index.
Web programming with HTML and CSS
Programming for the web is fundamentally different than anything we’ve talked about so far. Nevertheless, the effort to learn web programming is worthwhile. For the creation of rather simple web pages one usually uses HTML “HyperText Markup Language”, preferably in the most current version HTML5. As a markup language, HTML does not compile a list of instructions and commands that are executed in sequence, but describes how to display text and images on the screen. The majority of an HTML document is therefore often the text that you see on the website – but interspersed with so-called tags. If, for example, the tag <header> precedes a text, the following text is displayed as a header. Of course, the more images, graphics, tables and links you insert, the more complex this principle becomes.
To create HTML enough software that is usually already on your PC. For example, an HTML document can be written in a standard text editor such as Notepad, as long as the file name ends in .htm or .html. Because then the document opens as a web page in your default browser. Most browsers now also show you the HTML code of a web page you just visited. More professional tools – such as the CoffeeCup Free HTML Editor – offer advanced features, such as colorizing tags in the document for a better overview.
HTML is the backbone of a website, but you get an attractive layout with CSS (Cascaded Style Sheets). An example of how CSS works: HTML can turn a normal text into a headline. In the best case, the browser that invokes the page then uses its default font, size, and color for each level of the heading.
Further sources of instruction
Of course, you do not have to face the challenge of learning a new programming language alone. External help is available everywhere – and especially for those who do not want to study full-time. For example, Codecademy is recommended. Very helpful, and definitely worth a look are also the programming courses from Udemy.
Especially for code beginners and children from 9 years (with good English skills) are the online courses (called projects) of the Code Club. If you prefer to learn and program live with others under guidance, you will always find a dojo in the vicinity of the CoderDojo. The app “Apps for Good” helps young people to program their own apps.