Going Serverless – Why and How (1)

From monoliths to microservices and containers to serverless functions: the software engineering world is changing fast. Popular technologies from today will be outdated tomorrow and it isn’t easy to follow them all. The same is true for taking the first step when going serverless. Hence I’ll present you with my best practices for going serverless to save you time on choosing the right way.

With this blog post, I’m focusing on serverless functions like AWS Lambda. It’s part of a series of two posts:

  • Why “Going Serverless” and how to start (this)
  • Best practices for your architecture and development (next blog post)
Continue reading

Creating Different Environments With AWS CloudFormation

Recently, a question on stackoverflow.com popped up which asked for different environments with AWS CloudFormation. Here, I want to present my answer and give some more information about this topic. The code for this blog post can be found in my GitHub repository where I also have some more CloudFormation examples.

Continue reading

Starter Projects For AWS Lambda Using NodeJS And Java

Today I want to show you three starter projects for AWS Lambda using CloudFormation and SAM – Serverless Application Model. I always like if I have some boilerplate code and can get started quickly without copying code or project structures from an existing (and mature) project. Therefore I thought it’s good to have them in one repository. You can find them on GitHub. The projects can be used for NodeJS and Java. Also one project contains both: usage of Java and NodeJS Lambdas in one CloudFormation template.

Continue reading

5 Things To Consider For Writing A Lambda Function

A few years ago, Amazon Web Services (AWS) launched it’s new service AWS Lambda. Since its start the service is generating more and more interest for the whole world of serverless computing. I’ve also started using it this year and today I want to share 5 things with you what I think is important when developing such functions.

Continue reading

Revert rebasing errors with Git reflog

Recently I was facing a difficult situation: me and my team we’re working on a feature (using Feature Branch Model) and I wanted to rebase my code to the changes on another branch. Nothing special so far. But the problem was that there were several conflicts because we’ve changed code at similar lines. After finishing the rebase and making a push force to the upstream, I’ve realised that I’ve made a small mistake when resolving the conflicts. Well, the problem was that I’ve selected the wrong changes which should be applied. But reverting by just checking out my old changes and doing the rebase again was obviously no option. Therefore I want to share my experience with you in this blog post and give you a process how to revert such rebasing errors.

Continue reading

Three inspring indie hacker projects I’ve found on IndieHackers.com

This summer I’ve discoverd the website IndieHackers.com which interviews “hackers” who’ve started their own businesses (or side-projects) and earn money from it. It’s really inspiring how many ideas people have and how they have realised their passion projects. Also quite nice is the fact that they have to share how much money they earn. So you as a reader can see the relation between the effort the hackers have invested in their project and which outcome it produces. Today I’d like to share three of these hacker projects which have inspired me the most. All projects have in common that they’re automating a process in a remarkable way which is quite interesting to see.

IndieHackers.com Website

Continue reading

Set up JMapViewer for OSM data

Recently I had to work with OSM data at University and we had to provide the data by visualising them with JMapViewer. It’s a small project which supports you to connect your OSM data with a Java Swing application. For example this is useful for user interactions when calculating routes with OSM data. So I started investigating the project and found their documentation: http://wiki.openstreetmap.org/wiki/JMapViewer It just gives a quick overview of the project, but no nice starting guide. Therefore I want to provide such a (short) tutorial here.

Continue reading

Deploy a Multi-Module Maven Project to Heroku

Recently I was building a private hobby project where I wanted to use Heroku to deploy some Microservices and get some experience with it. Since I’m a Java enthusiast, I wanted to use a Multi-Module Maven project to also share some classes to the different microservices. So my mission was to deploy each submodule to a different Heroku app (I know this is completely against the nature of Microservices to code them all in the same language and have them in one big project like a Monolith – but I have my reasons). Getting started with Heroku was quite simple, because they have a very nice guide to setup and run your first app in the cloud. Unfortunately Heroku only supports one Procfile per project, therefore it’s not so easy to deploy multiple submodules to it. But there is way: You can use Config Variables. Let’s see step by step how to use this!

Continue reading

Getting notified about new JIRA issues

JIRA is a great issue tracking software by Atlassian and it offers many features to keep your bugs and tasks organised. However, if you’re using it for a while and your project grows bigger and bigger, it can get quite difficult to stay updated on your issues. What I mean is you can’t keep track of all new issues by yourself. Especially if you have a public JIRA instance where all of your customers can add issues. So let’s see what JIRA offers to you in order to support your wish to get the newest issues of your project. Continue reading