Archive for the ‘Scripting’ Category
Posted by jpluimers on 2026/02/25
This worked on the built-in Windows PowerShell to get the recommendation status:
$volume = Get-WmiObject -Class Win32_Volume -Filter "DriveLetter = 'C:'"
$analysis = $volume.DefragAnalysis()
$analysis.DefragAnalysis
$analysis.DefragRecommended
Without elevation token, $analysis.DefragAnalysis will be empty and $analysis.DefragRecommended will return False, but elevated it will return the analysis data and $analysis.DefragRecommended will return False or True depending on the analysis result.,
And this gets the most recent defragmentation action from the event-log:
Read the rest of this entry »
Posted in CommandLine, Development, PowerShell, Scripting, Software Development | Tagged: possible | Leave a Comment »
Posted by jpluimers on 2026/02/25
Often I need to generate passwords or uuids (on some systems called guids). I usually try to do that in a relatively platform agnostic way as I use MacOS, Windows and Linux in various mixes for many reasons (for instance that I have had developed quite hefty RSI in the early 1990s of the and the best keyboard/pointing-device combination for is the MacBook built in keyboard/touchpad combination so basically MacBooks are my window to all other operating systems).
Generating randomly with a good random number generator them makes sense as for most usage, it is important that both passwords and uuids are hard to guess which means having an entropy that is as high as possible.
A cool thing about OpenSSL is that:
- most of not all systems have it installed (it was no coincidence I published Installing OpenSSL on Windows a few days ago)
- it has a very good pseudo-random number generator and as of [Wayback/Archive] OpenSSL version 1.1.1 first released in 2018 has solved the problem around [Wayback/Archive] Random fork-safety – OpenSSLWiki, see [Wayback/Archive] Our Review of the OpenSSL 1.1.1 Random Number Generation Update – OSTIF.org.
- it supports various useful output formats
hex (hexadecimal) and base64 (next to the default of octet – or by today’s naming convention byte – output)
The easiest to generate are passwords. Yes I know that password managers can do this too, but there are some systems I cannot use them on or sync between them (don’t you love the corporate world) so my aim is to use a random password generator in a platform agnostic way which usage is easy to remember. Read the rest of this entry »
Posted in *nix, *nix-tools, Apple, base64, bash, bash, Batch-Files, Conference Topics, Conferences, Development, Encoding, Event, HEX encoding, Mac, Mac OS X / OS X / MacOS, MacBook, OpenSSL, Power User, Python, Scripting, Software Development, Windows | Leave a Comment »
Posted by jpluimers on 2026/02/24
LLM eat a lot of energy and are their hallucination are bad: [Wayback/Archive] LLM-generated passwords ‘fundamentally weak,’ experts say • The Register
Your AI-generated password isn’t random, it just looks that way
…
AI security company Irregular looked at Claude, ChatGPT, and Gemini, and found all three GenAI tools put forward seemingly strong passwords that were, in fact, easily guessable.
…
Basically they are almost as good as the 2007 XKCD “four” number generator, the 2013 XKCD “I’m So Random” or the 2001 Dilbert “nine” number generator further below (don’t read the latter if you dislike Scott Adams)
Is it a coincidence or are these two using two small squared numbers?
Anyway: avoid LLM whenever possible, as most often they do more bad than good.
And for passwords, better use the blog post that was already scheduled for tomorrow: Generating random strings for passwords and uuids/guids on both Windows and Linux using base64 and hex encoding, plus: “Hive Systems: Are Your Passwords in the Green?”
Via [Wayback/Archive] Eloy.: “LLMs are centrist randomness: not useful for anything that requires truth but neither for password generation” – HSNL Social
Below this post, there are some great responses as well.
Comics
Read the rest of this entry »
Posted in AI and ML; Artificial Intelligence & Machine Learning, C++, Conference Topics, Conferences, Development, Event, Internet, InternetArchive, LLM, Pingback, Power User, Python, Scripting, Software Development, Stackoverflow, WayBack machine | Leave a Comment »
Posted by jpluimers on 2026/02/24
I needed to document how to install sed on Windows (which I did a long time ago after writing Plastic SCM: show the current changeset abstract (without files) on the commandline) and recently for some more scripting work(which I will blog on that later this week).
At the time of writing it was [Wayback/Archive] Chocolatey Software | GNU sed 4.8, but this Chocolatey command will install or upgrade to the most recent available version:
choco upgrade --yes sed
Of course, like yesterday’s post Installing OpenSSL on Windows, you could use winget or scoop for this as well. Finding out the commands is left as an exercise to the reader (;
Query: [Wayback/Archive] chocolatey sed – Google Search
–jeroen
Posted in *nix, *nix-tools, Chocolatey, Development, Power User, Scoop, Scripting, sed, Software Development, Windows, Windows Development, winget | Leave a Comment »
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 »
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 Software Development, Development, Power User, Scripting, PDF, Python | Leave a Comment »
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 »
Posted by jpluimers on 2026/01/29
A cool way to unit-test JavaScript code on the browser side is [Wayback/Archive] Getting Started | QUnit:
To get started with QUnit in the browser, create a simple HTML file called test.html and include the following markup:
<!DOCTYPE html>
<meta charset="utf-8">
<title>Test Suite</title>
<link rel="stylesheet" href="https://code.jquery.com/qunit/qunit-2.19.4.css">
<body>
<div id="qunit"></div>
<div id="qunit-fixture"></div>
<script src="https://code.jquery.com/qunit/qunit-2.19.4.js"></script>
</body>
That’s all the markup you need to start writing tests. Note that this loads the library from the jQuery CDN.
I was so glad to find QUnit via the below links as I unconsciously wanted such a thing for a very very long time.
You can either run it locally or remotely or from the jQuery CDN as both it
- is a Node.js module so the source files are all available on the jQuery CDN
- it does not require the Node.js to load so it can run from any location you want (that CDN, locally or another on-line location)
Read the rest of this entry »
Posted in Chrome, Development, Edge, Firefox, JavaScript/ECMAScript, Power User, Scripting, Software Development, Web Browsers, Web Development | Leave a Comment »
Posted by jpluimers on 2026/01/28
In yesterday’s post Bookmarklet for Archive.is to navigate to the canonical link with the “redirected from” instead of “saved from” I mentioned js-tokenizer for syntax highlighting. When writing that, I didn’t have time to dig deeper, but saved the links for later investigation.
Since I won’t have time to finish writing a complete article on this anytime soon, I decided to just publish the list:
Read the rest of this entry »
Posted in Development, JavaScript/ECMAScript, Scripting, Software Development | Leave a Comment »
Posted by jpluimers on 2026/01/28
Posted in *nix, *nix-tools, bash, bash, Development, DNS, Hardware Development, Internet, Power User, Raspberry Pi, Scripting, Software Development | Leave a Comment »