Heroku workshop - Java

Heroku Workshop

Heroku Logo

Heroku gives developers an easy way deploy, scale and monitor applications without the need for extensive DevOps training or tooling.

This workshop will guide you through the many features of Heroku using a relatively simple Java application and Postgres database. Examples of using Heroku with other languages and frameworks are also included and you are encouraged to try out your own projects on Heroku too.

All the source code for the applications you deploy is provided. Expertise with any of the languages or frameworks used is not required, unless of course you want to develop any of the sample applications further.

Using this workshop website

This is a practical workshop, so where ever you see this pencil icon it means there is an exercise for you to complete.

This workshop website can be naviaged by the sidebar items. You can also use the forward and back arrows on each page. Navigation through the workshop can also be done with the left (back) and right (forward) arrows.

You can hide the sidebar by pressing the menu icon at the top of each page. The keyboard shortcut to toggle the sidebar is s.

You can also change the theme and font size by clicking on the capital A in the header of each page.

The Glossary of terms is accessed via the AZ icon. Each term defined in the glossary is underlined in the workshop. Hovering over the term gives the definition, clicking on the underlined term take you to the term in the glossary page.

A search on the site will show you the list of pages that hold the search term in the sidebar.

Heroku Success stories

There are many successful customer stories on success.heroku.com that you can read about. Here are two short videos highlighting the success from two different customers:

  • Toyota Europe - developing a series of websites across Europe, tailored to the individual needs of the consumers in each contry.
  • Westfield - a global shopping center company building customer experience apps. Taking on many legacy applications they either migrated or retired those apps and moved from a slow waterfall process to a more agile and innovation driven approach.

Heroku - Platform as a Service (PaaS)

Heroku is a service that allows developers to deploy applications using the tools they are already familiar with (build & version control and CI tools). If you can use Git, then you can simply push your code to Heroku and it will be deployed and run for you.

If you have not yet learnt Git we can help with that during the workshop, or you can visit try.github.io or my Git Workshop

Heroku is a polyglot platform as it can run many different programming languages and frameworks. Heroku provides additional support for the most common languages (Ruby, Node.js, Java, Python, PHP, Scala, Clojure) and there is community support for over 50 other programming languages.

Other Cloud providers may give you Virtual Machines (eg. like with Virtualbox) to run your apps in the Cloud. Whilst this may seem a more flexible approach, it also requires greater responsibility in managing the Infrastructure. This is called Infrastructure as a Service (IaaS), as it provides the servers which run your applications, however you are still responsible for maintaining those servers and managing the deploy process.

With 750 hours for free per application per month, you can easily test out your ideas and software without any additional risk or major investment.

Read on for more details on the features that Heroku provides, so you can focus on building your applications.

Salesforce1 Platform

Heroku is part of the Salesforce1 Platform and excels at scaling applications to meet the needs of the customer and the business that supports them. Heroku is ideal for either short or long term projects, especially where demand is harder to predict.

Heroku is often used for customer experience applictions or services supporting native mobile applications. It is also common to deliver your service API via Heroku, especially as an https endpoint is provided.

Heroku is integrated with Salesforce via Heroku Connect or configured as a Trusted App within your Salesforce Org.

More details about the Salesforce1 Platform are available at developer.salesforce.com

Author Date Contact
John Stevenson Tue 24 Mar 2015 01:20:41 GMT @jr0cket