Tuesday, May 03, 2016

IOT101 now comes with more sensors and a 7" Touch Display!

Past participants for the IOT101 course were deluged with the various sensors and equipment; it is now going to get worse! We are adding a large number of sensors as well as the official Raspberry Pi 7" Touch Screen Display (with 10 Finger Capacitive Touch) to the IOT Kit. That is to say, you are going to get a box of gadgets that are going to keep you busy for the next one week after the course!

What's more, we are using the latest Raspberry Pi 3, which comes with Bluetooth LE and WiFi built in.


Here are the additional sensors you will get on top of the standard IOT Kit:
  • Small passive buzzer module
  • 2-color LED module
  • Hit sensor module
  • Vibration switch module
  • Photo resistor module
  • Key switch module
  • Tilt switch module
  • 3-color full-color LED SMD modules
  • Infrared emission sensor module
  • 3-color LED module 
  • Mercury open optical module
  • Yin Yi 2-color LED module 3MM
  • Active buzzer module 
  • Temperature sensor module
  • Automatic flashing colorful LED module
  • Mini magnetic reed modules
  • Hall magnetic sensor module
  • Infrared sensor receiver module
  • Class Bihor magnetic sensor
  • Magic light cup module
  • Rotary encoder module
  • Optical broken module
  • Detect the heartbeat module
  • Reed module
  • Obstacle avoidance sensor module
  • Hunt sensor module
  • Microphone sound sensor module
  • Laser sensor module
  • 5V relay module
  • Temperature sensor modules
  • Linear magnetic Hall sensors
  • Flame sensor module
  • Sensitive microphone sensor module
  • Temperature and humidity sensor module
  • XY-axis joystick module
  • Metal touch sensor module
* Items in the IoT Kit subject to change based on availability

Monday, May 02, 2016

Programming Smartwatches

Smartwatches have been around for quite sometime. While some do not live up to their hype, some are getting better with improvements made to the software and hardware.

We have two courses for those of you who are interested in smartwatch programming:

  • IOS302 - Advanced iOS - Apple Watch Programming
  • AND304 - Advanced Android - Android Wear Programming

For each course, participants will get either an Android Wear device, or an Apple Watch.

iOS Boot Camp

If your company is planning to go into iOS development, the 5-Day iOS Boot Camp is the most cost-effective way to get your developers jumpstarted. Available in Swift or Objective-C, this course focuses on all the important aspects of iOS development to jumpstart your developers in the shortest time.  We can conduct this course in house, or you can send your developers to our open classes.

Topics include:

  • Introduction to Objective-C or Swift
  • Storyboard
  • Location-Based Services
  • Design Patterns
  • Protocols and Delegates
  • Databases
  • Web Services
  • Background Fetch
  • Network Connectivity

We have conducted this course successfully worldwide. Contact Wei-Meng Lee @ weimenglee@learn2develop.net for details such as costing, venue, as well as in-house arrangements.

New Data Science Series in the IOT Suite of Courses

As I have mentioned many times, IoT (Internet of Things) is much more than collecting tons of data. It also involves analysing data to derive sense (forgive me for the pun) out of them and to use them to make intelligent decisions. Hence, we now have a new series of courses (more to be added) focusing on Data Science:

  • IOT201 - Learning the Python Programming Language
  • IOT202 - Introduction to Data Science using Python 

Python is such a useful language for manipulating data that we are making it the first language to learn in this series. It is also easy for beginners to pick up, and this makes learning Data Science much more palatable.

Learn iOS Programming using Swift

Learn how to program your iOS devices using Swift. In this course, you will learn the the fundamental building blocks of iOS programming:

  • Crash course in Swift
  • Using Storyboard
  • Views and View Controllers
  • Different types of applications
  • Location Based Services
  • Displaying Maps
  • File Storage
  • Background Fetch
  • SQLite Database

In addition, participants will also get 2 Swift cheat sheets updated to the latest version of Swift. These 2 cheat sheets are handy companions for every Swift developers! You can also download your own copy here:


 

Learn Android Programming using Android Studio 2

Learn Android Programming using the latest Android Studio 2. In this course you will learn all the fundamental building blocks of Android programming:
  • Activities
  • Intents
  • Broadcasts and Broadcast Receivers
  • Google Maps
  • Location Based Services
  • Databases
  • File Storage

At the end of the course, you would have the knowledge to build some cool and exciting Android Apps and test it on your real devices!


Bluetooth Low Energy Courses Now Cover Eddystone

The following Bluetooth Low Energy courses have been updated to cover the latest beacon technology from Google - Eddystone:


  • AND303 - Advanced Android - Programming Bluetooth Low Energy
  • IOS301 - Advanced iOS - Programming Bluetooth Low Energy


In addition to getting a unit of Ti SensorTag, participants will also get a pack of 3 beacons from Estimote.

Friday, April 15, 2016

Changes in Swift 2.2 - Selectors

Prior to Swift 2.2, you can use a string literal for Objective-C selectors. For example, in the following code snippet you could specify onTimer as the selector:

    func onTimer() {
        ...
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        
        delta = CGPointMake(12.0,4.0)
        NSTimer.scheduledTimerWithTimeInterval(0.05,
                                               target:self,
                                               selector:"onTimer",
                                               userInfo:nil,
                                               repeats:true)

    }

Because there is no checking to ensure that the selector name is a well-formed selector (or that it even refers to a valid method), this method of naming a selector is dangerous and hence deprecated in Swift 2.2. 

Instead, you should now use the new #selector expression that allows you to build a selector from a reference to a method. The above code now looks like this:

    override func viewDidLoad() {
        super.viewDidLoad()

        NSTimer.scheduledTimerWithTimeInterval(0.05,
                                               target:self,
                                               selector:#selector(ViewController.onTimer),
                                               userInfo:nil,
                                               repeats:true)
    }

If the target method accepts arguments, then the selector looks like this:

    func doSomething(num1:Int, num2:Int) {
        ...
    }

    override func viewDidLoad() {
        super.viewDidLoad()        
        
        NSTimer.scheduledTimerWithTimeInterval(0.05,
                                               target:self,
                                               selector:#selector(
                                               ViewController.doSomething(_:num2:)),
                                               userInfo:nil,
                                               repeats:true)
    }

While the old method of using string literal for selector is still supported in Swift 2.2, you should use the new syntax when updating your code.

Sunday, March 13, 2016

IOT201 - Learning the Python Programming Language - 5 April 2016

The year 2016 is the year of Python. With the growing importance and interest in Data Science, Python is increasing used as the language of choice to crunch big numbers. With the burgeoning third-party libraries, Python is well suited to be the ideal language for data scientist. Come and join us in this one-day course on Python programming, and learn the essence of Python to get ready for the path to Data Science!
IOT201 - Learning the Python Programming Language
Course Fee
S$799 (nett; no GST)
If your company is sponsoring you for the training, your company can enjoy 400% tax deductions/ allowances and/or 60% cash payout for investment in innovation and productivity improvements under the Productivity and Innovation Credit (PIC) scheme. For more details, check out the Productivity and Innovation Credit page. 
Schedules
Start DateEnd DateDetailsCategory
Tue Apr 05 2016Tue Apr 05 2016PDF
Venue
Bayview Hotel Singapore
30 Bencoolen Street
Singapore 189621 

Wednesday, March 09, 2016

IOT courses in March - IOT101 and IOT102

The IOT courses at the end of March are all confirmed. It's going to be another week of fun with electronics and programming, and of course possibilities! Let your imaginations soar with all the projects that you will embark on, and see how you can deploy them in your own environment!

We are getting ready to test all the Pis to make sure they are ready for the big day!

WEB301 - Developing and Deploying Web Apps using Amazon Web Services (AWS) - 16-17 June 2016

Thinking of hosting your own Web services and applications? Not sure what languages to learn for developing your backend services? Join us in this new course on AWS and Node.js. You will learn the key services of AWS - EC2, ELB, RDS, S3, as well as how to develop backend services using Node.js.
WEB301 - Developing and Deploying Web Apps using Amazon Web Services (AWS)
Course Fee
S$1197 (nett; no GST)
If your company is sponsoring you for the training, your company can enjoy 400% tax deductions/ allowances and/or 60% cash payout for investment in innovation and productivity improvements under the Productivity and Innovation Credit (PIC) scheme. For more details, check out the Productivity and Innovation Credit page. 
Schedules
Start DateEnd DateDetailsCategory
Thu Jun 16 2016Fri Jun 17 2016PDF
Venue
Bayview Hotel Singapore
30 Bencoolen Street
Singapore 189621 

Monday, March 07, 2016

AND304 - Advanced Android - Android Wear Programming - 23 March 2016

For the upcoming Android Wear course, we will be using the LG Urbane Android Wear watch for testing and development (which you can keep at the end of the course).
AND304 - Advanced Android - Android Wear Programming
Course Fee
S$1297 (nett; no GST)
If your company is sponsoring you for the training, your company can enjoy 400% tax deductions/ allowances and/or 60% cash payout for investment in innovation and productivity improvements under the Productivity and Innovation Credit (PIC) scheme. For more details, check out the Productivity and Innovation Credit page. 
Schedules
Start DateEnd DateDetailsCategory
Wed Mar 23 2016 CONFIRMEDWed Mar 23 2016PDF
Venue
Bayview Hotel Singapore
30 Bencoolen Street
Singapore 189621 

Thursday, February 04, 2016

IOT102 Programming Internet of Things (IoT) using Windows 10 IoT Core course (18-19 Feb 2016)

In the upcoming IOT102 - Programming Internet of Things (IoT) using Windows 10 IoT Core course (18-19 Feb 2016), you will learn how to send push notifications using GCM to your Android devices. This is very useful as your Raspberry Pi may be connected to various sensors and can automatically send notifications when one of the devices reaches its threshold (such as a smoke detector detecting smoke in your room).


IOT102 - Programming Internet of Things (IoT) using Windows 10 IoT Core
Course Fee
S$1897 (nett; no GST)
If your company is sponsoring you for the training, your company can enjoy 400% tax deductions/ allowances and/or 60% cash payout for investment in innovation and productivity improvements under the Productivity and Innovation Credit (PIC) scheme. For more details, check out the Productivity and Innovation Credit page. 
Schedules
Start DateEnd DateDetailsCategory
Thu Feb 18 2016 CONFIRMEDFri Feb 19 2016PDF
Mon Mar 28 2016Tue Mar 29 2016PDF
Wed Apr 06 2016Thu Apr 07 2016PDF
Mon Jun 20 2016Tue Jun 21 2016PDF
Venue
Bayview Hotel Singapore
30 Bencoolen Street
Singapore 189621 

Wednesday, February 03, 2016

IOS101 - Fundamentals of iPhone Programming using Swift course - 1-2 March 2016

Learn how to develop iOS applications in the upcoming IOS101 - Fundamentals of iPhone Programming using Swift course. You will learn about the new language - Swift, and how it allows you to quickly and easily develop iOS applications. You will also learn about some important concepts in iOS development:

* Protocols and Delegates
* Outlets and Actions
* Views and View Controllers
* AutoLayout
IOS101 - Fundamentals of iPhone Programming using Swift
Course Fee
S$1197 (nett; no GST)
If your company is sponsoring you for the training, your company can enjoy 400% tax deductions/ allowances and/or 60% cash payout for investment in innovation and productivity improvements under the Productivity and Innovation Credit (PIC) scheme. For more details, check out the Productivity and Innovation Credit page. 
Schedules
Start DateEnd DateDetailsCategory
Tue Mar 01 2016 CONFIRMEDWed Mar 02 2016PDF
Venue
Bayview Hotel Singapore
30 Bencoolen Street
Singapore 189621  

Sunday, January 24, 2016

AND101 - Fundamentals of Android Programming using Android Studio

In Marshmallow (Android 6.0), permissions required by your app are all locked down by default. Instead of giving a blanket approval when installing the app, the user is now asked to grant specific permission when the app is run. This allows the user to only grant permissions that the app need to do its work.

The user now has the power to deny the app from certain permissions that is deemed too dangerous.

In the upcoming AND101 course, you will learn the latest changes in Android 6 permissions, and how your app can be written to request for specific permissions in order to run correctly.
AND101 - Fundamentals of Android Programming using Android Studio
Course Fee
S$1197 (nett; no GST)
If your company is sponsoring you for the training, your company can enjoy 400% tax deductions/ allowances and/or 60% cash payout for investment in innovation and productivity improvements under the Productivity and Innovation Credit (PIC) scheme. For more details, check out the Productivity and Innovation Credit page. 
Schedules
Start DateEnd DateDetailsCategory
Mon Mar 21 2016 CONFIRMEDTue Mar 22 2016PDF
Venue
Bayview Hotel Singapore
30 Bencoolen Street
Singapore 189621  

IOS305 – 1-Day Developing Secure iOS Applications

In this one-day course, you will learn how to write secure iOS applications. You will learn how to save user data securely on your iPhone, and how to perform authentication within your application using custom authentication and using Apple’s Touch ID.

You will learn:
Implementing local authentication on your application
Using Touch ID for authentication
Cryptography in iOS
       o Hashing
       o Symmetric and Asymmetric Encryption/Decryption
Saving passwords in Keychain
Saving Keychain data on iCloud
Sharing Keychain with Apps made by your team
Obtaining Passwords from the user
Connecting to a secure REST API service
iOS File system Security

Security Best Practices
IOS305 - Advanced iOS - Developing Secure iOS Apps
Course Fee
S$799 (nett; no GST)
If your company is sponsoring you for the training, your company can enjoy 400% tax deductions/ allowances and/or 60% cash payout for investment in innovation and productivity improvements under the Productivity and Innovation Credit (PIC) scheme. For more details, check out the Productivity and Innovation Credit page. 
Schedules
Start DateEnd DateDetailsCategory
Fri Apr 01 2016Fri Apr 01 2016PDF
Venue
Bayview Hotel Singapore
30 Bencoolen Street
Singapore 189621 

Thursday, January 14, 2016

Monday, December 28, 2015

Learning Node.js and MongoDB

Writing a mobile app and need to write backend services to support your apps? With the arrays of server-side technologies, it is often mind-boggling to think about the various options available.

Introducing Node.js and MongoDB.

Using Node.js, you can use your favourite programming language - JavaScript, to create server apps rapidly and easily. Node.js is designed to be non-blocking, supports event-driven I/O, and is light weight and efficient. Using Node.js, you can create your own Web server in a matter of minutes. And using it to create RESTful services is both fast and efficient.
While most apps require traditional relational databases, with the advent of mobile apps and location-based services, spatial data is getting more and more common. This is where MongoDB shines. Using MongoDB, you can query spatial data from the database from a single statement. For example, your MongoDB contains a 100,000 places of interest and you need to find the nearest ATM from a current location. How do you do this in SQL? Well, MongoDB does that in a single statement and voila! You got the result in split-seconds.

WEB106 Programming Web Apps using Node.js (S$799)


WEB104 Programming NoSQL using MongoDB (S$799)

Come and join us in the upcoming courses on Node.js and MongoDB.

Learn Android and Android Wear Programming

Learn how to program Android apps for your latest Android device. You will learn the fundamental topics for Android apps development as well as learn how to deploy your apps onto real devices. 

AND101 Fundamentals of Android Programming using Android Studio (S$1197)


Once you have learned the fundamentals of Android development, you can move on to program the Android Wear. This course comes with a Android Wear device, which you can use for testing your apps.

AND304 Advanced Android - Android Wear Programming (S$1297)