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

Learning github actions by creating a repository with a dynamic README.md for your profile information

Posted by jpluimers on 2023/01/23

TL;DR:

  1. Create a GitHub repository with the same name as your profile name
  2. Add a README.md with Markdown describing your profile
  3. In the README.md, add begin/end HTML comment markers <!-- and --> for various types of dynamic content
  4. In the Actions of this repository, add Workflows for each of the set comment markers that use them to refresh that part of the content using GitHub Actions learning some continuous integration/continuousc deployment (CI/CD) on the fly.

You can spice this up with all kinds of badges to make it look pretty.

HTML Comments in Markdown?

Yes, it is indeed odd to have HTML comments in Markdown where you could just as easy use Markdown comments, but hey: I didn’t define the way this works.

A Markdown comment looks like this:

(empty line)
[comment]: # (This actually is the most platform independent comment)

For explanation on why/how this works, see the below two great StackOverflow answers in this order:

  1. [Wayback/Archive] syntax – Comments in Markdown: concise example – Stack Overflow by [Wayback/Archive] Magnus.
  2. [Wayback/Archive] syntax – Comments in Markdown: explainer – Stack Overflow by [Wayback/Archive] User Nick Volynkin – Stack Overflow

Howto

The below two videos (also embedded below the signature) show how to do this. Thanks [Archive] Jesse Hall 🦸‍♂️ #vsCodeHero (@codeSTACKr) | Twitter for creating them!

  1. [Wayback/Archive] Next Level GitHub Profile README (NEW) | How To Create An Amazing Profile ReadMe With GitHub Actions – YouTube
  2. [Wayback/Archive] UPDATE: Next Level GitHub Profile README (NEW) | GitHub Actions | Vercel | Spotify – YouTube

The description of the videos contain all sorts of links to sites and underlying repositories for:

  • icons
  • shields
  • badges
  • youtube/blog/RSS and other feed actions
  • profile examples

You can see the effects at [Wayback/Archive] codeSTACKr/codeSTACKr in the [Wayback/Archive] raw README.md sources.

Enough to get you some experimentation (:

Watch your commits

One of the drawbacks of mixing manual and automated changes to a repository, is that the automated changes can cause a lot of commits.

This is OK as long as the automated changes add value to the changed content.

In this regard, having stable RSS feeds is important, and YouTube is kind of bad at this when you look at [Wayback/Archive] History for README.md – codeSTACKr/codeSTACKr: videos changing order or popping in/out of the last 5 is kind of annoying.

–jeroen

Read the rest of this entry »

Posted in Development, DVCS - Distributed Version Control, git, GitHub, GitHub Actions, Lightweight markup language, MarkDown, Power User, Source Code Management | Leave a Comment »

Google Cloud Shell: tools, languages and “safe mode”

Posted by jpluimers on 2023/01/19

After publishing Free Linux cloud shell for Gmail users – shell in the browser that works in all locations I’ve been so far, the Google Cloud Shell got extended quite a bit.

There is now [Wayback/Archive] Safe Mode (which skips initialisation scripts):

If there’s a problem in your .bashrc or .tmux.conf files, Cloud Shell immediately close after connection. To resolve this, open Cloud Shell in safe mode by appending cloudshellsafemode=true to the URL. This restarts your Cloud Shell instance and logs you in as root, allowing you to fix any issues in the files.

To permanently delete all files in your home directory and restore your Cloud Shell home directory to a clean state, you can reset your Cloud Shell VM.

And there is support for way more [Wayback/Archive] tools and languages:

Read the rest of this entry »

Posted in .NET, C#, Cloud, Development, Go (golang), Google, GoogleCloudShell, Infrastructure, Java, Java Platform, JavaScript/ECMAScript, Node.js, Perl, PHP, Power User, Python, Ruby, Scripting, Software Development | Leave a Comment »

veltman/clmystery: A command-line murder mystery; an interactive tutorial for learning the *n*x command-line

Posted by jpluimers on 2023/01/18

Since I’m on a series of interactive tutorial sites, yesterday’s The SQL Murder Mystery made me bump into a project by [Archive] Noah Veltman (@veltman) / Twitter: [Wayback/Archive] veltman/clmystery: A command-line murder mystery

There’s been a murder in Terminal City, and TCPD needs your help.

To figure out whodunit, you need access to a command line.

Once you’re ready, clone this repo, or download it as a zip file.

Open a Terminal, go to the location of the files, and start by reading the file ‘instructions’.

I did a quick [Archive] clmystery – Twitter Search / Twitter and found the first ever Twitter mention to be this one from 2013 (boy, have I been living under a stone <g>): [Archive] RoR Group on Twitter: “A command-line murder mystery (clmystery) …” / Twitter.

Cool things:

–jeroen

Posted in *nix, *nix-tools, Apple, Development, Interactive Tutorials, Learning/Teaching, LifeHacker, Linux, Mac OS X / OS X / MacOS, Power User, Software Development, Terminal | 2 Comments »

The SQL Murder Mystery

Posted by jpluimers on 2023/01/17

After last week’s posts PostgreSQL Exercises and SQLZOO: Interactive SQL tutorials (no login required), I did a Twitter search:

[Archive] pgexercises.com – Twitter Search / Twitter.

This got me to [Wayback/Archive] The SQL Murder Mystery (which is fun!).

I got there via [Archive] Lætitia on Twitter: “@nthonynowocien I’d say pgexercises is a good start for SQL pgexercises.com Even though, the last exercises are not beginner level. The SQL murder mystery is more fun mystery.knightlab.com” / Twitter

–jeroen

Posted in Conference Topics, Conferences, Database Development, Development, Event, Software Development, SQL | 1 Comment »

SQLZOO: Interactive SQL tutorials (no login required)

Posted by jpluimers on 2023/01/12

[Wayback/Archive] SQLZOO has an extensive set of interactive tutorials spread over these topics:

  • basic SQL tutorials gradually getting more difficult (including some Covid-19 materials)
  • SQL “how to” style questions
  • More involved examples from easy via medium to hard
  • A White Christmas challenge

So the above is kind of a continuation of my series of games to learn software and database development PostgreSQL Exercises.

I found it via the first reaction to [Archive] Steve Polito on Twitter: “If you’re like me and want to level up your SQL game, give PostgreSQL Exercises a try. …” / Twitter (which initiated yesterday’s post):

[Archive] Loumarven Payot on Twitter: “@stevepolitodsgn I’ve also tried sqlzoo.net. Almost done with it. Next on my list are dataschool.com and selectstarsql.com” / Twitter

Which means I’ve more sites to try.

These will be the next: [Wayback/Archive] Learn SQL: Interactive SQL Book, from dataschool and [Wayback/Archive] Select Star SQL (which is an interactive book that I should be able to finish in a day full of reading and experimenting).

–jeroen

Posted in Conference Topics, Conferences, Database Development, Development, Event, Software Development, SQL | 1 Comment »

PostgreSQL Exercises

Posted by jpluimers on 2023/01/11

[Wayback/Archive] PostgreSQL Exercises

This site was born when I noticed that there’s a load of material out there to help people learn about SQL, but not a great deal to make it easy to learn by doing. PGExercises provides a series of questions and explanations built on a single, simple dataset.

It was funny, as I bummped into right after writing the article Enabling GitHub pages to a HTML or markdown GitHub project is dead easy: Delphi deadlockempire is now hosted on github.io (which reached the top of the blog queue yesterday).

After reading the [Wayback/Archive] PostgreSQL Exercises: Getting Started, start the exercises at [Wayback/Archive] PostgreSQL exercises: basic exercises.

There is no login needed, which I really like.

Note that some of the assignments are hard, and can have multiple results, see for instance [Archive] Fahru on Twitter: “this: … I FINALLY completed it, and any win is worth telling🥳 took me like one hour on and off. The “more than 30$” requirement is bizarre 😂 a bit different than the official answer so I’m digging up more about this learned a heck ton, worth the time! ” / Twitter

Via: [Archive] Steve Polito on Twitter: “If you’re like me and want to level up your SQL game, give PostgreSQL Exercises a try. …” / Twitter

–jeroen

Posted in Database Development, Development, PostgreSQL, Software Development, SQL | 2 Comments »

Enabling GitHub pages to a HTML or markdown GitHub project is dead easy: Delphi deadlockempire is now hosted on github.io

Posted by jpluimers on 2023/01/10

A while ago I wrote about Setting up a GitHub project so it is served over https as a github.io and a custom subdomain.

Doing the full “host on your custom domain” route was a big tougher than I hoped for, so I totally forgot how easy it is to convert an existing HTML or markdown documentation repository to use GitHub pages without a custom domain.

I needed it for the Delphi version of the DeadLockEmpire (see links below, originally it was an interactive tutorial game focusing on the C# language and .NET runtime), as I am trying to get as much as my stuff published and hosted in a manner that will outlive me (I still have a pretty high chance of the rectum cancer metastases returning).

Enabling GitHub Pages on your repository is almost as easy as hosting a page through raw.githack.com (where I already hosted raw.githack.com/jpluimers/deadlockempire.github.io/feature/Delphi-language-and-Delphi-RTL/index.html as raw.githack.com/jpluimers/deadlockempire.github.io/feature/Delphi-language-and-Delphi-RTL/index.html and rawcdn.githack.com/jpluimers/deadlockempire.github.io/feature/Delphi-language-and-Delphi-RTL/index.html).

This is how easy it was to get it hosted as [Wayback/Archive] jpluimers.github.io/deadlockempire.github.io:

  1. In my [Wayback/Archive] jpluimers/deadlockempire.github.io: The Deadlock Empire: Slay dragons, learn concurrency! repository, go to the Settings tab, then click on Pages:
    DeadLockEmpire Settings tab, Pages configuration None

    DeadLockEmpire Settings tab, Pages configuration None.

    Here you see “None” as value for the branch to be published as GitHub Pages.

  2. Here I have chosen the Branch “feature/Delphi-language-and-Delphi-RTL” to be published, and am about to press “Save” (full screenshot below):
    DeadLockEmpire Pages selecting the correct branch

    DeadLockEmpire Pages selecting the correct branch

  3. After pressing “Save“, the site gets published (it takes about a minute for that to complete) at [Wayback/Archive] jpluimers.github.io/deadlockempire.github.io:
    DeadLockEmpire Pages the correct branch has been saved

    DeadLockEmpire Pages the correct branch has been saved which will automagically publish it.

That was it. No more steps.

Each new commit in the selected branch will auto-publish as well.

Related DeadLockEmpire posts

  1. 2016 – If you thought you could do multi-threading, then play “The Deadlock Empire” games.
  2. 2017 – ThreadBarrier/ThreadBarrier.pas at master · lordcrc/ThreadBarrier
  3. 2020 – Davidlohr Bueso on Twitter: A programmer had a problem. He thought to himself, “I know, I’ll solve it with threads!”. has Now problems. two he
  4. [WayBack] One second code: Do YOU know how much your computer can do in a second? is a quiz version of the [WayBack] Numbers Every Programmer Should Know By Year. [WayBack] About this game revealed…Source: One second code: Do YOU know how much your computer can do in a second? « The Wiert Corner – irregular stream of stuff

Read the rest of this entry »

Posted in .NET, About, C#, Conference Topics, Conferences, Delphi, Development, Event, Personal, Software Development, Web Development | 1 Comment »

2021 Hackaday Remoticon – links to conference, playbacks and some slide decks

Posted by jpluimers on 2023/01/04

Another remote conference I missed while recovering from rectum cancer treatment, but luckily the playbacks are on YouTube and some slide decks are at Google Drive.

Via: [Archive] Uri Shaked on Twitter: “My talk on @hackaday Remoticon starting now Reverse Engineering the ESP32 WiFi Live stream: … “ / [Archive] Jeroen Wiert Pluimers on Twitter: “Dang. I copied that one out of the description. All the timestamps there are corrupted as YouTube measures them in minutes:seconds but @hackaday posted them as hours:minutes (which are off by minutes anyway) starting at 01:56:30. This is the correct one: … “

Links:

  • Web site at [Wayback/Archive] 2021 Hackaday Remoticon
  • Videos at [Wayback/Archive] HACKADAY – YouTube:
    • Day 1: [Wayback/Archive] 2021 Hackaday Remoticon: Friday – YouTube

      Approximate hour:minute time stamps as published for Friday

      They are usually at least minutes off; substract 11:00 to get the rough hour:minute index into the video, then scroll from there.

      • 11:00 Opening Remarks
      • 11:10 Keynote – Elecia White: Map Files and Other Buried Treasures
      • 12:10 Maurits Fennis: Hack for the Planet: Reverse Engineering Embedded Systems to Reduce E-Waste
      • 13:00 Matt Venn: Open Source ASICs – A Year in Perspective
      • 13:35 Hal Rodriguez and Sahrye Cohen: Conductive Melody: a Tech Couture Instrument
      • 14:10 Jay Bowles: A Dip Into The Plasmaverse
      • 15:00 Voja Antonic: Become a Hardware Expert in 40 Minutes
      • 15:50 Sergiy Nesterenko: Don’t Flip My Bits: Electronics in Spaaaace
      • 16:25 Jeroen Domburg: Rickrolling Buddha: A Deep Dive in Reverse Engineering and Thoroughly Pwning an Unknown Chip
      • 17:15 Lewin Day: Hacker Trivia (Stream will automatically redirect to this one: [Wayback/Archive] youtu.be/uRpUdQi31tg )
      • 18:00 Bring-a-Hack on Gather Town platform (details on joining sent to ticket holders and on the Discord server)
    • Day 2: [Wayback/Archive] 2021 Hackaday Remoticon: Saturday – YouTube

      Approximate hour:minute time stamps as published for Saturday

      They are usually at least minutes off; substract 10:00 to get the rough hour:minute index into the video, then scroll from there.

      • 10:00 Opening Remarks
      • 10:10 Keynote – Keith Thorne: LIGO: The Most Sensitive Instrument Humans Ever Created Will Unfold the Mysteries of Gravitational Waves
      • 11:10 Arsenijs Picugins: Laptop-Be-Done
      • 12:00 Uri Shaked: Reverse Engineering the ESP32 WiFi
      • 12:35 Hash Salehi: Smart Meter Hacking
      • 13:10 Jay Doscher: Getting Started With and Outgrowing Tinkercad
      • 14:00 Joey Castillo: Teaching An Old LCD New Tricks
      • 14:35 Colin O’Flynn: Upskilling your Hardware Security Work
      • 15:10 Rob Weinstein: Patently Obvious – Reverse Engineering a 45 Year Old Patent into a Fully-Functional HP-35 Replica
      • 16:00 Debra Ansell: Form is Function: Modular PCB Building Blocks
      • 16:35 Vaibhav Chhabra: M19 Initiative – A Case of Open Innovation & Distributed Manufacturing at Scale
      • 17:25 Keynote – Jeremy Fielding: Building Hardware that Moves: the Fundamentals that Everyone Should Know
      • 18:25 Hackaday Prize Ceremony
      • 19:25 Closing Remarks
      • 19:35 DJ Jackalope: Live Set (listen/watch on Twitch, chat with everyone on discord)

–jeroen

Posted in Conferences, Development, ESP32, Event, Hardware Development, Remoticon, Software Development | Leave a Comment »

Some QR code generators on github.io

Posted by jpluimers on 2023/01/03

QR codes often are the quickest way to copy/paste some data to a smartphone.

So, via [Wayback/Archive] generate qr code site:github.io – Google Search, I found these two (the first is based on the JavaScript source in second, but has QR codes with larger blocks and is therefore easier to scan):

  1. [Wayback/Archive] QR Code Generator
  2. [Wayback/Archive] QR Code Generator

–jeroen

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

Chris Bensen on Raspberry Pi and clusters

Posted by jpluimers on 2022/12/29

Oracle’s Pi Supercomputer

Oracle’s Pi Supercomputer ; click on the image for a larger version.

In 2019 ans 2020, [Archive] Chris Bensen and his [Archive] Oracle Groundbreakers team built a really large Raspberry Pi cluster of more than 1k pies, all network booting to become a cluster. It was for instance covered in the [Wayback/Archive] Building the World’s Largest Raspberry Pi Cluster – DZone IoT.

On his [Wayback/Archive] personal blog, he wrote a few posts like [Wayback/Archive] Chris Bensen: Raspberry Pi Overlay Root Filesystem and [Wayback/Archive] Chris Bensen: Get MAC Address for a Pi Cluster.

It made me also bump into [Wayback/Archive] Building the world’s largest Raspberry Pi cluster early 2020,

Since that wast right after the start of my rectum cancer treatment which lasted longer and, because of I got metastases a few months after radiation treatment, required more treatments than anticipated, I put a note in my bog drafts and kind of lost track.

So I was glad that in fall 2021, I bumped into the draft and found an almost year old post [Wayback/Archive] Chris Bensen: All Raspberry Pi Super Computer Posts in One Spot which is an index in all the blog posts and videos that Chris and his team produced on this project.

I then also learned the cluster had been shown on [Wayback/Archive] Oracle OpenWorld 2019, Breakthrough Starts Here and was covered in the [Archive] Top 10 Raspberry Pi Projects of 2019 | Tom’s Hardware (where I got the [Wayback/Archive] Oracle World 2019 having the 1k+ node Raspberry Pi cluster on display picture shown on the right from).

Read the rest of this entry »

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