Preslav Mihaylov

Speaker, Software Engineer, Technical Trainer. Passionate about computer science, presentations and reading books

Tag: code

The build process of programming languages


This article is part of the sequence The Basics You Won’t Learn in the Basics aimed at eager people striving to gain a deeper understanding of programming and computer science.

When I wrote my first program, my trainer told me I merely wrote the source code. Now, I have to translate it to a language understandable by computers. We call that compilation. It happens by clicking Ctrl+F5 (In Visual Studio). And there you have it, your program is now an executable.

That’s how they initially thought me what the build process of a program is. And that is a good enough explanation for beginners. But at one point, I realized that when I click Ctrl+F5, some processes happen behind the scenes which we don’t see. Those processes we will explore in today’s article.

And did you know, that when you click Ctrl+F5, the processes used are different for different languages? Have you ever wondered  why is it harder to code in C++ than it is in C#?

Well, we won’t be able to explore the whole details of the last question. That has a lot to do with language design and the decisions being taken during the years. But we will explore the fundamental difference between those languages. That difference lies in their build process.

Continue reading

My experience with “Future Is Code”

“Future is Code” is an initiative aimed to inspire the young people of Bulgaria to start learning programming by showing them how cool it is. Professionals from the IT industry usually go to their schools from their hometowns and make a 45 minute presentation on a topic of their choice.

Last year, I have visited more than 20 schools throughout the country and led various presentations in front of varied audiences. Next week, I am starting this initiative again.

I want to share with you my experience on this journey, what problems I have faced and how I have resolved them and tell you how you can take advantage of such an opportunity.

Continue reading

Languages High and Low


This article is part of the sequence The Basics You Won’t Learn in the Basics aimed at eager people striving to gain a deeper understanding of programming and computer science.

When I started programming, I got introduced to C# and I thought it was pretty fun. As I advanced in my studies, I learned other programming languages as well. I learned JavaScript, PHP, Java.

Even though I learned to code in these languages, what I didn’t understand is why are there so many languages? What purpose did they all serve? Furthermore, I was curious where did all these languages came from? How did they come to be? What is a low-level language and why does it still exist?

The goal of this article is to try and help you find the answers for some of these questions and to further fire up your curiosity in the nature of programming languages and computers. I will walk you through the evolution of modern programming languages. Why did they come to be and what problem did they solve.

Continue reading

BulgariaEnglish