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

Archive for the ‘Development’ Category

MySQL function result reuse in expressions?

Posted by jpluimers on 2024/07/18

I love how Kris answers with these concise bits of SQL query results, this time about the sleep function and expression reuse of function results:

Read the rest of this entry »

Posted in Database Development, Development, MySQL, SQL Server | Leave a Comment »

fail2ban is yet another “A project some … person … has been thanklessly maintaining since …”; ensure it does not become yet another XZ Utils debacle

Posted by jpluimers on 2024/07/17

https://i0.wp.com/web.archive.org/web/20240711133830if_/https%3A//www.explainxkcd.com/wiki/images/d/d7/dependency.pngEarlier this week there were only three sponsors for [Wayback/Archive] sebres (Sergey G. Brester) · GitHub.

You might think “Why is this important?”.

Sergey is the single maintainer of fail2ban, the open source project that protects countless (likely a majority) of  public facing servers facing on the Internet.

Please don’t let fail2ban become another XZ Utils and support Sergey: we don’t want the project to become unmaintained, or worse: being backdoored like XZ was.

[Wayback/Archive] Sponsor @sebres on GitHub Sponsors · GitHub

The fail2ban repository is at [Wayback/Archive] GitHub – fail2ban/fail2ban: Daemon to ban hosts that cause multiple authentication errors

Via [Wayback/Archive] dee 🏳️‍⚧️: “fail2ban has one core maintain…” – Grafana Social

fail2ban has one core maintainer github.com/fail2ban/fail2ban and he has only 3 Github sponsors github.com/sebres

WTF

I can’t even comprehend how many servers are protected by fail2ban, how many compromises are avoided, how many people who run hobby things all the way up to major sites that get to sleep soundly every night… because of this single project.

Related: XZ 5.6.x are backdoored and present in many systems: downgrade to 5.4.x or earlier now; consider libarchive compromised until proven otherwise

--jeroen

Read the rest of this entry »

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

On my list of tools to try: zhot and tweetzhot (both by Rop Gongrijp and based on puppeteer) to create browser screenshots from the terminal

Posted by jpluimers on 2024/07/17

The feature reminds me on how archive.today saves content.

Both the zhot and tweetzhot repositories are on my list of tools to try. They might make writing blog posts easier.

They are both based on [Wayback/Archive] puppeteer/puppeteer: Headless Chrome Node.js API

Puppeteer is a Node library which provides a high-level API to control Chrome or Chromium over the DevTools Protocol. Puppeteer runs headless by default, but can be configured to run full (non-headless) Chrome or Chromium.

It demonstrates headless browser usage and can for instance:

  • Generate screenshots and PDFs of pages.
  • Crawl a SPA (Single-Page Application) and generate pre-rendered content (i.e. “SSR” (Server-Side Rendering)).
  • Automate form submission, UI testing, keyboard input, etc.
  • Create an up-to-date, automated testing environment. Run your tests directly in the latest version of Chrome using the latest JavaScript and browser features.
  • Capture a timeline trace of your site to help diagnose performance issues.
  • Test Chrome Extensions.

Note any headless browser will have some trouble rendering single-page applications.

Repositories:

Read the rest of this entry »

Posted in Chrome, Chrome, Development, Google, JavaScript/ECMAScript, Power User, Puppeteer, Scripting, Software Development, Web Browsers | Leave a Comment »

DigiD backend code: GitHub – MinBZK/woo-besluit-broncode-digid

Posted by jpluimers on 2024/07/16

From a few months back: [Wayback/Archive] GitHub – MinBZK/woo-besluit-broncode-digid

Via Bugblauw [Wayback/Archive] Lord Mendel Mobach 💉💉💉💉🦠💉 on X: “DigiD Backend is openbaar … met dank aan @Logius_minbzk @MinBZK @DigiDwebcare” / X

Comments (on why parts of it is obfuscated):

  1. [Wayback/Archive] Arian van Putten on X: “@bugblauw @Logius_minbzk @MinBZK @DigiDwebcare sorry hoor maar dit is echt een aanfluiting. Ze hebben een soort Regex Search en Replace gedaan en alle URLs verandert met SSSSSSSSSS. Waaronder ook alle XML namespaces dus helemaal niks hieraan werkt. Waarom is dit zo extreem weggelakt allemaal? …”

    [Wayback/Archive] Code search results · GitHub

  2. [Wayback/Archive] Lord Mendel Mobach 💉💉💉💉🦠💉 on X: “@ProgrammerDude @Logius_minbzk @MinBZK @DigiDwebcare Technisch werkt het wel als je maar consistent bent. Hooguit krijg je een warning dat het niet absolute is. Even praktisch: hierin zaten bijvoorbeeld bedrijfsnamen, en men heeft besloten dat per string aan te pakken. Over keuzes die in 2006 of eerder zijn gemaakt …… tjsae..”

--jeroen

Posted in Development, Java, Java Platform, Ruby, Software Development | Leave a Comment »

s3-ocr: Extract text from PDF files stored in an S3 bucket

Posted by jpluimers on 2024/07/16

For my link archive: [Wayback/Archive] s3-ocr: Extract text from PDF files stored in an S3 bucket

One reason is archival of books. Even (or maybe especially) in IT, books already have historic meaning especially in narrower fields where they often are not available in the Internet Archive or have been scanned by Google Books.

Via/related:

Read the rest of this entry »

Posted in Amazon S3, AWS Amazon Web Services, Cloud, Cloud Apps, Development, Infrastructure, Internet, Power User, Python, Scripting, Software Development | Leave a Comment »

You don’t need an over-engineered IKEA cabinet hack to silence your PC

Posted by jpluimers on 2024/07/11

Lesson learned: buy more silent fans and (if you dare) better water cooling: [Wayback/Archive] This over-engineered IKEA hack got out of hand! – YouTube

--jeroen

Posted in Development, DIY, Hardware, Hardware Development, LifeHacker, Power User | Leave a Comment »

Important to defeat Twitter wrongly auto-guessing of URLs (and assuming anything with @ or # is a mention or hashtag) is Nelson’s Weblog: tech / zero-width-space

Posted by jpluimers on 2024/07/11

Quoting in full from [Wayback/Archive] Nelson’s Weblog: tech / zero-width-space to demonstrate a zero-width-space problem with WordPress too.

Read the rest of this entry »

Posted in Bookmarklet, Classic editor, Development, Gutenberg editor, JavaScript/ECMAScript, Power User, Scripting, SocialMedia, Software Development, Twitter, Web Browsers, Web Development, WordPress | Leave a Comment »

Should be easy to put in a Bookmarklet: Archive.is blog — What is the long version of the url please. …

Posted by jpluimers on 2024/07/10

[Wayback] Archive.is blog — What is the long version of the url please. …

Click on “share” button to see different forms of linking to a page.

For example https://archive.vn/Aoans/share

So there are two tricks:

Read the rest of this entry »

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

Installing WhatsApp Desktop from the Console

Posted by jpluimers on 2024/07/09

Related to WhatsApp Desktop for Mac or PC cannot only chat but also voice and video call: installing WhatsApp from the command-line.

That was easy to do via winget:

c:\temp>winget install -e --id WhatsApp.WhatsApp
Found WhatsApp [WhatsApp.WhatsApp] Version 2.2222.12
This application is licensed to you by its owner.
Microsoft is not responsible for, nor does it grant any licenses to, third-party packages.
Downloading https://web.whatsapp.com/desktop/windows/release/x64/WhatsAppSetup.exe
  ██████████████████████████████   145 MB /  145 MB
Successfully verified installer hash
Starting package install...
Successfully installed

This was a while ago, so the version number by now is dated, but it is about the command winget install -e --id WhatsApp.WhatsApp

Via:

–jeroen

Posted in Batch-Files, Development, Power User, Scripting, Software Development, Windows, Windows 10, Windows 11, winget | Leave a Comment »

Interesting thread on the usefulness of running a syslog server and being able to write to it

Posted by jpluimers on 2024/07/04

For my link archive:

  1. [Wayback/Archive] jilles.com 🔜 MCH2022 🏳️‍🌈 on Twitter: “My Ubiquity setup stopped working (again). This happens way to often in my opinion. I have setup a monitoring environment to debug the issues and consider it not reliable enough for the amount of money I spend on it.”

  2. [Wayback/Archive] Rick on Twitter: “@jilles_com Waar heb je problemen mee? En ik tijdelijk een syslog server draaien. Dan je kun je gemakkelijker de logs doorspitten (kiwi heeft een simpele gratis versie)”
  3. [Wayback/Archive] jilles.com on Twitter: “@RickvanSoest Ik draai een grafana setup met syslog, snmp ingest en een losse traceroute om uit te sluiten of het aan de provider of de hardware ligt.”
  4. [Wayback/Archive] jilles.com on Twitter: “@RickvanSoest Software upgrades die falen. In dit geval een PoE switch die op z’n gat lag. In dit geval iets dat met een reboot gefixt is. Maar in geval van de upgrade was het een compleet nieuwe configuratie.”

In todays cross-platform world, it pays if your tooling can send logging to syslog.

Though originating from the CP/M and SunOS background, I have done most of my professional development work in Windows back-ends and front-ends, so here are some links relevant to that:

--jeroen

Posted in .NET, C#, Delphi, Development, DVCS - Distributed Version Control, git, Software Development, Source Code Management, Subversion/SVN | 2 Comments »