Ask HN: What is the hardest part of self-learning?

37 points by gavribirnbaum ↗ HN
I had to face many challenges as a self-learner. Finding the right things to learn, motivation, etc. What is for you the biggest challenge of being self-taught?

58 comments

[ 2.6 ms ] story [ 105 ms ] thread
Cost of new books. I usually need to see a tiny passage in a new book (I constantly monitor the internet for new releases) and am not willing to buy a book just for that.
Which field are you looking at? On the topics that I've been interested in - programming, math, statistics, ML - there many really good books that are completely free.
Not being able to ask abstract conceptual questions of a book or website or etc.

Personally I'm a more visual learner and often while a book is busy with text syntax or misc details I will think I'm putting together a better understanding of what is happening / how things work....but the book goes on with details and I lose focus / get frustrated.

I so badly want to ask "Wait if a does b does that mean x is acting like this or that!?!?"

I didn’t see many challenges, except for a steep learning curve. Got hired as a junior, while having less knowledge in various subjects than uni graduates, I faster learnt and became productive in the tasks that we manage. Some even failed to meet the requirements since they focused too much on the theory and never got to the stage to actually apply it.

It may have been to my advantage that my senior peers quit & went on parental leave for months leaving me alone within the environments that I’m responsible for after only 8 months. Making it even steeper but also forcing me to apply the changes that I saw correct

Observing oneself without distortion
For me, it is knowing (or more accurately recognizing) when I'm going down the wrong path. Sometimes this is, of course, part of learning and sometimes it is a waste of time.

One thing great about the Internet and places like S.O. or H.N. or search engines, as well as other subject specific sites is it is much easier to find subject matter experts when you get stuck.

Structure: figuring out which of dozens to thousands of resources to consume, and in what order. Consistently devoting time to it.
Definitely agree. Finding a good starting point is equally difficult.
As few others have said, for me it is structuring my learning to get to the end goal. Say I want to build a website or any other idea, I need to destructure things I need to learn in order to build this idea.

Currently I use Trello for this: https://trello.com/b/cu32qF3q

In future I want to build a website ala Goodreads/Google/Roadmap that lets you craft optimized learning paths for creating any idea. Sad this doesn't exist yet.

https://docs.learn-anything.org/roadmap

https://roadmap.sh

Yeah, I like that idea. It’d be cool to have tests to ensure that you know enough about X to be able to apply it to Y effectively.

Also, maybe you should checkout Notion if you didn’t give it a try already.

I don't mean to sell you anything, but we are actually building exactly a website to let you organize and set goals on learning paths. If you want you can check it out at https://barbra.io
Looks nice. Excited to see someone working in this direction.
Clicking on "Get early access" doesn't do anything in Firefox 72.0.2 on Windows 10. The following is printed to the console instead: "TypeError: window.VL is undefined"

I also tried signing up in Chrome (v79) and while the pop-up opens, the signup request fails with with "Access to XMLHttpRequest at 'https://app.viral-loops.com/api/v2/events' from origin 'https://barbra.io' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource."

Hope you can get those issues sorted out, I'd really like to give it a try :)

Hi, thanks for letting me know. I wonder why that is. Can you shoot me an email to gabriel@barbra.io? I'll make sure to move you up the line :) sorry for the trouble. Would love to have your feedback.
Unfortunately I don't really have anything constructive to add at this point because the signup isn't working on any browser or device I've tried so far (all combinations of FF/Chrome on Linux/Windows/Android)
No one to easily ask questions about the materials you are reading.
Solitude. Then, I'd say acceptance from friends/family, followed by a good routine.

I've tried learning alone, but after 6 - 12 months it becomes really difficult. Being around a self-learning community daily makes a world of difference, I'm about to start my fourth year and I'm loving it.

Being part of a program also reduces societal pressure. Any program really, just to be able to give a simple answer when people ask you what you are doing. Otherwise, it's easy to be met with doubt and cynical questions.

Lastly routine, I see self-learning as a day job. You want to clock N hours per day and don't spend any time procrastinating. I've been building habits for 5-10 years, and I'm reaching a point where I can be productive, but it takes time and patience.

Would you mind elaborating on “self-learning community”?
The ones I've found most effective are schools for autodidacts (40-50 around the world), most of them are part of the 42 school network (I'm at the one in Paris), but there's also Holberton School and Epitech. Then, I'd say hackerspaces or playful/collaborative co-working spaces.
i think there is too much information out there as far as im concerned. I dont even know where to begin sometimes because the advice pulls in every direction. There was an article about prisoners learning coding and some commenter said that they had come up with their own solutions to popular libraries just because those libraries were out of reach at the time of learning. The experience allowed them to learn intricate details and rely more on intuition rather than online advice exchanges. anyhow, i think i know my problem and what i need to do but im still stuck in that loop where im always looking for the BEST resource to learn something new.
I feel this broadly reflects what social media has introduced: the mass creation and proliferation of knowledge. Data, theories, heuristics, schools of thought - sometimes convergent, sometimes divergent.

But without "canonical" sources like we used to have (even if they weren't perfectly accurate), it makes it much harder to ascertain the quality of any particular source of information.

Federated knowledge is great for innovation, but less so for learning.

This used to be me. Now I don’t care, I follow the text set by the lecturer. Look up a uni you respect and see if they have a course on the topic you are interested in, then find their recommended reading.

In addition, if you don’t like the text don’t be afraid to change. But if it’s working don’t worry about something better. Just get the content done, you will be in a better position to appreciate if something else is better then.

Unknown unknowns.
What do you mean?
I think it means not knowing what you don't know - i.e. Not just being unaware of a particular bit of knowledge, but actually that that area even exists at all. I've had a few moments when this kind of thing had become apparent, and then there's a whole new area that you never knew existed to be aware of.
Right. This is where a teacher or mentor can really speed things along by being able to hear you want to achieve X, and suggest you study the fields of Y and Z.

Ed: and beyond simply pointing out areas the student isn't aware of, also suggesting connections between fields - like linguistics and computer science, for example.

The constant fear that I missed a force multiplier early on.

It's like a stalking mission in LA Noire where I spent hours on a mission having not realised there was a car for me to use at the very start.

More practically: thank God someone was there to introduce me to an IDE and code discovery autocomplete when I was just learning programming for the first time.

Knowing when you've actually, deeply learned something.

I've lost count of the number of times I've read a chapter in a book, felt I understood the material very well, but utterly and completely failed to reproduce anything when you take the book away and replace it with a blank piece of paper (or IDE).

Usually you can tell that you've failed to internalize everything when you try to teach it to someone else. You become aware pretty quickly where the gaps are. If you're on your own, though, it requires a lot more discipline.

Do you have any process to try to internalize learnings better?
Practice. That means both doing problem sets and teaching others (or thinking through the content as if you are teaching, so ask lots of questions and think about how the concepts fit into other ideas).

At the moment I’m working through CLRS intro to algorithms. There’s some math in there and derivations. I tend to run through the derivations separately while I’m working through the content to really internalise them (and I just enjoy the math). The author is nice enough to provide extensive problems to solve too.

Similar can be said of The Art of Programming. Plenty of maths in there to follow along with and plenty of problems to solve.

In addition, don’t be afraid of revisiting content. If you read over a text once but don’t fully internalise it, you hopefully have gained enough knowledge to have an idea of when it might be useful to you. So when you’re working, go back to the text and read through what’s useful and implement that.

Same for me - this can be called the "Illusion of Competence" and is discussed by Barbara Oakley in her book "Learning How to Learn."
On average, most forget about 50% of what they've read after 1 hour, and only remember 2% after a week.

It sounds like your problem has more to do with retrieval. You _learn_ something when you retrieve something from your working memory or long-term memory (you build myelin, a fatty substance that isolates your synapses, which enables you to later retrieve the information).

The optimal way to learn is to use spaced repetition. It naturally happens if you apply the knowledge frequently, or you can use a flashcard app to track it.

If you struggle to _understand_ something, it often has to do with overwhelming your working memory. You are connecting several concepts that you don't understand. On average, most can keep seven items in their working memory, but after that, you'll start feeling lost.

When you internalize a few concepts by retrieving them, followed by a long break or sleep, you free your working memory to connect more concepts.

You don't internalize concepts by retrieving them from memory, you internalize concepts by reconstructing them without aids like flash cards. Otherwise you just connect the words and not the concepts.
Spaced repetition in form of testing yourself. Anki and other software help with this.
The best way to learn concepts is to first forget them and then reconstruct the facts based on previous knowledge. Spaced repetition actively hinders this process by trying to ensure that you don't forget. It is great for shallow knowledge like language, but if you are doing it for maths or programming you are just hurting yourself. That type of training is how you get people who can talk like a champ but can't even solve fizzbuzz.
Motivation for sure. It’s easy to self-learn on topics that really interest you. The hard part is to learn those topics that don’t interest you (and may be very tedious and/or frustrating) but are crucial as a foundation for the topics that do.
I’d say that it is mostly a matter of self-discipline rather than motivation, at least for me.
I found by going back to uni I have been forced to learn a lot of things which I wouldn’t have taken the time to look at before. And they are actually really interesting and useful!
Lack of mentorship.

I'm still a self learner and going forward without proper guidance doesn't really help.

Things go much faster whenever there is someone there to help if not much but just to show a way.

For me it is getting distracted with other cool things I would like to learn.
Finding good sources. I constantly have to do my best to figure out if a source is credible when learning something in an unfamiliar field. Has this statement been disproven? Is this an opinion or a fact? Will following this idea bear fruit?
Relatedly: knowing what it is that you don't know.

If you're self-learning, you need to pick what you're going to learn from. Which means, ultimately, you need to pick what you will learn. If you don't know what it is (or what it's called), that can be very difficult.

Anecdote: I have zero background in graphics, but found myself needing to do some image processing. I spent about a couple days learning what I could about the problem space and deriving then writing an algorithm. It worked pretty well and I felt very clever about myself. A few days later I ended up googling part of the algorithm I wrote to try to better understand some edge cases. I ended up on Wikipedia staring at the algorithm I had written, only better, and simpler, and faster, and followed by a few paragraphs entitled "how to derive this algorithm from first principles". It was amazing, but I felt decidedly less clever about myself.

People say that in the age of the Internet, being taught this stuff isn't terribly important because you can just look things up. A caveat is you need to know what something is called to look it up. I've come to the opinion that a big portion of the value of higher education comes from being familiarized with solved problems and their names by someone who (hopefully) knows what you'll most likely want to use at some point.

Excellent points. For more established fields this is where textbooks are really useful. Plus, university course syllabi/recommended reading can be a nice way to find useful content in the field.

For less established fields I’d be looking for review articles.

For me, it’s not knowing how far off the beginning is from an actionable amount of knowledge. Robotics is interesting, drones seem cool, neurology is fascinating, I’d love to get into biotech, etc. but do I have 3 years of self study before I can do or understand any of the interesting parts? Not really.
I did take a gap year to improve myself and my technical skills.

I rewrote my study plan at least 10 times.

Other than the self-discipline needed to sit down and study, it is hard to ignore the noise of contrasting opinions from Reddit, Hacker News and the rest of the Internet.

Recalling, make sure to do lots of practice for the theory.
Sticking with it. A lot of this other stuff is about doing it at all, which isn't toooo easy, but however you do it, self learning is way harder than organized learning if you want to do more than like a week of it. If you want to reeeeally learn something for like 100+ hurs worth of learning, it's damned harder than spending 5-20 hours of "ooh exciting!" diving in.
Having the right resources available in a structured manner, and as a novice knowing which source or information is reliable.

There have been countless times where I've come to resent my initial source after a few months of digging deeper on the subject just because they've positioned themselves as an authority without the ability to properly teach.

Depending on the material, understanding root concepts and knowledge must come before using it is needed more than just starting to play around and hoping it comes to you.

Self directed learning requires enough patience to recognize the best approach to learning it for you.

For me, actually practicing what I read is more difficult than understanding the content.
I find practicing is key to truly understanding the content. When I find the practicing difficult, it means I don’t fully appreciate what I read. The process of practice and reading other sources to try and wrap my head around a concept is where I really learn.
- too many poorly-formed opinions providing hard and fast rules about what other people should do without any consideration of the spectrum of situations and abilities

- knowing what there is to learn within any topic and what order you should tackle things

- whether advice about what to learn in some topic, how, and in what order is any good or not

- when to quit or stick when a certain approach doesn't seem to work

- how to test your learning, and how to assess your efficiency

- how to sustain motivation while playing the 'teacher' (i.e. co-ordinator) role when you'd rather learn, and the 'learner' role when you'd rather teach.

- how not to make certain important things be associated with pain and boredom, when approaching them in a free, open, playful mode would make them stick much better

- how to avoid or undo damaging perfectionism about resources and approach and personal standards for outcome and ability

---

Self-learning is extremely difficult and I don't advise it to anyone, although I wouldn't discourage trying it either.

The traditional didactic models you already know are the best. The problem is getting the right people to teach the right subjects, and ensuring free and open access for all people of all ages.

Ultimately effective self-teaching tends to mean you implement the classical methods but in non-traditional formats.

I find it's usually only those with top percentile proclivity or motivation for a given subject can sit down with a textbook and notebook/repl and absorb information as effectively as the rest of us would with a good teacher and engaged classmates.

If you're like me and you're unable to go to Uni but want to self-teach programming/CS, learn the minimum required to get into a related apprenticeship-style position and throw yourself into it.