ClustrMaps

The roadrunner is back as never before! See also: My homepage or my very obsolete site
If by any means entries in my blog are considered to be harmful or damaging, please let me know (add comment) or just mail me. In this (unhopely) case I will remove or change the contents.

Thursday, March 29, 2007

Ik was ze bijna vergeten de

The Manic Street Preachers

Zie deze schitterende site met pophistorie:


http://www.oosterlincknet.be/mnederlands.html

Helemaal vergeten, just kidding, nee nooit gweten (en wil ik het wel weten)
de fameuze Horae triples, zie: http://en.wikipedia.org/wiki/Hoare_logic

While rule for total correctness

\frac { \{P \wedge B \wedge t = z \}\ S\ \{P \wedge t < z \} \ ,\ P \rightarrow t \geq 0}               { \{P \}\ \textbf{while}\ B\ \textbf{do}\ S\ \textbf{done}\ \{\neg B \wedge P\} } \!

Wednesday, March 28, 2007

De kids zijn met techniek bezig met overbrengingen.
Dat kan ik nog begrijpen en deze Belg ook:
http://users.telenet.be/maartenverhulst/Mainpage.htm

En dan zeggen dat alle Belgen dom zijn, mooi niet!

Wat kan ik me soms (?!) toch dom voelen.
Ooit gehoord van Hamilton?
Nee? Ik ook niet.
Wikipedia wel: http://nl.wikipedia.org/wiki/Hamiltonformalisme

Afleiding uit het Lagrangeformalisme

Stel dat we een mechanisch systeem hebben dat beschreven wordt door het Lagrangeformalisme. De toestand van het systeem op elk moment wordt gegeven door een stel gegeneraliseerde coördinaten q_1,q_2,\ldots,q_n en de bijbehordende gegeneraliseerde snelheden \dot q_1,\dot q_2,\ldots,\dot q_n. In het vervolg van dit artikel zullen ook de tijdsafgeleiden van andere natuurkundige grootheden met een punt worden aangegeven.

De verandering van het systeem in de tijd wordt gegeven door de Euler-Lagrangevergelijkingen,

\frac{\mathrm{d}}{\mathrm{d}t}\left(\frac{\partial L}{\partial\dot q_i}\right)-\frac{\partial L}{\partial q_i}=0\quad(i=1,2,\ldots,n).

Hierin is L(q_1,\ldots,q_n,\dot q_1,\ldots,\dot q_n,t) de Lagrangiaan van het systeem. We introduceren nu voor elke coördinaat qi de gegeneraliseerde impuls pi geassocieerd met qi door middel van

p_i=\frac{\partial L}{\partial\dot q_i}.

Verder voeren we de Hamiltoniaan of Hamiltonfunctie in:

H(q_1,\ldots,q_n,p_1,\ldots,p_n,t) = \sum_{i=1}^n p_i\dot q_i - L(q_1,\ldots,q_n,\dot q_1,\ldots,\dot q_n,t),

waarbij we de genereraliseerde snelheden \dot q_i uitdrukken in de variabelen q_1,\ldots,q_n,p_l,\ldots,p_n,t. Vervolgens berekenen we de totale differentiaal van de Hamiltoniaan met behulp van de productregel en de kettingregel:

\mathrm{d}H = \sum_{i=1}^n\left(p_i\,\mathrm{d}\dot q_i + \dot q_i\,\mathrm{d}p_i - \frac{\partial L}{\partial q_i}\,\mathrm{d}q_i - \frac{\partial L}{\partial\dot q_i}\,\mathrm{d}\dot q_i\right) - \frac{\partial L}{\partial t}\,\mathrm{d}t.

Vanwege de Euler-Lagrangevergelijkingen en de definitie van pi is dit gelijk aan

\mathrm{d}H = \sum_{i=1}^n\left(\dot q_i\,\mathrm{d}p_i - \dot p_i\,\mathrm{d}q_i\right) - \frac{\partial L}{\partial t}\,\mathrm{d}t.

Hieruit volgen de vergelijkingen van Hamilton, ook wel de kanonieke bewegingsvergelijkingen genoemd:

\dot q_i=\frac{\partial H}{\partial p_i},\qquad\dot p_i=-\frac{\partial H}{\partial q_i}\qquad(i=1,2,\ldots,n).

Verder is de tijdsafgeleide van H zelf gelijk aan

\dot H=\frac{\partial H}{\partial t}=-\frac{\partial L}{\partial t}.

Deze vergelijkingen geven de verandering in de tijd van respectievelijk de plaatscoördinaten, de bijbehorende gegeneraliseerde impulsen en de Hamiltoniaan van het systeem (die in veel gevallen geïdentificeerd kan worden met de energie).

Nou, nou, wie kan hier koffie van maken?
En dan zeggen sommigen dat mijn Java code ingewikkeld dan wel erg abstract is.


Sunday, March 25, 2007

An now for something completely different: the larch!














Of deze dan:

Angry Young Men

Van Wikipedia

Ga naar: navigatie, zoek

Angry Young Men is de betiteling voor een groep gelijkgezinde jonge intellectuele Britse schrijvers die opkwam in de jaren '50 van de 20e eeuw. Zij behoorden tot de eerste naoorlogse generatie in de Engelse literatuur met een eigen kritisch geluid, die zich afzette tegen de gevestigde orde en de burgerlijkheid. De hoofdfiguren in hun romans waren vaak anti-helden, afkomstig uit de lagere middenstand of de arbeidersklasse.

De benaming 'Angry Young Men' is ontleend aan een toneelstuk van John Osborne, getiteld Look Back in Anger (1952).

Enkele van de belangrijkste representanten waren Kingsley Amis, John Braine, Allan Sillitoe, John Wain, Colin Wilson, Doris Lessing, Arnold Wesker en Iris Murdoch.

In de jaren '60 nam de impact van de groep af, maar de naam, en die van een groot aantal jonge schrijvers, was gevestigd.

Vandaag zag ik de lijfspreuk van iemand:
you can’t milk a cow with your hands in your pants

Dus: Google en zoeken op afbeeldingen.
Leuk is deze: http://wina.ugent.be/forum/viewtopic.php?pid=27522
Met (copyright?) dit plaatje:



















En inderdaad: life sucks!

Maar om terug te komen op de main thread:
hoe kun je een koe melken zonder daarbij je handen vuil te maken?
Simpel toch: je laat het een ander doen!

Friday, March 23, 2007

Mooi toch de lente:

http://www.cambiumned.nl/poeziegortermei.htm


Mei (De aanhef)

Een nieuwe lente en een nieuw geluid:

Ik wil dat dit lied klinkt als een gefluit,

Dat ik vaak hoorde voor een zomernacht

In een oud stadje, langs de watergracht-

In huis was 't donker, maar de stille straat

Vergaarde schemer, aan de lucht blonk laat

Nog licht, er viel een gouden blanke schijn

Over de gevels in mijn raamkozijn.

Dan blies een jongen als een orgelpijp,

De klanken schudden in de lucht zoo rijp

Als jonge kersen, wen een lentewind

In 't boschje opgaat en zijn reis begint.

Hij dwaald' over de bruggen, op den wal

Van 't water, langzaam gaande, overal

Als 'n jonge vogel fluitend, onbewust

Van eigen blijheid om de avondrust.

En menig moe man, die zijn avondmaal

Nam, luisterde, als naar een oud verhaal,

Glimlachend, en een hand die 't venster sloot,

Talmde een pooze wijl de jongen floot.


Zóó wil ik dat dit lied klinkt...

Monday, March 12, 2007

Finding myself on the Internet, I found (but myself):

Jules Coenen 1959 - 23/1/2004

In 2004 werd de stripwereld opgeschrikt toen het bericht kwam dat Jules Coenen plotseling was overleden. Coenen starte zijn cariere bij de Nedelandse Disney productie in 1977. In 1980 verhuizde Coenen naar Amerika om in het klielzog van Daan Jippes te gaan werken aan Disney producties. Coenen had zich inmiddels helemaal toegelegd op het inkten en werkte o.a. aan de Donald Duck daily (dagelijkse Donald Duck krantenstrip 1986/1987). In 2004 was Jules teruggekomen naar Nederland om weer voor de Nederlandse Donald Duck te gaan werken.

http://coa.inducks.org/creator.php/0/JCo

And (could they be relatives?):
Voor 'shredders' en andere liefhebbers van(snelle) instrumentale gitaarmuziek is Marcel Coenen in Nederland allang een begrip.
http://www.gitaarnet.nl/magazine/gitaarvan/marcelcoenen/marcelcoenen.php3

Thursday, March 08, 2007

De A2 Den Bosch - Nieuwegein ligt steeds meer boven de boomgrens.
Meer en meer bomen worden geveld om plaats te maken voor nog meer files
(deze keer geen bestanden).

Terwijl de bruggetjes over het spoor (bij Beesd, bij de vestiging van Volvo) en over de
Linge (vanaf zuid iets verderop) de flessenhalsen zullen gaan worden.

http://www.a2denbosch.nl/htm/nieuws/pbs.php?ID=19

Persberichten

09-02-2006 | Bomenkap langs A2 Rondweg Den Bosch

Op maandag 13 februari start het kappen van bomen langs de A2 Rondweg Den Bosch.
Aan weerszijden van de weg worden bomen gekapt om ruimte te maken voor de verbreding van de A2 van 2 x 3 naar 4 x 2 rijstroken.

En dit bericht slaat alles: http://www.beurs.nl/nieuws/artikel.php?id=203124

Heijmans krijgt opdracht verbreding A2 twv EUR 85 mln
Maandag 19 Februari 2007 08:54
Amsterdam (BETTEN BEURSMEDIA NEWS) - Heijmans Infra heeft van Rijkswaterstaat de opdracht verkregen voor de verbreding van de A2 tussen Culemborg en Deil. Dat heeft de bouwer maandag middels een persbericht bekendgemaakt. De totale aanneemsom bedraagt EUR 85 miljoen.

Het bedrijf uit Rosmalen gaat over een lengte van 12 kilometer het aantal rijstroken verbreden van twee naar (voorlopig) drie. Daarnaast worden onder meer geluidsschermen, markeringen en verlichting geplaatst. De verbreding van de A2 Culemborg-Deil start in februari. Heijmans verwacht het project in augustus 2010 op te leveren.
Het contract omvat een uitbreiding naar 2 x 4 rijstroken in beide richtingen waarvan de uitbreiding van 3 naar 4 rijstroken nog een optie is. De procedure voor de realisatie van deze optie is nog niet afgerond. Uiteindelijk moet de snelweg worden verbreed naar 2 x 5 rijstroken. Hoe inconvenient is de waarheid van Al Gore?


And now for something completely different:
why run Java in batchjobs on i-Series of this also possible in Java:
http://www.devx.com/Java/Article/20791

Questions:
how mature and rich is this stuff?
And how new and stable?

Wednesday, March 07, 2007

Technische problemen zijn (bijna altijd) oplosbaar.
Desnoods gooi je het CVS project weg en begin je opnieuw, maar dan anders:
Uithuilen & opnieuw beginnen.
Problemen van niet-technische aard, voor iemand met een redelijk nerd gehalte, zijn moeilijker oplosbaar. Zie in dit verband ook:
http://joscoenen.blogspot.com/2007/02/en-nu-na-alle-technische-problemen-en.html

Het fenomeen samenwerken moet kunnen met iedereen en altijd, is veeleisend.
En helaas ook niet altijd verenigbaar met de oplossingsdrift van een roadrunner



















Zo zijn er anders gevederde vogels die het tempo van de roadrunner niet bij kunnen (of willen ) houden.
Jerzy Kosiński schreef er een boek over.
Zie deze link http://deoxy.org/pdfa/paintedbird.htm en dit citaat:

The Painted Bird

The unifying theme of this book -- running through and connecting a number of seemingly diverse topics discussed in it -- is the idea of the scapegoat and his function in the moral metabolism of society. In particular, I have tried to show that social man fears the Other and, if need be, creates him, so that, by invalidating him as evil, he may confirm himself as good.

Niet erg hoopgevend. Zeker als je als opvallende vogel het luchtruim moet delen met modale vogels. Dit klinkt erg pretentieus, schijn bedriegt: ik heb er nooit om gevraagd om op te vallen.
Ik kan moeilijk al mijn veren uittrekken, dan val ik minstens zoveel op:













80 procent van alle communicatie gaat mis. Er zijn er die daar de humor van in weten te zien:


















Bron: http://www.ongein.nl/ongein/item.aspx?id=3342

Ja, er zal nog menige horde te nemen zijn: vallen & opstaan.

Friday, March 02, 2007

Still struggling with Java on the i-Series:
see these promising results (insiders only):

411410 ACTIEF PDF met Activa 1 2-3-07 21:57:51 *ACTIVE
Taak 411410/C_JC01/ACTIEF normaal beëindigd op 02/03/07, 21:58:31

cd /home/fac2
ls -all
total: 2,216 megabytes
drwxrwsrwx 2 C_JC01 0 28672 Mar 2 22:05 .
drwxrwsrwx 74 QSYS 0 45056 Mar 2 09:49 ..
-rw-rw-rw- 1 C_JC01 0 245 Mar 2 16:47 Actief;1;C_JC01;1172850425912.csv
-rw-rw-rw- 1 C_JC01 0 7355 Mar 2 16:47 Actief;1;C_JC01;1172850440189.pdf
-rw-rw-rw- 1 C_JC01 0 271 Mar 2 16:48 Actief;1;C_JC01;1172850517541.csv
-rw-rw-rw- 1 C_JC01 0 7358 Mar 2 17:18 Actief;1;C_JC01;1172852293255.pdf
-rw-rw-rw- 1 C_JC01 0 7358 Mar 2 17:19 Actief;1;C_JC01;1172852369735.pdf
-rw-rw-rw- 1 C_JC01 0 7199 Mar 2 17:34 Actief;1;C_JC01;1172853276759.pdf
-rw-rw-rw- 1 C_JC01 0 394151 Mar 2 21:48 Actief;1;C_JC01;1172868526141.csv
-rw-rw-rw- 1 C_JC01 0 480423 Mar 2 21:50 Actief;1;C_JC01;1172868603454.pdf
-rw-rw-rw- 1 C_JC01 0 477685 Mar 2 21:58 Actief;1;C_JC01;1172869080925.pdf
-rw-rw-rw- 1 C_JC01 0 477799 Mar 2 22:06 Actief;1;C_JC01;1172869540119.pdf
-rw-rw-rw- 1 C_JC01 0 6174 Mar 2 21:48 Valuta;1;C_JC01;1172868498518.csv

dspfd facjc/fixedass
SECTIE GROOTTE TYPE GEMAAKT DATUM TIJD RECORDS RECORDS
FIXEDASSET 8409088 02/03/07 02/03/07 21:42:11 14217 0

And who said Java is slow?

Sunday, February 25, 2007

Dit komt uit de laatste Computable (23-2-2007):










En ik voel me niet aangesproken, echt niet.

En dit uit het wijkkrantje:



















Jawel, u leest het goed: GFK Panel Services.

Saturday, February 24, 2007

En nu, na alle technische problemen en oplossingen (met ook weer problemen ...).
Een niet-technisch probleem, dus moeilijker oplosbaar.
Mijn probleem: kids, meer specifiek kids in een bepaalde leefijd.
Ja, ik weet het, vroeger was ook ik lastig.
Sterker nog, dat is niet overgegaan.
Maar toch, om grijs van te worden.
Zie ook is deze site: http://www.grootgezin.nl/pubers040705.php
Wie het weet, mag het zeggen.

Gelukkig mag ik soms iets uitleggen aan de kids.
Maar dan geldt: de charme van de eenvoud.
Hefboomprincipe

Friday, February 23, 2007

Struggling with Java and native i-Series.

But thank God (or IBM) there is JTOpen.

The result together with JDA for a nice (and simple to code) browser UI looks promising:



































Question: who needs PHP?
Or is PHP Just Another Hype (JAH)?
From the Dutch Wikipedia:
Aanvankelijk stonden de letters PHP voor Personal Home Page (de volledige naam van de software was Personal Home Page/Forms Interpreter, PHP/FI). Sinds PHP 3.0 is de betekenis een recursief acroniem geworden: "PHP: Hypertext Preprocessor". Deze naam geeft aan waar de taal meestal voor gebruikt wordt: informatie verwerken tot hypertext (meestal HTML en XHTML).

Thursday, February 22, 2007

Om mijn internet connectie te testen (ik heb Internet+Plusbellen van KPN ...),
tikte ik in Google "aap" in.
Vervolgens afbeeldingen.

Wat een vreemde apen toch!














Met name (natuurlijk) het bovenste derde plaatje van links.
Dit is de link die bij dit plaatje hoort:
http://fotoblog.ringfahndung.de/JungbauernKalender2006

Die fotografen maken er toch wat moois van.

Tuesday, February 20, 2007

The diacrits: e-umlaut (ë) or whatever.
See: http://www.serc.nl/people/florijn/papers/ooarchasi.html

Object-ori�ntatie -
een model voor software architectuur


Another pain in the ass.

Monday, February 19, 2007

Pinpas problemen, wie kent ze niet?
Sinds kort heb ik ruzie met mijn tankpas.

Deze keer weet ik de pincode wel, maar de pas niet meer.
Niet getreurd dan maar mijn giropas getrokken.
En declareren bij Multi Tank Card.
Via, jawel, een website: https://pms.mtc.nl/pls/prod/paslogon

En, ja hoor, laat ik nu niet juist lezen wat er op het scherm staat.
Ik lijk wel een gebruiker!
Hierbij mijn versie van het scherm:














Het is verrassend wat er gebeurt als je niets invult en dan op de Login knop drukt.
De url wijzigt in: https://pms.mtc.nl/pls/prod/mtc_exe.mtc_main_auth2
En dat ziet het er dan zo uit:














Valt toch niet mee, het maken van een beetje applicatie.
By the way: morgen kan het opnieuw proberen na 3 ongeldige pogingen.

En dan het benzineverbruik, waar mijn vlotte (?) rijstijl hoogstwaarschijnlijk debet aan is:
Normaal verbruik 7,4 l/100km volgens de lease-maatschappij.
Mijn Astra Station 1.6 doet het voor 8,2 l/100km. Een overschrijding van 10 %
Om die logge bak tot bewegen te brengen ...
Moet ik dan als een ouwe sok gaan rijden?
Zie ook deze site: http://www.autogids.be/prk_calcul.cfm

So far so good, ik wil toch declareren.
Na een valid login (he, he) krijk ik dit scherm:










Voor woon-werk verkeer kan ik toch beter een Smartje gaan rijden!

Zie ook eens dze site: http://www.markensteijn.com/smart.htm

Monday, February 12, 2007

The best way to run Java batch jobs on i-Series:
http://www.tutorials-be.com/as400/Best-ways/

The traditional method on the iSeries would be to use the SBMJOB command and
let your Java program run as a separate job. That way, if necessary, you
can tweak setting like dispatching priority, memory pool, pre-started JVMs,
etc. These, IMHO, are the things that OS/400 is particularly good at, and
might endear you to your opponents.

If you can start the command from a green screen command line, you can
submit the same command to a job queue and run it there. You can execute
the command from inside an RPG program, but personally, for flexibiliy, I
think it is easier to write a small CL program (you can get away with 3 or
so lines if you aren't passing any parameters) and call it from the RPG.

Of course, if you aren't familar with CL then this becomes more of a
problem.

And a final thought: You need some way to (gracefully) end the java
program.

Sam

FWIW: YOur Java program sound like what we often refer to as an NEP, or
Never Ending Program. While such things run as a background task, they can
be made to run at the same priority, or maybe slightly lower, than
interactive sessions, but almost always higher than batch jobs, on the
theory that they spend most of their time just waiting for activity, but
when they run, they need to respond more quickly than, and not be inpacted
by, other batch (background) jobs. Again, this is where OS/400 excels in
it's flexibility and control.
Explanatory Notes:
IMHO: In My Humble Opinion
FWIW: For What It's Worth

Friday, February 02, 2007

Today I saw this for the first time (from AbstractList):
public boolean addAll(int index, Collection<? extends E > c) {
boolean modified = false;
Iterator<? extends E > e = c.iterator();
while (e.hasNext()) {
add(index++, e.next());
modified = true;
}
return modified;
}

This is Java 1.5 , also known as 5.0.
This is about parameterized types and variable arguments.
See: http://www.velocityreviews.com/forums/t152251-method-dynamic-parameter-lists.html

public static Vector<integer> getParameter(int ... params) {

Vector<integer> v = new Vector<integer>();

for (int cnt = 0; cnt < params.length; cnt++) {
v.add(new Integer(params[cnt]));
}
return v;

}

See also: http://today.java.net/pub/a/today/2004/04/19/varargs.html
Class [] argTypes =
{
String.class,
int.class
};

/* Note: Java 1.5's autoboxing language feature lets
you replace "new Integer (20)" with "20". The
compiler converts "20" to "new Integer (20)".
This code fragment assumes an earlier version
of Java -- which is why "new Integer (20)" is
specified instead of "20".
*/
Object [] methodData =
{
"A",
new Integer (20)
};
Class c = Class.forName ("SomeClass");
Method m = c.getMethod ("someMethod", argTypes);
m.invoke (c.newInstance (), methodData);

In contrast, variable arguments let you express the code fragment above more compactly, as follows:

Class c = Class.forName ("SomeClass");
Method m = c.getMethod ("someMethod", String.class, int.class);
m.invoke (c.newInstance (), "A", 20);

You save keystrokes and the code is much easier to read.

Sunday, January 28, 2007

Java and the persistant arrogancy of Sun.
See this simple Java source:


import java.math.BigDecimal;

public class TestDouble {

/**
* Translates a double into a BigDecimal. The scale
* of the BigDecimal is the smallest value such that
* (10scale * val) is an integer.
*


* Note: the results of this constructor can be somewhat unpredictable.
* One might assume that new BigDecimal(.1) is exactly equal
* to .1, but it is actually equal
* to .1000000000000000055511151231257827021181583404541015625.
* This is so because .1 cannot be represented exactly as a double
* (or, for that matter, as a binary fraction of any finite length).
* Thus, the long value that is being passed in to the constructor
* is not exactly equal to .1, appearances notwithstanding.
*


* The (String) constructor, on the other hand, is perfectly predictable:
* new BigDecimal(".1") is exactly equal to .1, as one
* would expect. Therefore, it is generally recommended that the (String)
* constructor be used in preference to this one.
*
* @param val double value to be converted to BigDecimal.
* @throws NumberFormatException val if val is
* infinite or NaN.
*/
public static void main(String[] args) throws Exception {
double d = 0.1;
System.out.println(d);
System.out.println(new BigDecimal(d));
System.exit(0);
}

}

And it's output when run:
0.1
0.1000000000000000055511151231257827021181583404541015625

This is far from expected.

See also: http://www.javaranch.com/newsletter/July2003/MoneyInJava.html

Or this Sun form entry: http://forum.java.sun.com/thread.jspa?forumID=256&threadID=252852

Tuesday, January 23, 2007


Confused? You will be after this week's episode of this blog.
As developing in Java is not without risk (of failure) and often competing with performance:
YAVA: Yet Another Version Available.
As developing an application is a never ending story.

In Dutch they say:

Ga toch krassen! (Build some code).




And if unhoped errors occur in the code, just bang your head:


Friday, January 19, 2007

Yes, this disclaimer is still there for Java:
14. NOTE ON JAVA SUPPORT
THE PRODUCT MAY CONTAIN SUPPORT FOR PROGRAMS WRITTEN IN JAVA. JAVA TECHNOLOGY IS NOT FAULT TOLERANT AND IS NOT DESIGNED,MANUFACTURED, OR INTENDED FOR USE OR RESALE AS ONLINE CONTROL EQUIPMENT IN HAZARDOUS ENVIRONMENTS REQUIRING FAIL-SAFE PERFORMANCE, SUCH AS IN THE OPERATION OF NUCLEAR FACILITIES, AIRCRAFT NAVIGATION OR COMMUNICATION SYSTEMS, AIR TRAFFIC CONTROL, DIRECT LIFE SUPPORT MACHINES, OR WEAPONS SYSTEMS, IN WHICH THE FAILURE OF JAVA TECHNOLOGY COULD LEAD DIRECTLY TO DEATH, PERSONAL INJURY, OR SEVERE PHYSICAL OR ENVIRONMENTAL DAMAGE. Sun Microsystems, Inc. has contractually obligated CoffeeCup Software, Inc. to make this disclaimer.

See:
http://www.coffeecup.com/legal/eula.html

And now for something completely different: DILBERT!
See this Dibert-esque: http://monster-island.org/tinashumor/humor/corpmemo.html
And this Dilbert archive: http://pag.csail.mit.edu/~adonovan/dilbert
And this Dilbert finder: http://www.bfmartin.ca/finder