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.
I’ve posted enough scattered AI tips on Slack that it’s time to put them in one
place. These are operating principles, not commandments. Nothing applies
everywhere; don’t blindly follow any of this.
ChargerLAB only provides a Windows app for the Power-Z KM003C. I wasn’t going
to install a whole separate operating system just to use one USB power meter,
so I built PowerScope. It graphs live voltage, signed current, power,
temperature and USB rails at up to 100 samples per second; records sessions;
exports CSV and JSON; and captures and decodes USB Power Delivery traffic and
cable E-Markers.
PowerScope reading a KM003C directly from the browser — it’s my iPhone charging
Everything runs locally in the browser. WebUSB talks to the meter, Web Serial
provides its separate control channel, Go/Wasm parses measurements and USB-PD
traffic, and IndexedDB stores recordings. The site serves static assets;
device data stays in the browser.