How to learn c++ libraries?

Am I the only one that finds it extremely boring watching youtube tutorials on how to code? I personally find it more satisfactory and fun to acquire the knowledge to develop my own writing style and syntax through reading as opposed to following in others footsteps. Problem is, some books and documentary is written in a really clumsy way that makes it hard to understand, particularly the MSDN WINAPI library reference.

I just feel like watching tutorials on youtube is the easy way out, like if there's no "pain" there's no gain. You HAVE to read to get a deeper understanding of something, right? I mean where would all the people making the video tutorials else have gotten their knowledge from?

So how do you guys go about learning a whole new library? Because it's so tempting to just go look up tutorials on youtube, yet it's such a counter productive thing to do. Since you lock yourself up on being dependent on their tutorials, which means you'll never be able to write anything new and innovative yourself. The only way you can achieve that is by reading, right?


I don't understand much of the advanced stuff in books, that's when I seek to tutorials on youtube, but still, then I, in way, don't learn anything other than copying. Also books can get tedious and boring, what I really want is to just start a project and learn by doing, yet when I decide to do that, I don't know where to start. So what's the best way of learning something you wish to do...

Should I quit programming? Does it sound like I have enough interest to even do it? I mean the thought of creating a project of your own thrills me, but the patience to understand something advanced and connect it together by searching through google results in lack of motivation from my side.

Could it be that jumping into low level programming such as the WINAPI and writing/manipulating memory and processes is too early?
Last edited on
Problem is, some books and documentary is written in a really clumsy way that makes it hard to understand, particularly the MSDN WINAPI library reference.
If you think the MSDN is poorly-written, I suggest you never read any library references again.
For examples of software projects with actually bad documentation, see: LLVM and FFmpeg (fast-changing codebases where any attempts at documentation quickly become outdated; most functions only get a Doxygen stub), NGit (no documentation, only unit tests), Nanojit (all documentation amounts to a brief example. Even figuring out how to build is left as an exercise to the reader).

So how do you guys go about learning a whole new library?
You don't, for the most part. The best way to use a library is to encapsulate its functionality inside your own classes so you have to directly interact with it as little as possible. You write that initial implementation by keeping the reference (assuming there is one and it's any good; see previous paragraph) at hand. That's about it.
Just stick to whatever level you are capable of. If you want to do advanced stuff you need to have an advanced education in computer science and math. You can do somethings like 3D graphics using a library without understanding how it actually works by using tools (not c++) written by advanced programmers. C++ may not be the best language for you as it is really low level compared with specialised programming tools or other easy to use languages like Visual Basic or Python which are two popular high level languages.
Topic archived. No new replies allowed.