@Daniel Duffy: note the distinction

-
PPP: Programming -- Principles and Practice Using C++ (2nd Edition)
-
TC++PL: The C++ Programming Language (4th Edition)
I think you may be talking about TC++PL in #5 (and, as
@bigbadwolf notes -- rightly so, IMHO -- opinions vary).
In any case, I'm talking about PPP -- which has
specifically been designed for (and successfully used with) beginners.
Asking about experience reports is in fact an
excellent question!
I wish these would accompany every book recommendation, that would lead to far more concrete and evidence-based discussion.
Here's one for PPP:
"I wrote an academic paper to explain the role of the book (and the course based on it) in a more complete education: Programming in an undergraduate CS curriculum. WCCCE'09."
(PDF)
http://www.stroustrup.com/software.pdf
In particular, take a look at Section 6, "The introductory programming class".
Bjarne is one of the (sadly) few programming authors who actually happens to have an in-depth practical experience in this area, backed with informative writing that also demonstrates he's given this much thought. In particular, I found these quite insightful:
-
PPP Instructor's Guide (Instructor’s Guide for Programming Principles and Practice using
C++)
- B. Stroustrup:
What should we teach software developers? Why? CACM. January 2010
- B. Stroustrup:
Learning Standard C++ as a New Language. C/
C++ Users Journal. pp 43-54. May 1999
Last but not least, regarding the adoption, here's a fraction off the top of my head:
- Asio:
http://think-async.com/Asio/AsioStandalone // "When using a C++11 compiler, most of Asio may now be used without a dependency on Boost header files or libraries."
- Adobe: Adobe Source Libraries have been updated to C++11
since 2013
- BitTorrent, Inc.:
http://blog.bittorrent.com/2014/03/26/tech-talks-c-in-the-21st-century/
- Facebook:
https://github.com/facebook // most if not all open-source
C++ projects are now C++11
- Microsoft: similarly, recently released
C++ open-source projects require C++11, e.g.,
http://casablanca.codeplex.com/
- Qt5:
http://woboq.com/blog/cpp11-in-qt5.html
A relatively recent example is LLVM:
Ending out February, compiler developer Chandler Carruth at Google flipped the upstream LLVM build systems to building under C++11 by default. So far nothing has broken and in the days ahead they will carry out more tests in their approach to now using C++11 features by default as they develop this leading compiler infrastructure.
LLVM/Clang for a few releases has supported C++11 but the compiler code itself has been written in C++98. However, it was agreed upon following the most recent LLVM/Clang 3.4 release that the compiler developers themselves would be free to rely upon C++11 features.
LLVM developers for a few times have been
after using C++11 functionality but now for the LLVM 3.5 release cycle they have finally agreed to allow it now that C++11 support is widespread enough upstream for supporting it as the host compiler. This C++11 usage is just not for LLVM itself but also Clang and other LLVM sub-projects where they're free to write C++11 code, albeit it's a targeted subset of C++11 for broad compatibility.
Source: "LLVM Leaps Ahead With Its Migration To C++11"
HTH!
