Sunday, November 27, 2016

Changing emphasis of Intel XDK

If you have been using Intel XDK to build apps both HTML5 based and native apps, there is going to be (actually has been going on) a change in the direction. A number of frameworks were used with Intel XDK in the designer. You might have noticed that the number of frameworks are being deprecated. Presently, in version (the latest) 3641 only the Twitter Bootstrap is currently supported and the others are being deprecated.

Intel XDK is going to focus more on IoT apps. The other apps are not going to be supported in the Intel XDK. Since most of the technologies used in developing non-IoT apps are mature, Intel XDK will get provide documentation help to use these technologies.

This is according to Paul, one of the Intel XDK moderators:

" it's not that there is a benefit for developing IoT apps over mobile apps, they are quite different apps; the point is that we are focusing the tool to emphasize IoT app development, especially since the free and open-source tools available for developing, debugging and building Cordova mobile apps have now become quite mature. We will continue to support the development of Cordova mobile apps, but will rely more heavily on these freely available tools, rather than try to compete with them. The product today supports the creation of two basic types of apps: IoT apps and mobile Cordova apps. When we say "IoT companion apps" we simply mean a mobile Cordova app that is focused on working with an IoT app and any supporting IoT cloud services. As the product progresses it will make more sense."



In version 3641




That going forward the emphasis will be on IoT apps makes great sense from the point  view of Intel Corporation. Intel Corporation makes IoT boards of different kinds and will be investing a lot of effort on IoT.

What better way can be there than this change of direction.

More here for all comments on related topic:
https://software.intel.com/en-us/forums/intel-xdk/topic/700951

Polyfill with JavaScript

In the early days of Internet (some 10 years ago or so) one had to write some kind of code that recognizes the browser and control the flow so that the audience is given the information that there was no browser support for the functionality.

An extreme kind of instruction was that the browser's JavaScript functionality was not on, etc.

A Polyfill ( piece of code, plug-in,add-in, script) is a browser fallback so that feature(s) works in a modern browser also works in older browsers which per se did not support what is supported in the modern browser.

Here is a comprehensive collection of HTML5 Cross Browser Polyfills.

The term Polyfills was coined by Remy Sharp to describe JavaScript shims that replicate standard API found in modern browsers for those older browsers that do not support.

Polyfills are created by developers to fulfill this requirement and one can create ones own Polyfill .

One of the most popular Polyfills is htmlshiv (https://github.com/aFarkas/html5shiv)

In IE versions of 9.0 and prior versions
and would have been parsed as empty elements. These tags however described nesting of elements and styling them would have been difficult. Html5shiv takes care of this by directing the page if opened in IE 9 to use the appropriate script:



Wednesday, November 23, 2016

Good source for Apps with streaming content

Apps that use streaming data can be created with many programming languages including HTML, .NET, etc. with full SDK support.

According to this site,
"PubNub is a global Data Stream Network (DSN) and easy-to-use secure realtime communication API for IoT, mobile and web apps. The service scales to hundreds of millions of devices with 1/4-second worldwide latency and over 70 SDKs"

This is the stuff you should look into if you are interested in streaming data.

Here are developer support items that you may be interested in.

Mobile
Web

IoT

Games

Server Desktops




Thursday, November 10, 2016

JavaScript with TypeScript 2.1

Microsoft's TypeScript (also regarded as industrial strength JavaScript)  is getting upgraded with new features:

Improved Inference
Async Functions


TypeScript 2.0 was released as recent as September 2016. TypeScript 2.1 is in RC (release candidate)

The upgrade makes modelling easier and migrating JavaScript to TypeScript easier. Aysnc/await () introduced in ECMAScript 2016  is featured in the new release and makes asynchronous programming easier. It shares same keywords in C#, Dart and Python.

Here is sample code from the msdn blog links above:
=====
async function main() {
 await ping();
}
async function ping() {
 for (var i = 0; i < 10; i++) {
  await delay(300);
  console.log(“ping”);
 }
}
function delay(ms: number) {
 return new Promise(resolve => setTimeout(resolve, ms));
}
main();
====
Read the rest of the story here if you are into programming with JavaScript.