Pages

Wednesday, December 16, 2015

pour over

I filled the carafe of my coffee maker with ten cups of water. I put 60 grams of Finca Mauritania into an unbleached #4 paper filter. Then I poured the carafe of water straight into the hopper of my Mazzer Super Jolly coffee grinder. Oops.

I disassembled most of the machine, dried it, and then put it back together. I ran it for about 20 minutes to dry it out. This was not enough to keep moisture from rusting the upper bearings over the course of the next week.

The District of Columbia offers many things. Large birds are returning to the Anacostia. Organic produce abounds. Chocolate and gin are made in DC mere blocks apart. Beards are omnipresent. Despite this bounty, the District of Columbia remains a bearing desert. I couldn't find a stocking dealer of the necessary 6202-2Z bearings anywhere in the city.
 
Amazon came to the rescue with a pair of suitably Italian SKF bearings. The padded envelope slipped right through my mail slot this afternoon. The grinder was purring an hour later.

I don't know if bearings and fellow travelers can be reintroduced to DC with any less effort than it took to bring ospreys back to the Anacostia. I wonder often if DC can support the kind of specialty retail trade that it takes to support hardware needs beyond the fastener aisle of the local hardware store. I wonder how to start. My current thinking is that DC could certainly support a few arduino/maker/hacker vending machines. I would certainly use them.


Thursday, November 5, 2015

your move

Last month brought the new Chromecast Audio. I like mine just fine though not quite enough to displace any of the existing Airport Express devices in my house. Last month also brought Apple's El Capitan to my machine.

With El Capitan's Safari 9, Apple appeared to say 'your move.' to Google and their Cast extension for Chrome by breaking iTunes' 11-year stranglehold on official desktop app support for Airplay. What Apple actually said was 'your mo... oh, dear. i've soiled myself.'

Apple's otherwise great new webkitShowPlaybackTargetPicker() media element method lets web content sling itself to Airplay without obnoxious extensions or API keys. Awesome. The resulting Airplay picker popup -- triggered from an audio element here at reograph labs -- shows
exactly none of the Apple Airport Express devices installed around the house. An old Apple TV and a third-party Airplay server running on a Mac put in an appearance but that's it.

I don't know whose move is next but I'm getting tired of this game. System-level mediated audio made sense in the past when the system actually multiplexed audio streams. Essentially none of my audio today except the terminal bell is routed to a DAC attached to a bus in my computer. How is Apple struggling with a feature that worked with iTunes on my G3 iBook?

Is this perhaps a sign that the old Airtunes-protocol hardware is on the way out? Does the bulky new Apple TV create room for a Chromecast Audio-like Apple TV for the Blind? You heard it here first.


Tuesday, October 20, 2015

ewaste pda style

Back when PDAs were a thing, I owned one of just about every interesting device. Psion? Yeah. Palm? I had a half a dozen. Newton? Check. Sharp Zaurus? Check. MagicCap device? Got it. Franklin REX? These were the mainstream machines. I had a dozen of the weird ones as well. The worst of those was probably the Agenda VR3.

The Apollo program closed out 1972 with humanity's last manned mission to the moon so far. The eight year lull before Shuttle launched in 1980 seemed like an eternity though Skylab and Apollo-Soyuz took a bit of the edge off.

The PDA market had an Apollonian slump between the release of the last terrific PDA (1999's Palm V) and the release of the original iPhone in 2007. Weird things turned up in the market during that time but they really only ever took a bit of the edge off.

I needed a fix of personal digital love in 2005 and jumped on the new Nokia 770 with vigor. It is hard now to explain why in terms other than a fix. It was perhaps the first PDA-like thing to come with a kernel that supported the Plan 9 file system protocol. Maybe? That seemed breathtakingly important at the time. It also seemed like the perfect platform to run Paul Guyot's Einstein emulation of the Newton. Your PDA platform may have problems if a Newton emulator seems like a high calling.

I can't say that it was awesome, or that it seemed awesome. It seemed then that it would eventually be awesome. And then it wasn't. It was a preview of modern high-DPI displays. Its 4.1 inch screen rocked 225 ppi at 800x480 two years before the iPhone rolled up with the retro resolution of 480x320 at 163 ppi. It was unlocked. It was the first PDA I owned to run a real web browser. It was interesting.

The 770 was easy to tether to a bluetooth phone and I used it this way until I had owned an iPhone for about 15 minutes.

It was beautiful and well made. My copy was made in Estonia, an ancient Baltic country taken as part of the Soviet Union until 1991. That's as close a PDA analogy as I can make to Apollo-Soyuz. It was a relative heavyweight. Mine weighs in at 235g. My iPhone 5s weighs in at 112g. The Palm V weighed 114g.

An old joke says that the Americans spent a million dollars to develop a pressurized pen capable of operating in outer space while the Soviets simply used a pencil. The tale is reversed with the 770. Nokia spent a lot of money to develop the last of the resistive/stylus machines when the Americans, here Apple, simply used a finger.

My 770 goes off to recycling today with its original stylus still tucked safely in its slot.


Nokia 770 tablet (pictured with Sparky for scale)
photo courtesy your correspondent



Wednesday, October 7, 2015

chromecast audio

I wrote this morning about my disappointment streaming simple audio from a Chrome tab. I placed the blame, correctly, on Chrome and not the Chromecast but I may have been a bit harsh. I may have blamed son Chrome for the sins of father Google.

I've now had a Chromecast audio in my hands for about a half an hour. It is much less horrible than its video cousin. The SDK is still broken by design. The Cast Chrome extension is still very large and complicated. It still required my phone, and not my Macbook, to configure.

If you set aside the setup, the pointless cryptography is pointless but only modestly worse than Apple's scheme in Airplay.

Our beloved RMS used to say that it wasn't really important to have the source to the firmware of a device that behaved like a circuit. An OTP PIC micro controller pretending to be a quad NOR gate was as good freedom-wise as a real quad NOR gate. The audio Chromecast works almost as transparently and reliably as an old 900MHz wireless speaker and I'm prepared to treat it as a circuit for now.

I stand squarely behind the rest of this morning's rant. The browsers with native APIs are the only local, graphical, general-purpose platforms worth programming. I look forward to the day that my web app can stream to a Chromecast, or an Airplay, directly without obnoxious SDKs or extensions or App IDs or the cloud. Until then, I'll listen to some tunes.

chromecast

I've had a Google Chromecast gathering dust in my workshop since just after they were announced. This dusty nap wasn't really its fault. The device just didn't seem very useful after I gave away the television.

Google's recent announcement of second-generation Chromecast hardware included an audio-only version that sparked in me new interest. I dug my old Chromecast out of a drawer and plugged it into
an HDMI monitor that can split HDMI audio out to external speakers.

I was pleasantly surprised. The experience of streaming a tab-full of audio out of Chrome into the Chromecast was worse than streaming audio from iTunes to Airplay but better than directing Mac system audio into Airplay.

Airplay is just about the only thing that iTunes does well. In any case, I had already banished iTunes from my machine and I play all my tunes by drag-and-drop with a web app, phonoh, that runs in Safari, Firefox, Chrome, or as a Chrome app. I'm happy this setup but it has left me without a pleasant way to beam audio from the browser to any of the speakers in my house.

Ten minutes with the Chromecast had me beaming tunes from phonoh into speakers. The crippling downside is that I have to cast the entire tab for this to work. Why? For starters, Google's cast SDK fails totally for web apps hosted from the filesystem with file://. For nexters, there is a gigantic disconnect between the ease with which tab-casting works and the Kafka-ocracy of hosting a receiver app, registering an app id, enabling magic developer mode on your device, blah, blah, blah for an app where there is fundamentally nothing worth hosting anywhere but in Chrome in the first place.

I drop files onto the web app from the desktop or from another web app. That's it. Essentially every audio track I have ever played is smaller than a single RAW file from my eight-year-old DSLR. I'm not a media hoarding survivalist with a ridiculous HTPC, a shotgun, a vault of ripped Blu-Ray discs, and food for a month. I'm just a dude who is going to listen to less than a terabyte of music between now and death. Why stream the soundtrack to my demise when most of it would fit on a microSD card in the space of a fingernail?

I took a tour through the two megabytes (!!) of minimized Javascript that make up the Cast extension that Google distributes. I thought it might be simpler to just write my own Chrome extension that lets me manage the WebRTC plumbing that appears to make tab-casting go.

I poked around in there to find the Chrome mDNS support and I built that into phonoh. Chrome's mDNS found my Airplay devices in short order but not the Chromecast!

At this point, I decided that I would just build a registered custom receiver that could be used with any app. I thought I could build a receiver web app that presented a generic remote-DOM interface to
the Chromecast. This appears possible, but generic (or even re-useable) custom receiver apps are forbidden by the SDK terms of service! Nearly every aspect of what I wanted to build is explicitly forbidden by the terms of service.

The Chromecast dongle is now in the ewaste pile. I was never meant to be the customer for Chromecast. I was somehow meant to be the product.

My point isn't that Chromecast is broken or evil. My real point is that Chrome, or Chromium, and Firefox are the only local, graphical, general purpose computing platforms worth programming today. Chrome, through extensions written in Javascript, can even host its own local development. Chrome is demonstrably adequate for interesting systems programming -- look no further than the cast plugin or the Chromecast themselves.

Chrome and Firefox are essentially fully baked as platforms. Most of the rest is removing the damage they inflict on themselves through administrative fiat. For example, Firefox doesn't allow self-hosted apps to use privileged APIs -- which is most of the APIs that distinguish an app from a web page. I can't build an alarm clock in Firefox without permission from Firefox World HQ. Even worse, Firefox reserves some permissions just for the 'manufacturer' and presumably still others for themselves. Manufacturer, here, means one particular middleman out of the many between you and the orphans at the conflict mineral mine who dug your device up from the earth a handful at a time. There is no higher plane of privilege reserved for the owner. Or for the orphans, for that matter.

By the way, Orphan Rights Management would be awesome. This tantalum isn't for pornography. This indium can't be used for human trafficking. This tin can't be used by despotic regimes that don't follow the Terms of Service in the UN Universal Declaration of Human Rights.

Let's stop treating audio and video as technological special cases. Let's give up on the idea that clients are somehow less than servers. Let's stop pretending that we can keep the bad men out by preventing users from using their computers. Let's take back 'rooting' and just call it 'owning' again. Leave the rooting to wild pigs.

Monday, September 21, 2015

volkswagen

The recent allegation that VW has been cheating on emissions testing for the last six years, if true, is fantastic news.

It's fantastic for consumers, fantastic for the environment, and fantastic for Volkswagen.

Volkswagen may now be on the hook for fines of up to $18 billion dollars, according to the Washington Post, and the full cost of a recall effort of nearly half a million cars. That's all before VW begins tangling with a half a million current owners and millions more prospective owners.

How is this good? This is good because it creates a fabulous space for a deal. Here's one idea for a deal that I think could work for everyone:

Point 1: VW re-captures those vehicles which are still on lease, modifies their software, and leases them back out with penalties for high mileage. The mileage restrictions and reduced performance on these leases will make the cars nearly worthless. VW offers them cheaply in exchange for a cash-for-clunkers style trade that takes a grosser polluter off the road. This captures the sunk costs of building these cars in the first place, preserves a role for VW dealers, and gets some worse cars off the road. Perhaps VW also buys back cars in private hands and gets them into low-mileage fleets to blunt the environmental impact without the pointless work of a recall. If my impression of the residuals on VWs is in the right ballpark, this could cost less than $2 billion over the next three years.

Point 2: VW inks a deal to manufacture and sell a million electric cars in the U.S. over the next ten years. For each car eligible for the (up to) $7500 refund from the feds, VW pays the Treasury $7500. For every state and locality that waives excise or registration taxes for electrics, VW pays. This could cost less than $10 billion over ten years. For each car not sold below the target of a million, VW pays the original $37500 fine for the diesel cars plus a new fine of $37500. The cars are built in the US so that EPA inspectors can oversee the loading of the critical powertrain management software that has recently been difficult for VW.

Point 3: The VW pays an additional $1 billion dollars over ten years into the highway trust fund to offset the (presumed) lost gas tax revenue for these million cars over their service lives.

Point 4: VW claws back five cents a mile in penalty fees (up to $3750 per car) for miles driven beyond 100k miles per car in the first three years or for miles above 200k per car over ten years.

Point 5: VW builds $1 billion in SAE DC fast charge stations in the US over the next three years.

This plan could cost VW about $14 billion over ten years to build and sell the lineup of electric cars they have already designed -- some of which are already available for sale. It would blunt the environmental impact of the offending cars by reducing their total mileage, using them to displace worse cars, and putting new electrics into service. This plan would protect the investment of existing owners and protect the investment of VW franchise owners.

This guaranteed production of electrics will ensure that investment in electric-appropriate subassemblies, like electric air conditioning compressors, continues through today's dip in crude oil prices. The truth of large-scale electric adoption is that electric cars aren't mainstream until Magna and Bosch and Valmet and Nippondenso and ZF and dozens of other suppliers are ready.

Point 4, the clawback, will help ensure that these new electric cars are actually used on roads and displace real miles driven by gas and diesel cars. The investment in fast chargers and the economics of the claw-back could work to make these VWs easy choices for drivers with ride sharing services like Uber and in traditional taxi fleets.

The American public get a net environmental benefit at no cost to the Treasury, no cost to the highway trust fund, without a single new EPA rule, and perhaps without any action by Congress.

VW will look back in 15 years and see this as the best thing that ever happened to them in the US. VW could take these licks while establishing this as the prescribed remedy for similar transgressions by other automakers in the US and elsewhere. In three years, we'll find out that VW was not the only automaker who fudged the numbers and then we lather, rinse, repeat.


Friday, September 11, 2015

computing

I wrote recently about the search for a new machine for my daughter. She asked me for a computer of her own so that she could write LOGO programs. I'm helpless.

I considered a lot of machines -- Android tablets, Microsoft surfaces, convertible Chromebook tablets, Windows 10 portable all-in-ones, and traditional macintoshes. I finally bought her a 12" Macbook and a Raspberry Pi.

I had originally hoped that a $150 Chromebook would fit the bill but Chrome OS lost on several fronts. The $1299 Macbook is not eight times better than the $150 Chromebook but it is probably four times as good as the $249 ASUS C100 convertible Chromebook. I bought one of those and returned it with prejudice about a half an hour later. (Computer value estimations may be oddly non-transitive).

We're not really birthday people. I would normally have spent somewhere between $5 and $75 on a birthday present for a child. I did not buy a $1299 laptop because computers are important, or because STEM is important, or because education is important or anything like that. I bought it because computing is deflationary. I'm trying to ensure that good computing seems as accessible and affordable to my children as it will later be.

A mac does a lot out of the box but it's not a turn-key computing environment for children. I'm about a dozen hours into the configuration of the machine and I still think I'm in the wilderness.

My first step was to make an account for my daughter. That was easy until I got to the password. My daughter opens her bike lock with a four digit number. Does she really need an eight-character mixed-case password? No. A four digit pin number? That doesn't seem right either. Auto-login using a password she doesn't remember? This is harder than setting up the Commodore 64.

I moved on from authentication into what Apple calls 'parental controls'. Apple wouldn't let me tweak the parental controls until I made a parental account. Now I'm in double authentication purgatory. I have an authentication system for a child that makes no sense and a second credential and account for an adult that serves absolutely no purpose except for managing the child's interface.

People appear to have lots of different ideas about how to manage a child's interface. For lots of people, this seems to have a lot to do with steering kids away from Wikipedia and into the tamer wasteland of auto-playing videos at PBS Kids. That's not my deal. For some, it has to do with replacing parental supervision with an electronic screen time limiter. That's not my deal either.

I want to use the available knobs to turn the Mac environment into the kind of environment that I wish I had as a boy. The Mac desktop started out simple in 1984, but a stray click on the menu bar today brings up a translucent gray screen that tells my child that GOOG 621.35 and AAPL 112.57. Amiga Guru Meditations were more helpful. After dozens of fiddly interactions, 10 percent of the finder has been stuffed back into its bottle.

With hotkeys, gestures, and the rest all turned off, I could begin to take this machine from day planner on crack to computer. I actually think Safari is a pretty great computing environment. This
mac would become a Safari-book if Safari supported webrtc, web midi, packaged web apps, and a few of the other user-facing features that make Chrome not Safari.

I downloaded Chrome, enabled 'Developer mode' in the extensions menu, and loaded up a few
of my favorite web apps as 'unpacked extensions' from the local filesystem.

Life is now pretty good. My daughter gets many of the benefits of Chrome without a Chrome sign-in. She has local printing. She and I have a software development environment that requires only a text editor. She has, in the Macbook, one of the best computer terminals available at any price.

The fly in this ointment is bad interaction between Chrome and network restrictions in parental controls. I have beat on a dozen Chrome settings to try and get it to stop contacting Google. Every time it tries to contact Google, I get a pop-up informing me that a series of random IP addresses in Google space are blocked.

In the end, I wrote a shell script that opens Chrome at login with a command line flag that specifies a PAC. That file that steers all traffic into a nonexistent proxy. That shut Chrome up.

I went a little further and built a Chrome extension for her that overrides the new tab page with an interface built just for her.

Our prototype computing environment is a variant of the simple LOGO I built her last year.

She is very happy with the machine. It's a good size for her. It's a good weight. The USB C charging cable is easy to use. Printing works.

The machine doesn't support Common Core. It doesn't run any dedicated educational software. It doesn't eliminate paper textbooks. It is not configured for remote administration. It is not rugged. It is not synchronized with the cloud. It has no collaboration features except for a wide viewing angle.

Seymour Papert said, of computers and children, that if the child is not programming the computer then the computer is programming the child. He was right in 1980 and he's still right today. Every child deserves a personal computing environment.

I would challenge Google and Apple and Microsoft and Donald Trump and anyone who can hear me take a 'computes out of the box' pledge to build devices that offer a useful computing environment on par at least with the ROM BASICs of the 8-bit era straight out of the box without the installation of any software, without a single credential, without a wifi password, without a software update, and without a click-through EULA. Let's call it the 'RUN 2020' pledge. By 2020, we could get every major manufacturer to offer at least this much computing out of the box. We could get a computing environment available from every lock screen by 2020. Every machine would be ready to compute on Christmas morning and on the first day of school. Every new machine would be useful before the packaging was cleared away. Every working donated machine would be useful for something immediately.

This idea is hardly outlandish. Support across platforms for ephemeral 'guest' accounts is growing. RUN 2020 pushes guest a little harder and ensures that guest mode is useful. I admire and support the One Laptop Per Child. I want Every Laptop to be for Every Child next.










Tuesday, August 18, 2015

when a plug is not an endorsement

I wrote some years ago about ripping out some old Smarthome branded X10 compatible light switches. I should have kept one installed somewhere to remind me to not revisit the concept.

I'm being slowly sucked back into new ewaste items for the smarter home because the Samsung IP cameras I recently installed appear to be working happily. I was excited that I could bypass their apps trivially without ever downloading them.

The latest device to follow me home is a 'Wi-Fi Smart Plug' from D-Link.

The device is a surprisingly bulky box stuffed with a power board and a daughter board. The power board has the high-voltage side of the power supply for the electronics, a relay for controlling a load, and a PL8331 energy metering IC from Prolific.

The daughter board holds the Atheros AR1311 and the flash that make the box a computer. These parts also make the smart plug essentially indistinguishable from any of a thousand other products from a hundred other vendors all built on the same platform.

A clever soul posted a simple script to bypass all the appery associated with this gizmo but it may have been too much to hope for two purchases in a row to work out. I bought this gizmo at Micro Center. I don't know why I even go in that store. If there are two variants of a product in the wild, Micro Center is guaranteed to have the wrong one. If you want the vulnerable one, they have the patched one. If you want the secure one, they have the vulnerable one. It's all the proof I need that the LHC will find a luck particle someday.

My guess is that only the vulnerable devices were marketable and the demand for these boxes cratered one D-Link shipped one not worth making work. Perhaps Micro Center got someone else's overstock cheap.

Other intrepid souls have pursued the matter further. If I may paraphrase Newton -- if I have seen less far, it is because I could not be bothered to climb up to the shoulders of giants. This box goes straight to recycling.



Tuesday, August 11, 2015

alphabet by the numbers

Exciting times ahead as Silicon Valley fully innovates the chaebol model.

I had a long piece for you this morning about Alphabet pivoting away from Apple as role model to Samsung as role model. The punchline was that Alphabet has floated no fewer than two barges while Samsung manufactures barges with more interior space than Apple's old campus at 1 Infinite Loop.

The rest was a reminder that the Samsung Group is already an established player in automobiles, shipbuilding, consumer electronics, renewable energy, healthcare, aviation, and self-propelled artillery.

I concede the point that Alphabet companies dominate in internet search.

The piece ran off the rails. Every small research task, like tracking down sales of Samsung electric cars in 2013, slipped instead into a search for a new computer for my daughter.

My daughter turns seven this fall and she wants a new computer. She would like to use logo, control our printer, our Graphtec plotter, our 3d printer, and the milling machine. She would like to use her MIDI keyboard. She would like to use both latin and chinese characters. She is comfortable with our Macintoshes and with her iPad.

I would like the answer to be a touch screen laptop or a touch screen portable all-in-one of the type that Google, Samsung, Asus, and probably even the North Koreans now make but which Apple does not. I would also like the answer to be a machine that works properly offline, works without remote credentials, without signed code, and without requiring an app store.

MacOS is out (no touch). ChromeOS is out (no printing without credentials). Android is out (no non-Play browser with MIDI). iOS is out (requires an app store. No non-store browser with MIDI).

The best answer, somehow, may be Firefox on either Ubuntu or Windows 10. Best or not, I have not yet found a computer at any price that I can give my daughter without apologizing for it. With this task still looming over me, I guess I just don't care what Silicon Valley companies call themselves.



Monday, August 10, 2015

one bulb

I passed a Banana Republic in a shopping mall today. It's window bore the slogan "one bulb at a time" with the exhortation:

"If every US Household switched just one bulb to LED, the pollution reduction would be equal to removing 800,000 cars from the road. Let's brighten up the planet together."



The warmth in my heart when I read this was matched only by the warmth of the light on the display. The display was lit by a halogen reflector bulb.


Friday, August 7, 2015

laps and jigs

I told you last time about the loss of a bike I liked. The DC Metropolitan Police Department had some good news from me recently. I had not, in fact, been burgled after all. Thefts from detached structures, like my workshop, don't count as burglaries. They are just ordinary thefts. The good news, I suppose, is that the crime statistics for my neighborhood will reflect one less burglary.

The real good news is that the not-quite-burglar took just the bike and tried to wrench a cheap flat panel monitor off the wall. The milling machine went unmolested, the 3d printer unpurloined, and the oscilloscope appears to have been unobserved. The bicycle may have cost more per pound than other things in the workshop, but the value density per volume was really quite low.

I use a super-cheap CTC 3d printer (a knockoff of a knockoff of an old Makerbot replicator) and a small Sherline 5410 CNC mill to make lots of relatively small things. I make bike parts and car parts and things for my children. I make these though I have a large and growing backlog of larger carpentry, construction projects. Those wait because I'm a terrible carpenter.

I was taught, as a young engineering student, that you should not 'measure with micrometer, mark with chalk, and then cut with ax'. I would say that my cuts hew closer to ax had I never seen good ax work. Some of my cuts look like they were made by meteorite.

If I were a real artisan, I would just buckle down and practice. I might spend years first learning to build a quality workbench and then move on to the simple things that need to be built or repaired around my house. I'm not this kind of artisan. I don't think I could even be while I have small children.

My task of the week is to build a treehouse for my youngest son in time for his fall birthday. I have a design. I have the materials. I have the tools. I lack the traditional kind of workmanship that the project requires.

Some people drink courage from a bottle. I'm 3d printing courage. I am especially terrible at cross lap joints -- of which there are several in the treehouse I designed. I addressed this problem this time designing and 3d printing a lap joint gauge. It's great. The joints all came out perfectly.

a gauge for cross-lap joints

One of the best parts of this jig technology is that I don't need to fill my workshop with jigs. I can recycle them and print them again in future years. I have already pitched this jig. I have kept a 3d printed doweling jig that I now use all the time.

a doweling jig for 1x4 stock
My non-burglary didn't interfere with my ability to use the workshop (good news, said the police, no need to lift fingerprints for a simple theft!). I have taken it as a call to make sure that I get enough use out of it to make these occasional troubles seem inconsequential.

Monday, August 3, 2015

minor loss

I wrote in June about material science. My old bike and old car withstood time and environment in an impressive way. In the last two months, both have fallen to fellow man -- that third pillar of loss.

The BMW drove away with a dude at the wheel who never paid. The bike was stolen from my workshop last week.

I decided to up my camera game and install a few decent cameras in the workshop and the alley behind. I chose an indoor/outdoor Samsung Smartcam. I was looking for weatherproof camera that would work without a cloud service.

The Samsung seems to fit the bill. Good picture. Easy to install. Works without a cloud. Just right vulnerable. The box suggested that the camera worked with both viable operating systems -- Android and iOS. I hoped for a device that would work with the legacy Mac platform and bash. I was not disappointed.

The camera serves HTTP on port 80 but it wants some kind of activation. No problem! exploitee.rs  (by way of Google) told me that these cameras allow a user to smash the admin credentials. This will do the trick:

curl http://YOUR_CAMERA_IP_ADDRESS/classes/class_admin_privatekey.php --data 'data=NEW%3BYOUR_NEW_ADMIN_PASSWORD'

With this detail out of the way, the camera can serve 1920 x 1080 JPEG images at about a frame a second with this invocation:

curl -u admin:YOUR_NEW_ADMIN_PASSWORD --digest http://YOUR_CAMERA_IP_ADDRESS/cgi-bin/video.cgi?msubmenu=jpg

This was just what I wanted. Images in two minutes without reading a manual or visiting an app store. I expect the cameras work like homework on a snow day -- their happy functioning will practically guarantee no crime for a decade.

Saturday, July 11, 2015

amiga

I have backed Brian Bagnall's new book 'Commodore: The Amiga Years' on Kickstarter and you should too. Right now. There are three days left.

I own, and devoured, Brian's earlier book 'On the Edge: The Spectacular Rise and Fall of Commodore'. This book and Nick Montfort's 'Racing the Beam: The Atari Video Computer System' should bookend your personal library on machines of that era.

(by the way, the West Coast dinner still has seats available. The robust East Coast hacker community has already devoured all the spaces for the Atlantic seating)

Thursday, July 9, 2015

mommy, where do hackers come from?

People send me breathless articles like this about importing Silicon Valley disruptors into DC. Intelligent people send me these articles -- people who mean well.

I love Silicon Valley. I reject the premise of these articles out of hand. The wrong idea that hackers are somehow the choicest fruit from the Valley sets the stage for a new round of water shaming that will make almonds look good. They take just one gallon each. Any idea how many gallons it takes to bring a mature hacker to market?

I reject also the idea that Valley culture travels well. Take some actual cultures for example. Boudin, San Francisco's famous sourdough bakery, claims to still bake bread from the same starter cultured from wild yeast during the Gold Rush. For a time, Boudin sold starters derived from their master line. The experiment was a failure. These starters, once transplanted, were quickly colonized by local yeasts and lost the distinctive character of the original.

Yeast and hackers are alike in many ways. Perhaps this is why we find Conway's Game of Life so interesting. My experience is that local hacker cultures transplant about as well as sourdoughs. Olin Shivers wrote what remains the best exposition on the topic in 1987 -- though it seems less funny by the year.

I don't care for the idea that Washington, or government, hacker cultures want for anything. I worked at NASA in the DC area as a student and as a student I attended some of the earliest meetings of the DC Linux User's Group in 1994. This group included serious hackers. One, Donald Becker, wrote some of the earliest and best networking drivers for the Linux kernel. Several of those bear the copyright notice "Copyright 1993 United States Government as represented by the Director, National Security Agency". NSA would keep plugging away at Linux and follow up this GPL release in 2000 with the GPL release of SELinux. The earlier release may be one of the earliest releases of government code under the then-new second version of the GPL.

Becker himself became the hacker-in-chief of NASA's Beowulf project and released GPL code from NASA from 1994 to about 2000 before doing a cluster start-up.

These clusters and the genuine hacker spirit that made them go proliferated at federal agencies before anybody knew what a google was. Hackers have been at it in DC since the surveyors packed away their chains. DC was definitely a gelato desert during the worst of the Marion Barry years. DC didn't have a proper bocce bar until well into the 21st century. DC has never lacked hackers.

I can't argue that the U.S. Digital Service or 18F aren't doing something. I can argue that bringing hackers, or the Valley, into government isn't it. A better discussion in the press about what they are actually doing will make it possible for government to retain whatever the benefit when these particular hackers finish their hardship tours in DC.

Will they go? I don't know. I know that OPM put out a recruiting brochure in the late nineties with the title 'Look Ma! I'm a Bureaucrat'. It profiled just the kind of young folks in government that USDS and 18F would presumably like to recruit. A journalist who dug into these profiles found that a surprising number of these kids had already moved on from government service when he came calling. Maybe more will stay this time.

I left my NASA student gig in Greenbelt without ever thinking about a career there. I may not have looked back but I often think back to the strength of the hackers I met in government.

Long before OPM'S 'Look, Ma!' was a thing, the Department of Commerce ran the 'Experimental Technology Incentives Program' in the Nixon, Ford, and Carter administrations. A team of policy wonks performed actual experiments within a number of federal departments to encourage tech transfer or tech stimulation from government to industry -- the reverse of USDS and 18F. Perhaps a real experiment can be done with these new programs. Someone could build a control program and staff it with folks who already work for government and invent Silicon Valley resumes and identities for them and set them loose inside as a pack of disruptors. I hypothesize that people labelled 'disruptor' rise to the role.

I think it's OK that the young people in 'Look, Ma' didn't stick around. These proto-millenials were at the head of a generation that, so far, appears to not stick around.

I think it might be possible to build incentives that let government capture the best and brightest for multiple engagements over the course of their career instead of once, or never. Our legislative and judicial branches do not seem to lament their clockwork turnover of clerks and staffers.

On an unrelated note, mathematicians have the Mathematics Genealogy Project to trace their academic lineage. Hackers have no such resource (unless your last name happens to be 'Hacker', in which case the whole of Big Genealogy stands ready to help you find your relatives).

Thursday, June 25, 2015

hand selected

In our last episode, my electric BMW stranded me for the way I sold an older car.

While the electric sat at the dealer waiting for a replacement KLE module, BMW's marketing arm reached out to me with an offer for 'ULTIMATE BENEFITS'. This sounded grimly funereal. I read on. Their mail said:

"Experiencing the thrills of the Ultimate Driving Machine® is just the beginning. As a BMW owner, you’ll also receive exclusive benefits from a number of hand-selected partners."

Reograph has a substantial and lucrative readership base within the Greater Salt Lake Metropolitan Craft Mafia and so we run a tight ship and keep the swearing to a respectable minimum. BMW's note forces a departure from these family friendly norms.

Hand-selected partners?? Holy Fucking Shit! Ottoman fucking sultans didn't get exclusive benefits from hand-selected partners. The Khan probably did but, hey, he's the fucking Khan.

I'm bowled the fuck over that some interns are hard at work in Woodcliff Lake, NJ selecting partners for me _by hand_.

On the other hand, I suppose it's possible that those interns read 'Mindless Eating: Why We Eat More Than We Think' and learned that everything tastes better with two words before it. Hand-selected M&Ms obviously taste better. Why wouldn't hand-selected partners be still the sweeter? Perhaps the endorsement checks were hand-signed as well.

Though I am contrite and humble this week for being snarky to the wrong audience, there is a right audience for it and it is you.

Wednesday, June 24, 2015

fate and contrition

I sold my old BMW wagon Sunday on Craigslist. The fates punished me Monday for the way I did it. See if you can spot my crime:

vinyl. 5 speed. bmw. wagon! 
~165k miles -- equal to sixteen round trips to bavaria and back. Most miles driven near Lake Erie. Car has some rust to match. Everything from the Roundel back needs work. 
Runs. Starts. Moves. Makes noises. Some are happy BMW noises. Some are not. Car made an expensive sounding noise from the back several months ago and I stopped driving it routinely. 
Colorful lights on the cluster are a great conversation starter at the dealer. Ask about them when you have the airbag recall work performed (free).
Cash money by six tonight. $500 if you swear that you will turn it into a German polizei wagon and send me a picture.

You got it. It's snarky. It's obnoxious.

I thought I was trying to craft an ad that would appeal to somebody looking for a project, not someone looking for reliable transportation. I didn't want to feel guilty about an unprepared soul inheriting an expensive dependent at a superficially attractive price.

I got just such an offer from a local lunatic looking to stuff a LS2 from a Pontiac GTO into the wagon. I got his call moments after I made another appointment with a guy just looking for a car.

Guy #1 wanted a wagon for $750. Guy #1 didn't speak English as his first language. All of my subtle snark was completely lost on him. I knew what I had done wrong as soon as he arrived.

Guy #1 failed my other critical car buyer eligibility test. He didn't have $750 cash money. He wanted to leave me a small cash deposit and pay me the rest at some indeterminate point in the future.

GTO guy had cash in hand.

I sold the car to Guy #1. Actually, I think I loaned Guy #1 $750 to buy the car from me and then let him drive it away with the title and my plates. He returned the tags yesterday. He promises some money in the future. How can I complain? My ad basically announced that I didn't care about the money and that I couldn't be bothered to even investigate the underlying problem.

I had basically made the argument that only amateurs should be allowed into the Olympics. That only those with the disposable income to support sport as a hobby should be allowed into the club. Guy #1 needed to play professionally. I got the sense that he had some skill himself and that he had a network of friends who could support this car as approximately reliable transportation. He was just a guy who needed a car.

The Takata airbag recall kept me from donating the car for months. I didn't want to donate a car with a known outstanding safety issue before the replacement parts were available. I got the recall notice recently but I couldn't find time to get the work done at the dealer. I wanted to get some kind of informed consent from the next owner that they were aware of the problem. That's why a sale. That's why the snark. That's what I told myself.

I thought I had paid for my sin by letting the car go to Guy #1 for a vague promise. I was wrong.

On Monday morning, I climbed into the BMW i3 I bought last year to replace the wagon. No go. The car had completely lost its mind. I had meetings to make. I had no time for this. My wife is out of town with our other ride. I was now just a guy who needed a car. I spent five hours waiting for BMW Roadside Assistance to come pull a broken electric car out of a tight parking space in an alley.

I got the car back Wednesday after some melted module had been replaced. I have a lot more to say about this unpleasant experience, but I'll skip it. Enough first world problems for one day.











Tuesday, June 23, 2015

sad sentence

From the Wikipedia article on the Photophone:

"While honeymooning in Europe with his bride Mabel Hubbard, Bell likely read of the newly discovered property of selenium having a variable resistance when acted upon by light, in a paper by Robert Sabine as published in Nature on 25 April 1878."

I challenge readers to find a Wikipedia sentence with more unspoken sadness. Leave your best in the comments.

Saturday, June 20, 2015

backlog one

It's Father's Day Eve here in the United States. We've been chilling on the day-of event here in the U.S. for about a century but specific eve-of programming still has substantial regional variations.

In my new home in Washington, D.C. the traditions are in flux. In Washington, the basic summer strategy is to bolt for anywhere but here. That's what my family correctly did. I stayed behind to finish some work. I've spent the whole eve bumping into other similarly unraptured dads. My eve-of present is the peace to catch up with you. I'm incredibly grateful.

Our first order of business together is my backlog of gadget reviews. Here's a prototype of the Team Reograph lightning review format:

photo courtesy your correspondent
I bought a Clipper Creek HCS-40 EVSE for my BMW i3. I screwed it to the back of my workshop, hooked it up to the workshop subpanel, and plugged it into my car. It makes my car go. The barely-there lambskin action on the included Delphi cordset blows away the plug feel of the cheap (probably latex) sets on lesser charging stations. This box has juiced me for more than ten thousand miles seventy two miles at a time with no problems. Go buy one right now.


Monday, June 1, 2015

material science

I have a road bike that's about 10 years old. I hung it up in the rafters of my primitive, detached garage when I smashed a clavicle a couple years ago. At the time, I expected that this elevation would have the same symbolic and practical impact as a retired jersey -- a memento to lost youth and vigor.

I pulled the bike down from the rafters last night and expected the worst. I was sure the bearings would be shot, the tires rotted, and the brake shoes glazed after years of summer heat and winter cold.
Instead, I put a hundred pounds in the tires and a few dozen miles under them. Everything was perfect.

Just one day earlier, I twisted a key in my old BMW station wagon and it sprang to life. That car hadn't moved since its replacement with an i3 last August. The car fired right up. The pads complained about a year of rust on the surface of the rotors but the car issued no other complaints.

I parked the wagon after it made an expensive-sounding noise. It stayed parked as the Takata airbag saga unfolded explosively. I got a letter from BMW many months ago telling me to sit tight and wait for replacement parts to be available. My official recall notice arrived Saturday.

I never feel completely at ease about car donation. I have driven a series of esoteric cars that deserve as long and happy a life as can be managed but they seem thoroughly done when I'm ready to part with them. I was reluctant to unload the wagon into a next life where service appointments at the BMW dealer were an improbability. I thought I would just wait and have the airbag replacement done myself.

It's completely amazing that these rides could be ridden hard, put away wet, and pulled out later without immediate consequence. I thought of the BMW wagon and the older 318ti it replaced as maintenance pigs and perhaps they were by modern standards. They still ate up about a half a million miles between them without even a clutch replacement.

Negative nabobs warned of the catastrophic costs of battery replacements for those foolhardy enough to buy the new 2004 Prius. Mine has about 175k miles on the clock and on the original battery, on the original brake pads, and on only three sets of tires.

I'm not sure what the wear items are on a car anymore. That dramatic change has probably improved my quality of life more than most of the little gadgets that come and go through reograph central but I think about it rarely.

My 1977 Fiat X1/9 has not moved under its own power or otherwise in many moons. I expect a fight
when it does wake. I changed oil in the BMWs and Prius at about 12k mile intervals. The i3 will have its first scheduled service appointment about two years after I bought it.

At 12k miles, the Fiat manual suggests recutting the commutator on the starter motor. There is a little sliding port on the starter body for just this purpose and a special sacramental commutator cutting saw that slides right in to take care of this essential ritual.

The wear items I know now are mostly in my own body. All I can do about that at the moment is keep the bike out of the rafters.







Sunday, March 1, 2015

you say potato

I'm in England visiting family for a week.

Someone said "England and America are two countries divided by a common language". It might have been George Bernard Shaw. Some say it was Winston Churchill channelling Oscar Wilde in a seance. I'm pretty sure it was Blaise Descartes (known popularly as Mark Twain).

I jumped the divide in a Boeing jet with Rolls-Royce engines.

My Mac and the Nexus 7 tablet next to it are similarly divided. These devices have essentially everything in common. They speak the same wireless networking standards. They run the same browsers. Their kernels share a common spiritual ancestry. They are nonetheless a world apart.

I have it on good authority that Neville Chamberlain said "Audiophiles don't use their equipment to listen to your music. Audiophiles use your music to listen to their equipment.". I'm taking this to a completely new level. I'm using equipment playing music to listen to my software.

The music is "Music Has the Right to Children" by Boards of Canada. Boards of Canada is, naturally, a Scottish duo.

My software is phonoh. Phonoh is a stupidly simple HTML5 music player built hastily to let me listen to tunes on my new Mac without iTunes. I have been in meta-audiophile heaven for a month.

As I sat in the departure lounge waiting for my flight, I realized that my laptop had the battery life to play me tunes across the Atlantic but that my tray table would be sized for a phone. The charge in the phone battery was far to valuable to blow on music. I pawed around in my bag looking for a battery that I could use to recharge the phone after. I found a Nexus 7 tablet.

When I saw the tablet, I wondered if I could use it to charge my phone with some kind of USB OTG lashup. Only after that did I remember that the Nexus was actually supposed to be a computer in its own right and that it might be able to handle something as simple as playing some music.

I spent a few minutes trying to get the Mac and the Nexus to exchange music wirelessly somehow. My first stop was 'Send File to Device' in the Mac bluetooth menu. The Mac promptly started sending tunes to the tablet at a maximum of about a hundred kilobytes a second. Here's some perspective on a hundred kilobytes a second. Uncompressed CD audio, in stores for Christmas 1982, is a hundred and fifty kilobytes a second. These two devices could not sling a CD between themselves with bluetooth in real time. Sending compressed audio over bluetooth is barely faster than a 'high-speed dub' on a duacassette deck.

Perhaps the right answer was to negotiate a connection over bluetooth and do the actual transfer over WiFi. Super. I took my phonoh URL on the Mac and clicked share. Oops. The Mac can share files over bluetooth but not URLs.

I'll AirDrop it to the Nexus. Oops. Android can't do AirDrop. (I tried this again later between my Mac and my iPhone. localhost URL sharing doesn't work there either, though for different reasons)

I gave up and typed my phonoh URL into Firefox on my tablet. The URL used the ZeroConf name for my laptop. Oops. The browser on the Nexus doesn't recognize ZeroConf.

I looked up the IP address assigned by the airport WiFi and typed that into Firefox on the Nexus. Oops. The airport WiFi blocks device to device traffic.

I got my phone out and turned on personal hot spot. I joined the Mac and the Nexus to the phone, looked up the address assigned by the phone, and typed that in.

That worked, but didn't accomplish anything. I needed a way to cache or store the tunes on the Nexus, not stream them from my laptop.

I fished a USB cable out of my bag. I used adb to trasfer some tunes to the 'Music' directory on the Nexus. I would just let whatever native music player existed on the Nexus just play me the music. Alas, the Google Play music app could not see any of the tunes I had just transferred. The tablet couldn't be bothered to look around for what were the only files I had ever transferred to the thing. Files dumped in a folder called 'Music'. The tablet offered to sell me some music instead.

My technology odyssey didn't end here, but this installment in the story does.

Monday, February 16, 2015

obsoletion

If you're like me, you haven't yet jumped in the internet of things bandwagon. How can we? I don't even know the collective noun for these gizmos.

If the absence of definitive guidance from top brand consultants, I've been left, literally, to my own devices.

I, and my gadgets beside me, humbly propose 'obsoletion' as this wanting collective form. For example: "I have an obsoletion of Insteon switches, but they won't talk to my Nest-aware turkey fryer thermostat!!"

Friday, February 6, 2015

API

XKCD has totally nailed it with API.

The very idea of API keys is as big a threat to free software, an open web, and privacy as
software patents, the digital millennium copyright act, closed app stores, and locked phones combined.

API pairs well with Installing.


Monday, January 26, 2015

ready

I noticed a 'ready for hillary' bumper sticker for the first time today.

I may live in the D.C. but I'm still just a lower echelon gadget blogger, not a high powered politico or brand consultant. I can tell you that 'ready' is not a winning brand strategy.

The American people are sick of a long list of things -- somewhere on that list is 'ready'. My sources tell me that ready.gov, a disaster preparedness site run by the Federal Emergency Management Agency, had over three dozen interested visitors last year -- but not many more than that. We had years of 'shovel ready'. In the trenches of consumer electronics, we dealt with 'HD Ready', 'Ready for Vista', and '3D Ready'.


For millions of consumers, ready now means something only in newspeak. A product that announces its readiness may really be saying "I would have included that technology but something went irretrievably wrong on my way to market. My manufacturer needs to sell something now and you're obviously looking to buy. If we can pretend that I'm not obsolete then you can take me home today." I just e-wasted a printer that was Wi-Fi ready. Its readiness? An ethernet port.

I think marketers now know that ready is over. The present boom in smart TVs skipped a boomlet in 'Smart Ready' TVs. As far as I can tell, a Smart Ready TV would have been essentially any other TV.



Back to Hillary. In our newspeak, the RFH campaign is really saying that they meant to be fully Hillary 2.0 Compliant but it somehow all went off the rails just as the stickers were going to press. Ready just doesn't convey a sense of readiness anymore.

As a consumer advocate, I would stay away from Hillary Ready products and wait for genuine Hillary On Board items. None were on the floor at CES this year, but I'm looking forward to some as early as the first quarter of this year. I'm hoping that H.O.B. 2.0 will pick a wireless charging standard as a running mate and finally bring some clarity to the situation. I'll bring you a complete analysis as soon as I get a review unit. 




Tuesday, January 13, 2015

phonoh

CES has come and gone and there was not much to report. Neil Young's 'Pono' musical toblerone had its big debut. Eager readers can pre-order now for February delivery.

I told you last week about my own dissatisfaction with the state of my tunes. The silence of my new MacBook has been an improvement over iTunes. Still, I crave the highly compressed audio junk food Neil Young seeks to eradicate. I need it the way hipsters need tater-tots. I couldn't sleep.

I hacked until music started playing. Then I stopped. Here it is. I give you phonoh. Works in Safari and Chrome. Drag files from the Finder on to the deck.

Here's a complete rundown on the features:

ControlsNone
WarrantyNone
PortabilityNone
PlaylistsNone
EqualizerNone
Music StoreNone
WearableIn a backpack
YellowNone
Letter 'H'Two!

In the harsh light of this rigorous comparison, the otherwise minimalistic Pono appears to drip with baroque and unnecessary features. Phonoh packs the only feature that counts -- the letter 'H'. Pono? None. Phonoh? Two!

The 'H' isn't silent to real audiophiles, Neil.

Sunday, January 11, 2015

pepsi challenge

Here's a quick manifest of all my personally owned laptops up to this morning:

1998: Sony Vaio 505 (PCG-505 TR) -- this machine rocked!
2000: Sony Vaio SR-33 -- this machine sucked!
2001: Apple iBook (Late 2001) -- this machine rocked!
2004: Apple Powerbook G4 -- this machine rocked!
2006: Apple MacBook Pro (core2duo) -- this machine rocked!
2011: Apple MacBook Air 11" (Mid 2011) -- this machine rocked!

Today adds:

2015: Apple Macbook Pro Retina 13" (Mid 2014) -- I expect this machine to rock!

That first machine in 1998 weighed 3.1 pounds, lacked an optical drive, and came loaded with a bunch of bloatware. Today's machine weights 3.46 pounds, lacks an optical drive, and came loaded with a bunch of bloatware.

The worst piece of bloatware on this new box is a thing called 'iTunes'. It shares a name with a clever little bit of music management software I used to use on my 2001 iBook. The iTunes of today is a sprawling monstrosity that leaves me more confused with every new version.

I'm taking the Pepsi Challenge with the new machine. I'm going to listen to music on it without iTunes for a month. I'm not turning my back on Apple, or Mac OS X, or even my library of purchases from the iTunes store. Just iTunes itself.

I'm not even going to ditch iTunes yet on the iMac in our house where many purchases are made. Just on this machine. I've made one trip in and out to authorize this machine so that DRMized iTunes content will play in QuickTime and then hopefully in the browser. Audio seems all aces so far, video is not yet happy.

Though this machine is a technological marvel, I'm actually more excited about nuking iTunes than I am about this 'Retina' screen.

Monday, January 5, 2015

jazz

I told you in July about  a small logo I built for my kids. It is still here.

We still use it -- more than I can say for some already forgotten Christmas toys. We use it a lot.

We use it for logo. We use it to generate G-code for our CNC machine. Now we use it to make music.

Shouts out all around for the community of hackers who brought us HTML5 web audio. The best thing about web audio is that it makes sense. There should be many moneyed interests that benefit from a programmable web.

Our logo now lets kids play musical notes with the 'play' command. Here's an example:

play [ list '4G4' '8F4' '4E4' '4D4' '4C4' '4D4' '4E4' '4C4' ]

'play', of course, is implemented with web audio. My six year old played with 'play' for just a few minutes before going to a cupboard and dragging out a USB MIDI keyboard controller. It was completely obvious to her that music should go into the computer just as easily as it comes out.

Thank heavens for six year olds.

I sat her down to have a little chat. I dread these chats. Granny's dead. Santa's not real. Democrats lost the Senate. The chat I dread most is also one of the most common in our household -- Computers aren't wonderful in the way you are now imagining. It breaks my heart every time.

I told my daughter that we could plug it in but nothing would happen. I said we could run GarageBand, but her expression turned to a scowl before I could even finish speaking. "That's
the confusing program!" she said. She's right. GarageBand has all kinds of problems. One is that
it often crashes for us -- on both iOS and MacOS -- when our four year old wails randomly on the MIDI keyboard.

This is where Chris Wilson, from Google, swoops in to the rescue.

Chris wrote Jazz, a browser plugin for MIDI. Chris is also an author of the more complicated W3C Web MIDI API specification.

It took me only about ten minutes to bang some basic MIDI into our logo using Jazz. I took a stab
at using the native MIDI apparently available in Chrome. More than an evening has already disappeared down that hole at this point.

If you load logo and have the plug-in installed, you can plug in a MIDI keyboard and hear notes
without doing anything -- even reloading the tab. It works as an automatic, trivial keyboard instrument. It tolerates a four year old banging on the keyboard.

Almost nothing else works properly at this point. You can't record MIDI from logo yet. You can't do MIDI output. You can't use the keyboard to control the turtle. I'm not worrried about any of that. That's the easy stuff. The fun stuff!

The hard part was building something that just works. Chris Wilson did that with Jazz and I'm grateful.

MIDI input is not like web audio. It doesn't make automatic sense for folks under 40. That's what makes me especially glad for Jazz. The various moneyed browser folks are still in the wilderness on this one.

The Chrome folks took a swing at MIDI in the browser but haven't quite gotten there yet. The Mozilla folks are still fooling around with game controller support in the browser. I suspect they were smoking some powerful 'set-top box' peyote when they came up with this one. They will
eventually get on board. Apple's still busy not supporting WebRTC. They will get their act together once they realize that MIDI keyboards don't have an escape key.

MIDI in the browser is solid gold. With MIDI and logo together in the browser, I feel like I'm getting the band back together from the '80s. It feels good, though we're having a bit of trouble coaxing the KoalaPad out of retirement to play bass.