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.

Monday, March 31, 2008

Emmertjesgeheugen

Ja, dit soort geheugen bestaat echt, zie:
http://www.logosfoundation.org/kursus/2050.html
Geheugen is geen exclusiviteit van digitale schakelingen! Ook in zuiver analoge technologie kunnen analoge waarden worden opgeslagen. In de eenvoudigste vorm noemt men een analoog geheugen element een 'sample and hold' schakeling . Het principe ervan berust op het feit dat een kondensator die geladen wordt, vanaf het ogenblik dat we het laadproces onderbreken, deze lading nog lange tijd kan behouden.

Of: http://nl.wikipedia.org/wiki/Schuifregister
Er bestaan ook analoge schuifregisters, hierbij worden geen digitale signalen opgeslagen en doorgegeven, maar analoge signalen. Dit is een zogenaamde bucket brigade, ook wel bekend als een emmertjesgeheugen, te vergelijken met het doorgeven van emmers met water door mensen in een rij.

Mijn desktop kreeg het de laatste tijd zwaar te verduren met 1GB aan boord, waarvan 128MB voor de video"kaart".
Voor 20 EUR blijk je tegenwoordig al 1GB geheugen met een snelheid van 533MHz te kunnen kopen!
Een emmertjes geheugen van dit formaat (en zeker niet met die snelheid), zou een flinke eetkamertafel beslaan en Al Gore zou de energie-consumptie zwaar veroordelen.

Waarom dan nog moeite doen om software te ontwerpen en te coderen, die vriendelijk met geheugen om gaat?
In de vorge eeuw bezuinigde men nog op 2 bytes door het eeuwtal niet op te slaan.
Nu worden talloze jarfiles in het geheugen geladen, zonder dat het ooit duidelijk is of men ze wel nodig heeft.

Tja, tijden veranderen ...

Uit de oude doos: http://www.cs.virginia.edu/brochure/museum.html

Northstar 16K memory card (S-100 bus), circa 1980. Contains 4 x 9 chips indicating the parity bit was included. Parameters are set with switches in DIP (Dual Inline Plastic) sockets at the upper right and with blue jumpers found to the right of the center of the board.

En uit de nog oudere doos: http://www.computerhistory.org/timeline/?category=cmptr

MIT´s Whirlwind debuted on Edward R. Murrow´s "See It Now" television series. Project director Jay Forrester described the computer as a "reliable operating system," running 35 hours a week at 90-percent utility using an electrostatic tube memory.
Start of project:1945
Completed:1951
Add time:.05 microseconds
Input/output:cathode ray tube, paper tape, magnetic tape
Memory size:2048 16-digit words
Memory type:cathode ray tube, magnetic drum, tape (1953 - core memory)
Technology:4,500 vacuum tubes, 14,800 diodes
Floor space:3,100 square feet
Project leaders:Jay Forrester and Robert Everett

En dan was er nog deze IBM doos:
http://www-03.ibm.com/ibm/history/exhibits/701/701_1415bx06.html


The IBM 706 was formally announced on May 21, 1954.

The banks of cathode ray tubes, similar in principle to television tubes, were the heart of the IBM 701 Data Processing System. They gave the machine much of its tremendous speed and flexibility. The 72 cathode ray tubes in the Electrostatic Storage Unit could store 10,240 digits, any of which could be obtained for processing at other points of the machine in 12 microseconds. The Model 1 of the 706 accommodated 2,048 full words of 36 bits or 4,096 half words of 18 bits. A maximum of 4,096 full words of 36 bits or 8,192 half words were available when both the Models 1 and 2 were installed.

The principal advantages of Electrostatic Storage was the short time required to refer to information at any given location and send it to the computing unit, and the random access to any 706 location afforded the programmer.

The Model 1 had a monthly rental charge of approximately $2,600, and the Model 2 was rented at $3,500 a month. Customers could specify the IBM 737 Magnetic Core Storage Unit in lieu of the 706 at a monthly charge of $6,100.

The 706 was withdrawn from marketing on June 6, 1956.

Friday, March 28, 2008

Not done



Dit is een ernstige vorm van censuur.
Als dit de trend gaat worden, zie je mij ook voor het laatst op het internet.
Als mijn blog om wat voor reden dan ook als aanstootgevend wordt ervaren,
komt deze vorm van censuur op mij af.

http://www.networksolutions.com/legal/aup.jsp
Quote:
This Acceptable Use Policy encourages the responsible use of Network Solutions' services and delineates the relatively narrow range of uses of Network Solutions services that are contrary to Network Solutions' mission, generally because such uses either pose an unacceptable risk to the stability, integrity, or quality of Network Solutions' systems or the systems of its vendors, or harm (or threaten to harm) the rights and interests of third parties. This Acceptable Use Policy supplements your Service Agreement with us. Uses of the Network Solutions services described below are prohibited.

Tuesday, March 25, 2008

Het dagelijks leed dat file heet (part III)

http://www.brabantsdagblad.nl/algemeen/bdbinnenland/2869698/Vrachtwagencabine-over-de-reling-op-Maasbrug-A2.ece


De brug was glad en te smal.
Catweazle - van holbewoner tot digimens


De jeugd kent hem niet: Catweazle.
Zie de grote betweter: http://nl.wikipedia.org/wiki/Catweazle
Quote:
Erg onder de indruk van de moderne gemakken van de twintigste eeuw, maken Catweazle en Edward samen spannende avonturen mee. Aan het eind van de serie reist Catweazle terug naar zijn eigen tijd. De naam van Catweazle's pad is Touchwood.

De vraag rijst op: waaarom wilde Catweazle ondanks al die moderne gemaaken terug naar zijn eigen tijd?
Een pad is natuurlijk geen computermuis.

Toegegeven, Catweazle was excentriek te noemen.
Wellicht paste hij daarom niet in deze moderne tijd.
Waar de grijze muizen het best overleven.

Op YouTube is genoeg te vinden, zie dit fragment:

Friday, March 21, 2008

Cumbersome, error-prone, mysteries
Image:Java Logo.svg
Coding can be cumbersome.
The language does not realy matter.
Whether it's good old legacy RPG, ILERPG, SQLRPG or Java.
Handcrafted code is, see Van Dale : "sheer drudgery" or "donkey work" (in Dutch monikkenwerk).
Hard to code, hard to debug and almost never always bugfree.

See this definition of error-prone http://www.wordreference.com/definition/error-prone:
capable of making an error; "all men are error-prone"

As programmer and end-user of this software you are often puzzled by mysteries:
  1. The mystery of the disappearing database transactions
  2. The mystery of the disappearing database records.
  3. The mystery of the disappearing values in a simple list of values.
  4. The mystery of the NullPointerException.
  5. and so on ...
In RPGIII the scope of the variables (all global) is the absolute pain in the ass.

In ILEPRG you can declare procedures (having the possibility for local variables),
but you will be bothered by the datastructures to pass arguments.
And beware of the pass by reference of the procedure.
As in Java it always is pass by value.

SQLRPG seems to be a nice option, but do not make coding errors: you will be puzzled by the stuff the (pre-)compiler will spit out.
See http://forums.systeminetwork.com/isnetforums/archive/index.php?t-43004.html:
Too close to Thanksgiving, I think my brain has slowed - possibly someone can point out the obvious that I am overlooking currently.

Last but not least, there is Java, having a number of annoyances and limitations.

In a hybrid environment where Java (web)applications have to communicate with legacy systems, you will definitely end up in an argument: is the bug in the Java code or in the RPG code, or somewehere in between (???).
Then you have to debug, or System.out.println() or DSPLY (RPG opcode) to bring some light in this discussion.

Call al this a challenge!

By the way, that's a nice word, whether, see http://www.wsu.edu/~brians/errors/weather.html:
The climate is made up of “weather”; whether it is nice out depends on whether it is raining or not. A wether is just a castrated sheep.

Monday, March 17, 2008

Mispoes

De roadrunner staat erom bekend dat hij erg nieuwsgierig is.
Hij wilde die spraakmakende film van Wilders weleens zien.
Om zich een eigen oordeel (op inhoud) te kunnen vormen.
En jawel er bleek een bittorrent te zijn: Fitna Wilders Anti-Koran Movie.torrent
Na een urenlange download van 735 MB, blijkt het niet de beruchte film te zijn,
maar Soylent Green

Toch maar gewoon afwachten, wat Wilders voor ons in petto heeft ...

Sunday, March 16, 2008

Wilders gaat te ver

Wednesday, March 12, 2008

Nep blogs

Het internet is een prima medium.
Maar zoals met zoveel mooie dingen, er zijn altijd sujetten die het weten te verzieken.
Zo krijgt deze blog recentelijk comments, die verwijzen naar http://i-myblog-9w3.blogspot.com/
onder het profiel Akinol.
Nu dit is geen gewone blogger!
Er wordt vrijwel geredirect naar http://xpantivirus.com/2008/2/_freescan.php?aid=880187
Stink hier niet in.
Het lijkt een virusscanner, maar is in feite een virus.

Download niets wat vanaf deze site wordt aangeboden.
Zie http://www.bleepingcomputer.com/forums/topic111715.html
Quote:
XPAntiVirus is a rogue antivirus software that, when runs, display false results as a tactic to scare you into purchasing the software. When XPAntivirus is first installed it will create 9 entries in your Windows Registry that impersonate infections on your machine. In reality, though, these registry entries are harmless and have absolutely no effect on your computer. Instead, these entries are set so that XP AntiVirus can find them when scanning your computer and report them as infections. In order to remove these fake infections you need to purchase the software as the trial does not allow you to remove them.

Voor mij zit er niets anders op dan regelmatig deze nep comments te verwijderen.

Saturday, March 08, 2008

Collateral damage
http://en.wikipedia.org/wiki/Collateral_damage

Deze blog en alle andere op blogspot waren down:

Het succes van gratis bloggen, veroorzaakt een behoorlijke drukte op de servers van www.blogspot.com
Noem dat collateral damage: ten onder gaan aan het eigen succes.
En dan de reacties van die bloggers:
http://groups.google.com/group/blogger-help-troubleshoot/browse_thread/thread/c308c8e291bd5177/d402ad2af8c0e660?lnk=raot
Quote:
While there have been no offical response from Google, the owner of
Blogger.com, one technician was overheard to say, "Blogs, does anyone
REALLY read this stuff?"

Als alternatief dan maar de nieuwste betas gedownload:
FireFox 3.0Beta3 en IE 8Beta
Het risico van een beta is dat er nog bugs inzitten.
Deze blog editor geeft serieuze scriptfouten in IE8.

En lees deze eens:
http://today.java.net/pub/a/today/2004/02/06/davenandy1.html
Quotes:
Taking Responsibility
In a very structured environment, people tend to abdicate responsibility. People say, "It's not my job anymore. My boss is telling me what to do. A big master plan is given to me. I just have to do this module, and this module, and this module."


Fixing broken windows
The researchers did a test. They took a nice car, like a Jaguar, and parked it in the South Bronx in New York. They retreated back to a duck blind, and watched to see what would happen. They left the car parked there for something like four days, and nothing happened. It wasn't touched. So they went up and broke a little window on the side, and went back to the blind. In something like four hours, the car was turned upside down, torched, and stripped — the whole works.


Of: http://www.codethinked.com/post/2008/03/Reality-Driven-Development---Why-do-good-programmers-produce-bad-software.aspx
Quotes:
It's the fun part!
For most of us we started off hacking away at software in our younger years before we ever knew what specs or customers were.

We think we already know what needs to be written.
By the time that most programmers hear about a new piece of software that needs to be written they are already designing it in their head.

We aren't agile.
We think that specs and requirements are something that you only get before you build software.


Dat zet je wel aan het denken!


Klik op onderstaande afbeelding (moving gif):

Wednesday, March 05, 2008

Java is dead!

At least this is what some people tend to say now.
See: http://andersnoras.com/blogs/anoras/archive/2008/02/18/save-java-dead-or-alive.aspx

Whatever language you write in, your task as a programmer is to do the best you can with the tools at hand. A good programmer can overcome a poor language or a clumsy operating system, but even a great programming environment will not rescue a bad programmer.

Kernighan and Pike

Is it the language or the mess some people build with it?
Meaning the over-usage of patterns, inheritance, interfaces and layering.
While the performance and the object to relational database mapping is kind of "forgotten".
For batch programs good old procedural Java code can be written.
And a good database design to start with is a garantee for good performance.

Pragmatic code guidelines can help the coders in writing maintainable code.
The language does not really matter.
If an application grows bigger complexity will grow exponential.
It is too cheap to blame the programming language.

To me it is evident that Java is not dead.
Programs written in Java can be stable and perform well.
Crucial is good testing with realistic amounts of data.
At the moment I do not see any better alternative.

Introducing yet another language, introduces more problems then solutions:
maintain legacy code, maintain Java code and maintain this new language.
This new language will also have a steep learning curve.
So children diseases will pop-up again.
Please explain this to customers!


See: http://www.learningandteaching.info/learning/lerncrv.htm

Don't shoot the Java programmer!

Monday, March 03, 2008

Hell to Pay

Jeff Healey is er niet meer:
http://www.nos.nl/nosjournaal/artikelen/2008/3/3/030308_healey.html
Deze blinde rock en blues zanger en -gitarist behoort tot een van mijn favorieten.

En laat ik nu altijd gedacht hebben dat het was: Hell to Play.
Voor Jeff was niets te moeilijk om te spelen.

Nee, Jeff had het in deze song over het feit dat veel mensen vandaag moeite hebben om de touwtjes aan elkaar te knopen, om debet en credit in balans te brengen.

Hoewel Jeff veel covers speelt, doet hij dat vooral op zijn eigen manier.
Veel mensen zijn ziende blind.

Saturday, March 01, 2008

yet another "new" language, EGL
EGL means Enterprise Generation Language:
http://www.ibm.com/developerworks/rational/products/egl/

See: http://www.itjungle.com/tfh/tfh092407-story03.html
And read it well, RPG is a dead language.
And it's Rational wearing the pants!
See: http://www.itjungle.com/tfh/tfh091707-story01.html
EGL generaties Java or Cobel code, not RPG.

See: http://www.ibm.com/developerworks/rational/library/may07/sergi/index.html
Quote:
Web applications. Tight integration of EGL with Java Server Faces framework and tooling allows creation of Web applications in a simple and productive way, without the need to know neither java nor the details of the JSF framework.

So EGL is a RationalProgramGenerator, yet another RPG.

Quote:
The following non-IBM 4GLs can be transformed into EGL using third party tools and services: Natural, CA (COOL-Gen, COOL-Enterprise, Ideal), HPSeer.

Lucky guys, the formerly known Synon coders!

Quote:
Organizations using System i and System z
In-house development teams typically fall into two fairly distinct camps: the legacy developers working with RPG, COBOL, 4GLs, etc., and the "new" developers working with GUIs, Windows, Java, the Web, etc. If legacy development is large and there is mounting pressure to deliver new solutions to the business, the EGL value proposition will be attractive.

No word of really migrating legacy RPG to EGL?

And yes, you can download some Code snippets.
See: http://www.ibm.com/developerworks/rational/products/egl/egldoc.html?S_TACT=105AGX15&S_CMP=edge#sec6
Like this one:
How to set the cursor focus to a specific control or data field within a page
//Two parts to this Code Snippet:
// 1. Add this code to the header area of your page
// Notes:
// a. Change the [n] with an integer representing nth field on your form you wish to set focus to:
// Example: [0] setFocus to the 1st field, [1], setFocus to the 2nd, and so forth
// b. Your form name must be: form1 (default using Page Editor, but check)
//-------------------------------------------------------------------------------

function setFocus() {
document.getElementById('form1').elements[n].select();
document.getElementById('form1').elements[n].focus();
}

// 2. Replace the <body> tag in your page with the following... (remove the comments)
// Example: <body onload="setFocus();">

This has nothing todo with EGL, this is JavaScript on a html page!
And this script does not only set the focus, but overstrikes too.

And again the famous Petstore comes around:
I want to build serious business applications, not a Cola vending machine or a Petstore.
Did Rational measure performance with this simplified example?
Oh, just wait, this Petstore is a download of 18MB.

This is more then the Java application I am building now (12MB).
Too bad, this link is dead:
ftp://www6.software.ibm.com/software/developer/library/rational/zip/petstorezip.zip
And a Google search showed many Petstores (Oracle) but not the EGL Petstore.
IBM drives us into proprietary solutions.
The i-Series deserves better!
By the way, the other links to file downloads will fail too!
ftp://www6.software.ibm.com/software/developer/library/rational/zip/
is dead!
Call this a bad sign!
This link downloads a PowerPoint describing SOAP:
ftp://www6.software.ibm.com/software/BuildingSoapApplications.ppt
But no word of EGL in this document.

Maybe I should attend their workshop:
http://www.ibm.com/developerworks/offers/lp/r/rbdetws/#eglbd

EGL/Business Developer technical workshop

This is the first of two workshops dedicated to making you productive using the EGL language and Rational Business Developer Extension rapid development tools. This workshop will take 5 business days. When you finish, you will be able to use the Business Developer tools, create services, and code EGL and SQL at a near-production ready level.

Prerequisites

  • At least two years of experience using a software programming language, for example, RPG, COBOL, PL/1, Visual Basic, or PowerBuilder.
  • A working knowledge of SQL, computer skills, and a basic understanding of Web technologies is assumed.

Agenda

  • Rational Business Developer Extension Workbench development
  • Introduction to a deep-dive into the EGL language
  • Creating, consuming, and using 3rd party WSDLs
  • EGL database and sequential file access - "A to Z"
  • EGL calling Java programs, and System i and System z resources
What a pitty, I don't want "A to Z", but the complete UTF-8 characterset:
!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ

Lucky me, I found this link:
http://www.ibm.com/developerworks/rational/library/05/barosa-one/

Missing in action, indeed, are the goold old RPG's.
Another vendor lock-in.
This time it's Rationals solution.
The same Rational as in Rational Rose, now called XDE.
A UML modelling tool.
The same Rational of RUP.
Bloated pigs is my Pavlov reaction.


My underbelly remembers me of San Francisco, the SF (Shareable Frameworks) project of IBM.
See this dated article of Rob van der Salm:
http://www.research.ibm.com/journal/sj/372/vandersalm.html

How to convience the board of directors to invest in yet another technology,
with the big change that it is betting on the wrong horse.
But we humans are no donkeys, we hit the same stone more then twice.

I am a bit ashamed: I never heard of the GlassFish project:
https://glassfish.dev.java.net/
This is Sun (and Oracle) and it's open source.
In there is also a Petstore: https://blueprints.dev.java.net/petstore/
After following many instructions and downloading a glassfish.jar I got this working:


Indeed yet another Hello World example
An now for the Petstore ...
After struggling with PATH and creating a silly passwordfile the web application worked:

Looking at my system resources:
2 Java jobs of 20 (Database) and 100MB(Webserver).
And some pages of this Petstore did not load properly in FireFox.
Where is this world going to?