Tux Machines

Programming Leftovers

Posted by Roy Schestowitz on Dec 12, 2023

today's leftovers
Bad NEWS, Emacs, and Why Emacs

Nicholas Tietz-Sokolsky ☛ Insights and questions from the original waterfall paper

↺ Insights and questions from the original waterfall paper
The waterfall model is probably the most reviled methodology in software engineering. This methodology was first described in a 1970 paper by Dr. Winston Royce. This paper didn't call it waterfall, nor did it endorse the technique, and the paper contains a lot of good insights and raises some interesting questions. Let's take a look at some of those.

MaskRay ☛ Clang -Wunused-command-line-argument

↺ Clang -Wunused-command-line-argument
clangDriver is the library implementing the compiler driver for Clang. It utilitizes LLVMOption to process command line options. As options are processed when required, as opposed to use a large switch, Clang gets the ability to detect unused options straightforwardly.

Bryce Wray ☛ Testing, testing: now with version control

↺ Testing, testing: now with version control
My recent spate of browser-hopping while trying to base each such choice on The Data™ has, of course, required gathering data. And, because the world of browsers involves frequent changes, that’s become an ongoing task. So I decided to version-control it and put the results out there for all to see.

Perl / Raku

Perl ☛ Perl Advent Calendar 2023: Santa's Helpers' Helpers

↺ Perl Advent Calendar 2023: Santa's Helpers' Helpers
The new North Pole Application Group, as they dubbed themselves, quickly decided to build Santa's new database manager with Perl, using Dancer2, DBIx::Class, and PostgreSQL, finding them quick and easy to use, and scalable to the size that the boss-man needed. A couple of clever elves worked with Santa to find a place to host their new application, another small group started working on the UI, a couple of grumpy older elves took up the job of testing, and Otto found himself leading a team to design the database schema, and give the UI team the tools they needed to access it.

Perl ☛ Perl Advent Calendar 2023: My Top 7 Perl New Features

↺ Perl Advent Calendar 2023: My Top 7 Perl New Features
For each version of Perl, I update my book Perl New Features. Perl v5.10 has a big change in perl development where we started to get new syntax instead of making old syntax adapt to the new world (like making things Unicode).
There are so many features that I could choose from, but I looked back at those I've been using for the past year, and which ones I'd fight for in a code review. These aren't the most clever or groundbreaking features, but they are the ones that I'm consistently using.

Rakulang ☛ Day 11 – Networks Roasting on an Open Fire, Part 2: Axes to Grind

↺ Day 11 – Networks Roasting on an Open Fire, Part 2: Axes to Grind
This is over-minimalist; a user couldn’t even tell the scale of the latency measurements. It’s not at all obvious whether this is a fast or slow connection, and whether the jitter in the results is something to worry about.

Rakulang ☛ Day 12 – Perspectives on RakuDoc Version 2

↺ Day 12 – Perspectives on RakuDoc Version 2
This project started with the modest aim of documenting parts of Rakudoc V1 (what used to be called POD6 that had been specified, but not included in the original documentation.
Except … some parts of the specification had not been implemented in the Pod::To::HTML renderer. And some parts were outdated. So a little bit of trimming was needed.

Python

James Bennett ☛ Raise the right exceptions

↺ Raise the right exceptions
So we can check the arguments and raise exceptions if they’re wrong. Which then raises the question of which exception(s) to raise, and that’s the real tip I want to get across today. The short answer is: TypeError for the case of a non-numeric argument, ValueError for the case of divisor=0.
gemini.tuxmachines.org