Last November 24th we had the fourth edition of using std::cpp, our annual conference on C++ for professional developers. The conference is a one-day free event held every year at University Carlos III of Madrid, in Leganés. We had around 200 registered attendees (most of them professional developers).
Who were our attendees
This year most of the attendees were coming from the Madrid region. However, we had attendees from many other regions in Spain.
We would like to share some answers from the evaluation questionaries:
- 75% of attendees were professional developers, 14% were students, and 11% were academics.
- 92% declared they use regularly C++.
- The most popular version of C++ was C++11 (73%), followed by C++98/03 (63%) and C++14 (21%). Note that you could vote for more than one. However, no one declared to make use of any extension or TS.
- Most popular compiler was gcc (60%), followed by Microsoft (57%), and clang++ (14%).
- When we asked for domains a found a split among multiple sectors: telco (20%), aerospace/naval (11%), civil engineering (9%), bank/finance/insurance (7%), developer tools (7%), videogames (6%), research/academia (4%), transport (4%), industrial manufacturing (2%).
Our talks in 2016
Here is a summary of the talks we had:
- C++17 is (almost) here. J. Daniel García (ARCOS Lab, University Carlos III), member of ISO C++ standards committee and associate professor in Computer Architecture.
This talk presented some of the features that are highly likely to be present in the upcoming C++17.
- Get your types to work. Joaquin M. López, software developer and contributor of several Boost libraries (example, Boost multi-index).
Joaquín showed how we can make use of the type system to prevent programming mistakes moving defects detection from execution time to compile-time. You may find slides in English here.
- C++ and much more. An overview to the available libraries universe. Martin Knoblauch (Indizen Technologies), a software developer in the finance sector.
Martin made a list of C++ libraries that he recommends to use. He gave some brief overviews of Google protocol buffers, flat buffers, Zero Message Queue, TBB, CUDA, Boost and GSL.
- Test Driven Development in C++. Raúl Huertas (TCP Sistemas), a software developer with long background in the telecom business.
Raúl made a practical introduction to TDD through a number of examples in form of short tutorial. He used catch library in all examples.
- Using C++ in safety critical embedded systems for railways. Ion Gaztañaga (CAF), another Boost contributor (example, Boost Interprocess).
Besides being a very experienced and well known C++ developer, he works professionally developing software for railway systems. He focused his talk in providing details on the constraints in safety critical systems. He explained also which subset of C++ you are able to use when you have to comply with safety regulations.
- At a Matlab breakdown… Save me C++! Javier Garcia-Blas (ARCOS Lab, University Carlos III), visiting professor in Computer Architecture.
Javier showed how to port existing MATLAB applications to C++ mixing the use of several C++ libraries: Armadillo and ArrayFire. He provided details on how he used those libraries for porting magnetic resonance image processing.
- Static and dynamic polymorphism in C++11: Flexibility versus performance?. J. Daniel Garcia (ARCOS Lab, University Carlos III), member of ISO C++ standards committee and associate professor in Computer Architecture.
Following a number of examples J. Daniel transitioned from a canonical object oriented solution to a problem to a type erased solution finishing with an implementation of the small object optimization.
- Using templates in C++ to design and implement. Jose Caicoya (Hotel Beds), software developer with background in real-time systems, finance and, more recently, hotel reservation systems.
Jose followed through a number of examples different uses of templates.
- Distributed systems: How to connect your real-time applications. Jaime Martin (eProsima), developer of an open source DDS impelementation.
Jaime made a short introduction to DDS providing examples on its use to build distributed systems highlighting the C++ mapping.
- Developing an reflection system for C++14. Manu Sanchez (ByTech), software developer and metaprogrammer.
Finally Manu Sanchez presented his results in trying to build a reflection solution by using libclang.
After reviewing the evaluations we want to congratulate Joaquin M. Lopez for having the best evaluated talk this year.
We want to thank many people who helped to make using std::cpp again a reality.
Our first thanks go to Indizen. This company has been helping us in the organization of this event year after year from the first edition.
Of course, we also want to express our thanks to all the speakers in this year’s edition. They were crucial in attracting the audience and all the talks were highly evaluated by attendees.
Finally, we want to thank to the volunteers who helped in the organization.