Don’t learn a programming language, solve a problem instead
A short memoir of a wasted youth.
For years I studied programming languages to build better investment tools. That piled the work of programming on top of building forecasting and risk management models.
What actually happened is that I didn’t spend as much time on the real problems I needed to solve.
I focused on my ignorance about algorithms and programming languages. So I spent hours every week for years learning fundamental aspects of computer science. And I didn’t dedicate so much time to applying that knowledge to make things better in the real world.
Meanwhile one of my friends built a complete product on top of Microsoft Office. It stored data in Access, analyzed it in Excel, and spit out reports in Word.
When he sold his creation to a big company I was happy for him. And I was also incredibly jealous. I knew twice as much about programming and yet couldn’t ship a product that solved a real problem.
The thing is that the details of how to build something are worthless compared to reasons why you need to build something. I spent my time learning how to build things. Whereas my friend spent his time solving an actual problem.
He started chipping away at it with very simple tools until he arrived at a complete solution. Along the way he taught himself to glue other tools together. It still took an incredible amount of work, but he managed with limited resources.
The magic is in understanding why
When I worked on a tech team at a startup, I finally grasped the lessons in the different ways my friend and I approached programming.
The big breakthroughs for the team were never about how to do something in code. The breakthroughs were in discovering exactly what we had to do and understanding why.
There’s nothing more heartbreaking on the creative journey than investing too much in things that don’t need to exist.
If you want to create something useful then it’s crucial that you learn to identify the reason why first. You begin by asking good questions about who will use something and how it will improve their lives.
Focusing on real solutions accelerates learning
Your focus on real solutions will increase your retention. Our brains prioritize information to store and disregard the vast majority. It’s useful to save calories, but it works against learning.
By starting with the context of why you‘re learning, you’re giving your mind an immediate trigger for prioritizing new information.
When it comes to creative pursuits like programming, creating something useful will teach you the fastest. And this doesn’t require that you learn a programming language.
Do this instead of learning a programming language
Find a real problem.
Write down exactly the way the problem is now and how it should be instead with as much detail as possible. For example, if the way you have the problem is always with data stored in Microsoft Office file formats then be specific about that. This has everything to do with what solutions will work best.
When you have a great description of the problem and how you want to solve it you’re halfway to a solution.
Now you should work as much as possible on clarifying this problem. Then move on to the ways you could create a solution.
If you need a programming language to do this then you’re not going to be a very good programmer. So keep building your skills in describing problems and solutions.
When you have a great description of your problem and exactly what you want then learning a programming language to do it will be easy.
Related Stories from DDI:
About a month back, while I was sitting at a café and working on developing a website for a client, I found this woman…www.datadriveninvestor.com
Editor’s Disclosure: Some of the links you click on are affiliate links. If you find something useful and make a purchase, we will earn some big bucks. No, I’m not talking about upsizing my fries kind of big. I’m talking about extra pepperoni on a large pizza kind of big. Thank you for your continued support, we will continue to work hard for the p̶e̶p̶p̶e̶r̶o̶n̶i̶ publication.