Skip to main content

The Self-Taught Developer's Dilemma: Overcoming Knowledge Gaps

The Self-Taught Developer's Dilemma: Overcoming Knowledge Gaps

The Self-Taught Developer's Dilemma: Overcoming Knowledge Gaps


As most of you know, I'm a self-taught developer. I always mention this- not to brag, but rather as a disclaimer, and maybe, just maybe... to earn a little bit of sympathy for my shortcomings. Driven by curiosity, I've acquired most of my knowledge through online courses, tutorials, articles, and a lot of trial and error. Whenever I delve into a subject, I take a hands-on approach: breaking it down into its smallest parts, building from scratch, and trying to learn as much as I can about it. However, I recently had a humbling experience that made me appreciate the importance of formal, or at least structured, education.

I was watching a video where Mark Zuckerberg discussed their LLaMA model, and at some point he mentioned 4.5 billion parameters. I know what parameters are, so I had an idea what he meant, but much of it sounded like Greek to me. Like, I can understand say, 100 or even a thousand parameters, but how does it then get to a billion? Do they count or just make educated guesses? Determined to understand, I did some research and soon realized that much of it was familiar to me, yet felt foreign due to my learning approach and development style.

Being self-taught means my focus is usually outcome-driven; I care more about whether something works rather than the intricacies of testing and performance. I may be downplaying how thorough I am here, but I'm sure you get the point.

Many people boast about learning their skills on "the streets", through "the school of hard knocks". While that’s admirable, formal education teaches those little things that might seem useless but are foundational. For instance, I've seen many memes which mock the education system for teaching about the anatomy of a locust, but this seemingly trivial knowledge lays the groundwork for more advanced learning.

A teacher drawing a labelled diagram of a locust


Listening to other programmers, I often hear them throw around terms and phrases that make me wonder where they learnt that stuff... like I skipped a day at school or something. Its funny how the stuff you don't know, always sounds cooler and more advanced when someone else says it. So whenever this happens, it often leads me to take online courses or tutorials to bridge gaps in my knowledge.

While being self-taught provides adaptability and resourcefulness, formal education offers essential foundational concepts. Ironically, even as a self-taught developer, I often eventually reach the same conclusions as those with formal education—just through a more circuitous and less efficient path. So why not just take the course? It's faster... plus it helps me write better code and meet industry standards. At some point, I used to give my variables names like 'guld' instead of 'getUserLoginDetails', and since I don't have an elephant's memory, it always backfired. Imagine staring at my code 6 months later and asking myself, "What does 'guld' even mean?" Soon, my team will be growing, and I guarantee that they'll be grateful for these little efforts I've made to learn.

This experience has given me a newfound appreciation for the value of formal education in programming and the importance of continuous learning. I've made a conscious effort to streamline my knowledge, and it's paid off. I read extensively, and thanks to these new AI chatbots, I've been able to accelerate my learning journey. Now certified as a full-stack developer, I've seen my confidence grow with each new project. But what's even more surprising is – I'm now exploring this whole deep learning ish, something that once seemed daunting and inaccessible.

As I embark on my most ambitious endeavor yet – building the world's first true AGI – I'm acutely aware that this journey will push the boundaries of what's currently possible. The road ahead will be challenging, but I'm eager to take on the complexities of creating a true cognitive companion. Let's explore the future of AI together!

Comments

Popular posts from this blog

Hip hop and RnB songs to apologize to your partner

Love is a beautiful thing, but it often goes wrong. This often leads to pain, suffering and sorrow.  Being imperfect beings, hearts tend to get broken all the time regardless how hard we may try to avoid it.  The heartbreak is often inadvertent but at times we find ourselves in the wrong. An oversight, a word unsaid or even a lapse in our judgement can cause our loved ones harm. This doesn't always have to be the end though. Oftentimes, relationships can be mended by simply uttering three simple words: "I AM SORRY". This article is a collection of some of my favourite 'I'm sorry' songs. I hope you'll enjoy these apology songs, but more importantly, I hope you will get a few quotables and some wisdom nuggets from them.  The best apology however, is to change behaviour (got that from a Jay Z interview) so as you apologize, please remember that it was your actions that hurt them. The best apology is one which involves you not repeating those same mistakes aga...

How to easily create background notifications in Sketchware(original)

How to easily create background notifications in Sketchware(original) One of the keys to building a successful app is to find mechanisms that will keep your users engaged. You can do this by using background notifications. This tutorial will show you how to do that in Sketchware. We will cover: 1. How to create notifications in Sketchware 2. How to show these notifications even when the app is closed.

Php date: How to get the first and last day of the week

In this tutorial, I'll show you how to get the first and last day of the week in php. By default, in PHP the week runs from Monday to Sunday. However we'll cover two methods to get the first and last day for both those who consider Sunday or Monday as their first day of the week. We will be using 2 functions to achieve this: date() strtotime() We will use a combination of these two functions and store the result in a variable.  How to get the first day of the week If you want to get Sunday, use this method: $firstday = date('l Y-m-d', strtotime("sunday -1 week")); echo $firstday; If you want to get the date for Monday, this current week, use this method: $monday = date('l Y-m-d', strtotime("monday -1 week ")); echo $monday; How to get the last day of the week The following code will give you Saturday as the last day of the current week. $lastday = date('l Y-m-d', strtotime("saturday 0 week")); echo $last...