A New Way to Learn Tech Skills
If I had the resources, here's what I would build

Search for a command to run...
If I had the resources, here's what I would build

Hi JD,
thank you for this article and idea! I agree that our education system has its weaknesses.
There are some learning platforms that try to follow similar approaches. As you mentioned, Stack Overflow is doing it well (even though maybe it's not primarily a learning platform).
I also like the idea of real money as a reward. That might be difficult to set up from a business perspective. But it's a great motivator!
Best, Constantin
After a few days of using the 512GB MacBook Neo with TouchID, here are my impressions after some heavy, real-world use. I'll disclaim this review by saying that I consider myself a power user; on my m

2024 was a strange year for me that was a mix of trying new things, accomplishing the best work of my career, and stark transitions into unexplored territory. I think it's important to take a moment every once in a while to step back and look at one'...

What I've Been Up To Four Months Into Freelancing

Leaving My Job with No Plan — My New Career as a Freelancer

With a few glasses of wine in me and some nostalgia-fueled synthwave playing, I found myself reflecting on my past, and my history with computers. I got to thinking of my childhood, and more specifically, my personal history with computers. I love te...

Something has been on my mind for a little while. An idea for a large project that could revolutionize education — or at least make learning a lot more fun and engaging.
Since I was a kid I've thought the way we learn is broken. We have arbitrary exams that measure little of consequence and we forget what we've learned as soon as it's over. We are largely taught not to cooperate when completing assignments, and we are taught that looking things up or doing things the easy way is "cheating". When you grow up and enter the real world, this education doesn't prepare us for the real world. When we get jobs, what matters isn't really how hard we work, it's the results we get and how well we can solve employers' and customers' problems.
Education is a frustrating experience for many people; it's not often pleasant or fun, and so often we feel like we have to learn things that don't matter. There are so many things I studied in university that I've never had cause to bring to mind since I finished the final exam.
One thing I really like about software development as a profession is that you don't need a formal education. There's no governing body that tells you that you are or are not allowed to be a programmer. If you can sit down at a computer, read some documentation, and get code running that solves a problem for yourself or someone else then congratulations — you're a developer.
But learning to be a software developer, especially a good and well-rounded one, is hard. There are many skills one has to learn — like working in a command line, algorithms and data structures, program construction, analysis, database optimization, markup languages, user interface design, and so on. Tech is a fast-moving industry so there are always new and (ostensibly) better ways of doing things. This is exciting but sometimes frustrating. It's likely a person could burn out trying to keep up.
A better way to learn might be a community that can take some of the best parts of learning in a real educational institution, but combine that with some of the best parts of online video game worlds. Instead of plodding your way through textbooks and stressful final exams, what if a developer education were a series of smaller, but meaningful tasks that could be completed for some kind of reward?
A good model for this could be an online role-playing game. Imagine playing World of Warcraft but it makes you a kick-ass web developer. You are a "character", you choose a "class" or career path (which, of course, you could switch at any time), and you complete "quests" which might involve building web pages for other people (or maybe non-player characters or actual businesses). Maybe some of these tasks are even real-world tasks that have a bounty on them that you can earn real money for completing. What if a small business wanted a home page? They could put it up for a bounty in this game.
As you complete tasks, you gain experience points or other various rewards that give you a standard way to show off how knowledgeable you are. And you could earn and learn as quickly or as slowly as you're comfortable.
I think this "world" could have many people working towards common goals and the player/students would be encouraged to help others with their tasks and would be rewarded for doing so, maybe a bit like on Stack Overflow. Players could learn and grow together and foster friendships as they progress towards their goals and become more skilled in their chosen fields.
I don't think this system needs to have high-budget video game style graphics or elaborate fantasy stories, necessarily — but that could be appealing to some as an enhancement to this system.
Would an environment like this be a good learning environment for you? Would this be a fun and engaging way to learn by racking up experience points and "achievements" in a social game-like environment that encourages you to be awesome at JavaScript, promotes your PHP skills, and challenges you to take your CSS to the next level? Or perhaps there are already things out there a little bit like this. Let me know in the comments!
If you find this sort of content interesting, I'd love to connect with you on Twitter!.