Welcome to the OpenShift Developer Spotlight where we get to know the members of the OpenShift community a little better and show off their skills as developers. Also check out their applications developed on OpenShift in our App Gallery. Interested in being featured? Apply here or view past entries.
What inspired you to be a developer?
It's a great hobby, non-demanding in resources (but not time!). Once your application finally starts working, it's a really great feeling and a sense of achievement. And being able to play with code and see how this affects the results, not only virtual but physical things like phones and building infrastructure is also a fun experience.
Why did you choose OpenShift as your hosting platform?
OpenShift offered a wide variety of Java application servers with reasonable limitations. I can develop and test an app locally, and deploying the WAR file into OpenShift is as simple as copying it. There are some OpenShift-specific configuration options such as the database connection string or a directory for long-term storage, but overall almost all Java web applications work on OpenShift without modifications.
What advantages does OpenShift give you that other platforms don't?
OpenShift has no vendor lock-in and getting Java container such as Tomcat or WildFly running is very easy, just a few clicks in the web interface. I've evaluated almost all popular application servers and my application itself had to be seriously rewritten or its build process had to be changed. Getting a Tomcat container working is a multi-step process in other containers.
I also considered installing Tomcat on a local server, but having security updates applied automatically and having a web-facing application isolated from the rest of my network was a big advantage of using OpenShift.
Tell us more about your application currently hosted on OpenShift:
- Name: Vogon Finance Tracker
- What does it do? It's a simple application for expense tracking and planning personal finances. Something like mint.com, but much simpler and targeted for manual entry rather than downloading bank statements.
- What technologies were used to create your app? I use Spring Boot to create a Java Web Archive, which can be deployed in Tomcat, WildFly or other Java web servers. The web UI is AngularJS with some extensions, and the backend uses Spring MVC, Spring Security, Spring JPA and Hibernate. The database is either an embedded H2 database or Postgresql.
- What motivated you to create this application and what problems does it solve? After the online personal finance tracking service Buxfer lost its drive and started failing, I started to look for replacements but couldn't find one. So I created a desktop-based application called Vogon which allowed me to track expenses locally, to get an understanding on how much I spend, how much I have in my accounts and what's actually happening with my finances. After some time I decided a rewrite was needed to make the application web-based and allow tracking from my phone, tablet or work laptop.