From setting up the basic variables to deploying code, building a Java application can be like getting a train up to speed. It’s slow to start, but once you’re moving, you’re moving. Fergus Kelledy, a Solutions Architect with Java development shop ProQuest, explains that their choice of Heroku, alongside the Play! framework, allowed them to enjoy the benefits of Java without the slow startup time.
And once they were moving, they were unstoppable.
“Heroku allowed ProQuest to develop the WorldRiderz website to a tight deadline, coupled with rapidly evolving and expanding functional goals by smoothly and seamlessly taking care of the standard, hosting, scalability, persistence issues with ease,” says Kelledy, “thus allowing ProQuest’s development team to focus purely on delivering WorldRiderz business functionality. Since deployment and go live WorldRiderz has experienced 100% uptime and 0% data loss as a result of choosing Heroku as our PaaS.”
Heroku and Play! Help Proquest Deliver Big for the Discovery Channel
WorldRiderz is a charity motorcycle ride being documented on the Discovery Channel, which enjoys a worldwide audience of more than 50 million viewers. The website compliments the television show with a full multimedia online presence, interaction between the cast and the audience, and full social media integration. Kelledy attributes his team’s success building the WorldRiderz website to its use of Java with the Play! framework on Heroku.
“I come from a Java development background I’ve become a convert to the Play! framework. It’s like learning to speak Java with a slightly different accent. There’s not a huge learning curve and it makes life so much simpler,” says Kelledy. “Combining Heroku, Play! and Java gives you fantastic flexibility.”
The Play! framework, says Kelledy, is a solution by developers for developers. The framework helps developers get started quicker and easier, handling any number of common issues, including simple controller stubs, test stubs, logging, caching configuration, WebService integration, JSON handling, XML handing, messaging, and setting up and running background processing jobs.
Running a Play! Java application on Heroku is as simple as deploying the code. Heroku automatically recognizes use of the Play! Framework and acts accordingly. Kelledy says that Heroku’s ability to handle all of the basic tasks, leaving the developer to focus on the problem at hand, is a differentiating factor that will have him recommending Heroku to anyone who asks.
“I’ve been around the developer block for 15 years and this combination of technologies rocks. The bottom line is Heroku is focusing on making it just work,” says Kelledy. “There’s so much stuff that just works out of the box with Heroku. You look at Heroku and see that there are Add-ons for for commonly used functionality, such as security, messaging, logging, et cetera, and you don’t need to reinvent the wheel.
It leaves the developer focusing on the business logic at hand, which makes their application different than the thousands of other applications out there. Developers can quickly focus on differentiating business functionality and not start from scratch on each new project.”
Welcoming Eclipse Integration
For Java developers used to working with IDEs like Eclipse, developing, deploying and running Java applications on Heroku has become even easier, integrating perfectly into your existing workflow. Heroku now offers an Eclipse IDE integration.
Kelledy says that setting up a Java application in Eclipse is painless and that, in combination with Play!, takes care of one of the most annoying things that the developer has to do.
“You can use Play! extremely easily with Eclipse. You create the project and all you do then is execute another command and it creates all of the settings,” says Kelledy. “You open the project in Eclipse and it’s all configured.”
Once they’re setup, developers can not only work in Eclipse, committing and pushing code live, but they can also view process logs, view and manage application variables, and even scale the application directly from within the IDE. There’s no longer any need to leave the development environment to issue commands in the Heroku terminal. Scaling and managing Web processes is now a mouse click away.