10. Read What You Know

Sometimes you need to spend time reading what you know to realize that you really have so much to learn. Unless you speak up and admit that you don’t know something, you really cannot become better!

What have I been up-to last week?

It was a pretty awesome week. I started reading a couple of serious programming books. I have been coding in C and C++ for almost seven years now. However, I don’t think I have invested enough time to learn these languages properly. Yes, I’ve read articles about different aspects of these languages, however, I have never studied the concepts top to bottom.

I’ve purchased a proper C++ reference book recommended by one of my colleagues who is a C++ guru. The book is C++ Programming Language by the man himself, the great, Bjarne Stroustrup. I’ve set a personal goal to read atleast 10 pages everyday until I finish this book.

I have also joined a study group at office to read Generic Programming, which mainly talks about algorithm development. Those two study streams are timely because the C++ STL is written using generic programming techniques.

The 1st chapter of the C++ book is all about the history and the ‘why?’s about the language itself. I have never read such a thorough explanation on the objectives of the C++ language. I was a C programmer and for me C++ was always ‘C with classes’. However, the 1st chapter simply rejects that line of thinking and recommends Engineers to treat it as a separate language all-together. Bjarne Stroustrup claims that if we use C++ like C, it is going to be suboptimal.

I always thought, C++ will be heavier and slower than C. However, the book claims that in many cases, C++, when used properly, is faster than the equivalent C representation of the same program. That is very interesting!

I hope this book will teach me a better Software Engineer.

How is everything else?

It was the birthday of Dilip last Thursday. We celebrated by finishing 4 bottles of whiskey and 2 bottles of tequila. That’s pretty serious drinking. The whole Sunday I was a bit hungover.

World is still the same with COVID-19 restrictions. Victoria is still under lockdown and people have started heavily criticizing the dracnoian lockdown measures enforced by Dan Andrews. It feels a bit too paranoid, but the whole situation the world is going through right now is unheard of and unprecidented. Therefore, it must be pretty hard for those in power to make everyone or even the majority happy while keeping the number of infections at bay.

What am I reading?

 - Sapiens, A brief history of humankind (180 / 480 = 37.5 %)
 - C++ Programming Language (47 / 1279 = 3.67 %)
 - The English Spy
 - C++ Primer

Any good TV shows or movies?

I watched a several good movies about capitalism.

- Snowpiercer
- The Platform

Both these movies revolve around somewhat similar concepts. ‘Snowpiercer’ talks about maintaining the order of the world by ensuring the class division among humans. It kind of hints that we are stuck in this eternal circle of life which goes through similar situations over and over again. It also talks about how the people in power manipulates others to get things done the way they want.

‘The Platform’ talks about the how the wealth and neccessities get devided among people. The overconsumption of neccessities by the people in upper tiers makes the life of those who live in lower tiers unbearable. However, it ultimately says that the youth or children needs to be uplifted to fix the system for good. For me it feels a bit too optimistic. May be I have not understood it properly. Neverthelss, those two are really good movies.

Any new learnings?

Nothing much apart from reading C++ books.

Backlog

  1. Build a simple radio - Lame level 10
  2. Setup an MQTT server and a few nodes

That’s a week!