Nieuwsartikelen niet goed lezen, maar er wel op reageren nl

Door Confusion op zondag 07 december 2008 12:49 - Reacties (15)
Categorie: T.net, Views: 4.572

Ik vind het vrij ergerlijk dat er mensen zijn die nieuwsartikelen op de frontpage niet goed lezen, maar er vervolgens wel op reageren. In het artikel nieuws: Politie Utrecht zoekt mogelijke slachtoffers van vervalste lcd-tv's staat bijvoorbeeld
De gearresteerde personen hielden vol dat zij het toestel voor 35 euro op de zwarte markt hadden gekocht, maar de politie nam de tv in beslag omdat zij heling vermoedde.

Bij nadere inspectie op het politiebureau bleek de televisie echter een vakkundig gemaakte vervalsing.
Vervolgens komen er reacties van mensen die
a) hebben geconcludeerd dat de personen de neptelevisie voor 35 euro probeerden te verkopen of
b) de kritiek leveren dat het dus geen heling is.
Vervolgens zijn er diverse reacties en discussies met de strekking "dat klopt niet" en raken de reacties behoorlijk vervuild met het soort offtopic geouwehoer als in dit weblog te lezen valt.

Lieve mensen, doe eens je best om de goede reacties niet zo onder te laten sneeuwen met al die irrelevante onzin? Je kan je prima een keer vergissen, maar een artikel half scannen, denken dat je iets zinnigs te zeggen hebt en dan niet het artikel eerst grondig lezen is gewoon luiheid. Dat er gemodereerd kan worden betekent niet dat je dan maar iedere gedachte neer mag schrijven.

Dat geldt overigens voor meer brainfarts: als je niet verwacht dat iemand het +1 gaan geven, laat het dan gewoon zitten.

Toeval is niet intuÔtief nl

Door Confusion op maandag 24 november 2008 08:07 - Reacties (19)
CategorieŽn: Philosophy, Science, Views: 5.024

Mensen hebben een slechte intuÔtie voor wanneer iets 'toevallig' is. Ik kan er honderden voorbeelden van bedenken, maar eentje uit persoonlijke ervaring spreekt waarschijnlijk meer tot de verbeelding.

Afgelopen vrijdag belde mijn vriendin een autoverhuurder om een Ford Transit te huren, om zaterdag haar spullen van haar studentenkamer naar mijn appartement te verhuizen. De transportboer in kwestie had er geen meer, maar had er nog wel een die een slagje groter (en duurder) was. Eerst maar de buurman gebeld, die helaas ook net de laatste 6 kuubs Transit de deur uit gedaan had. De eerste uitlener van ingeblikte verbrandingsmotoren weer gebeld en de groter versie gehuurd, spullen vlot verhuisd en tadaa, het samenwonen is een feit.

Dat is echter bijzaak. Het interessante is dat mijn vriendin opmerkte: wel toevallig, dat ze allebei net die Transit's niet meer hebben. Toen dacht ik: nee, dat is helemaal niet toevallig. Elkaar beconcurrerende autoverhuurders die goed bezig zijn, zullen samen precies zoveel wagens hebben als ze kunnen verhuren. Als je vrijdag belt en ze hebben nog ruime keus, dan zou ik snel een efficiŽnter verhuurbedrijf in de buurt beginnen.

De nog interessantere vervolgvraag is: waarom wekken dit soort situaties een gevoel van 'toevalligheid' op? Waarom komt het gevoel boven dat de situatie onwaarschijnlijk is en dat het universum samenspant om je te begunstigen of te benadelen? Is het omdat de patroonherkennende machinerie in ons hoofd gewoon niet verwacht dat alles in zo'n simpele, elegante verklaring samenvalt? Dat het berekend is op de chaos van de jacht, van het overleven in een natuur met ontzettend veel onvoorspelbare factoren en dat het gewoon niet is voorbereid op de onszelf begunstigende structuur die millenialang vooruitziend samenleven tot stand heeft gebracht?

Nicer, shorter, GWT url's

By Confusion on Wednesday 05 November 2008 12:18 - Comments (4)
Categories: Java, Software engineering, Views: 6.270

A thorn in the side of every GWT developer must be the ridiculous URLs it produces. Please, come and visit our wonderful webapp at
http://company.com/thisapp/com.company.app.module/Module.html
... very attractive... Of course, you can have http://company.com/thisapp/ redirect there, but still.

Fortunately, there is an easy way to shorten the URL, as explained in this not so aptly named thread in the Google Groups group on GWT. If you choose a decent module name, you end up with
http://company.com/module/Module.html, which is acceptable.

If you use the maven-gwt plugin to build your project, you need to modify both the compile targets and the run target to

code:
1
2
3
4
<compileTargets>
    <value>Module</value>
</compileTargets>
<runTarget>Module/Module.html</runTarget>

Converting a certificate + key to a usable Java keystore

By Confusion on Friday 31 October 2008 15:04 - Comments (2)
Categories: Java, Software engineering, Views: 4.941

Today I was researching the obstacles I would encounter while upgrading the Resin Application Server from 2.1 to 3.1. One of the things that came up was that OpenSSL support is no longer supported in the open source version: you would have to buy a license to enable the JNI bindings to OpenSSL.

However, JSSE is also supported as the SSL connection handler, so I decided to find out what was involved in switching from OpenSSL to JSSE. That proved to be quite easy, with a Java 6 JDK that already includes a configured JSSE library. The largest problem was converting the certificate + key to a Java keystore. For everyone that may one day have to solve this problem:

First put the certificate and the key in a pkcs12 keystore:

code:
1
openssl pkcs12 -export -out dev.pkcs12 -in dev.crt -inkey dev.key

then convert the keystore to a JKS keystore, using the Java keytool:

code:
1
2
keytool -importkeystore -srckeystore dev.pkcs12 -srcstoretype PKCS12
 -destkeystore dev.keystore

This example involves a self-signed certificate; if you need to include CA certificaties or certificate chains, the process is slightly more complicated, but probably not very, as you can use openssl to perform all the hard steps. If I encounter any problems when I do that, I will let you know ;).

On a sidenote: Java keystores are terrible things and I dread the moments when I discover they are once again inevitable in reaching a certain goal.

Matching lines in multiline regular expressions

By Confusion on Monday 20 October 2008 10:41 - Comments (4)
Category: Software engineering, Views: 3.580

I needed to parse some text that looked like

code:
1
2
3
4
5
6
7
fieldname: value
anotherfieldname: anothervalue
etc: somemore
----------
repeatedfieldname: newvalue
mayalsobeanotherfieldname: withanothervalue
==========

The regex previously used was
^(.*?)[=-]{10}$

with singleline and multiline flags enabled (using the Jakarta Oro PCRE compatible library).

However, it was found that some customers think their middle name is ' ----------' (even though there isn't a form anywhere on the website where one can select that), which breaks the code splitting the text above. However, a simple solution exists: to match only ten dashes or equal signs on a single line, while still capturing the groups, you can use
(.*?^)[=-]{10}$

I think moving a single character four places is quite an elegant bugfix :P