Updog

#chronic pain #fatigue #HRT #music #CBD

I really enjoyed watching Winged Migration (2001). Some breathtaking footage of bird migrations all around the world. I was shocked how close some of the footage was and learned via Wikipedia that the filmmakers raised several species from birth so they would imprint on the staff and be accustomed to the ultralights and camera equipment.

Thanks to Fractal Kitty for the recommendation for IndieWeb Movie Club!

Over the weekend I made a major push on beginning restoration of the Olympia SG1 standard typewriter I picked up this past month.  One of the small issues I encountered was finding four crushed rubber bushings between the exterior typewriter shell and the main chassis at the four corners on the bottom of the machine. [caption id="attachment_55834794" align="aligncenter" width="660"]View of the back corner underneath an Olympia SG1 typewriter featuring a crushed rubber washer between the body shell and the solid steel chassis of the typewriter. It look like it's less than a millimeter thick. This black rubber bushing is so smashed you almost can't see it above the silver screw head at the bottom of the typewriter frame. The typewriter's foot has been removed from the vacant screw hole just to the left of the bushing screw to provide better visibility.[/caption] This is a common repair issue for the Olympia SM3 machines and one which can dramatically impair that typewriter's functionality after several decades. I expected this would be a common enough problem, so I searched a few fora, YouTube, and some specialty  Facebook Groups to see how others had done the replacement and find the specs for the original part. Sadly none were forthcoming. Has no one written this up before? Perhaps because the issue isn't a huge problem from a functional perspective, no one has bothered? But when you're doing a thorough restoration on a machine you plan to put into daily use, you go the extra mile. To that end, I thought I'd write up a few notes for those who encounter this in the future, particularly as I couldn't find quick sources on it the way one can for the SM3.  My crushed rubber husks (now more like a brittle, friable plastic) were approximately 16mmOD x 4mm ID x 2 mm, but I wanted to do better than guessing the appropriate replacement. Fortunately our friend Richard Polt has a downloadable .pdf copy of the Olympia Spare Parts Catalog and Price List for Standard Typewriters Model SG1 (Jan. 1, 1961 edition) from the Ames Supply Company on his website. Pulling it up very quickly provided a diagram of the appropriate part on page 12 and indicated it to be part number 34280-5x.6. Scrolling ahead to page 61, one discovers that the part is called a "spacing washer (rubber)" whose original specs are listed as 5⌀12⌀x4mm which originally listed for 11¢. On a German manufactured machine this is indicating a 5mm inner diameter, 12 mm outer diameter, and thickness of 4mm. Mechanical diagram of the parts pertaining to the body shell of the Olympia SG1. The rubber washer part number is highlighted in yellow. A quick spin over to the local Ace Hardware store and I was able to find a variety of Hillman rubber bushings on offer as potential replacements. Photo of the various specifications of about a dozen rubber bushings from a display in the hardware store. I selected Hillman part number 405784-E as the closest bushing with dimensions 1/4" overall length; 3/16" ID, 9/16" major dia.; 3/8" min. dia. and 1/8" Hd. thickness. I picked up 4 of them for $0.95 each. Depending on availability, others might find luck ordering something of similar size and dimension from purveyors like McMaster-Carr or Grainger. [caption id="attachment_55834796" align="aligncenter" width="660"]Comparison of the old bushings on the left with the new rubber bushings on the right separated by the shoulder bolts and washers in the middle. The old (left) and the new (right).[/caption] Back at home I inserted the smaller end into the hole of the frame and screwed the shoulder bolt and washer back in to hold the frame onto the typewriter chassis. It seemed an excellent fit and this part of the machine should be in good shape for the next few decades.  If this is the only repair you're making to your machine, I suggest you replace each one, one-at-a-time in turn. This will prevent you from needing to take apart more of the machine or removing the entire body shell to get them on and will speed up the replacement process. If you're doing it as a larger restoration, then just install them when you re-attach the body shell. For me, loosely attaching the two rear ones followed by the two at the front and then tightening/adjusting them all seemed to be the easier way to go. If you're restoring your own SG1, I hope these details make your work and research a bit quicker and easier. 
#Typewriters #bushings #Olympia SG1 #Olympia typewriters #typewriter restoration
kottke.org kottke.org

So cool! Also, terrifying.

My wife is out of town and I miss her very much, but have also been reminded how much I miss running the ceiling fan in my bedroom 😂

Maker’s 46, steel chill sphere, clementine zest, peach bitters.

🗓️ The Level Up

My wife and daughter are in Manhattan to catch a few shows, so my son and I are having a geeky boys weekend. I took him to learn how to play Magic at a local game store today and we are going to watch Lord of the Rings tonight. 🤓

TriMet Stop ID 12791

at TriMet Stop ID 12791

TriMet PSU/SW 6th & Montgomery MAX Station

at TriMet PSU/SW 6th & Montgomery MAX Station

🗓️ Bizzo at The PIT's March Madness!

Science & Education Center (PSU)
Claude Hackathon!
This nearly indestructible black and gray powder-coated 20 gauge steel constructed 8 drawer cabinet with art deco flourishes has 36 linear feet of storage space for over 2,000 Field Notes notebooks. This is enough space for over 83 years' worth of subscription to the quarterly notebooks. Literally enough space for a lifetime of notes. Staple Day, eat your heart out! We’re stalking down the elusive 4 Drawer Day! Fully assembled Steelcase card index filing cabinet next to a bookcaseEight empty drawers lined up on the floor in a 4x2 matrix makes it easy to see the storage capacity of the Steelcase card index.Close up of the Steelcase nameplate and first drawer at the top of the filing cabinet.
#Furniture #Note taking #Field Notes #filing cabinets #Steelcase

Several people have asked for some detail on the new site. I am working on a write-up, but it’ll take some time to finish. There’s a lot to cover!

A reminder to myself

Had a fun evening in Nashville for a work event. Our creative events team rented a jewelry store, brought in a bar and food, and gave 10 clients some gift cards. Smart cookies, those folks. Back to LA tomorrow.

Machine Knitting: the empire strikes hat

#machine-knitting #hats
“Choice. The solution is choice.”*

You should download Firefox 148 (released today!) and explicitly set the new "AI Controls" to your preferred choice.
* https://www.firefox.com/

Disclosure: I work for Mozilla, but this post, like all on this site, represents my personal thoughts and opinions.

More and more software includes various “AI” features. The “quotes” are deliberate because there is an increasingly fuzzy popular understanding of what is or is not “AI” that continues to diverge from any specific technical meaning.

Many folks have expressed strong opinions against “AI” features (for lots of reasons which are worth a separate blog post), in particular in web browsers, and a desire for a simple way to disable such features.

Tentatively called an “AI kill switch”, the Firefox team developed both an overall switch to turn off or block various "AI" features by default (including any future features), and the ability to selectively enable specific features. Or vice versa (turn on by default, and selectively disable specific features).

See the official blog post for screenshots and lots more details:
* https://blog.mozilla.org/en/firefox/how-to-use-ai-controls/

I have set my own "Block AI enhancements" setting to "blocked", with the exception of enabling "Translations". Translations are a feature I use often, a feature that requires per-page activation (another degree of user-control), and runs completely locally on my browser. Nothing automatic, nothing that requires submitting what I’m reading to a random server.

For me this was an easy choice because it fits within my prior larger personal preference of using a restricted browser by default, with leaner settings, for greater security, privacy, and performance reasons. I do keep various other browser variants (and profiles) for testing purposes, experiments, or seeing what a new user may be experiencing.

The rest of this post is not about AI.

My Top Two Browser Extensions

As part a more restricted personal browser approach, for a long time I have run with two add-ons that block A LOT more by default:
* NOSCRIPT: https://addons.mozilla.org/en-US/firefox/addon/noscript/
* EFF Privacy Badger: https://addons.mozilla.org/en-US/firefox/addon/privacy-badger17/

I do not use a separate ad blocker. With NOSCRIPT, in general I don’t have to.

I prefer to explicitly grant permission to a site (domain) for its scripts to load. Some sites I use often enough that I've granted persistent permissions for their scripts. Others, third parties in particular, that I know function purely for analytics or tracking I explicitly persistently block, because they seem totally disconnected from any user benefit.

Yes it’s extra work, however, I find it worth seeing just how much each site depends on scripts, third party scripts, and how many.

It’s especially worth it when I'm on slow or intermittent wifi, where every script blocked makes a big difference in how fast a site loads. Yes this is still a problem.

The network is not the computer. The network is the weakest link.

Even now, in 2026, contrary to popular (especially developer) beliefs that fast internet access is ubiquitous, frequently it is not.

If you’re on a train, plane, or at an event with thousands of people like a concert or many conferences, your wifi or even mobile connection will be intermittent or slow at best.

Just this past Saturday at the F1 Exhibition in the San Francisco Marina, the cell networks were overwhelmed due to the crowds, with even “simple” text or chat messages failing to send. Last year at the Portola Festival their wifi was so bad that even if you managed to connect to it, simple HTML pages barely loaded, while native applications dependent on network access failed completely.

JS;DR

Many times if a site fails to display content without JavaScript, I simply close the tab.

I already have so many open tabs to read (process) that I no longer feel any need to read any particular new website that fails to show content without JavaScript. If their web developers can’t be bothered to take the time to implement progressive enhancement, why should I bother to take the time to read their content? More on this:
* https://tantek.com/2025/069/t1/ten-years-jsdr-javascript-required-didnt-read
* https://indieweb.org/js;dr

A subtler form of JavaScript failure is when a site’s content is displayed, however its buttons or even simple hyperlinks fail to function due to scripts not loading:
* https://tantek.com/2012/073/t4/js-ajax-only-tired-waiting-bloated-scripts-sxsw-wifi

Progressive Permissions

On sites that I do allow scripts, I still limit their access to cookies using the Privacy Badger add-on, and only selectively enable them if I’m logging in or otherwise customizing my experience on that site.

When websites immediately request use of a cookie disconnected from any user action that would justify a need for a cookie, it seems both presumptuous, and frankly, a bit pushy or rude. It also seems like rushed or lazy coding.

User requests are what computers are for.

A user-centric approach to any kind of permission or capability, whether cookies or personal information like location, would only request such as part of directly handling an explicit user action that requires the capability.

The simple act of viewing a website should never require cookies, location information, or any other capabilities that require special permissions. E.g.
* If I successfully log into a website, a cookie helps me stayed logged in.
* If I click a "show me my present location" button on a map site, it makes sense to request my location to fullfil that user request.

This probably could have been several blog posts.

Yet the common theme across all of these is user choice.

Whether new features, use of scripts, or privacy impacting features such as cookies or personal location, users should always have the choice and agency to say no, and customize their web browsing experience accordingly.

#Firefox #Firefox148 #AIcontrol #AIkillswitch #JSDR #UserChoice

*Top of post quote paraphrased from Neo in The Matrix Reloaded who said: “Choice. The problem is choice.”
#Firefox #Firefox148 #AIcontrol #AIkillswitch #JSDR #UserChoice