Again, I’m starting this soundbyte with the sound, and I think I’m going to surprise most of you with my choice this week. From their debut album “Three feet high and rising” this is De La Soul’s “Jenifa Taught Me”. Why? Because at the time, this was a fresh new style, different from what most were doing and they used some interesting sampling techniques. Enjoy!
It’s always nice to see the good old Amiga pop up in the news, as it underlines the many ways in which this machine has influenced creativity in our industry. This week, a couple of floppy disks have been found that contained artworks by Andy Warhol. Drawn on the original Amiga 1000 using one of the first paint programs available for the platform. If you’re interested in a very entertaining read about the history of the Amiga and how a small group of people created this amazing machine through passion and a lot of hard work, ArsTechnica ran a series of articles about it in 2007-2008.
This week also saw the release of Apache ACE version 2.0.1. The second release since becoming a top level project at Apache. Since the 1.0.0 release, many things have been improved and added, mostly based on user input. We’ve completely re-done the management agent to make it a lot more configurable and easier to change its behaviour. On the server side, we incorporated mostly changes that improved performance and made storage more efficient. A newly exposed feature is the relay server, which can be used in scenarios where there is a lot of load or simply if you want a more fault tolerant setup. Finally, the client has been optimized a lot, and this is our first release with a fully featured Gogo shell scripting interface, designed to make it easier to use ACE in continuous integration scenarios, or anywhere else where automation is required. If you want to read more about the new release, this blog article goes more in-depth.
Hot off the press is a new blog article by Paul Bakker, highlighting 10 reasons why everybody should use OSGi. Be sure to read it, I’m not going to repeat all the reasons here. I’m going to pick one though, reason #10 (which arguably should have been reason #1): “It’s easy”. Paul states it might be the most controversial reason, and there are certainly people that have different opinions, but I thoroughly agree. By always designing your applications in a modular way, you develop a way of working where you can quickly build components and make them collaborate in a very clean and structured way. This ensures your applications remain very changeable and maintainable, even when they become bigger and more mature. The tools and documentation are also there, and if you need a good introduction, I can recommend our 3 day training coming up in June.
Another blog article that appeared this week was about semantic versioning and continuous integration and the lessons we’ve learned using it for about a year now. For those of you not familiar with the term “semantic versioning” it is a way of versioning your software in such a way that you can deduce meaning from the change in version numbers. So for example, if a version changes from 1.0 to 2.0 you know it’s a major new release, and if it changes from 2.0 to 2.1 it might just be a bugfix update. By standardizing such versions and using tooling to ensure the rules are consistently applied, it becomes a lot easier to update things that change and to assess if changes to one module will impact another. This is not just something that’s being done in OSGi (although I think we were first), there is also a website called semver.org that has a more generic manifesto.