Skip to main content

Learning Programming in 2023

Learning Programming in 2023



Earlier this year, I finished the equivalent of high school in my country (Brazil). Admittedly, I felt lost. "Where I will go" and "What I will do" were the types of questions that stormed my head through days, which turned into weeks and then months. Not that I had never asked myself such a question before; rather, it's just that I had never really answered it.

The mental pressure to conform to a new life, a life that requires a level of autonomy that I had never experienced before, coupled with a heavy dosage of self-criticism, was exhausting and nearly led to depression.  In spite of this, I now realize how fortunate I was to have had this time in my life, as many people in my nation and over the world lack it. Many drop out of school to work on the streets as early as 10 years old because their family will starve if they don't. Many others graduate in fields they detest because they never saw or were never given another option (by themselves, their families, or society at large).
 
I'm poor and live in a country with some of the worst quality of life indexes in the world, and yet I always have food on the plate, a roof over my head, and much-appreciated love thanks to the colossal efforts of my parents.  Despite the fact that the pandemic lockdown significantly impacted the majority of my high school years (they began in 2020), I attended one of the best public education institutions in the nation, IFMG, and made there some of the smartest, and most supportive friends and collegues I know. The key takeaway here is that we must not squander the opportunities that are given to us and toss aside all the help we've received this far. Most of the time, we have the "cheese and the knife" in our hands, as the saying in my country goes, we just need attitude. 




 
In trying to answer my questions, one of the ideas that sprouted in my head was to learn programming on the internet. Computers have been part of my life since I was a little kid, and most of my days have been in constant contact with them—more than what some might consider healthy even—so it made sense to try if I could turn that into my career. The availability of several free resources was also a major incentive, since I do not have the means to invest carelessly in a degree.
 
I already had some prior experience with programming. Back in 2020, I had an informatics class that briefly presented to us programming in C (very basic stuff made in Code::Blocks, but I felt something positive about it). After I graduated, I bought some Udemy courses with the money I managed to save until that moment (each costing no more than 6 dollars by today's currency exchange rates), and some of them were related to programming. I never used most of them (lesson here: don't let big flashy promotions cloud your judgment), but one, regarding programming logic, I tapped into with varying degrees of commitment throughout the year. Three months ago, I took it seriously and finished it. 

I started learning C++ as my first official language at the beginning of this month, mostly with the goal of using it to learn computer science theory, because I enjoyed my previous studies and felt motivated to learn more. Thus far, I'm rather happy with my decision. Yes, it's difficult, demanding, and can be pretty stressful, but the most essential lesson I've learned from it—and one I hope you will too—is that, if you can do it, taking your time is perfectly acceptable. Try new things, get experience, decide what works for you, and then follow your gut. Who knows what the future holds for me—I could end up not working with programming, but no matter what happens, every tiny step and mistake shapes us into the better people we are meant to be.

The Stache is Out. 

Comments

Popular posts from this blog

What is Programming?

 What is Programming? "Programming" has been around for nearly a century and a half, not a few years, and it has become one of the key aspects of our everyday lives in the past two decades. So, what is it anyway? What's my current understanding of this? Let's define it and continue our journey from here.   Programming  is  the process of writing, testing, and maintaining computer programs.  Those who work with computer programs are called  programmers .   A  computer program  can be defined as a  computational algorithm  executed by a computer and designed to accomplish a specific goal .    Defining " computational algorithm " First, let's build a brief understanding of what an algorithm is.  An  algorithm  is  any set of sequential, unambiguous, and precise instructions  designed to   accomplish a specific goal .    For example, an oversimplified algorithm for posting on Instagram:   1 - Pick up your phone; 2 - Enter your password; 3 - Cl

Definitions Are Important (really)

 Definitions Are Important (really)   Some time ago, I got myself wanting to read economics books. I remember that I picked up "The Constituition of Liberty" by Friedrich Hayek—worry not, your death by boredom or scientific jargon overflow is beyond the scope of this post. One of the things that really stuck with me was on the very first pages, where Hayek identifies a harmful problem surrounding the subject matter of the book: most people have no concrete grasp of what "liberty" means . He spent roughly 10 pages of his book setting up what he meant by the term and comparing his definition with the many others that are out there.   "And why is this important?" Everyone has seen this before: two people seemingly arguing about the same subject, but in reality, their perceptions of it are so dissimilar that the entire conversation is pointless. Definitions are crucial because,  without a shared understanding of the meaning of the terms we employ, communic