Ask HN: How do you manage self-study?
Be it theoretical knowledge about ML, CS, mechanics, math topics. Or lack of experience e.g in some algorithms I need to understand, control problems, programming lanuages.
And I really struggle to organize a propper study schedule. What should I do next? Should I continue learning this one programming language? Continue reading this ML book? Try to set up and solve some control problems? For each topic I would like to learn, I already have the right material (books, problems to solve, etc.), so at least this is not a problem.
Often I am so overwhelmed that I just watch stuff on youtube.
I wish I had a tool or found a methodology to a) stay focused on the things I want to learn and b) to somehow track my progress.
Are there any tools or methodologies that you can recommend? Please don't tell me "just use pen & paper", I tried and I would like something more interactive.
228 comments
[ 2.9 ms ] story [ 318 ms ] threadI've been through various apps and approaches, and even tried to write some tools myself. So far I have been unsuccessful in finding the right abstractions and solution to solve the problem. Everything I've tried ran into edge cases it couldn't handle. I always came back to listing goals and daily schedules in raw text files, sometimes using org-mode.
One approach that has worked okay-ish for me is to have a hierarchy of personal OKRs. Quarterly -> Monthly -> Weekly. I found anything longer than quarterly to not be very useful - life changes too quickly. Even quarterly may be too much. You create these as-you-go, e.g. each Sunday you review your past week and create OKRs for the next week, possibly adjusting some of your monthly goals. Each day is then managed with a simple TODO list and you count tasks towards your weekly OKRs. At the end of each period (day, week, month) you have a review.
This approach still has a lot of shortcomings (not being flexible enough, not incorporating habits, some things are difficult to measure and can't be expressed as OKRs, etc) and I've tried several other things I could talk about, but the time period in which I used this approach was one of the more productive ones.
Regardless of the technique, one thing I've come to realize is that people tend to spend not enough time on "meta" - figuring out what to spend time on. If you think about it, spending 1-2 full days a month making sure that you are working on the right things aligned with your long-term goals is reasonable, but very few people spend this amount of time (me included). Instead, we tend to keep ourselves busy with the micro - tasks right in front of us.
Journaling helps document progress and provides notes that you can transcribe to a spaced repetition system (i.e. flashcards) for long term retention.
Self-compassion is key for picking yourself up after you feel overwhelmed by a topic and quit for the day, which will happen. You have to not be so hard on yourself and understand that there will be good days and bad so that you can build the long term stamina needed to see the project through.
Having something to prove (i.e. I'm a business guy but I can learn coding too; I know I'm smart enough to score high on the GMAT/LSAT whatever and get into the school of my dreams, etc etc) is often what motivates me the most. It gives you that "why" that you need to keep yourself focused on finishing in the face of so many distractions until the project is done.
Once I pick something to work on I have no problem staying motivated or sticking with it. I've also never felt bad about myself running into roadblocks. My problem is that there are too many interesting things to work on, I have a hard time picking from them, leading to FOMA for all the other things I can't pick. What I'm looking for is not so much a way to stick with a task, but rather a system to help me "manage" my life, deciding which of 1,000 potential thing has the highest payoff, and how to balance them.
Circle of competence (read about it on wiki as well):
Short-term
What job can you be hired for an hold for a year and make the most money? If you forced yourself to make money doing one job and holding onto that job for at least one year, what would you do? What skills does that entail? If you're not sure, go network and interview. What gigs can you get right now and get folks to pay you - whether you advertise on Quora, Facebook, call your friends, family, neighbors, etc.? What skills does that entail? What do people ask you to do more than they ask others to do? That's what they think your circle of competence is. They're part of the market. The market will value your competence whether you like it or not.
Long-term
What do you like doing that is a marketable skill? What do you spend your time doing? You'll get better at something you like doing and keep doing, especially if that skill is in demand and others are not as devoted to it or as interested in it. The things you do which you like doing and spend a lot of time doing - as long as you make sure you keep improving - will become part of your circle of competence.
I have learned more about physics than in my whole life before, when I took the hobby project of recreating the numerical simulation of a nuclear explosion. It was immensely satisfying.
Or perhaps (anticipating a possible answer) How do you apportion tickets such that they represent things that can be called 'Done'?
My problem is a little different that even when I do it... it's on my own, late at night, I'm tired and frustrated that I'm not learning at the pace I want to.
I've sort of settled that self learning for me is just going to be a mix of hacking things out clumsily and watching some videos before bed, and maybe maybe some lucky times where I have free time (rare with a family with kids) and some bits of it will stick, others won't, and I'll probably watch it again later and that's ok.
In short rather than sweat the outcomes too much and get frustrated and not do the thing, I just do the things and frankly that usually results in better outcomes long term.
Granted... I'm still working on all of this ;)
Here are some things I try to keep in mind as I try to learn new things:
* Get enough sleep and nutrition. If you're tired/hungry you're going to feel overwhelmed faster
* Don't rely on motivation, instead rely on discipline. Motivation is great for a burst of energy, but it will eventually leave you. Discipline, on the other hand, is what will make you start and finish that book / online course, etc.
* Track your progress in whatever way is best suited to you. This could be as simple as a check on a calendar or using an app. Personally I like the Jiffy and Habits app on the Android store. Seeing progress helps with both motivation and discipline.
* Learn one thing at a time. It's tempting to spread yourself thin, but sticking to one thing is best.
* Give yourself more time than you think you'll need to learn. In a classroom setting you can raise your hand and ask an expert a question which they can quickly clear up for you. When you're doing self-study you'll find that you may ask the wrong question, interpret things wrong, go down a Google rabbit hole trying to understand related topics, dig through forum answers which may not quite answer your question, and leave you with even more questions.
* Figure out your learning method. Maybe it's video, maybe it's a book. Your preferred learning method may change over time and it may change by topic. Don't be afraid to stop one method and pick up with a new one, or change midway through. For example, when I'm learning a new language I find video courses helpful to get me started, but then once I'm running and past the basics, I find text content easier to digest.
* Personally I get frustrated when learning new things when someone decides to coin a new jargon term. For example a little while back I ran into the term "upsert" to refer to an "update or insert" process. The text I was reading used it like I was supposed to know what it was, but I had never run into it before. These things frustrate me and usually make me feel like I'm way behind in basic knowledge and tend to kill both motivation and discipline. Why not just the extended-term, especially in a course designed for beginners? It causes a weird mental block for me. My solution is to just say "Fuck you, but fine. I accept this as it is". It's a little mental prayer than helps me move past the feeling.
For example, you say "Learn one thing at a time" - Sure, but how do you pick that one thing when there are 1,000 things on your list that all seem equally useful and interesting? What I am looking for is a proper system for picking that one thing, not using my gut feeling.
Yes to get into a job you'll need specific skills and certificates and there you quickly deepen your knowledge as needed on the topic(s) you neer. But once you're in it you'll shine by having many varied skills. Being the one office worker with excel skills, or the one programmer able to tell a nice narrative, or the one c programmer that understands web apps, or... - you'll stand out.
So my suggestion would be to let your passion drive you. Pick up any topic that seems interesting right now and throw yourself into it. And then the next the next day.
Remember that you can't learn _everything_ at once. You have to choose a focus. That could be a tool you want to exist, a hero you want to emulate, or a problem you want to solve. There's a section in Mastering Software Technique that discusses this: https://software-technique.com/ (it is a book, but one that I highly recommend for people wanting to learn software development better). Ultimately, that focus can shift over time as needed, and the most important thing about it is that it motivates you.
For me, I mostly manage self-study via projects. There are various things I'd like to build. Lately, I've been using Nim to build various tools I'd like to have, which has involved learning about different facets of Nim, and it's libraries.
For me, if what I want to learn is less concrete, having a personal wiki also helps. I currently use VimWiki at work to track what I need to write down, but anything that makes it easy to link between articles, and doesn't put too much of an editing barrier up is good.
One of the biggest practical lessons I learned after leaving college is that most of the things I learned in college are useless to me now. The philosophical lesson was that study plans and syllabi are useful, but only as a list of things you might need to know...a way of knowing what you don't know (which is very important!). But as a way of determining what you learn, you're just going to waste your time. Let your path in front of you determine which of those things you don't know is the thing you need to learn.
My educational background is Supply Chain Management. My career path forked within my first professional job as a supply chain analyst due to the simple constraint that Excel at the time wouldn't let me systematically manage inventory settings for more than 65k unique inventory SKUs. That is how I ended up learning R and SQL...my first programming languages in a long list to come. Now I manage radiofrequency sprectrum analytics for a major cellular network provider, and I algotrade commodity futures on the side. Getting from there to here was a long path of letting my current needs determine what I needed to learn.
Additionally, perhaps anecdotally, concepts that you learn have much better staying power in your memory when you have an actual need to learn them.
Or you could have followed the syllabus and worked there immediately after finishing university?
If what you want to be narrowly fits into a single definition, and that syllabus is precisely formulated to get you there, and you are 100% certain that you will never change paths in life, then sure, maybe following the syllabus is the right way for you to self study. My experience, however, is that people that like learning things rarely stick to the straight line.
Totally agree there!! A very important point to take away.
1. https://smile.amazon.com/dp/B07K6MF8MD/ref=cm_sw_r_cp_awdb_t...
Example: I need to learn HTML, JavaScript and maybe Node.js for upcoming project. I couldn't make myself open the books for more than 15 minutes but the other day I came up with a fun project that requires these and now I can’t wait to learn this stuff.
Also, take time to consider that the things you know you don’t know are often more valuable than what you do actually know. By that I mean that your awareness of your limitations will broaden your critical thinking skills. Nassim Taleb’s concept of an anti library is tangentially related: https://fs.blog/2013/06/the-antilibrary/
The goal post will always be moving. You’ll never be finished, and trying to create a complete body of knowledge will only deepen your anxiety.
I over engineered everything - I have a CI/CD pipeline for a wordpress website that I really do not need but it meant that I now know how to do it.
Not only that I force myself once a week to write about what I’ve learned that week for my development for my blog that nobody really know exists. But it keeps me accountable for having to continuously learn and improve.
I’m currently setting up my website in various regions then knocking them out to see how I can make sure everything stays online whilst also piping all my server logs to a logging platform.
Use this to turn your problem around. Try making a video for someone just like you. You already know what a good video looks like because you've watched a ton of them.
If your goal is to make a good tutorial video, you can take those play problems without any real world application and turn them into content. That way your problem becomes "teach xyz in 15 min on youtube" instead of "master xyz by myself".
Teaching others is often said to be the best way to learn something yourself.
As you publish and get feedback, you can lean on your viewers to figure out what to build next. Eventually you'll be an expert in your chosen domain and have a following of people and have great SEO if you want to start looking for work.
Note: I haven't done this myself, but I wish I had, and obviously youtube is filled with people who are doing this about every topic under the sun. This is my plan for when I'm done with "work".
Youtube is an amazing resource but it's also an ocean of incompetence and phony expertise by people doing exactly what you prescribe. Just be careful not to contribute to the ever expanding circle jerk of self congratulatory mediocrity. No one wants that.
I don't know if there's a name for this phenomenon, but lots of qualified and talented will refrain from showing off their less-than-perfect work, because they know it's not perfect. I understand the impulse, and it's why I haven't published over the years. Only recently have I realized that publishing imperfect things is way better than not publishing anything at all, both for yourself and for the community as a whole.
Even if you can only raise the bar a little bit from what currently exists, that's a worthwhile effort.
This way the consumer knows where the limitations are and you possibly create an emotional connection.
1. maybe, you push yourself too hard to self-improve and learn. You “should” or “must” learn ML, maths. Such forcing can lead to frustration, low self-esteem, procrastination. Reflect, if it is the case and you can address by being more relaxed, CBT techniques like saying to yourself “I absolutely do not have to work through this maths topic today, but I choose to do it, because I want to be able to ...”
2. You cannot decide what to focus on, everything is cool and important, and you do not want to be wrong in your choice. You can address this problem with a short week long dives into different topics, and collecting more personal experience to make decision. Or just accept the fact of uncertainty, just pick with your heart, and enjoy the ride. Your current struggles to choose may be of zero importance to yourself in five years.
3. You cannot stick to a single topic. It might be ADHD, or you are passionate about the result, think mostly about how great it will be to work as a top ML researcher, instead of focusing on the process. Make your study engaging - emotionally and mentally. In my case, I become sleepy in 15 minutes when reading some maths textbook, but I feel much more alive and engaged when I solve problems in the book, or when I read a book with a practical goal in mind. Invest in loving the process of study.
Don't take this the wrong way, I often exclaim this. You are quite possibly in the majority and I'm the odd one.
To me it has always seemed inherently clear that the way to approach life is to do something if you enjoy it. If you stop enjoying it then do something else. I will naturally need a break from doing something after a while (hours, days, weeks), and so I'll put it down and pickup something else.
As a recent article on HN mentioned, "enthusiasm is worth 25 IQ points."
When it comes to self-guided activities such as this, there has never been a "should" or "best" for me. I just follow what I enjoy, perhaps guided secondarily by what may be useful. (Actually, I enjoy things that are useful, so perhaps that intertwines these concepts for me). I suspect I didn't thrive at university for this reason, while in the real world I know a number of people who would call me an overachiever.
PS. I have a few friends with some degree of ADHD. These friends may often feel overwhelmed by a large number of choices or tasks, to the point of inaction. I'm not saying this applies to you, but I just thought it was worth mentioning.
Are you wondering how to break this cycle of content consumption? Do you need a break from the hedonistic treadmill of social media?
Perhaps we could come up with a trail of breadcrumbs that touches on decent YT vids. By leaving carefully coded comments. warms to idea That would leave the trail in YT itself which would self heal if multiply pointered properly, ie each point has a link forwards, backwards and to, perhaps a hub to use in the event of a bigger outage.
The above might be far more fun to deploy than a search engine or an old school WAIS/Gopher. After a while the host would cotton on and decide to either encourage or thwart. Game on!
sips more wine OK so who fancies playing stenography style games with YT comments to generate guided courses using YT vids?
Practicing a musical instrument, falling while snowboarding, getting up early to be on the mountain for the sunrise.
The original poster is asking for ideas to help build enough discipline to power through the tough spots of a learning curve to get to where the proficiency pays off in enjoyment or other benefits.
We have so many easy diversions, that it's easy to train one's self to not do hard things.
I can study/practice/work for a future benefit, or I can play a video game (or browse hn) for fun now!
Training yourself to do hard things is harder. Maintaining a vision of the goal, getting satisfaction from expending effort, having empathy for your future self, denying yourself of immediate distractions/pleasures can each play a role.
This is not fun?
C D E E D C D E C
Practicing a musical instrument is not fun. Playing a musical instrument is fun. Practicing is mostly repeating scales and other patterns.
If you can enjoy that, you can enjoy it the whole way through. If you see it as a gauntlet of pain you have to cross before you get to the good stuff, you won’t get there.
Perhaps there are different kinds of 'enjoyment'. And perhaps I'm personally willing to accept some immediate suffering because I know I'm pursuing a greater enjoyment.
I'm certainly not advocating for (constantly) pursuing in-the-moment unbridled hedonism.
Something which may be related to this is the idea of type 1 fun and type 2 fun. I'm not sure where I heard this, but few people I talk to have heard of it.
Type 1 fun is the kind of fun which is enjoyable in the moment. For example, computer games and watching youtube videos.
Type 2 fun is the kind of fun which is enjoyable upon reflection but not necessarily in the moment. For example, running a marathon, certain moments of trial/despair when working on a big project.
When I first played Factorio I played it for about a week solid. I loved it. After that I could put it down and do other things. I now play it for a couple of days every couple of months when the mood takes me. This is type 1 fun for me.
I'm certainly glad a ran a marathon, and it is a very happy memory, but no way in hell am I going to do that again. Very much type 2 fun.
Some comments (not necessarily the one I'm replying to) seem to inversely correlate enjoyment with how hard a task is. The harder a task is the less likely it is to be enjoyable. Is this true? It certainly isn't my experience, but maybe I'm odd as I originally suggested.
Something which has also driven me is boredom. Being a freelance developer has given me a lot of free time. Certainly for me, type 1 fun only goes so far in conquering that boredom. Sure, play computer games for 6 months, but then that gets boring too. At least it did for me. Then what?
Then, for me, type 2 fun starts to look more appealing. Perhaps I should build a house? Sure its going to be hard, but I'm practical and I like leaning new stuff. Plus I'll be outdoors, and at the end of it I'll have a house. (FWIW, I actually did this)
Perhaps that's just being an "up" kind of person. I think it is also believing in one's abilities.
I don't think this is a cohesive point with a strong conclusion, but perhaps this series of paragraphs is useful in furthering a discussion.
I'm also "ADHD." Quotes because after 30 some years living with the diagnosis (and reconfirmed, both by others and myself), I still don't really know what it means. Something sometimes discussed is "hyper focus" for ADHD folks. Honestly I think this is just a normal expression of that other quality: a total inability to engage with something once it becomes boring. And excitement for those things that retain interest. Naturally, things that are confusing or complex tend to be impossible to initially approach, but gain momentum as you gather more clues and understanding.
I have great sympathy for those that try to go "the hard way." I did that before I got into software development. I denied my misery (of not software dev) for a decade because I understood that hard things are hard, and believed my misery would pay off.
Turns out, I didn't have all sides to the equation. Hard things are hard AND hard things that you are passionate about can be your way to contribute to the world. Doing something that is "hard" BECAUSE it is hard only because you have no passion in it is a bizarre but plausible scenario for what I imagine are many HN readers.
If instead I go deep on what I enjoy, I am happier in the short term AND long term. When I was younger, I would "waste" time on strategy/tactical games. But I think I actually gained some long-term planning skills from this, and developed a taste for "slow thinking" from this activity. And now those games are boring to me.
Last weekend I buried my head in functional/algebraic programming, even though my conscious brain was saying it was a total waste of time and distraction from my real tasks/goals. From the experience, I've learned that functional programming really isn't the silver bullet I want to believe it should be. But I trust myself enough to believe that even if the payoff isn't obvious, or even if it doesn't apply in my professional life, that my brain giving me enjoyment for the activity is enough of a signal that it was time well spent...even if I really can't justify it to anyone including myself.
You can point yourself in a general direction by setting up your environment towards that direction. Buy books in things you're interested in even if you never end up reading them. Give your body sunshine. Never go grocery shopping when hungry, and fill your fridge only with good foods. The key to letting your unconscious brain take over is that you only give it access to the sugar that your executive planning brain believes will work.
You should to some extent enjoy what you are doing particularly when what you enjoy is in line with what you want to get out of life.
The OP asked for tools for focus. Most of us need tools to gain perspective because we are so busy day to day that we don't see how it will fit in with a full life. We all need tools to periodically take a step back and see how everything fits together. I think you do that naturally but it was not in your post.
BTW - I can tell you do not have young children. They will completely change your perspective.
I learned orbital mechanics from Kerbal Space Program.
Assembly programming from TIS-100 and Microcorruption.
And … whatever the heck I learned from Factorio. Logistics? Abstraction?
If there isn't a game, you might try and make it a game. See how fast you can solve the example problems in the textbook. Get the high score on your flashcards. (This doesn't work for me, I get more interested in designing and building the game than playing it.)
Especially when you're production drops and you run out of ammo. And the bugs are coming. And power is running low. And you're low on iron-plate and you need that for ammo. Which you're now low on.
You start out using NAND gates to build foundational logic gates (AND, OR, etc.), and gradually work your way up to building stuff like I/O multiplexers, memory, an ALU, and finally a working CPU using the building blocks you've created along the way.
Not meaning to judge anyone here. I'm mostly speaking from my own challenges. And obviously, I'm not talking about all games, TV shows, etc., either.
Specifically what "enjoy" is being attributed to... which is _not_ the end result, but the _process_. You can't pick this up front, you have to just play and throw things away like you don't care (and you really don't care), just keep trying things until it feels enjoyable. I suspect people get stuck running uphill because they focus on end results rather than the process. In the most extremely obvious case, if you ask most kids what they want to be when the grow up (the end result) they predictably say astronaut or some lofty, hard to attain but awesome sounding end result, even though they have absolutely no idea if they would enjoy the process of becoming and being an astronaut.
... Focus on the process, i.e play, and care about nothing other than interest and enjoyment, you cannot pick the precise end result, you can only roll the marble along the most effective path to an unspecified "good" result.
What I noticed was that cravings for harmful substances or behaviors were (the craving itself) a form of suffering, a feeling of lack, while desires for healthy things were a form of positive emotion / eagerness.
It's probably best to literally ask yourself that question honestly, but a good rule of thumb might be: If it's not intellectually stimulating, it's probably pure entertainment. This is tricky because some good forms of entertainment will make you think, but probably not enough to be considered "learning" in the way we mean here.
some like setting goals with their hobbies. achieving those goals takes discipline most of the time. there's nothing wrong with trying to optimize how go about cultivating that discipline.
of course if you're trying to be disciplined compulsively then that's a different matter.
For example if you want to get stronger having a workout plan can help you get that goal. Going to the gym and do whatever will keep you in shape and if that keeps you motivated that's great, but some are motivated by doing something they can't do right now.
So if I were to take your advice (and honestly, I mostly do run like that) it means a lot of time spent doing something ephemeral with no real lasting benefit. I think your last point applies to me. I wish I could summon enthusiasm for projects rather than hobbies.
I like games so started doing a Unity course, it was fun, but then I got bored and stopped. No real reason, I think something else just caught my eye and it's hard to go back.
I want to learn marketing automation so I installed Mautic but haven't gone much past that. The plethora of options (what feature to try first?) is paralysing.
I help out with a Wordpress site and think making plugins would be neat, so I made one to help test some stuff, and that scratched the itch and now I don't really feel like doing it anymore even though it would be useful (and maybe profitable?) to learn.
These were all fun and interesting I just seem to lose interest very quickly (a few days) and want to do something with more novelty. Probably the most productive way this manifests is cooking, at least we get to eat a bunch of new recipes. Today I'm making bread but hopefully I can also finish setting up this email series :)
Exploring more interests and different ways of doing things changed a lot of things for me.
Things can also change when you know how to do things in a way that aligns with you. I used to hate cooking, but found my take on it.
Personally I go for smaller coding exercises, things like exercism.io, simply because I don't have the free time to embark on huge projects. I find that these are a good way to learn new languages. And they also remind me why I love programming in the first place, because I get to work in a pure problem-solving space, without the bearocracy, deadlines, etc, that I get in my day job.
It is, however, a piece of advice that will likely upset a lot of people, because, they'll say, not every activity worth doing is enjoyable. Which, obviously, is true. Sometimes learning something new or hard can be very difficult. But if you're motivated by your own interest and curiosity, the pain will actually be rewarding rather than soul-destroying.
I just treat my curiosity like a compass now, and let it take me wherever.
I can understand "do something if you enjoy it, if you stop enjoying it then do something else." And my first reaction is to modify my system so that there are checks for enjoyment in there...
(In fact, I do. E.g. when working on to-do lists I don't prioritize them anymore unless necessary, I just try to think what I feel like doing the most. But I had to decide that).
It's like analysis paralysis but in many parts of life. There are things I'm very bad at because I never stop the analysis, like housekeeping.
I'm currently trying to find out if I'm on the autism spectrum, so maybe that is what is different about some people.
Unfortunate for me, my street smarts and enthusiasm doesn't help me in achieving my next dream.
I would love to work for a specific big company but without structured learning, i will not beat that shitty interview barrier.
I’m sympathetic to the OP, because at times I feel the same way. I want to become proficient in new skills but sometimes I feel I’m doing it in an inefficient roundabout way.
I do feel that a large reason why mundane, boring or unenjoyable things are so hard has to do with overstimulation from low effort high dopamine activities. It becomes much easier to tackle these things if your base level of dopamine is low, so small achievements give you a nice boost. It’s very hard to keep the base level low, though, in our always connected high stimulation world...
Having kids helps with enjoying chores. "No babe, it's OK, I'll take the dishes and listen to my podcast. You just watch the kids."
I enjoy working on challenging engineering and software projects that fall into domains that interest me.
I do not enjoy having to hunt and pick through algebra concepts I was never good at in the first place so I can than spend more time on even more difficult mathematics before I can do much useful work on those aforementioned projects.
I constantly found myself in the following loop:
1) Motivated to study, study productively
2) Several days / weeks later productivity stops (for any number of reasons)
3) Quickly forget everything I learnt over the next month or so
4) Back at stage 1, feeling I have 'wasted' the last few months.
My big problem was the _forgetting_. Life is always going to get in the way, and I needed to 'drop anchor' when this happened, so I could resume where I left off, not start over.
I use Anki [1] to do this. I learn things, make flashcards, and spend dead time on public transport keeping up with them. As Anki uses spaced repetition, you can input a LOT of cards without this becoming overwhelming.
This gave me a sense of progress even when I did not study for a month, and massivly increased my motivation.
[1] https://apps.ankiweb.net/
For knowledges that I’m actively learning, I keep separate decks and have no time limit. Creating, splitting, and tuning cards is fundamental to my learning process.
Maybe if you can figure out how to stuff a wall sized whiteboard into my phone like room-scale AR microfiche.
People will just assume I'm playing beat saber
I mainly study maths and also find Anki useful for learning things like vim shortcuts (Q: Move the cursor to the middle of the screen, A: 'M').
Getting the right level of depth in a maths card is tricky and I don't think I've completely figured it out yet. Too much information in a question or answer and it becomes a 1+ minute problem every time the card appears; but not enough information and it's hard to learn the hard stuff.
So I try and break the problem down into chunks to learn the detail, and also have cards for the higher-level intuition.
I’m now using Anki to learn Vietnamese and to work through Linear Algebra Done Right. It is such a pleasure because I know what I learn won’t evaporate. It’ll be right there, instantly accessible decades from now.
Anki is an incredibly useful tool. I can’t recommend enough.
Then you know, that the theories you learned about, where not just information adding to a (useful?) pile of information in your head.
What I mean with "extrapolating from future achievements" is setting concrete goals in terms of where I want to be in five years, or what I would like to be able to say I achieved, and working backwards from there. I feel that the main reason many people engage with new ideas, technologies, tools etc. is the infamous FOMO, fear of missing out. We fear that we will be left out, worth less if we don't read this article or learn that programming language. If there is no actual driving force behind an approach to a topic, learning it will cost you a lot of energy. You will need to remind yourself again and again why you are putting in the time and effort, and even worse, the next shiny thing will be extremely distracting. If you start with the knowledge that it's taking you somewhere, however, you will have much more internal drive.
Elimination is just not doing things. You have three languages you want to learn? Drop two. Two books on algorithms? Drop one, or maybe even drop both and do some sports instead. I know this sounds silly; you are asking how you can get better at learning things, and I'm telling you not to learn them in the first place. But I think this is a key talent; dropping things and not looking back, not feeling bad about it, not losing any sleep over a missed opportunity. Everyone knows deep down that there is enough time only to concentrate on a couple of topics and areas in one lifetime; you can be a novice at many topics, but being an expert requires huge amounts of time and dedication. And the only way to bring these is by eliminating other topics. The previous technique of extrapolating from the future is useful here. Do you want to be called a great roboticist in 5 years? Then you will have to drop the ML. You want to be a great Rust programmer? You will have to let Clojure go.
I hope this is useful. What you have to keep in mind is that deep, multi-faceted expertise in a single area is very valuable, both as a trade and for you individually, to feel great about what you do. Acquiring this expertise is very difficult. You will need to put in a lot of honest work, will have a lot of dead ends and frustrations, and frequent doubts regarding your choice. Nevertheless, you should try to pick one area of expertise and eliminate all other efforts that don't contribute to your prowess at it.
Point 2 reminds me of Peter Thiel's power law: https://supermemo.guru/wiki/Thiel_on_power_law.
1. For me it's hard to stay motivated learning a new technical topic if I can't connect it to some plausible future where my life would benefit from the knowledge. If I’m not addressing any pain points then the drive to study just won't be there.
2. Realize that there’s going to be an overwhelming amount of resources and tactics you can use to learn the topic. But they’re all not created equal and some may get you to your desired destination faster than others. This is highly personal; not every method of learning works for everyone (ie: I dislike learning theory through videos and lectures, highly prefering technical books instead).
3. Find a group of people that's at least slightly above your knowledge level in the topic and learn through osmosis. While I was able to pick up the foundations of infosec on my own it wasn’t until I was learning with others, especially while preparing for certification exams, that I got to learn more of the intricacies of the topic. Learn with others that have a similar drive as you.
4. Set weekly goals and dates in the future that you really need to test your knowledge to see if you understand the material. Security certifications, while I was a bit rebelious against at first, served this purpose for me perfectly. I’d set weekly goals to learn material based on a courses' syllabus and every few months there was the ultimate test to show I actually grokked the topic, which huge burst of hedons along with it (if I passed, which has been a 3-exam streak for me so far).