Ask HN: How do you manage self-study? - <AUTHOR> I often feel overwhelmed by the amount of things I either wish to know or that I should know already.
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. <comment><USER6> I'm hoping my reply is more helpful than it sounds at first glance... This is one of those questions where I read and then exclaim (rhetorically), "what's wrong with people?!"

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.

<comment><USER7> Ok I enjoy watching YouTube, so I will do that

<comment><USER8> Andrew Ng. Machine Thinking. 8-Bit Guy. Ben Eater. Jeri Ellsworth. I do some of my best learning with YouTube.

<comment><USER9> I watched hours of gardening and cooking videos on YouTube yesterday and learned a lot of useful information. Unfortunately that probably won't help me with my next job interview :(

<comment><USER10> Those are creative activities and fun things to talk about. They can also be used as illustrative analogies for software.

</comment></comment></comment></comment></comment><comment><USER11> If you have an extremely good textbook with exercises:

1) Every weekday 30min uninterrupted study at a specific time, preferably in the morning. Don't miss, rain or shine. Take weekends off, though.

2) Work in a strict linear fashion: read a chapter, then solve all of that chapter's exercises in order without skipping any, and only then allow yourself to peek at the next chapter. Don't "take a first pass through the book", none of that. To remember where you are, use a bookmark.

3) If you're having trouble with some exercise, you can look up the answer key _for that specific exercise_ , but only after you've spent 5 minutes of effort _on that specific exercise_ without making progress. After that, the same rule applies to the next exercise.

4) You've got to get to the end of the book. Matter of pride.

For me this approach has worked well for established topics in math, physics, econ. Haven't tried it for CS or ML.

<comment><USER12> > If you're having trouble with some exercise, you can look up the answer key > for that specific exercise, but only after you've spent 5 minutes of effort > on that specific exercise without making progress.

I've wondered what the ideal time of effort is on several occasions. Sometimes I'll get stuck on an algorithm problem and no matter what technique I try I can't make progress. Sometimes I'll try for days, until I eventually just give up. That's obviously not ideal, but I think 5 minutes is too short for this situation. I worry that I won't internalize the solution or technique very well unless I've wrestled around in the problem space for a while first.

<comment><USER13> This is a good point, and is one of the biggest pain points in self-study vs being taught by in school/expert, or having access to the collective intelligence of fellow students.

The best way to combat this is to be smart about using whatever resources available to get an expert to help you. Post questions on sites like mathoverflow/stackoverflow, and be persistent. You could waste time spending weeks on a single problem that someone with experience can solve in seconds.

Personally, this is why I don't like self-study on it's own. If you can form a study group, do a part-time degree or find some other method to ensure that you don't go down costly rabbit-holes, you should. The gains in efficiency will be worth it.

<comment><USER12> Well, getting an expert to help isn't much different than looking up the answer. My particular struggle isn't about not knowing where to find the answer, it's about when to give up trying to figure it out on my own.

</comment></comment></comment></comment><comment><USER14> I've found a combination of keeping a journal, having self-compassion, and having something to prove to be the key to sticking with a self-study regimen.

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.

<comment><USER15> That's an interesting approach, but I feel like you are describing a slightly different problem than the op is talking about, or at least I have.

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.

<comment><USER16> I dont think there is a way to know which one thing in the list of potential 1000 things, will be the one that has highest payoff. And the definition of payoff also depends on what your goals are. For examples, learning computer networking concepts will have different payoff for someone who wants to get a PhD in Machine Learning (it will help him/her write better software maybe, or add to his/her list of employable skills), vs someone who is building distributed systems. So you have to take some bets. Think about stuff like what one or two things you can learn in next 6 months that will get you closer to your most coveted goals. And just try to focus on them. If there are more than 1/2 things, filter them out based on what gets you excited more. At the end, its all about your perspective.

</comment></comment></comment><comment><USER17> Check these books:

\- Ultralearning by Scott Young

\- Deep Work by Cal Newport

\- Atomic Habits by James Clear

\- How to Read a Book by Mortimer Adler

\- Mindfulness Meditation (many books by Jon Kabat-Zinn

"Ultralearning" has lots of valuable ideas. For instance: Directly attacking the skill you want to learn. If you want to learn Git versioning, practice doing it.

"Deep Work" convinced me that I need to spend focused and uninterrupted (large) chunks of time doing the things that I want to make progress with.

Learn Mindfulness Meditation to be able to focus, to deal with inner distractions and a wandering mind.

"How to read a book" showed me that I was only reading for information at best, but mostly for entertainment. And it taught me how to read for understanding. Reading-ability at this level is one of the most under-valued skills today (in a world full of tutorial videos).

And finally: Make a schedule, block out chunks of time, stick to the plan. Track your progress in an app or on paper. Repeatedly doing something will give you tremendous amounts of progress in that area. (see "Atomic Habits")

<comment><USER18> Having been on a productivity nonfiction binge, i'm convinced all the ideas work, but the bulk of the effort is actually applying the advice. Otherwise, it's too easy to get caught in the cycle of epiphany porn.

The core ideas -- focus on one thing, have clear next actions for each thing, spaced repetition, stop when you're getting good (hemingway), etc, can be summarized in a couple of blog posts but the main benefit from reading is the perceived motivation boost after.

Once you settle on a plan (which itself it the main challenge, and something to think long and hard about), make sure to actually use it and test what works for you!

<comment><USER19> "cycle of epiphany porn" is my favorite new phrase

</comment></comment></comment><comment><USER20> > _I either wish to know or that I should know already._

So let's back up. What's your motivation here? Why do you want to know stuff? Is it to excel at your job? Is it to just be a well rounded individual? Is it just because you love learning? Your goals should dictate your focus - <USER2> out what you're trying to do and focus on that. There's only so much making time - optimize for maximizing it with a narrow focus on valuable subjects.

If you want to make more money in your career, focus on things that will do that. If you want to be respected at your job, that's probably a different skillset you need to focus on. Understand what you're after; it's much easier to learn if you have a goal in mind, and it's much easier to set a goal when you know your motivations.

Second, what is this about what you _should_ know? In what context? According to whom? Is your knowledge deficient at work? Do you not know how to act around people you want to be romantic with? Are you making mistakes at work? What external force is determining what you _should_ know? Is it imposter syndrome?

I think getting to the bottom of your motivations and this feeling of not knowing enough or not knowing the right thing might be more beneficial than learning tactics for studying things. If you use good study techniques on the wrong thing, what's the point?

<comment><USER21> I loved the questioning! It's more like five whys [https://en.wikipedia.org/wiki/Five_whys](https://en.wikipedia.org/wiki/Five_whys)

</comment></comment><comment><USER22> I don't. I let my path in front of me determine what I learn.

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.

<comment><USER23> > Getting from there to here was a long path of letting my current needs > determine what I needed to learn.

Or you could have followed the syllabus and worked there immediately after finishing university?

<comment><USER22> I _did_ follow the syllabus. Almost everything I learned is useless to me. I don't even work in the field I graduated in anymore.

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.

</comment></comment></comment><comment><USER24> > Often I am so overwhelmed that I just watch stuff on youtube.

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".

<comment><USER25> I want to agree with this because teaching IS a great learning tool but one needs to have some idea of what they are doing. Teaching helps to identify the problem areas we fool ourselves into believing we understand well.

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.

<comment><USER24> Others will make content whether you do or not. Chances are that if you're sensitive to the ocean of incompetence, you would be a positive contributor.

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.

<comment><USER10> The key here is honesty and showing vulnerability, preferably through humor when appropriate.

This way the consumer knows where the limitations are and you possibly create an emotional connection.

</comment></comment></comment></comment><comment><USER26> I've been in a similar boat - wanted to share what I found worked for me, perhaps it helps.

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/](https://apps.ankiweb.net/)

<comment><USER27> Strong +1. I constantly felt like I was wasting time by studying and then stopping since I would forget 95% of what I learned. With a small daily investment, Anki flips that percentage to _retaining_ 80-90%. It has been an insane boon to my motivation, and I've been able to keep a near-daily habit of doing it for 6 years now.

<comment><USER21> Are you using every week or is it when you resume where you left of you check the cards?

<comment><USER28> To be effective you need to use Anki every day. I set my goal for learning and reviewing ambient knowledge at 30 minutes per day. All ambient cards are organized under one "Daily" deck. If studying that deck exceeds 30 minutes, then I reduce the number of new cards added per day until it goes below the threshold.

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.

</comment></comment></comment></comment><comment><USER29> I'm self-learning math and, honestly, it's come down to finding someone to help keep me accountable. In this case, I got lucky enough to find a guy with a PhD who suggests books to work from, as well as which problems for each chapter/section, and then checks my proofs and discusses things with me. It was super lucky, but if you can find something like that, or even just someone to do the material with you, it could be much better.

Another thing I do is schedule time. Especially since I've been off work, I've scheduled specific times where I do nothing else. I go there, log on my computer (I work out my solutions in Overleaf), turn off email notifications, mute my phone and place it elsewhere and just work. I've found that having a scheduled time makes things 100 times easier, as it mentally prepares me to just keep doing this. Other than that, it's don't doubt your resources; resource paralysis is a real thing (you see it a lot of the time in language learning too), they're all basically the same if you're working from a published textbook. Just pick one and stick with it.

</comment><comment><USER30> (Image of the shared document - [https://ibb.co/b1Kqk2w](https://ibb.co/b1Kqk2w))

My friend and I follow a plan where in both of us have to study 5 days a week at least 30 minutes a day. We write what we did for each day in a mutually shared document. If someone fails to do 5 days in a week they pay the other person a fine of $2*(5-no of days task done). This has helped us to stay on track and is helping drastically to get the work done. Neither of us has paid even a single penny to other person because none of us missed even a single day and we have got a lot of work done.

</comment><comment><USER31> I am 77 year now and all I did was reading as much as possible. Learning C# an C++ at my age of 75 and still building hard an software for pleasure. In my Opinion, as long you are interesting in some kind of things, everything is possible. Off course sometimes it can be difficult, but NEVER, NEVER GIVE UP !!! That's my advise. Arie, email@example.com and.... sorry for mistakes I made as my normall language is Dutch.

</comment><comment><USER32> I've found that all of my self directed learning was because of a project. I picked a project I wanted to do and then taught myself the skill to do it.

When I wanted to be a better sysadmin, I forced myself to use desktop Linux back in 1997 when it wasn't nearly as easy as it is now. I had to learn how to compile and configure kernels, how to manage drivers and displays, how to write scrips, a bunch of hardware internals so I could configure them correctly, etc.

But I was driven by the overarching goal of having a usable desktop machine.

You can do the same here. Pick a larger project that accomplishes something you really want to do, and then learn what you need to learn.

You said you have an interest in ML -- build an image classifier off of a camera feed at your front door. Make it identify the mail carrier and your neighbors' cars. Write it in a language you don't know but want to learn. And so on.

Your progress will be tracked by how satisfied you are with the project and if it meets your needs.

<comment><USER33> Same. Small practical projects are great for that. I wrote my own home lighting system as a way to learn Scala. [1] Getting curious about the big ships going by San Francisco's Fort Mason led to a Twitter bot [2] and a custom protocol parser that drove me to learn all sorts of stuff. [3] Buying a cheap robot vacuum led to me learning man-in-the-middle attacks and IoT protocols. [4] Today I'm busy learning Terraform and Prometheus so I can get my various projects off a single hand-maintained server and into the cloud.

My big tip to people is to pick something that's big enough to be interesting but that you can initially cut back to something pretty small and deployable, then iterate. The ship stuff started out as a visual art piece for a robot chalkboard, but I fell back to the Twitter bot because I had bitten off too much. Having a series of near-term goals makes it very clear which specific thing I need to learn next; otherwise it's easy to drown.

[1] [https://github.com/wpietri/sunrise](https://github.com/wpietri/sunrise)

[2] [https://twitter.com/sfships](https://twitter.com/sfships)

[3] [https://pypi.org/project/simpleais/](https://pypi.org/project/simpleais/)

[4] [https://github.com/wpietri/sucks](https://github.com/wpietri/sucks)

</comment></comment><comment><USER34> I think there can a few sides in the problem of prioritising and sticking to things.

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.

</comment><comment><USER35> This is more advice than a technique, so take it for what it's worth. Show some self-compassion and don't be too hard on yourself. The fact that you're actively pursuing knowledge puts you ahead of a lot of other people.

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/](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.

</comment><comment><USER15> I have exact same problem. But for me it's not just about learning. It extends to other aspects of my life - side projects, health, work, travel, etc. I have huge lists of things I want to do, but no real way to manage them. I'm having an especially hard time balancing them.

I'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.

</comment><comment><USER36> I have struggled with similar issues for years. I have a kinda weird take on the topic, but I think it might be helpful. I think the "persistence paradigm" we're living through causes these sort of psychological short circuits where we forget that what we're doing is building our minds and not building some external edifice or monument that we can point to as our "knowledge". There is never going to be a moment where you can point at your stack of notebooks or answers to textbook questions or list of books you've read and say "I've done it, I've learned so much". The widespread behavior of persisting moments of our lives out into cyberspace has sort of bled into our psychologies. I think this is partially why you see so many people struggling with these sorts of questions.

So the short answer I think is to focus on a process of daily improvement instead of some systematic program for self study. Just read 60 minutes a day, journal 30 minutes a day, and place absolutely no restrictions on the subject matter. For a while I also burned my notebooks every 30 days, that was really helpful. These days I actually do record a lot of my thoughts but I try not to get bogged down too often in the systemization of the practice.

</comment><comment><USER37> My reply is similar to other replies, but I think of it a little bit differently. Many times people mistake wanting to have _done_ something with wanting to _do_ something. They have a big list of things they wish they had already: some achievement, some knowledge, some social standing, etc. Then they make a plan for achieving those things. What they leave out is whether or not they _actually want to do those things_.

I think you may be suffering from this. You life becomes this treadmill of trying to prioritise what you want to have accomplished coupled with statuses of where you are now. You are always fighting against the clock because you are wondering if you are making "enough" progress and worrying if you might be missing out because you made the wrong priority call. In the end you basically chase your tail going from one thing that seems important to the next thing that seems important and eventually circling back to the original thing. (Note: many people have probably worked for companies that waste _huge_ amounts of money doing this very same thing).

IMHO, the best thing to do is to throw away all of your "I want to have done" goals and replace them with "I want to do" goals. Then, don't prioritise by what's most important to have done. Instead prioritise by how much you are enjoying it. Don't mark the end point of the exercise by how useful it will be for the next thing, but by how much you want to continue.

Which is not to say that you should just do whatever you feel like every day: even in the most enjoyable of tasks there are things that you need to do when you don't feel like doing them. However, on _average_ you should be asking yourself, "Do I want to continue with this? Am I enjoying it? Does it feel like a _me_ thing to do?"

Last, but not least I will also leave you with my "Rule of 3". You can do 3 things in your life well, give or take. One should probably be your day job. One should probably be your relationships. That leaves you with _one thing_ left. You can dabble with things here and there, but if you want to really make an achievement, you really only have room for that one thing.

</comment><comment><USER38> I've been trying to figure this out for decades now. From my teens, I realized that the internet was limitless in how much info it had, but that I was limited in how much I could pack into my brain.

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.

<comment><USER15> I think you are describing "how to learn effectively, manage time, and stay motivated [once you've picked a topic]" \- which is important and useful, but IMO slightly different from what the OP is describing (and a problem I have), which is "how to pick what to learn next when there are 1,000 interesting choices with uncertain payoffs"

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.

<comment><USER39> Here's a simple system: find out what resources you absolutely cannot bear to delete. If it's all of them, then your problem lies elsewhere.

</comment></comment></comment><comment><USER40> I have ADHD, and I used to worry about wanting to learn everything. After many years of attempting to do so, I found out that there simply isn't enough time to do it all. The surface area is too broad, and there are too many demands in life that will take priority. Without focus, it won't be as easy to excel in a particular area.

Instead, use projects to drive your learning, otherwise your knowledge will atrophy as you attempt to learn subjects broadly. Hands on learning will be more productive as it integrates all of your senses.

Figure out what you want to _do_. That isn't to say your interests can't change, but your learning should benefit your current objectives.

You might find that what you work on requires interdisciplinary understanding, and in that case you might integrate a broader field of skills. But let your projects guide you to that, otherwise you're making a premature optimization. Perhaps an incorrect one.

</comment><comment><USER41> IMO, there are two main factors are important for good learning: a) Motivation - This is different from enthusiasm about a given subject. It is about the drive to put in the yards for learning. Enthusiasm doesn't always translate to motivation (perhaps there is a better word for it). b) Engagement - <USER3> engagement, hours of watching or reading will still leave you dissatisfied that you haven't learnt anything at all. Being engaged with a topic flexes the brain muscle and allows you to internalize the concept.

I use different techniques to maximize the two factors. For motivation, nothing fuels it better than achievement. This achievement can be something big like a complicated project or something simple like crossing of a chapter in a book. The key thing is to have a scorecard, minor or major goals. It is a bit like Gamification for self. It motivates people to no end.

For engagement, I mix and match learning mediums according to the environment. It is easy to despair waiting for the best setup, where you can spend your undivided attention. The smarter thing is to engineer your study plan for a realistic environment. I find that practice, books and videos engages you in descending order. OTOH if you have a busy schedule, focus level and time available may have a reverse distribution. The key is to pair each environment with corresponding learning mode. I watch videos while on commute or in in crowded places, read books while on couch or with family and do hands-on practice during my lone time. Videos and books complements practice nicely. It is not possible to pick up everything by practice alone. Likewise after practice, you can take more context and subtleties out of a book or video.

When it comes to practice, doing the prescribed exercises or tutorials is helpful but you get maximum return by deviating from the script such as writing your own scenarios or doing a project. Even blogging or making a learning video will help to engage you more with the topic. This works by tuning your engagement to the maximum.

With books and videos, it also helps to find ways to engage with the medium. It may be via discussion boards, taking notes, writing commentaries or doing a blog. Without engagement, very little sticks.

</comment><comment><USER42> Get good sleep. Eat well. Don't drink and expect to be productive. See a therapist. Exercise. Get fresh air. Take allergy medication if you need it.

There's a lot of wonderful techniques and software out there but the most important optimization is the foundation of good health, mental and physical. My memory has improved so much with consistent sleep. A plant based carb light diet helps so much with energy and focus.

Then take some time to consistently study a little. I've started setting a daily calendar event to read a book.

Don't worry too much if you're not focused these days. It's a pretty stressful moment in time.

<comment><USER43> Allergy meds in the antihistamine class seem to kill my ability to focus for long periods.

</comment></comment><comment><USER44> I have a learning Trello board with categories "Maybe", "To Do", "In Progress" and "Done". When I come across something new it goes in the maybe category. I also make sure to only work on something if it's "in progress" and keep the in-progress list limited to 2-3 items at any time.

<comment><USER45> How do you decide when to call something 'Done'?

Or perhaps (anticipating a possible answer) How do you apportion tickets such that they represent things that can be called 'Done'?

<comment><USER44> Each ticket is a specific course/book/tutorial so it's easy to know if I've completed it or not.

</comment></comment></comment><comment><USER46> Read "Eat that Frog" by Brian Tracy. And as John Sonmez says, you don't even need to learn everything. Go straight towards exactly what you want to make, nothing more. E.g. instead of going throuz a to z of Rust, decide what you want to build with it and learn only what's necessary for it.

<comment><USER25> That's great advice.

</comment></comment><comment><USER47> Have a particular project in mind. It doesn't have to be serious, but it can cover a lot of ground.

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.

</comment><comment><USER48> There's a lot of complicated answers here, I'll try to keep mine simple. Like you, I have a lot of interests. Like you, I was also overwhelmed by the amount of information and how to learn it all. The first thing I did was to ask myself what I wanted to know and why. Then I asked myself which topics are related. I followed this up by asking what were the "basics" that I needed to learn these topics?

Nobody likes the basics, they're boring, that's why they're _the_ "basics", but they're important, so I had to figure out how to motivate myself. So I just considered it eating my vegetables for more interesting topics.

I started small, 20 mins a day, on the basics. Before long the basics empowered me to learning other topics I was more interested in. So soon I could keep going with my basics while adding another 30 minutes a day to studying another topic of interest.

Now I'm up to four topics of interest and am spending a couple of hours a day studying concepts I find to be very interesting. Not everyone has that kind of time, and some days I don't want to spend all that time on it, so I take a break. I've found it's important to not let the break last longer than three days though (unless it's a vacation) otherwise I start to lose where I was at in my progress and have to spend some time refreshing everything.

That's it, it's like the old adage. How do you eat an elephant? One bite at a time. You would be surprised at how quickly 20 mins per day adds up. That's ~121 hours a year or ~3 weeks of working on a specific topic non-stop.

</comment><comment><USER49> I prefer "pull" learning instead of "push" learning. By that I mean having something interesting to "pull" me to learning something vs. having the discipline to make myself study (push) the subject.

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.

</comment><comment><USER50> So, it sounds like you're facing is one of prioritization.

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/](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.

</comment><comment><USER51> I feel like the best way to learn new things is to actually build something? Want to learn a new language? Build something with the language? Want to learn a new algorithm? Try to incorporate that algorithm into the project you are currently working on. Trying to study boring non-real life examples get boring real fast. Applying them into real life is a good way to help you keep "studying".

</comment><comment><USER52> Not sure if you seek advice on self-development (programming skills) or general college/university studying advice. Very similar set of challenges either way IMO:

Take Dr. Barbara Oakley's (free) learning how to learn course - I graduated 20 years ago (MSc) and found this very refreshing and insightful. Good interviews, too. [https://www.coursera.org/learn/learning-how-to- learn](https://www.coursera.org/learn/learning-how-to-learn)

Cal Newport's book is full of studying/organization advice. Bottom line: Attack the hard stuff early on. Go hard, go deep. If you get organized and build a foundation in each course early on, then you won't have to catch up and cram in all-nighters later. [https://www.calnewport.com/blog/2009/03/09/the-straight-a- me...](https://www.calnewport.com/blog/2009/03/09/the-straight-a-method-how- to-ace-college-courses/)

</comment><comment><USER53> Two words: Spaced repetition, it feels like magic. You are likely going to forget most of what you learn if you don't engage with it and/or it doesn't get repeated.

</comment><comment><USER54> \- do a course on Udemy or similar instead of Youtube videos for course quality, structure and accountability

\- have good reasons why you study a particular topic and find a way to apply the knowledge as soon as possible

\- have particularly good reasons if you want to study foundational, abstract or huge topics. As noble as maths, category theory and machine learning are, maybe there is a reason why you and I haven't really picked it up that well in university despite graduating. Chances are we have enough tools to contribute meaningfully and to be employed gainfully, and settling the score with the old curriculum may not be the best use of our time.

</comment><comment><USER55> I started reading a very relevant book on getting out of your own way today: [https://www.amazon.co.uk/dp/1936891026?linkCode=osi&th=1](https://www.amazon.co.uk/dp/1936891026?linkCode=osi&th=1)

In general however, my advice is to relax. There is more to life than knowing little bits of many things. Try to learn something outside of computers. I find building things with my hands that aren't on a screen a lot more gratifying generally. Also, those kinds of skills come in a lot more handy in a zombie apocalypse. So there is that.

</comment><comment><USER56> I feel like I am in a similar situation. One of the most beneficial things you can do before starting a self-learning activity is to develop a plan of strategy that you can follow. Whether it be a Developer Roadmap or reading a book, try to structure a learning approach around these mediums. In regards to learning, consistency and repetition will guide you to a more systematic way of working. Shane Parrish has great articles on learning at his website fs.blog . It can feel overwhelming sometimes, but you have to keep pushing and be consistent with the work you do!

</comment><comment><USER57> I'm very much a "process over product" type of guy. I've never hit "success" when I've aimed for it, so the only way to keep pushing forward is to see the journey as its own reward, highs and lows included.

</comment><comment><USER58> Not sure this what you are looking for, but when I take certs I usually go with video and I have a 2 pass system: 1) Watch all video content straight through. 2) Take one practice exam/quiz. 3) Watch all video content a second time. On this pass I make notes and if possible take a quiz after each video. 4) Review notes. 5) Practice exams. As I uncover questions I get wrong, I add those specific things to the notes. 6) Review notes day of exam. Take exam.

This is super easy for if you just buy a course for a particular certification. You can "make your own" if its not really an exam by making a small outline or picking a particular video series and then grafting the series onto an outline and then making a schedule for how you will go over each outline item twice.

I always recommend the 2-pass system because of what I call the "coat-hook problem". Basically, you can't just memorize stuff that has no other connections to things you already know. So, in the first pass you are really just putting up the coat-hooks. All you need to get from that first pass is a broad overview of what the content is and hopefully you can get a feel for the shape of everything. The second pass is where you actually start learning the material, i.e. actually hanging some coats on the coat-hooks.

Hope this helps. It's just how I do things, not claiming its for everybody.

</comment><comment><USER59> I have the same issue, and being a self-taught SWE, it's a real problem.

There are a few different methods I've implemented to manage my time (daily journals, project-specific tracking documents, rabid control over my work environment) and they deal with different aspects of the more general problem of "stay focused and track progress", but the thing I use that seems to fit your case most specifically is the pomodoro technique ([https://pomodoro- tracker.com/](https://pomodoro-tracker.com/)). It helps in four very specific ways:

1\. Motivating to sit down and work on a task: work is divided into 20 minute chunks, so it doesn't feel emotionally expensive

2\. Staying focused on the task at hand: you have a named timer maintaining your focus on the goal of that block

3\. Planning a route: being forced to regularly and intentionally state what a block of time is meant to accomplish helps breaking down large and complex problems

4\. Self assessment: you end up with a list of twenty minutes blocks that you either had to repeat or got finished with early. For me, this revealed a lot about where my time was going that I didn't realize at first.

As a bonus, there is zero learning curve, and nearly no added overhead. Hit the link, type in the goal for the next 20 minutes, and go.

Hope this helps. Best of luck!

Edit: formatting and a link

</comment><comment><USER60> I have a long (years worth) list of things I want to learn, and prioritized list (a months worth) for things that can indirectly help me at work. I have to further prioritize down to the 1-2hr level to have something to act on for a given day. As the list keeps growing and my time availability ebbs and flows, I never get to 90% of the things on my list. Such is life.

I specifically hunt for project-based udemy classes so I'm not just passively watching videos or reading blogs. The lectures are short, and I can make measurable progress even with 15-20min of attention/day. Usually 1-3 classes on a topic gives me the confidence to say to myself "I have enough introductory knowledge that I can now figure this out if I have to do this for work." This still takes 1-3 months of time per topic.

However, most of the items in my list don't have a curriculum or syllabus. I end up having to settle on just googling for blogs or playing with a few APIs to feel confident. I no longer prioritize mastery (except if I need the skill for my immediate work). I find taking a breadth-first approach to learning helps me connect the dots in my understanding of technology as a whole, and invest in depth only if I need it for my immediate job/projects.

</comment><comment><USER61> These are the big hindsight takeways I've seen as I've pivoted from web design/development towards information security.

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).

</comment><comment><USER62> I used to be in the same boat. I wanted desperately to have a process to follow that would help me prioritise what I should be working on. Now, looking back, I feel like I was over-thinking things. Like, a lot.

It sounds like you already have a list of things you want to work on, which is fantastic. Most people don't have that at all. The next step, in my opinion, is to pick the item that you're most curious about, and do that. If you're still having a hard time deciding which one to go with, it's probably one of the ones you keep thinking about. Maybe you shelved it at one point, but it keeps bubbling up in your brain while you're falling asleep or going for a walk. Do that one for now, and look forward to the second item on your list while you're working on it. If there are several that give you this feeling, just pick one of them. It doesn't matter all that much, as long as you find it interesting.

Your list will keep growing, and you'll never make it all the way through, but if you let your curiosity guide you rather than some sort of logic-based methodology, you'll always enjoy what you're working on, and you'll find yourself looking forward to discovering where your curiosity takes you next.

</comment><comment><USER63> For self-study, or study in general, I am kind of surprised how many people don't _implement_ what they learned after they study. In school I learned Java, computer graphics, ML/AI and other things, and during or after school I implemented all of these things in personal projects I wanted. I don't know what my understanding or retention of Java would be without having had to use it to write a program doing something I wanted to do.

</comment><comment><USER64> My solution: I commit to a meetup talk in on the topic.

\- meetups are open & friendly. They are more than cool with "I am learning X" informal talks without too much judgment or pressure

\- the deadline still makes me bust my ass

\- I dont believe I know anything unless I can teach it, a meetup talk means I need to communicate my understanding, which means I actually learn it

Nothing happens without a deadline with real social consequence. My buddies call this "embarrassment driven development"

</comment><comment><USER65> I set a schedule every day for myself. In my diary, I set aside 4 hours a day for my university courses, segmenting them into 4 25-minute sessions. Don't overdo it, study smart, not hard. I also do a bunch of online courses on anything I am currently interested in and do one hour a day studying these. I read the book called How To Become A Straight-A Student by Cal Newport and it has given me some rather useful insights on how to study. I dunno, I guess personality type plays a role in the amount of discipline you have.

I also work and do freelance work on the side as well as help my family with their businesses, so setting a schedule is important in my case, hope this helps in some way. If you know why you are doing all of these self-study things, it can also help you focus on the here and now. I recently learned of a term used in business management - obliquity: [https://www.managementtoday.co.uk/obliquity-roundabout- route...](https://www.managementtoday.co.uk/obliquity-roundabout-route- success/article/985299)

"Obliquity describes the process of achieving objectives indirectly, such as the financial success that comes from a real commitment to business. And obliquity is ubiquitous - it can even be applied to happiness. "

Rewards help too. Like, if you study for 25 minutes, get up and do something you like for 5 minutes, rinse and repeat.

I use a personal Trello account to keep track of things. What works for me is to take a month, set aside a week and put about 5 learning outcomes into each week. I tend to get overwhelmed with the amount of stuff I want to learn and do, so recognising when you're putting too much on your plate is a handy skill to learn.

</comment><comment><USER66> Learning is just like any other project. Admit that it's tough and that you need a plan. Build process to accomplish that. Aim for consistency over accomplishment. Bird by bird.

One issue with learning things is that as you learn, you often discover new things to learn. It's critical to know how to file these: (1) they're true dependencies, (2) they're interesting follow-ups for later, (3) they're not relevant in the near or medium term.

File things aggressively. Try to identify as many things as you can to _not_ read. For this you need two things: (a) a clear understanding of where you're going, based on a plan working backward from some achievable thing you want to learn and (b) safety knowing that when you file something away, you won't lose it. It's interesting, and exciting, so you should return.

Do this well and (a) and (b) reinforce one another. You can look through your "set aside" list to build out a strategy for your next achievable task and your achievable tasks can give structure to the things you've set aside.

File things aggressively. This often feels bad. You feel like you "ought" to know something or you get carried away following a thread. That's not bad! Do it sometimes, learning playfully is fun! On the other hand, you'll be more satisfied 3 months from know if you learn aggressively and directedly. You'll have worked through a greater amount of material at greater depth.

Finally, it's often hard to get started. Don't overthink it. Just set a small achieveable project, maybe give yourself a tight deadline. Once you're through that project you will, without a doubt, have a much clearer idea of what comes next.

</comment><comment><USER67> Find a course sequence that you think is important to know from a university website. You can find these on (under)graduate requirements pages. Download the syllabi in order and do the hws/projects/tests. Try to stay on some regular timeline. Use the course calendar and set goals according to it. Check your work and grade yourself. You can prefer to choose courses/schools with their materials online and that use books/solutions freely available online too. Since you say you already chose books, find a course with the appropriate prereqs that uses them, otherwise you may have chosen the wrong book. Many reputable programs have professors that post everything online. When a link is broken you can supplement by buying the material on coursehero or the like.

A motivator is to think of some people who have some education you don't, and you want to be like them. They followed these syllabi like orders in the past, so so should you.

I take the procrastinating on youtube to mean you are intimidated. Maybe from analysis paralysis. So having a schedule to follow for some self assignments that you will grade will be a motivator I think.

</comment><comment><USER68> I felt this way, too, especially right after college. I always had a 2-3 hour commute, but luckily via public transit so I could make use of my time. At first, I saw my commute as a waste of time, but then I began reading avidly every day on my commute, and quickly what was once the worst part of my day became the best part. I'm an effective skimmer, but realized I was still wasting a fair amount of time trying to find quality articles. I thought it'd be cool if articles had highlights that could be quickly reviewed to determine if an article was worth my time, and even cooler if I could see the articles my friends were reading with their highlights, all with the ability to comment and interact with other readers. After that, I used my commute to research topics to bring it to fruition, and then built it: [https://www.kontxt.io](https://www.kontxt.io). It's a little light on content right now, since I just released the beta, but check it out. Maybe we can learn together.

Focus on what you're interested in, which will change overtime, and just keep learning.

</comment><comment><USER69> One technique that keeps me motivated is thinking from the point of view of the future. I ask myself how much further along will I be if I start now?

</comment><comment><USER70> "Often I am so overwhelmed that I just watch stuff on youtube." That's was funny )) I would recommend reading some books on this topic for ex: Essentialism, The power of habit. In general, this comes from a lack of priority so use the Eisenhower Matrix to establish that priority and make the conscious decision to do the one thing which is most important.

</comment><comment><USER71> I remember feeling like that when I did not have clearer goals, it felt like I was drowning in the middle of a vast ocean and it did not matter which way I swam. What I needed was a glimpse of land to swim towards, that made all the difference.

I can recommend Richard Hamming's book Art of Doing Science and Engineering [0], that is what helped me put things in perspective. To quote a famous passage from it:

"It is well known the drunken sailor who staggers to the left or right with n independent random steps will, on the average, end up about sqrt(n) steps from the origin. But if there is a pretty girl in one direction, then his steps will tend to go in that direction and he will go a distance proportional to n. In a lifetime of many, many independent choices, small and large, a career with a vision will get you a distance proportional to n, while no vision will get you only the distance sqrt(n). In a sense, the main difference between those who go far and those who do not is some people have a vision and the others do not and therefore can only react to the current events as they happen.

...

You will probably object that if you try to get a vision now it is likely to be wrong—and my reply is from observation I have seen the accuracy of the vision matters less than you might suppose, getting anywhere is better than drifting, there are potentially many paths to greatness for you, and just which path you go on, so long as it takes you to greatness, is none of my business. You must, as in the case of forging your personal style, find your vision of your future career, and then follow it as best you can.

No vision, not much of a future."

0 - [http://worrydream.com/refs/Hamming- TheArtOfDoingScienceAndEn...](http://worrydream.com/refs/Hamming- TheArtOfDoingScienceAndEngineering.pdf)

</comment><comment><USER72> This is a really interesting topic. I am in the same boat. With so much information and a desire to learn, how do you organize it all. In terms of math, Amazon may be a great resource. I purchased a math refresher workbook today actually. It's a refresher for adults. Kahn Academy is another option and they have an app that you can follow along with. I find it better to put the pencil to the paper. That works for me.

I'm about 3 months into my web development studies and I think brushing up on math will benefit greatly for deeper learning.

I've taken courses through Udemy, Coursera, apps, and freecodecamp. It's very overwhelming and you can find any rabbit whole you want. I would say find a course and stick with it until it's completed. Then move on to the next. If you still feel like your missing valuable info, find another program. YouTube is great but in my opinion, there are multiple opinions and methods that you may find yourself getting lost a little.

</comment><comment><USER73> I see this all the time. Every single engineer starts off thinking "What should I study?".

IMO, it's the wrong question. Study whatever you want, it doesn't really matter. Get a lot of breadth, that's fine.

But go deep somewhere. How? Do a project! Something interesting, something you _can 't do today_, and something you _want to do_. And don't stop. You'll hit walls, just ask people for help, find communities where they'll help you through it, read docs.

Even if you fail, so long as you really push yourself, you'll learn a ton. And soon you'll know which projects are "tough but possible" a lot better.

It's a meme at this point that developers have 1000 different projects they never finished. Don't worry about that. In my experience it's because about 75% through a project you hit a point where it stops being fun, you stop learning things, and now it's just doing the work to wrap it up, which can be a lot less valuable.

</comment><comment><USER74> A bit late to the party but it might still be of help: @ruph123 I am a bit like you, and a few years ago -- after 30 or so years coping -- I started building a tool to study and keep track of what I get out of my texts and where I leave them. It's called Kjuicer, short for knowledge juicer.

The cool parts are that you'll be able to: 1\. Learn faster. Students report they save from 30 to 50% of the time if they highlight with it (more when they collaborate & share 'juiced' material among them) 2\. Recover what you learned in a snap, even much later.

I must be dyslexic, so certain topics were totally off for me, like CS. With it I could finally tackle it.

It's still a bit basic but it works on most web pages, or you can use the editor to paste stuff from other sources. It's free for personal use.

Hope it helps.

Please do let me know if you try or if you need support. Message from the website and I'll respond. There's not many instructions but it should be easy to use.

Cheers, Giampaolo

</comment><comment><USER75> You need a way to organise and prioritise these. Use a Trello board.

Because you're self-studying, you're sort of going to a self-study university taking different modules from different faculties. This Trello board spells out your self-study university curriculum and you're in charge of it.

Here is a 5-step process to build this curriculum.

Firstly, create say 3 lists on the Trello board: ML, CS and Math. Each list represents a 'faculty'.

Then, for every list, create Trello cards where each card is a 'module'. For example, you would create 'Data structures & algorithms' in the CS list and 'Decision trees' under ML.

The next step is to figure out for each module if it's something you either (i) wish to know or (ii) must know. You can use Trello labels or even use the Trello separators for this.

This following step requires a bit of work and it's the fun part, only because it's self-study. For each module, list down (you can list things in a card) the resources you have for that module. For this there are various resources you can get from the comments, search engines, and your peers. Consider the different modes of instruction: books, e-books, videos, lecture notes, slides, articles, blog posts, online learning platforms and so on. Choose what's best for you. If you can't decide just pick something first and find another time to source for another material.

Lastly, prioritise the modules. This can be done by easily dragging the modules which you want to do first on top of the list (having considered what you wish to know and what you must know). Set, say, top 3 modules for each list then you'd like to do for the next 2 weeks.

This is the high-level curriculum planning. If you plan on a micro-level planning like what modules to do for this week or for today, that I leave it to you.

</comment><comment><USER76> Personally I like project based learning. Just try to make something cool, maybe a game, a robot, a hydroponic grow station or whatever and then learn what you need to learn as you go along.

If you gave me a book of inverse kinematics I'd go to sleep in 10 minutes. If I get frustrated that my robot keeps falling over I could read about it for days.

</comment><comment> jerome-jh First of, you will not be able to learn all these things. Or maybe you will learn several of them, but you will only have a working knowledge of at most one or two. Curiosity is good and take it as it is: understanding the concepts and open problems of other science fields. That is very enjoyable, but you will never be a scientist in every of those fields.

Now assuming you do that aside your day job. You should remember what you wanted to achieve as a child, and achieve it or some of it. Me I wanted to understand Godel's proofs. So I bought books and currently studying them. Now that overlaps and interferes with my career goal, but that is a problem of my own :)

I took a number of MOOCs and enjoyed them: they provide a frame to your learning and short term goals. You can also ask questions to human beings. The issue is they may drive you away from your core goals, since there are not interesting MOOCs on every subject.

</comment><comment><USER77> Some things I find useful:

Don't be scared that your skimming over topics - general knowledge is good - just make sure that occasionally you do a deep dive into something - <USER4> some time looking in detail at a ML topic or language feature etc.

A deep dive doesn't need to be long - committing to 15 minutes learning about python lambda functions is time well spent. Those 15 minutes will add up and if you enjoy the topic will inspire you to do more.

Create structured notes on topics, if you read an ML book chapter make a note of the important bits, watch a youtube video write down any things that stuck out with a link, write some code fragments that demonstrate an API.

No one book can teach you a subject (I found this particularly true with ML), If you find yourself loosing interest reading a book/chapter, don't carry on - your probably not learning anything. Find some other resources on the topic and come back to it later (or not)

</comment><comment><USER78> I've tried many, many things, because my main problem is that I'm not passionate enough to learn something on my own.

When you have passion, learning flows freely in your mind, and you don't need much discipline. But when you're not a natural, you need to create passion through discipline.

So far, what's been successful for me is :

1\. Set ONE very specific goal upfront : for instance, "finish this coursera course completely until I get the certification"

2\. Only go through courses that are self-contained, straightforward, and that have at least 60% practice for 40% theory. (youtube videos & books are great when you already have that passion and interest in a subject, but if you don't, you'll just waste your time and energy unless the book is really well written and entertaining)

3\. 20min a day, every day. You can do more, but you cannot do less. Set an alarm clock, turn off notifications, and just go through these 20 minutes, even if you don't make progress

It doesn't matter if you don't make any progress during these 20 minutes : what matters is that you get into a habit. This concept is very well-known : [https://en.wikipedia.org/wiki/Kaizen](https://en.wikipedia.org/wiki/Kaizen) After 3-4 weeks, if you keep at it, you WILL start enjoying it, and you WILL create some passion inside you. When you start enjoying the learning process, you'll start getting your results.

4\. Give yourself some gratification for doing the work : I use the application "way of life" [https://wayoflifeapp.com/](https://wayoflifeapp.com/). Every day when I go through the 20minutes, I mark a green check on the app, and it's sufficient to make me feel good about it. If I don't do the work, I mark a red check, and it makes me feel bad, so I really want to avoid that :)

Good luck !

</comment><comment><USER79> Some things that help me:

1) Echoing what someone has already said, a big key is to do a little each day. Before doing that, I would try to read whole chapters of books at a time and feel overwhelmed. Setting aside 30 minutes each day and sticking to it, even if you feel you have more energy at the end, is the way to go. Progress will be slow, and it'll take you months to read a book. But you'll learn a lot this way, and the sporadic bursts accomplish much less in my experience.

2) When choosing what to read, I tend to go for books that are fundamental. I do ML/stats work, so that tends to be math books on probability, linear algebra, stuff like that. These also tend to be the books that require the greatest mental effort.

3) Watching stuff on YouTube isn't a bad thing! The books I got the most out of were those that also had an online lecture series.

</comment><comment><USER80> My main advice

1\. Start easy.

It's tempting to grab a textbook or video series because it gets good reviews on Amazon or likes on YouTube. That's all good and fine, but it's more important to get a good introduction to the topic. The key here is to get a rhythm going and it's very easy to disrupt your study rhythm if you start too hard. So, much like working out, start out easy, with something you can easily grasp. Moreover, do less than you can. As they say in weightlifting, leave a couple of reps in the tank. Don't go all out as you're running a marathon, not a sprint.

2\. Be consistent

The key to finishing something is to do be consistent. Intense 5-day seminars can work, but you're going to need a very good teacher and have a lot of motivation to get through it. For self-study, consistency is much more important. I would recommend somewhere between 4-10 hours a week. Anything more than that is going to burn you out and anything less and you'll forget previous lessons. 1 hour a day for me on a given subject and taking weekends off works for me. The key is to build up momentum and keep it going.

3\. Power through by stepping back.

There will be sections where you're going to feel lost. You're going to feel frustrated or not know what the text or video is talking about. This is where you need to "deload" a bit. Take a week to review all the material you've learned so far and redo some of the exercises. Everyone has these and the key is to _not_ lose momentum. Many a study has stopped due to one obstacle. The key is to step back for a bit and try again without losing the momentum you've built.

4\. Remove distractions.

Not everyone has the discipline to follow these, and most of the time your brain will try very hard to distract you when you encounter a hard problem. The key is to minimize all your distractions during your study time. This means no email, social media, walks to the fridge or anything else. You start and don't stop until you've finished your hour (or 30 minutes or whatever you committed to). It's okay if you only got through 2 pages during that time as long as you didn't get distracted. Give yourself permission to stall a bit. And if this happens a few times in a row, step back and try again (see 3)

5\. Get a buddy

The best way to study is with someone or some group that's studying the same thing. There are lots of forums for all of those topics that you can engage in to answer some of your questions and possibly find someone to study with. Getting some accountability is an excellent way to keep up your momentum.

</comment><comment><USER81> I was having very similar thoughts to you about a month ago. For me I decided to take a bit more of a "holistic" approach in the sense that I wanted to learn backend development, architecture etc so decided to create a website and set everything up by scratch.

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.

</comment><comment><USER82> About as well as I managed "self-study" in college. Poorly.

However, if covid has done anything it's broken me enough by spending enough time at home to break my bad ADHD fueled habits.

If anyone else has a rigid discipline or advice for how to keep up a streak of improvement I'm all ears!

<comment><USER29> Schedule it, regularly. And actually write it down and mark it on a piece of paper or in your calendar. Then make a check on a whiteboard, or on a desk calendar each day you do it, building a streak you don't want to break.

This has really helped me rein in my focus, at least partially.

</comment></comment><comment><USER83> In order of importance (applicable to physical and mental activity).

1\. [https://www.managementstudyguide.com/goal-setting-theory- mot...](https://www.managementstudyguide.com/goal-setting-theory- motivation.htm)

2\. [https://en.wikipedia.org/wiki/Sports_periodization](https://en.wikipedia.org/wiki/Sports_periodization)

3\. [https://www.sports-training- adviser.com/recoveryprinciple.ht...](https://www.sports-training- adviser.com/recoveryprinciple.html)

4\. [https://positivepsychology.com/positive-self- talk/](https://positivepsychology.com/positive-self-talk/)

</comment><comment><USER84> My thing is similar, there is a lot I want to learn.

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 ;)

</comment><comment><USER85> I am doing something similar, it's not easy.

I am late to the party, but in case this helps, this is what works for me:

First, the most important thing is that you must really, really want it. I don't think that anyone ever got good at something hard that they didn't find interesting, or, if they did, it must have been sheer torture. If this is not the case, the sooner you accept it and move on, the better, to avoid needless suffering and wasting time.

There is no royal road to geometry.

You need a realistic plan, based on what you want when, and then list the prerequisites. Don't forget that you also need breaks and to do other things.

I prefer depth over breadth.

I stick to one course at a time, full inmersion. In my case the best learning happens when meditating for a long time over tricky concepts. This requires focus.

If you find yourself strugling that's ok. Take a step back, take your time, look for alternative material that explains the same concept more slowly, review the prereqs. It is often a sign that you hit something important but difficult. If you clear this hurdle, you will already have an advantage over those that gave up, if it is hard for you the odds are that it is hard for the rest too.

If possible, I try to learn from complete online courses from top universities, with outstanding and charismatic professors giving video lectures and well designed psets, explaining the core concepts extremely well. For instance: 6.042 discrete math with Tom Leighton, 6.006 algorithms with Eric Demaine, 18.06 linear algebra with Gilbert Strang, Machine Learning with Yasser Moustaffa, William Cohen on machine learning from large data sets, systematic program design from Kitzales, etc etc. No videos, but I can't have enough of Stonebraker's readings on databases.

For me learning from such professors makes the whole thing much more enjoyable, an experience to savour, on top of learning loads.

If you want advice on material, tell me what you want to learn, I have surveyed tons of freely available courses.

<comment><USER86> > I prefer depth over breadth. > I stick to one course at a time, full > inmersion.

Oh, the opposite is working for me. I'm learning about three things at the same time. Reasons:

\- Too much time on the same topic and I get tired. For example, I'm learning databases. If I spend one hour per day every day on learning databases, after two months I get bored on the topic. But if I learn databases on Mondays and Fridays, I'm still motivated after several months.

\- Spaced repetition. I'm learning Python, SQL and data science. If I'd spend one year for SQL, one year for Python, and one year for Linear Algebra, on the fourth year I'd forgot SQL :). I prefer to learn a limited set of related things simultaneously. All three are fresh in the fourth year and spaced repetition makes learning more effective.

<comment><USER85> Good point about spaced repitition, wish I had the discipline. I find that if I learned something the way I described above, I can pick it up again easily even if rusty, the moment I read and think again about it, it comes back fast.

</comment></comment></comment><comment><USER87> As you said, you feel overwhelmend. For example,I usually code my side-project in the evening, after 8 hrs of coding at my job.

I have a goal to create working application. Is it a joy for me or just another work that takes my time and gives me nothing? Sometimes, I don't know. I keep working with different technologies, tools so it's not the same as at the job. When i feel, that's not a joy, I am tired or whatever, i don't force myself to do that.

Rather than "learning" programming language, you can write down an idea for the sample app and start working on that. Rather than reading a book, you can watch a video or you can go read outside.

Create schedule, couple hours per week, break your loop.

</comment><comment><USER88> Different things work for different people, but I'll give you my two cents. I got through college entirely through self study.

What works for me is reading a textbook and re-writing out any concept in the textbook in my own words until I understand it. Afterwards I do practice problems or a project to ensure I'm not lying to myself about my understanding.

If I can, I only do one topic until I'm sure I've solidified my knowledge to a sufficient degree that I won't forget it when I shift my main focus to something else.

Lastly but most importantly is be ok with failure. When you fail to learn something, take a break and then come back approaching it from an entirely different angle.

</comment><comment><USER89> I recently written a software for automatic question generation, which I use for learning snippets of text without need to manually create flashcards for say Anki. You can try it here [https://quizrecall.com/personal/](https://quizrecall.com/personal/) and you can read more on the rationale to build this here [https://vaclavkosar.com/2019/11/02/Quizrecall-Learn-any- text...](https://vaclavkosar.com/2019/11/02/Quizrecall-Learn-any-text-with- automatically-generated-quiz.html)

</comment><comment><USER90> First of all accept that there is 100x time more useful knowledge to learn than you have time.

Next prioritize the things that will be the most relevant to your career or or side projects. Specifically focus on the concrete and relevant over the abstract and esoteric. The most useful topics are going to be applied an relevant to your goals. Think how do I use css over theory of design.

It's much easier for your brain to stay focused on items that are immediately relevant. Also focus on marketable projects over knowledge. I took an open source CMS and made the queries 2x as fast is a way better use of time than I red a bunch about Postgres tuning.

</comment><comment><USER91> The tool is called a schedule. You write what you should be doing at that time in the schedule. It does not run your life, instead it is the most optimized use of your time and it's up to you to follow it. After many false starts you will eventually adhere to the schedule, but only if you are truly interested in what you are learning and not learning it because you think you should. My personal method is take something I want to learn, and then all the boring pre-req parts become a research project instead of starting like everybody else does with the boring pre-req parts and failing before you begin.

</comment><comment><USER92> First, watching youtube is great for learning things.

A possibly different perspective. Do things, don't study. Only study if and up to the minimum that you need to accomplish the thing you are doing right now.

I don't study. I don't worry about it. I just learn things I either am passionate about so can't help but study or for my work (including personal work); the thing I need to learn to accomplish my immediate task.

I guess I'm saying don't bother learning things you aren't passionate about or you don't need _right now_.

And only study the thing you most need right now (makes it easy to know what to study next).

</comment><comment><USER93> For me, practical problems always help to study.

For example, right now I'm learning Rust and it's just too much all in all.

But when I try to implement something specific it removes much of the cruft and I can focus on a handful of things.

</comment><comment><USER94> Not sure how helpful this is, but I make a list of all the most pressing things I want to learn and everyday I'll look it over and choose whatever I feel like doing for however long I want.

The point here isn't efficiency, this is basically the bare minimum I think one can do while still learning and making progress, i.e. you don't need to follow a rigorous schedule or cultivate a great deal of self discipline if you enjoy the task. Doing even 20 minutes is always better than nothing at all.

Do this and slowly build up discipline by pairing it up with consistency.

<comment><USER95> I like this. A lot of people underestimate starting small because they want to maximize value generated from the start but really starting small and building up is the way to go.

Might find this: [https://supermemo.guru/wiki/Micro- rules_of_productivity](https://supermemo.guru/wiki/Micro- rules_of_productivity) about micro rules interesting. This also reminds me of atomic habits.

</comment></comment><comment><USER96> Ignore it. There is more to learn than ever can be learned, more to do than can ever be done.

This is not a problem with you, its a problem with how poorly organised your career is. Why do you need to know 30 new things at once?

The internet tries to turn information into water, like a firehose. You gotta turn down the water pressure until its useful and aim it at something that needs doing. Why rupture an organ drinking it all at once or slice a hole down the middle of your established work tools with a high pressure jet?

Theories are tools, add them one by one, so you remember how to use them.

</comment><comment><USER97> This may sound strange but I would recommend practicing lucid dreaming. If you can manage to stay focused and awake in a dream on a regular basis, you'll find that staying focused and awake while not dreaming to be trivial. I was surprised to discover this at first, but it makes sense because it's extremely rewarding to have a good dream. After a while, the line will blur between what is real and not and it won't matter to you if you don't know ML or not because you'll be in control of your inner narrative.

<comment><USER98> Sounds great! Any recommended book/link ?

<comment><USER97> Castaneda is the undisputed authority on the subject of "dreaming". I would recommend you check out r/castaneda; it's a very friendly non-toxic community where you'll get any questions you have answered--but be prepared, it's a mixed bag, you'll see discussions about things among the "advanced" users that will disagree with your reason. I forget which book Carlos dedicated just to detailed discussion of dreaming, but most of them discussed dreaming to some extent. I send my best regards to you on your journey to stay focused!

</comment></comment></comment><comment><USER99> Try to build something. That really forces you to push yourself to make sure you understand something.

And in particular, try to build things that force you do things from first principles vs. using a library.

</comment><comment><USER100> Hi Raph, what's up? When it comes to improving yourself and learning new things, I think attitude is more important than tools. There is only so much you can get out of organizing your goals, resources and time if you overstretch yourself. I have found two techniques useful in terms of focusing my time and energy: Extrapolating from future achievements and elimination.

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.

<comment><USER95> That's an interesting technique for eliminating FOMO, knowing what you need in advance to get to where you want to go so you don't have to worry about shinier things.

Point 2 reminds me of Peter Thiel's power law: [https://supermemo.guru/wiki/Thiel_on_power_law](https://supermemo.guru/wiki/Thiel_on_power_law).

</comment></comment><comment><USER101> > I really struggle to organize a proper study schedule.

I've found that being able to visualize tasks I want to complete and breaking them into small chunks so that I can see progress is what's been helpful. I use a personal Trello board to keep track of reading/studying and notes. Even if it's watching a series of videos on youtube, having them in a checklist and have a clear place to keep notes has keep me more focused and organized over the past few years.

</comment><comment><USER102> Is one of the challenges the fact that you have too many options at your disposal? I've found when I want to learn something I frequently go collect 5-10 books/videos on the subject, but I have a theory that this is opposite of what I should be doing. Instead of collecting lots of different choices (which motivates inefficient switching), I theorize it is more beneficial to choose one path and work on it until it is completed. Then, move on to another.

</comment><comment><USER103> I keep a running categorized list in Apple Notes. Several times a week I will add new items to it. Typically they're links to blogs or YouTube, categorized by tech, leadership, coding, productivity & misc. When I find quiet time, on vacation or during a slow weekend, I'll chip away at the list. It grows faster than I can keep up with...probably not a good sign but beats no list at all.

</comment><comment><USER104> The Khan Academy mobile app is great. I've been doing about 15 minutes of study each morning while doing cardio at the gym (running makes it tough to use your phone, so walk on a steep incline for half hour, or stationary bike).

Basically - build in a little bit of time to do it into your daily routine somehow, and make it a habit. In a year you'll wake up and have made great progress.

</comment><comment><USER105> You need an objective goal. In school you have a nice objective goal of acing a test or whatever. I've found learning stuff just because you want to know it is challenging, and you usually end up with a superficial understanding. Figure out what you want to do with it, then it becomes easier to motivate yourself and gauge your progress.

</comment><comment><USER106> I think best way to stay focused when you are learning some new technology is to do some project that you are interested in and is related to that technology in parallel to learning. I that case you will do something that is also interesting and also practice that new technology. That way of learning helped me a lot.

</comment><comment><USER107> I recommend the book "Ultralearning"^1 for its well-researched insights.

1\. [https://smile.amazon.com/dp/B07K6MF8MD/ref=cm_sw_r_cp_awdb_t...](https://smile.amazon.com/dp/B07K6MF8MD/ref=cm_sw_r_cp_awdb_t1_AKXREbKXYDW9X)

</comment><comment><USER108> Right now I'm trying to leverage all the temporarily free COVID learning courses. Qwiklabs etc.

I do struggle much like you though - there is just way to much stuff catching my interest & I end up getting distracted by another learning opportunity while pursuing a learning opportunity.

</comment><comment><USER50> Also, I think it's highly worth reading [https://chelseatroy.com/2018/04/20/leveling-up-a-guide- for-p...](https://chelseatroy.com/2018/04/20/leveling-up-a-guide-for- programmers/)

</comment><comment><USER109> I recommend getting a good text book and working through that. That gives you a through overview so you don't miss certain areas. I can't recommend any for particular subjects, but make sure you choose wisely. Try to find the one everyone refers to.

</comment><comment><USER110> Find a project that requires skills that you don't have. Complete the project. When you are done you will have the skills.

That is the only way to actually learn. Theoretical knowledge gets you nowhere in the real world. Practical knowledge is where it is all at.

</comment><comment><USER36> I'm late to the party but I just stumbled on something Ursula K. Le Guin said that I think is the perfect answer:

"When action becomes unprofitable, gather information. When gathering information becomes unprofitable, sleep."

</comment><comment><USER111> My two cents:

1\. Have a medium/long term goal, and then structure the topics you want to learn around that.

2\. Plan and execute projects that exercise the topics you want to learn.

If finding the goal (1) is a problem, maybe start with solving _that_ problem.

</comment><comment><USER112> I'm managing a personal backlog of things I want to learn. I'm using notion but Trello or every scrum board model should do the job. Every cared has details and related links

</comment><comment><USER39> It took me years of this cycle before I turned a corner a few weeks ago - <USER5> phrase 'necessity is the mother of invention' became viscerally meaningful, and not just an empty platitude. In the past year or so I would instantly burn out as soon as I tried to push myself for longer than a day or two, because I was right at the edge of overwhelm before I even began.

I realised that it was on me to find the world where I had a forceful, motivating necessity behind me, and the right task in front of me... Otherwise I would simply not do anything at all. And that's a relieving truth, honestly. Be thankful that your brain budgets for you. It's probably a fundamental guard against extremely costly psychological conditions. You can't just induce mania every time you open one of those tutorial bookmarks.

Historically you'd have a child to look after by the age you had both energy and experience, and the ordeal would soak up both and (hopefully) give you a bit of wisdom in return... Millenials and younger are having to shortcut this step to wisdom in a world with incredible uncertainty. The infotainment hurricane inculcates us with FOMO. It's just not the kind of environment that rewards slow, deep, considered, enjoyable, reflective, /focused/ learning. And lets be real, we're in the middle a blooming pandemic.

Accept there are things which are not right for you, and that you might not ever get round to. Realise that your laziness and intuitive preferences keep the world of 'shoulds and oughts' a manageable size. They're also the levers to make it right again, if that world is growing out of control (I analogise them as natural defences against 'cognitive carcinogens').

Imho you don't need any more tools or methodologies, or resources/pdfs/tutorials - you need fewer. Same goes for entertainment. I resolved to stop my obsessive resource hoarding/kleptomania, and to stop spending my life force on stupid smoke and mirrors for my own motivational systems. Seriously, consider reducing your possibilities and spending some time without the Internet every day. It turns out that turning off the info pipes and going to town on deleting most of your local resources/bookmarks is highly relieving, once you're past the initial pain barrier.

All that said, Joplin is really good for notes and tasks - just whatever you do, don't get into Emacs+Org if you have trouble with procrastination (I recommend Doom Emacs + org-roam).

[0] [http://www.aaronsw.com/weblog/dalio](http://www.aaronsw.com/weblog/dalio)

</comment><comment><USER113> It seems like you are anxious about a few things, and this anxiety causes you to procrastinate. I don't know a quick fix but at least you know what's happening.

</comment><comment><USER114> Build things and document everything you do.

Then you know, that the theories you learned about, where not just information adding to a (useful?) pile of information in your head.

</comment><comment><USER115> I struggle with this lack of focus, and overwhelm, as well.

I am reading a book that I'd like to recommend. It's called Deep Work, by Cal Newport.

</comment><comment><USER116> Your problem sounds like some combination of "I don't know what to work on" and "I wish I already knew X."

For the latter problem, unfortunately, there's no royal road to mathematics, as they say. If you want to learn something, you're going to have to put in the time. My biggest advice here is to make sure you're applying the knowledge somehow. If you're studying something but never putting it into practice (and the study is not its own reward), then you're going to be frustrated later when you try to use all of these skills you think you understand. Kent Beck has a good quote about technique and discipline. He says, essentially, no book about gardening, __no matter how good it is, __will make you a gardener. You have to pull some weeds and trim some hedges. Maybe join a community of gardeners and learn about the practice of others. That 's what makes you a gardener. This doesn't apply if you're just learning for the sake of learning, of course, but it sounded to me like you actually wanted to master a technique.

For the latter problem, it sounds like you're finally running into the reality that your time on this earth is a scarce resource. I don't mean that to be condescending; it didn't sink in for me until I was about 30. But the reality is that you won't be able to do everything, and tracking your progress really isn't the problem. You're going to have to choose precisely the things you want to do. But here's the thing: that choice __is not permanent __and almost certainly will not hold over your entire life. I like two quotes by Seneca and Thoreau (respectively) here. Thoreau says that a wise man remembers that the sun rose clear, and Seneca said that each day is a stage upon life 's journey. Those may sound like cliches, but you need to really understand them. Every day you get a fresh start and you get to choose what matters to you. If every day you wake up and decide "I want to know ML mathematics," then by all means do that. Figure out what you already know and what you need to know next. But it's OK if these things change from one day to the next. That's part of the journey of life.

Last but not least, I got some good advice from the books "How to Get Lucky" and "Refuse to Choose." The latter was about imposing some structure on yourself if you truly get stuck deciding in the moment. I don't give myself a hard schedule, but I pick 6-12 things I want to work on (because I'm a person with a lot of natural interests) and I stick to what I'm doing for about 30 minutes. That gives me enough structure to force myself to follow through and not feel like I'm missing out on my other passions. And lastly when I'm really stuck about which thing to do next, I list my options and flip a coin. If you have problems with decisiveness like I do, this sounds stupid but it will move you out of your head and into action. It's a meaningless superstition but it works.

Good luck!

<comment><USER117> This is a great post. Time is limited and you have to make sacrifices somewhere.

</comment></comment><comment><USER118> You have little choice but to stick to a small number of things you have to prioritize out of all the things you want to study.

</comment><comment><USER119> You can read more than one book at a time. Just keep track where you are with a post-it note. It's OKAY.

Take notes online or offline or both. Just write down what you learned in prose and store it in plain text files. Don't worry about organizing it, you can always add a full-text search later (if you wanted everything to be interlinked, google "Sublime Zettelkasten").

Knowledge sticks best if you get practical and use it, too, e.g. by writing some code. But the day has only 24 hours, so you won't be able to try out everything in practice. It's OKAY.

There's no need to finish one thing before starting the next one, but you ought to keep moving forward at least a little bit with each book that you are pursuing, or you'll end up having 25 books with only one chapter read. This is NOT okay, but don't worry - if you notice it, just prevent yourself from letting yourself start a new book as long as k are still unfinished. Don't worry about buying more books than you can read. Always good to have a personal library of good books in case there's a lockdown e.g. due to a pandemic, and it's OKAY to postpone reading them until you have finished the one you are working on right now.

It's a great idea to have a project, and to learn all those things that your project needs (= that you need to complete your project to your satisfaction). This is useful because it delineates what to read/try/master/experiment and where to stop. If you work as a developer or scientist, you normally have one or more projects given to you or self-selected, and focusing on these keeps you grounded and avoids you getting lost. Having a project means you do not just CONSUME knowledge but that you will also PRODUCE something, which gives you fulfilment.

YouTube is a useful supplement and it may speed up your learning, but note that there is a lot of overlap both in books and online. Focusing on one book per topic gives you a sense of where you are (x% complete), which may be helpful for orientation and self-motivation, too. It's OKAY to supplement with additional reading and videos, but I'd suggest stick to one text book as your master source to have that orientation.

Having access to a group of students, e.g. at a university (research group, reading group) or meet-up, is also very helpful to stay motivated. Nothing stops you from forming your own if there isn't one for the topics you care about. Nowadays it could be virtual, too. People in groups can learn based on personal study and then congregate to discuss or they can teach each other different sub-parts of the materials that the group attempts to master.

Best of luck!

</comment><comment><USER120> Coursera dude. If you can't find something on there you don't know already you know enough already.

</comment><comment><USER121> wake up early, like 4:30am and crank out 2 or 3 sprints(25 minute intense study sessions with 5 minute breaks between). Also helps to review before going to sleep so your mind processes the information in your sleep, you will also wake up ready to learn this way.

</comment><comment><USER122> The solution to your problem is very simple to explain but not easy to accomplish.

If you can't read a book then this means that you can't stand yourself. Try to make peace within yourself and persist until you read all the proofs and understand them. Do not turn pages, it is contagious.

And yes, I have PhD in Math.

</comment><comment><USER123> Ooh, Beeminder fits the bill, I think! (I'm a cofounder.)

</comment><comment><USER25> Man, you just summed up my exact struggle as well.

</comment><comment><USER124> Have you thought about hiring a tutor?

</comment><comment><USER125> When I want to learn something I usually do so by doing. I try to set a goal of something I want to achieve. Set up a system with Arch linux with full encryption and LVM was something I wanted to do this weekend. I hadn't used that for a few years. I really struggled getting UEFI to work and I could simply have reverted to MBR/BIOS but I really wanted to figure out why it didn't work. In the end I figured it out, and in addition I learned a whole lot about how UEFI worked on the way there. And LVM and LUKS as well as I screwed a few things up and managed to fix them without reinstalling :P I knew about all these, but not to the depth I do now.

If I'd just ran through the Ubuntu installer I wouldn't have known this. Doing things the hard way is the best for learning. And more rewarding because you get exactly what you want.

I find I pick things up super quickly (at least in the IT realm) so usually I don't do a deep dive until I run into issues. I do try to get a handle on the overall architecture though. So I set things up the right way, and then I figure out the nuts & bolts along the way. I'm not someone for crunching through textbooks.

One thing I personally hate is tutorial videos, especially Youtube. I find them paced way too slow, whereas with text you can be super fast. So I never use video learning until I have to. I absolutely hate the stupid automated courses we have to do in work. Like office safety etc we have to repeat every year. They're really made for the lowest common denominator, which is apparently someone who can't understand more than 10 words per minute :(

And when you're working on something, try to not use youtube, facebook etc. Don't go looking for distraction. Unless you're really banging your head on the wall on a problem, then it may help to do something else for a bit. And try not to ask others if you can't figure something out. If you figure it out yourself it's more rewarding and much more educational and memorable. It also avoids being "that guy" :)

Tracking progress, I can't help with that. I often change my priorities as I go along, leaving stuff half-finished because I found something better or more interesting to do. So be it... I like not having a destination, and having a wide range of knowledge has helped me a lot in my job. What helps is that I live alone and technology is my job and my passion so I'm not struggling for time.

I don't really care if I don't finish something if it turned out it wasn't really what I was looking for, or I found something else that was more interesting. I hate using "methodologies", I always think something that someone else invented can't be perfect for me. I like to make my own way. I do sometimes look at them and pick out bits I like. For this reason I also avoid doing certification trajectories. And also because I think they are too much "the world according to" Microsoft/Cisco/etc. I care about technology, not about one particular company's take on it.

But anyway, don't take my advice for granted. Find out and then do what works for you. That's my #1 bit of advice. Everyone is different. I'm not very typical actually. I have very low discipline but yet I'm actually very effective (including in my job) because I have very deep interest and motivation. What helps me is just not worrying about the things I didn't finish. What's important to me is the journey, not the end result. Even a failed or unfinished project provided lessons along the way.

I really agree with the comment of adamcharnock below who said it should be fun. Absolutely agree. If something is super boring then don't do it unless you absolutely need it for some reason like a better job (but really how much better is it if you're going to be doing something you don't like?)

</comment><comment><USER126> I often feel this way. I think it helps _a lot_ to have an effective task management system.

Why? There is this thing called the Zeigarnik effect. The Zeigarnik effect states that unoccupied tasks tend to overwhelm your conscious thought. When you have too much stuff to do you get overburdened and stressed and start watching Youtube. (I've definitely been there).

How do you deal with the Zeigarnik effect? Well, you can complete the task, but that's often a tall order. There's been research that shows that simply having a plan for how to complete a task helps you overcome the Zeigarnik effect.

How do you make sure you have a plan for all your open tasks/projects? This is where the task management system comes in. I'll tell you a few that I've tried and the software I use.

I think the two biggest systems for managing your todo list are Agile (adapted for personal use) and Getting Things Done (GTD).

I have been using a person Agile system for about two years now. It has definitely helped with stress a lot. I have weekly "sprints" where I plan what I want to do for the week. I review every week - what went well and what can be improved. I have a backlog with all the tasks that I want to work on divided up by projects. I also have a board for projects and what state they're in - TODO, in progess, done.

GTD is another system that I've been meaning to read about. What I know so far is that it's basically a flow chart for each item you have to do. There are lists for items in different categories - projects, backlog, current work.

The key point is that both of these systems _never leave a task incomplete_. By "incomplete", I mean not finished or reviewed. Yes, reviewed. If you recall, these are exactly the two ways of eliminating the Zeigarnik effect and the stress it entails.

Furthermore, with an effective task management system, you gain confidence and momentum in seeing your record of complete projects stack up. (I sometimes scroll back on previous years just for fun).

What about software? I started out using Trello. It's simple, free, and has almost no learning curve. I have a board for my sprint, backlog, and projects. On my sprint board, I have 3 lists - TODO, in progress, and done. At the end of the week, I move the done list to the completed board. Then I have a visual record of everything I've completed over the past year (I make separate completed boards for each year).

However, I've been slowly trying to convert all my stuff to org-mode in Emacs. Look up org-mode if you're unfamiliar with it. It's very popular among GTD enthusiasts.

In short, have a plan for everything you're working on, keep a "scoreboard" or list of things you've accomplished, and review constantly - review each task at the EOD and review on a weekly basis at least.

<comment><USER95> It wouldn't work for all of your tasks but have you tried prioritized tasklist (tasklists assigned a value and a time and then sorted by that). I have ADHD meaning managing doing things is horrible but with prioritized tasklist I can just start at the top and go down during timeslots in the day assigned to finishing tasklist items. If I don't finish low priority things with the time I had it just means they're not important enough (though of course there will be conflict within tasklist if you have tasks that have deadlines or urgencies).

<comment><USER126> That sounds interesting! I'll check it out.

For me, I think the most important thing is simply having a plan and focusing on a few tasks at a time and not worrying about _everything_ to do. It sounds like a prioritized tasklist would be a nice addition to my current workflow. Thanks!

<comment><USER95> This is the one I use in Notion: [https://www.notion.so/71c525aa1d8f41a7bbbe5159807c8d74?v=8ac...](https://www.notion.so/71c525aa1d8f41a7bbbe5159807c8d74?v=8ac04a06d7e24fe9a42acb27f91b8043) It's a bit confusing but it's usable even if you ignore everything to the right of the time column

It's based on the SuperMemo tasklist system which works quite well but is annoying to use when I'm on the go.

</comment></comment></comment></comment><comment><USER95> I have the perfect tool for you if you're willing to suffer through getting used to it: SuperMemo [1]. The basic feature it starts with is spaced repetition [2]. Spaced repetition is good. But terribly boring if you're making cards by hand. Because of that, SuperMemo has a feature that imo is just as important as SRS but much less known: incremental reading [3].

tl;dr of incremental reading: process hundreds of articles in a time efficient manner and enjoyably convert them to active recall items.

For a video on it in action check this [4]

More detail: incremental reading has a lot of parts but probably the most important is the priority queue and the concept of incrementally.

Priority Queue: imagine you had 100 articles to go through. How would you process them efficiently? What if you have 10,000? You can't go through that reasonably. SuperMemo helps you manage that with a priority system which lets you choose what's actually important and what you'll end up seeing more and less often. I can't express just how much this helps. This means I can import as much shiny stuff as I want and be confident I'm not gonna lose out on stuff I actually care about. If you just used priority queue and manually made cards while going through things SM would be a big improvement over standard SRS.

But it has another cool concept: incrementalism. With SuperMemo you don't read through an entire piece of content at once. You read it over time, and make extracts that you break down till you have facts you can memorize with SRS. You might be wondering: if you don't read it all at once won't you forget it? It's the opposite that occurs. By separating reading of an article over time (separated by days) your brain has time to do a bit of memory consolidation and move some of what you read to long-term memory. That means next reread, you can process the article a bit better since you're not taxing WM as much. This might seem minor but it makes a huge difference for comprehension and long-term efficiency. Processing things in bits means when you get board with one article you can go to the next one. I have ADHD which makes this really awesome, it's like Instagram but with text and real learning.

If you're interested in trying it out, let me know. If you have questions about it ask away, this explanation has plenty of gaps. If you have criticisms I'd hold them because imagining SM is nothing like actually trying it.

[1] For a very long, cool introduction you can use this wired article: [https://www.wired.com/2008/04/ff-wozniak/](https://www.wired.com/2008/04/ff- wozniak/)

[2] [https://ncase.me/](https://ncase.me/)

[3] [https://supermemo.guru/wiki/Incremental_reading](https://supermemo.guru/wiki/Incremental_reading)

[4] [https://www.youtube.com/watch?v=DoQoeK53bP8](https://www.youtube.com/watch?v=DoQoeK53bP8)

<comment><USER127> /thread

</comment></comment><comment><USER128> 1- Ask your self, what is the most interesting mini-project that you want to start working on. 2- Review/ study the smallest amount of materials that lead you to start working on it. 3- Work on your project if there is something popping out repeat step 2.

</comment><comment><USER129> You're asking the wrong question and you'll get 1001 shitty opinions for it.

There is no methodology for how to waste your life better - you haven't mentioned your goal a single time. Learning without a goal is for idiots and public education, created by idiots for idiots.

Figure out what problem you want to solve in this world, in this short lifetime you have. Specializing in a field and doing something worthwhile will take at least 10 years, so assuming you're in your 20s, you have one or two chances to do something worthwhile in your lifetime before you're old and finished (everyone after 40).

One more thing - you have 2-4 hours of actual brain-activity in you, so do the napkin math, you have far less time to do real brain-stuff than you think, because you'll have to work for a living and most work demands you spend your brain-activity on stupid worthless shit such as building websites or another phone app that does the same thing 10 other apps do.

Knowing that, your #1 goal should be avoiding that scenario at all costs. That likely involves attending a highly ranked University to increase your chances of getting to work on research. Knowing that, there should be no time left to self study and your original question becomes meaningless.

<comment><USER130> Couldn't disagree with this more strongly. You __can __have a goal. It 's good to think about them. But some of the most innovative theorizing in history was done by people with no thought about the practical goal in mind. Studying something simply because it's interesting to you is a valid choice. But you do need to be aware that that's what you're doing, and not expect some reward to materialize other than the knowledge itself. "Why Greatness Cannot Be Planned" is a very good book on this topic.</comment></comment>