tag:blogger.com,1999:blog-373442882024-02-28T05:31:20.610+01:00Vernard Luxe"Good programs exit with a return code, not with a shell."Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comBlogger18125tag:blogger.com,1999:blog-37344288.post-51803525933048648762009-06-19T21:02:00.006+02:002009-06-19T21:09:23.062+02:00Hey ... this is a funny test and a well done information campaign<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.no-nerd.de/htdocs/img/nonerd_top4.png"><img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 756px; height: 246px;" src="http://www.no-nerd.de/htdocs/img/nonerd_top4.png" border="0" alt="" /></a><br /><br /><span style="font-weight:bold;">Universities are not funny ... have no sense of humor?</span><br />Think again after you clicked through the information loaden, but well done, campaign of the University of Passau, or to be precise, their Computer Science Department.<br /><p><a href="http://www.no-nerd.de/nerd-o-mat">http://www.no-nerd.de/Nerd-O-Mat</a></p><p>You need to understand german, but you can try to shortcut it :-)</p><p>Have fun.</p><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-58613131356742673702009-01-30T12:09:00.003+01:002009-01-30T12:15:50.313+01:001 M0V3D1 M0V3D, I now live in the city of "Frankfurt am Main".<br />I got lucky and ot a nice new office in the inner city.<br />Lets see, its been some time ago that I have been living in Germany,<br />but so far the people are again, nice and friendly.<br /><div><br /></div><div><br /></div><br /><iframe width="300" height="300" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com/maps?f=q&source=s_q&hl=de&geocode=&q=brauhaus+frankfurt&sll=37.0625,-95.677068&sspn=54.401733,99.755859&ie=UTF8&s=AARTsJqgfJ9-weLRxvEjz4G6fmM1H7KEEw&ll=50.11127,8.683298&spn=0.002064,0.003219&z=17&output=embed"></iframe><br /><small><a href="http://maps.google.com/maps?f=q&source=embed&hl=de&geocode=&q=brauhaus+frankfurt&sll=37.0625,-95.677068&sspn=54.401733,99.755859&ie=UTF8&ll=50.11127,8.683298&spn=0.002064,0.003219&z=17" style="color:#0000FF;text-align:left">Größere Kartenansicht</a></small><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-87352675069253171762008-05-14T21:12:00.003+02:002008-05-15T09:24:08.436+02:00Love da Guac<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://loveguac.com/images/guac_in_bowl_150.jpg"><img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 200px;" src="http://loveguac.com/images/guac_in_bowl_150.jpg" border="0" alt="" /></a><br />I found the "<a href="http://loveguac.com/guac.htm">Guac of the day</a>" really sweet.<br /><br />Eventhough I used a standard bowl for serving the guacamole instead of the suggested <a href="http://loveguac.com/images/guac_in_bowl_150.jpg">Aztecs' molcajete</a>. I used to have an <a href="http://www.soundcard-drivers.com/companies/152.htm">Aztech as a coworker in my old PC, but he no longer works under Windows Vista</a> :-)<div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-10019645499775427392008-05-09T15:30:00.001+02:002008-05-09T15:33:18.164+02:00Jokes ...<a href="http://www.devtopics.com/best-programming-jokes/"><br />~~~~~~~~~~~~~~~~~~~~~~~~~<br /><br />"Knock, knock."<br />"Who's there?"<br />very long pause….<br />"Java." <br /><br />~~~~~~~~~~~~~~~~~~~~~~~~~ <br /><br />AAAAA: American Association Against Acronym Abuse.<br /><br />~~~~~~~~~~~~~~~~~~~~~~~~~ <br /></a><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-86155849256411350222008-04-25T18:35:00.002+02:002008-04-25T18:40:27.122+02:00I am still alive ...I dived into the deep sea of looking and passively consuming social networks in the last half year, as <a href="http://images.google.de/images?q=deep%20sea">reading other peoples inner thoughts</a> and taking part in <a href="http://twitter.com">2.000.000.000 peoples daily lives</a> was very stressing I forgot to manage my blog. I am still searching for a "friend" of mine :-), he had an account on facebook some time ago <a href="http://www.google.com/search?q=Freddi+Staur">his nick name was Freddi</a>. Jokes a side .. even the sueddeutsche is now having a social network for their commenting system. Nice new world :-)<div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-57153493950956023282007-08-20T11:25:00.001+02:002007-08-20T11:26:23.253+02:00LinkedINHello people out there ... if you know me, for example from University you shall connect to me, I am easier to find now, as I have a LinkedIn Profile.<br /><br><br /><a href="http://www.linkedin.com/in/vluxe"><img src="http://www.linkedin.com/img/webpromo/btn_myprofile_160x33.gif" width="160" height="33" border="0" alt="View Vernard Luxe's profile on LinkedIn" /></a><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-65557993722926988002007-06-20T18:33:00.000+02:002007-06-21T09:27:51.132+02:00Blind Apple's iTunes user information ebemdded in DRM free m4a-Files<a href="http://archive.gulfnews.com/articles/07/06/09/10131156.html">Recently it was discovered</a> that if you bought m4a files from iTunes Plus, which are DRM free, that Apple embedded your name and email in it. <a href="http://www.sueddeutsche.de/computer/artikel/716/116600/?page=3">It made quite some news also here in germany</a>. You can easily look for yourself with a few commands, <a href="http://www.tuaw.com/2007/05/30/tuaw-tip-dont-torrent-that-song/">as decribed:</a> <span style="font-weight: bold;"><span style="font-family:courier new;">strings Song.m4a | grep</span></span><span style="font-style: italic;"> <span style="font-weight: bold;font-family:courier new;" >apID</span>.<br /></span>Eventhough it is not hard to find, nor hard to remove like for example watermarks, it allows tracking. If you do not know how to handle big <a href="http://search.cpan.org/%7Ebillh/Audio-M4P-0.351/lib/Audio/M4P/QuickTime.pm">Perl libraries </a>or dont want to install software, like <a href="http://atomicparsley.sourceforge.net/" title="sourceforge.net" rel="nofollow">Atomic Parsley</a> that might be able to remove them you can use my simple perl script.<br />It shall work for most m4a Files and replaces the contents of two <a href="http://atomicparsley.sourceforge.net/mpeg-4files.html">Atoms</a> <apid> which usally is your eMail adress and <name>, which stored your full name.<br /><br />The perl script is under <a href="http://creativecommons.org/licenses/by-sa/3.0/">CC Share-Alike 3.0.</a><br />And of course use a BackUp and I dont warrant for anything.<br /><br /></name></apid><blockquote><span style="font-family:courier new;">#!/usr/bin/perl<br /><br />############################# About The Script #########################################<br /># Script Name: rminfo.pl<br /># Creator : Vernard Luxe<br /># Date : 20.06.2007<br /># Description: Blinds apID and name Atoms in Apple m4a file with non-intrusive values.<br />#<br /># COPYRIGHT NOTICE<br /># (C) Copyright 2007 All Rights Reserved.<br />#<br /># LICENSING<br /># Creative Commons Attribution-ShareAlike 3.0 Unported<br /># http://creativecommons.org/licenses/by-sa/3.0/<br />#<br /># This script may be used and modified free of charge by anyone so long as<br /># this copyright notice and the comments above remain intact. By using this<br /># code you agree to indemnify the creator (identified above) from any liability that<br /># might arise from it's use.<br />#<br /># In all cases copyright and header must remain intact.<br />#<br />#######################################################################################<br />$MAIL = "steve\@peach.com";<br />$NAME = "Steve Works";<br /><br />if(@ARGV == 0 || @ARGV > 2) {<br />print "usage: rminfo song.m4a [target.m4a]\n";<br />exit 1;<br />}<br /><br />print "Blinding values of apID and name from '".$ARGV[0]."'\n";<br /><br />$FILE = $ARGV[0];<br />open(FILE, "<$FILE") || die "ERROR: Could not open file '$FILE' for reading.\n"; $data = ""; while(defined($line = <file>)) { $data .= $line; }<br />close FILE;<br /><br />$emailPattern = "(apID.{4}data[^a-zA-Z0-9\.\-\@\_]*)([a-zA-Z0-9\.\-\@\_]*)";<br /><br />$data =~ /$emailPattern/;<br />$email_found = $email_repl = $2;<br />$email_repl =~ tr/[0-9a-zA-Z\.\@\_\-]/x/;<br />$email_repl = substr($MAIL, 0, length($email_repl)) . substr($email_repl, length($MAIL), length($email_repl));<br />$data =~ s/$emailPattern/$1$email_repl/;<br /><br />$data =~ /name(.*?)\x00/g;<br />$name_found = $name_repl = $1;<br />$name_repl =~ tr/[0-9a-zA-Z ]/x/;<br />$name_repl = substr($NAME, 0, length($name_repl)) . substr($name_repl, length($NAME), length($name_repl));<br />$data =~ s/name.*?\x00/name$name_repl\x00/g;<br /><br />if(@ARGV == 2) {<br />$FILE = $ARGV[1];<br />} else {<br />$FILE = "noinfo.".$FILE;<br />}<br /><br />open(FILE, "> $FILE") || die "ERROR: Could not open file '$FILE' for output.\n";<br />print FILE $data;<br />close FILE;<br /><br />print "Successfully blinded\n";<br />print "\tapID: $email_found => $email_repl\n";<br />print "\tname: $name_found => $name_repl\n";<br /><br />exit 0;<br /><br /><br /></file></span></blockquote><br /><br /><a href="http://web3.countomat.de/49175.html" title="Countomat Webcounter und Webstatistik (Statistik und Logfileanalyse, Counter)" style="text-decoration:none;" target="_blank"><br /><script src="http://log3.countomat.com/_js/vernard-luxe.blogspot.com;~apple/loglib.js" type="text/javascript"></script></a><br /><noscript><br /><a href="http://web3.countomat.de/49175.html" title="Countomat Webcounter und Webstatistik (Statistik und Logfileanalyse, Counter)" style="text-decoration:none;" target="_blank"><br /><img border="0" src="http://log3.countomat.com/_log/vernard-luxe.blogspot.com;~apple/ct.gif" alt="Countomat Webcounter und Webstatistik (Statistik und Logfileanalyse, Counter)" /><br /></a><br /></noscript><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-605259521876057842007-06-07T13:34:00.000+02:002007-06-07T13:35:54.018+02:00Technorati I am comming ...No not what you might think, but I love new services and thats why I just registered at Technorati.<br /><script src="http://widgets.technorati.com/t.js" type="text/javascript"></script><div class="tr_embed_t_js"><br /> <a href="http://www.technorati.com/blogs/vernard-luxe.blogspot.com?sub=tr_embed_t_js" class="tr_embed_arg_blog">Blog</a><br /> <a href="http://www.technorati.com/profile/vernard?sub=tr_embed_t_js" class="tr_embed_arg_username">Profile for vernard</a><br /> </div><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1172835164654015792007-03-02T12:31:00.000+01:002007-03-02T12:32:44.663+01:00<a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="https://secure-web10.secondlife.com/"><img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px;" src="https://secure-web10.secondlife.com/" border="0" alt="" /></a><br />Also diese Leben ist doch schon anstrengend genug: Ich bin ja seit 1. April 1980 hier.<div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1163952979311605602006-11-19T17:07:00.000+01:002006-11-19T17:20:01.006+01:00Numly in more detailThis post will be used to generate another Numly ESN. But this time I will try it in a completely different way. As far as I know Numly is only bound to the content that I enter during the Numly generation process:<br /><br />This will be ntered into Numly.<br /><span style="font-weight:bold;"><br /><blockquote>But, this text will not appear in the numly. Thus, I could write something completely different here than I have numly "vouch" for ... this is a pity and means that a machine can not automatically verify content. Even if it is in numly.<br /></blockquote></span><br /><br />I will end this post here now. Lets see what happens if I submit it at Numly.<br /><br />Wishes, Vernard<br /><br /><p><a href="http://www.numly.com/numly/verify.asp?id=92609-061119-843224-63"><img alt="numly esn" src="http://numly.com/numly/icon.asp?id=9260906111984322463" border="0"> 92609-061119-843224-63</a> Rate content: <a href="http://numly.com/numly/verify.asp?id=9260906111984322463&rate=yes"><img src="http://numly.com/numly/thumbup.gif" border="0"></a><a href="http://numly.com/numly/verify.asp?id=9260906111984322463&rate=no"><img src="http://numly.com/numly/thumbdown.gif" border="0"></a><br><img src="http://numly.com/numly/barcode.asp?code=9260906111984322463&height=20&width=1&mode=code39"><br><br>© 2006 All Rights Reserved.</p><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1163428902211851382006-11-13T15:27:00.000+01:002006-11-13T15:47:11.463+01:00Vernard Luxe once said "Good programs exit with a return code, not with a shell."Hello,<br /><span style="font-weight: bold;"><br />"Good programs exit with a return code, not with a shell."</span><br />This saying I am most famous for. This is my saying. I said it first in a course at the university.<br /><br />But how hard must I try to convince you. Some readers might not care, but others do value that I am actually the author of this statement. You might want to use this quote in your work, which I encourage to do so. But how can you validate that this post is actually done by me? How can you find other work, that I also did? How do you verify that my FlickR photos of the beautiful sunset, are indeed mine?<br /><br />If you like to find answers to these question, then you might turn yourself to one of the ID and Content management tools that are popping up at the moment.<br />To name some of them I will try, but this list is not exhaustive, as new services are created. On the Web 2.0 creativity is endless. So I promised names here they are:<br /><ul><li>FindMeOn</li><li>OpenID</li><li>ClaimID</li><li>MicroID</li><li>Numly</li><li>Sxip</li></ul>Not all of them provide equal functionality, nor equal strength, as they are all aimed at different problems. I will later try to compare them.<br /><br />This is just a post, nothing more. <span style="font-style: italic;">But isnt it soo valuable to know that <span style="font-weight: bold; color: rgb(204, 0, 0);">I am the author.</span></span><br /><hr><br />5 mins later: This is my ESN from Numly:<br /><p><a href="http://www.numly.com/numly/verify.asp?id=64655-061113-563683-35"><img alt="numly esn" src="http://numly.com/numly/icon.asp?id=6465506111356368335" border="0"> 64655-061113-563683-35</a> Rate content: <a href="http://numly.com/numly/verify.asp?id=6465506111356368335&rate=yes"><img src="http://numly.com/numly/thumbup.gif" border="0"></a><a href="http://numly.com/numly/verify.asp?id=6465506111356368335&rate=no"><img src="http://numly.com/numly/thumbdown.gif" border="0"></a><br><img src="http://numly.com/numly/barcode.asp?code=6465506111356368335&height=20&width=1&mode=code39"><br><br><!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by/2.5/"><img alt="Creative Commons License" style="border-width: 0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/2.5/">Creative Commons Attribution 2.5 License</a>.<!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"><Work rdf:about=""><license rdf:resource="http://creativecommons.org/licenses/by/2.5/"/></Work><License rdf:about="http://creativecommons.org/licenses/by/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/></License></rdf:RDF> --></p><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1163417111104464782006-11-13T12:22:00.000+01:002006-11-13T12:25:11.103+01:00Jaiku ... another online Identity aggregator.I have just registered with Jaiku.<br />Lets see what this aggregator can do with the "distributed places of my online identity".<br /><br /><a href="http://VernardLuxe.jaiku.com/?from=badge-image"><img src="http://jaiku.com/badge/image/VernardLuxe" width="163" height="38" alt="My Jaiku presence"/></a><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1163060896311705822006-11-09T09:27:00.000+01:002006-11-09T09:28:37.840+01:00OpenID delegation links added to this BlogDelegation<br /><br />If you have a blog or homepage you'd like to use as your OpenID, you don't have to set up a server! Just copy the following into the "head" part of your HTML or XHTML, and use that URL.<br /><br />"link rel="openid.server" href="http://getopenid.com/action/authenticate/""<br />"link rel="openid.delegate" href="http://getopenid.com/vernard-luxe/""<br /><br />Note that you cannot use secure signons with this URL unless you have your own SSL server. Sites will also see you as a different person than when you directly use your identity from GetOpenID.com.<div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1163060825379734262006-11-09T09:21:00.000+01:002006-11-09T09:32:15.290+01:00My new OpenIDAt the moment I am trying to build up my Identity and Claim Owendership of this Blog.<br/>As you all might know, this is possible using different services available:<br/><ul><li>ClaimID<br/></li><li>OpenID</li><li>FindMeOn</li><li>MicroID</li><li>etc.</li></ul>At the moment I still have problems receiving email, but I already registered an OpenID account.<br/>My OpenID is: <a href="http://getopenid.com/vernard-luxe">getopenid.com/vernard-luxe</a><br/>I will write more on that topic later.<div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1163007936963550112006-11-08T18:43:00.000+01:002006-11-08T18:45:51.886+01:00My Information encoded in Microformats hcard<div class="vcard"><br /> <img style="float:left; margin-right:4px" src="http://static.flickr.com/109/292286368_ddeb708630_m.jpg" alt="photo" class="photo"/><br /> <span class="fn">Vernard Luxe</span><br /> <div class="adr"><br /> <div class="street-address">Ost-West-Strasse</div><br /> <span class="locality">Hamburg</span><br />, <span class="country-name">Germany</span><br /><br /> </div><br /><p style="font-size:smaller;">This <a href="http://microformats.org/wiki/hcard">hCard</a> created with the <a href="http://microformats.org/code/hcard/creator">hCard creator</a>.</p><br /></div><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1163007505205940092006-11-08T18:32:00.000+01:002006-11-08T18:39:57.173+01:00Ohh I love Web 2.0 ...Web 2.0 is lovely because of all the endless possibilities.<br />If you want to know what Web 2.0 is, read the article "What is Web 2.0" by Tim O'Reilly.<br /><br />BibTEX:<br /><span style="font-style:italic;">@MISC{Web20_OReilly,<br /> author = {T. O'Reilly},<br /> title = {What Is {W}eb 2.0},<br /> howpublished = {\url{www.oreillynet.com/lpt/a/6228}},<br /> month = {Sept.},<br /> year = {2005}<br />}</span><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1162995518776314482006-11-08T15:11:00.000+01:002006-11-08T15:18:38.820+01:00Look what I found on FlickR<div style="float: right; margin-left: 10px; margin-bottom: 10px;"> <a href="http://www.flickr.com/photos/54807695@N00/292286368/" title="photo sharing"><img src="http://static.flickr.com/109/292286368_ddeb708630_m.jpg" alt="" style="border: solid 2px #000000;" /></a> <br /> <span style="font-size: 0.9em; margin-top: 0px;"> <a href="http://www.flickr.com/photos/54807695@N00/292286368/">Me, but after using some Image Processing Tool....</a> <br /> Originally uploaded by <a href="http://www.flickr.com/people/54807695@N00/">vernard.luxe</a>. </span></div>Now, thats a face ...<br clear="all" /><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.comtag:blogger.com,1999:blog-37344288.post-1162992489050441542006-11-08T14:20:00.000+01:002006-11-08T14:32:18.796+01:00Me, myself ...Hello I would like to say hello to the world. Or like we programmers would say:<br /><span style="font-family:courier new;"><span style="font-style: italic;"><br /></span></span><pre class="CourierStandard">script<br />{<br /> alert("Hello World!");<br />}<br />/script<br /><span style="font-size:130%;"></span><br /></pre>Of course, we programmers can say <a href="http://en.wikipedia.org/wiki/Hello_world_program">"Hello" in many different languages</a>. But there are more secure ways to say hello to each other. <a href="http://www.informatik.uni-hamburg.de/SVS/teaching/ws2006-07/softwaresicherheit_ws2006-07.php">About some of them, and especially about writing them securly in software, I have heard about at the SVS project: Software Security.</a><div class="blogger-post-footer">"Good programs exit with a return code, not with a shell ..."</div>Vernard Luxehttp://www.blogger.com/profile/08735992206758546895noreply@blogger.com