-
Problem Solving Practice
It’s been some time since I did proper coding and am getting rusty with C++. So, I decided to start solving LeetCode style problems where you need to solve programming challenges using various algorithmic techniques. As I practice I am also revising C++ topics, so I also noted down my learnings. I decided to document…
-
Devops Notes – I
Here I will be posting my notes as I learn Devops concepts. Configuration Management I am currently learning about DevOps and an important component that forms a part of DevOps is a topic called Configuration management. For an introduction to Configuration management, we should know why it’s needed. For instance, if you are a company…
-
Software Engineering for all
Many people consider software engineering too difficult to learn. However, in the Information Age, I believe that everyone needs to have a basic grasp of concepts irrespective of which field they are in. I believe that software engineering books in general these days, make relatively simple concepts hard to understand for a person with no…
-
Why should electrical engineers learn software engineering?
We are currently in the information age, and we are being taken over by technology at an unprecedented rate never seen before in human history. When I came to the Netherlands for my master study in embedded systems, I struggled a lot with the coursework. I came with a background in electrical engineering, and my…
-
Cube root during compile time
One of the first topics that I wrote in this website was related to compile time computation in C++. Recently, I was reminded of it again when I was reading a book called Hacker’s Delight where there was a chapter on computing cube root of a number. As we have seen in a previous post,…
-
STL Algorithms
I was watching a talk by Jonathan Bocarra on “105 STL algorithms in less than an hour” and it was a very good and an informative talk. I kept notes of the talk as I was watching and though it would be useful to look back at later: Why should you use STL algorithms? Your…
-
C++ modules
One of the significant changes that would be a part of the C++20 standard is modules. Modules are quite a significant change in the sense that it re-defines the compilation model that’s been in place so far. Let’s see how the pre-C++20 compilation model looks like. When you want to divide your programs into modules,…
-
Hex to Base64
I was going through these crypopals challenges, where I decided to do some of these problems in a language that was familiar to me (C++). The first challenge dealt with converting a hex string to base64. This type of conversion is used in encode all types of data such as text, images, etc. So, let’s…
-
Daily C++ at Work
At work, a colleague of mine started a new initiative, where we read new concepts of C++ and explain it to each other. Currently, we are reading an item per day from Effective Modern C++ by Scott Meyers and explaining the concepts to each other. The meeting notes are updated here: https://github.com/LithoCoders/dailycpp
-
Compile Time computation in C++
One of the topics that interest me in C++ is compile-time computation. In this article, we will look at how compile-time computation is done in C++. Compile-time computation can be done in three ways I know of. One is using macros to compute constants, the second way is using template metaprogramming and the other way…