Friday, January 30, 2015

EMC++ Sample Content

O'Reilly has decided it's time to turn up the heat on the grand Effective Modern C++ marketing campaign. A key component of that campaign is giving away excerpts of the book, the idea being that if you like the stuff we give away, you're more likely to plunk down some cash for the rest of the book.

We're starting with Chapter 1 ("Deducing Types"), which consists of these Items:
Item 1: Understand template type deduction.
Item 2: Understand auto type deduction.
Item 3: Understand decltype.
Item 4: Know how to view deduced types.
To download this free sample, visit the freshly-minted landing page that O'Reilly has set up for it.

This material has actually been available at the book's web site for some time, but there, it's available only as PDF. Now we're making it available in all the digital formats in which the book is published: PDF, ePub, and Mobi. This means you can see how the book will look on your digital device of choice. On some devices, there are some display issues (dutifully chronicled as part of the book's errata list), but we're working on those, and we remain committed to producing a book that looks as good as possible on all platforms we support. As we resolve problems, we update the digital files and make them available to everybody who has purchased them.

We plan to release additional book excerpts according to the following schedule:
  • Week of February 9: Item 7: Distinguish between () and {} when creating objects.
  • Week of February 23: Item 14: Declare functions noexcept if they won’t emit exceptions.
  • Week of March 9: Item 42: Consider emplacement instead of insertion.
Sometime in March, we're also planning to have me do a live webcast covering some of the material in the book. The date and the material are yet undecided. If you'd like to participate in the decision process, feel free to let me know what Item(s) you'd like to hear me walk you through during the webcast. I will consider your suggestions carefully before doing whatever I want :-)

Enjoy the sample material from Effective Modern C++!


PS - Currently, the O'Reilly web site lists the print version of EMC++ as out of stock and due to be available in 2025. I'm guessing--hoping!--that the due date is a typo, but the book is in stock and available for your immediate purchase at Amazon and elsewhere.

50% off EMC++ eBook due to O'Reilly's "Best of January" Promotion

If you'll pardon my bragging a bit, Effective Modern C++ has recently nudged David Pogue's OS X Yosemite: The Missing Manual aside to retake the #1 position on O'Reilly's bestseller list. As such, it qualifies for O'Reilly's "Best of January" promotion, whereby they offer a discount code good for 50% off their 10 best-selling videos and 10 best-selling ebooks. The discount code in question is DEAL.

Despite the "One Day Only" bannerette on the promotion page, the discount runs through the weekend. Hey, one day, three days--who cares if you get 50% off?


Saturday, January 10, 2015

Nine New Videos: Three Legit, Six Bootleg

Videos of my November presentations at code::dive in Wrocław, Poland, and at ConFu in Jurmala, Latvia, have recently been posted for your post-holiday time-killing pleasure.

The titles of my code::dive talks are "CPU Caches and Why You Care" and "Support for Embedded Programming in C++11 and C++14". To understand the comments I make at the beginning of the latter talk, it will be helpful to view Venkat Subramaniam's talk on Lightweight Design, because his talk--which is worth viewing both for its merit and for the fact that Venkat is such an engaging speaker--immediately preceded mine, and it motivates my opening remarks that might otherwise make no sense, including my decision to give my talk without shoes.

At ConFu, I was scheduled to give two talks, a keynote on interface design and a full-day tutorial on material in Effective Modern C++ (EMC++). The slot for my keynote was at the end of the day, but at the conference's opening keynote, I noticed that the room setup made it nearly impossible for the people in the back of the room to see the bottom third of the screen. I therefore spent the next several hours reformatting my slides to avoid using more than about the top two thirds of the screen, and I was very pleased with the way the talk went. The topic is "The Most Important Design Guideline," and though I've written and spoken about this guideline before (the guideline is to make interfaces easy to use correctly and hard to use incorrectly), this talk is the first time I felt like I really found a way to say what I wanted to say. If you're not convinced about the importance of the guideline from this presentation, I'm not going to be able to convince you.

The ConFu organizers and I had agreed that my EMC++-based tutorial wasn't going to be recorded, but somebody attending the tutorial decided to do it on his or her own. The audio and video quality is what you'd expect from an informal recording, but since it's at YouTube, I figure you might as well know about it. It's in six videos of about an hour each (which makes sense, because I give tutorial attendees a break every hour), and you'll find links to all six at my Online Videos Page. In fact, that page links to videos of each of my presentations and interviews that I'm aware of. If you're aware of an online video that should be included there, but isn't, please let me know.

Happy viewing!