... to the digital home of Steven Schwenke.

This site is supposed to be a showcase for my thoughts about software engineering, less a personal homepage. If you want to know more about me, invite me to a beer.

Also, have a look at my book "Developer on the Stage".


Posted by Steven

In one of my recent articles, I wrote about my experiences in generating an Excel report with Apache POI. I want to  complete my thoughts by summarizing my experiences with the framework.

Working in the zone

02 Mar 2013
Posted by Steven

As you might have noticed, my posts haven’t been as regular as usual in the last time. The reason for that is a new project that needs a lot of caretaking. My first weeks in that project needed some special mental work mode that I will describe in this article.

Posted by Steven

One of my recent assignments included writing an Excel report with Apache POI. This report has nine worksheets that cover different aspects of one business concept. In other words, each sheet gives another view of the business case. After finishing my work on the report, I noticed I made a huge mistake: I didn't optimize local algorithms, which was a good decision. But I also didn't optimize the whole approach on the problem. That turned out to be bad.

Posted by Steven

This week, I practiced my first architectural kata (alternative link) with my mentor Jens Schauder and my co-mentee Thomas. These katas are meant to practice the process of designing an IT system from scratch, given a specific task. Jens picked one of the tasks for me which was to design a digital UN conference system for students. This system should serve as the technical infrastructure for hosting UN gatherings via video chat as well as one-to-one-video chats between the users. News events should be created by admins and shown to the users, which are students from all over the world who aren't meant to buy new hardware to use the system. In this article, I want to describe my thoughts about the task, the process of getting to an architecture and of course my failures in this solution.

Posted by Steven

This week, I got around to adding some animation into the game and fixing a (again) thread-related bug.

Exiting the application

After playing around with the application, I noticed a problem: After a couple of executions from within eclipse, my computer got pretty slow. It turned out that after closing the application, one Java thread always stayed alive. The reason for this is my architecture. In my starting class, I called the JavaFX application as follows:

Posted by Steven

For the next iteration of my tiny game, I wanted to add some action. I decided to let resources grow on themselve: Every three seconds, a resource spawner should create one more resource. Because of the architecture of my application, I ran into some threading problems that shall be the topic for todays post.

As I wrote in a recent article of this series, the business logic of my application is separated from the Java FX user interface. This means that the reaction of a user input is determined by the classes in the business layer. Also, repeating events should be managed by the business layer and only graphically represented by JavaFX. Regarding the mentioned resource spawners, this means that the logic for the creation of new resources is stored in the business class ResourceSpawner: