Matthias Kempka

Matthias Kempka

Keyed-Hash Message Authentication Code in REST APIs

July 6, 2016

REST APIs that serve their content via HTTP have limited options for authentication. One of these is request signing. With a little bit of custom specification the standard approach HMAC can be utilized for efficient and secure authentication.

API Key Authentication in a REST API with JAX-RS

April 15, 2016

The designer of a new REST APIs soon comes across the problem of authentication. He has a number of standardized or custom methods to choose from. In this blog entry I want to outline design and implementation criteria for API Key authentication.

Estimations in the Face of Psychology: The Anchoring Effect

February 24, 2016

Estimations play a central role in every commercial software project. Whenever a feature is discussed, planned or scheduled the need for an estimation is not far.

File access during test execution in OSGi projects

March 6, 2015

Unit tests should be small in scope and fast in execution. Shooting for tests like these during development, I am getting reliable and ready-to-use code units fairly quickly.

How to get the "Push to Gerrit" Action back with EGit

March 7, 2014

This week I updated my IDE to Eclipse 4.3.2 which comes with Egit 3.2. After that my “Push to Gerrit” action was gone from the usual place. If the same thing happens to you, here is how to get it back:

More tests are not always good - Why you should stop at 100% test coverage

February 21, 2014

As I started in the programming industry almost a decade ago, writing tests at all was still a fairly new thing for many developers. Having been one of the early TDD advocates in my social environment, I had to recommend many best practices and books to students and colleagues. Kent Beck, Robert Martin and many other more or less public figures provided invaluable advice and did a lot of persuading with their books and talks and they continue to do so. Today I enjoy a situation where you almost have to justify every test you don’t write.

Execution of JUnit Tests in a Single-Sourced Application

September 24, 2013

One strength of Eclipse is the possibility to use the same code on desktop clients as well as in web clients. The same application can run as an installed desktop application and in the web browser, with only few adjustments for both platforms. In our experience, about 80% to 90% of the code can run in both environments, if some guidelines are followed (i.e. no Singletons for data management).

Welcome back NoClassDefFoundError in the Eclipse IDE

September 6, 2013

Situation 1: “Dad, where is my yellow road roller?” - “Let me see, son..” Looks around. “I have no idea. Are you sure you didn’t leave it at grandmas?”

Semantic Versioning for Eclipse Developers

June 28, 2013

Eclipse/OSGi has a strict versioning scheme consisting of 4 parts, separated by dots. This is well-known to Eclipse developers, and thus in the Eclipse/OSGi world the versioning problems are solved.

A Rule to Test Them All (At Once)

May 23, 2013

Unit tests often stop being useful where concurrency is involved. A special case is thread safety which can be tested relatively easily with the use of a simple JUnit rule.

How high can you raise the bar?

May 3, 2013

You have read the books. You are a clean coder. You know your language, your tools and libraries  and you know exactly what matters: Well crafted software, steadily adding value, and of course you are part of a community of professionals. There was something about productive partnerships, too, but that was a bit hard do understand. Anyway, the Agile Manifesto made quite an impact by clearly stating its values, but the Software Craftsmanship Manifesto raised the bar again. (BINGO, right?)

Keeping Target Control

April 5, 2013

Shortly after you have created your Eclipse-based project, you must choose a target platform. The use of target platform definitions is now widespread but you can define these in several ways, the most important being the Directory and the Software Site.

Focusing on the Problems

February 8, 2013

The “Problems” view in Eclipse lists errors and warnings in the workspace. In its default settings this view is not entirely helpful, but it is highly customizable. Today I want to show you how you can configure this view to shift the focus to the interesting errors and warnings in your current area of work.

RWTBot

November 15, 2012

Recently I started working at a headless client for RAP 2.0 with the following aims:

Creating an effective archive with labels

October 11, 2012

Paper is tree-based

Developer documentation, if available, is a great thing. It is even better if you can actually find the piece of information you are looking for. Most documentation I have seen is organized in one big hierarchical tree. It’s impossible to find anything until you have intimate knowledge of the tree itself. The problem is often that the information itself is not structured enough to naturally fit in a single hierarchical tree, but it is pressed into it because it appears to be the only way to structure things.

Don't miss the Eclipse Day in Delft

September 14, 2012

Gather together, learn what others in the Eclipse space do, which tools they use and how they use them. Come join us on the Eclipse Day in Delft on 27th of September.

10 Principles for Electronic Self-Management

August 21, 2012

My 12-year old niece is just learning to get a bit organized. The most important habit her parents try to teach her is to do things right away. Found something you need in your piano lesson? Put it in the sheets now, so you’ll have it with you. Got your pen back from your brother? Put it in the pencil case now. Be done with it. This is the most simple and most effective advice you can give a teenager for getting organized. The only problem is that it does not scale. When your tasks multiply in number and variety you need a system that allows you to both be done with it and stay focused.

Workplace safety

August 2, 2012

“This is just about getting some numbers.” “Oh, and we need some basic UI, nothing fancy though.” “We should have some alternative storage or exporting options, you know, keep it simple, just export to Excel. Oh and some more numbers, please.” “This latest function broke some of the numbers from before, could you fix that please?”

Does your application have working brakes?

June 28, 2012

Suppose your friend got a new motorcycle. The first questions are probably like the following. What horsepower does it have? How fast can it go? How long does it take from 0 to 100km/h? How about 0 to 200km/h? Rarely will you ask how fast it can stop. Does it have brakes at all?

Eclipse Testing Day 2012 Submissions Open

April 26, 2012

This year marks the third Eclipse Testing Day, where the community gathers for a day focusing on testing with, for and at Eclipse. The event takes place on September 05 in Darmstadt.

My Eclipse Testing Day

September 9, 2011

At September 7th I attended the Eclipse Testing Day 2011.

Announcing a full featured PDE Build example from a Git repository

September 8, 2011

I set up a githup repository that gives a working example for a PDE product build from a git repository. It is meant to ease the pain of setting up new builds by having a working template that just needs to be adjusted to the new project.

An almost perfect Test Suite

September 9, 2010

During RCP application development the creation and maintenance of a Test Suite is a common annoyance. While solutions exist that we can live with, the current state of test suites is ennoyance enough that it was a topic for a talk at the Eclipse Testing day recently. Further down I’m presenting a way to create Test Suites that overcome most problems of the presented methods. But before that, I’ll discuss a bit background knowledge.

Capture screenshot on failing SWTBot tests

September 9, 2010

Sometimes functional tests fail. If they do, I not only want to see the test and the error message, I also want a screenshot of the application in the state during the failing test.

Register now for the Eclipse Testing Day

August 3, 2010

On September 8th, the Eclipse Testing Day takes place in Darmstadt. I have the honor of giving the opening talk about what I call finding the scope for a test.

How to structure two dozen Eclipse workspaces

May 21, 2010

I have tons of Eclipse workspaces. The last time I counted it was around 24, but it actually changes on a daily basis.

A new era of managing Eclipse installations has begun

May 11, 2010

Back in the old days, maintaining an Eclipse installation was easy. You just downloaded the Eclipse; it included the JDK and you used this Eclipse on all your workspaces.

OSGi Import Package and Split Package Woes

July 14, 2009

Since OSGi developers gained influence in the Eclipse development and trainings discussion… many words have been said in favour of declaring dependencies via Import-Package instead of Require-Bundle.

Nifty Progress Reporting in RCP Applications

March 18, 2009

I don’t (always) like the ways Eclipse provides me to do long running operations. So I created another way with a nicer UI.

Very basic dependencies

February 2, 2009

We recently moved our continuous integration builds to a new server. The builds are set up self-contained or have only little dependencies to files outside their workspace. So it shouldn’t be a big deal: Just set up the new projects in your CI server and copy over the settings from the old projects, right?

First blog entry: Hello world

January 12, 2009

This semester my wife gives a lecture in theoretical computer science at the KIT (Karlsruhe Institute of Technology). The current topic is decidability and therefor the students learn about the halting problem. The whole topic is rather dry and good examples for illustration are always welcome.