Archive

Blog on All Things Cloud Foundry

How to Use Snap Packages when Collecting IoT Data with Predix Time Series

Ilya Drabenia

canonical-snaps-ge-predix-time-series-demo-app

Snaps, designed by Canonical, are intended for packaging applications and their dependencies, along with the instructions for running these applications. In this article, we focus on how to write time-series data from your Linux environment to the Predix Time Series service using a snap.

(more…)

No Comments

Creating Your First Serverless App with AWS Lambda and the Serverless Framework

Ilya Drabenia

serverless-architectures

Serverless architectures are one of the newest trends in computing that brings reduced infrastructure and development costs to the table. According to this approach, an application is split into multiple functions with each of them deployed separately.

Here, we demonstrate how to create a serverless application and deploy it to AWS Lambda, as well as explain some of the architecture basics.

(more…)

No Comments

Automating Customer Interactions with IBM Watson Conversation and Bluemix

Ilya Drabenia

ibm-bluemix-watson-conversation-service

Virtual agents and chatbots can significantly optimize the operations of customer service departments. Trained to answer questions frequently asked by end users, they help organizations to automate a variety of customer interactions, engaging team members only in complex situations.

In this post, we explain how to work with the Watson Conversation service in Bluemix for creating chatbots.

(more…)

1 Comment

Using Spark Streaming, Apache Kafka, and Object Storage for Stream Processing on Bluemix

Ilya Drabenia

stream-processing-apache-spark-kafka-on-ibm-bluemix

One of the key points in the Industrial Internet is stream data processing. Equipment fault monitoring, predictive maintenance, or real-time diagnostics are only a few of the possible use cases. Some of the services provided by IBM Bluemix enable you to significantly speed up the implementation of such use cases. With Bluemix, you are not required to deploy and configure Hadoop, Apache Kafka, or other big data tools. It allows you to launch service instances in a few clicks.

In this article, we explain how to integrate and use the most popular open-source tools for stream processing. We explore IBM Message Hub (for collecting streams), the Apache Spark service (for processing events), and IBM Object Storage (for storing results).

(more…)

2 Comments

Data Stream Processing on IBM Bluemix: Streaming Analytics, Apache Spark, and BigInsights

Ilya Drabenia

bluemix-data-streams-apache-spark-hadoop-ibm-streams

Essentially, the Internet of Things is about collecting and exchanging data, which then can be used in many different ways. Equipment fault monitoring, predictive maintenance, or real-time diagnostics are only a few of the possible scenarios. Dealing with all this information, however, creates certain challenges for the field of the IoT, and stream processing of huge amounts of data is among them.

In this article, we compare IBM Bluemix services for real-time processing of data streams, such as IBM InfoSphere Streams, a managed Apache Spark service, and IBM BigInsights for Apache Hadoop.

(more…)

No Comments

Prototyping a Greenhouse Management System with Node-RED and Predix in 48 Hours

Ilya Drabenia

greenhouse-management-app-with-node-red-and-ge-predix

In the agriculture industry, the Internet of Things helps to build smart farming systems. Using information from sensors and machinery, such solutions enable farmers to optimize their decisions and overcome many challenges they face.

With proper technologies and expertise at your disposal, these systems can be created in a very reasonable amount of time. Here are the details about the prototype of an automation system for greenhouse farming that we managed to create in 48 hours—employing Raspberry Pi 3, an I2C light sensor, Node.js, and GE Predix.

(more…)

No Comments

IoT Prototype: Light Monitoring with NodeRED Components in Predix

Ilya Drabenia

GE-Predix-Industrial-Lighting-MonitorNodeRED is an open source IoT tool that helps to reduce development efforts when working with hardware, APIs, and services. However, how long exactly would it take to build something tangible? What if we used it with a PaaS?

Our team has created some NodeRED components for GE Predix when working on a prototype for a light monitoring system. Here is a detailed account of the project, including its source code, data flow, hardware details, etc.

(more…)

No Comments

How to Speed Up AngularJS Apps That Use Internalization Libraries

Ilya Drabenia

angularjs-logo

For a while, I was involved into development of a document workflow management-as-a-service system. The client app was created using AngularJS and I was to decide on the best option for its internalization (i18n) and localization (l10n). However, the service had a rather complex UI with plenty of messages to be translated and transferred between the server and the client. Therefore, I was concerned about the impact of client-side translation on performance.

In this post, I explore this in detail and suggest an approach that accelerates performance of AngularJS internationalization.

(more…)

3 Comments

Evaluation of AngularJS, a JavaScript UI Framework

Ilya Drabenia

During the last two months, our team has been using AngularJS, a JavaScript UI framework, to develop a user interface for the next-generation document management system. We also utilized Grunt for building a client application and Karma for automating unit tests. The back-end part was developed with the Java technology stack.

angularjs2

If you’re a novice to AngularJS, you can start with this introduction article. Below I’ll provide a short overview of the main AngularJS features we tried and give you some tips on how to fix some issues.

 

Rapid development

With this tool, JavaScript development becomes really fast. A single person can bring out 1–2 significant features a day. Not less important, AngularJS is also good for prototyping. This framework makes it is possible to find the right balance between a code quality and velocity of the development process.

 

Extending HTML capabilities with Directives

AngularJS comes with a set of built-in directives that allow for creating custom HTML elements and modifying the behavior of DOM elements. It can be quite useful for building complex front ends. Isolated scopes enable developers to divide data and use a particular portion of this data when necessary. One of the main documentation drawbacks is that it provides just a few examples of how to work with directives and scopes. So, we had to use these components intuitively.

(more…)

1 Comment

Benchmarks and Research

Subscribe to new posts

Get new posts right in your inbox!