5 Days (Instructor-Led)

This workshop is a hands-on guide to designing and building mobile applications using Google's Android open-source platform. The course explains what Android is, the Android SDK, all essential features, as well as the advanced capabilities and APIs such as background services and notifications. This complete hands-on workshop encourages participants to learn by building a real-life working application, which can serve as a basis for their future Android projects. By the end of the course, each participant will have a complete functional Android application incorporating most of the key features of the platform.

Target audience
This workshop is intended for software developers interested in developing applications for Android mobile phones supporting popular Android versions.

All participants should know the fundamental of object oriented programming using JAVA, candidate should be familiar with basic Java SE 1.6++ (classes, control flow statements, instantiation, inheritance, initialization, assignment, method overloading and overriding etc).

  • Upon completion of this course, you will be able to:
  • Build your own applications for Android mobile phones.
  • Understand how Android applications work, Android application components, manifest and Intent.
  • Design Android applications with compelling user interfaces by using and creating your own layouts using external resources.

  • Use Android Web APIs for assessing Web Services such as Twitter etc. in background services
  • Take advantage of Android APIs for data storage and retrieval via user preferences, files and local databases.
  • Utilize the powerful Android API on maps, speech, medias and hardware to build complex applications
  • Debug, test and deploy your own applications on Google Play Store.

Course Outline
Beginning (Day 01)
Guidance Introduction
  • What is Android?
  • Android Architecture
  • Android Version and Distribution
  • Knowledge Check

Android Development Environment
  • System requirements
  • Workflow
  • Demo Development Environment Setup
  • Unpacking SDK ADT Bundle
  • Installing and Updating SDK
  • Creating AVD
  • Connecting a Mobile Device
  • Knowledge Check
  • Lab Activity 1

Android App Development
  • Demo App Development
  • Assigning ID
  • Size, Padding and Margins
  • Project Structure
  • Android Activity
  • Activity Life Cycle
  • Knowledge Check
  • Lab Activity 2
  • First App Source Code

Android UI
  • UI layout
  • Android Common Layout#
  • Demo Layouts and Widgets Manipulation
  • Knowledge Check

Handling UI Widgets Input Events
  • On Click Listener
  • Image View
  • Image Button
  • Edit Text
  • Check Box
  • Flipper
  • Knowledge Check
  • Lab Activity 3
Widgets (Day 02)
  • Selection Widgets
  • Adapter
  • ListView
  • Spinner
  • GridView
  • Gallery
  • HorizontalScrollView
  • AutoCompleteTextView
  • Knowledge Check
  • Lab Activity 4

Toast, Dialogs and Notifications
  • Toast
  • Custom Toast
  • Dialog
  • Notification
  • Knowledge Check
  • Lab Activity 5

Other User Interface (Day 03)
  • Option Menu and Action Bar
  • Context Menu
  • Knowledge Check

  • Passing Data
  • Sharing using Intent
  • Sharing using Intent chooser
  • Sharing with specific package
  • Knowledge Check
  • Lab Activity 6

Asynctask Internet Connection
  • WebView
  • HttpGet
  • HttpPost
  • HttpURLConnection
  • Knowledge Check

Persistent application data
  • Shared Preferences
  • File Resources
  • SQLite Database
  • Knowledge Check
  • Lab Activity 7

Intermediate (Day4)
Location Service
  • Location
  • Map
  • GeoCoding
  • Reverse GeoCoding
  • Knowledge Check

  • Text to Speech
  • Speech Recognizer
  • Knowledge Check
  • Lab Activity

  • Motion Event
  • Multi Touch

  • Media Player
  • Media Recorder
  • Image Capture
  • Video Capture

Sensor (Day5)
  • Accelerometer
  • Proximity
  • Gyroscope

Vibration Telephony
  • Making a Call
  • Sending SMS
  • Telephony State
  • Registering
  • Signing
  • Application Version
  • Package naming
  • Google Play
  • 3rd Party Market



5 days (Instructor-Led)

This 5-day course will guide students through the process of designing and developing iPhone/iPad Touch applications. The goal is to get you past the initial learning curve to help you to understand the way iPhone/iPad Touch applications work and how they are built.

Target audience

This workshop is intended for Programmers and designers with programming abilities who are interested in developing applications for iPhone and iPad supporting popular iOS application.


All participants should know the Basic competency in at least one object-oriented programming language (such as C++/C#/Java). Participants are also required to register as an Apple iOS Developer (Free) at apple website,

Mac machines are provided for participants when training are conducted at iTrain. If participant’s want to use their own Mac, install the latest iOS SDK and xCode prior to the training.

Course Outline
Module 1 ~ Fundamentals Getting started with Xcode
Getting started with XCode
  • Introduction
  • Updating
  • Getting other iOS Simulator
  • Updating the Documentations
  • Interface
  • ToolBar
  • Navigation Area
  • Editor Area
  • Utility Area

Getting to know Objective-C Language
  • Introduction
  • Files
  • Coding Practice
    » MVC Model-View-Controller
    » MVC Diagram
  • OOPs Basics
  • Basic Variables
  • @Property
  • @Property Attributes
  • NSLog Output
  • Class Declaration
  • Methods calling
  • Allocating & Initializing Objects
  • Memory Allocation
  • Protocol & Delegate
  • Selectors
  • Categories

Error Debugging using Instruments
  • Debugging Tools Instruments
  • Instruments Overview

Overview of iOS 6 and iOS 7
  • iOS Architecture
  • iOS6 SDK Features
  • iOS7 SDK Features
  • Apps Desiging Process
    • Design
    • Design Trends

Apple Developer Program (ADP)
  • DUNS Number

    iTunes Connect
    Provisioning Portal
    Adhoc Apps Deployment
    App icon, default launch screen image, App display name

Module 2 ~ Creating Interfaces Interfaces
  • iOS Interfaces

  • View Types
  • View UI Bar Elements
  • View Typical Startup Sequence
  • View Typical Methods Usage
  • View Exit methods
  • View Measurement
  • View Different Table Views
  • View Navigation Controller
  • View With Tab bar Controller
  • View MultiViews Hierarchy

Create View
  • UiNavigationBar Controller
  • Nested navigation Controller
  • UITabBarController
  • Multi Views

Storyboard & Segue
  • Introduction
  • Views
  • Storyboards & Static Table
  • Dynamic & Static Table
  • Creating Custom Cells

Multi Views
  • Segue Elements
    » Passing Data diagram
    » Passing Data
    » Sample passing data code

- UI Differences
- PopoverController
- PopoverController code
- PopoverController via Storyboard
- SplitviewController
- SplitviewController Anatomy
- SplitviewController How it Looks Like

Module 3 ~ Creating Data
PList Property List (Local)
  • Introduction
  • Retrieving data
  • PList to Table

SQLite (Local)

  • Introduction
  • Tools
  • Step-by-Step

Core Data (Local)

  • Overview
  • Introduction
  • Core Data vs SQLite
  • Step-by-Step

JSON (Remote)

  • Introduction
  • Frameworks
  • Step-by-Step

App using NSUserDefault
  • App Settings
  • NSUserDefaults
    » Introduction
    » Store data code
    » Retrieve data code


ICloud Module 4 ~ Devices Features
Core Location
  • Overview
  • Accuracy
  • Basic Setup

Map using MapKit Framework
  • Overview
  • Placing point
  • Annotation Details
  • Step-by-Step

Creating Camera Functionality
  • Overview
  • Code
  • Check Camera Availability
  • Check support video

Gesture Adding
  • Overview
  • UIGestureRecognizer
  • Motion gestures

Adding Facebook Integration
  • Overview
  • Adding Facebook to your app

Module 5 ~ Multimedia & Localization Making Multimedia Audio & Video
  • Movie Formats
  • Audio Formats

App Localization Internationalize your App

  • Why Localization
  • What can be localized
  • How to
  • NSLocalizedString
  • App name
  • Changing Language
  • Common Pitfalls

  • PDF Displaying ¬†Using UIWebview to display webpage.

    Data Science

    Data Science Foundation Certificate (2-days)

    An introductory course that covers the fundamental concepts that begins the career path of a data scientist. It covers the basics of algorithms, machine learning techniques, data mining concepts. The course also provides case studies to elaborate how companies of different type adopt data science and grow their business. There will also be lab based exercises for participants to experiment how to gain insights using real world datasets.

    Certified Data Science Specialist (3-days)

    This course provides the basic knowledge and techniques to get you started with your journey to become a data scientist. The course will cover the different types of data according to their nature, and different data formats. It will also cover the basics set of tools, that enables you to collect data, understand key features in a dataset, and the techniques for collecting, cleaning, and sharing data.

    Certified Data Science Expert (3-days)

    This course brings you to next level after becoming a data science specialist. You will learn techniques on data exploration and machine learning, and also the data science workflow by practicing how to explore and visualize data using open source tools. You will also explore the differences between supervised and unsupervised learning techniques and practice building predictive models.

    Certified Data Scientist (3-days)

    This course prepares you to begin a data scientist career. You will learn how to architect a data science project, managing the data using Hadoop. You will learn how to work independently as a data scientist, from forming hypothesis, to validate the model. In addition, you will also learn how to handle unstructured text, coupling with techniques to analyze and extract meaning from extremely large data sets. Upon complete, you are equipped with the abilities to apply data science in fields such as marketing, business intelligence, scientific research and more.

    In order to obtain the certificate, You will need to deliver a data science project that incorporates the knowledge, skills and tools learn in the previous modules.