November 2021

Tripreport: virtual CppCon 2021--Jens Weller

Another report!

Tripreport: virtual CppCon 2021

by Jens Weller

From the article:

I attended this weeks virtual CppCon partially, as I'm also very busy with my upcoming conferences: Meeting Embedded & Meeting C++ 2021. Still I had a lot of fun. Thanks to Jon Kalb, the volunteers, speakers and all the attendees who made CppCon 2021 possible!

DigitalOcean: Ahead of the virtual server wave

Technical organizations today depend more and more heavily on their server infrastructure. In this environment it is critical to have a server infrastructure that not only is robust and reliable, but that is both flexible and secure.

The Standard C++ Foundation has relied on DigitalOcean cloud services for its server infrastructure since 2014. Standard C++ Foundation relies on its DigitalOcean servers to support its document repositories, file sharing, messaging systems, mailing lists, DNS, Firewalls, and websites.

DigitalOcean Droplets

The Standard C++ Foundation server infrastructure is made up of seven DigitalOcean Droplets, which are Linux-based virtual machines (VMs) that run on top of virtualized hardware. Each Droplet can be set up either as a standalone dedicated server, or as part of a larger cloud-based infrastructure.

Resizing a server, also known as vertical scaling, increases the amount of resources a server has. A key benefit of using DigitalOcean Droplets is their flexibility, as they can very easily be resized based on changing needs. Running a large event or expect a big bump in web traffic? Easily increase your Droplet’s CPU and RAM to get the speed and bandwidth you need, then dial it back down when your needs go back to normal. Or increase your Droplet size as your organization grows, increasing the RAM and CPU, and also permanently increase the size of a Droplet’s disk. Whichever type of increase you need, it’s all down with an easy change of settings in your dashboard.

Managing Droplets

Co-locating a server infrastructure does not mean giving up control. DigitalOcean Droplets can be controlled either through an API or through doctl, their command line interface client.

  • The DigitalOcean API: The DigitalOcean API lets you manage DigitalOcean resources programmatically using conventional HTTP requests. All the functionality available in the DigitalOcean Control Panel is also available through the API. You can use the API to create, destroy, and retrieve information about your Droplets. You can also use the API to enable backups, change kernels, or reboot your Droplets.
  • The DigitalOcean Command Line Client: doctl is a command-line interface for the DigitalOcean API and supports many of the same actions available through the API. doctl supports managing container registries from the command line. See the doctl documentation or use doctl compute --help for more information.

Key server features

In the seven years that Standard C++ Foundation has been a DigitalOcean customer, they have added most of their key functions onto its cloud-based DigitalOcean servers.

Following are the key areas in which the Standard C++ Foundation has come to rely on DigitalOcean:

  • Weekly Backups and Snapshots: Backups are automatically-created disk images of Droplets. Enabling backups for Droplets enables system-level backups at weekly intervals, which provides a way to revert to an older state or create new Droplets. Rather have those backups daily? You can do this using the API.
  • Track Droplet performance: Check how things are going at any time using Droplet Graphs, which are up-to-the-minute visualizations of how your server is performing over time that let you monitor Droplet performance metrics in the control panel.
  • DNS/Domains: Adding a domain you own to your DigitalOcean account lets you manage the domain’s DNS records with the control panel and API. Domains you manage on DigitalOcean also integrate with DigitalOcean Load Balancers and Spaces to streamline automatic SSL certificate management.
  • Cloud Firewalls: DigitalOcean Cloud Firewalls are a network-based, stateful firewall service for Droplets provided at no additional cost. Cloud firewalls block all traffic that isn’t expressly permitted by a rule.
  • Block Storage Volumes: Block storage volumes are network-based block devices that provide additional data storage for Droplets. You can move them between Droplets and resize them at any time.
  • Teams: Teams are useful for project leaders and business owners who want to share control of server infrastructure with developers, financial administrators, and other collaborators.

Looking for Employers for the online C++ job fair

Meeting C++ is looking for C++ employers to join the next online C++ job fair in mid November.

Looking for Employers for the online C++ job fair

by Jens Weller

From the article:

The Meeting C++ online job fair is in two weeks, and so far I only have one company interested in a free table as of today.

The job fair is on November 16th (afternoon CET) and 17th (evening CET). Sponsors will also be listed on the website with logo in the job section and at the job fair page. During the event your table will be above the free tables and you'll receive CVs through the tooling of Meeting C++ from the moment of signup to friday after the week of the event. The last job fair had 82 folks from 26 countries submit. These sponsorships are also what allows me to work on the tooling and improve the process further,  some funding of the sponsorships also goes into advertising of the event.

CppCon 2021 Thursday keynote video posted: Michael Caisse on "Small Inspiration"

cppcon2021-keynote-michael.pngThe fourth keynote from CppCon 2021 is now publicly available via JetBrains, our video sponsor:

Small Inspiration [jetbrains.com/cppcon2021]

by Michael Caisse

Embedded devices offer lessons in engineering at all scales and can provide inspiration to seasoned practitioners and future technologists. Watch the talk to learn from the embedded world and become inspired to inspire.

CppCon 2021 Virtual Trip Report, A User Story--Javier Estrada

Did you attend?

CppCon 2021 Virtual Trip Report, A User Story

by Javier Estrada

From the article:

This is the first CppCon hybrid (in person and virtual) conference, and in my opinion, it was a success in terms of content and organization, particularly from the virtual side. Sure, there were the occasional quirks, or the first day emergencies if one didn’t read the “instruction manual” (ahem) beforehand. But ’nuff said.

I’m writing this trip report while the experience is fresh, and before the glitter fades, drinking a hot cup of coffee while everybody else sleeps...

C++ 20 Concepts

Time to use them.

C++ 20 Concepts part 1 and part 2

by Gajendra Gulgulia

From the article:

Concepts is one of the 4 major additions in C++20 standard. The idea of concepts has existed as long as C++ templates themselves but it has only been until few years that the foundation of C++ concepts have been laid out in the manner it had earlier been desired desired, i.e., in coherence with C++ templates design principles:

  • a generalized code
  • better code than hand written code with zero overhead
  • well specified interfaces on the template method/class usage.

C++ templates fell short on the last requirements but the first two requirements were good enough and templates few off with a huge success. In simpler terms the last requirement on concepts is about imposing constraints on the template parameters themselves, that a function or a class can accept.
In this article, I’ll give an introductory example of how concepts could be useful in terms of specifying the interface of a generic code, which amongh many advantages helps get rid of the verbose error message and achieve faster compilation, and consequently help make generic programming more expressive and fun. In the later long running series about concepts with gradually increasing complexity, I’ll present details as and when necessary. Lastly before beginning, I encourage all users to try out the code examples with a compiler that supports C++20 . So lets start with concepts of concepts wink

Upcoming C++ User Group meetings in November

The monthly listing of upcoming C++ User Group meetings at Meeting C++

Upcoming C++ User Group meetings in November

by Jens Weller

From the article:

The monthly overview on C++ User Group meetings being announced by the start of the month!

This month features 4 Events organized by Meeting C++:

    2.11 Meeting C++ online - What you can learn from being too cute: why you should write code
    4.11 Meeting Emedded 2021
    10.11 Meeting C++ 2021
    16.11 Meeting C++ online job fair

There is 1 new C++ User Groups: Odense.