Josselin Dionisi - Freelance developer

Time, difficulty, investment: The reality of learning to code

ionicons-v5-k Josselin Dionisi Sep 26, 2023
107 reads Level: Beginner

It's back to school time, and we're off to work on a new series of articles, starting with a closely related topic... ?

Among the questions most often asked of a developer are :

  • I've got a great idea! Are you up for doing the new Facebook?
  • How much does a site cost?
  • How hard is it to code?

I'll let you make up your own mind about the first two... I'll just answer the third... ?

Getting started and learning

You see ads everywhere: "Become a developer in 3 months!" or "Learn to code and change your life!". I imagine that's a dream come true for a lot of people? However, if you're like me, you know that behind these catchy claims lies a reality that's a little more... complex?

Buying into the dream and facing reality

There are tons of short courses out there that promise the sky's the limit. You know, the ones that tell you you'll become a professional developer in just a few weeks or months.

"Yes, I was just about to sign up for a course like that. What's the big deal?"

The first thing is that these training courses tend to skim over subjects rather than go into them in depth. You learn to "do" without really understanding the "why" or the "how". It's a bit like learning how to assemble a piece of IKEA furniture without learning the basics of carpentry.

"But it works, my furniture will be assembled, won't it?"

So yes, for your own use that's fine. But for the professional world and its realities, it's a different story.

The second bug is that employers aren't fooled. Express training is not the same as solid, comprehensive training. So there's a risk of devaluation on the job market. Yes, you can create a website, but do you really know what you're doing?

Understanding for better learning

Contrary to popular belief, being a developer isn't just about knowing lines of code by heart. It's about problem-solving, creativity and knowing how to approach a question from different angles. If you master this logic, you can basically learn any programming language. It's like a toolbox: once you know how to use a screwdriver, you can pretty much take anything apart and put it back together again. I refer you to the article What is the hacker mindset? which touched on this subject too.

"Yes, but logic and all that is more important today. All I have to do is ask ChatGPT to make my algorithm in any language and then copy/paste."

Well, if you do that, you won't get very far in your development career. There's already little chance of it working properly, but on top of that your code will probably be full of unseen errors and lack many optimizations.

And why is that? Because, as I said in a previous article, AI isn't magic, and you won't understand what you're doing here either.

"Okay then, if training and AI aren't valid, how do I do it?"

Take your time

All good things in life take time, and if you don't want to miss out it's best not to rush.

Think about several things before choosing a training course:

  • Is a totally online course right for you? Do you usually need to talk to someone live and ask questions to learn better? Or are you self-taught and comfortable learning on your own?
  • Do you really want to work in the web or do you do it as a hobby? If you want to work in the industry, find out about the market. Look at the ads as if you were already a developer, and take note of the profiles and skills companies are looking for.

In short, nobody ever became a developer in 3 weeks, and nobody ever became a millionaire. If you want to achieve a goal, you need a strategy to get there, and you need to define what you do and don't want.

The web is great, but that doesn't mean it's easy, and you'll have sleepless nights like the rest of us, trying to figure out "Why do I have this damn mistake that doesn't make any sense?

Passion as the driving force

"I'm feeling pretty discouraged right now with what you're telling me..."?

I said it wasn't as simple as those who want to sell you their products say. But I didn't say it was impossible.

Programming, like any other profession, requires dedication, passion and perseverance. On the other hand, the results and sense of achievement are incomparable. When you succeed in solving the problem that kept you up all night, the sense of accomplishment is immense. It's this passion that drives developers to go the extra mile, to continually learn and adapt to technological evolutions.

Ultimately, learning to code is as much a journey as it is a destination. Every project, every mistake, every "eureka" is a step in this journey. Rather than focusing solely on the end goal, embrace the learning process, the challenges and the moments of doubt.

In conclusion, is it difficult to learn to code? Yes, it takes hard work, patience and determination. But it's also a rewarding, creative and constantly evolving field. If you have the passion, curiosity and desire to learn, the world of development will gladly open its doors to you.

Of course, if you're not the investigative type, if puzzles aren't for you and you don't like typing on a keyboard... this may not be the path for you... ?