Bluemix ToDo App Updates

The ToDo apps for Bluemix was one of the first sample projects I published after becoming a developer advocate for Bluemix.  Even though the apps are simple, I still think they are some of the most meaningful samples we have.  Today I have made them even better 😉  Since Bluemix went GA we introduced the MongoLab service and an enhanced Cloudant service.  I have decided to change the ToDo apps so they take advantage of both of these new services.

Bluemix and the Internet of Things

Update:  Some of the content here is out of date, please see my updated blog post.

Bluemix Virtual Meetup – Mobile Cloud Services

We have scheduled our next Bluemix virtual meetup for July 23rd at 10 AM EST.  We will again be using Google Hangouts (hopefully without the audio problems this time).  For this meetup we will be focusing on the mobile cloud services in Bluemix, there will be plenty of information and demos to help you get started.  At the last virtual meetup we had a lot of questions on mobile so I figured this would be a good topic.  You can download this .ics file to add the event to your calendar and be sure to respond whether you will be attending on the Google+ events page.

Using Custom Domain Names In Bluemix

One of the more common questions I get about using Bluemix is “How do I use my own domain names for my apps in Bluemix?”.  Bluemix allows you to bind multiple routes to any given application so in addition to the mybluemix.net route your application has you can bind any number of other routes as well whether they use the mybluemix.net domain name or your own domain name.  Here is a short video of how you can use your own domain names in your application routes.

Using The Mobile Data Service In Bluemix

I have stated to look at the mobile services that are within Bluemix and experiment with how developers can use them in their mobile apps.  I decided to start with the Mobile Data service.  This service provides SDKs for iOS and Android (as well as ones for Node.js and client-side Javascript) which allow you to perform basic CRUD operations from your mobile app.  However before I got started playing with the Mobile Data service I needed a mobile app to experiment with.  Since I am an Apple user and I have iOS devices I decided to stick with iOS.  I found a really good tutorial from Apple which takes the novice iOS developer through building a ToDo app.  After I finished following the tutorial I was left with a working ToDo app, but the ToDos were not persisted so if I close the application all my ToDos were lost.  This seemed like a perfect app to add the mobile data service to in order to persist the ToDos the user creates.  The steps below assume you have finished following the tutorial from Apple and have a working ToDo app.

Access Service Info With Spring Cloud

Adding services to your application to integrate additional functionality is one of the primary benefits of using a PaaS like Bluemix.  Whether that is a database, a mobile push service, or some type of analytics service, you just pick what you need and bind them to your application.  You don’t have to install software of setup VMs, just point and click.  After you have done that you are always faced with the same problem, you now need to access the service info in the VCAP_SERVICES environment variable.  This info usually consists of some type of credentials or API keys, something that authorizes you to use the service in one way or another. As everyone probably knows, the VCAP_SERVICES environment variable is a JSON object, so extracting information from it just involves parsing JSON.  In Java you have many choices for doing that which I will not go into here, but it is a fairly simple task.  If you are going to be using more than one service in your application your probably going to want to write some type of utility class which allows you to extract arbitrary info for different services by passing some type of unique identifier for the service (typically the service name).  This will return you more JSON to work with.  Again, none of this is hard stuff, even an entry level developer.  However it is kind of monotonous, and when you think about the fact you need to implement this same pattern for every application you deploy to Bluemix, it is unbearable. A helper library would make our lives as Java developers better.  Apparently I am not the only person to think this because one exists :) It is called Spring Cloud.  Don’t let the name fool you, this library is not limited to just Spring apps, it can be used by any Java app, but if you are using Spring there are some added benefits.

Bluemix YouTube Playlist!!!

I have created a Bluemix YouTube playlist and I have been adding videos related to Bluemix as I come across them.  There are 32 videos in the playlist as of this post and I am sure that number will grow over time.  If you have videos you would like to me add let me know.

Article On How To Build The BlueChatter App In Node.js

A few weeks ago I wrote a blog post on a sample app I built in Node.js called BlueChatter.  At a high level the app is an IRC or chat like client.  However, that is not the main purpose of the app.  The real purpose of the app is to show how you can write apps that are scalable in BlueMix.  I have also now detailed the process of how I constructed this application in an article on developerWorks.  It takes you through writing the initial implementation, deploying it to BlueMix, and then changing the implementation so the app can scale in the cloud.  It is certainly a very detailed tutorial, so if you decide to follow along I would set aside some time to do it.  Even if you don’t follow along, reading through the tutorial should give you idea of how to build scalable applications for BlueMix.  Enjoy!

First Impressions Of BlueMix

Over the past few months IBM has been holding what it calls “200 Days Of BlueMix“.  These are essentially workshops where IBM introduces users to BlueMix and gives them the opportunity to work side by side with IBM engineers to get started building apps on the platform.  There have been a couple of videos that have come out of these events with some users sharing their initial thoughts about BlueMix and how they think it can help them change the way they are building applications.  If you are wondering what some actual users are saying take a listen!

Replay Of Yesterday’s BlueMix Virtual Meetup Now Available!!!

If you were not able to attend yesterday’s BlueMix Virtual Meetup, the replay is now available on YouTube.  Thankfully the demo gods were with me yesterday and I was able to successfully complete a live demo of adding a service, updating the code, and pushing back to BlueMix!  Unfortunately the audio was a little choppy at points, not sure why.  I will probably give Hangouts one more shot, maybe it was a one time thing but if it happens again I will look into other ways of hosting the virtual meetup.