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 ‘Power User’ Category

Bimostitch Panorama Stitcher – Android-apps op Google Play

Posted by jpluimers on 2023/10/13

Often, Google Photos does not auto-stitch a series of photos.

On Android, you can use this app in stead: [Wayback] Bimostitch Panorama Stitcher – Android-apps op Google Play

I stitched the panorama photo in the Tweet below with it [Wayback/Archive].

You can find it back in this Google Photo’s album: [Wayback/Archive] photos.app.goo.gl/XgovxiK2CKJzdH4u7

Via [Wayback/Archive] Force panorama creation on Google Photos – Google Photos Community.

--jeroen

Read the rest of this entry »

Posted in Android Devices, Google, Google Photos, Power User | Leave a Comment »

C#/.NET: for personally identifiable information, use Gaev.Blog.Examples/PiiString.cs at 3.1.1 · gaevoy/Gaev.Blog.Examples

Posted by jpluimers on 2023/10/12

A while ago [Wayback/Archive] Vladimir Gaevoy wrote a great blog post which I bumped into through his tweet [Wayback/Archive] “Blogged: .NET type for personally identifiable information (PII). Working with PII with the help of .NET String is painful. Let’s see the benefits of PiiString as explicit .NET type instead of .NET String  #pii #dotnet #gdpr #security “

The tweet does not fully do justice to his blog post [Wayback/Archive] .NET type for personally identifiable information (PII), as the post not only discusses the background (GDPR and other requirements, for instance the [Wayback/Archive] GDPR compliance checklist – GDPR.eu) and the class, but also with examples how to use it for:

  • conversion to/from user interface plain text
  • hashing to pseudonymized/anonymized form
  • encryption for more secure storage

In addition, more examples cover JSON, Entity Framework, [Wayback/Archive] NLog, and [Wayback/Archive] Serilog — simple .NET logging with fully-structured events.

Read the rest of this entry »

Posted in .NET, C#, Development, Power User, Privacy, Security, Software Development | Leave a Comment »

Ookla speedtest CLI for Windows has some undocumented arguments to accept license and GDPR

Posted by jpluimers on 2023/10/11

I had speedtest-cli running on MacOS and various Linux machines, but not yet on Windows (see for instance my post Ubuntu: Fixing the myserious “Failed to stop apt-daily.timer: Connection timed out”).

[Wayback/Archive] Install and Test Internet Speed with Speedtest CLI Command Line – NEXTOFWINDOWS.COM reminded me there is a Speedtest CLI for Windows download at at [Wayback/Archive] Speedtest CLI: Internet speed test for the command line, but I am a an automation/scripting/devops person, so luckily there are also [Wayback/Archive] Chocolatey Software | Speedtest by Ookla (don’t get [Wayback/Archive] Ookla.Speedtest download, as that is the GUI version).

Both the Chocolatey and winget packages are named the same, so that is quite confusing. This is how I have set them apart:

Read the rest of this entry »

Posted in *nix, *nix-tools, Batch-Files, Chocolatey, DevOps, GDPR/DS-GVO/AVG, Internet, ISP, KPN, Notepad++, Power User, Privacy, Scripting, SpeedTest, Windows, xs4all | 2 Comments »

Getting the Chocolatey shimgen generated shim target

Posted by jpluimers on 2023/10/10

For tomorrow’s post Ookla speedtest CLI for Windows has some undocumented arguments to accept license and GDPR I neede the full path to the speedtest.exe which I had installed using Chocolatey.

I know chocolatey uses a shim that redirects to the actual executable, so a simple where speedtest.exe would not cut it.

My guess would be that the generated shim allowed to either get the target pathname out, or have the target pathname encoded in it.

Luckily the first applies: a few of the shim command-line parameters are in [Wayback/Archive] Chocolatey Software Docs | Executable shimming (like symlinks but better):

You pass these arguments to an executable that is a shim (e.g. executables in the bin directory of your Chocolatey install, not choco.exe):

  • --shimgen-help – shows this help menu and exits without running the target
  • --shimgen-log – logging is shown on command line
  • --shimgen-waitforexit – explicitly tell the shim to wait for target to exit – useful when something is calling a gui and wanting to block – command line programs explicitly have waitforexit already set.
  • --shimgen-exit – explicitly tell the shim to exit immediately.
  • --shimgen-gui – explicitly behave as if the target is a GUI application. This is helpful in situations where the package did not have a proper .gui file.
  • --shimgen-usetargetworkingdirectory – set the working directory to the target path. Useful when programs need to be running from where they are located (usually indicates programs that have issues being run globally).
  • --shimgen-noop – Do not actually call the target. Useful to see what would happen if you ran the command.

But the below dumps show more more (using [Wayback/Archive] Strings – Windows Sysinternals | Microsoft Docs, [Wayback/Archive] clip | Microsoft Docs and post-processing in [Wayback/Archive] Notepad++).

Back to the second solution,

strings C:\ProgramData\chocolatey\bin\speedtest.exe | findstr speedtest.exe

showed

speedtest.exe
..\\lib\speedtest\tools\speedtest.exe
Cannot find file at '..\\lib\speedtest\tools\speedtest.exe' (
speedtest.exe
speedtest.exe

And towards the first,

strings C:\ProgramData\chocolatey\bin\speedtest.exe | clip

resulted in this fragment:

Read the rest of this entry »

Posted in Batch-Files, Chocolatey, CommandLine, Development, Power User, PowerShell, PowerShell, Scripting, Software Development, Windows | Leave a Comment »

Help saving time drain: YouTube Time – Chrome Web Store

Posted by jpluimers on 2023/10/09

Trying to help someone with a time drain: [Wayback/Archive] YouTube Time – Chrome Web Store

Via [Wayback/Archive] How to Limit YouTube Time on Mac on Chrome and Safari.

–jeroen

Posted in LifeHacker, Power User, SocialMedia, YouTube | Leave a Comment »

Expositie: 30 jaar Power Unlimited | Beeld & Geluid – 7 t/m 29 oktober 2023

Posted by jpluimers on 2023/10/06

Koop je tickets via [Wayback/Archive] Expositie: 30 jaar Power Unlimited | Beeld & Geluid

Via [Waybacksave/Archive] Martin Verschoor on X: “Zodat je wat te doen hebt de komende herfstvakantie! Speciaal voor jou met 30 (nee, dit is geen toeval) % korting met de code ‘PU2023’”

--jeroen

Posted in Games, History | Leave a Comment »

Snelklaar.nl – 13-duizend gerechten die snel klaar zijn

Posted by jpluimers on 2023/10/06

[Wayback/Archive] Welkom op Snelklaar.nl, dé culinaire site voor mensen met weinig tijd.

Via:

 

Related:

–jeroen

Posted in LifeHacker, Power User | Leave a Comment »

Bookmarklet to navigate from a page to the most recent saved WayBack machine entry

Posted by jpluimers on 2023/10/04

A while ago, while writing last weeks post XPath based bookmarklets for Archive.is: more JavaScript fiddling!, I needed the most recent WayBack Machine archival of

https://developer.mozilla.org/en-US/docs/Web/XPath/Introduction_to_using_XPath_in_JavaScript

I vaguely remembered replacing the normal timestamp with a 3 and 13 zeros, so I tried this

https://web.archive.org/web/30000000000000/https://developer.mozilla.org/en-US/docs/Web/XPath/Introduction_to_using_XPath_in_JavaScript

And indeed, it did a HTTP 302 redirect to

https://web.archive.org/web/20220312161117/https://developer.mozilla.org/en-US/docs/Web/XPath/Introduction_to_using_XPath_in_JavaScript

So I quickly made this bookmarklet:

javascript:location.href='https://web.archive.org/web/30000000000000/'+document.location.href;

Then I created another one for getting the screenshot:

javascript:location=location.href.replace(/^https:\/\/web\.archive\.org\/save\/http/,'https://web.archive.org/web/30000000000000/http://web.archive.org/screenshot/http')

That works for screenshots archived with a Wayback Machine account, as these are related because of the inserted http://web.archive.org/screenshot/ fragment:

Since the Wayback Machine always looks for the closest savet timestamp, it does not matter the timestamps in these archived pages have a slight mismatch.

Memory lane

20231006: I edited this section referring two prior blog posts instead of one because of [Wayback/Archive] pbeccard: “@wiert @oliof You can also use…” – Mastodon (clearly showing that Mastodon like any social media platform does mangle backtick quoted code):

@wiert @oliof You can also use `javascript:location.href=’web.archive.org/web/*/’+docume to get the overview. I find this quite useful since I often want an older version of a page.

And later in the reply chain:

[Wayback/Archive] pbeccard: “@wiert @oliof Ah, I thought b…” – Mastodon

@wiert @oliof Ah, I thought by now that maybe Markdown is supported. I pulled the bookmarklet out of my bookmarklet bookmark folder. Here is a copy: https://gist.github.com/corppneq/d61e3…

[Wayback/Archive] Gist: Bookmarklets

I also found back two blog posts:

  1. Need to write a proper bookmarklet for the wayback archive (: mentioning many useful Wayback Machine JavaScript Bookmarklets from my gist [Wayback/Archive] Ideas/inspiration for writing a proper WayBack archive.org bookmarklet including this one:

    [Wayback/Archive] http://www.gyford.com/misc/wayback.html

      • WayBack:

        javascript:location.href='http://web.archive.org/web/*/'+document.location.href;
        

    I also archived this referred page: [Wayback/Archive] Bookmarklets.com – What’s New.

  2. JavaScript bookmarklet to replace part of the WayBack machine URL with a bookmarklet replacing

    JavaScript bookmarklet to replace part of the WayBack machine URL:

    A bookmarklet that goes to the latest rendered saved version (sometimes saved versions have not been rendered yet, so you get the latest available render):

    javascript:location=location.href.replace(/^https:\/\/web\.archive\.org\/save\/http/,'https://web.archive.org/web/30000000000000/http')

    The WayBack Machine uses a 14-position ID and tries to find the render that is the most close by. This is the format of the ID:

    yyyymmddhhmmss

    This is granular enough, as the WayBack machine only allows new saves that are usually 30+ minutes apart.

    (Note that period by now seems to be increased from 30+ minutes to 45+ minutes)

It also found back this post having the same huge number: 0.30000000000000004.com. How cool is WordPress search (:

–jeroen

Posted in Bookmarklet, Development, Internet, InternetArchive, JavaScript/ECMAScript, Power User, Scripting, Software Development, WayBack machine, Web Browsers | Leave a Comment »

B0rk on her blog: Celebrate tiny learning milestones

Posted by jpluimers on 2023/10/03

I celebrate my tiny milestones by writing blog posts on the things I learn.

What is your way to celebrate them?

Read [Wayback/Archive] Celebrate tiny learning milestones, especially this bit:

It’s really helpful for me to celebrate tiny milestones like this. I celebrate a lot by writing blog posts – I wrote the above list mostly by looking at my list of old blog posts for things I’d written about related to C.
If you don’t blog (it’s definitely not for everyone!), it can be helpful to write down this kind of thing in your [Wayback/Archive] brag document instead.
But I do think it’s important to celebrate these milestones somewhere. It gives me a real sense that I’m making progress and it helps me stay motivated to keep learning about the thing.

–jeroen

Posted in About, Development, Learning/Teaching, LifeHacker, Opinions, Personal, Power User | Leave a Comment »

Raspberry Pi And The Story Of SD Card Corruption | Hackaday

Posted by jpluimers on 2023/10/02

[Wayback/Archive] Raspberry Pi And The Story Of SD Card Corruption | Hackaday is long and worth reading.

For me the most important bits are how to prevent SD card wear:

  1. use good quality power supplies
  2. put write-heavy operations to SSD
  3. if it suits your use-case, use OverlayFS

The first is always a good idea. It is the primary reason all our electronics live behind a UPS:

In addition, I posted my personal experience (Samsung microSD cards last way longer than SanDisk cards) on Twitter:

[Wayback/Archive] @hackaday I’m have been running a few Raspberry Pi systems with 8-32Gb micro-SD cards as web-dashboard with refreshes every few minutes or so: much write access. When using Sandisk (no matter the type) they last about a year, Samsung (no matter the type) cards last multiple years.

Via: [Wayback/Archive] hackaday on Twitter: “Raspberry Pi And The Story Of SD Card Corruption https://t.co/R8KNVmQORD” / Twitter

EMP

We had a lightning strike in the evening on 20181111 some 50 meters from our home.

It killed immediately killed this (some pictures further below):

Read the rest of this entry »

Posted in *nix, Debian, Development, Hardware Development, Linux, Power User, Raspberry Pi, Raspbian | Leave a Comment »