Tuesday 28 June 2016


The Pragmatic Guide to Intel XDK, Intel XDK IoT Edition

Developers for a long time, have been constrained to working with different Software Development Kits (SDKs) in developing mobile apps that purpose to be run on different mobile OS. Traditionally, developers have had to work with Android Studio to develop for Android OS, Visual Studio to develop for Windows Phone OS, and XCode to develop for iOS (which apparently runs on a Mac only). That is until cross-platform application development was conceived. Presently there are a good number of cross platform development tools for one to work with, but there are more than enough reasons why any developer should adopt working with the Intel XDK to develop for just about any mobile OS platform there is out there.
Regardless of server side platform & language experience, a significant number of developers have experience with HTML, JavaScript and CSS. That said, the ultimate solution for hybrid apps development using HTML/CSS/JS is the Intel XDK.
 Intel XDK allows developers to immediately leverage these existing skills. The value of this can’t be overstated – as it reduces training and can enable a quick-to-market stance in companies ready to adopt it. The XDK was released with the aim of satisfying the tagline “Write Once, Run Anywhere”. The concept was simple: use one development tool for the different environments being supported. This just about summarizes why it is stirring up much hype within the developer ecosystem.
Intel At DeKUT is focused on leveraging student developers’ skills on the best technologies, which is why they held an intensive training on the XDK. Intel XDK Training was a one-day event with a mixture of lectures, hand-on tutorials, team based project work and social event, held on 4th June 2016 at Dedan Kimathi University of Technology Auditorium, led by the current Intel Student Partners +Ngesa Marvin  and +Chris Barsolai . The goal of the event was to train students on cross-platform application development using the Intel XDK and Intel XDK IoT Edition and bring them to a level that allows them to utilize the development tools packaged within the software.
We were thrilled to be joined by so many talented developers from within and outside our developer community. Beginners to experts, developers to makers, all were eager to hear about the latest buzz in town: The Intel XDK. We kicked off the event by Saturday mid-morning with a full-house of programmers eager to get a hold of the XDK package, and start hacking away. Chris Barsolai facilitated the session, briefly taking time at the start to introduce the Tech X team and emphasizing on their quest to engage developers within the community in beneficial open-source projects, sharing and creating an environment that supports developers’ growth.

XDK Once More


Chris then went on to introduce the Intel XDK. To him, simply put, the XDK is a hybrid app building platform that creates and develops apps without breaking the bank. The session was started off moderately, with a little of programming lecture for the audience. The main aim of the session was to make trainees knowledgeable of the elements used in hybrid mobile app development. Students were led through techniques of mobile application development, and how to go about building intuitive web apps using the powerful tools provided within the software. Barsolai’s mid-morning presentation highlighted on a good number of topics that included: syntax for the main web languages(HTML5/CSS3/JS), Webview, Apache Cordova APIs, the XDK Project Structure, frameworks for creating mobile apps, and mainly the toolset provided within the Intel XDK.


Barsolai stressed on why developers should shift over to making their hybrid apps with the Intel XDK, basing it majorly on the fact that the XDK makes use of Apache Cordova libraries built into it to create a native feel of the apps developed within its environment.
With the lecture session over, trainees got to take a breather while feasting on some eateries. They say a dev can survive on sugary munchies and code, and this was just about proven right during our training session.

The afternoon session was started off by a Women in Technology talk session, facilitated by the Google Women TechMakers Lead, Everlyne Kaberere. Everlyne is a strong advocate for women involvement in science, technology, engineering and mathematics (STEM). She emphasized on the need to involve more ladies in such events within the university, urging more awareness campaigns to be run such as Intel She Will Connect.


Deep Dive

Barsolai then facilitated the XDK practical session which was highlighted by an intensive training of the Intel XDK, taking participants through all the tools availed within the platform. Trainees were bright-eyed as they got their first on-screen feel of the XDK. It was intended that every developer who was a part of the event got to practically interact with the environment and utilize the tools within it. The session was highly interactive as devs got to contribute in building the training app.
A simple ‘Intel At DeKUT App’ was created. With the HTML5+Cordova project type selected, trainees got down to working on the app. According to the audience, the most fascinating feature of the XDK was the App Designer GUI layout editor, which lets one create a fully functional UI of mobile app without writing even a single line of code. A simple log in page was first created, and alternate pages designed. Buttons were then linked to appropriate pages to create a simplified navigation of the app.


Project Workarea of the XDK
Barsolai then demonstrated another useful feature of the XDK, which allows one to run the app on a real mobile device without performing a full build. This is highly assistive when one needs to perform debugging. Finally, the app was packaged as an android app and build performed on cloud. The final build of the demo app fascinated the audience who unanimously agreed that the app would be actualized, so watch out people, Intel At DeKUT has an app coming out soon, fully developed and built within the XDK.

NodeBots, Jonny five with Intel Edition
Thereafter, Ngesa Marvin introduced the audience into the concepts of Johnny-Five and JS robotics (NodeBots) and how they can utilize node Js to build JavaScript robots, the NodeBots. There has been a rapid rise in the use of JavaScript in recent times in a variety of applications, and JavaScript robotics has seen a rise in popularity too. There were shown how Nodebots makes the process of programming hardware circuitry very similar to how one would program a modern web page.
He walked the developers through the basic robotics projects including the physical hardware builds and the JavaScript code for them. They were also taken through the syntax of Node Js, libmraa and lib upm.
They were then introduced to the Intel Edison and shown the different features of the board. They were also shown the different breakouts boards that work with Intel Edison which includes Arduino Expansion Board, Intel Edison breakout board, and Spankfun boards. During the same session the developers were given justifications why JavaScript and Intel XDK IoT Edition are the perfect match for the bots.


Ngesa Marvin explaining a concept on Jonny five JavaScript robotics framework

Node Js on Yocto (Intel XDK IoT Edition)

During this session, Ngesa Marvin took the attendees right into the heart of Intel XDK IoT Edition. The developers were given Intel XDK IoT Edition to install and shown where they can find the latest version at the Intel Developer Zone. They were guided through creating simple projects from the inbuilt templates and on how to run them on IoT Devices. They were shown how to assemble the Intel Edison and the various ways to connect the Intel Edison to a network. The new Starter kit for the Intel Edison was also introduced to the developers and a quick tour of the several features in the Intel XDK IoT Edition environment given.
The Intel Edison was then linked wirelessly to the Intel XDK IoT Edition on a host computer connected to the same network and several prototypes build with the starter kit sensors. Different sensors and actuators were then added to the IoT projects and different changes made to the projects. They were then shown how to debug them on the board using the Intel XDK IoT Edition. 

One of the prototypes developed during the Intel XDK IoT Edition Hands on Session

By the end of the XDK IoT Edition session, it was clearly evident that students had seen the true power that the cross-platform development environment gives to mobile app & web app developers.  Knowing that training is a process and not an event and ensuring the training had a lasting impact, ISPs carried out follow-up trainings which saw over 10 fully built prototypes developed using the XDK.