Red Hat OpenShift.io is an innovative online service for development teams. Installing and configuring IDEs, libraries, and various tools is a major time sink. OpenShift.io is a cloud-native set of zero-install tools for editing and debugging code, agile planning, and managing CI/CD pipelines. It also features package analytics (an unbelievably cool feature we'll discuss more in a minute), and has various quick starts for common frameworks. Because everyone on the team uses the exact same tools, "It works on my machine" becomes a thing of the past.
Product Manager Todd Mancini started the session with a brief overview of the product. There's so much more here than just the ability to develop code online. Today's best practices include complex deployment pipelines. With OpenShift.io, you get a Maven repository and a Jenkins pipeline automatically. You can select from several pipeline templates. If you need an approval stage, for example, that's built in to the product. In short, all the tools you need to create a virtuous circle of analyze, plan, and create are here, with no installation or configuration needed.
Next Todd moved on to audience participation time. He gave the crowd the option of going through dozens of slides or going through a live demo. "Live Demo" won in a unanimous decision. (Full disclosure: no slides actually existed.) Climbing onto a high wire with no safety net below, Todd started the demo. We'll cover the main tasks here.
Creating a space: A space contains all of the code, work items, pipelines, and other artifacts for the team. You can start by importing an existing code base or by creating a new one. Creating a new one lets you select a mission (what your code will do) and a runtime (Vert.x, SpringBoot, and a WildFly Swarm are the current choices, but non-Java options are on the way). The wizard interface then lets you select a build pipeline from a set of templates. Next, give your space a name and connect it to your GitHub account. A couple of confirmation clicks later, your space is built.
Developing code: Eclipse Che is the IDE, as you would expect. Its ability to let you not only write code but also run and debug it in the cloud is a beautiful thing. (We've sung the praises of Eclipse Che elsewhere, so we won't wax poetic here. But yeah, it's great.) If you find a bug as you're working, you can create a work item easily. Which brings us to...
Planning the project: The Plan tab lets you create work items, including scenarios, requirements, value propositions, and other artifacts that are at the heart of any modern development effort. We'll point out again that all of this goodness works in your browser, from the cloud, with no installation whatsoever.
Todd moved on from the newly created space to an existing application, a Twitter sentiment analysis demo. Given a term, his application analyzes tweets to see how the Twitterverse feels about that subject. (Dogs are viewed positively, for example.) As the results roll in from the web, a dynamic, graphical gauge visualizes the data. See the links below if you'd like to see the code or fork the repo.
One more thing: package analytics is an amazing feature. In Todd's example, he added a package (the name of which we shall not mention) and the tools flagged it as having a security vulnerability. This is done in an elegant, friendly UI as opposed to a text message you might not notice in a console. In addition, the product uses machine learning to analyze your project. If you're using an unusual combination of packages, the tools let you know. That might not be a problem, but it's a sign that you might want to re-examine your choices. To quote Todd, package analytics is "freaky, freaky cool."
OpenShift.io is open source, with developers pushing code multiple times every day. You can decide how close to the edge you'd like to live by opting in to beta features or even experimental features. Or take the safer route of using only features currently in production.
A great session with a flawless demo. If you haven't tried OpenShift.io, get started today.
Some links worthy of your time and attention:
- OpenShift.io—sign up and get started
- The GitHub repo for Todd's example—see for yourself how the sausage is made
- From Localhost to the Cloud: Helping Organizations Develop Applications in a Hybrid World, a blog post from Harry Mower (Red Hat's Senior Director of Developer Programs) on OpenShift.io
- The release notes from Eclipse Che V6.0, a great overview of what's new in the latest version