The life of a hacker is often a lonely journey down a winding road of square pegs and round holes. The problems we face lack the elegant solutions that captivate academia. Our solutions are met with amusement, skepticism and back handed compliments.
“Sure you made the square peg fit this time but will it work in sub-freezing temperatures?”
“It works. But will it scale?”
Hell, we’re even taught to ask ourselves these questions to battle test our own solutions. That’s why you’ll often hear a hacker present a solution along with a list of caveats.
It might sound like I’m suggesting we repaint the lines on the playing field to encourage more hacking. I think that would be a good thing. But hackers are a resilient crowd that will continue to produce solutions with little to no fanfare. Discovery is the thing we’ve learned to crave more than anything else.
One problem is that we’ve created an environment that makes hacking less approachable by not treating it as a formal discipline in the academic world.
Sure there are electives tangentially related such as shop class. But those classes don’t present you with a flawed system and ask you to exploit those flaws in a positive way. And you’re never given a system designed for one environment and asked to modify it to function in another environment.
The arts just teach us to think creatively. Applying that creativity is something we have to figure out on our own.
Doing what hackers do, we’ve created a wide array of our own solutions to the learning problem. We’ve systematically used the web as a platform to share ideas.
Today there are code schools, millions of blogs, social media, better publishing platforms, Stack Overflow, Udemy, Twitch, Codepen, better documentation and many other tools that deserve props. It is far easier to learn new skills today than at any point in our history.
We haven’t yet solved the problem. There will always be opportunities to approach learning from a new angle. Each new angle will have its own advantages and disadvantages.
The major disadvantage I see with most of today’s solutions is the lack of personalization. Sure there are code schools built to exploit the power of a specific framework like Rails or React. But students enter these schools each with their own unique skill trees as context. This forces schools to spend a majority of their programs building everyone up to a common foundation before getting to the interesting bits.
What if we could create a learning tool that skips the bulky foundational training and jumps immediately to the things people actually want to learn? Why not? Technology can do virtually anything. It’s clay waiting to be shaped as we see fit.
Here is one idea for such a tool. It’s probably not a new idea, few are. But maybe I’ve got a unique angle.
To get started, imagine finding 10 people who have very similar skill trees to your own and are all interested in acquiring a new skill that also appeals to you. You’ll all have a common foundation and are likely to approach the new skill in a similar way. You’ll also likely run into the same problems as you learn.
Next you’ll all need a tool to regularly communicate your road blocks and discoveries with the group. You’ll also want to react to what other members post.
Slack wont work. It is too open ended. Get 10 hackers in a room together and try to keep them focused on a single task. It’s impossible. Conversations take tangents and those conversations take tangents. This inevitably devolves into debate about code editors.
What the team really needs is a habit building recurring task to maintain the focus and push members to improve. It pains me to say this because I hate standup meetings…but a standup-like daily task could do the trick.
For 30 consecutive days the group has an asynchronous show and tell session focused on the new skill. Everyone answers 3 questions:
- What did I accomplish? Screenshots and gists should be encouraged.
- What did I discover?
- What frustrates me?
That’s it. 🙌
No teacher or rigid curriculum. Just a group of people collaboratively learning a new skill for 30 days. I’d personally be very interested in joining such a group if it were easier to find people with a matching skill tree.
Would you be interested in joining such a group? I’d love to hear your thoughts. If enough people are interested, it wouldn’t be hard to put together a simple v1 app to see if it works.