First steps in Android

With everybody going mobile, we could not stay behind. This meant we had to create an Android application, because we (Bram Neijt, Arno den Hond and your chronicler) do not own one of them fancy iPhones.
Also, Android is way cooler.
Read more →

Getting the Java out of your Scala

To get some grip on the configuration of the Weblogic domains and servers at my current client, I created a tool that reads domain config files and translates them in a graph. I decided to solve this problem in Scala, mainly because I read about its powerful native XML parsing capabilities. Parsing XML turned out to be a total no-brainer, but I managed to learn something about how to solve problems the Scala way, so this is a story about Scala rather than parsing XML in Scala.
Read more →

Saved by Fitnesse

We've been busy for a couple of weeks now refactoring a fairly complex code base of just under 500 classes. None of us really knew all the details about this part of the system, but we didn't let that stop us of course. After some regrouping/-shuffling/-factoring/*ing, the whole thing built OK and all unit tests were green again. All that was left to do was fix the Fitnesse tests. I remember thinking this should be easy since we had all those green unit test.

Evil laughter sounds.
Read more →

Bare bones SOA

Software vendors have hijacked a potentially useful concept by pushing heavy weight complex tools like ESBs. The goal of this article is to find out which of those tools we really need so we can stay away from unnecessary complexity. I'll do that by describing the infrastructure services we really need and how these services can be implemented in the simplest possible way.

Software depends on other software because we don't want to build systems from scratch. Each piece of software your code depends on may:
- change the address or name by which it is known
- change the technology it is implemented in
- be unavailable when you need it
- live on a different server or in the same process
- be connected through infrastructure that cannot be trusted
- speak a different language
Read more →

Write code or step aside

Most IT careers start with a programming job: you write code in one of the popular programming languages as part of a team. As your experience grows you start to get bored with software: you've been working with more or less the same technology and tool set for a couple of years and you need something new to keep yourself going. That's the point where you have several options like becoming a project manager, coach, analyst or middleware expert. This story is about another option: becoming an architect.
Read more →

Complexity as an early indicator for trouble

Knowledge of the past allows us to predict the future, at least, for certain areas of human enterprise. I'm convinced that software development is one such area. The theme of this blog is 'to measure = to know and to know = to predict', so by the transitivity of equals we can state 'to measure = to predict'.
But what should we measure? I suggest you at least measure the following and will try to explain why below: trends in burn down, trends in bugs, trends in test coverage and trends in complexity.

Read more →

Prima Donna Syndrome

Development teams or even development organizations, are not always the well balanced, smooth operations we'd like them to be. In our software quality audit practice we have had the privilege to investigate many different types of organizations and found many different ways quality and productivity can suffer from a problem known as the Prima Donna Syndrome: a single individual exercises a disproportionate influence on the team causing problems like stagnation and unnecessary complexity.
Read more →

Parsing Text with Scala

In my efforts to teach myself Scala, I tried solving a problem I've tackled in various languages, 6510 assembly code (didn't get far...), pl/sql, Java (with and without Drools) and Groovy among them. Usually I get bogged down in some detail of the language so I never get to reap any actual benefits of my efforts in daily life. The plus side of this never ending task is that by now I don't have to spend effort on defining a problem but instead can start coding right away.
So this story is about how to parse text in Scala and is part of THE software package that will automagically generate a menu for a week and the shopping list for that menu together with whatever else my family will need that week and send it to www.albert.nl and have the groceries delivered to my door.
Read more →

Implementing single sign on in Weblogic

In this post I will describe the proof of concept I've done for one of our customers in the Netherlands. The assignment was to implement Single Sign On using Weblogic Platform 10.2 infrastructure. I will explain the options available to pass security information around and describe the solution we've implemented.
Read more →