The Netherlands is currently in the middle of a large project to change the way we pay for public transportation. We are moving from paying with a cardboard strip (called the "Nationale Strippenkaart", which must be stamped by the driver of the public transportation vehicle you get on) to a new system (the OV-chipkaart) involving an RFID chip on which you can preload money or one or more subscriptions. The idea is not new (the Greater London Oyster Card is a well-know example) but this is the first time I know of that it has been done on a nationwide scale.
Needless to say there have been problems along the way. Michel van Eeten, professor of Governance of Infrastructures at the Delft University of Technology, recently gave an interview to the Dutch engineering magazine De Ingenieur in which he explained how the project is suffering from an implicit choice of offloading all of the project risks (security, privacy, and so on) onto the customer. A few days ago I had a similar experience with problem offloading onto the public by this project…
Continue reading Public Transportation pass woes….
By now I’m sure everybody has at least heard of REpresentational State Transfer (REST). REST is an architectural style that was first properly described by Roy Fielding in his doctoral thesis. Since Fielding published his thesis in 2000 the term REST has become very popular among web developers. Mostly for the wrong reasons of course — REST and the derived term RESTful have morphed into marketing jargon for people who really mean "building a web site" when they say "implementing a RESTful architecture".
One of the things that has gone wrong in the area of REST-the-popular-interpretation is that people think that "doing REST" is the same thing as "using HTTP" (another thing is that they think that REST is something you can do). The reason of course is simple: most people use the term REST to mean building a web site. And you use HTTP for that. And in fact I thought it was not a wholly unreasonable position because one of the constraints of the REST architectural style is such that you really would not want to use anything but HTTP as a rule.
However, today, all of a sudden, I stumbled on ultimate proof that REST really is as independent from HTTP as Fielding claims: a piece of software that uses the REST architectural style but not HTTP.
Continue reading Yes! REST really is not the same as HTTP!!
Today, I released version 0.6 of the Axon Framework. 0.6 has many new features and is another step towards full production readiness. There is still some work to do, but first, let’s take a look at what has changed…
Continue reading Axon Framework 0.6 released
Last Thursday (July 22nd, 2010) Rob Pike, a Principal Engineer at Google, gave a talk at the O’Reilly Open Source conference. In this talk he stated that established languages such as C++ and Java are too complex and not adequately suited for today’s computing environments. He then proceeded with some criticism of dynamically typed languages (that I share) and finally ended up plugging the Go language (which he co-developed) as a solution to the problem.
Now, Rob Pike is not nobody (in addition to being a Google principle engineer he has C and Unix credentials), plus the Go language has the Google brand name on it, so I thought it would be a good idea to check it out….
Continue reading An evening on the Go
In my previous post, “Using JMX within a spring application“, I talked about monitoring your application with jmx. I discussed exposing beans with spring. At one of my current projects I am having problems exposing jmx through the default jmxrmi protocol. In his whitepaper about jmx, Allard mentiones another protocol, jmxmp. Spring has support for this remoting protocol as well. Therefore I wanted to try this out.
Another thing I wanted to experiment with is creating a groovy client. The technique with interfaces and proxies with spring as described in my previous post is a lot of work when you are interested in a little bit of data. Therefore I wanted to see if using groovy is easier.
This blog post discusses these two topics with respect to JMX.
Continue reading Exposing jmx through jmxmp and reading the jmx data with groovy
I have just upgraded the wordpress software to version 3. It all seemed to work fine. However I noticed errors in the archive pages. Therefore I wanted to upgrade to the latest and greatest atahualpa theme that I use for my blog. I should not promote it to much, or else everybody else starts using it .
To my opinion, the blog looks even better. The twitter items look better than before as well as the authors with the amount of blog items.
If you spot problems, please let me know.
Lately I have been doing a lot with JMX. I use it more and more to check what my application is doing. I use it to monitor tomcat, the cache, queue’s and other libraries and components. Now I wanted to use jmx to monitor my own application. Using the standard JMX stuff coming with the JDK is not hard, but since I use a lot of spring, I wanted to know more about spring support.
The most important question in the end will be, is it easier to use spring with jmx than the standard jmx stuff from the jdk.
Read on to find out about jmx and my answer to the question which is easier, the spring way or the standard jmx way.
Continue reading Using JMX within a spring application
Today, I finalized the 0.5 release of the Axon Framework. There is quite a number of changes since the 0.4 version. The 0.5 version is a major step towards production readiness of the framework.
Besides some changes to existing building blocks, such as the event bus, which is now much more powerful, the 0.5 version also includes some new features.
Read on to find out more.
Continue reading Axon Framework 0.5 released