People occasionally describe someone as having strong opinions. The
phrase is usually delivered as a neutral observation, though it often carries
the faint scent of a warning: this person may be stubborn, loud or difficult.
Those are failures of conduct. They have little to do with the strength of an
opinion.
By strong, I mean a conclusion that can bear weight. Its owner can
account for where it came from, has exposed it to resistance and knows what
would change it. Strength is not certainty. It is confidence earned by the
quality of the work underneath it.
I am not talking about tastes, direct observations, urgent warnings, questions
or brainstorming. “I dislike coriander,” “I smell smoke” and “Could this fail
under load?” do not pretend to be distilled judgments. I am talking about a
conclusion presented for someone else’s serious consideration — something
offered as a view of how the world is or what should be done.
On that meaning, only strong opinions are worth sharing.
There is a fashionable new way to avoid thinking. Notice an em dash, a tidy
list or a sentence with suspiciously polished edges. Announce that AI was
involved. Dismiss the whole thing.
The post may be correct. The product may work. The patch may fix the bug. None
of that matters once the detector in someone’s head has beeped. The work has
been placed in the AI bucket, the bucket has been labelled slop, and
judgment can stop before it becomes tiring.
AI did not create this habit. It merely brought it to the surface. Plenty of
people have always cared more about the signals surrounding an idea than the
idea itself. Tell them a person they admire said something and they lean
forward. Tell them the same words came from someone they despise and they stop
listening. Now authorship by a machine provides an even cheaper excuse.
Shower storage for renters is a parade of bad compromises. Suction cups
eventually surrender, adhesive mounts are only notionally removable, and
caddies hanging from the shower head put a cluttered collection of bottles at
face height.
So I had PCBWay fabricate a shelf from a single piece of 4 mm aluminium sheet.
It cost about A$200 including shipping, which is absurd for a shower shelf and
entirely reasonable for never having to think about shower shelves again. It is
wide, essentially indestructible in ordinary use and, most importantly, sits
at waist height rather than in our faces.
This render is very close to the shelf's actual position in our shower. The
tap spacing and the alcove determine where it belongs.
Most wall chargers insist on hanging directly from the wall. One white-label
USB-C travel charger I found does something much smarter: its interchangeable
heads include an IEC 60320 C8 inlet alongside the usual country-specific wall
plugs. Fit that head and an ordinary C7 “figure-eight” mains lead plugs straight
into it. Apart from Apple’s chargers, it may be the only travel charger I’ve
seen that can be used with an extension cable.
The supplied C8 head fitted to the charger.
The C8 inlet is part of the removable head. The ribbed connector behind it
merely attaches the head to the charger.
I’ve moved my embedded Go work to
Zed. It is super
fast, pleasant and increasingly secure by default. For me it beats the shit out
of messy VS Code: fewer layers, less interface debris and no feeling that my
text editor is a browser wearing a tool belt.
Zed is a native Rust application with a purpose-built, GPU-accelerated UI
designed to render at
120
frames per second. Unfamiliar worktrees also open in
Restricted Mode, so project settings cannot start language
or MCP servers until I explicitly trust the worktree. Speed without careless
defaults. Rather nice.
Zed’s native Go tooling resolving TinyGo’s machine package for a
Pico target.
Every prototype needing human input starts with the same chore: wire loose
buttons, LEDs and a potentiometer before testing the interesting part. So I made
that recurring mess permanent.
This scrap-built, 3D-printed panel has four momentary buttons, two toggles, one
potentiometer and three LEDs. Ten controls and indicators connect to any
microcontroller through ordinary jumper wires. It is a reusable physical
interface I can bring to a prototype instead of rebuilding inside it.
The first version: entirely scrap-bin electronics in a printed shell.
Thiel then admitted that he had considered rocket reusability
inconceivable. SpaceX did it anyway. The distinction is useful:
skepticism costs nothing; a specific public prediction creates a ledger.
What follows is the strict ledger: public dismissals from named industry
leaders or people with exceptional access to relevant expertise, paired with
measured outcomes. No deadline bets and no viral anecdotes that cannot be
traced to a contemporaneous source.
Around the middle of 2019, I started making the equipment around me speak one
electrical language. I built a USB Power Delivery sink controller, then
converted more and more of my
equipment to USB-C. The point was not the connector itself. It was being
able to reach for one cable and one power supply with some confidence that
things would work together.
Quite by accident, I have done the same thing mechanically. The interface is
the ordinary camera tripod thread: 1/4″-20 UNC. Once I noticed the absurd
range of clamps, ball heads, quick-release plates and articulating arms built
around it, I stopped treating them as camera equipment. They are a mature box
of mechanical parts that happen to have escaped from photography.
No camera in sight. An arm keeps my cup within reach without consuming a
surface.
I wanted an easy way to get useful power out of my Ryobi batteries without
building another power supply. So I put a car cigarette lighter socket in a
simple 3D-printed attachment and wired it straight to the battery terminals.
That’s the entire circuit.
The socket is connected directly to the battery terminals. There is no voltage
conversion hiding inside the print.
I wanted a DJI Neo 2 case that could disappear into a backpack without the
drone getting crushed by everything piled on top of it. The result is a
3D-printed case measuring 163 × 185 × 47 mm, including room for the drone and
the small spares I actually need. It may be the smallest crush-proof case for
the Neo 2 out there.
The flexible radio-module antennas remain outside, avoiding the empty case
volume that enclosing them would require.