The @JKloss4 on rails

Travel

I forgot to respond to this charge by my dear friend Jim Kloss on The Bird site a last Saturday:

P.S. With all respect to @Rubenerd who can quickly point out both historic and wildly futuristic attributes of rails. Here in Philadelphia, the streets are littered with old rusted and abandoned rails that harken back to the 19th century but, sadly, remain unused today.

Alas, today I spend far more time thinking about those rails, or these rails, than these parallel iron and steel conveyance enablers! Conveyence enablers?

Sydney’s Covid lockdown did get me thinking though: this is probably among the longest stretches of my life where I haven’t travelled on a train. Including Clara’s and my east coast US trip a few years ago, when we met Esther, Jim, and Beta in their beautiful city. Boston is the next US city on my list, but I’d love to spend more time exploring the history of Philadelphia.


Australian swimmer quits, and I’m not surprised

Thoughts

Last month to the day, The Guardian Australia and ABC News reported on a tweet by Australian swimming medallist Maddie Groves:

Let this be a lesson to all misogynistic perverts in sport and their boot lickers - You can no longer exploit young women and girls, body shame or medically gaslight them and then expect them to represent you so you can earn your annual bonus. Time’s UP.

It’s maddening to see it come to this. The fact it doesn’t come as a surprise to most of us is even more telling. Abuse in sport at this stage is akin to a religious organisation betraying the trust of their parishioners and burying sexual abuse reports. I’m not sure whether I’m angrier that it happened, or that it’s become normalised.

I think I mentioned this years ago, but I briefly did some volunteer technical work in Singapore for an aquatic team and community centre one school holidays. Scorekeeping, web hosting, provisioning laptops, etc. It’s why I know so much about FINA and diving despite having the aquatic abilities of a stone. Not pumice, one of those dense ones. Even there I remember being aware of a few people who routinely made inappropriate comments. It was against both genders, but suffice to say you and I know who did the most of it, and who most of their targets were.

Amp that dynamic up to eleven, and throw in the steep power imbalance at something national like Swimming Australia, and it sends chills up my spine.

But here’s the thing, and the reason I keep posting stories like this now. I wasn’t an ally during those times. I shouldn’t have kept it to myself, it was on people like us to channel the awkwardness of those situations into calling the men out who did it. That’s the only way we’re going to affect change.


Katsushika Hokusai travel portrait fig

Anime

Press photos of Katsushika Hokusai’s travel portait fig version showing comfy clothes and atmosphere.

Once again I’m being tempted by a dust collector, this time from everyone’s favourite Foreigner-class servant from Fate/Grand Order! I’ve been hovering over a pre-order button for the last five minutes, and showing a tremendous amount of self-restraint… if I say so myself.

From the popular smartphone game “Fate/Grand Order” comes a scale figure of the Foreigner class servant Katsushika Hokusai! Katsushika Hokusai has been recreated based on her Travel Portrait craft essence illustration from the game’s 3rd Anniversary. Rather than her traditional Japanese outfit, Katsushika Hokusai is wearing a more casual outfit and carrying around her sketchbooks. This look befitting of a modern artist has been faithfully recreated in figure form. Don’t miss the miniature figure of Toto-sama and the stone path themed base too!

She’s made by Phat, a company I’m not that familiar with, but then I haven’t bought a dust collector for several years now. I like that these companies have also started putting more effort into their press photos as well, rather than using that same backdrop of marble paper. That sandwich board in the right corner is adorable!

Ina from Hololive introduced me to the idea of using “comfy” to describe video streams, anime figures, games, and stories. She definitely qualifies.

She’ll be released in July 2022. Please give me the strength not to press that preorder button; I’d appreciate it.


Whatever happened to Office 4.0?

Software

I have strange interests and hangups, as those of you who’ve read this blog for any amount of time could attest. Recently I’ve been getting back into classic DOS and Windows 95 computers again while I wait for a few Commodore 128 parts. Installing Microsoft Office 4.3 Professional lead me to wonder… what happened to Office 4.0? Did it even exist? Was it a Windows NT 3.1 affair and had no prior releases in 4.x? Did they bump all the version numbers to match?

The family computer from my childhood got whatever volume-licenced kit my dad was able to get from work. For years that was Office 4.3 on a stack of 3.5-inch floppy disks, with the distributor’s name LASER emblazoned on each sticker. It was my job after prep (kindergarten in Victoria… that state is also weird) to load each disk, one by one, into the family computer to install it each time. I still hear the seeking drive heads from those two dozen disks in my dreams.

Office 4.0 and Windows for Workgroups installed in a QEMU VM

I knew about Office 4.2 Standard from reading PC Magazines my dad would bring home. This version was released without the Access database, though both had Microsoft’s Mail client. If I recall correctly, this was the first time Microsoft split out “Standard” and “Professional” SKUs to target different markets, something their marketing and sales departments would crank up to 11 by the time Vista and their three million versions were released.

This lockdown weekend I decided to go back to the source and do some reading to figure out if Office 4.0 existed. The 9th of November 1993 issue of PC Magazine indeed had an advertisement for it! It also included this line:

If you act now, you’ll also automatically get Microsoft Excel 5.0 and PowerPoint 4.0 upgrades as soon as they’re released.

This raised an eyebrow. If those versions are coming after the release of Office 4.0, were they really shipped with the same versions of Excel and PowerPoint as Office 3.0? Did they really just bundle a new version of Word and sell the entire suite again?

Advertisement showing Office 4.0 Standard

PC Magazine’s Robin Raskin wrote this in her Pipeline column in November 1993:

Microsoft beats IBM by offering not one, but two coupons. The first copies of the $750 [!! –ed] Microsoft Office will include Word for Windows 6.0, Excel 4.0, PowerPoint 3.0, and Microsoft Mail. There will also be two coupons on the box: one for Excel 5.0, which will be ready momentarily, and one for PowerPoint 4.0, which will ship early next year.

This has a whiff of antitrust, doesn’t it? If your competitors at Lotus or WordPerfect are beating you in features and performance, say you’ve got a new version coming out too, and in the meantime lock them in!

I wonder what the cause of the delay was? Did they put all their eggs into Word for Windows 6, or were Excel and PowerPoint simply not developed in time? Compatibility, OLE 2.0, and consistent interfaces were the hallmark features of the release, so maybe the Excel and PowerPoint developers ran out of time to implement them.

Now it makes sense why there was an Office 4.2 and 4.3. These versions came with Excel 5.0 and PowerPoint 4.0 that the original version of Office 4.0 was supposed to ship with. This leaves the question of what happened to Office 4.1, though scant online information suggests this was skipped.

I found a copy of 4.0 from… sources, and quickly installed it in my QEMU DOS VM. Sure enough, there were the Office 3.0 versions of PowerPoint and Excel, right alongside the newer version of Word. So weird.


Making your booleans consistent, y/y?

Software

I’m sure there’s a design methodology or formal name for what I’m about to describe, but I still see the reverse happen far too often in systems I interact with on a daily basis. It doesn’t matter how you deploy boolean values in your specification, API, application, or system as long as you apply them consistently!

This is important for all the usual reasons consistency is important, but the most critical is that it reduces chance for logical mistakes, both in comparisons within your code, and by humans who have to mentally parse what your system is presenting.

Take these attributes from an API as an example:

  • Available
  • Is_Broken
  • NotOffline

Leaving aside the inconsistent naming scheme emblematic of an old system that’s had attributes grafted on with little thought over time, what are the optimal states of these? Or asked another way, when is true good and false bad?

  • Available? True is good
  • Is_Broken? False is good
  • NotOffline? True is good

This means if I looked up the state of this record, I’d be looking for a True, False, and True to confirm optimal operation. In the words of Gwen Stefani from the mid-2000s, this shit is bananas. Or is notBananas false?

The example was obvious, but things get trickier when we start to think like a classical OOP developer with nouns, verbs, and adjectives. The temptation would be to create a spec that looks like this:

  • Available
  • Broken
  • Offline

But that has the same problem. We want something Available, that’s not Broken, and that’s not Offline. We could slap “Not” in the attribute names for the latter two, which may indeed be necessary in some circumstances. But a better solution would be:

  • Available
  • Fixed
  • Online

Thanks for letting me vent!


Acer’s antimicrobial laptop

Hardware

Acer have released a svelte new set of machines that purport to have a unique hygiene feature I haven’t seen before:

Introducing the first thin and light consumer laptop with a full-featured antimicrobial solution. The BPR & EPA compliant silver-ion antimicrobial agent runs through the surface of the chassis, keyboard, hinge, and fingerprint reader; showing a consistent [3 log5 (>99.9%)4] microbial reduction rate against a broad range of bacteria under the JIS Z 2801 & ISO 22196 test protocol.

I’ve seen tech journalists claim this is a gimmick, but I think it’s genuinely intriguing and innovative. We rest our gross palms on these things for thousands of cumulative hours, so why not?

But is it plagued with the pervasive PC Screen Syndrome?

The 14-inch Full HD IPS touchscreen display […]

Once again, this is lower density than what Apple shipped a decade ago, and a lower resolution that a phone. Come on, PC makers.


Teaching financial literacy

Thoughts

Sean Fleming wrote for the World Economic Forum’s Global Agenda site about some excellent, if surprising news out of Canada:

The usage of the terms “lory” and “lorikeet” is subjective, like the usage of “parrot” and “parakeet”. Species with longer tapering tails are generally referred to as “lorikeets”, while species with short blunt tails are generally referred to as “lories”.

That’s clearly the wrong article.

School students in the Canadian province of Ontario will soon be learning financial literacy as part of their regular curriculum.

The announcement, from the Minister of Education for Ontario, Stephen Lecce, is part of a four-year mathematics strategy, which has been created to boost young people’s chances in the workplace of the future.

The modernized curriculum also sees concepts such as interest, debt, savings, personal budgeting and price comparisons woven into maths lessons as part of an attempt to help young people manage their finances in later life.

Good! I hope this sets a trend.

I continue to be baffled by the dearth of formal financial education in school, or at least education that’s at least proportional to its importance in the real world. The HSC I did in year 12 in the mid-2000s only offered it to those who took the Business Studies elective, or the lowest mathematics stream. Earlier school years gave it but a cursory look, while we learned useful, real-world skills like algebra and integration. My friends in local Singaporean schools said their education was only mildly more useful.

But that’s only part of the issue with access to education. I assert that’s it’s even a misnomer characterising financial literacy as a mathematics subject in the first place! It’s only maths in the sense that books need to balance, and compound interest needs to be calculated, but you could make the same argument for chemistry, or any other subject that involves numbers.

Financial literacy is far more about making prudent, informed, and life-saving decisions that will affect your living standards and your future. It’s about evaluating risk and return, what to look out for, how to apply (or not) for specific “products”, and use tools responsibly and appropriately for your circumstances and ethics. You could have months of classes without even touching a calculator or learning a formula.

Then there are the practical considerations. Where do I put money I earn? How do you budget and stick with it? What is an interest rate? When does it make sense to save or invest? What investment vehicles are available? What does a credit card entail, or a car loan, or a mortgage? When can you splurge for those times in life when you’ve earned the right to, or if the unexpected happens? Why would I go with an ETF over a managed fund? What about my Singaporean CPF, or an Australian superfund, or an American 401K? What about when I get married, or divorced, or have to file insurance papers or tax returns?

Cynics claim, perhaps with more than a little projection, that schools are motivated to churn out financially illiterate students, because the entire finance industry is built upon people servicing debts rather than repaying them. They’d also point out how politicians are keen to keep the wool over people’s eyes with their dodgy dealings and misleading ads to retain power. I think these are simplistic and glib, but it’s hard to ignore the sociological impact having people enter the workforce without a working knowledge of the financial system in which they’ll be playing an unwitting part.

Granted there’s a certain amount of discipline that every student has to bring to the table to start. But the best we can do with education is arm people with the right skills and knowledge to at least have a fighting chance. I’ve seen plenty of evidence by now of well-meaning people being screwed by circumstances that could have easily been prevented or helped. Like some of the posts on this blog (hopefully not this one), it’s ridiculous.


SQL LIMIT versus FETCH FIRST ROWS

Software

I’m as jaded as the next person when I read that I’ve been doing a rudimentary task wrong this whole time. It’s clickbait churnamism of the worst kind, exploiting people’s fears and insecurities.

Did you know that you’ve been washing your hair wrong this whole time? You’re supposed to hang vertically in your shower from a bar, and let the shampoo run down your legs until it reaches your head. Then, and only then, can you rub the goop into your hair with your elbows, then rinse and repeat by jumping like this through a stream of cold water.

This is, fortunately, not one such example. The entire introduction to this post was completely pointless, just like those aforementioned news stores written by people making dubious claims as to the effectiveness of specific rudimentary activities.

I’ve long performed this SQL query on PostgreSQL, MySQL/MariaDB, and SQLite to get a few records for visual comparison:

SELECT friend FROM addresses
WHERE handle = 'screenbeard'
LIMIT 3;

Turns out, LIMIT isn’t standard ANSI SQL. Hans-Jürgen Schönig introduced me today to the concept of FETCH FIRST:

SELECT friend FROM addresses
WHERE handle = 'screenbeard'
FETCH FIRST 3 ROWS ONLY;

As Hans mentions, “this is actually the correct way to handle LIMIT.”. It works in the PostgreSQL and MariaDB servers I have handy, but SQLite doesn’t like it.

The real reason you’d use it in Postgres though is to invoke WITH TIES to handle duplicate records. Check out his post for some great examples.


Hitting random on geographic articles

Thoughts

Encyclopædias were my favourite books growing up, and little has changed as evidenced by my effort to invoke the anarchistic æ. Sometimes I like to go to a random article in my Mac OS 8.6 WorldBook CD-ROM, or Encarta on my Libretto, or Bookshelf on my Windows 95 machine, or Wikipedia on my current tower. They’ve often lead me down some delightful rabbit–holes.

This was the Wikipedia article about 1914 in the Philippines:

1914 in the Philippines details events of note that happened in the Philippines in the year 1914.

Makes sense.

Bookshelf 1995 that came with Office 95 doesn’t have a Random button, but this was the first entry, emphasis added by me:

Aachen or Aix-la-Chappelle, city (1989 est. pop. 233,000) North Rhine-Westphalia, W Germany. It is an industrial center producing textiles, machinery, and other manufacturers. Its mineral baths have been famous since Roman times.

Hadn’t the Iron Curtain fallen four years ago by the point Bookshelf 1995 came out? I am disappoint, Columbia Concise Encyclopedia.


Getting our first Covid jab

Thoughts

Clara and I got our first jab of the AstraZeneca vaccine this morning. Everyone at the Roseville Covid Vaccination Centre were professional, kind, and patient. It might go down as the least painful needle I’ve ever had, which speaks to the skill of the nurses!

If you’re in the area around the North Shore in Sydney, make an appointment today and fill out the online forms. Even your Medicare card is optional. They’ve got plenty of vaccines and booking times to go around. You’ll be helping yourself, and everyone around you. ♡

(Update: These are the worst side effects of any vaccine I’ve ever had, so I’ve set up my blog to publish from a ready-written stash for the next few days. Was it still worth it? Of course)!