Wednesday, February 15, 2023

Course Roadmap for Data Analytics

Want to get jumpstarted with Data Analytics without all the pain? Here is the roadmap for getting started with data analytics using Python. For details, check out: Customised training / personal coaching available. 

#duckdb #polars #pandas #python #matplotlib

WEB302 - Containerization using Docker

"This year it appears that Docker is becoming a similar fundamental tool for Professional Developers, increasing from 55% to 69%.".

Stackoverflow 2022 Developer Survey.

Learn how containerization works using Docker. Details at

#Docker #containerization

IOT309 - Building AI Applications using ChatGPT

Now that you have heard of ChatGPT, it is now time to really understand how it works and harness its power! This course will show you how to integrate ChatGPT into your Python application.

Date: 13 March 2023
Details at

#ChatGPT #Python #AI

Saturday, February 19, 2022

Plotting Choropleth Maps in Python

choropleth map is a very useful visualization technique to show aggregate summary of a geographic feature, such as population or income levels of countries in the world. For this article, I will show you how to use the Plotly to plot choropleth maps.

IOT301 - Fundamentals of Blockchain and Smart Contracts Programming using the Ethereum Network

 If you want to know what is a Blockchain but have no time to wade through tons of books and articles to learn what it is, this is probably the quickest way to learn. What's more, this course will also cover Ethereum Smart Contract programming. By the end of the course, you will have a solid understanding of what is a Blockchain and how you can use smart contracts to create the next generations of decentralized apps (aka dapps). 

Details at:

#blockchain #programming #smartcontracts #ethereum #NFT #token

IOT201 - Applied Python Programming

Python is one of the hottest languages to learn today due to its extensive set of libraries for Data Science. Besides this, Python is so versatile that you can use it to do anything (almost!). In this 2-day course, you will get a jumpstart on Python and you will be proficient in Python by the end of the course.

Details at

#python #lambda #datascience

Tuesday, June 02, 2020

Thursday, May 28, 2020

WEB302 - Getting Started with Docker

Most people are familiar with Virtual Machines (VM). A VM is a program that runs like a separate computer within a computer. A physical computer can run multiple VMs, allowing it the ability to emulate different operating systems all running at the same time. VMs allow developers to run their apps in a totally isolated environment, ensuring that their apps would be able to run without problems regardless of the configurations of the host computer. 
A Docker container works very much like a VM. However, a Docker container does not require a full instance of the OS (which is needed by a VM). And unlike a VM, a Docker container shares the host system’s kernel with other containers, and it offers OS-level virtualization. 
In this one-day course, you will experience Docker hands-on. You will learn how to create Docker containers from Docker Images hosted on the Docker Hub. You will also learn how to create your own Docker Image for your own development purposes. 
For schedule, check out

Tuesday, May 26, 2020

IOT202 - Introduction to Data Analytics using Python

Get a head start in data analytics using NumPy, Pandas, and Matplotlib. In the course IOT202 - Introduction to Data Analytics using Python, you will learn how to analyse and visualise your datasets using the Python programming language.

Case Study - Learn how to visualise the Covid-19 dataset.

Wednesday, May 13, 2020

MOB107 - Cross Platform Mobile Apps Development using Flutter

Flutter lets you build cross-platform mobile apps using the Dart programming language, without the need to use languages like Objective-C, Swift, Kotlin, or Java. Flutter allows you to maintain a single code base for your mobile app that runs both on Android and iOS devices

  • Crash course on the Flutter programming language
  • Structure of a Flutter application
  • Laying out your UI
  • Networking in Flutter
  • Persisting Data
  • Deploying iOS and Android applications

For schedule, check out

IOT305 - Deep Learning using TensorFlow and Keras

Deep Learning is a branch of machine learning that utilizes neural networks. But how does a neural network work, and how does deep learning solve machine learning problems? In this workshop, you will learn how to get started with deep learning using one of the most popular frameworks for implementing deep learning – TensorFlow and Keras, to make deep learning more user-friendly and easier.

  • Understand what is deep learning
  • Understand the various concepts in deep learning - weights, biases, activation functions, loss functions, back propagation gradient descent, etc
  • Common types of neural networks
  • Using Keras with TensorFlow
  • Image Recognition
  • Transfer Learning

For schedule, check out

IOT203 - Introduction to Machine Learning using MS Azure ML Studio

In this 1-day workshop, you will be introduced to Machine Learning using the Microsoft Azure Machine Learning Studio. You will learn what is machine learning, and how it can be useful to your organization. You will also learn the various machine learning algorithms and work through some real-life examples. Understand what is deep learning
  • Understand what is machine learning
  • Types of machine learning
  • Using Microsoft Azure Machine Learning Studio
  • Understanding machine learning metrics
  • Deploying ML models as web services
For schedule, check out

Friday, May 08, 2020

Go Cheat Sheet

Learning Go? Here is a Go (aka Golang) Cheat Sheet that is designed to make it easier for you to remember the various syntax of this exciting language. Click here to download the PDF copy of this cheat sheet.

Have fun! If you want to learn Go, consider joining my upcoming class on Applied Go Programming.

New Course - IOT210 - Applied Go Programming

Go (aka Golang) is one of the fastest growing programming languages. It is an open-source language released by Google in 2009. Go is a multi-purpose programming language specifically designed to build faster and scalable applications. In this course, you will:
• Learn the core features of the Go programming language
• Understand how concurrency works in Go
• Learn how to create real-world applications using Go
For schedule, check out

New Course - IOT306 - Developing Chatbots using Google's Dialogflow.

Chatbots are voice-aware bots, designed to simulate human conversations with users. In this one-day course, you will learn how to build your own chatbot applications using Google's Dialogflow, an interface for building chatbot applications:
* walk through all the steps required to build an intelligent chatbot
* learn how to integrate with external services to fulfil the user's request
* deploy your chatbot onto popular third party applications such as Twitter, Slack, and Facebook's Messenger
For schedule, check out

Thursday, February 06, 2020

Pandas DataFrame Cheat Sheet

If you are into Python data science, you would not doubt be familiar with Pandas's DataFrame. This super powerful and flexible library can sometimes be a little overwhelming. Hence, I have attempted to create a cheatsheet summarising some of the common things you usually do with the DataFrame. You can download it here:

Friday, July 26, 2019

Understanding dependencies: and dev_dependencies: in Flutter

If you develop in Flutter, you might remember seeing the dependencies: and dev_dependencies: sections in the pubspec.yaml file. Here is how they work.

Monday, May 13, 2019

Courses in June 2019

Learn Cross Platform Mobile Apps Development

There are a couple of frameworks available for developing cross-platform mobile apps - apps that run on iOS and Android with a single code base. In the month of June, we have the following courses available:

To make it easier to test your applications on the Android platform (for iOS you can use the Simulator), both courses come with an AndroidOne device. At the end of the training, you will be able to bring the device back home.

Programming Internet of Things (IoT)

In the month of June we will run three different IoT courses:

We have added new modules and lab exercises to all these courses. In particular, we are covering:

  • Fingerprint scanning in IOT101 and IOT104
  • Using Blynk and ThingSpeak in IOT101
  • Touchscreen in IOT101
  • Controlling relays using ESP-01 in IOT104

Blockchain and Smart Contract Programming

Blockchain technology is in high demand in the year 2019. Talk about Blockchain and people start to associate it with Bitcoin. But Blockchain is more than just cryptocurrencies. In particular, a programmable Blockchain like Ethereum is more useful. We have a course in June that shows you how to program the Ethereum blockchain and create your smart contract. Using Smart contract, you can build applications that:

  • require decentralised trust (such as OpenCerts)
  • automate the transfer of crypto-assets automatically
  • automate transactions and eliminate costly third party agents

The Blockchain course in June:

Programming Courses

The recent Stackoverflow Developer Survey 2019 reveals that Python has “edged out Java” and is the second most loved language. Stack Overflow refers to Python as the “fastest-growing major programming language”.

Python is used for many different tasks - automation, desktop and web, scientific, as well as artificial intelligence. If you have not started programming Python, now is a good time!

Node.js is an open source, cross-platform runtime environment for creating Web apps and Web services. Node.js apps are written using JavaScript, and it provides an event-driven architecture and a non-blocking I/O API that enhances an application’s throughput and scalability.

In our Node.js course, you will learn how to:

  • Write REST APIs
  • Use nvm to install different versions of Node.js
  • Use npm to manage your packages
  • Use npm to publish your own modules and libraries to the Node.js repository 

Here is the run in June:

Saturday, April 27, 2019

Introduction to Coding using the micro:bit (for kids 7 to 13)

Want to get your child started in programming? In this one day code camp, your child can learn how to get started with programming using the micro:bit. 

This course comes with a micro:bit and a couple of sensors, and it is the perfect way to get them interested in programming. 

Instead of learning programming through theory, your child will learn programming through doing. 

Date: 15 June 2019 (Saturday)
Time: 9am to 5pm
Lunch provided
Course Fee: S$395

Details at:

Wednesday, April 24, 2019

Course highlights

Inline image 1
25 April 2019

Learn how to program using the Python programming language. Besides learning the language, you will also learn how to use Python for:
  • Programming REST services
  • Sockets Programming
  • Database programming
  • Screen Scraping
  • Plotting Charts
  • Sending Push Notifications
  • And more

Learn how to develop cross-platform mobile app using Google's Flutter framework. You will learn:
  • The Dart Programming Language
  • Fundamental building blocks of developing cross-platform iOS and Android apps using the Flutter Framework

The MOB107 course comes with the Mi A2 lite for development and testing. 

Learn how to develop native Android apps using the Java Programming language. You will learn:
  • Getting started with Android Programming
  • Activities and Intents
  • Broadcasts and Broadcast Receivers
  • Handling Permissions in Android
  • Sending and Receiving SMS messages
  • Network Programming

The AND101 course comes with the Mi A2 lite for development and testing.

Learn how to develop native Android apps using the new Kotlin Programming language. You will learn:
  • Getting started with Android Programming
  • Activities and Intents
  • Broadcasts and Broadcast Receivers
  • Handling Permissions in Android
  • Sending and Receiving SMS messages
  • Network Programming

The AND102 course comes with the Mi A2 lite for development and testing. 

Learn how to recognise images, handwritten notes, and more using the Computer Vision API from the Microsoft Cognitive Services. You will learn:
  • How to use the Vision API
  • How to use the Face API
  • Write applications in iOS, Android, Python, and Node.JS to integrate Cognitive Services into your application

Get started with Node.js and learn how to manage your Node.js installations using nvm and publish your modules to You will learn:
  • How to use nvm to install different versions of Node.js
  • How to use npm to install Node packages
  • How to upload your own npm packages
  • How to access MySQL databases using Node.js
  • How to create a REST API using Node.js
  • How to create a online chat application using Node.js

The IOT101 on 20-21 June 2019 is now confirmed! Learn how to connect the Raspberry Pi 3B+ to the various accessories and sensors and send data to the cloud. 

NEW! Now includes:
  • Fingerprint Scanner
  • 3.5 inch touch screen 

For the upcoming IOT104 Arduino programming course, we will be using the ESP32 LoRa OLED development board. In addition, we will also be providing a number of Arduino boards, including the ESP8266 and ESP-01. 

NEW! Now includes:
  • Fingerprint Scanner
  • ESP-01
  • Relay

Learn how to program The BBC micro:bit using the MicroPython Programming language. Course includes an IoT kit including the micro:bit and a bunch of accessories.

Learn how Blockchain works and how to develop Smart Contacts using the solidity programming language.