Build your cognitive app with IBM Watson™ on Bluemix™

IBM Watson™

IBM Watson™ is a technology platform that uses natural language processing and machine learning to reveal insights from large amounts of unstructured data. IBM Watson™ can answer people’s most pressing questions, quickly extract key information from all documents and reveal insights, patterns and relationships across data.

IBM Watson™ reveals insights by analyzing unstructured data (80% of all data today), including news articles, research reports, social media posts and enterprise system data. IBM Watson™ understands complex contexts and question, evaluating all possible meanings. Then, presents insights and solutions, providing supporting evidence and quality of information found.


The Future of IBM Watson™

IBM Watson™ Developer Cloud

The Watson Developer Cloud is a library of Watson APIs that you can use to create Powered by Watson apps. From gaining insights from text to analyzing images and video, you can tap into the power of Watson APIs to build cognitive apps.
The Watson Developer Cloud services are organized in four categories:



Language

Gain insights, extract value, and learn more from any written content. For instance:

  1. Extracting keywords, entities and even sentiment from text
  2. Interpreting and classifying natural language
  3. Understanding people’s personality, characteristics and needs to drive personalization

Speech

Transform your interactions and applications using speech:

  1. Converting the human voice into the written word
  2. Synthesizing natural-sounding speech in a variety of languages and voices
  3. Translating and publishing content in multiple languages

Vision

IBM Watson™ isn’t just sound or text. It can do many interesting things for your images:

  1. Extracting objects, people and text found within an image
  2. Detect gender, age range and celebrities through facial recognition
  3. Classification and organization of images based on visual recognition

Data

Harness your big data and simplify the complex with Watson Data Insight services:

  1. Accessing news and blog content enriched with natural language processing
  2. Providing tradeoff analytics to solve complex problems balancing multiple objectives


Each Watson service provides a Representational State Transfer (REST) API for interacting with the service. Also, SDKs and client libraries in several programming languages, like Node, Java, Python and IOS, are available to leverage the IBM Watson services.

IBM Bluemix™

IBM Bluemix™ is the cloud platform in which you assembly, manage and deploy application that you develop with the Watson Developer Cloud services. In IBM Bluemix™ you can use a combination of the most prominent open-source compute technologies to power your apps:

Instant runtimes
  • Application-centric runtime environments based on Cloud Foundry:

  • JavaTM, Node.jsTM, Go, PHP, Python, Ruby and more

  • Custom Cloud Foundry-compatible buildpacks
IBM Containers
  • Portable and consistent delivery of your application leveraging Docker technology

  • IBM images-based containers (Liberty, Node, Mobile First, etc.)

  • Bring your container images
APIs and services
  • Choose from IBM, third-party, and community services to extend the functionality of your application in the following areas:
    • IBM Watson™ Cognitive Services
    • Mobile services
    • DevOps
    • Web and Application
    • Network
    • Integration
    • Data and Analytics
    • Security
    • Storage
    • Business Analytics
    • Internet of Things
Virtual machines
  • OpenStack environment to run and manage VMs in cloud

Getting started with IBM Bluemix™

GET STARTED

Everything you need to get started at the Lanzarote Cognitive App Challenge

We will provide everything you may need to utilize the IBM Watson™ Services at the Challenge, via IBM Bluemix™. However, we have prepared a Starter Kit to help you understand and prepare your ideas and get familiar with the development and deployment environment.



SIGN UP FOR BLUEMIX™

First things first, sign up for IBM Bluemix™! What is IBM Bluemix™, you ask? It's IBM's simple and flexible cloud development platform. Whether you're looking to build a web app or a mobile backend in the cloud, IBM Bluemix™ has you covered with a variety of runtimes (like Node.js, Python, Ruby on Rails, Java, etc...) and services (like Mobile Push, Cloudant, Twilio, MongoLab, etc...) that we're sure will fit your app's use case.

Since this is a short event, a IBM Bluemix™ 30-day free trial is well suited to anything you're looking to build for now - no up front credit card required either! Once everything is said and done (and you've won, right), you'll have an awesome app running on IBM Bluemix™ and all the enterprise-grade tools at your disposal to take it to the next level.


Sign Up

KNOW IBM Watson™

Take your time to get familiar with the Watson APIs, especially with the functionality they provide. Although you can access the APIs documentation directly in IBM Bluemix™, in the Watson Developer Cloud you can test the services without coding. It also provides additional documentation and examples.

Watson Services Catalog

PLAY

Log in and start playing! Head over to the catalog and spin up a boilerplate or a standalone runtime that works for you. Node.js, Ruby, and Java come standard, but you can bring your own (i.e. Python, PHP, etc...) from the Cloud Foundry community. Be sure to check out all of the different IBM, third party, and community services available in the catalog as well.


Once your boilerplate/runtime is up and running, follow its "getting started" guide to download:

  1. the starter code that sits behind it
  2. the Cloud Foundry command line installer so that you can push your work back up to IBM Bluemix™


CATALOG

PUSH

Once you've installed the Cloud Foundry command line tool, open that starter code in the editor of your choice and make a change, any change. Let us guess, you added the text "Hello Hackathon" somewhere in the UI, didn't you?

Once your code is saved (and compiled if you're using Java), cf push back to IBM Bluemix™ using the command line and realize the fruits of your labor, live in the cloud! For more info on pushing your code up to IBM Bluemix™, see the link below.

P.S. You don't always have to use the command line to push your code into IBM Bluemix™, this is just a good place to start. For more options, search the docs for our online editor, IBM Bluemix™ Eclipse Plugin, or just Google any other Cloud Foundry compatible IDE plugins.

LEARN MORE

IDEATE

Now that you understand the basics, start thinking (if you haven't already) about what you actually want to build at this hackathon!

Ideation Activity

First ask yourself, who is the end user of my app and what problem(s) am I trying to solve for this persona? Really put yourself in your user's shoes and then write down as many ideas (even crazy ones) as you can that might solve one or more of their problems.

IDEATE

We typically recommend sticky notes for this ideation exercise - especially if you're working with a team.

Silently throw one idea per sticky note up on a wall (time box this to only a few minutes), group them together based on commonalities, notice any trends, and then vote on what makes the most sense. You'll be amazed at how much focus this will bring to you and your team (if you're working on one - alone is cool too)!

IDEATE

We use IBM Design Thinking activities like this one everyday to build user-centric and forward-thinking products like IBM Bluemix™. Click the link below to learn more about IBM Design.

IBM Design

LEARN

As you further define what you're actually going to build, look through the IBM Bluemix™ catalog again. Determine which services make the most sense for your app. Once you're ready to experiment with or fully implement a service in your app, the IBM Bluemix™ docs will help you further understand what a service does, how it works, and how your app can connect to it.

DOCS

GIT GOING

Teaming up? Need somewhere simple and quick to manage all of your source code? We've got you covered.

Go to the overview pane for any IBM Bluemix™ app you've created and click Add GIT up at the top by the app's url. This will place that initial starter code you edited a few steps back into an IBM GIT repo. It links directly to your app in IBM Bluemix™ (and can auto-deploy to it when the origin is updated). Your source code is kept private by default.

GIT

ASK QUESTIONS

Check out our Dev 2 Dev forum any time you need a bit of extra help. If you ask a question in the forum, tag your post with MixHack so we can track your questions and respond even faster!

FORUM


Oh, and you can tweet us too!