The Learning Path
Why I created a website hosting learning paths.
Cover image by Jannes Glas on Unsplash
I created a website hosting learning paths.
I started building it because of a professional need, then I realised it could be useful to other people, too.
All resources are free as they are selected among tens of gratis videos, tutorials, books found on the web.
If that sounded useful to anybody, they could find it here: https://the-learning-path.vercel.app.
I am a self taught developer. I always was.
I know I am not the only one. I know that because of statistics:
Statistically, around 65-70% of developers considered themselves as a self-taught developer and the number is growing rapidly.
Madhur Gupta, and Sagar Kapoor. “7 Best Learning Methods for Self Taught Developers.” GeeksforGeeks, 7 July 2021, www.geeksforgeeks.org/7-best-learning-methods-for-self-taught-developers
I also know that because of personal experience. Among all the engineers I worked with, I could count many coming from rather diverse educational paths: designers, architects, philosophers, mathematicians and even a professionally trained musician who taught me how much music and coding have in common.
Both music and programming can be and are often self taught. People who are self taught are generally pretty successful as they have one of the most important traits: self motivation.
NanoDano. “Similarities Between Music and Programming.” DevDungeon, 5 July 2019, www.devdungeon.com/content/similarities-between-music-and-programming
At the start of my career as a developer, self motivation was driven by curiosity. I wanted to know everything about how software things worked and I believed I would eventually reach my goal because persons conceived those things. I was a person no less. Great reasoning.
I have to admit that was not my only drive, though. Competition played a big role too, as I couldn't stand knowing less than many of my colleagues about something I found so fascinating.
Ego issues aside, it wasn't easy for me to build a mental model of software behaviours and an understanding of engineering practices, without counting on solid fundamentals.
Free learning resources were present but scattered in the wild web, not differently than what still happens Today.
Thankfully I could always rely on several websites helping me out with tutorials and explanations. Some of them are still alive, some others tragically ceased to exist at some point in time.
Despite the challenges, I managed to find my way through. I can Today call myself a software engineer with no shame and I transitioned to roles with leadership responsibilities.
That transition comes with its own set of complications. As an example, one needs to realise their actions are no longer relevant as individual contributions while commitment around processes and collaboration become more important. This topic alone could give birth to a collection of articles but, since that has been done already and it doesn't spark joy when I think about it, I am not planning to put down any of those.
What I find compelling instead, is learning new things. What my role gives me, is the chance of helping my team to learn new things as well.
I recently tried to do exactly that, but politics got in the way. The short version of the story is I wanted to make use of some paid platform's learning paths to build a shared knowledge base in the team. That unfortunately wasn't an option.
That meant going back to my primal source of learning: free quality resources found on the web. That also meant facing again old challenges, like finding the right content among hundreds, understanding what to start from or what to progress with or figuring out how the unorganised pieces of knowledge fit together.
To try solving those issues once and for all, I decided to create The learning path, where I collected some good videos, readings, books, examples, exercises and cheatsheets I could find. All of them are free.
The resources are categorised by topic and ordered by complexity level, from basic to advanced concepts.
The paths are not a collection of everything. They represent instead an opinionated selection of items which could work nicely together.
The final aim is to provide a valid alternative to similar paid offers, which I always suggest to have a look at anyway.
The deployed website at the time of this writing is the MVP.
I am planning to enrich and refine resources collections, add more features and sections and include more paths.
If this project manages to help anyone learning something, I will see it as a success.
For the time being, I am happy as it is proving useful to me and my team.
Last but not least: a huge thanks to Salvatore Tedde, who supported me in the conception phases of the project and contributed to the website design. He too is a self taught developer and a continuous learner, so I was sure he would be interested and help me with this.