Tech-inzichten door Niek de Greef. Reflecties op technologie, software development en de impact van digitale innovaties op cultuur en maatschappij.

Web3

Ernst-Jan Pfauth schreef een leuk stukje over Web3.

Een tijdje geleden wilde ik ook eens spelen in de wereld van NFT’s, geïnspireerd door een blog bericht van Sean Bonner. Ik creëerde een Opensea.io account en een Metamask account en maakte een paar NFT’s van mijn digitale collages. Een heel gedoe, maar wel leuk om eens te doen. Scratching the surface, zoals ze zeggen, van Web3.

Belangrijk: betaal geen “gas fee” voor “minting”. Als je wilt weten wat dat betekent, lees dan de uitstekende introductie van Sean Bonner in zijn NFT WTF artikel op zijn blog.

Zuckering

Ik kende de term Zuckering, of Privacy Zuckering nog niet maar hij is geniaal. Zuckering staat voor misleid worden tot het publiekelijk delen van meer informatie over jezelf dan je eigenlijk wil. Uiteraard naar Mark Zuckerberg, die ons “helpt” verbinden en ontdekken – je kan er niet cynisch genoeg over zijn.

Via Darkpatterns.org.

Curation curated – Winning the Internet

In a previous post, I wrote about how shared curation lets us get the best of the Internet while skipping the tech giant’s ad-driven content feed.

Here’s a great addition to that thought: a data-driven newsletter of links in other newsletters: pudding.cool/projects/newsletter/

DIY, Mistakes, and Unschooling – Mark Frauenfelder

Mark Frauenfelder is my favorite inspiring nerd (well meant) and I find him greatly inspiring. Here he talks about how making mistakes accelerates learning.

Boing Boing is a site he founded, The Magnet is a great newsletter of his, Recommendo is another great site.

A Maker Dad contributes to the maker movement. An ...
A Maker Dad contributes to the maker movement. An ...

Cory Doctorow’s blogging process

Writer Cory Doctorow is blogging for 20 years. Here’s his extensive process. Pfew – respect!

Pluralistic

Blogs and newsletters on their way back? And Red Hand by Nick Cave- what a blog!

The past couple of years we have heard that a blog was something of 2000’s. The rise of Youtube and more recently, the popularity of podcasts, were supposedly make blogs a thing of the past.

But the debatable recommendation and influencing practices of Youtube, and other advertisement-backed social media drive people away from these platforms. At the same time there is a increasing number of people being driven away from tradiditional media, finding the “breaking news” tactics distracting and misguiding.

As a replacement for these, the blog seems on it’s way back, as is the newsletter (via email!) informing the readers of blog updates. Blogs are not found through google searches or Facebook recommendations, but through recommendations by real people. Thus providing a source of manually curated web content by like-minded people.

One of these treasures I found today is Nick Cave’s Red Hand Files blog.

https://www.theredhandfiles.com/

Logo
Logo

Internet besties

I love these places on the internet. In no particular order, for now.

Austin Kleon – Drawing writer with a great blog.

Brain Pickings – Maria Popova’s labour of love on books and other beautiful things.

Mr Motley – Great Dutch site about art.

Beeple-crap – Wonderful artist, became known for selling digital works as art with NFT’s. I think his daily work is immensely inspiring.

Boing Boing – Despite being somewhat North-America oriented, a beautiful site by my favorite internet person Mark Frauenfelder. (You will have to accept too many too disgusting ads, that are apparently needed to keep the site alive.)

booooooom – A beautiful art platform. Scrolling around cheers up your mind.

Swissmiss – A design blog it says, but it is much more. Run by Tina Roth Eisenberg. I would say it is her personal “thing that delight me on the web” log.

https://www.dirtyharrry.com – For a visual orgasm.

Seth Godin – Well, guess it needs no elaboration – Seth Godin’s blog. All about making a ruckus.

The Correspondent – Probably the most refreshing journalistic platform in the world, focusing on “unbreaking news”. Here the original (even better) Dutch De Correspondent.

Derek Sivers – Slow thinker comes to unique points of view. Now redirecting to https://sive.rs/. Hope he will re-start posting.

kk.org – A wealth of Kevin Kelly interesting initiatives, thoughts, articles, stuff.

elsadorfman.com – The website of Elsa Dorfman, 20×24 Polaroid portait photographer. An relatively old website I found recently after she passed away. This site keeps engaging me.

B – Blake Andrews’s long running blog. On (street) photography, and other interests from Blake.

Recomendo – another site/newsletter by Mark Frauenfelder.

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.