C++ Time

Measuring elapsed time, or just getting the current time is something you want to do fairly often, but as with many things there are multiple ways to do so in C++. You have the good old C time library with functions such as time() and clock() or you have the new standard chrono since C++11.

Recently I was faced with both cases, I wanted to format the current time and in another scenario I wanted to measure some elapsed time. I though to myself it would make more sense to use the new C++11 chrono over the old time library, but it turns out that the new library does not have all the capabilities of the old one, and that is exactly what this blog post is about.

Continue reading

Advertisements

C++ Writing A New Line

We all write data to the console from time to time, and in C++ you use the ‘std::cout’ stream for this. To keep your information near, you will want to have new lines to separate the different lines, but then the question comes up, what is the best way to write a new line? As far as I know there are two ways to do so, either by printing ‘\n’ (on a Unix system) or by using the ‘std::endl’.

As you may now, the only real difference is that ‘std::endl’ does a flush after writing the new line character, which does cause some overhead. So the question really is, what is the impact of this overhead?

Continue reading

Version Numbers – A User’s Perspective

In the previous two posts I have discussed the usage of version numbers and what my experience and view on them us from a developer’s point of view. Since I am also a user of software, I think it is just fair to also give you my experience and opinion of version numbers as a user. To what level my background as a software developer influences this unconscionably I will leave up to you to decide.

Continue reading

Version Numbers – A Developer’s Perspective

As a developer I have used version numbers but never gave many thought about it until recently. I know I have had some issues with it where not explicitly enough specifying dependency version could break things with new builds. On the other hand the usage of version numbers of internal libraries was always non-existing. In this blog post I will go deeper about how I experience version numbers from a developer’s point of view.

Continue reading

Version Numbers

Any software developer and even user nowadays will know the concept of version numbers. They are a way to easily identify and keep track of, well… the version of the application. But why exactly is it important to be able to do this?

In this blog post I limit myself to discussing different types of versioning systems as well as the reason to use one. In the next blog posts I will give my opinion about using such a system from both a developer’ and a user’ perspective respectively.

Continue reading

Switching From Java To C++

I started off my professional career programming in Java, which wasn’t my preferred language, but as there is a lot more demand for it there are more jobs available and thus it made sense I ended up programming in it. Nevertheless I have always felt the urge to program using C++ some more, and in my latest job switch I did make the switch from Java to C++, but not all was rainbows and sunshine. It seems that my idea of what C++ was has been distorted over the years and Java has grown on me a lot more then I was aware of.

Continue reading

OPC UA

OPC UA is a machine to machine protocol often referred as the basis for the Industry 4.0. So what is OPC UA? That is exactly what I will tell you in this blog post along with my opinion about it. But to do so, I will briefly introduce you to the Industry 4.0.

Continue reading