[Article] Beige Buttons

 Back before PCs were black, they were beige. And even further back, they’d have not only “Reset” and “Power” buttons, but also a “Turbo” button.

I’m not here to tell you what it did1. No, I’m here to show you how to re-live those glory days with a Turbo button of your very own, implemented as a reusable Web Component that you can install on your very own website:

Placeholder image showing beige buttons - reset and turbo - on a PC case.
Go on, press the Turbo button and see what happens.
(Don’t press the Reset button; other people are using this website!)

If you’d like some beige buttons of your own, you can get them at Beige-Buttons.DanQ.dev. Two lines of code and you can pop them on any website you like. Also, it’s open-source under the Unlicense so you can take it, break it, or do what you like with it.

I’ve been slumming it in some Web Revivalist circles lately, and it might show. Best Resolution (with all its 88×31s2), which I launched last month, for example.

You might anticipate seeing more retro fun-and-weird going on here. You might be right.

Close-up photo of a computer with reset and turbo buttons in the style mirrored by my component.
This photo was my primary inspiration for the design of these buttons. I’m pretty sure I had a case of this design once! This photo courtesy Rainer Knäpper, used under the Free Art License.

Now… be honest – how many of you pressed the “reset” button even though you were told not to?

Footnotes

1 If you know, you know. And if you don’t, then take a look at the website for my new web component, which has an “about” section.

2 I guess that’s another “if you know, you know”, but at least you’ll get fewer conflicting answers if you search for an explanation than you will if you try to understand the turbo button.

🦸 You're my hero! (For using RSS to follow my blog.) 🥇

Articles – Dan Q

17 Nov 2025 at 19:34

[Article] How I Learned the Pythagorean Theorem

 The younger child and I were talking about maths on the school run this morning, and today’s topic was geometry. I was pleased to discover that he’s already got a reasonable comprehension of the Pythagorean Theorem1: I was telling him that I was about his age when I first came across it, but in my case I first had a practical, rather than theoretical, impetus to learn it.

It was the 1980s, and I was teaching myself Dr. Logo, Digital Research‘s implementation of the Logo programming language (possibly from this book). One day, I was writing a program to draw an indoor scene, including a window through which a mountain would be visible. My aim was to produce something like this:

Turtle-graphics illustration of a yellow window made of four rectangular quarters, with a triangular mountain peak visible through it with its peak at the centre of the window.
All of these graphics were made using my own 2019 implementation of Logo, TRRTL.COM: click on any graphic to continue drawing!

My window was 300 “steps”2 tall by 200 steps wide and bisected in both directions when I came to make my first attempt at the mountain.

And so, naively, starting from the lower-left, I thought I’d need some code like this:

RIGHT 45
FORWARD 100
RIGHT 90
FORWARD 100  

But what I ended up with was this:

An attempt to draw the mountain results in it being too short: its peak doesn't reach half-way, and it ends before the far side of the window.
Hypotenuse? More like need-another-try-potenuse.

I instantly realised my mistake: of course the sides of the mountain would need to be longer so that the peak would reach the mid-point of the window and the far side would hit its far corner. But how much longer ought it to be.

I intuited that the number I’d be looking for must be greater than 100 but less than 250: these were, logically, the bounds I was working within. 100 would be correct if my line were horizontal (a “flat” mountain?), and 250 was long enough to go the “long way” to the centrepoint of the window (100 along, and 150 up). So I took a guess at 150 and… it was pretty close… but still wrong:

This time the mountain "overshoots" slightly: its peak is too far over and it stretches beyond the window frame.
I remember being confused and frustrated that the result was so close but still wrong. The reason, of course, is that the relationship between the lengths of the sides of a triangle don’t scale in a 1:1 way, but this was the first time I found myself having to think about why.

So I found my mother and asked her what I was doing wrong. I’m sure it must have delighted her to dust-off some rarely-accessed knowledge from her own school years and teach me about Pythagoras’!

The correct answer, of course, is given by:

1002+1002
I so rarely get to use MathML that I had to look up the syntax.

The answer, therefore, is… 141.421 (to three decimal places). So I rounded to 141 and my diagram worked!3

What made this maths lesson from my mother so memorable was that it fed a tangible goal. I had something I wanted to achieve, and I learned the maths that I needed to get there. And now it’s impermeably etched onto my brain.

I learned the quadratic equation formula and how to perform algebraic integration by rote, and I guarantee that it’s less well-established in my long-term memory than, say, the sine and cosine rules or how to solve a simultaneous equation because I’ve more-often needed to do those things outside of the classroom!

So I guess the lesson is that I should be trying to keep an eye out for practical applications of maths that I can share with my kids. Real problems that are interesting to solve, to help build the memorable grounding that latter supports the more-challenging and intangible abstract maths that they may wish to pursue later.

Both kids are sharp young mathematicians, and the younger one seems especially to enjoy it, so feeding that passion feels well-worthwhile. Perhaps I should show them TRRTL.COM so they can try their hand at Logo!

Footnotes

1 You know the one: the square of the triangle’s hypotenuse is equal to the sum of the squares of the other two sides. You could conceivably know it by some other mnemonic, but the essence is that if you know the lengths of two sides of any right-angled triangle, you can derive the length of the third with some moderately-simple arithmetic.

2 Just one way that Logo is/was a cute programming language was its use of “steps” – as in, turtle-steps – to measure distances. You might approximate them as pixels, but a “step” has meaning even for lines that don’t map linearly to pixels because they’re at wonky angles, for example.

3 I’d later become unstuck by rounding, while trying to make a more-complex diagram with a zig-zag pattern running along a ribbon: a small rounding error became compounded over a long time and lead to me being a couple of pixels off where I intended. But that’s another story.

🤘 You're subscribed to DanQ.me using the RSS feed. You rock! 🎸

Articles – Dan Q

13 Nov 2025 at 11:52



Refresh complete

ReloadX
Home
(94) All feeds

Last 24 hours
Download OPML
*
Annie
*
Articles – Dan Q
*
Baty.net posts
bgfay
*
Bix Dot Blog
*
Brandon's Journal
Chris McLeod's blog
*
Colin Devroe
*
Colin Walker – Daily Feed
Content on Kwon.nyc
Crazy Stupid Tech
*
daverupert.com
*
Human Stuff from Lisa Olivera
*
jabel
James Van Dyne
*
Jim Nielsen's Blog
Jo's Blog
Kev Quirk
*
Manton Reece
*
Manu's Feed
*
Notes – Dan Q
On my Om
*
QC RSS
*
rebeccatoh.co
*
Rhoneisms
*
Robert Birming
*
Scripting News for email
*
Simon Collison | Articles & Stream
strandlines
*
The Torment Nexus
thejaymo

About Reader


Reader is a public/private RSS & Atom feed reader.


The page is publicly available but all admin and post actions are gated behind login checks. Anyone is welcome to come and have a look at what feeds are listed — the posts visible will be everything within the last week and be unaffected by my read/unread status.


Reader currently updates every six hours.


Close

Search




x
Colin Walker Colin Walker colin@colinwalker.blog