Beginner/Foundation Programs

Programming Under the Hood

  • Basic concepts of programming
  • Introduction to assembly language
  • Concepts of Compiler, linker, lib/DLL etc

Duration : half day (3-4 hrs)

C++ : Defensive coding and best practices

  • various coding Techniques for achieving "Fail Fast"
  • usage of 'assert' (when and where to use )
  • concept of Unit Testing and test driven development

Duration : half day (3-6 hrs)

Basics of Memory Management

  • What is virtual memory ?
  • How memory allocation works ?
  • What is 'padding' ?
  • Typical memory problems (memory corruption, memory leaks etc). And How to debug them ?

Duration : half day (3-4 hrs)

Fundamental Principles of Programming

This program talks about four key programming principles. I call these 'Fundamental Principles of Programming'. The principles are

  1. Fail Fast
  2. Tell, Don't Ask
  3. Design By Contract
  4. Minimizing the Impact of Change

These principles are indendent of programming language, methodology, technology or domain. I have applied these principles to CAD/CAM software, Web Application, Mobile apps, Desktop products etc. and successfully delivered the projects and delighted the customers.

Duration : half day (3-6 hrs)