Algorithms dominate vast stretches of our society. Without software, no modern technologies would function. Digital applications, moreover, are involved in just about all innovative processes. Coding is the tool that enables us to design the digital world. But coding is more than just a technical skill. If you can code, you understand how technologies correlate, what their effects are and how you can influence them.
KNAPP is one of the largest IT employers in Styria with more than 1,000 people working in software. What’s more, two years ago the company started the apprenticeship “Application Developer – Coding”. Our apprentices Fereshte Dorodyan and Valmir Valci both began this new apprenticeship about a year ago. In an interview, they tell us why working with algorithms and programming languages is creative and fun, while, at the same time, you don’t have to be a maths genius.
Coding is one of the skills of the future. What exactly is coding?
Fereshte: A good comparison is the remote control of a TV. You can turn the volume up or down. These commands have to be developed and programmed. Many objects from our everyday life also have to go through such a process. The development of these commands is called coding. In general, coding is a very interesting field because you can create and build something. When you programme the mundane processes of these technical devices, you basically give them life.
Valmir: As a coder, you create an application.
So, in short, coding is just a code that controls the computer?
Valmir: Not quite. Between the application and the computer, there is a translator – also called the compiler or the interpreter. This translator translates the source text into the language understood by the computer.
Many people may think that coding is abstract and boring. What’s your take on it?
Valmir: That’s absolutely not true. Programming is actually very exciting and interesting. You can express your creativity and fantasy and create a wonderful programme. Of course, you also need patience because not everything functions right from the beginning. You can compare coding with the assembly of a cabinet for which you have no instructions. You have to try different ways until you get the job done.
Fereshte: Creativity in coding is a crucial aspect, for example, when it comes to designing the interfaces or to setting up source codes. This is not boring at all.
Is it important to be strong in maths? Or do you just need patience and logical thinking?
Valmir: Both are important in programming, because many functions include mathematical tasks in the background. Of course, it’s always beneficial if you understand what’s happening there. Patience is just as important for programming because from the start, everything doesn’t always work the way you want it to. You might be stuck for hours on just a small function. But then, when you finally get it right and solve the problem, you feel even happier and prouder of yourself.
Fereshte: Mathematical skills are advantageous, but logical thinking and creativity are even more important. The fine art of programming is really about getting complex processes and algorithms into a shorter, simpler form, which also helps to reduce the likelihood of errors. Just like other languages, programming languages have their own grammar which are rules in the form of commands and instructions. Of course, as a coder you know some of them by heart.
Again and again, we hear about how important algorithms are. What exactly is an algorithm?
Valmir: An algorithm includes an established sequence of logical steps similar to the individual steps in a cooking recipe. An algorithm is also what Facebook uses to display news and images for us which are based on the evaluation of our previous behaviour as a user.
Fereshte: Children in primary school are already learning the basics of connecting such logical elements. They can therefore become acquainted from early on with this type of thinking. In this respect, it already has a lot to do with grasping logical sequences, which must be considered during programming to make it work.
There are well over 500 programming languages. How do you find out which is the right programming language? In other words, which one should you learn first if you want to work in the logistics sector?
Fereshte: You can begin with a simpler programming language such as Python or C#. Once you’ve learned one or two programming languages with their concept, it’s easier to learn and use further programming languages. The concepts are similar. In the logistics sector, a lot depends on which systems a company works with. The usual languages are Python, ABAP, Java and C# and these are also taught in vocational schools.
Valmir: I started programming with Python, because it’s easy to learn, doesn’t depend on a platform and is free. What’s important here is that the first programming language you learn should be up-to-date and not obsolete. Since Java is one of the most commonly used programming languages, I would suggest learning Java. It’s definitely needed in the logistics sector.
Coding should be part of general education because coding is the language of the digital world. Algorithms and software already dominate broad swathes of our society. How does this knowledge help our everyday lives?
Valmir: For one thing, programming taught me patience and, for another, it helps me at home in my free time. For everyday processes, I can programme the software myself – for a security camera, for example. In my opinion, a programming language is just like any other language. The earlier you start to learn it, the faster and better you become at it.
Fereshte: This job has helped me become more precise and orderly in my work. Generally speaking, I understand how many of our daily applications function, such as Facebook or WhatsApp.
Why is coding also interesting to girls and women?
Fereshte: The work is exciting, really fun and you can work in many different areas. I can really recommend that young women choose this career, because you have so much opportunity for personal growth – you can create things individually and express your own creative personality. And it’s a good place to be in terms of work-life balance, especially with regards to family. Coding can easily be done from your home office at any time of the day.
Valmir: I also think that more women should work in this area: They work with more attention to detail and organization and have more creativity and fantasy, which has a really positive effect on the design of the software.
How do you work together in coding – as a pair or in a team?
Valmir: Small applications are done individually. We do the more time-consuming applications together. Each colleague is assigned a part of the source according to their strengths.
Fereshte: Anyone can have a good idea. That’s why I think it’s better when we work in a team and then decide which solution is the best.
Thank you for the interesting conversation.
Further reading recommendations
KNAPP coding contest
March 13, 2020
The challenge: Young IT talents solve a knotty programming task taken straight from the world of logistics. Prize money amounting to 1,000 euros, 800 euros and 500 euros will be awarded to the top three solutions from both the “pupil” and the “student” categories.
More information on the KNAPP coding contest!