A programmer with an interest in transit, making music, and building things of all types.

I have dysgraphia which makes writing difficult for me. I hope you can figure out what I mean despite my issues.

  • 0 Posts
  • 12 Comments
Joined 1 year ago
cake
Cake day: June 22nd, 2023

help-circle



  • The C++ committee is actively looking at how something like rust’s borrow checker could be added to C++. Likely it won’t be a borrow checker, but just enforcement that some code cannot use new/delete and so must use a container (std::unique_ptr, std::vector…) which gets rid of most of the pain. Modern C++ is a much better language than C++98, but I still see a lot of people writing C++98 code.


  • Docker gives you a few different things which might or might not matter. Note that all of the following can be gotten in ways other than docker as well. Sometimes those ways are better, but often what is better is just opinion. There are downsides to some of the following as well that may not be obvious.

    With docker you can take a container and roll it out to 100s of different machines quickly. this is great for scaling if your application can scale that way.

    With docker you can run two services on the same machine that use incompatible versions of some library. It isn’t unheard of to try to upgrade your system and discover something you need isn’t compatible with the new library, while something else you need to upgrade needs the new library. Docker means each service gets separate copies of what is needs and when you upgrade one you can leave the other behind.

    With docker you can test an upgrade and then when you roll it out know you are rolling out the same thing everywhere.

    With docker you can move a service from one machine to a different one somewhat easily if needed. Either to save money on servers, or to use more as more power is needed. Since the service itself is in a docker you can just start the container elsewhere and change pointers.

    With docker if someone does manage to break into a container they probably cannot break into other containers running on the same system. (if this is a worry you need to do more risk assessment, they can still do plenty of damage)