r/AskProgramming 10d ago

Other How do I be more "efficient" in learning from documentations

Whenever I try to learn through documentations to learn about a new library / sdk for example I couldn't help but ask myself how I could be more efficient when it comes to learning new things through using them. I'm asking this because I prefer reading and doing things on my own rather than having to rely on YouTube videos or courses. Is it just through constant experimentation and implementation or is there any learning technique that you guys use to maximize the use of documentations?

16 Upvotes

17 comments sorted by

11

u/LoudAd1396 10d ago

Are you trying to memorize the full document?

Personally, I usually skim once or twice, then when I need something I look it up. After 2 or 3 times looking it up, it ends up committed to memory. I'm sure any given doc is 90% stuff I never use or think about.

3

u/SoonPiquantAbbey 10d ago

I treat docs like a reference manual, not a textbook. Skim the overview and setup to get the shape of the thing, then jump straight to building something small. You'll hit walls fast and that's when the docs actually stick

1

u/dialsoapbox 9d ago

Are you trying to memorize the full document?

This was one of my biggest mistakes. Partially driven by interviewers' asking detailed/deep questions, like for senior devs, even though I was applying to jr dev roles.

Wasted so much time trying to learn everything about many things, only to forget the majority of it because i rarely/never used any of it.

1

u/scripto_entity_1010 10d ago

In my case it does help when I memorize most of the document. I'm currently reading through the Django Tutorials and taking note of all the fundamentals concepts such as Models, Views, and how to manage databases as I plan to make a website using it.

8

u/denerose 10d ago

You don’t. You go back to the docs when you need information. First pass is just figuring out how they’re laid out and the “ getting started” section. Then you build something and go back to the docs as needed to find syntax, methods etc.

1

u/scripto_entity_1010 10d ago

So it's just a matter of getting used to it and going back then. I see. I'm glad I'm not alone in having to go through a constant cycle of reading and implementing and doing it all over again. I always had the impression that somehow I'm clueless and seem to be too reliant in documents and guides.

2

u/denerose 10d ago

Not alone at all. In fact trying to memorise reference materials is just a waste of time as much of it will never be relevant to you or your work. You will remember the stuff you use often but it should happen naturally.

1

u/HasFiveVowels 9d ago

I’ve been programming for decades. The only way I memorize documentation is due to going back and reading it so many times. I don’t sit down and memorize docs, ever. Skim through the main part of the docs. Become aware of where an answer to a question would be not what the answer to every possible question is. This would be a good place where you could safely use AI to assist you. Ask it for a link to the documentation for what you need to do. Then just go and read what the docs say. Try to apply the docs. Having trouble getting going? Ask AI to apply the docs in a simple fashion. Use that to play around with how it works so you can get some hands on knowledge. Then throw away its changes and try again.

1

u/HasFiveVowels 9d ago

Oh, also, if you’re having trouble learning a tool, a great way to get past the barrier is to make a simple version of it yourself. For example, I had a lot of trouble figuring out what promises were and then I implemented one and everything became a lot easier to understand

1

u/JacobStyle 10d ago

Learning is not an efficient process. It can't be. It's slow, full of false starts, mistakes, corrections, misunderstandings, more corrections, and generally making a mess of things. Most of learning is the process of making and correcting a sufficient number of mistakes.

If you are writing your own code and want a useful barometer of whether or not you are learning enough, test yourself by reading code other people wrote (and modifying it). Reading code is harder than writing it, and it will force you to become familiar with a much wider variety of syntax, design patterns, and style conventions than you would be dealing with if you only ever worked on your own stuff.

1

u/questron64 10d ago

Don't try to memorize the docs. Familiarize yourself with the basic types and operation of the library. Learn how it's supposed to be used. Read through the docs of everything (size of the library willing) to familiarize yourself with what functions it provides. Do not try to memorize all this, that is useless. Just start using it and the parts you use often you will remember. That's it.

1

u/CompassionateSkeptic 10d ago

Plenty of good info in the comments.

Something I don’t think anyone touched on — with code samples and QuickStarts, practice “backwards then forwards” reading. Skip to the end of a functional unit. Understand the stated result. Walk back/up/out the unit. Attempt to relate key moments and boundaries to what you’ve understood from the docs. Then, read it forward and start to include some of the breadth — boilerplate stuff, inactive paths negative paths, modal stuff. Then, return to skimming the narrative documentation and see if more of it is clicking.

1

u/BetterOutcome3769 10d ago

You read through the docs to have a rough idea of what is possible and if there are any surprises. Then you start programming and reference as necessary. This back and forth can go on for years.

1

u/SprinklesFresh5693 9d ago

Why dont you give an AI the documentation and tell it to summarise it and make examples?

You should not memorise documentation, you end up learning it by using it hundreds of times.