Hey Veeky Forums

Hey Veeky Forums,

Was looking to start programming and decided on C++. I was trying to find the best way to learn it, but then heard all online resources are shit. I heard textbooks were better.

Anyways, what is the best method? Any recommended material? Thanks.

Other urls found in this thread:

Veeky
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list
twitter.com/SFWRedditVideos

The C++ Programming Language by Bjarne Stroustrup

Veeky Forums-science.wikia.com/wiki/Computer_Science_and_Engineering#Basic_Programming_.26_Data_Structures

C++ for mathematicians (Rafael Witten).

PHENOTYPE

Learn what is specific to the programming projects you need to do. That's what I did. I'll never get that 11 months of my life back.

The best way to learn a programming language is to mess around with it. However, it's easy to go down the rabbit hole with C++.
Also learn the Standard library.

However C++ being C++ it has some quirks. So it's best to read up some books.
We also used pic related in my classes.

Why have you decided on c++? Just wondering...

Because I want to find a job.

OP here, not me lmao

Have you programmed in any language before?

Nope. First time ever.

learn python or javascript or something first. learn how to get shit done, then dive into the nitty gritty details of memory management and pointers. Honestly, I've met a lot of people who tried to learn programming by starting with a C-like language and end up bogged down in the technicality of it. these days you really don't need to know that shit to be an effective programmer.
Of course, all the most elite, high-calibur, top-tier excellent programmers know exactly how to insert x64 asm into their code and building a domain specific language on the fly, but you aren't that. Focus on one step at a time and let your interest guide you. You'll end up digging into that shit no matter what anyway, it's unavoidable.

I would check out this link
stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list

It's a sad state of affairs when people associate knowing x86 or x64 instructions with being some magical expert programmer. Everyone beyond beginner level should have some basic understanding of what happens at a register and instruction set level when you add some integers, call a function, etc.

Not that OP should worry about this for now, but remembering that your code is running on a real piece of hardware and not in some magic abstraction ether is important in the long run.

>javascript

The is that way. Stay there and don't come back.

I never meant to discount the importance of that knowledge. Its certainly essential to a CS or CE degree. But for user on Veeky Forums who wants to do shit, you really don't need to know any of that to do what you want any more. It might seem like a sad reality, but reality it is.

javascript is still a relevant language to learn and there are lots of good online resources for practicing an applying what you know in really interesting ways. It's shit for anyone who's trying to sell something unless it's on the internet and the market is not the west, but who the fuck cares? Most of the world learns on it, it's fucking ubiquitous. It's a great language to learn on, and the same argument applies to python.

Funnily enough I just took a class on Computer Organization which broke down the different layers of computing, going all the way down to registers and how programming worked on the lowest level of computing by taking things in and out of registers and in and out of memory and throwing them together.

It was all really neat stuff outside of learning how to program using a simulation of the Pep 8 CPU using binary.

I was surprised how much easier assembly instructions were in comparison too compared to learning how to use binary.

Pick a project and start coding. Look things up on stack overflow, etc. As you go. It's what everyone does. Fake it until you make it.

Learn C#, bro. C++ to C# is equivalent to standard transmission to automatic, revolver to automatic pistols, cats to dogs.