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 ‘Software Development’ Category

Online Paste to Markdown (in JavaScript + HTML)

Posted by jpluimers on 2024/10/08

Apparently I was living under a stone since the 2015 introduction of [Wayback/Archive] Paste to Markdown:

Paste to Markdown

Instructions

  1. Find the text to convert to Markdown (e.g., in another browser tab)
  2. Copy it to the clipboard (Ctrl+C, or ⌘+C on Mac)
  3. Paste it into this window (Ctrl+V, or ⌘+V on Mac)
  4. The converted Markdown will appear!

The conversion is carried out by to-markdown, a Markdown converter written in JavaScript and running locally in the browser.

The “to-markdown” I did already know (see A few HTML to Markdown converters written in javascript, Python, Ruby, PHP and C#) but has been renamed from [Wayback/Archive] GitHub – domchristie/to-markdown: An HTML to Markdown converter written in JavaScript into then “turndown” repository below.

More links:

Read the rest of this entry »

Posted in Development, HTML, JavaScript/ECMAScript, Lightweight markup language, MarkDown, Scripting, Software Development, Web Development | Leave a Comment »

Fixing the Google Calendar item editor CSS so the title 40% of my window width

Posted by jpluimers on 2024/10/08

When working on larger screens, I am always amazed at how little window estate most web sites actually use.

For sites that just try to look nice that is not so much or a problem, but for productivity sites it is.

The go-to solution for this is to manually modify the CSS. This can often be a pain because the CSS is either deeply nested or – even worse – uses semi-random HTML class attribute values.

This post is a reminder to myself to check if the below CSS modification in my Stylus library still works (gist link is at the bottom of this post):

Read the rest of this entry »

Posted in CSS, HTML, HTML5, Software Development, Web Development | Leave a Comment »

One cautionary thing with C programming: the cost of macro expansion

Posted by jpluimers on 2024/10/03

The result C macros having become more lenient on the types they expect, is that they can become very large expansions. This not only causes long expanded code lines, but also

This shows you some examples:

[Wayback/Archive] Lorenzo Stoakes on social.kernel.org: For those interested in the ‘combinatorial explosion of min()/max() macro’ thing slowing down kernel builds, witness the horrors :))

[Wayback/Archive] Re: [PATCH 0/7] minmax: reduce compilation time – Linus Torvalds

Read the rest of this entry »

Posted in C, Development, Software Development | Leave a Comment »

Unicode spaces (not just en and em, but also em fractions 1/2, 1/3, 1/4, 1/6, 1/5, 4/18 and remarks)

Posted by jpluimers on 2024/10/03

For my link archive (please check the page as by now the table might have changed from what I quote below) [Wayback/Archive] Unicode spaces and the WordPress classic editor might have mangled it.

I like the table as it embeds the spaces between foo and bar so it easy to copy paste them to code or documentation.

Read the rest of this entry »

Posted in Development, Encoding, Software Development, Unicode | Leave a Comment »

The 2019 Ron Jeffries’ Post (Extreme Programming, Agile Manifesto) “Story Points Revisited”

Posted by jpluimers on 2024/10/02

Back when my life was in turmoil, lots of interesting things were posted. In the aftermath, I try to catch up with them at a reasonable pace.

This was one by Ron Jeffries (Extreme Programming, Agile Manifesto) blog post [Wayback/Archive] Story Points Revisited.

It is one of the many posts over the last decade or so that tries to make people aware that being agile, or doing extreme programming is vastly different from holding onto the agile process dogmas introduced over the last 2+ decades.

The thing is: these dogmas are exactly why extreme programming and the agile manifesto came into place: blindly following rules is not going to get you anywhere.

Figuring out how your organisation works, then step by step figuring out which parts of extreme programming or agile manifesto fit best for improving your work, implementing them and looping back while keeping a close eye on which practices still work best is the way to go.

Jeffries appologised for sort of having coined the term “story points” (which come from “ideal days”).

Read the rest of this entry »

Posted in Agile, Development, Extreme Programming (X), Software Development | Leave a Comment »

Ian Brown: “Tired: “code generation” Wired…” – Mastodon

Posted by jpluimers on 2024/10/01

The term “prompt engineer” actually everything about programming that programming is about: it’s just trading a known output language with cleanly defined rules for an unknown country that assembles pieces of text based on statistics.

[Wayback/Archive] Ian Brown ☑️: “Tired: “code generation” Wired…” – Mastodon

Tired: “code generation”
Wired: “software-defined software”

--jeroen

Posted in AI and ML; Artificial Intelligence & Machine Learning, Development, LLM, Software Development | Leave a Comment »

Reminder to self write a JavaScript NoDrives encoder/decoder on a web-page

Posted by jpluimers on 2024/10/01

A long time ago, I wrote about How to hide an entire drive from prying eyes on Windows 10 | Windows Central.

The easiest way is still to add/modify a NoDrives value in the Registry, but regrettably [WayBackNT Drive Calculator – The ‘NoDrives’ Registry Key Value Calculator is down (it was a server-side solution, so the WayBack Machine link does display a page, but the calculator does not function).

My use case is that I have an existing NoDrives value that I want to update (as there have been one or more drive letters added/changed).

Read the rest of this entry »

Posted in Development, HTML, HTML5, JavaScript/ECMAScript, Scripting, Software Development, Web Development | Leave a Comment »

What’s inside the QR code menu at this cafe? – by peabee

Posted by jpluimers on 2024/09/27

This is why I do not trust ordering via QR-code: you never know how good (or usually bad, often even non-existent) their security is.

[Wayback/Archive] What’s inside the QR code menu at this cafe? – by peabee is a really bad example about Google backed DotPe: they have zero-auth and by now have rated limited API access by IP address.

I went to a cafe near my home. I sat down and scanned the QR code on the table. It took me to a website displaying the cafe’s menu. It asked me for my name and Whatsapp mobile number. I entered the details and placed the order.

In 5 mins my order arrived at the table. There was no OTP verification, and no one came to confirm the order. Is this what the peak ordering experience looks like?

It was a slow workday, and I thought I might as well open this QR code website on my laptop and have a quick look under the hood. Maybe I should’ve just made my own coffee and stayed home because I didn’t realize I was opening a can of worms.

This kind of zero-auth is not infrequent: the Panels API and CDN were wide-open too: [Wayback/Archive] https://storage.googleapis.com/panels-api/data/20240916/media-1a-i-p~s

Read the rest of this entry »

Posted in Authentication, Development, Infosec (Information Security), LifeHacker, Phishing, Power User, Security, Software Development | Tagged: | Leave a Comment »

Do Not Stare: protip: when referring to your favourite programming language’s features

Posted by jpluimers on 2024/09/26

Cool idea: [Wayback/Archive] Do Not Stare: protip: when referring to your favourite programming language’s features

protip: when referring to your favourite programming language’s features, call them spells instead to sound more mysterious and cool.
👎 “memory safety feature”
👍 “memory safety spell”

--jeroen

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

When you broke code, finding back where it got broken is easier if you have small change increment (i.e. bisection and binary tree search)

Posted by jpluimers on 2024/09/26

A while ago [Wayback/Archive] b0rk (Julia Evans [Wayback/Archive) wrote an interesting Tweet on finding back where you broke code of which the OCR text reads like this:

strategy: change working code into broken code

If I have a working version of the program, I like to:

  1. go back to the working code
  2. slowly start changing it to be more like my broken code
  3. test if it’s still working after every single tiny change
·      ⬊˙˙⸳              OH THAT’S WHAT BROKE IT!!!

I like this because it puts me back on solid ground: with every change make that DOESN’T cause the bug to come back, I know that wasn’t the problem.

by JULIA EVANS @bork wizardzines.com

This is similar (her arrows were of varying length) to using a binary search algorithm hunting for where the code was broken using bisection: repeatedly halving your search space to quickly zoom into the problem.

Another important aspect is that small commits while fiddling to solve an issue can help you determine what small commit was actually solving the issue.

Read the rest of this entry »

Posted in Algorithms, Conference Topics, Conferences, Development, DVCS - Distributed Version Control, Event, git, Mercurial/Hg, Ruby, Software Development, Source Code Management, Versioning | Leave a Comment »