Discovering the World of Programming: Top 3 Insights from an Amateur.
Tags: beginners
Published: 2023-01-29 00:39:32


Embarking on the programming journey as a beginner felt like entering a dark and crowded club, with the blaring sound of code snippets and technical jargon overwhelming my senses. But as I navigated the neon-lit lines of code and the flurry of activity, I began to make sense of my surroundings. The once-faint whispers change into a symphony of comprehension, and I found my footing in this exciting and vibrant new world. 

As a novice, I am like a newborn calf unsurely trying to stand beside its mother, but with time and determination, I've learned to navigate this thrilling new world. I've discovered hidden gems, and I've come to understand the few underlying principles. Today, I want to share some lessons with you.

---

## It's not all about coding but mostly about breaking the problem into manageable pieces.

From my first timid steps in HTML and CSS to building my first full-stack application, my success has always depended on how I dismantled the monstrous idea into smaller chunks I could tackle. 

I still remember the frustration of my first few weeks as I struggled with the navigation bar of the website I was building. The clicking of my black Toshiba Keyboard in my ears and the tension building in my fingers as I struggled to align the elements just right. And the time I pulled my beard out in frustration, as I couldn't get puppeteer to work with AWS ECS, the bitter taste of defeat heavy on my tongue and the stinging sensation on my chin. 

These days, I jot down everything my project needs and break the problems I need to solve into smaller pieces, like a master chef breaking down a side of beef. Each piece is carefully examined and dissected until the solution becomes clear. If I fail, it's simply an opportunity to break it down further or a unique chance to learn something new. 

---

## Trying to learn everything is an impossible task that overwhelms and is not fruitful. 

When I think I have mastered a subject, something new comes into my view: a summit I have yet to conquer. The only thing I have truly learned is HTML... and even that's debatable. My cat managed to break my website just by sitting on the keyboard.

Programming is like navigating a labyrinth, with every turn revealing a new challenge. But through it all, I've realized that it's not about mastering every nuance and detail. It's about learning enough to solve the problem and build the project. 

Programming languages are tools we use to make our lives easier by solving problems. And that's it, nothing more, nothing less. It's a tool like any other. I learn enough to do my work, and I move on. 

---

## Typing fast does not make you a 10X programmer. 

As someone who frantically increased my typing speed from 50 to 80 words per minute, I can attest that my fingers were moving in a blur, and my mind was racing to keep up.  

I have explored all the hip ways to increase my speed, like using VIM, different VS Code extensions, different editors, IDEs, and more. It was like a treasure hunt, looking for that elusive shortcut to give me an edge. But as it turns out, shortcuts were like shiny objects that caught my eye, but in the end, they didn't help me become faster at my job. 

I was reaching for the summit but falling short. I was fast, but my work was unrefined, and my understanding of the underlying principles was lacking. I've learned that the knowledge of the fundamental concepts has made me a more efficient programmer than the flashy tools and shortcuts. 

---

It has been my humbling experience that the essence of programming lies not in the technologies we use but in the solutions we build.

With that said, don't hesitate to explore and experiment with different typing methods, code editors, and extensions. When starting, every bit of motivation helps to keep you going. I've spent countless hours customizing my VS Code editor to my liking. The process is like decorating your home, with each article filling the void with warmth and personality. The customization didn't make me a better programmer, but it taught me how to sit in front of a computer all day and make my workspace inviting.  

It's also important to remember that if you don't enjoy the tools that come with the job, you may want to reevaluate if programming is the right profession for you. It's like a chef not enjoying their knives. It's a fundamental part of the career.

I still don't know what I am doing. I mostly feel like a deer navigating a busy highway, every bright headlight stopping me in my tracks. Lastly, I want to echo comedian Bill Burr's sentiment here: "I am an idiot, don't listen to me."