Monday, December 8, 2014

C++ User Group in Saratov, October 2014

On 25th, October 2014 the regular C++ meeting conference was held. It was planned to be 5 speakers but one of them could not attend due to family circumstances. Thus the total amount of presentations were equal to 4:

  1. Vasiliy Sorokin: Google C++ Mocking and Test Frameworks
  2. Grigory Demchenko: Asynchronicity And Coroutines: Data Processing
  3. Rainer Grimm: Functional Programming in C++11
  4. Mikhail Matrosov: C++ Without new and delete

Below you may find small description related to each presentation.

The first report was about the use of Google Unit-test framework. Firstly, the basic concepts and macros testing part were considered. The second part described the mock-based approach using interfaces and a set of macros. It was noted that the application architecture must be developed appropriately with the mandatory use of abstract interfaces to correctly apply this methodology. In general, it was useful presentation for software testing. For example, I used boost.test library, but there is no "mock" functionality. In this sense, Google's framework looks more promising. However, all of this comes at the price of the macro abundance and as a consequence poor compilation performance. On the other hand, boost.test library is also not very swiftness.

The second presentation was mine. It was related to approach how to process the data by leveraging the network bandwidth and CPU. I'm planning to post the detailed description later. There was several unrelated questions like "but there is Hadoop, why do something else?" on the presentation.

Coffee break was followed by the third presentation of a guest speaker from Germany. It was related to different C++ functionality aspects. It was noted that a modern C++ during the evolution includes more and more functional capabilities, but it still far away from the true functional languages. There were introduced basic primitives and approaches that are used in the functional world and the correspondence between Haskell, Python and C++ were shown. Also the speaker said about meta-programming and ugly and annoying syntax of C++. Overall, it was quite interesting presentation, primarily for the beginners. It is worth noting that the presentation was in English adding zest to Russian C++ User Group.

The final report was about the C++11/C++14 standard and make_shared<T>()/make_unique<T>() usage. Indeed it was like Queen Anne was died for me because I knew this technique about 5 years ago. At that time (5 years ago) almost everyone had opened his eyes wide and twisted his finger to his temple. And now you may use it as a part of a language, part of standard. Oh well. For those who do not know, I recommend to read my article Dependency Inversion And Creational Patterns (In Russian). There, in addition to avoid of explicit usage of new/delete I use more advanced and consistent method of creating objects using the Dependency Injection.

Between the second and third presentation there was a coffee break, where you may drink tea or coffee with tasty snacks. At the end there were event more tasty snacks, pancakes and salmon.

The event itself was at the club Leningrad Hall. There was live music at the evening. I am not a fan of the Electronic Rock style but suddenly I liked it. Dark beer was excellent too and together with the music became even more excellent. Also I had managed to talk to Rainer Grimm. What was the idea to go from Germany to Russia, and even to Saratov? My respect.

Overall, the event was pleasant. I hope my presentation too. That is the way it is!

No comments :

Post a Comment