Maestro's Code: A Musician's Tale of Becoming a Software Developer
Tags: codenewbie, webdev, beginners, career
Published: 2023-12-19 21:09:36

## The Bard's Demise

I'm one of millions of musicians who took a critical hit in the past three years, and thankfully, the country I live in had lots of band-aids to hand out to people like me. I was able to pay the rent and eat potatoes alright. But when you feel like your skills aren't needed, all that doesn't mean anything anymore.

I'm also a gamer and music and video producer, so I loved spending a lot of time in front of a computer screen. A friend of mine suggested I try out the **Python** course on _[Codecademy](codecademy.com)_ since I'm so into tech, and my depressing mood was starting to worry my family and friends. Maybe I have a hidden talent for programming since problems can be solved in myriad different ways and it pays to be a creative thinker. Well, I could see myself as a scholar since I studied the violin at a university, but there was no math to solve, no statistics to predict, or algorithms to implement, so I thought I'm not smart enough to write complex code.

## The Sorcerer's Apprentice

I decided to give **Python** a go the next day, and like an RPG with an entangling story, the rare book of code for level one robed staff wielders was soulbound. And I was hooked.

The beginning of the course was easy. _Codecademy_'s **Python** course had just the right amount of gamification to let me learn more and more complex concepts while rewarding me with drops of serotonin for successful problem-solving. I made a promise then and there to never skip a day of coding with _codecademy_ for at least a year (I was ready to sell my soul just to feel appreciation for my craft again.) and it so happened that **Python Intermediate** and **Python Advanced** followed back to back as well as the whole web dev skill tree. The quest lines **HTML & CSS** as well as the **JavaScript** dungeon were all completed in solo speed runs, and I started to feel comfortable reading documentation, watching videos on sorting, and path-finding algorithms until I finally got my first serious mission by my master sorcerer _codecademy_.

## The Sorcerer's (Cap)stone

The quest description was fairly straightforward: Develop a program of your choice following the **Software Development Life Cycle**. In other words: Have an idea, think it through, write code, test it, own it. You can probably guess what kind of program I wrote. A text-based adventure in which the player decides what the main character of the story should do. Nothing too complicated, but I was able to use **Python**'s most important features and even combine it with something creative like storytelling. Apart from a _codecademy_ certificate (which pretty much feels like a _Steam_ achievement), I started feeling like I earned the right to call myself a developer. A little code sorcerer that could learn new spells and solve quests with their help. Friends and family still saw me as the bard I've always been and were happy but surprised about my huge interest in coding and all things tech. To them, it must have looked like a phase that, once I reach the higher levels of coding, would end.
![1st Capstone: Python Terminal Game](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/eec3ku3awiahgyrv5u2r.png)
> 1st Capstone Project: Python Terminal Game


## Bootcamp Dungeon

In the realm of self-taught heroes, one of the most dangerous places is the so-called Tutorial hell. You start learning one programming language and, halfway through, divert into another language or a related subject, and so on, until you have spent a lot of time studying but hardly any time solving real-life problems. Many enter Tutorial hell, few come back out. Some come out stronger, some come out the way they entered and quit coding altogether. I spent my fair share of time in it, and before I got lost forever, I took a giant leap and applied for a coding bootcamp at _[Neue Fische](neuefische.de)_. 

Opinions on bootcamps vary like types of potatoes. Mine is very positive because I had already spent one year on _[Codecademy](codecademy.com)_ and _[FreeCodeCamp](freecodecamp.org)_, and because I had very good teachers and a fun group of students. For three months, four coaches spent eight hours a day, five days a week teaching us the ropes of **web development** in a pedagogically smart order, from **command line operations** to **web app user authentication**. The biggest questions online courses couldn't answer were answered by experienced and helpful teachers, and I met my first coder friends. Learning new technologies is, without a doubt, immensely important, but you can only truly understand them if you're able to explain them to others.

## Legendary Item: Web App

Remember the text-based adventure I wrote in **Python** a year before? It felt like the memory of a childhood friend. As a graduation project, each student taking part in the bootcamp had to work on and finish a huge capstone project, which had to be a **web application**. Using **JavaScript** with the **React** Library inside _[Vercel](vercel.com)_'s **Next** framework and persistence through a **MongoDB** database, each of us code sorcerers developed and deployed a fully tested **web application** in only one month! One and a half years after starting my first online course, I crafted my first legendary web app, and even better: I knew exactly what I was doing! I became a code wizard!
![2nd Capstone Project: inSpot](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xpacjr5fhwhyl70pxoj0.png)
> 2nd Capstone Project: inSpot


## The Book of Java

Of course, like any good "bard turned wizard", I had self-doubts. The impostor syndrome is a widely known debuff among humans and it hits especially hard when you're a self-taught programmer. So I decided to apply for another bootcamp. This time to embark on the quest line: **Java** Developer. 

**Java** is old. 
**Java** is everywhere.
**Java** is powerful! 

The three rules of the **Java** club (which I made up) taught me to respect this technology. Not everything is as easy to read and understand as **Python**. You don't wear sandals when climbing a dangerous mountain. Strong typing in **Java** and other strict languages are the hiking boots of programming. They keep your program from twisting its ankle. Besides, the **Java** bootcamp showed me how much responsibility lies on the backend of a program. An app can be all shiny on the frontend but rotten on the backend which will make it the perfect prey for hackers. Another capstone project later, this time a [real-time location-based multiplayer-game](https://github.com/toshydev/netrunner), I was ready. I finished the full stack Wizard quest line and was ready for the open world experience.

![3rd Capstone Project: NetWalker](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/x5cwlepo4w1t328x0100.png)
> 3rd Capstone Project: NetWalker


## Wizard Arena

Of course, I wasn't the only one with the ambitious idea of becoming a software developer. I had to compete with thousands of Computer Science Graduates, Child Prodigy Coders, and other hacker wizards on the IT job market. I prepared at least 50 application letters for different companies and got rejected several times a day. I just needed one recruiter to believe in me so I could show my greatest spells. Thirty negative replies later, I got my first invitations to interviews and I was so ready. A few hours of live coding, and I'm sure nobody even suspected that I lived a very different life. A dream came true!

## The Bard's Return

It has been almost two months now. Working in a corporate setting with a team of code wizards is nothing like coding alone for online courses. These are real-world problems that require real-world solutions, which cost huge amounts of money, but I'm not worried. My spell book is prepared, and I'm constantly adding new spells. After all this time, it feels even better now to know that I'm still a bard, and whenever I want to, I can make music. I just don't need to live off it.

Cheers, _Toshy the Wizard_


![Wizard writing code](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/h6xhkfghfjkwxz0hk9gk.jpg)