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,862 other subscribers

Archive for the ‘Scripting’ Category

Some ADS-B API link notes (hoping to be able to get from/to airport data from it)

Posted by jpluimers on 2025/10/28

For my link archive initiated because I was trying to find out why ADS-B Exchange does not list originating and destination airports for flights, then on how to get at that data.

It is grouped in a few parts, starting with:

Read the rest of this entry »

Posted in Communications Development, Development, HTTP, Internet protocol suite, JavaScript/ECMAScript, JSON, REST, Scripting, Software Development, TCP, Web Development | Leave a Comment »

pascal.js

Posted by jpluimers on 2025/10/22

Because it is cool: interactive [Wayback/Archive] pascal.js that shows the intermediate steps:

  1. Turbo Pascal 1.0-ish code
  2. Abstract Syntax Tree (in JSON notation)
  3. LLVM IR (intermediate representation)
  4. Emscripten compiled JavaScript
  5. Console output (stdout)

Source is at GitHub: [Wayback/Archive] GitHub – kanaka/pascal.js: Pascal compiler implemented in JavaScript

Via: [Wayback/Archive] javascript pascal at DuckDuckGo

--jeroen

Posted in Development, JavaScript/ECMAScript, Pascal, Scripting, Software Development, Turbo Pascal | Leave a Comment »

Cool visualisations of graph searching: Introduction to the A* Algorithm

Posted by jpluimers on 2025/10/21

This is so cool: graphical [Wayback/Archive] Introduction to the A* Algorithm

It is still being updated, which is even cooler:

Created 26 May 2014, updated Aug 2014, Feb 2016, Jun 2016, Jun 2020, Jul 2023

These are for general graph traversal. That Wikipedia article only mentions depth-first search and breadth-first search, but forgets the A* search algorithm which is an extension of the also not mentioned Dijkstra’s algorithm which in turn is based on breadth-first search.

The visualisations cover the breadth-first algorithms.

The example code is Python based, but easy to translate into other languages.

The visualisation code is in JavaScript, using these files (they Archive.is versions are more accurate than the Wayback Machine ones):

Read the rest of this entry »

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

From 2023: It’s Time For A Change: datetime.utcnow() Is Now Deprecated – miguelgrinberg.com

Posted by jpluimers on 2025/10/14

I forgot how I bumped into this, but a while ago I found this interesting 2023 post: [Wayback/Archive] It’s Time For A Change: datetime.utcnow() Is Now Deprecated – miguelgrinberg.com explaining naive (without time zone) and aware (with time zone) date time objects.

It reminded me of Delphi, where NowUTC – as Delphi does have neither naive or aware date time objects – returns  a floating point value (yes, it has a separate TDateTime type, but it represents the number of days that have passed since December 30, 1899 which in face stems from the Windows OLE Automation era* (OLE Automation is a subset of COM), see [Wayback/Archive] DateTime.ToOADate Method (System) | Microsoft Learn.

That method is mentioned in [Wayback/Archive] Why You Should Use NowUTC Instead of Now in Delphi: A Quick Guide – YouTube and Delphi deserves a way better infrastructure of date and time handling.

So this post is also a reminder to myself: figure out if there is an object oriented DateTime library for Delphi yet, and if not see if there is interest to create one similar to [Wayback/Archive] Noda Time | Date and time API for .NET by Jon Skeet.

Delphi references

Read the rest of this entry »

Posted in .NET, .NET Framework, .NET Standard, C#, Conference Topics, Conferences, Delphi, Development, Event, Jon Skeet, Python, Scripting, Software Development | Leave a Comment »

ibm midrange – Syntax higlighters for RPG And CLP that generate HTML and/or RTF? – Stack Overflow

Posted by jpluimers on 2025/10/09

In case I ever need this for the future: [Wayback/Archive] ibm midrange – Syntax higlighters for RPG And CLP that generate HTML and/or RTF? – Stack Overflow

Thanks [Wayback/Archive] aaronbartell and [Wayback/Archive] Mike Wills for your answers there.

Oh, an if you wonder what these ancient abbreviations mean:

--jeroen

Posted in Development, RPG, Scripting, Software Development | Leave a Comment »

finding duplicates – voidtools forum

Posted by jpluimers on 2025/10/07

That feeling you have been living under a stone since 2014: [Wayback/Archive] finding duplicates – voidtools forum

1.4 Beta has both dupe: & sizedupe: functions.
(In the Index, you need to index the file size & also enable Fast size sort.)

You can combine them, something like:

> dupe: sizedupe: c: file:

Or even add a size to it:

> dupe: sizedupe: c: file: size:>2MB

Note that that finds file name AND (I believe its an AND) file size duplications – anywhere, not necessarily limited to C:, & also that name AND size are the only qualifications for “duplication”, as in files meeting that criteria may not be (byte-by-byte) “duplicates”.

A partial excuse is that these never made it to the changelog at [Wayback/Archive] www.voidtools.com/Changes.txt or [Wayback/Archive] www.voidtools.com/BetaChanges.txt.

It is in the documentation since May 2017 at [Wayback/Archive] Searching – voidtools though:

Read the rest of this entry »

Posted in Batch-Files, Development, Everything by VoidTools, Power User, Scripting, Software Development, Windows | Leave a Comment »

bash alias to decode email Quoted-Printable stdin data

Posted by jpluimers on 2025/09/25

Perl isn’t my strength, so I was glad to find the below links that inspired me to add this bash function to my profile decoding Quote-Printable email data (for instance used by sendmail and postfix to store SMTP message files):

# https://superuser.com/questions/1452249/fix-revert-wrong-encoding-of-file
function sendmail-decode-quoted-printable-from-stdin() {
  perl -0777 -ne 'use MIME::QuotedPrint; print decode_qp($_)'
}

Read the rest of this entry »

Posted in *nix, *nix-tools, bash, bash, Development, Perl, Power User, Python, Scripting, sendmail, Software Development | Leave a Comment »

mutool: all purpose tool for dealing with PDF files | mupdf Commands | Man Pages | ManKier

Posted by jpluimers on 2025/09/23

Sometimes I feel like having lived under a rock for ages despite trying to live the command-line life as much as possible.

Anyway: not that long ago I learned about [Wayback/Archive] mutool: all purpose tool for dealing with PDF files | mupdf Commands | Man Pages | ManKier

It is part of [Wayback/Archive] Package mupdf – man pages | ManKier which also has [Wayback/Archive] mupdf: MuPDF is a lightweight PDF viewer written in portable C | mupdf Commands | Man Pages | ManKier.

MuPDF – a kind of sibling to GhostScript – lives at [Wayback/Archive] MuPDF: The ultimate library for managing PDF documents.

The below query got me to [Wayback/Archive] mupdf/docs/man/mutool.1 at master · ccxvii/mupdf · GitHub in the “wrong” repository [Wayback/Archive] GitHub – ccxvii/mupdf: mirrored from git://git.ghostscript.com/mupdf.git

The actual repositories are at:

Read the rest of this entry »

Posted in *nix, *nix-tools, Console (command prompt window), Development, PDF, Power User, Scripting, Software Development | Leave a Comment »

Notes in case I want to create my own homebrew cask for installing software they disabled/removed

Posted by jpluimers on 2025/09/16

Some notes as it might enable me to install software that homebrew has deprecated or removed (note that local changes by default are ignored as the brew API takces precedence):

Despite the homebrew repository being a high commit-volume one which makes following it from a clone hard, just did already clone it Read the rest of this entry »

Posted in Apple, Development, DVCS - Distributed Version Control, GitHub, Home brew / homebrew, Mac OS X / OS X / MacOS, Power User, Ruby, Scripting, Software Development, Source Code Management, Versioning | Tagged: , | Leave a Comment »

Some notes on running Windows 11 on virtualised hardware and some on TPM

Posted by jpluimers on 2025/09/16

Not all virtualised hardware (older hardware usually has died by now) conforms to the Windows 11 minimum specifications.

So here are some links that should be of help to still get Windows 11 running on those:

If you insist on running older hardware that has a TPM header on the mainboard:

Read the rest of this entry »

Posted in CommandLine, Development, MSI, Power User, PowerShell, PowerShell, Scripting, Software Development, Windows, Windows 11, Z77A-G43 | Leave a Comment »