3 ms·
My main tips: 1) Read a lot about what is out there. Reading viewpoints helps prioritize what you want to learn next. Talk to opinionated, passionate people
by mooneater 10y ago
My main tips:
1) Read a lot about what is out there. Reading viewpoints helps prioritize what you want to learn next. Talk to opinionated, passionate people and understand why they hold strong views.
2) Experiment with things well outside your comfort zone. Eg., a language that you may never get deep into, but can give you a new perspective.
3) Figure out what NOT to learn. There are so many new things and the rate is increasing. I feel I cannot afford to spend a long time learning the wrong things. So for example I focus on python instead of python+c#, postgres instead of postgres+mysql, linux instead of linux+osx. Spreading me less thin. But to do this you have to know why you choose X over Y, the reading and experimenting infom you for this.
4) Learning "technologies" is not enough imo, you need to couple that with theory to produce really powerful systems. Machine Learning, Crypto, Controls, Discrete, whatever you are interested in. You can learn this alone, but sometimes a course or two is the best way to beef up your theory.
5) I've come to think about digital systems having an "anatomy" similar to the human body. Different components are like various organs. Building complete, balanced systems requires understanding all the various types of organs. Assume you have blind spots, and seek to discover and master the organs (types of components) that are least familiar to you. You do this by inspecting other systems and seeing how they are composed and how that differs from how you compose your systems.
Very interesting to see what others say about this.
- imh 10y ago>4) Learning "technologies" is not enough imo, you need to couple that with theory to produce really powerful systems. This is HUGE. I'm able to keep up to speed and learn more ML and stats comparatively quickly because I have strong applied math foundations (from a physics and applied math background) and have learned the theory behind the stats (from lots of hard work and self study). It fits into the "work smarter, not just harder" bucket. If you can learn 1+1=2, 2+1=3, 3+1=4,... that's a ton of shit to memorize. But learning how x+1 works for all x, you only have to learn one thing (kinda). It's a rough analogy, but that's how I think of it.
- nickbail3y 10y agoI think these are all really good tips. I'd like to tack onto number 3 though: 3a) Don't try to learn everything. Being a jack of all trades and a master of none isn't the solution. Be able to write good code / thoroughly utilize the technologies and frameworks that you DO know. Then progress from there.