CppCast Episode 16: News Roundup
Episode 16 of CppCast the only podcast by C++ developers for C++ developers. In this episode Rob and Jason discuss recent C++ News.
CppCast Episode 16: News Roundup
by Rob Irving and Jason Turner
June 16-21, Sofia, Bulgaria
September 13-19, Aurora, CO, USA
October 25, Pavia, Italy
November 6-8, Berlin, Germany
November 16-21, Kona, HI, USA
By robwirving | Jun 18, 2015 06:24 AM | Tags: None
Episode 16 of CppCast the only podcast by C++ developers for C++ developers. In this episode Rob and Jason discuss recent C++ News.
CppCast Episode 16: News Roundup
by Rob Irving and Jason Turner
By Adrien Hamelin | Jun 17, 2015 08:00 AM | Tags: intermediate c++14
Have you registered for CppCon 2015 in September? Don’t delay – Early Bird registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2014 for you to enjoy. Here is today’s feature:
Making C++ Code Beautiful
by James McNellis & Kate Gregory
Summary of the talk:
Ask a non-C++ developer what they think of C++ and they'll give the language plenty of compliments: powerful, fast, flexible, and "the language for smart people". But along with that you are likely to hear ugly, complicated, hard to read, and "the language for smart people". Is it possible to write beautiful C++? Not arcanely elegant or wickedly compact, but readable, clear, expressive - beautiful! We say it is, and we want to show you how.
In this session, you'll see how to turn pages of "comic book characters swearing" into code you'll be proud to call your own. By making your code express your intent, using the power of new language and library functionality, and leaving hard-to-read constructs out of your vocabulary, you can give your code a makeover that will stand the test of time.
By Adrien Hamelin | Jun 15, 2015 08:00 AM | Tags: intermediate efficiency
Have you registered for CppCon 2015 in September? Don’t delay – Early Bird registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2014 for you to enjoy. Here is today’s feature:
How to call C libraries from C++
by Lisa Lippincott
Summary of the talk:
Many libraries used by C++ programs present C-like interfaces that are compatible with C++, but are not directly compatible with good C++ style. Using these libraries directly is error-prone in many of the ways C++ is designed to avoid. It is better to pass through an interface layer that presents good C++ style on the C++ side.
But writing such an interface layer is daunting. Completing it may be an enormous task, as are documenting it and maintaining it as the underlying library evolves. To address this problem, I will present a style of writing such interfaces that can be used incrementally as needed, and that reduces documentation cost. I will also present a small library that supports the writing of interface layers in this style.
By Adrien Hamelin | Jun 12, 2015 08:00 AM | Tags: community
Have you registered for CppCon 2015 in September? Don’t delay – Early Bird registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2014 for you to enjoy. Here is today’s feature:
Founding C++ User Groups
by Jon Kalb & Jens Weller
Summary of the talk:
Jens and Jon will share their experiences starting and working with local user groups and C++ conferences. They share some history and pointers on what has worked for them.
If you'd like to start or be active in a local tech group this session will be a good place to start.
By Meeting C++ | Jun 12, 2015 01:57 AM | Tags: value semantics interview intermediate advanced
I had the chance to interview John Lakos at C++Now:
An Interview with John Lakos
by Jens Weller
The Interview
By robwirving | Jun 11, 2015 08:00 AM | Tags: None
Episode 15 of CppCast the only podcast by C++ developers for C++ developers. In this episode Rob and Jason are joined by Niall Douglas to discuss best practices for C++ 11/14 libraries.
CppCast Episode 15: C++ 11/14 Library Best Practices with Niall Douglas
by Rob Irving and Jason Turner
About the interviewee:
Niall Douglas is a consultant for hire, is one of the authors of proposed Boost.AFIO and is currently the primary Google Summer of Code administrator for Boost. He is an Affiliate Researcher with the Waterloo Research Institute for Complexity and Innovation at the University of Waterloo, Canada, and holds postgraduate qualifications in Business Information Systems and Educational and Social Research as well as a second undergraduate degree double majoring in Economics and Management. He has been using Boost since 2002 and was the ISO SC22 (Programming Languages) mirror convenor for the Republic of Ireland 2011-2012. He formerly worked for BlackBerry 2012-2013 in their Platform Development group, and was formerly the Chief Software Architect of the Fuel and Hydraulic Test Benches of the EuroFighter defence aircraft. He is a published author in the field of Economics and Power Relations, is the Social Media Coordinator for the World Economics Association and his particular interest lies in productivity, the causes of productivity and the organisational scaling constraints which inhibit productivity.
By Vittorio Romeo | Jun 10, 2015 01:27 PM | Tags: c++14
Vittorio Romeo covers in his second tutorial a very interesting code snippet originally posted on Twitter by Sean Parent `for_each_argument`.
Dive into C++14 - Part 2
by Vittorio Romeo
About the tutorial:
It shows and explains the usage of C++14 compile-time integer sequences, and analyzes a very interesting iterative implementation of an alternative version of Sean's function that takes the desired arity as a template parameter.
This tutorial video is a reviewed and improved version of my C++Now 2015 lightning talk ("`for_each_arg` explained and expanded").
Some possible use cases for the implemented functions are also shown and analyzed:
- `make_vector(...)`
- `forTuple` - iteration over tuple elements
- `make_unordered_map(...)`
The target audience is people with knowledge of C++11 features and some C++14 experience.
Previous episodes are here: Playlist
By Adrien Hamelin | Jun 10, 2015 08:00 AM | Tags: performance efficiency
Have you registered for CppCon 2015 in September? Don’t delay – Early Bird registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2014 for you to enjoy. Here is today’s feature:
A Deep Dive into 2 Cross-Platform Mobile Apps Written in C++
by T. Grue & S. Kabbes
Summary of the talk:
At Dropbox we’ve spent the last year and a half building two cross platform mobile apps: the email client, Mailbox, and the photo gallery, Carousel. We started with the goal of a native look and feel with seamless performance but also needed to leverage a small team to build these apps on multiple platforms. We ultimately accomplished this by using C++ to share significant amounts of code in each app.
We’ll cover what portions of our apps we built in C++ and why we left some portions in the platform languages of Java and Objective-C, deep diving into some of the most important components. We’ll also discuss some unexpected benefits, areas we faced technical and human challenges, and some tips and tricks that you can use to leverage C++ to build very high performance apps.
By Adrien Hamelin | Jun 8, 2015 09:03 AM | Tags: performance experimental
Have you registered for CppCon 2015 in September? Don’t delay – Early Bird registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2014 for you to enjoy. Here is today’s feature:
What did C++ do for Transactional Memory?
by Michael Wong
Summary of the talk:
SG5 is a Study Group within WG21 developing a promising new way to deal with mutable shared memory, that is expected to be more usable and scalable than current techniques based on atomics and mutexes. It promises to be as easy to use as coarse-grained locks, as scalable as fine-grained locks and yet remain composable.
Find out where on the Gartner hype cycle lives Transactional Memory.
Is it at the Peak of Inflated Expectations, Trough of Disillusionment, Slope of Enlightenment, or Plateau of Productivity?For that matter, just how soon will I be able to use it with the new Intel Haswell, and IBM Power Hardware, or is it one of those mirages where the closer you get to your hardware, the further it moves away.
And is it true that one of the lead author of this TM proposal also wrote "Is it just a Research Toy?"
This 60 minute advanced talk will cover the history of Transactional Memory, various lock elision and optimistic speculation techniques, the technical engine behind Transactional Memory, the recent research in its use cases, usability and performance data that supports its entry into the C++ Standard, and of course the latest details of the SG5 Technical Specification, including our effort at transactionalizing the C++ Standard Library.
By Adrien Hamelin | Jun 5, 2015 08:00 PM | Tags: intermediate experimental
Have you registered for CppCon 2015 in September? Don’t delay – Early Bird registration is open now.
While we wait for this year’s event, we’re featuring videos of some of the 100+ talks from CppCon 2014 for you to enjoy. Here is today’s feature:
Modern Template Metaprogramming: A Compendium, Part II
by Walter E. Brown
Summary of the talk:
Template metaprogramming has become an important part of a C++ programmer's toolkit. This talk will demonstrate state-of-the-art metaprogramming techniques, applying each to obtain representative implementations of selected standard library facilities.
Along the way, we will look at void_t, a recently-proposed, extremely simple new new type_traits candidate whose use has been described by one expert as "highly advanced (and elegant), and surprising even to experienced template metaprogrammers."