

Ask HN: learn cpp the hard way - _nato_

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.
======
octopus
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/...](http://www.amazon.com/Primer-4th-Edition-Stanley-
Lippman/dp/0201721481/ref=sr_1_2?s=books&ie=UTF8&qid=1338045470&sr=1-2)

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.

~~~
_nato_
Thanks so much!

------
gosub
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://...](http://webcache.googleusercontent.com/search?q=cache:http://www.4p8.com/eric.brasseur/cppcen.html)

~~~
octopus
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.

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

------
GFKjunior
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.

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

