Hacker Newsnew | comments | show | ask | jobs | submit login
Ask HN: learn cpp the hard way
2 points by _nato_ 1075 days ago | 8 comments
My wife is taking the plunge with cpp and I was surprised that the learncthehardway guys do not have cpp. Should she get started with that or can someone point me in a new direction? Free, excellent, and online are our constraints.



Assuming you are talking about C++, there is no need for your wife to learn C in order to learn C++.

C and C++ are different languages today, while it is still possible to write C code in C++, it is not recommended.

Last year C++ was "upgraded" with a new standard C++11. If you want to learn modern C++ you will have to use a variety of websites. There is no good beginner C++11 book available for now.

A few useful blogs with C++11 material:

http://herbsutter.com/elements-of-modern-c-style/

http://www2.research.att.com/~bs/C++0xFAQ.html

http://solarianprogrammer.com/categories/C++11

http://bartoszmilewski.com/

A good book about C++ is:

http://www.amazon.com/Primer-4th-Edition-Stanley-Lippman/dp/...

but I would wait for the 5th edition for learning C++11.

If your wife knows nothing about programming I suggest to learn a language like Python or Ruby first ... C++ is not suitable for a beginners.

-----


Thanks so much!

-----


I would start with "learn c the hard way" and when she is confortable, go for c++. c++ has some idiosyncrasies as a high level language that are better understood from a c point of view.

As a casual c programmer, I've found this "c to c++" tutorial very useful:

http://www.4p8.com/eric.brasseur/cppcen.html

It now appears to be offline, so here is the cached version:

http://webcache.googleusercontent.com/search?q=cache:http://...

-----


Modern C++ does not have much in common with C. Today C and C++ are very different languages. You don't need to learn C in order to understand C++, quite the opposite ... If you start from C you will write C in C++ which is not recommended at all.

-----


OTOH, 'Modern C++' does not have much in common with Real World C++.

-----


I appreciate the links. I will pass them along.

-----


Do not learn C or C++ as a first language. Zed Shaw says it himself in the introduction to LCTHW. Start off with an easier language like Ruby or Python to be able to grasp the concepts. Learn the Hard Way series are available for both as is tons of online documentation and classes at places like udacity.com.

-----


Why does she want to learn C++? What does she want to achieve in the end?

-----




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact

Search: