Why is teaching C++ hard?

CPP or C++ has been around for more than 40 years now. And yet, it remains one of the most challenging mainstream languages to start. My journey with CPP began in early 2008 by happenstance.

When I started my journey as a freelancer, I searched for courses about CPP on the web. Udemy seemed to have the most classes. I started going over the course content of the top courses. Even I needed a refresher to stay in touch with the latest standard. Till 2017 I was able to keep up with the changes. Moving to other languages broke the flow.

As I scanned the course material, it surprised me. The content covered installing virtual machines, docker, compilers, IDEs, etc. It was a reality check. Indeed getting started with CPP on windows was nowhere similar to starting on Linux.

I was fortunate enough to have learned assembly in high school and was exposed to Linux and C++ almost simultaneously. Coming from an electronics background made the hardware aspect of language coherent. Unfortunately, the majority of students on learning portals are not that lucky.

To add to the complexity, the new standards are getting used forcefully. People seem to think switching to the latest version will solve all their problems. But, unfortunately, migration isn’t easy and, in some cases, not even necessary!

The core concern about teaching seems to be in the tools and ecosystem awareness among the new learners.

Teaching CPP via questions

So what does this have to do with my goals? Well, teaching the necessary fundamentals is an opportunity.

When signal is buried in noise, one has to first model the noise not hunt for the signal.

So I decided to try the practice tests mode offered by Udemy. The format is straightforward. Present the users with up to 6 tests, each with a set of questions. At the end of each practice test, the users can review the questions revealing the responses provided by the instructor. Notice the simplicity of AV-free communication.

The course asks the users the questions that answer the very question in the title. The community is also aware of the steep learning curve. The recent announcement about Carbon language is a step in that direction.

Will the approach work? I am not sure. How about you checkout and let me know?

Course Link: https://www.udemy.com/course/cpp-stl-algorithms-practice-test/

Personal Finance for all

Personal finance at heart is managing income, investment, insurance, and loans. Economy and finance are often discussed in the news. But rarely from the perspective of an individual’s student debt, home mortgage, or stock portfolio. Converting words to knowledge is frustrating and leads to short-term decision-making.

Personal finance is about knowledge of diverse instruments like gold, cryptocurrencies, and real estate, as well as fundamentals like banks.

The main objective of this course is to create awareness about the bigger picture of the finance ecosystem. The massive diversity in regulations across countries and the financial goals of individuals makes it impossible to come up with one solution that will work for all. Hence, understanding the basics will provide a lifelong personal finance decision-making framework. 

The course uses real-life financial decisions based on my experiences from three recessions across two countries (US and India).

Course link: https://www.udemy.com/course/financial-awareness-for-students-and-professionals/

Key Personal Finance Takeaways:

  • As a student, a framework to understand the financial factor that shapes your career.
  • As an early-stage professional, a sturdy case to start building moats to increase risk-taking capacity while pursuing your dreams.
  • As a sole breadwinner, a set of tools amplify your financial capacity without burning out.
  • For all, personal finance is a duty, not a choice.
  • An ability to ask relevant questions based on your current responsibilities.

What doesn’t the course offer?

  • The course does not promote any specific investment advice or product promotion.
  • The course does not recommend any foolproof solution to any personal finance-related problem.
  • The course does not provide any stock or trading-related advice.


  • Section 1: Introduction to the big picture and necessity for this awareness
  • Section 2: An elementary definition-based overview of major financial entities that dictate our lives.
  • Section 3: A bird’s eye view of the entire ecosystem from a commoner’s perspective.
  • Section 4: A closer look at banks as financial institutions. Their basic models and incentives.
  • Section 5: A walk-through of different kinds of loans. The essential awareness about the structure of loans.
  • Section 6: Introduction to “markets” or ecosystem of equities and surprising ways they make their way into our lives.
  • Section 7:  Discussion about some less discussed instruments. Specifically in the context of Personal finance.
  • Section 8: A discussion dedicated to the hidden costs that influence growth. Insurance, taxes, and management fees.
  • Section 9: An ordinary person’s perspective on the trinity of Income, Investment, and saving. Also, a discussion about gig-economy and index funds in the context of income and investment.
  • Section 10: Closing remarks with personal experiences and food for thought.