Uitzicht over Putrajaya

Vanuit mijn hotelkamer kijk ik uit over Putrajaya. De ingang van de IOI city mall. Ik dacht dat dit een grote mall was, tot ik de andere malls in Kuala Lumpur zag. Fonteinen en overdekt relax-ruimtes. Bouwwerkzaamheden even verderop – een nieuw stuk land wordt gereed gemaakt voor bebouwing. In de verte twee grote gebouwen die onnatuurlijk lijken op te rijzen uit de grond. Deze gebouwen staan nog leeg. In de omgeving worden enorme nieuwe appartementsgebouwen neergezet. Als de bomen in de stad door het asfalt breken, zo barsten hier de flats de grond uit.

Natuurgeweld in de stad

Het lijkt soms alsof de bomen hier in Kuala Lumpur door het asfalt heen zijn geknald. En struiken vreten zich een weg omhoog langs de muren. Als je er één keer op begint te letten zie je opeens hoe de natuur zich hier vastgrijpt aan de menselijke inrichting van de stad.

Net zo vaak zie je trouwens dat de mens bomen en struiken heeft laten staan, onduidelijk of achteloosheid of ontzag voor de natuur het motief daarbij is. In Nederland zouden we deze obstakels zonder veel poeha omver halen.

Op een of andere manier ontstaat een straatbeeld waaruit ontzag voor de natuur blijkt.

Slagerij op straat

Als je vroeg genoeg in de straten van Kuala Lumpur bent, kan je leuke dingen zien. Pudu market is daar één van maar ook de aanleveraars aan restaurants en winkels kunnen interessant zijn. De slagers op straat kennen we met onze westerse hygiëne eisen niet meer. In Kuala Lumpur kom je ze deze ‘s ochtend vroeg het en der tegen. Fotograferen is geen probleem. Ze willen wel poseren ook.

13 januari 2018 (3)

Ik eet bij Old China Cafe, op aanraden van mijn Maleise collega. Ook het boekje was er positief over. Is inderdaad een gezellig bruin restaurantje met oude foto’s van Maleisië aan de muur. Vlak om de hoek van de krankzinnige Petalingstreet. Het is kleiner dan het me op de foto’s deed voorkomen. Ik vraag een tafeltje voor 1. De man wijst een tafel aan. Maar die moet hij nog schoonmaken, of ik even geduld heb. Het lijkt inderdaad of er een spreekwoordelijke bom is ontploft aan die tafel. Een kleine peuter (de kinderstoel staat er nog) heeft er echt een onvoorstelbare puinhoop weten te maken. De kinderstoel is bedolven onder de rotzooi.

13 januari (2) – van Pudu naar Chinatown

Ik loop door. In de straten achter de Pudu markt worden vogels en vissen verkocht. Niet ter consumptie, maar als huisdieren, of voor de sier wellicht. Lange tafels langs de straten met zakjes vissen en vogelkooitjes.

Het Pudu ICC is een plaats waar de Maleisiërs, voornamelijk de Chinezen, ontbijten. In een grote hal onder een flatgebouw is een enorme ruimte. In het midden tafeltjes om aan te eten en te drinken en lang de kanten vele winkeltjes met diverse specialiteiten voedsel. Ook hier baar ik als enige westerling wel een beetje opzien. Ik loop wat rond en probeer uit te vinden hoe de boel hier in elkaar steeks. Geen woord engels hier. Chinees, hier en daar Maleis.

Ik bestel een filterkoffie en een soort gefrituurde zoete aardappel. De koffie is in grote haast klaargemaakt en te slap. De zoete aardappel met krokant korst is lekker.

Door de straatjes slenter ik richting Bukit Bintang. Hier ijn kennelijk de drukkerijen gevestigd. de ene na de andere printshop. Het drukwerk staat op de stoep. In de gebouwtjes zelf is naast de machines  nauwelijk ruimte.

Achter de in mijn boekje aangeraden former Prison Gate bevindt zich een enorme bouwput.

Ik loop door, langs het stadion. Hier speelt vanavond een heel populaire boy-band uit Korea. Bijzonder dat een Koreaanse band hier zo populair kan zijn. Wat zich in Azië afspeelt, daar hebben we in het Westen soms nauwelijks weet van. Net als die Bollywood films die in één weekend wereldwijd meer bezoekers kunnen trekken dan de Amerikaanse pendant. Dat heb je met 1 miljard Indiërs. Dan moeten de Chinezen nog komen. De band speelt vanavond, maar bij de ingang van het stadion lopen nu, rond twaalven, al hordes opgewonden meisjes.

Naast het stadion weer zo’n enorme bouwput.

13 januari 2018 – Pudu Wet Market

Vroeg wakker. Snel ontbijt op de kamer in elkaar gefrutseld. Straks in de stad wel wat bijhappen. Eerst naar Pudu Wet Market.

De Grab chauffeur weet het maar net te vinden, lijkt het, na wat achterafstraatjes te hebben doorkruist. Pudu Market is een zogenaamde wet market. Dat betekent dat er verse producten worden verhandeld. Verse groenten en fruit. Maar ook verse dieren. Dat wil zeggen dat ze waar mogelijk levend worden aangevoerd, en ter plekke worden omgezet in producten.

Ik wandel eerst door het overdekte deel. Het is er wat bedompt en er is weinig licht. Ik schroef het flitsertje op mijn camera. De mensen zijn vreselijk aardig. Kan zeker zijn doordat ik echt de enige westerling ben op die hele markt. En zo een een beetje met een camera op mijn buik rond loop te neuzen. Bijna niemand weigert als ik vraag of ik een plaatje mag maken. Sterker, ze gaan, helaas vaak, overdreven poseren met opgestoken duimen en V tekens.

Er is vooral veel vis en schaaldieren. Levende en dode vissen. De vis die nog niet dood is wordt op verzoek gedood en schoongemaakt. Ik zie een ton grote kikkers.

Bij een tent in de hoek worden levende kippen verwerkt tot de kale lichamen die we kennen van bij ons in de winkel. De kip wordt uit een krat gevist en de keel doorgesneden. De gedode kip wordt in een ton gegooid en even later in het vervolg stadium in een bak heet water gegooid. Deze roestvrijstalen ton doet een beetje aan een centrifuge denken. Hij draait ook rond, maar langzamer. Zo wordt de kip ongeveer een minuut door het hete water gehaald en dan in de plukmachine gegooid.

Een luguber proces voor de westerling, voor wie een geslachte kip net zo iets steriels is als een volkorenbrood.

OLYMPUS DIGITAL CAMERA

12 januari

Het regent weer. De tweede dag op rij met regen. Niet veel maar vrijwel continu. Bij het hokje van de bewaking biedt een Indisch vreemde aan het laatste stukje naar de ingang van het gebouw met hem mee te lopen onder de paraplu.

Eten is wel een dingetje hier. Collega neemt met tussen de middag mee naar een Japans restaurant. BTW buiten de deur eten ‘s middags en ‘s avonds is hier normaler dan zelf koken. BTW BTW we graag vroeg i.v.m.de drukte op de weg die de gang naar het vrijdagmiddaggebed in de moskeeën in de buurt zal veroorzaken. Inderdaad staan later de auto’s twee rijen dik lang de weg.

We eten een lichte maaltijd bij de Japanner en ik betaal voor ons tweeën. Als vergelding neemt collega me ‘s avonds mee naar een Maleisisch restaurant in de buurt om de uitstekende saté te proeven.

In de mall hier om de hoek is een noedelrestaurant waar op traditionele wijze de noedels worden gemaakt.

Grab een Asam Boi

Grab is geweldig. De Über van Azië. Misschien wel beter.

Voor ongeveer 10 MYR per rit (iets meer dan 2 euro?) rijd ik elke dag naar het werk heen en weer. De auto’s zijn schoon en opgeruimd, net als de chauffeurs. Het enige dat ze van je vragen is ze een 5 sterren beoordeling te geven in de app. Meestal zijn de auto’s van het merk Proton – een lokaal Maleisisch merk auto. “Never buy one”, laten de bezitters weten.

Ik begrijp dat het hier een sport is om je motorfiets maximaal op te voeren door hem helemaal te strippen van alle overbodige accessoires. Onde roverbodig worden dan ook de remmen worden gerekend. Met deze gestripte motorfietsen wordt dan geracet op de snelwegen. Op het nieuws gebreep ik dat vandaag de 10e jongeling in korte tijd zich bij deze sport heeft doodgereden. “They never learn” zegt mijn collega.

Bij de lunch drink ik Asam Boi, een lokaal drankje van limonade en enige ingemaakte pruimen. Een fijne combinatie van het zoete van de limonade en het zure van de ingemaakte pruimen.

Programming languages and what’s next

My review of programming languages I learned in during my years in IT.

BASIC

On the TI99-4a.
Could do everything with it. Especially in combination with PEEK and POKE. Nice for building small games.
Impossible to maintain.
GOTO is unavoidable.

Assembler

In various variants.
Z80, 6802, PDP 11, System 390.
Fast, furious, unreadable, unmaintainable.

Algol 68

Liked this language. REF!
Have only seen it run on DEC 10. Mainly used in academic environments (in the Netherlands?)?

Pascal

Well. Structured. Pretty popular in the early 90s.
Again is this widely adopted?

COBOL

Old. Never programmed extensively in it – just for year 2000.
Totally Readable.
Funny (rediculous) numbering scheme.
Seems to be necessary to use GOTO in some cases which I do not believe.

Smalltalk

Beautiful language.
Should have become the de facto OO programming language but failed for unclear reasons.
Probably because it was way ahead of it’s time with it’s OO base.

Java

Totally nitty gritty programming language.
Productivity based on frameworks, which no one knows which to use.
Never understood why this language was so widely adopted – besides it’s openness and platform independency.
Should never have become the de facto OO programming language but did so because Sun made it open (good move).
Far too many framework needed. J(2)EE add more complexity than it resolves.
Always upgrade issues. (Proud programmer: We run Java! Fed up business person: Which Java?)

Rexx

Can do everything quickly.
But nothing structurally.
Ugly code. Readable but ugly.
Some very very strong concepts.

Php

Hodge-podgy language of programming and html.
Likely high programmer productivity if you maintain a stark discipline of programming standards. Stark danger of creating unmaintainable crap code mix of html and php.

Python

Nice structured language.
Difficult to set up and reuse.
Can be productive if nitty gritty setup issues can be overcome.

Ruby (on Rails or off-track)

Nice, probably the most elegant OO language. Too nitty gritty to my taste still. Like it though.
I would start with this language if I had to start today.

What is next?

Visual programming? Clicking building blocks together?

In programming we should maybe separate the construction of applications from the coding of functions (or objects, or whatever you call the lower level blocks of code.

Programming complex algorithms (efficiently) will probably always remain a craft for specialists.

Constructing applications from the pieces should be brought to a higher level.

The industry (well – the software selling industry) is looking at microservices but that gives operational issues and becomes too distributed. We need a way to build a house from software bricks and doors and windows and roof elements.

Probably we need more standards for that.

Some bold statements

AI systems “programming” themselves is nonsense (I have not seen a shred of evidence).
AI systems are stochastical systems.
Programming is imperical.

In summary, up to today you can not build software without getting into the nitty gritty very quickly.
It’s like building a house but having find your own tree and rocks first to cut wood and blicks from.
And then construct nails and screws.
A better approach to that would help.

What do you think is the programming language of the future? What need should it address.

In Layman’s Terms: (Visa) Format-Preserving Encryption

One of my clients asked me about Visa Format-Preserving Encryption. Could look into this. I am sharing a summary here.

FPE is …

Format-Preserving Encryption (FPE) is about encrypting so-called structured data, such as credit card or Social Security numbers.

With FPE you can encrypt data in such a way that does it not alter the data format.

Your data may be credit card numbers, account numbers, social insurance numbers, addresses, postal code, FPE will encrypt the data and the outcome will look like a credit card number, account number, social insurance number, address, postal code.

That’s it.

With this you can encrypt data per field without having to make big modifications to your existing application.

Then we come to the real goal.
We can have better data privacy and security. We can agree and adhere to certain industry standards for data privacy and security, such as PCI DSS in the Payment Card industry.

And the Visa?

Visa have invented and patented an algorithm to realize FPE and use this in their card handling. Called VISA Format-Preserving Encryption.visa format-preserving encryption

Why do we need this format preservation?

Sensitive data must be encrypted so that malicious people can not read that data. In financial transactions this is of course very important.

A problem is that with encryption the format of field could change. Traditional encryption algorithms take data as a byte stream, and turn it into another byte stream.

If you have a string of text, such as a name, after encryption this encrypted field may become larger than the original field, it may contain numbers or funny characters, or it may have become be a bigger field. Or if you have an account number, after encryption there may be characters in the result. Or there may be more digits in the result than in the account number.

This change of format of fields can cause several issues in applications.

Column sizes in databases may be too small to contain encryption results.
Fields in programs may become too small
Test data for application can become problematic.
It can become impossible to implement if these fields are used as keys in relational databases.
Your analytics may become problematic.

To prevent all these issues Format Preserving Encryption was invented. With it we can encrypt fields, but process these field in the programs as if they were not encrypted. The program is not aware of the encryption.

Clearly I am leaving out details. Fill me in where you feel necessary, I’s appreciate it.