PDA

Bekijk Volledige Versie : Select met variable datum probleem



Marcel de Groot
21/04/05, 03:15
Ten eerste, ik ben (nog?) geen grote ster in PHP..

Ik ben bezig om een verjaardagslijstje te maken wat op onze site moet
komen. Ik zit alleen klem met het laten zien van de hits.

De source:

$datumnu = date ("m-d");
$optel = 1;
$morgen = date ("m-d",mktime (0,0,0,date("m") ,date("d")+$optel));
$db = mysql_connect("localhost", "database", "password");
mysql_select_db("user",$db);
$sql_text = ("SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
'%datumnu' AND `Opzegdatum` = '0000-00-00 00:00:00'");
$query = mysql_query($sql_text) or die("Zoekactie niet geslaagd");
echo "<strong>Jarige(n) vandaag:</strong><br />";
while ($result = mysql_fetch_array($query))
{
echo "$result[Voornaam] $result[Voorvoegsel]
$result[Achternaam]<br>";
}

Als ik dit run dan wordt er niets getoond.
Als ik bijvoorbeeld $datumnu in de select vervang door '%04-20' (de
waarde van $datumnu) dan werkt het wel. Kan iemand mij vertellen
waarom dit niet werkt? (Het zal wel iets heel simpels zijn ;))


--
Met vriendelijke groeten,
Marcel de Groot, Webmaster volleybalvereniging Amsterdam
http://www.vvamsterdam.nl/

John Bokma
21/04/05, 06:25
Marcel de Groot wrote:

> Ten eerste, ik ben (nog?) geen grote ster in PHP..
>
> Ik ben bezig om een verjaardagslijstje te maken wat op onze site moet
> komen. Ik zit alleen klem met het laten zien van de hits.
>
> De source:
>
> $datumnu = date ("m-d");
> $optel = 1;
> $morgen = date ("m-d",mktime (0,0,0,date("m") ,date("d")+$optel));
> $db = mysql_connect("localhost", "database", "password");
> mysql_select_db("user",$db);
> $sql_text = ("SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
> '%datumnu' AND `Opzegdatum` = '0000-00-00 00:00:00'");

^ $

> $query = mysql_query($sql_text) or die("Zoekactie niet geslaagd");
> echo "<strong>Jarige(n) vandaag:</strong><br />";
> while ($result = mysql_fetch_array($query))
> {
> echo "$result[Voornaam] $result[Voorvoegsel]
> $result[Achternaam]<br>";
> }
>
> Als ik dit run dan wordt er niets getoond.
> Als ik bijvoorbeeld $datumnu in de select vervang door '%04-20' (de
> waarde van $datumnu) dan werkt het wel. Kan iemand mij vertellen
> waarom dit niet werkt? (Het zal wel iets heel simpels zijn ;))

Verder, MySQL heeft prachtige datum functies, ik raad sterk aan om die
te gebruiken ipv in PHP te kloten.

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Jan Ehrhardt
21/04/05, 12:55
Marcel de Groot in nl.internet.www.server-side (Thu, 21 Apr 2005
03:11:19 +0200):

> $sql_text = ("SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
>'%datumnu' AND `Opzegdatum` = '0000-00-00 00:00:00'");

$datumnu? En waarom die haakjes?

Probeer anders eens

$sql_text = "SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
'%".$datumnu."' AND `Opzegdatum` = '0000-00-00 00:00:00'";

Jan
--
Look, Ma. No tables - http://enbio.steenbergen-stichting.nl/

Marcel de Groot
21/04/05, 14:55
On 21 Apr 2005 04:16:21 GMT, John Bokma wrote in
nl.internet.www.server-side:

>Marcel de Groot wrote:
>
>> Ten eerste, ik ben (nog?) geen grote ster in PHP..
>>
>> Ik ben bezig om een verjaardagslijstje te maken wat op onze site moet
>> komen. Ik zit alleen klem met het laten zien van de hits.
>>
>> De source:
>>
>> $datumnu = date ("m-d");
>> $optel = 1;
>> $morgen = date ("m-d",mktime (0,0,0,date("m") ,date("d")+$optel));
>> $db = mysql_connect("localhost", "database", "password");
>> mysql_select_db("user",$db);
>> $sql_text = ("SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
>> '%datumnu' AND `Opzegdatum` = '0000-00-00 00:00:00'");
>
> ^ $
>
>> $query = mysql_query($sql_text) or die("Zoekactie niet geslaagd");
>> echo "<strong>Jarige(n) vandaag:</strong><br />";
>> while ($result = mysql_fetch_array($query))
>> {
>> echo "$result[Voornaam] $result[Voorvoegsel]
>> $result[Achternaam]<br>";
>> }
>>
>> Als ik dit run dan wordt er niets getoond.
>> Als ik bijvoorbeeld $datumnu in de select vervang door '%04-20' (de
>> waarde van $datumnu) dan werkt het wel. Kan iemand mij vertellen
>> waarom dit niet werkt? (Het zal wel iets heel simpels zijn ;))
>
>Verder, MySQL heeft prachtige datum functies, ik raad sterk aan om die
>te gebruiken ipv in PHP te kloten.

Bedankt!
En ik ga zoeken naar de datum-functies in mysql. Ik ben hier niet zo'n
ster in en pas een bestaand script aan.

Marcel
--
http://www.fantasy-freak.com

Marcel de Groot
21/04/05, 14:55
On Thu, 21 Apr 2005 12:47:46 +0200, Jan Ehrhardt wrote in
nl.internet.www.server-side:

>Marcel de Groot in nl.internet.www.server-side (Thu, 21 Apr 2005
>03:11:19 +0200):
>
>> $sql_text = ("SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
>>'%datumnu' AND `Opzegdatum` = '0000-00-00 00:00:00'");
>
>$datumnu? En waarom die haakjes?

Ik heb dit aangepast vanuit een andere pagina en daarin stonden de
haakjes.

>
>Probeer anders eens
>
>$sql_text = "SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
>'%".$datumnu."' AND `Opzegdatum` = '0000-00-00 00:00:00'";

Werkt! Bedankt
>
>Jan

Marcel
--
http://www.fantasy-freak.com

John Bokma
21/04/05, 22:35
Marcel de Groot wrote:


>>$sql_text = "SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
>>'%".$datumnu."' AND `Opzegdatum` = '0000-00-00 00:00:00'";
^ ^

gebruik gewoon string interpolatie, dit maakt het stukken minder leesbaar.

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Jan Ehrhardt
22/04/05, 00:15
John Bokma in nl.internet.www.server-side (21 Apr 2005 20:32:31 GMT):

>Marcel de Groot wrote:
>
>>>$sql_text = "SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
>>>'%".$datumnu."' AND `Opzegdatum` = '0000-00-00 00:00:00'";
> ^ ^
>gebruik gewoon string interpolatie

Ik heb geen flauw idee wat je daarmee bedoelt.

>dit maakt het stukken minder leesbaar.

Net zo leesbaar als:

while (<FILE>) {
print if /http:/;
}

??

Sorry hoor, maar sindsdien vertrouw ik jouw oordeel over leesbare code
niet meer.

Jan
--
Look, Ma. No tables - http://enbio.steenbergen-stichting.nl/

John Bokma
22/04/05, 01:05
Jan Ehrhardt wrote:

> John Bokma in nl.internet.www.server-side (21 Apr 2005 20:32:31 GMT):
>
>>Marcel de Groot wrote:
>>
>>>>$sql_text = "SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
>>>>'%".$datumnu."' AND `Opzegdatum` = '0000-00-00 00:00:00'";
>> ^ ^
>>gebruik gewoon string interpolatie
>
> Ik heb geen flauw idee wat je daarmee bedoelt.

http://www.google.com/search?
q=string+interpolation+site:www.php.net&l=en

>>dit maakt het stukken minder leesbaar.
>
> Net zo leesbaar als:
>
> while (<FILE>) {
> print if /http:/;
> }
>
> ??
>
> Sorry hoor, maar sindsdien vertrouw ik jouw oordeel over leesbare code
> niet meer.

Uit bovenstaande blijkt duidelijk dat je niet of nauwelijks enige Perl
kennis hebt. Hoe kan je dan de leesbaarheid van code beoordelen
geschreven in die taal?

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Jan Ehrhardt
22/04/05, 01:35
John Bokma in nl.internet.www.server-side (21 Apr 2005 23:00:18 GMT):

>Jan Ehrhardt wrote:
>
>> John Bokma in nl.internet.www.server-side (21 Apr 2005 20:32:31 GMT):
>>
>>>Marcel de Groot wrote:
>>>
>>>>>$sql_text = "SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
>>>>>'%".$datumnu."' AND `Opzegdatum` = '0000-00-00 00:00:00'";
>>> ^ ^
>>>gebruik gewoon string interpolatie
>>
>> Ik heb geen flauw idee wat je daarmee bedoelt.
>
>http://www.google.com/search?q=string+interpolation+site:www.php.net&l=en

In Marcel's oorspronkelijke code stond de variable (zij het zonder de $,
wat ik als een typo beschouw) gewoon tussen dubbele quotes. Juist door
'm daarbuiten te zetten werd zijn probleem opgelost. En de code werd nog
leesbaarder ook, omdat je de variabele afzondert van (bijvoorbeeld) die
% daar direct voor.

>>>dit maakt het stukken minder leesbaar.
>>
>> Net zo leesbaar als:
>>
>> while (<FILE>) {
>> print if /http:/;
>> }
>>
>> ??
>>
>> Sorry hoor, maar sindsdien vertrouw ik jouw oordeel over leesbare code
>> niet meer.
>
>Uit bovenstaande blijkt duidelijk dat je niet of nauwelijks enige Perl
>kennis hebt.

Uit welk bovenstaande blijkt dat? Uit het feit dat ik een syntactisch
gedrocht aanhaal?

>Hoe kan je dan de leesbaarheid van code beoordelen geschreven in die taal?

Uit voorgaande discussies is al gebleken dat jij absoluut niet snapt wat
er onleesbaar is aan bovenstaande code. Ik citeer met liefde Rene
Pijlman:

Woorden schieten te kort :-/

Jan
--
Look, Ma. No tables - http://enbio.steenbergen-stichting.nl/

Jan Ehrhardt
22/04/05, 01:45
Jan Ehrhardt in nl.internet.www.server-side (Fri, 22 Apr 2005 01:29:11
+0200):

>John Bokma in nl.internet.www.server-side (21 Apr 2005 23:00:18 GMT):
>
>>Jan Ehrhardt wrote:
>>
>>> John Bokma in nl.internet.www.server-side (21 Apr 2005 20:32:31 GMT):
>>>
>>>>Marcel de Groot wrote:
>>>>
>>>>>>$sql_text = "SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
>>>>>>'%".$datumnu."' AND `Opzegdatum` = '0000-00-00 00:00:00'";
>>>> ^ ^
>>>>gebruik gewoon string interpolatie
>>>
>>> Ik heb geen flauw idee wat je daarmee bedoelt.
>>
>>http://www.google.com/search?q=string+interpolation+site:www.php.net&l=en
>
>In Marcel's oorspronkelijke code stond de variable (zij het zonder de $,
>wat ik als een typo beschouw) gewoon tussen dubbele quotes. Juist door
>'m daarbuiten te zetten werd zijn probleem opgelost.

Dit moet ik scherper formuleren: de variabele stond in Marcel's code
zowel tussen dubbele quotes als tussen enkele quotes. Door de
".toevoeging." haal je hem zowel buiten de dubbele als buiten de enkele
quotes.

Jan
--
Look, Ma. No tables - http://enbio.steenbergen-stichting.nl/

John Bokma
22/04/05, 01:55
Jan Ehrhardt wrote:

> John Bokma in nl.internet.www.server-side (21 Apr 2005 23:00:18 GMT):

>>Uit bovenstaande blijkt duidelijk dat je niet of nauwelijks enige Perl
>>kennis hebt.
>
> Uit welk bovenstaande blijkt dat?

Het simpele feit dat je niet weet wat string interpolatie is.

> Uit het feit dat ik een syntactisch
> gedrocht aanhaal?

Ik wacht met spanning op een onderbouwing van waarom dat stuk code
onleesbaar is voor ervaren Perl programmeurs :-D.

( Ik heb het (vast foute ) idee, dat er iets persoonlijks speelt )

>>Hoe kan je dan de leesbaarheid van code beoordelen geschreven in die
>>taal?
>
> Uit voorgaande discussies is al gebleken dat jij absoluut niet snapt
> wat er onleesbaar is aan bovenstaande code.

Uit voorgaande discussie had duidelijk mogen blijken dat leesbaardheid als
"leesbaar voor vakgenoten met een gelijk kennisnivo" en niet "leesbaar voor
de newbie die een scrippie gedownload heeft" wordt bedoelt.

Of zie jij graag ook elk wiskunde boek uitgespeld in basisonderwijs-
notatie. En denk je dat een wiskundige dat leesbaarder vind?

> Ik citeer met liefde Rene
> Pijlman:
>
> Woorden schieten te kort :-/

Ja, dat vreesde ik al, ik wacht vol spanning op een verbetering van
voorgenoemde code, inclusief argumentatie waarom jouw versie leesbaarder is
voor *ervaren* Perl programmeurs.

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Jan Ehrhardt
22/04/05, 02:15
John Bokma in nl.internet.www.server-side (21 Apr 2005 23:50:43 GMT):

>Jan Ehrhardt wrote:
>
>> John Bokma in nl.internet.www.server-side (21 Apr 2005 23:00:18 GMT):
>
>>>Uit bovenstaande blijkt duidelijk dat je niet of nauwelijks enige Perl
>>>kennis hebt.
>>
>> Uit welk bovenstaande blijkt dat?
>
>Het simpele feit dat je niet weet wat string interpolatie is.

Hadden we het over PHP of Perl?
En geef dan eens de code hoe dat dan wel zou moeten in Marcel's geval.

>Uit voorgaande discussie had duidelijk mogen blijken dat leesbaardheid als
>"leesbaar voor vakgenoten met een gelijk kennisnivo"

Die vakgenoten met een vergelijkbaar kennisniveau bleken binnen een half
tot 2 jaar hun eigen code niet meer te kunnen begrijpen. Dat zegt mij
genoeg over de onleesbaarheid van de code.

>en niet "leesbaar voor de newbie die een scrippie gedownload heeft"
>wordt bedoelt.

Je hebt het niet over newbies, maar over mensen die net zoals jij een
gedegen opleiding in de technische/beta hoek hebben gehad.

Jan
--
Look, Ma. No tables - http://enbio.steenbergen-stichting.nl/

John Bokma
22/04/05, 02:45
Jan Ehrhardt wrote:

> John Bokma in nl.internet.www.server-side (21 Apr 2005 23:50:43 GMT):

[ gebrek aan Perl kennis ]

>>Het simpele feit dat je niet weet wat string interpolatie is.
>
> Hadden we het over PHP of Perl?

String interpolatie is een van de dingen die in PHP overgenomen is uit
Perl.

> En geef dan eens de code hoe dat dan wel zou moeten in Marcel's geval.

Ik was eerder met mijn code verzoek :-D.

>>Uit voorgaande discussie had duidelijk mogen blijken dat leesbaardheid
>>als "leesbaar voor vakgenoten met een gelijk kennisnivo"
>
> Die vakgenoten met een vergelijkbaar kennisniveau bleken binnen een
> half tot 2 jaar hun eigen code niet meer te kunnen begrijpen. Dat zegt
> mij genoeg over de onleesbaarheid van de code.

Voor elke programmeertaal geld, is mijn ervaring, als je er een tijd uit
bent, kost het tijd om er weer in te komen, en hoe minder je ervaring
met die taal, hoe sterker dit opgaat.

Daarnaast geld voor elke goede programmeur dat zijn/haar
programmeerstijl meegroeit. Niet alleen "Perl programmeurs" klagen over
het feit dat ze eigen werk, na jaren, niet meer kunnen lezen. Echter,
als je eenmaal over de "drempel" heen bent, verdwijnt dat probleem voor
een erg groot deel.

En nogal wat vakgenoten menen dat een programmeertaal leren, ff de
syntax onder de knie krijgen is (4 - 8 uur werk). Vakgenoten die mij
vertelen dat ik "zo" PHP kan leren, "zo" Python kan leren, en "zo" C#
:-D. Ik weet (inmiddels) beter.

>>en niet "leesbaar voor de newbie die een scrippie gedownload heeft"
>>wordt bedoelt.
>
> Je hebt het niet over newbies, maar over mensen die net zoals jij een
> gedegen opleiding in de technische/beta hoek hebben gehad.

Maar dat maakt niet iemand tot een Perl programmeur door eventjes aan de
taal te ruiken. Ik doe Perl ruim 11 jaar, maar leer nog steeds bij. En
nee, mijn code is allang niet meer onleesbaar voor mij na 2 jaar, zelfs
niet na 5 jaar.

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Jan Ehrhardt
22/04/05, 02:55
John Bokma in nl.internet.www.server-side (22 Apr 2005 00:39:43 GMT):

>> En geef dan eens de code hoe dat dan wel zou moeten in Marcel's geval.
>
>Ik was eerder met mijn code verzoek :-D.

Ik heb een vaag vermoeden wat 'jouw' code zou moeten doen, maar omdat
het zo'n syntactisch gedrocht is weet ik dat niet eens zeker. Dus dat is
niet te verbeteren zonder dat je uitlegt wat het zou moeten doen.

Maar wat jij zelf oorspronkelijk als antwoord gaf aan Marcel (alleen die
$ toevoegen) gaat dus in ieder geval niet werken. Met het antwoord
'gebruik string interpolatie' ben je er niet. Er ligt een concrete,
welomschreven vraag. Morgenochtend (nl-tijd) zie ik hier je uitgespelde
antwoord op die vraag wel verschijnen.

Jan
--
Look, Ma. No tables - http://enbio.steenbergen-stichting.nl/

Daniel Tryba
22/04/05, 02:55
Jan Ehrhardt <monitor@idem.invalid> wrote:
> Maar wat jij zelf oorspronkelijk als antwoord gaf aan Marcel (alleen die
> $ toevoegen) gaat dus in ieder geval niet werken.

Waarom zou dat niet werken?

John Bokma
22/04/05, 04:05
Jan Ehrhardt wrote:

> John Bokma in nl.internet.www.server-side (22 Apr 2005 00:39:43 GMT):
>
>>> En geef dan eens de code hoe dat dan wel zou moeten in Marcel's
>>> geval.
>>
>>Ik was eerder met mijn code verzoek :-D.
>
> Ik heb een vaag vermoeden wat 'jouw' code zou moeten doen,

Kortom, je beheerst de notatie niet en *daarom* is die onleesbaar. En
slechs daarom is het een "onleesbaar" gedrocht.

> maar omdat
> het zo'n syntactisch gedrocht is weet ik dat niet eens zeker. Dus dat
> is niet te verbeteren zonder dat je uitlegt wat het zou moeten doen.

Elke regel die gelezen wordt uit een reeds geopende file afdrukken dan
en slechts dan als deze de tekenreeks http: in zich heeft.

> Maar wat jij zelf oorspronkelijk als antwoord gaf aan Marcel (alleen
> die $ toevoegen) gaat dus in ieder geval niet werken. Met het antwoord
> 'gebruik string interpolatie' ben je er niet. Er ligt een concrete,
> welomschreven vraag. Morgenochtend (nl-tijd) zie ik hier je
> uitgespelde antwoord op die vraag wel verschijnen.

<?php

$datumnu = date ("m-d");
$sql_text = ("SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE
'%$datumnu' AND `Opzegdatum` = '0000-00-00 00:00:00'");

echo $sql_text;
?>

geeft hier:

SELECT * FROM `smoelenboek` WHERE `Geboortedatum` LIKE '%04-21' AND
`Opzegdatum` = '0000-00-00 00:00:00'

En "hier" is het 04-21

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Daniel Tryba
22/04/05, 04:25
John Bokma <postmaster@castleamber.com> wrote:
>> Ik heb een vaag vermoeden wat 'jouw' code zou moeten doen,
>
> Kortom, je beheerst de notatie niet en *daarom* is die onleesbaar. En
> slechs daarom is het een "onleesbaar" gedrocht.

De code is slecht omdat er allerlei dingen onzichtbaar gebeuren:
-de while bevat niet alleen een conditie, er wordt iets van een
filepointer gelezen, in een variabele gestopt en de filepointer wordt
verplaatst, allemaal impliciet door <foo>
-de /foo/ is vast een expressie die naar true of false evalueert, maar
waarop die plaats vind staat er niet bij.
-de print schrijft vast iets naar stdout, maar wat dat is is weer een
raadsel

Ontstaan uit de behoeft om zo veel mogelijk met zo min mogelijk tikwerk
te doen, het resultaat is perl met zijn "funny characters".

En IIRC dan is zijn de missende funny characters waarop alle
bovenstaande operaties owrden uitgevoerd $_

John Bokma
22/04/05, 04:45
Daniel Tryba wrote:

> John Bokma <postmaster@castleamber.com> wrote:
>>> Ik heb een vaag vermoeden wat 'jouw' code zou moeten doen,
>>
>> Kortom, je beheerst de notatie niet en *daarom* is die onleesbaar. En
>> slechs daarom is het een "onleesbaar" gedrocht.
>
> De code is slecht omdat er allerlei dingen onzichtbaar gebeuren:

Dus je bevestigt "Kortom, je beheerst de notatie niet en *daarom* is die
onleesbaar"

En ik kan in diverse programmeertalen dingen opsommen die "onzichtbaar"
zijn voor beginners.

Of anders:

5(3x - 2) = 15

Heb jij moeite met dat te lezen? Ik niet.

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Daniel Tryba
22/04/05, 11:35
John Bokma <postmaster@castleamber.com> wrote:
>>> Kortom, je beheerst de notatie niet en *daarom* is die onleesbaar. En
>>> slechs daarom is het een "onleesbaar" gedrocht.
>>
>> De code is slecht omdat er allerlei dingen onzichtbaar gebeuren:
>
> Dus je bevestigt "Kortom, je beheerst de notatie niet en *daarom* is die
> onleesbaar"

Ik beheers de notatie, wat ik niet beheers is wat er juist niet staat.

> En ik kan in diverse programmeertalen dingen opsommen die "onzichtbaar"
> zijn voor beginners.

Dat levert dan IMHO ook slechte code op.

> Of anders:
>
> 5(3x - 2) = 15
>
> Heb jij moeite met dat te lezen? Ik niet.

Ik kan het lezen (als in een regel met funny characters), maar wat is de
context?

John Bokma
22/04/05, 12:45
Daniel Tryba wrote:

> John Bokma <postmaster@castleamber.com> wrote:
>>>> Kortom, je beheerst de notatie niet en *daarom* is die onleesbaar.
>>>> En slechs daarom is het een "onleesbaar" gedrocht.
>>>
>>> De code is slecht omdat er allerlei dingen onzichtbaar gebeuren:
>>
>> Dus je bevestigt "Kortom, je beheerst de notatie niet en *daarom* is
>> die onleesbaar"
>
> Ik beheers de notatie, wat ik niet beheers is wat er juist niet staat.

Kortom, je kent geen Perl. Je kan een heel groot deel van de code die in
Perl groepen en op mailinglijsten geplaatst wordt niet lezen. De meeste
CPAN code is voor jou een raadsel.

Heb je dat probleem ook met een Linux CLI? Iets als:

foo | bar | baz

?

grappig dat

print for sort @lines;

ineens "onleesbaar" is.

>> En ik kan in diverse programmeertalen dingen opsommen die
>> "onzichtbaar" zijn voor beginners.
>
> Dat levert dan IMHO ook slechte code op.

Hoe kan een verkorte notatie "slechte code" opleveren? Of bedoel je dat
mensen die dachten dat "Perl in 24 uur" een zinvol boek was er moeite
mee hebben. Tja, die zullen vaker problemen hebben met programmeren.

>> Of anders:
>>
>> 5(3x - 2) = 15
>>
>> Heb jij moeite met dat te lezen? Ik niet.
>
> Ik kan het lezen (als in een regel met funny characters), maar wat is
> de context?

5 maal ( 3 maal x minus 2 ) = 15

Als je wat verder duikt in de wiskunde kom je nog meer gekke korte
notaties tegen. Onleesbaar voor beginners. Gesneden koek voor mensen die
ze dagelijks gebruiken.

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Daniel Tryba
22/04/05, 14:05
John Bokma <postmaster@castleamber.com> wrote:
>> Ik beheers de notatie, wat ik niet beheers is wat er juist niet staat.
>
> Kortom, je kent geen Perl. Je kan een heel groot deel van de code die in
> Perl groepen en op mailinglijsten geplaatst wordt niet lezen. De meeste
> CPAN code is voor jou een raadsel.

Mijn kennis van perl is minimaal (en ik heb niet de behoefte omdat te
veranderen). Maar toen een tijdje geleden een perl script de oorzaak was
van het stilletjes weggooien van binnenkomende email, kon ik zonder
probleem aangeven wat de fout was en waar die zit:

$connectip =~ /(\d+)\.(\d+)\.(\d+)\.(\d+)/;
my ($ipbyte1, $ipbyte2, $ipbyte3, $ipbyte4) = ($1, $2, $3, $4);

> Heb je dat probleem ook met een Linux CLI? Iets als:
>
> foo | bar | baz
>
> ?

Ik heb geen idee wat het doet. Dat wordt dus minimaal 3 man pages lezen.
Als je bedoelt dat | een funny character is welke ervoor zorgt dat de
output van het ene process als input voor het andere wordt gebruikt dan
is dat inderdaad niet echt logisch, vooral de manier waarop dat gedaan
wordt.... IIRC werd dat bv met tijdelijke bestanden gedaan in de goede
oude (MS)DOS.

Een ander mooi voorbeeld van hoe logische de "Linux CLI" (zal maar aannemen
dat het over shells gaat (bash dus op Linux)) is:

ls 2>&1 > dirlist

>>> En ik kan in diverse programmeertalen dingen opsommen die
>>> "onzichtbaar" zijn voor beginners.
>>
>> Dat levert dan IMHO ook slechte code op.
>
> Hoe kan een verkorte notatie "slechte code" opleveren?

Heel makkelijk. Alle reeds getoonde stukje perl in deze thread getuigen
het.

>> Ik kan het lezen (als in een regel met funny characters), maar wat is
>> de context?
>
> 5 maal ( 3 maal x minus 2 ) = 15
>
> Als je wat verder duikt in de wiskunde kom je nog meer gekke korte
> notaties tegen. Onleesbaar voor beginners. Gesneden koek voor mensen die
> ze dagelijks gebruiken.

Dat heet beroepsdeformatie. Als je elke dag aan iets wordt blootgesteld
en het normaal gaat vinden betekend dat nog niet dat het logisch is.

John Bokma
22/04/05, 14:45
Daniel Tryba wrote:

> John Bokma <postmaster@castleamber.com> wrote:
>>> Ik beheers de notatie, wat ik niet beheers is wat er juist niet
>>> staat.
>>
>> Kortom, je kent geen Perl. Je kan een heel groot deel van de code die
>> in Perl groepen en op mailinglijsten geplaatst wordt niet lezen. De
>> meeste CPAN code is voor jou een raadsel.
>
> Mijn kennis van perl is minimaal (en ik heb niet de behoefte omdat te
> veranderen).

Maar hoe kan je dan ooit beoordelen wat leesbaar is voor *ervaren* Perl
programmeurs (en wat niet)?

>> Heb je dat probleem ook met een Linux CLI? Iets als:
>>
>> foo | bar | baz
>>
>> ?
>
> Ik heb geen idee wat het doet. Dat wordt dus minimaal 3 man pages
> lezen.

Nee, lol :-D foo en bar (en iirc ook baz) zijn een soort
standaardnaampjes.

> Als je bedoelt dat | een funny character is welke ervoor zorgt
> dat de output van het ene process als input voor het andere wordt
> gebruikt dan is dat inderdaad niet echt logisch, vooral de manier
> waarop dat gedaan wordt.... IIRC werd dat bv met tijdelijke bestanden
> gedaan in de goede oude (MS)DOS.

Ok, je bent gelukkig consistent in wat je onlogisch vind :-D


>> Hoe kan een verkorte notatie "slechte code" opleveren?
>
> Heel makkelijk. Alle reeds getoonde stukje perl in deze thread
> getuigen het.

Kan je precies uitleggen wat er slecht is aan:

while ( <FILE> ) {

print if /http:/
}

en hoe jij dit liever op zou schrijven?

Het grappige is dat mensen vervolgens geen moeite hebben om op de CLI in
te tikken:

grep http: bestandsnaam

>>> Ik kan het lezen (als in een regel met funny characters), maar wat
>>> is de context?
>>
>> 5 maal ( 3 maal x minus 2 ) = 15
>>
>> Als je wat verder duikt in de wiskunde kom je nog meer gekke korte
>> notaties tegen. Onleesbaar voor beginners. Gesneden koek voor mensen
>> die ze dagelijks gebruiken.
>
> Dat heet beroepsdeformatie. Als je elke dag aan iets wordt
> blootgesteld en het normaal gaat vinden betekend dat nog niet dat het
> logisch is.

Voor iemand die begint is erg weinig logisch.

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Daniel Tryba
22/04/05, 16:05
John Bokma <postmaster@castleamber.com> wrote:
>> Mijn kennis van perl is minimaal (en ik heb niet de behoefte omdat te
>> veranderen).
>
> Maar hoe kan je dan ooit beoordelen wat leesbaar is voor *ervaren* Perl
> programmeurs (en wat niet)?

Hoe kan je ooit een ervaren programmeur worden zonder code van anderen
te kunnen lezen?

>> Als je bedoelt dat | een funny character is welke ervoor zorgt
>> dat de output van het ene process als input voor het andere wordt
>> gebruikt dan is dat inderdaad niet echt logisch, vooral de manier
>> waarop dat gedaan wordt.... IIRC werd dat bv met tijdelijke bestanden
>> gedaan in de goede oude (MS)DOS.
>
> Ok, je bent gelukkig consistent in wat je onlogisch vind :-D

Het gebruik van > zou wellicht beter zijn geweest aangezien daar
wellicht nog visueel is uit af te leiden dat het om een stroom van
gegevens in de richting van de "pijl" gaat (daar wordt het ding op
verkeersborden voor gebruikt).


>>> Hoe kan een verkorte notatie "slechte code" opleveren?
>>
>> Heel makkelijk. Alle reeds getoonde stukje perl in deze thread
>> getuigen het.
>
> Kan je precies uitleggen wat er slecht is aan:
>
> while ( <FILE> ) {
>
> print if /http:/
> }
>
> en hoe jij dit liever op zou schrijven?

Mijn probleem ermee:
news:42685ef2$0$137$c5fe704e@news6.xs4all.nl

De oplossing is het uitschrijven van mijn bezwaren, hoe dat in perl
gaat?

> Het grappige is dat mensen vervolgens geen moeite hebben om op de CLI in
> te tikken:
>
> grep http: bestandsnaam

Heel veel mensen hebben problemen met dit soort constructies,
daarom zijn er tegenwoordig mooie interfaces met duidelijk benoemde
input velden voor zulke taken.

>> Dat heet beroepsdeformatie. Als je elke dag aan iets wordt
>> blootgesteld en het normaal gaat vinden betekend dat nog niet dat het
>> logisch is.
>
> Voor iemand die begint is erg weinig logisch.

Of iets wel of niet logisch is staat los van ervaring.

John Bokma
22/04/05, 23:45
Daniel Tryba wrote:

> John Bokma <postmaster@castleamber.com> wrote:
>>> Mijn kennis van perl is minimaal (en ik heb niet de behoefte omdat
>>> te veranderen).
>>
>> Maar hoe kan je dan ooit beoordelen wat leesbaar is voor *ervaren*
>> Perl programmeurs (en wat niet)?
>
> Hoe kan je ooit een ervaren programmeur worden zonder code van anderen
> te kunnen lezen?

Door te studeren. Die Perl quote waar mensen zich vreselijk druk om
maken wordt in het boek waar het uitkomt voorafgegaan door code die
langer is, en geen gebruik maakt van de impliciete variable $_. Er wordt
dus stap voor stap uitgelegt hoe dingen korter opgeschreven kan worden.

Zoals je wellicht ook ooit geleerd hebt dat 5 maal 5 maal 5 maal 5
korter te schrijven is als 5 tot de 4e macht.

Ik wil graag guitaar leren spelen. Denk jij dat ik gewoon even wat tab
files kan downloaden, en vervolgens lekker kan spelen? Of zal ik eerst
de notatie moeten leren, en hoe mijn handen te plaatsen?

Ik ben een tijdje bezich geweest hindi / sanskriet te leren. Denk jij
dat ik dan moet beginnen met het lezen van de Kama Sutra geschreven in
Devanagari, of dat ik moet beginnen met "Learning Hindi for beginners".

[ pipe symbool ]

>> Ok, je bent gelukkig consistent in wat je onlogisch vind :-D
>
> Het gebruik van > zou wellicht beter zijn geweest aangezien daar
> wellicht nog visueel is uit af te leiden dat het om een stroom van
> gegevens in de richting van de "pijl" gaat (daar wordt het ding op
> verkeersborden voor gebruikt).

En hoe wordt dan besloten of:

grep foo bar > baz

een pipe is naar de opdracht baz, of het bestand baz gaat aanmaken (of
overschrijven?)

Ik heb geen symbooltje voor laden en lossen op mijn keyboard :-D.

>>>> Hoe kan een verkorte notatie "slechte code" opleveren?
>>>
>>> Heel makkelijk. Alle reeds getoonde stukje perl in deze thread
>>> getuigen het.
>>
>> Kan je precies uitleggen wat er slecht is aan:
>>
>> while ( <FILE> ) {
>>
>> print if /http:/
>> }
>>
>> en hoe jij dit liever op zou schrijven?
>
> Mijn probleem ermee:
> news:42685ef2$0$137$c5fe704e@news6.xs4all.nl

Mag ik dat samenvatten tot "omdat er allerlei dingen onzichtbaar
gebeuren".

En mag ik dan opmerken dat dat *onzichtbaar* iets is wat de leek
ervaart?

Om even op jouw verkeersborden terug te komen, ook die maken gebruik van
veel onzichtbare dingen. Bijvoorbeeld de juiste interpretatie van een
vrij abstract symbool. Ik begreep dat nogal wat mensen het leren van "de
borden" als lastig ervaren :-D.

Bovendien, de interpretatie is gebaseerd op westerse symbolen.

Een klassieker die ik wel eens aanhaal. Bloempjes en de Bijtjes. Jij en
ik begrijpen de "onzichtbare" hint. Maar toen een AIDS campagne een
bijtje gebruikte was het bericht dat nogal wat mensen daar uit haalde:
bijen kunnen AIDS overbrengen.

> De oplossing is het uitschrijven van mijn bezwaren, hoe dat in perl
> gaat?

Kan je het uitschrijven in pseudocode?

>> Het grappige is dat mensen vervolgens geen moeite hebben om op de CLI
>> in te tikken:
>>
>> grep http: bestandsnaam
>
> Heel veel mensen hebben problemen met dit soort constructies,
> daarom zijn er tegenwoordig mooie interfaces met duidelijk benoemde
> input velden voor zulke taken.

Duidelijk voor wie? Mooi voor wie?

>>> Dat heet beroepsdeformatie. Als je elke dag aan iets wordt
>>> blootgesteld en het normaal gaat vinden betekend dat nog niet dat
>>> het logisch is.
>>
>> Voor iemand die begint is erg weinig logisch.
>
> Of iets wel of niet logisch is staat los van ervaring.

die is erg nieuw voor mij.

Kan jij een kort lijstje geven van dingen die voor jouw logisch zijn
(zeg 5).

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html

Daniel Tryba
23/04/05, 01:55
John Bokma <postmaster@castleamber.com> wrote:
>> Het gebruik van > zou wellicht beter zijn geweest aangezien daar
>> wellicht nog visueel is uit af te leiden dat het om een stroom van
>> gegevens in de richting van de "pijl" gaat (daar wordt het ding op
>> verkeersborden voor gebruikt).
>
> En hoe wordt dan besloten of:
>
> grep foo bar > baz
>
> een pipe is naar de opdracht baz, of het bestand baz gaat aanmaken (of
> overschrijven?)

Als het gebruik van > ipv | logischer is in foo|bar, betekent dat
natuurlijk dat er voor de huidige betekenis van > een andere contructie
moet worden gedefineerd.

>> Mijn probleem ermee:
>> news:42685ef2$0$137$c5fe704e@news6.xs4all.nl
>
> Mag ik dat samenvatten tot "omdat er allerlei dingen onzichtbaar
> gebeuren".
>
> En mag ik dan opmerken dat dat *onzichtbaar* iets is wat de leek
> ervaart?

Maar is het noodzakelijk? Als het "onzichtbare gebeuren" moet is het
IMHO gewoon een slechte taal, is het echter optioneel dan is het gewoon
slecht leesbare code.

> Om even op jouw verkeersborden terug te komen, ook die maken gebruik van
> veel onzichtbare dingen. Bijvoorbeeld de juiste interpretatie van een
> vrij abstract symbool. Ik begreep dat nogal wat mensen het leren van "de
> borden" als lastig ervaren :-D.
>
> Bovendien, de interpretatie is gebaseerd op westerse symbolen.

Er is dus vrij weinig logisch aan, wellicht een reden dat sommige mensen
ze ook niet snappen (er zijn hier genoeg programmas op TV die dat
aantonen).

>> De oplossing is het uitschrijven van mijn bezwaren, hoe dat in perl
>> gaat?
>
> Kan je het uitschrijven in pseudocode?

Als er nog data in de input zit dan lees data en plaats in variabele,
controleer of de variabele voldoet aan een conditie, indien voldoet dan
print de variabele naar gewenste output.

Herhaal totdat er geen data meer in de input zit.

>>> Het grappige is dat mensen vervolgens geen moeite hebben om op de CLI
>>> in te tikken:
>>>
>>> grep http: bestandsnaam
>>
>> Heel veel mensen hebben problemen met dit soort constructies,
>> daarom zijn er tegenwoordig mooie interfaces met duidelijk benoemde
>> input velden voor zulke taken.
>
> Duidelijk voor wie? Mooi voor wie?

Voor een aanzienlijk groter percentage van gebruikers. Je zult eerst
moeten weten dat voor het zoeken van files het commando grep een
mogelijke oplossing is, Voor het gebruik van grep moet je weten wat de
parameters zijn, omdat te achterhalen moet je weten hoe je hulp kunt
krijgen over grep.

Dat in tegenstelling tot de variant die bv bij mijn desktop zit, waar
het command gewoon "Find Files" heet. Er komt dan een formulier met
velden als "Named", "Look in", "Containing text" en een knop "Find". Dit
alles is natuurlijk netjes in de taal die de gebruiker heeft ingesteld,
met zinnige defaults, tooltips en een knop naar de handleiding. Blijft
het probleem hoe gebruikers de "Find Files" opdracht vinden.

>>>> Dat heet beroepsdeformatie. Als je elke dag aan iets wordt
>>>> blootgesteld en het normaal gaat vinden betekend dat nog niet dat
>>>> het logisch is.
>>>
>>> Voor iemand die begint is erg weinig logisch.
>>
>> Of iets wel of niet logisch is staat los van ervaring.
>
> die is erg nieuw voor mij.
>
> Kan jij een kort lijstje geven van dingen die voor jouw logisch zijn
> (zeg 5).

Ik kan zo snel geen lijst maken, dat komt omdat er heel weinig dingen
logisch zijn. Je verward logisch wellicht met verwachtingspatroon?

John Bokma
23/04/05, 02:35
Daniel Tryba wrote:

> John Bokma <postmaster@castleamber.com> wrote:
>>> Het gebruik van > zou wellicht beter zijn geweest aangezien daar
>>> wellicht nog visueel is uit af te leiden dat het om een stroom van
>>> gegevens in de richting van de "pijl" gaat (daar wordt het ding op
>>> verkeersborden voor gebruikt).
>>
>> En hoe wordt dan besloten of:
>>
>> grep foo bar > baz
>>
>> een pipe is naar de opdracht baz, of het bestand baz gaat aanmaken
>> (of overschrijven?)
>
> Als het gebruik van > ipv | logischer is in foo|bar, betekent dat
> natuurlijk dat er voor de huidige betekenis van > een andere
> contructie moet worden gedefineerd.

} voor een grijpertje (input)
en

\ voor een laadbak (lossen, output )?


head -100 { access_log > grep foo \ result.txt

....

>>> Mijn probleem ermee:
>>> news:42685ef2$0$137$c5fe704e@news6.xs4all.nl
>>
>> Mag ik dat samenvatten tot "omdat er allerlei dingen onzichtbaar
>> gebeuren".
>>
>> En mag ik dan opmerken dat dat *onzichtbaar* iets is wat de leek
>> ervaart?
>
> Maar is het noodzakelijk? Als het "onzichtbare gebeuren" moet is het
^^^ ^ ^^^
wat? ??? wat? ^ wat? ^wat


> IMHO gewoon een slechte taal,
^^^^ wat voor taal?
^^^^ wat zit jij daar nu te verstoppen?

> is het echter optioneel dan is het gewoon slecht leesbare code.
^^^ ^^^ ^^^^
wat? wat? wat?

Merk op dat je 2 zinnen *bol* staan van de verstopte dingen. Wellicht
scheelt het dat we beiden en de context zien, en de taal beheersen :-D.

>> Om even op jouw verkeersborden terug te komen, ook die maken gebruik
>> van veel onzichtbare dingen. Bijvoorbeeld de juiste interpretatie van
>> een vrij abstract symbool. Ik begreep dat nogal wat mensen het leren
>> van "de borden" als lastig ervaren :-D.
>>
>> Bovendien, de interpretatie is gebaseerd op westerse symbolen.
>
> Er is dus vrij weinig logisch aan, wellicht een reden dat sommige
> mensen ze ook niet snappen (er zijn hier genoeg programmas op TV die
> dat aantonen).

Kortom: het gebruik van symbolen maakt het leren voor beginners lastig,
maar brengt de communicatietijd terug voor ervaren gebruikers. (Stel je
voor: een verkeersbord van 3 x 1 meter met daarop in koeienletters:
Nadering van een weg of kruising waarbij de andere voertuigbestuurders
voorrang hebben. U bent verplicht te stoppen, indien U dit niet doet kan
u beboet worden met een bedrag van minimaal 100 euro.

Daarnaast, als er eenduidige afspraken zijn over bepaalde symbolen
voorkomt dat verwarring.

>>> De oplossing is het uitschrijven van mijn bezwaren, hoe dat in perl
>>> gaat?
>>
>> Kan je het uitschrijven in pseudocode?
>
> Als er nog data in de input zit dan lees data en plaats in variabele,
> controleer of de variabele voldoet aan een conditie, indien voldoet
> dan print de variabele naar gewenste output.
>
> Herhaal totdat er geen data meer in de input zit.

Merk op dat dat ook hier dingen verstopt gebeuren. Het ophogen van de
posities in de input en output stream bijvoorbeeld.

Verder gaat "voldoet aan een conditie" er van uit dat (impliciet) de
variabele ingelezen is als een tekenreeks. Enz.


>>> Heel veel mensen hebben problemen met dit soort constructies,
>>> daarom zijn er tegenwoordig mooie interfaces met duidelijk benoemde
>>> input velden voor zulke taken.
>>
>> Duidelijk voor wie? Mooi voor wie?
>
> Voor een aanzienlijk groter percentage van gebruikers.

Ik vraag mij af of dat ooit getest is, en dan bedoel ik "maagdelijk"
(dus vers achter de computer)

> Je zult eerst
> moeten weten dat voor het zoeken van files het commando grep een

*in*

> mogelijke oplossing is,

Met een GUI moet je weten waar je moet klikken, en dat "Zoeken" een
oplossing is.

> Voor het gebruik van grep moet je weten wat de
> parameters zijn,

Voor het gebruik van "Zoeken" moet je weten in welk vakje moet tikken,
en de zoekopties weten (sommige zitten verstopt onder geavanceerd)

> omdat te achterhalen moet je weten hoe je hulp kunt
> krijgen over grep.

Idem over "Zoeken". Ik zie hier een grijs boekje, met een vaagteken
( ;-) ) Als ik er op klik krijg ik de help assistent...

> Dat in tegenstelling tot de variant die bv bij mijn desktop zit, waar
> het command gewoon "Find Files" heet. Er komt dan een formulier met
> velden als "Named", "Look in", "Containing text" en een knop "Find".
> Dit alles is natuurlijk netjes in de taal die de gebruiker heeft
> ingesteld, met zinnige defaults, tooltips en een knop naar de
> handleiding. Blijft het probleem hoe gebruikers de "Find Files"
> opdracht vinden.

Oh, niet alleen. Heb jij wel eens een absolute beginner achter de
computer gezet, en vervolgens op weg geholpen?

>>>>> Dat heet beroepsdeformatie. Als je elke dag aan iets wordt
>>>>> blootgesteld en het normaal gaat vinden betekend dat nog niet dat
>>>>> het logisch is.
>>>>
>>>> Voor iemand die begint is erg weinig logisch.
>>>
>>> Of iets wel of niet logisch is staat los van ervaring.
>>
>> die is erg nieuw voor mij.
>>
>> Kan jij een kort lijstje geven van dingen die voor jouw logisch zijn
>> (zeg 5).
>
> Ik kan zo snel geen lijst maken, dat komt omdat er heel weinig dingen
> logisch zijn. Je verward logisch wellicht met verwachtingspatroon?

is vanzelfsprekend (een begrip van logisch, waarvan ik uitging dat je
het hierboven bedoelde) niet hetzelfde als: weten wat er komen gaat,
gebaseerd op wat bekend is? (in bovenstaande context).

Ik begrijp je klacht heel goed, maar in geen enkel vakgebied wat ik ken
is er een short cut. Wel massa's notaties. Helaas geeft een computer
mensen te vlug het idee dat het gewoon een kwestie van knopjes indrukken
is, en een beetje met de muis schuiven. Vreemd dat ze wel snappen dat je
niet ff een guitaar om de hoek kan kopen, en zo mee kan spelen met je
favoriete band(s).

--
John Voorbeeldscripts in Perl: http://johnbokma.com/perl/
Website design: http://johnbokma.com/websitedesign/
Ervaren Perl / Java programmeur beschikbaar: http://castleamber.com/
Tevreden opdrachtgevers: http://castleamber.com/testimonials.html