Debian, aptitude update: segmentation fault.

By Confusion on Wednesday 04 November 2009 11:38 - Comments (16)
Category: -, Views: 6.247

Hmmm, my 'aptitude update' currently ends with

E: Method rred has died unexpectedly!
E: Sub-process rred received a segmentation fault.

I'm not going to investigate the cause, but from http://ja.pastebin.ca/1655916, a workaround is to
Workaround: Until a solution is found, try updating your repositories with this:
apt-get update -o Acquire::PDiffs=false

Or by setting
Acquire::Pdiffs false;
in /etc/apt/apt.conf

Eten laten bezorgen in Amsterdam? Thai Kitchen! nl

Door Confusion op dinsdag 03 november 2009 22:14 - Reacties (17)
Categorie: -, Views: 5.279

Ik ben zeer tevreden over Thai Kitchen, een bezorgtoko in Amsterdam. Amsterdam Zuidoost is nogal een uithoek, maar ze bezorgen er gewoon. Het eten is lekker en de service is goed: ze zijn vriendelijk en als ze iets vergeten zijn, dan komen ze het netjes nabrengen. Het enige minpuntje is de bezorgtijd: hou er rekening mee dat het minstens een uur duurt. Het eten is echter wel altijd warm als het aankomt.

Deze ervaring is gebaseerd op twee keer bestellen met ~7 man.

Avoid storing configuration data in your revision control system

By Confusion on Tuesday 20 October 2009 22:02 - Comments (3)
Categories: Java, Software engineering, XML, Views: 2.937

After a discussion with a colleague this afternoon, I thought I'd share the following: you should avoid storing configuration data in your revision control system. Especially authentication credentials should not be in there. Here's why:
  1. When securing servers and networks, things like the server hosting an RCS don't get the same priority as, say, your web facing production server. Mistakes are easy to make and you can simply use Google to find 'accidentally' web facing RCS's that expose passwords.
  2. There will be plenty of copies 'out there', outside of your control. How many developers have that data stored on their machine? How careful are they with their laptops and your production passwords?
  3. Access to the configuration is limited to those that should be able to change it: no accidental changes by a junior performing a careless check in.
  4. If you can use the exact same build for your development, test/staging and production environment, then you can cleanly separate between code problems and configuration problems. If you need to rebuild a distributable archive to have the build process include environment-specific configuration, there will always be the doubt that some other difference may have sneaked in.
  5. It's much easier to change the configuration if you don't have to make a new build to deploy the change.
Now I specifically say 'avoid' and not 'do not ever', because many frameworks do not make this separation particularly easy. In the Java world, standard frameworks like Maven, Spring and Hibernate all impose obstacles to succeed at keeping sensitive configuration data out of RCS's.

Maven is a build tool that offers all kinds of build-time placeholder substitution capabilities, which is diametrically opposed to this advice. Spring does dependency injection and the configuration to wire your application together strongly attracts other types of configuration data to be included with it. And if you are paranoid enough to give production databases different names, so you can never accidentally run a test against a production database: how do you get that name into your Hibernate OR mappings at startup time?

It takes careful thought and thorough understanding of the build and startup processes, but in my opinion it is well worth it. Every time I deploy a new version of the one application in which configuration and code are completely separated, where I just have to drop a new .jar and restart, I dance with joy.

Wikipedia can be funny

By Confusion on Saturday 03 October 2009 18:11 - Comments (10)
Categories: Philosophy, Religion, Views: 4.921

From the article about Daniel Dennett:
In October 2006, Dennett was hospitalized due to an aortic dissection. After a nine-hour surgery, he was given a new aorta. In an essay posted on the Edge website, Dennett gives his firsthand account of his health problems, his consequent feelings of gratitude towards the scientists and doctors whose hard work made his recovery possible, and his complete lack of a "deathbed conversion". By his account, upon having been told by friends and relatives that they had prayed for him, he resisted the urge to ask them, "Did you also sacrifice a goat?"
This made me laugh out loud, even though I am completely alone in my home at the moment. I hope someone will sacrifice a goat if I'm ever hospitalized.

Een pluim voor Dunea (voormalig Duinwaterbedrijf Zuid-Holland)

By Confusion on Friday 18 September 2009 14:17 - Comments (6)
Category: -, Views: 3.075

Altijd fijn als instantie vlot van zich laten horen na een vraag. Eergisteren halveerde de waterdruk in mijn appartement opeens en sindsdien varieert de druk tussen die helft en de normale druk. Dat is goed te overleven, hoewel het vervelend is als die variaties net voorkomen als je onder de douche staat, aangezien de temperatuur daar ook behoorlijk van gaat schommelen. Aangezien de druk van het koude water ook varieerde, vermoedde ik dat de oorzaak weleens buiten mijn appartement kon liggen. De buren bleken het inderdaad ook gemerkt te hebben, dus belde ik vanmorgen Dunea met de vraag: "Is er iets mis?". Ze wisten het niet, maar zouden het uitzoeken. Nog geen twee uur later kreeg ik telefoon van Dunea: ze zijn in de buurt aan het werk en daardoor kan de druk inderdaad weleens varieren. De werkzaamheden zullen tot ongeveer maandag duren. Bravo.