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

Archive for the ‘Conferences’ Category

GitHub: finding the oldest commit on large repositories

Posted by jpluimers on 2025/06/25

The manual process of getting back to the earliest commit of a GitHub repository is easy for small repositories, but for a large one it is very tedious.

TL;DR: there are various ways, but the easiest was the INIT Bookmarklet below.

Note: 2 weeks before the scheduled post made it to the front of the queue, I got a report¹ that it started to fail. Here it still works.

It’s hard to debug because of the functional programming approach taken.

Read the rest of this entry »

Posted in Bookmarklet, C, Conference Topics, Conferences, Development, DVCS - Distributed Version Control, Event, git, GitHub, Go (golang), JavaScript/ECMAScript, Power User, Scripting, Software Development, Source Code Management, Web Browsers | Tagged: , , | Leave a Comment »

“C# emits .callvirt instructions, even if the method isn’t virtual. That forces a call site null check.” (Immo Landwerth on Twitter)

Posted by jpluimers on 2025/06/25

From a while back, which I initially missed because it was in the midst figuring out my ver increasing bowel problems leading up to all my cancer treatments, but still relevant:

[Wayback/Archive] Immo Landwerth @terrajobst@hachyderm.io on Twitter: “That’s why C# emits .callvirt instructions, even if the method isn’t virtual. That forces a call site null check.”

Except inside [Wayback/Archive] Extension Methods, referring to this will never return null.

Yes you can work around this using things like reflection, but the C# compiler will emit .callvirt for any method call which does an implicit null check by the caller which means you never have to check that in callees.

The above tweet quoted the first message of the [Wayback/Archive] Thread by @MStrehovsky on Thread Reader App on working around this .callvirt protection:

Read the rest of this entry »

Posted in .NET, C#, Conference Topics, Conferences, Development, Event, Software Development | Leave a Comment »

GitHub parody poster (but actually truth): “We trained copilot on your code. That’s why it sucks”

Posted by jpluimers on 2025/06/18

The image [Wayback/Archive] GjXf0EPWEAAaAoz.jpg:orig (1528×2048) posted by [WaybackSave/Archive] Deepak Kumar (दीपक) 😷💉 on X: “@Grady_Booch @jsngr” was a response to [Wayback/Archive] Grady Booch on X: “@jsngr …”

«

And what to we call a language with sufficient expressiveness and precision able to construct executable artifacts?

We call it a “programming language”.

At best, AI will revolutionize software development on the same manner as did the invention of compilers. The entire history

»

which also spared these interesting responses:

  1. [WaybackSave/Archive] Adiva 🏳️‍⚧️ on X: “@Grady_Booch @jsngr Also: libraries/packages. It’s been ages since anybody has needed to write every single thing by themselves. Lots of software writing is already creating logic that connects more specialized code written by other people without having understand its internals fully.”
  2. [WaybackSave/Archive] Fast Magpie on X: “@Grady_Booch @jsngr This is the correct take. The number of software engineers required to produce software will decline. The breadth and depth of skill required of those engineers will likely increase. The overall demand for software will increase.”

The library problem is even bigger than the XKCD single dependency one, as there are so many of those fragile dependencies which I discussed in Every conversation about dependencies since 2020 uses the same XKCD 2347 based image, which is a problem on multiple levels. AI will introduce even more dependencies and likely many of them from unknown background causing huge copyright issues.

Image (full size below) from [Wayback/Archive] Tweet JSON

--jeroen


Posted in AI and ML; Artificial Intelligence & Machine Learning, Conference Topics, Conferences, Development, Event, GitHub Copilot, LLM, Software Development | Leave a Comment »

TFrame – What is the accepted way to use frames in Delphi? – Stack Overflow

Posted by jpluimers on 2025/06/10

From a while ago: [Wayback/Archive] TFrame – What is the accepted way to use frames in Delphi? – Stack Overflow.

Besides me referring to my blog post Delphi – Frames as visual Components – don’t forget your Sprig!, these were important comments and answers with notes by myself:

Read the rest of this entry »

Posted in Conference Topics, Conferences, Delphi, Development, Event, Software Development | Leave a Comment »

html – How to display an unordered list in two columns? – Stack Overflow

Posted by jpluimers on 2025/06/05

For a, I wanted to a HTML ul list the SQL keywords in multiple columns I was afraid this would be a tough CSS job, but in practice it was way easier than even explained in the below Stack Overflow answers that made me find

[Wayback/Archive] columns – CSS: Cascading Style Sheets | MDN

The columns [Wayback/Archive] CSS shorthand property sets the number of columns to use when drawing an element’s contents, as well as those columns’ widths.

TL;DR:

  • I used <ul style="columns:3">...</ul>
  • For setting column width, this failed in Chrome <ul style="column-count: 2; column-width: 15em;">...</ul>
    but this worked: <ul style="column-count: 2; width: 480px;">...</ul>

Here are the answers:

Read the rest of this entry »

Posted in Conference Topics, Conferences, CSS, Development, Event, HTML, Software Development, Web Development | Leave a Comment »

Kevlin Henney on encapsulating and restricting Mutability of State to improve software quality

Posted by jpluimers on 2025/06/04

Important read (5 minutes or so): [Wayback/Archive] Restrict Mutability of State. When it is not necessary to change, it is necessary not to change… | by Kevlin Henney | Feb, 2025 | Medium

Via [WaybackSave/Archive] Kevlin Henney on X: “Blogged: Restrict Mutability of State “What appears at first to be a trivial observation turns out to be a subtly important one: a great many software defects arise from the (incorrect) modification of state.” “

--jeroen

Posted in Conference Topics, Conferences, Design Patterns, Development, Event, Software Development, Systems Architecture | Leave a Comment »

“How come these shapes are so DIFFICULT??”

Posted by jpluimers on 2025/06/03

Cool video about how developers feel when others (like QA) test or use the software they have just built:

[Wayback/Archive] Devs watching QA test the product – YouTube

I got to the video via [Wayback/Archive] sanja zakovska 🌱 on Twitter: “Devs watching QA test the product… “ to which the author responded with

[Wayback/Archive] Alison Burke on Twitter: “@sanjazakovska Incase anyone needs the resolution 😂😂 follow me on tiktok! vm.tiktok.com/ZMJKeK29a

Read the rest of this entry »

Posted in Conference Topics, Conferences, Dark Pattern, Development, Event, Software Development, Testing, User Experience (ux) | Tagged: , , , , , , , , , , , , , , | Leave a Comment »

Naming things isn’t hard: if it contains a number, include the unit in the name (your timeout might not be in nanoseconds)

Posted by jpluimers on 2025/05/27

This case, it was C# accessing a SQL back-end, but the responses to the Tweet how so many more examples not even related to software development.

Remember that plane crashing because they overloaded while they thought the fuel load numbers were in Imperial pounds where in fact they were in metric kilograms?

That’s why naming things that contain numbers should contain the unit in their name!

Related blog post: Watch “Felienne Hermans: How patterns in variable names can make code easier to read” on YouTube

Tweet: [Wayback/Archive] Nick Craver on Twitter: “Troubleshooting a hanging test suite and godDAMMIT. “In seconds”. Integer timeouts should be a felony offense punishable by an indeterminate amount of seconds/milliseconds/hours/fortnights/whatever the judge chooses.”

var csb = new SqlConnectionStringBuilder(TestConfig.Current. SQLServerConnectionString){ ConnectTimeout = 2000 }; int SqlConnectionStringBuilder.ConnectTimeout { get; set; } Gets or sets the length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error. Returns: The value of the SqlConnectionStringBuilder, ConnectTimeout property, or 15 seconds if no value has been supplied.

var csb = new SqlConnectionStringBuilder(TestConfig.Current. SQLServerConnectionString) { ConnectTimeout = 2000 }; int SqlConnectionStringBuilder.ConnectTimeout { get; set; } Gets or sets the length of time (in seconds) to wait for a connection to the server before terminating the attempt and generating an error. Returns: The value of the SqlConnectionStringBuilder, ConnectTimeout property, or 15 seconds if no value has been supplied.

Read the rest of this entry »

Posted in .NET, Agile, C#, Code Quality, Conference Topics, Conferences, Database Development, Development, Event, Software Development, SQL, SQL Server, Systems Architecture | Leave a Comment »

Exceptions and DLL in Delphi – Stack Overflow

Posted by jpluimers on 2025/05/20

Every once in a while I discover an answer I have not yet put on my blog, especially as related answer are always interesting.

This is one that didn’t make it until now: [Wayback/Archive] Exceptions and DLL in Delphi – Stack Overflow (thanks [Wayback/Archive] jpfollenius, [Wayback/Archive] Deltics and [Wayback/Archive] Lars Truijens)

Read the rest of this entry »

Posted in Conference Topics, Conferences, Delphi, Development, Event, Software Development, Undocumented Delphi, Windows Development | Leave a Comment »

More early Pascal history (way before Delphi; before Turbo Pascal and Quick Pascal)

Posted by jpluimers on 2025/05/07

The people knowing about the really early Pascal history are a dying breed. So before I pass away (see the posts on my rectum cancer), let me post a few more links here that based on yesterday’s Trip down memory lane: book on p-Code based UCSD Pascal which I ended with:

I learned a few more things from [Wayback/Archive] What do you think about something like Pascal bytecode? (Page 2)

Here we go:

Read the rest of this entry »

Posted in archive.is / archive.today, Conference Topics, Conferences, Development, DVCS - Distributed Version Control, Event, gist, GitHub, Internet, InternetArchive, LISP, Pascal, Power User, Software Development, Source Code Management, Standard Pascal, UCSD Pascal, WayBack machine | Tagged: , , , , , , , , , , , , , , , , , , , , , , , , , | Leave a Comment »