The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,861 other subscribers

Archive for the ‘Software Development’ Category

Enabling TRIM on an external SSD on a Raspberry Pi | Jeff Geerling

Posted by jpluimers on 2026/02/19

For my link archive: [Wayback/Archive] Enabling TRIM on an external SSD on a Raspberry Pi | Jeff Geerling

Printing to large format paper or displaying it on large screens introduces a lot of whitespace resulting in the listings having horizontal scrollbars. That was easier to circumvent in CSS than I initially thought, so I wrote [Wayback/Archive] Thread by @jpluimers on Thread Reader App:

Read the rest of this entry »

Posted in CSS, Development, Hardware, HTML, Power User, Software Development, SSD, Trim, Web Development | Leave a Comment »

Programming languages where the default array starting index is one

Posted by jpluimers on 2026/02/18

Every now and then I end up in arguments with people at what bound an array index should start. The usual options are one-based or zero-based indexing, but there are enough languages that allow defining a different starting index of an array.

In my opinion, in language where you can define the starting index, it should depend on the problem to be solved. I prefer languages that allowing for an arbitrary starting index as they allow specifying the problem domain best.

Often the argument used by others is “zero” as starting index is that it is more efficient. My counter arguments usually are that

  • with compiler optimised iterators nowaways, indexing often is moot
  • people learn to count starting with one for various reasons (for one because they use their digits to count) which makes it hard for them to unlearn and always count from zero, causing off-by-one mistakes doing so
  • counting from 1 to 10 is acquired at age 2 to 3 years old, the concept of zero or empty about a year or two later
  • the concept of zero is way younger than the concept of one, see 0: history and 1: history on Wikipedia
  • zero based indexing is only more efficient in languages supporting multidimensional indices that can be folded in a single dimension and that the transofmration between the single folded dimension and the equivalent multidimensional index is easier when both are zero based
  • for single dimensional arrays, there is no efficiency argument as most compilers and interpreters will optimise that away
  • there are plenty of programming languages not having a default starting index of zero

I usually forget the last list, so below here are a few links with sources and discussions.

Before reading the list, always remember: code is about representing problem domains and problem domains are not about math, compilers are.

Oh, and on the concept of zero, this is a good read: [Wayback/Archive] What Is the Origin of Zero? | Scientific American

Read the rest of this entry »

Posted in Development, Software Development | Leave a Comment »

Microsoft Pascal 3.0.4 and 3.1.1 are available from BitSavers

Posted by jpluimers on 2026/02/18

While researching floating point representation, I found that two versions of Microsoft Pascal which was ISO 7185 Pascal compliant.

These versions are at bitsavers:

There are more tidbits in the [Wayback/Archive] Index of /bits/SeattleComputerProducts directory all from the Seattle Computer Products days (and Tim Paterson fame).

–jeroen

Posted in Development, History, Pascal, Software Development, Standard Pascal | Leave a Comment »

The Console in two places: “Panel” “Drawer” – Console features reference  |  Chrome DevTools  |  Chrome for Developers

Posted by jpluimers on 2026/02/17

I always forget nomenclature, so in my mind the terms for the two consoles in the Chrome web development tools (official nomenclature: Chrome DevTools) are these:

  1. The primary console in a separate tab of the DevTools
  2. The secondary console at the bottom lf all tabs in the DevTools

I did know that you can close the secondary console by pressing the cross on its top-right corner.

I did not know how to reopen, apart from it occasionally reopening by itself.

So I did digging, found the official nomenclature, and more importantly that the Esc key toggles the secondary console.

Official nomenclature in the same order are above from [Wayback/Archive] Console features reference  |  Chrome DevTools  |  Chrome for Developers:

Read the rest of this entry »

Posted in Development, Software Development, Web Development | Leave a Comment »

A 2D barcode on PostNL delivered packages can contain too much sender information (via Security.NL and Tweakers.net): is this in the documented Data Matrix and who should fix this?

Posted by jpluimers on 2026/02/17

Yesterday, an important question appeared at almost the same time on Tweakers.net and Security.nl. It is about 2D barcodes on some packages delivered by PostNL. Some of these – I call them Data Matrix, as that is what they are – seem to include the e-mail address of the recipient.

The posts caused some uproar, and in order for myself to understand what is going on and what questions should be asked to PostNL, I wrote this blog post.

In any case: always remove parcel labels before disposing of the parcels, then destroy the labels. This has always been good privacy practice and will stay that way forever.

 

Regrettably, Tweakers.net blocks both the Wayback Machine and Archive Today, which makes their information ephemeral. Therefore I archived some of the Tweakers.net information in the gist [Wayback/Archive] “E-mailadres van ontvanger kan in PostNL barcode staan” archived from https://gathering.tweakers.net/forum/list_messages/2327530/0 · GitHub

Read the rest of this entry »

Posted in base64, Development, Encoding, Font, KIX Font PostNL, Power User, Python, Scripting, Software Development | Leave a Comment »

Exactly how to remove DRM · apprenticeharper/DeDRM_tools Wiki

Posted by jpluimers on 2026/02/16

The easiest way to get rid of DRM from PDF files is to use the Calibre plugin DeDRM with the instructions at [Wayback/Archive] Exactly how to remove DRM · apprenticeharper/DeDRM_tools Wiki

The reason that I promote this tool is that the user experience of is that the user experience of Adobe Digital Editions is mediocre at best: keyboard navigation usually does not work, viewing 2 pages next to each other is impossible and almost none of the Acrobat Reader functionality is available.

[Wayback/Archive] How to view 2 pages, side-by-side in PDF within Ad… – Adobe Support Community – 10666132

Read the rest of this entry »

Posted in Development, PDF, Power User, Python, Scripting, Software Development | Leave a Comment »

Memories of the past: “Microsoft® Computer Dictionary, Fifth Edition”, ISBN 9780735614956

Posted by jpluimers on 2026/02/13

ImageWhile researching early Intel 8087 documentation distributed via LISTSERV, the below blast from the past also turned up: back in 2002 computer dictionaries were also available as … books!

[Wayback/Archive] Microsoft® Computer Dictionary, Fifth Edition (Cpg-Other): 9780735614956: Computer Science Books @ Amazon.com

  • Publisher ‏ : ‎ Microsoft Press; 5th ed. edition (June 1, 2002)
  • Language ‏ : ‎ English
  • Paperback ‏ : ‎ 637 pages
  • ISBN-10 ‏ : ‎ 0735614954
  • ISBN-13 ‏ : ‎ 978-0735614956
  • Item Weight ‏ : ‎ 2.85 pounds
  • Dimensions ‏ : ‎ 7.33 x 1.76 x 9.25 inches

It is available from various sources including [Wayback/Archive] Microsoft Computer Dictionary – Microsoft Press – Google Books and [Wayback/Archive] microsoft_computer_dictionary__fifth_edition1.pdf.

Read the rest of this entry »

Posted in 6502, 68k, 8086, 8087, 8087, 8088, Development, History, Software Development | Leave a Comment »

Examples by b0rk of problems with integers and floating pointing point numbers

Posted by jpluimers on 2026/02/12

From quite a while back but still very relevant today, especially when debugging problems (most people would post them in the order integers, floats, but Julia did it in the opposite way):

  1. [Wayback/Archive] Julia Evans on Twitter: “had a great discussion of how floating point arithmetic can betray you on Mastodon yesterday, there are tons of good examples in the replies”

    [Wayback/Archive] Julia Evans: “today I’m thinking about how floating point numbers can be treacherous — what are specific examples of when they’ve betrayed you?so far I have:…” – Mastodon

  2. [Wayback/Archive] Julia Evans on Twitter: “examples of problems with integers”

Usually I tend to explain integer versus floating point math as lossless versus lossy data compression (for instance WavPack and FLAC versus MP3 compression of PCM audio data, or BMP versus JPEG compression of 2D digital image data).

Either way: floating point and integer problems cause real harm. One interesting comment illustrating that was [Wayback/Archive] Ian Kirker on Twitter: “@b0rk I didn’t see this one in the list, which sticks in my memory: science.org – Fatal Error: How Patriot Overlooked a Scud”

[No wayback/Archive] Fatal Error: How Patriot Overlooked a Scud | Science

If you like listening instead of reading, then [Wayback/Archive] 452: Numbers on Computers Are Weird — Embedded is a great podcast episode where Julia gets interviewed by Christopher White, and Elecia White which I found via [Wayback/Archive] Julia Evans on Twitter: “was on the @embeddedfm podcast this week talking about our upcoming “How Integers and Floats Work” zine, plus some meta discussion about making zines

Either way, be sure to read the other replies to b0rk’s posts too as many interesting tidbits did not make it in her underlying blog posts:

Read the rest of this entry »

Posted in Conferences, Event, Software Development, Development, Conference Topics | Leave a Comment »

Online HTML Stripper. Remove HTML and formatting from text

Posted by jpluimers on 2026/02/11

This was the easiest tool to remove HTML from select tags while keeping line breaks: [Wayback/Archive] Online HTML Stripper. Remove HTML and formatting from text.

Especially the client-side on-line tools I tried failed that option:

This just does not work at all for me: [Wayback/Archive] HTML Cleaner (cannot paste HTML text: needs to paste formatted text which does not work with select elements).

Could I have done this on a command-line? Of course, but I don’t need it often enough to warrant investigating and remembering how to do that in an efficient manner.

Queries:

Read the rest of this entry »

Posted in Blogging, Development, HTML, JavaScript/ECMAScript, LifeHacker, PHP, Power User, Scripting, SocialMedia, Software Development, Web Development | Leave a Comment »

Quick Accent steals the WordPress classic editor space after a hyphen-minus sign or asterisk · Issue #24623 · microsoft/PowerToys

Posted by jpluimers on 2026/02/11

A while ago I bumped into [Wayback/Archive] Quick Accent steals the WordPress classic editor space after a hyphen-minus sign or asterisk · Issue #24623 · microsoft/PowerToys.

In the WordPress Classic Editor, the or combinations quickly generate an empty bulleted list:

When enabling the PowerToys Quick Accent (formerly [Wayback/Archive] PowerAccent) with their default settings this fails (but it does work in the WordPress Gutenberg editor, Word and some other tools I tested).

The easiest way to work around this is to switch from the default “Activation Keys” setting “Left, Right or Space” to “Left/Right Arrow”.

Hopefully besides the workaround there will also be a full fix.

The related C++ and C# source files:

Read the rest of this entry »

Posted in .NET, C#, C++, Classic editor, Development, Gutenberg editor, Power User, PowerToys, SocialMedia, Software Development, Windows, WordPress | Leave a Comment »