{"id":1821,"date":"2018-09-16T07:29:44","date_gmt":"2018-09-16T06:29:44","guid":{"rendered":"http:\/\/www.nuonsoft.com\/blog\/?p=1821"},"modified":"2018-09-16T07:29:44","modified_gmt":"2018-09-16T06:29:44","slug":"next-becpp-ug-meeting-planned-for-october-25th-2018","status":"publish","type":"post","link":"https:\/\/www.nuonsoft.com\/blog\/2018\/09\/16\/next-becpp-ug-meeting-planned-for-october-25th-2018\/","title":{"rendered":"Next BeCPP UG Meeting Planned For October 25th, 2018"},"content":{"rendered":"<p>The next meeting of the Belgian C++ Users Group is planned for <strong>Thursday October 25th, 2018<\/strong> at 18:00 at <strong><a href=\"https:\/\/goo.gl\/maps\/mNVzBLxCVtn\" target=\"_blank\" rel=\"noopener\">Altran<\/a><\/strong>.<\/p>\n<p>Altran ( <a href=\"http:\/\/www.altran.com\/\" target=\"_blank\" rel=\"noopener\">http:\/\/www.altran.com\/<\/a> ) is sponsoring this event by providing the location, drinks and catering.<\/p>\n<p><a href=\"http:\/\/www.altran.com\/\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-630\" src=\"https:\/\/becpp.org\/blog\/wp-content\/uploads\/2018\/09\/RVB_ALTRAN_HD.png\" alt=\"Altran Logo\" height=\"64\" \/><\/a><\/p>\n<p>The agenda is as follows:<\/p>\n<ul>\n<li><strong><span style=\"color: #008000;\">18:00<\/span>: <\/strong>Sandwiches.<\/li>\n<li><strong><span style=\"color: #008000;\">18:30<\/span>: <\/strong>Session 1: <strong>Writing Standard Library Compliant Data Structures and Algorithms<\/strong> (Marc Gregoire)<br \/>\n<em>The C++ Standard Library provides a lot of data structures, but it cannot provide every possible data structure or algorithm that you might need. So, sometimes, you might find the need to write your own data structure or algorithm. Since you are writing them yourself, you could give them any interface that suits you. However, wouldn\u2019t it be better to make them compliant with the Standard Library? That way, when you write your own algorithm, you will be able to use that algorithm independently of the type of the container that contains the data for your algorithm. Similarly, if you write a Standard Library compliant data structure, then you will be able to use Standard Library algorithms on the data in your own data structure.<br \/>\nIt\u2019s clear, there are a lot of advantages in making your data structures and algorithms compliant with the Standard Library. We\u2019ll first develop a simple algorithm with our own interface. Then we\u2019ll look into what changes we have to make to transform the interface to be Standard Library compliant. Finally, we\u2019ll demonstrate our adapted algorithm by running it on data in a variety of Standard Library containers.<br \/>\nIn the last part of the presentation we\u2019ll crank it up a notch. We\u2019ll start by writing our own data structure, initially without thinking too much about the Standard Library. Then we\u2019ll look at an overview of the different sets of requirements that the Standard Library imposes for the different types of containers (sequential, associative, and unordered associative). Finally, we\u2019ll adapt our data structure step-by-step to transform it into a Standard Library compliant data structure. This of course includes writing a suitable iterator. Finally, we\u2019ll demonstrate the transformed data structure by running Standard Library algorithms on the data in it.<\/em><\/li>\n<li><strong><span style=\"color: #008000;\">19:30<\/span>: <\/strong>Break<\/li>\n<li><strong><span style=\"color: #008000;\">19:45<\/span>: <\/strong>Session 2: <strong>Memory Architecture &amp; Performance<\/strong> (Barry Van Landeghem)<br \/>\n<em>The impact of memory architecture on performance is something which every developer should be aware of. In general improving your code performance is already hard and complex. Computer cache memories have led to introduce a new complexity measure for algorithms and new performance counters for code.<br \/>\nIn this talk we\u2019ll see what data locality is all about and why using data locality can be a great tool for a developer to boost the performance of his\/her algorithms\/data structures.<br \/>\nAt the end we\u2019ll also at the implications towards parallelism (false sharing\/NUMA,\u2026).<\/em><\/li>\n<li><strong><span style=\"color: #008000;\">20:45<\/span>: <\/strong>Introduction to Altran, followed by a drink.<\/li>\n<\/ul>\n<p><a href=\"https:\/\/amzn.to\/2JjvkWe\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" class=\"size-full wp-image-1003 aligncenter\" src=\"https:\/\/becpp.org\/blog\/wp-content\/uploads\/2018\/06\/pro_cpp_4th.jpg\" alt=\"Professional C++, 4th Edition\" width=\"100\" height=\"125\" \/><\/a><br \/>\nWe will be giving away 2 copies of <a href=\"https:\/\/amzn.to\/2JjvkWe\" target=\"_blank\" rel=\"noopener\">Professional C++, the 4th Edition<\/a>.<\/p>\n<p>The event is <span style=\"color: #ff0000;\"><strong>free<\/strong> <\/span>for everyone, but you need to <strong><a href=\"https:\/\/becpp-October-2018.eventbrite.com\/\">register for it<\/a><\/strong>.<\/p>\n<p>There are 80 seats available for this event.<\/p>\n<p><em><strong>Note:<\/strong><strong> The deadline for registrations is October 21st, 2018!<\/strong><\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The next meeting of the Belgian C++ Users Group is planned for Thursday October 25th, 2018 at 18:00 at Altran. Altran ( http:\/\/www.altran.com\/ ) is sponsoring this event by providing the location, drinks and catering. The agenda is as follows: 18:00: Sandwiches. 18:30: Session 1: Writing Standard Library Compliant Data Structures and Algorithms (Marc Gregoire) [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[191,6,18],"tags":[],"class_list":["post-1821","post","type-post","status-publish","format-standard","hentry","category-becpp","category-c","category-events"],"_links":{"self":[{"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/posts\/1821","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/comments?post=1821"}],"version-history":[{"count":2,"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/posts\/1821\/revisions"}],"predecessor-version":[{"id":1823,"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/posts\/1821\/revisions\/1823"}],"wp:attachment":[{"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/media?parent=1821"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/categories?post=1821"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.nuonsoft.com\/blog\/wp-json\/wp\/v2\/tags?post=1821"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}