Stumbled across something that goes well with jq (the sed for JSON of which I wrote about before), [Wayback/Archive] Jan-Piet Mens :: A shell command to create JSON: jo:
Jan-Piet Mens :: A shell command to create JSON: jo
Posted by jpluimers on 2023/08/30
Posted in Development, JavaScript/ECMAScript, jo, jq, JSON, Scripting, Software Development | Leave a Comment »
Caroline Brouwer on Twitter: “Vrijdag verhuizen we op de FM 📦🎶 check je nieuwe frequentie op radioveronica.nl”
Posted by jpluimers on 2023/08/30
[Wayback/Archive] Caroline Brouwer on Twitter: “Vrijdag verhuizen we op de FM 📦🎶 check je nieuwe frequentie op radioveronica.nl“
De echte link is www.radioveronica.nl/fm-frequenties-vanaf-september-23
–jeroen
PS:
Kaartje net nieuwe FM-frequenties staat op
Posted in LifeHacker, Power User | Leave a Comment »
.NET/C#: Small command-line tool to query REST JSON results from a batch file.
Posted by jpluimers on 2023/08/29
Often the power is in the combinations of tools.
Read until the epilogue…
Prologue
In this case, I needed to be able to query the JSON results of calls to REST services from the command-line so I could process them in Batch files.
Since I could not find anything readily available, I originally Originally I opted for the PowerShell command-line scripting tool, as that ships with recent Windows versions and can re-use anything that .NET brings. But though [Wayback/Archive] .NET has built in JSON serialization support, there is [Wayback/Archive] no querying support in it.
Then I thought about Delphi, as it [Wayback/Archive] too has a built-in JSON parser, but even the well known [Wayback/Archive] JSON SuperObject library has no query support.
Back to .NET, which – like Delphi – has a well known and respected third party JSON library as well: [Wayback/Archive] NewtonSoft JSON aka JSON.net and that one [Wayback/Archive] does have support for querying JSON with the SelectToken function.
That’s the fundament of the rest of this article, with the potential to be used in a cross-platform as well.
So no need for a plan B.
Posted in *nix, *nix-tools, .NET, Batch-Files, Conference Topics, Conferences, Development, Event, JavaScript/ECMAScript, jq, JSON, Power User, Scripting, Software Development, Windows, Windows Development | Leave a Comment »
Only 2 weeks left to enable 2FA for your GitHub account
Posted by jpluimers on 2023/08/29
If you haven’t done so already, then enable 2FA for your GitHub account now: This will be a requirement in 2 weeks time.
The 2FA/MFA possibility started about half a year ago with [Wayback/Archive] Raising the bar for software security: GitHub 2FA begins March 13 – The GitHub Blog
You can have various means of 2FA, which al start with a choice between:
- An OTP app (pick your choice, for instance from for instanceComparison of OTP applications – Wikipedia)
- SMS/text (not really recommended due to SIM swap scam – Wikipedia)
After completing either of those those, you can view/download a set of backup codes, and you can add more factors to your Multi-factor authentication setup up to these:
Posted in 2FA/MFA, Authentication, Development, DVCS - Distributed Version Control, git, GitHub, Power User, Security, Software Development, Source Code Management | Leave a Comment »
Learned a while ago from @Caramelia79 at Twitter: “AEG Methode.”
Posted by jpluimers on 2023/08/28
Too bad that [Wayback/Archive] Cara (@Caramelia79) / Twitter deleted their tweet before it got archived, so this lone tweet does not really make sense now:
[Archive] Jeroen Wiert Pluimers on Twitter: “@Caramelia79 @unimanatee Heute neu gelernt: AEG Methode.” / Twitter
The joke however was this:
AEG Methode:
- Ausschalten
- Einschalten
- Geht
It is also known as “AEG-Prinzip” and refers back to the AEG brand that was (still is?) big in Germany for household appliances and industrial products.
The not so cool thing is that by now it seams to mean:
- Ausschalten
- Einschalten
- Geht nicht
as about a year ago some AEG microwave appliance models show errors F606 and F254 after a firmware update: they now think they are steam ovens but cannot find the correct steam hardware:
Posted in Fun, Hardware, IoT Internet of Things, LifeHacker, Network-and-equipment, Power User | Leave a Comment »
Some 10 years later, most backers received it: Oscilloscope Watch by Gabriel Anzziani » Progress. Almost there… — Kickstarter
Posted by jpluimers on 2023/08/26
Via
Posted in Uncategorized | Leave a Comment »
Bruce Tate on Twitter: “What’s the most unique feature of your favorite programming language?”
Posted by jpluimers on 2023/08/24
For my link archive: [Wayback/Archive] Bruce Tate on Twitter: “What’s the most unique feature of your favorite programming language?” / Twitter
From the languages that I have been using most:
- [Wayback/Archive] Jeroen Wiert Pluimers on Twitter: “@redrapids Delphi having had virtual constructors since version 1. Wrote a blog post only years after it was introduced as too few developers (still!) realise the power of it: …” / Twitter
- [Wayback/Archive] Marco Wobben on Twitter: “@redrapids @jpluimers Perhaps not terribly unique, but definitely my favorite: Strong typing in Delphi/Pascal.” / Twitter
- [Archive] Jeroen Wiert Pluimers on Twitter: “@redrapids C#: extension methods on interfaces. Without this, things like LINQ would have been impossible. ” / Twitter
- [Wayback/Archive] c# – Can extension methods be applied to interfaces? – Stack Overflow (thanks [Wayback/Archive] Greg and [Wayback/Archive] Aaronaught):
Of course they can; most of Linq is built around interface extension methods.Interfaces were actually one of the driving forces for the development of extension methods; since they can’t implement any of their own functionality, extension methods are the easiest way of associating actual code with interface definitions.See the Enumerable class for a whole collection of extension methods built aroundIEnumerable<T>. To implement one, it’s the same as implementing one for a class
- [Wayback/Archive] c# – Can extension methods be applied to interfaces? – Stack Overflow (thanks [Wayback/Archive] Greg and [Wayback/Archive] Aaronaught):
It was a kind of follow-up on his earlier tweet that also sparked nice responses at [Archive] Bruce Tate on Twitter: “What is a #programming technique or construct that other people like but you think is overused?” / Twitter.
In my respons I phrased my decades long pet peeve [Archive] Jeroen Wiert Pluimers on Twitter: “@redrapids OOP: inheritance over composition. This leads to deep hierarchies that eventually nobody understands.” / Twitter.
Whereas with OOP (object-oriented programming) one should use composition over inheritance, often the reverse is true.
Actually my take can be generalised into two directions as these hierarchies:
- often crowd a single namespace, so: crowding namespaces is bad.
One does see this outside the Object Oriented realm a well.
JavaScript for instance takes the crowded global namespace one step further by many libraries taking
$q,$_or$x, which is part of my take[Wayback/Archive] Jeroen Wiert Pluimers on Twitter: “@redrapids Mutation of global state followed by an overly crowded global namespace. Example on the JavaScript side: too many libraries and projects using the global `$` and `_` symbols.”.
- often have many levels of indirection, so: overdoing indirection is bad
One does see this outside the Object Oriented realm a well, just not as pronounced.
[Wayback/Archive] joao on Twitter: “@redrapids But to be more specific, I think sometimes there’s too much indirection with very deep class hierarchies. In the same vein those rules of “functions should have at most 6 arguments and 5/10/20 lines” can lead to a ton of indirection chasing the subfunctions being called”.
–jeroen
Posted in .NET, C#, Conference Topics, Conferences, Delphi, Development, Event, JavaScript/ECMAScript, Pascal, Scripting, Software Development | Leave a Comment »
Bookmarklet to save a page both in the WayBack machine and Archive.is (ending on the latter to solve a reCAPTCHA)
Posted by jpluimers on 2023/08/22
TL;DR:
javascript:{h=location.href;open('https://archive.is/?run=1&url='+encodeURIComponent(h));location.href='https://web.archive.org/save/'+(h)}
Posted in Bookmarklet, Development, JavaScript/ECMAScript, Power User, Scripting, Software Development, Web Browsers, Web Development | Leave a Comment »





