Ian Gregory

6 Followers
51 Following
40 Posts

WebSerial has landed in Firefox Nightly !! 🎉

Enable it in about:config and it all just works as expected. Took a brand new ESP32 and had a new Bluetooth proxy added to Home Assistant within 2 minutes 👌

RE: https://mstdn.social/@hkrn/116377890984123678

I had no idea Kagi did this. Looks great - lots of examples given.

It's almost 2026 and I still dislike not having a headphone jack on my smartphone

the UNIX v4 tape reminded me of this story by Ali Akurgal about Turkish bureaucracy:

Do you know what the unit of software is? A meter! Do you know why? In 1992, we did our first software export at Netaş. We wrote the software, pressed a button, and via the satellite dish on the roof, at the incredible speed of 128 kb/s, we sent it to England. We sent the invoice by postal mail. $2M arrived at the bank. 3-4 months passed, and tax inspectors came. They said, “You sent an invoice for $2M?” “Yes,” we said. “This money has been paid?” they asked. “Yes,” we said. “But there is no goods export; this is fictitious export,” they said! So we took the tax inspectors to R&D and sat them in front of a computer. “Would you press this ‘Enter’ key?” we asked. One of them pressed it, then asked, “What happened?” “You just made a $300k export, and we’ll send its invoice too, and that will be paid as well,” we said. The man felt terrible because he had become an accomplice! Then we explained how software is written, what a satellite connection is, and how much this is worth. They said, “We understand, but there has to be a physical goods export; that’s what the regulations require.” So we said: “Let’s record this software onto tape (there were no CDs back then—nor cassettes; we used ½-inch tapes) and send that.” Happy to have found a solution, they said, “Okay, record it and send it.” The software filled two reels, which were handed to a customs broker, who took them to customs and started the export procedure. The customs officer processed things and at one point asked, “Where are the trucks?” The broker said, “There are no trucks—this is all there is,” and pointed to the tape reels on the desk. The customs officer said, “These two envelopes can’t be worth $2M; I can’t process this.” We went to court, an expert committee examined whether the two reels were worth $2M. Fortunately, they ruled that they were, and we were saved from the charge of fictitious export. The same broker took the same two reels to the same customs officer, with the court ruling, and restarted the procedure. However, during the process, the unit price, quantity, and total price of the exported goods had to be entered—as per the regulations. To avoid dragging things out further, they looked at the envelope, saw that it contained tape, estimated how many meters of tape there are on one reel, and concluded that we had exported 1k to 2k meters of software. So the unit of software became the meter.

What happens when I run out of places to put #christmaslights? Simple, I design my own.

20 of these little "pixels" now form part of my annual illuminations and this is the behind-the-scenes detail of how they work and how I built them.

#maker #dmx #electronics

https://www.technical-capers.info/post/the-christmas-pixels-caper

A Brief, Incomplete, and Mostly Wrong History of Programming Languages
James Iry; Thursday, May 7, 2009

1801 - Joseph Marie Jacquard uses punch cards to instruct a loom to weave "hello, world" into a tapestry. Redditers of the time are not impressed due to the lack of tail call recursion, concurrency, or proper capitalization.

1842 - Ada Lovelace writes the first program. She is hampered in her efforts by the minor inconvenience that she doesn't have any actual computers to run her code. Enterprise architects will later relearn her techniques in order to program in UML.

1936 - Alan Turing invents every programming language that will ever be but is shanghaied by British Intelligence to be 007 before he can patent them.

1936 - Alonzo Church also invents every language that will ever be but does it better. His lambda calculus is ignored because it is insufficiently C-like. This criticism occurs in spite of the fact that C has not yet been invented.

1940s - Various "computers" are "programmed" using direct wiring and switches. Engineers do this in order to avoid the tabs vs spaces debate.

1957 - John Backus and IBM create FORTRAN. There's nothing funny about IBM or FORTRAN. It is a syntax error to write FORTRAN while not wearing a blue tie.
1/6

Be like Dolly.

"Never underestimate the bandwidth of a station wagon full of tapes hurtling down the highway."

This quote about the bandwidth of physical transportation is roughly 10 years older than me. It came up in the Packet Pushers slack channel, and somebody wondered if it's still valid in 2025. Ouch! I got nerd sniped! Now I'm wondering too. Let's investigate.

To start, we'll need some numbers. This is gonna be pretty big on guesstimates, royally rounding things up or down, and ignoring some geometrical factors.

I can't ascertain the quote's origin, but I'm certain it originated in the USA. A 1975 American station wagon could have been a Ford LTD Wagon. Let's pick that one, it looks like a sweet ride. According to the brochure, it features a cargo volume of "over 100 cu. ft. counting lockable below-deck stowage". That's over 2,800,000 cubic centimers.

Let's choose a distance outside of the USA, UK, Liberia and Myanmar. That way we can stick with the International System of Units (SI), avoid dealing with miles, and avoid deteriorating our sanity any further.
One of my longer road trips featured a drive from Rome, IT to Dordrecht, NL: around 1600 kilometers. Assuming two alternating drivers, some bad traffic and some stops, let's say the drive takes us 25 hours.

The bandwidth could be 800 Gbit/s today, ignoring bandwidth-delay product. If you get creative with source and destination storage arrays and the network inbetween, you could conceivably multiplex and achieve some multiple, but 800 Gbit/s seems like a fair number so we'll stick with that.

Pushing 800 Gbit/s for 25 hours straight, we're are able to transfer a total of 9,000,000 gigabytes (9,000 terabytes or 9 petabytes). At this point I'm already intuiting the final answer, but let's move along.

According to a quick Google search, the highest capacity SSD for the last few years (HDD's don't come close anymore) has been the ExaDrive EDDCT100/EDDCS100 at 100TB. The ExaDrive is a 3.5" SSD. However, Solidigm is currently releasing a 122.88TB version of the D5-P5336 SSD. The D5-P5336 is a tall 2.5" SSD with a volume of 105 cubic centimeters. The weight is guesstimated at 300 grams.

A possible alternative are microSD cards. The highest capacity ones are 1.5 TB today. A microSD card weighs about 0.5 grams. The volume of a single card is about 0.165 cubic centimeters. So a microSD fits in the tall 2.5" SSD model roughly 636 times. Rounding up, the microSD's give us a nice single petabyte in the volume of a single tall 2.5" SSD, or almost a factor 10 difference. Interestingly, the weight of a single tall 2.5" SSD's volume is roughly equal to the weight of that same volume in microSD cards. So microSD cards it will be!

To keep things simple, let's work with the rounded numbers we have so far. 105 cubic centimeters worth of microSD cards will fit into the Ford LTD Wagon more than 25.000 times. However, that would be almost 10 million microSD cards, or almost 5000 kilograms of them. I can't find all the numbers for the Ford LTD Wagon, but the towing capacity I found was close to 1000 kg. I'm taking the towing capacity as an indication of the weight capacity of the car itself, even though there are different factors involved. Assuming a couple of humans and a bunch of stuff actually in the car during that towing, I'm picking a maximum of 1500 kg worth of microSD's. With two drivers, let's hope that the axles will hold and sacrifice a goat for zero speed bumps. 1500 kg would allow for 3 million microSD cards or 4500 petabytes.

One final note: we're ignoring the time it might take to transfer some data set from some storage array to 3 million microSD's (and to load them into the station wagon) before departing. We're also unsure about and ignoring any transfer time after arriving at the destination. I suspect these same assumptions were also in place about the tapes when the original quote was made.

The suggested drive will take 25 hours, and in that time the 800 Gbit/s connection will "only" transfer 9 petabytes. So with 4500 petabytes, the station wagon will transfer about 500 times more data than the 800 Gbit/s connection. Wow! You'd need a lot of multiplexing to offset the difference.

It's clear that the limiting factor is the weight capacity of the station wagon. A small truck or sturdy van would have been a more sensible choice. In any case, the station wagon wins hands down. Unless that old thing breaks down.

#bandwidth #storage #networking #stationwagon

Friends, I need your help to convince Firefox that WebSerial is important. WebSerial is used to install ESPHome, WLED, Tasmota and so many other open source firmwares. It makes the difference between a 2 minute install or a failed install (because a user can't get Python to run).

Leave a comment:
https://connect.mozilla.org/t5/ideas/fully-support-web-usb-and-web-serial/idi-p/62/page/5#comments

Fully support Web USB and Web Serial

Web-based IDEs like Arduino and Github Codespaces are now commonplace. They are hobbled in Firefox due to an inability to access development boards without installing extra system software, which rather defeats the purpose of having an IDE that runs in your browser. This is not the case on Chrome, w...