After approximately a decade in the wilderness (a.k.a. embedded development), I now find myself doing systems and server programming at my day job. A decision has been made to go with C++11 and Boost for the current project.
Man, I feel like a n00b. It doesn't help that my prior C++ experience was over a decade ago. Not only do a lot of the new C++11 language (and standard library) features (not to mention Boost) look and feel somewhat alien; I'm a little bit rusty with the language overall.
Anyhow, I'm getting back up to speed by writing and running little test programs on my laptop while I'm commuting (I take public transit), to help me understand the new language features and the Boost libraries. So far I (mostly) like what I'm seeing, but I do have one complaint: Boost's heavy use of nested templates and scopes makes for some rather difficult-to-decipher error messages from the compiler when you do something wrong. On some of my little exercises, decoding the compiler errors has taken longer than writing the actual code.
For those unfamiliar with Boost, it's a large collection of portable C++ utility libraries, across a wide range of application domains. It seems to have evolved into a sort of incubator, with some of the Boost libraries becoming candidates for inclusion in the C++ standard runtime library.
And what would we do without Stack Overflow? It's amazing how Stack Overflow (founded 7 years ago) and Slack (a mere 2 years old) have become such integral parts of being a developer.