ongoing by Tim Bray

ongoing fragmented essay by Tim Bray

FaviconOlympus TG-5 “Tough” Waterproof 13 Aug 2017, 3:00 pm

I found myself vacation-bound to Queensland (that’s the top right corner of Australia) and the itinerary included beaches and coral, specifically the Great Barrier Reef, which is dying. I like to photograph the places I visit, and the Olympus TG-5 is getting lots of buzz in waterproof-cam circles, so I got one.

Olympus TG-5 under water

The manual says that when it’s been in the ocean,
you should give it a ten-minute freshwater soak.

Camera geekery

The Oly TG “tough” cameras have been underwater stalwarts for years, and the -5 differs from its predecessors notably in shooting RAW, offering 4K video, and having fewer megapixels, for better low-light sensitivity. Oly obviously knows what camera geeks want to hear.

Up until the point that phones became good cameras, I’d always had a “pocket cam”. On this trip I had one again, and it was kind of nice. It doesn’t actually take better pix than my Pixel, but unlike any phone-cam it has a competent little zoom (30-100mm equivalent). What’s weird though (if you haven’t dealt with a marine model before) is that the zoom is all internal, there’s a soft hum but no moving parts. That’s probably why the sensor’s so small. Anyhow, it’s small enough to take along on the airplane and shoot out the window.

Pacific Northwest islands Sandbar somewhere between NZ and Australia

The first is near Vancouver; the sandbar is somewhere
in the blue water between Auckland and Cairns.
Couldn’t have captured either with a phone.

It’s pretty easy and fun to use; too many “modes” for a Fujiholic like me, but I mostly left it on auto and thought it mostly did the right thing.

As with all modern cameras, the image quality is not terrible, probably better than almost anything digital much before 2010.

Beach near Port Douglas, Australia

Could you take that with a phone? Sure, since it’s zoomed right out; but only if you didn’t mind taking your phone into chest-deep seawater.

It’s also got an interesting “microscope mode” for extreme close-ups. I had a lot of trouble getting anything useful out of that. These leaves are absurdly tiny. My problem was finding things that were tiny and also interesting.

Extreme close-up, Queensland rainforest

Under water!

Well, that’s what I got it for. These are all taken at Agincourt Reef. Pictures first, then a few notes.

Agincourt Reef, Great Barrier Reef Agincourt Reef, Great Barrier Reef Agincourt Reef, Great Barrier Reef Agincourt Reef, Great Barrier Reef Agincourt Reef, Great Barrier Reef

I was just snorkeling and free-diving (on top of which I had a cold, which gets in the way) — this would be a lot easier with scuba gear and a clear head. The pix out of the camera were pretty uninspiring, but since it shoots RAW, I could bring Lightroom muscle to bear. In particular, its Dehaze control (under the Effects menu) was very helpful. Two things come to mind: First, underwater photography is hard, and I’d never done it before. And compared to Hawai’i, the Great Barrier Reef has much less underwater color and visual drama; the above are definitely highlight-reel shots.

The camera comes with three different underwater presets, but after about the first ten minutes, I gave up and put it in the “P” mostly-auto mode and went with that.

It was great fun and I’m looking forward to another outing; I know I can do better and I’m determined to try.


The two little pix to the right are linked to short movies, shot at 4K and reduced to 1280x720, so “only” 41 and 23 MB respectively. I trimmed and exported them in Lightroom, but that’s all the video editing it offers; they’re otherwise straight outta the camera. I have no idea how this will work on your browser, I’m a complete video virgin.

Incoming waves

For the first, I set the camera down in the sand just where the waves were petering out, let it run for a bit, then zoomed out. Pre-zoom, you can see one wavelet bounce back off the camera. After, watch how the auto-focus works with the waves, which is not bad. I think I’m going to take one of these at every future beach I visit.

Free dive

The second is what I guess people buy these things for, just a record of part of a short free dive, max depth maybe three meters. It shows the coral colors as they mostly are, and without direct sun; not terribly intense or exciting. But there are a couple of yellow fish and the ascent is visually satisfying.

There’s so much craft in producing decent video and I don’t have any of it. But if you do, or if you just like taking pictures underwater, or having a camera you can set down on the beach or use in places where no sane person would take one, the TG-5 is a pretty good choice, I think.

It’s dying

The Great Barrier Reef I mean, killed by this insane uncontrolled experiment where we dump megatons of carbon into our planet’s air without considering the consequences. That’s one reason we went. It’s also a reason I don’t want Canada exporting any more of the carbon-laden crap coming out of the tar sands, and will do what I can to keep that from happening.

And, I have to admit, we should all be doing less flying around in airplanes. If the only flights were for vacations, and to worship at natural temples like this one, we could probably still save the earth, or at least the coral.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconTLS Wiretap Fear 24 Jul 2017, 3:00 pm

There is a hot lengthy argument going on in the IETF’s TLS Working Group which has been making me uncomfortable. It’s being alleged that there is an attempt to weaken Web security in a deep fundamental way, which if true is obviously a Big Deal.

What’s an IETF TLS WG?

TLS is a broad term for the family of crypto and related security protocols that make the Web secure. You may have noticed that more and more web addresses begin with “https:” rather than “http:”, which is a good and important thing; TLS in action.

The standards behind this good and important thing are hammered out by the Internet Engineering Task Force’s (IETF’s) Transport Level Security (TLS) Working Group (WG). They do their work in public and you can watch them.

Recently, there has been a ferocious outburst of controversy, kicked off by a thing called Data Center use of Static Diffie-Hellman in TLS 1.3. Some people say it’s a practical extension to let people who run data centers manage their network traffic. Others say that it’s an attempt to build wiretapping into the Web.

I’ve been reluctant to write about it because I am not a crypto wizard and don’t really understand Diffie-Hellman well. Fortunately, Stephen Checkoway, who is an expert, wrote TLS 1.3 in enterprise networks, and I was pleased to discover that he saw the picture more or less the same way I do.

Clearly, this is a subject on which reasonable people can disagree in good faith. But let me throw a little fuel on the fire: I think that in fact some people and organizations do want to add wiretapping to the Web, and in a way that would be overly difficult to detect by people being wiretapped. I further think that there’s no excuse for doing this, and agree with Checkoway’s take-away: “Yes, switching to TLS 1.3 will prevent operators from doing precisely what they’re doing today; however, there is currently no need to switch. TLS 1.2 supports their usecase and TLS 1.2, when used correctly, is secure as far as we know. Of course the network operators won’t receive the benefits of mandatory forward secrecy, but that is precisely what they are asking to give up in TLS 1.3.”

So, dear IETF TLS WG: It really looks like you shouldn’t do this.

Finally (on a related but distinct subject) I’m a little worried how easy it seems to be to introduce a wiretapping capability into TLS 1.3. But that’s all I’ll say on the subject because, as already stated, I’m not a crypto nerd.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconAndroid Auto 22 Jul 2017, 3:00 pm

I just had my first experience with Android Auto and I suppose there are lots of other people who haven’t been there yet, so a few words might be useful. Short form: Rough around the edges, but super-helpful.

What with my job, I sometimes have to travel between Vancouver and downtown Seattle; all the options are lousy. Driving isn’t my favorite but sometimes it happens. Recently I rented a car for the purpose; reserved the standard corporate-guidance minibox but they were overrun with summer tourists and, threatened with a long wait for the right car, I became That Guy you want out of your face. So they picked the top key off the stack and gave a brand new Dodge Charger with Android Auto (hereinafter AA).

Dodge Charger

What a ridiculous car. It has muscle bulges on its muscle bulges. Nobody would call it agile; stomp the gas and it takes a few moments to make sure you really meant it. But then, oh my goodness it gets down and boogies, putting all those bulges to work. I had great fun blasting through gaps in Seattle’s infamous perma-jam. Also, the seats were comfy.

Would I buy one… Are you kidding me? But thanks to National for the impromptu upgrade.

But I digress

Back to Android Auto. Once I plugged in the USB, my Pixel hooked up to the car right away; all I had to do was tap “OK” a few times.

Android Auto screenie

I used it to play music, send and receive phone calls and texts (with Signal of course), navigate, and listen to a ball game.

On balance, it works pretty well, albeit with rough edges. Here’s what you need to know about conversing with AA: Your answers should echo the questions. For example, if you get a message and AA asks you if you want to respond, don’t say “Yes”, say “Respond”.

Amusingly, I got a front-row seat for this bugfix; on July 16th I couldn’t get texting to work, but it was fine on the 18th.


Google Maps are pretty great and so are AA’s. The UI could use a little polishing; if I say “OK Google, directions home.” and there’s only really sane choice, don’t make me tap the screen, just go there.

The real pleasant surprise was when I sort of lost context on where I was and how far I had to go. I pulled over and discovered I could actually pinch, zoom, and rotate the on-screen map. Impressive!


This was my fave. “OK Google, play Led Zeppelin.” “OK Google, play Rough Mix.” “OK Google, play Drycleaner from Des Moines”. Sometimes it takes a surprising amount of time to think it over, but I gotta say, it never missed. Now, I didn’t try any classical choices, because after all it was a Dodge Charger.

All this presupposes you have Google Music set up, which I strongly recommend; it’s free and good, what’s not to like?

What else?

Well, there are lots of apps, but I’m not seeing anything that’s making me breathe hard. Well, Skype could be handy. Also, I wouldn’t mind having a voice reading my Twitter stream when there’s hot news breaking. But I have to say that maps, music, phone, and text hit a huge 80/20 point.


  1. Bigger screens are better. The Charger’s was only OK, which left AA sort of cramped, surrounded by the Charger’s built-in apparatus for radio, climate-control, and so on.

  2. I think I need AA in my next car.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconOn Password Managers 16 Jul 2017, 3:00 pm

It has come to my attention that people are Wrong On The Internet about password managers. This matters, because almost everybody should be using one. Herewith background, opinions, and a description of my own setup, which is reasonably secure.

What is a password manager?

It’s a piece of software that does the following (although not all of them do all of these):

  1. Store your passwords in a safe way, protected by at least a password, which we call the “master password”.

  2. Make new passwords for you. Here’s an example of a generated password: QzbaLX}wA8Ad8awk. You’re not expected to remember these.

  3. Make it easy to use passwords. One way is to copy it out of the manager and paste it into a password field. Another is to use a browser plugin that auto-fills login forms. On certain combinations of app and mobile device, you can use your fingerprint to open the password manager, which makes everything way faster and easier.

  4. Store other stuff too. I keep various Important Numbers and AWS credentials and recovery phrases and so on in there.

  5. Synchronize between devices. I have two computers and one phone and I need access to my passwords on all of them.

There’s more, but those are the essentials. The effect is that you end up using a different password for every site and app, that they’re all strong, and that you don’t have to remember very much.

My own manager, which I’ve been running for years now, contains 504 items, and I use it a few times a day, every day. Granted, many of the 504 are for sites and apps that no longer exist (like the dead people I can’t bear to erase from my contacts).

How they work

It’s pretty straightforward conceptually. They have a little database with all the stuff in it, and it’s all encrypted using your password. So even if someone steals the database, you’re probably OK because modern crypto makes it really hard to crack the code.

Where it gets interesting is how these things synchronize between devices, and how they use the network.

Basically, it comes down to this: Can you get access to your passwords over the Web? Lots of password managers allow this, but some don’t. For example, I use the 1Password app, which has no website whatsoever, and has a variety of ways of syncing (iCloud, Dropbox, WiFi, local folder) none of which involve talking to a website with a browser. [There are lots of other password managers, which I’m not gong to write about because I don’t use them.]

What’s wrong with a Web site?

The problem is that the site has my encrypted data, and at some point, wants me to type in the password. Thus, in principle, they can peek and see my passwords. And hand them over to the NSA. Or to the criminal gang that abducted the CEO’s children. This makes me unhappy.

In principle, this could be OK. What with modern JavaScript, it’d be perfectly practicable to do all the crypto inside my browser, never send the password (or anything unencrypted) over the wire, and have me sleep soundly at night. Furthermore, since JavaScript is by definition open-source, I could in principle look at the code and satisfy myself that it’s wholesome.

In practice, nope. The JavaScript platform is dynamic to the core and horrifyingly complex even before they start loading massive modern application frameworks on it; any teeny little bug or zero-day exploit at any level of the stack and I’m cooked. Also, the NSA or a crook only has to make the slightest little mod to the code, and take it away a few milliseconds later, and the horse would (silently) be out of the barn.

In the 1Password app’s sync model, however, one assumes they use the pretty-secure HTTPS-based APIs for each of these products, machine to machine, no JavaScript in the loop.

Why we’re talking about this

Because AgileBits, the company behind 1Password, is trying to get people to move over to a Web-based thing; that’s what you find when you go to

There’s a decent summary at cyberscoop and a longer, more personal narrative from Kenn White.

I, like many security-conscious people, am just not gonna use anything where the same party, who’s not me, gets to see my stored data and my password. Sorry. But I love the 1Password apps and I’d really like to go on using them. More on that later.

Let’s get serious

Am I claiming that my app-only approach is 100% safe? No, because security just isn’t binary, ever. Let’s see:

  1. The bad guys could slip a sedative into my coffee at a coffee shop and install a keylogger on my computer, or

  2. install a camera anywhere I work and focus it on my hands, or

  3. phish me with a super-clever website or poisoned USB key, and get the keylogger in that way, or

  4. point a gun at me and ask me to unlock all my devices (then probably pull the trigger), or

  5. send a National Security Letter to AgileBits and force them to put backdoor code in a future 1Password app release that sends the goodies to the enemies.

And anyhow I’m obviously a lame-ass hypocrite because I use the 1Password Chrome plugin to fill in forms for me, and this means I type the master password into a browser. Having said that, I verified that it works when I have the networks turned off, and at the end of the day, the plug-in is no more nor less secure than the app I use all the time.

Is your setup perfect?

Well, I only remember four passwords: For my personal computer, for my work computer, for my AWS account, and the 1Password master. And the AWS password is just an accident of history; I only need 3.

Obviously I change them regularly and use password-less ssh access wherever I can, and lots of places I go have two-factor, via SMS or hardware token (Gemalto, Yubikey) or the Android Authenticator app.

So, on balance I feel pretty secure. One downside is when I’m setting up a new computer or phone. The process of typing in long generated passwords on a mobile “keyboard” is so impractical as to be hilarious.

In effect, my security is about as good as my mobile device’s. Actually a bit better, because the 1Password app needs one more fingerprint-or-password.

You sync through Dropbox, are you crazy?!

After all, Condi Rice is a board member, which has to worry you. But let’s assume the worst: that Dropbox turns turtle for the Feds, or gets totally pwned by bad guys. So, congrats, they have my encrypted password file. It’s not impossible that they might crack it. But it’d probably be easier and cheaper for them to slip a sedative in my coffee, or… (see above).

Why is AgileBits doing this?

For the same reason that Adobe has been pressuring its customers, for years now, to start subscribing to its products, rather than buying each successive version of each app. A subscription business is much nicer to operate than one where you have to go out and re-convince people to re-buy your software.

I understand, and I support AgileBits wanting to become a subscription biz. But I still want to keep my data and password away from their servers. This all seems fine to me. I pay my monthly rent to Adobe and it’s for Lightroom & Photoshop, not for their unexciting server-side offerings.

So AgileBits, why not? Please go ahead and start asking for subscriptions. But don’t ask paranoid people like me to go anywhere near

AgileBits has addressed the situation in Why We Love 1Password Memberships, but it’s really unsatisfying, totally ignoring the security concerns. And (I guess I shouldn’t be surprised) failing to acknowledge the business advantages for them in making this move.

Am I wrong?

Maybe there’s something I and the others who are all upset about the 1Password move are missing; maybe it’s all just OK and there’s really no significant loss of security. In which case, AgileBits really needs to explain why.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconMap Review Fear 29 Jun 2017, 3:00 pm

My daughter had a swollen infected face on a holiday morning, so I looked up nearby walk-in clinics on Google Maps. The one I picked was deserted, efficient, and kind. Afterward, without even thinking about it, I tapped a good review into the map. Then I wondered if I might be part of a really big problem.

On Google

I’m still broadly in sympathy with Google’s efforts on the Internet, which have mostly made it better. And they’re so easy to understand: They want everyone to be online all the time to see ads, ideally on a Google property where they don’t have to divvy the take.

Autonomous vehicles? Online while driving. Google Glass? Online while walking. Blogspot? Gmail? Maps? YouTube? Whatever you’re doing, do it here please.

On reviews

Crowdsourced reviews are, on balance, a Good Thing. Sure, for anything you care deeply about, there are specialist pubs with writing by educated pros: DPReview, Wirecutter, Stereophile, and so on.

But for shopping sites, travel sites, anything sites, a good review infrastructure that inspires trust is a huge value-add.

But, for hardware stores? Clinics? Gastropubs? In fact, anything you use a map for? It dawns on me that I’ve started consulting those reviews that pop up on every map search; because they’re useful. And now, I’ve written one. And did Google ever let me know they were happy; unctuous thanks, gentle encouragement to do it again.

Google’s dominance in the map space never bothered me because the product, by and large, is very good. Maps would be very near the top of any list of apps I value and use the most. But the potential commercial power in that review inventory is awesomely, frighteningly, high. I thought of a few ways you might monetize it and they all left bad tastes in my mouth. On top of which, it’s a moat around Maps, making it hard for a competitive technology — this is the first generation of online mapping, of course there are huge improvements to come — to get a foothold.

Me declining to review places won’t bend any curves. But now I don’t feel so good about doing it.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconPhone Obsession 28 Jun 2017, 3:00 pm

On a recent Saturday night, a family connection got into trouble that took me on a rescue mission to a party gone wrong, then Emergency. Then it echoed into nightmare.

At the party scene there was broken glass and shouting and eventually first responders, and a partier left by ambulance; I beat the officials there and tried to hold things together. This young woman, barefoot and disheveled in her party dress, wandered through the front room a couple of times, crying. And in between the sobs “I can’t find my phone. Fuck you! I’ve lost my phone. Go away! I just gotta get my phone. Shut up!

Others rallied around suggesting the back yard, the basement,the bathroom; they got the abuse. I heard she found it, finally.

So I went off to Emergency to see if I could help out, pretty busy there on a weekend night. I wasn’t there long, but on two occasions a gentleman was escorted out by multiple large serious suddenly-appearing security employees, explaining that “No she doesn’t want to see you. She doesn’t want you here.”

One of these guys was telling them how much he loved her and respected her and would never want to hurt her and that he was terribly sorry for anything that might have gone wrong. A wasted-looking woman, thin as a wraith, wandered through trying to bum a smoke and told the dude “Nobody wants you here.”

He broke down suddenly: “OK, whatever, it’s just I really need my phone, I dunno if she’s got it or it at’s her Mom’s.” The security guy said “If I ask, will you just get out of here?” I never heard how that one ended.

Apparently there were no disastrous effects from the bad-party night, but I think it planted a seed, because a couple days later I woke up after a nightmare that I remember (rarely happens) in vivid full-color detail.

Riding a train to Boston with colleagues, I was between cars on my phone and accidentally stepped off the train at the last stop before our destination. As it pulled away I was furious but I knew what to do: Contact my party and ask them to grab my stuff before they got off, I’d catch up somehow. It was a pretty short stretch, so I’d have to get through fast.

But my dream-phone went into pathological-resistance mode; we’ve all been in that place where a device decides it’s not going to wake up, then won’t let you sign in, then the app you need won’t start, then it stupidly won’t recognize the name of a contact you’ve used lots of times, then drops into autocorrect-Swahili-emoji mode, then an update notice jumps in front of what you’re trying to do and captures a tap that that it thinks means “go ahead”.

Maybe not all those things happened in my dream, but what did happen was the UI finally morphed into this weird red/yellow dragon motif like a cheap Chinatown awning, and simply ignored all forms of input, as the seconds ticked away. I woke up sweating with that instant profound “that-wasn’t-real” relief. I’m pretty sure now that Chinese-torture UI mode is lurking somewhere in Android’s bowels waiting to leap out at me.

So what is this about?

Maybe we’re all getting a little overly intimate with our mobiles?

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconBye, Rune 24 Jun 2017, 3:00 pm

She was a purebred (Bengal) actually, with a formal name: Bellsangels Rune, and a pedigree. Born March 23, 1998, departed this life June 23rd, 2017, aetat 19 years and 3 months. She predated our children and digital cameras and this is the only obit she’ll get, so it’ll be lengthy. But not unamusing I hope, full of stories, and bookended by baseball.

Bellsangels Rune

The “Rune” is because when she arrived the senior housecat was named “Bodoni” after the typeface, and we failed to find a font we fancied with a feminine feline name; since she was skinny and angular “Rune” seemed OK. Our next-door neighbor called her “Rooney” and there was no point correcting him.

We bought a fancy cat because we were mad at the Humane Society for sending us home with Millie the kitten, who turned out to have distemper and died in 48 hours. Which prevented us from adopting another for a full year, to avoid lingering microbes.

Rune was the best cat ever, but the fancy-cat-acquisition process gets you into pretty weird territory. Her breeders were in a distant suburb, in a big carpet-free house full of kittens and a morose Great Dane, eye bandaged due to kitten-stab.

Also they operated a cat hotel which we patronized a few times while traveling. Its rooms were themed: I only remember the Bridal Suite and the Sports Bar (walls lined with real booze in miniatures). They’d come and pick the boarders up in an old limo with a huge stuffed tiger in the back.

They never, even once, used the word “cat” — “kitty” and only “kitty”

One time I asked them if they showed their cats and they said No; that they’d found the people who show cats were a little on the strange side.

Rune on a rafter

A very early digital photograph, captured in December 1998
on a miserable little 640x480 first-generation digicam.

Above, Rune’s on our exposed upstairs rafters; she leaped from one to the next for pure fun. It felt a bit odd betimes, when she’d park on the rafter over the shower and admire your scrubbing technique; I guess she liked the steam.

She was lethal in her youth, the terror of the local rodents and even biggish birds. One time she and I were chilling on the front steps when a crow landed on the neighbor’s porch railing to caw at us with attitude. On the third caw Rune was down the stairs, through the hedge, up the side of that porch, and the crow’s leg was in her jaws, before the bird or I could react. But she was a small cat and it was a big crow. I intervened to put the bird into the fork of a big tree and the cat inside. Maybe the crow survived.

The other crows learned. In her prime, it was super-annoying the way they’d appoint a posse to follow her around the neighborhood, perch on wires and trees, and squawk at top volume when you were trying to have a conversation or listen to music. She hunched and looked oppressed, but I didn’t feel that sorry for her.

Rune on a vna

Rune has captured the neighbor’s van
and is wondering what to do with it.

She was a people cat. Unfortunately the three-to-five humans co-resident during her tenure were not nearly enough to meet her needs, so she adopted the neighborhood. The guy who called her “Rooney” is a little bit gruff and territorial; but eventually accepted that if the door was open, she’d be in to look for a lap or a handout.

This was mostly OK; but another neighbor (with whom we carpooled kids to school), seemed embarrassed not outraged when she confessed that Rune had sent her cat to the vet with abscessed wounds.

My personal fave episode was when she visited the upstairs next-door neighbors, which was OK but they forgot she was there and went out. After a while she became upset, which she expressed by pushing objects out their open bathroom window to the pavement two stories below; I think none survived.

Her magic, once again: Nobody complained. I guess they thought it was their fault.


Rune was occasionally a poor citizen of the household; sometimes maliciously so. In her view, the greatest sin, punishable by targeted peeing (more below), was ignoring her.

But the only time she drove me to violence (against any living mammal since I turned 18) was the Great Reshelving. We’d reorganized our shelves in a way that required that the books all be taken out, stacked on the floor, then replaced. This is an onerous task. Our shelves are deeper than strictly necessary, and Rune figured out she could get behind the books on a half-filled shelf and push them loudly out on the floor. What could be more fun?

Dear Reader, I must confess that, after a certain number of gleeful deshelvings, she impacted the sofa (soft, mind you) at fairly high speed and, on the rebound, failed to plant a clean landing on the hardwood. She glared at me and left the room in what P.G. Wodehouse used to call a Very Marked Way. Which she had to, because I glared back with intent.

In this case I have evidence. Here she is, disrupting the “T” section. Fortunately, she never actually realized that the volumes of Gibbons were separable as opposed to just a catwalk.

Rune displacing books

Peeing with intent

This was her worst, purely malicious, sin. She understood the cat litter (and of course the garden outside) perfectly well. But if when aggrieved (as in, left alone in the house for too many hours) she discovered a garment left on the floor near an attractive perch, she would perch, cock her tail, and express her smelly feelings with perfect aim from as far as several feet away.

“Well,” I lectured the children in a superior moral tone, “what can you expect if you leave your things lying on the floor all sloppy like that?” Having, of course, first suppressed the evidence of my own befouled knapsack.

Table raider

Another major sin. All the cats who’ve lived with us understood that We Do Not Feed Pets From The Table. The kids learned this early too. As did Rune, but she just didn’t care. If you got up, leaving a pork chop or chicken kebab on your plate, and foolishly didn’t push your chair in, you probably wouldn’t get to eat the rest of it.

Once again, I have photographic evidence.

Rune and boy

In this case, the meat is mostly gone from the plate,
so Rune is immune from instant banishment.
We both understood the rules of the game.

That, by the way, is my son, then aged ten, who just graduated from high school and may make a named appearance in this space soon if he wants to.

The best pictures of Rune are all looking up at her, because of course she enjoyed looking down on us.

Rune looking down Rune looking down

I’ll miss her awfully. But so far I’ve left out her purest love.

Video cat

From a cat’s point of view you can’t beat a TV binge, be it baseball or Miyazaki or long-narrative-arc series, because the humans’ thighs are horizontally immobilized on the sofa. She enjoyed us watching (to name a few) Lost and Battlestar Galactica and The Wire and Deep Space Nine and Orphan Black, rarely missing an episode.

Sometimes, knitting was involved.

Rune watching TV

Not watching out for Cylons.

Baseball brackets

Her end came fast; she’d been going downhill for months, but with little pain it seemed, and then one morning her back legs didn’t work, a blood-clot they said and not reversible, so the decision was easy. My son and I took her to the vet and held her warm while she died.

Neither kid had known a time without Rune, so it was a pretty gloomy household. Casting about the next day, I noticed a minor-league baseball game at the park ten blocks from us, so we went.

Minor-league baseball the day after Rune died

Rune had left us gradually, her illnesses mounting; I’d been dealing OK with the grief. But then I remembered a scene from the late summer of 1999 that our friend Kim photographed on film; a bit low-rez, but look at it anyhow.


We’d taken our new baby (the same kid you saw above) to a ballgame, strapped to my chest. It all went OK, the child pretty drowsy, till the home team made a brilliant double play in the second. I leaped up and clapped and cheered, and the poor little guy woke up, panicked, and howled fiercely, much to the amusement of my fellow fans: Spot the rookie Dad.

Whatever, we were going home with our new baby and our little cat would be happy to see us. Shortly after I took that 2017 ballpark photo, I thought of the other, and the empty house we’d be coming home to. I’m pretty sure nobody saw me weeping into my hot dog for a departed friend.

Tonight, I put on a high-tech fleece in the after-dinner summer cool and noticed it still had cat hairs on it in multiple shades of brown. I’m not putting it in the laundry any time soon.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconGames with Girls 17 Jun 2017, 3:00 pm

Weirdly enough, for the first time in my life I’ve been spending videogame time with members of the opposite gender; specifically, my wife and daughter. Which is an excuse for reflections on (and groovy pictures from) No Man’s Sky.

Open world, with spouse

I saw a review somewhere and on impulse picked up Horizon Zero Dawn, a pretty and fast-moving open-world bowshooter. I was watching one of the early cinematics when Lauren walked by, got stuck, and sat on the sofa. Surprisingly, she stayed there after the movie while I steered Aloy (the female protagonist) off into the game. Very surprisingly, a bit later she started pointing out opportunities to harvest goodies and dodge monsters. Shockingly, the next evening she wondered if I was going to turn on the PS4.



Now, I’m not in love with HZD. All the shooters I’ve played have been on PC, and I find the PS4 joystick combo hard to aim with, full of overshoot. Also, HZD’s designers love snowy backgrounds, and I just have trouble seeing the targeting glyph in white-on-white mode.

But I’m going to play some more. Sorry, I mean we’re going to play some more. And Lauren has to drive occasionally. It turns out that she sees lots of things on the screen that I don’t; very helpful.

No Man’s Sky, again

I played a while when it came out (see blogs here and here), enjoyed it a lot, but got bored and stopped. I noticed a couple big add-ons had dropped and one evening decided to poke my head in. My 11-year-old daughter walked by just as I went near some animal and the “Feed?” dialogue popped up. “You can feed the animals?!” and she was hooked. So we play for an hour a few evenings a week, and I’ll occasionally do a late run. She still won’t do space battles, but has mastered the trick of gunning down sentinels. (BTW, if you’re playing the game and not murdering a few sentinels, you’re working too hard for your zinc and titanium. Use your grenade launcher.)

So, doing things with your kids is good, but I’ll be honest, I’m enjoying it again. I like trading up ships and building bases and fighting pirates and discovering weird planets and laughing at silly creatures. I think what I really like is that it’s a relaxing dreamy time (with the occasional short space battle), I can do it for a while then knock off and head for bed not feeling too wired at all.

For those who haven’t sampled the game, or who did so briefly then fell away, go pay it a visit. Also, word on the street is more goodies coming.

Anyhow, the other thing I like is taking pictures; the game now includes a “photo mode” to make that easy. No Man’s Sky photography is definitely a thing; one of the subreddits recently ran a photo contest. One reason is that there’s a lot of attention to light in this game; while there are still things to complain about, they completely nailed that bit.

So, here are a few. Let’s start with exotic alien landscapes.

No Man’s Sky, red landscape No Man’s Sky, water world No Man’s Sky, scary cave

Then there’s our ship. Oddly, we traded down from A-class to a C-class, because it was bigger and well-set-up and cool-looking. But a freighter is in our near future.

The opening mountain-top shot is the only one from my homeworld “Bengal’s Moon”, a nice little moon with lots to harvest and really no irritants.

No Man’s Sky; mountaintop parking No Man’s Sky; by the beach No Man’s Sky; heading for an anomaly No Man’s Sky; space battle

That last one is actually a space battle; those two trails you see are pirates trying to kill me, but they’re doomed.

Now let’s look at some creatures.

No Man’s sky; crab thing No Man’s Sky; headlight creature No Man’s Sky; wings on the head

That last is ridiculous, a galumphing beast with aetherial blue wings on its neck that flutter furiously as it drifts about.

I’ll close with a couple of shots of a nice Gek.

No Man’s Sky; Gek No Man’s Sky; Gek close-up

No Man’s Sky has been accused of being little more than a generator of synthetic space-opera covers. I’m OK with that.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconPie Pride 15 Jun 2017, 3:00 pm

I apologize in advance for bragging, something I do here only rarely. But my Mom taught me to make pie and now I make pies. It’s a beautiful thing, and there are lessons to be had.

I’ve made two in fact. Here’s the first, with Granny Smith apples inside.

Apple pie by T. Bray

If you want the recipe, just roll the blog clock back a decade to August 2006, when I recorded my mother’s narration. A lot of wisdom packed into six minutes or so of lousy but appealing audio.

We visited her again this spring and I took a more intense lesson with hands-on and copious textual notes.

The second pie was rhubarb from our own back yard; I cranked up the sugar a bit because rhubarb; fortunately not too much and it was still tart. Here’s a piece; the picture suggests the flavor sensation:

A piece of rhubarb pie

The color is because I inadvertently purchased “golden” rather than regular Crisco. I’ve been told that pie crust is better with real actual lard, but I wouldn’t know how to buy that.

Pie supplies

You need equipment and technique to make pie. Specifically, a pastry cloth and dough blender. The first provides a surface to roll the crust out on, and then you use it to flip the crust over the rolling pin so you can unflip it into the pie pan.

As for techniques, two stand out. First, mixing up the flour and Crisco into the right crumbly consistency. My notes say “Dig, don’t mash, longtitudinally” and you definitely have to twist the wrist. I’m sure there are YouTube videos, or you could ask for an intro to my Mom, who can show you. It’s what the dough blender is for; here’s ours.

Dough blender

Second, there’s that business of flipping and unflipping and rolling pins and pie pans. The bad news is, it’s hard. The good news is, when (not if) you miss, you can maneuver the crust around and repair any damage pretty straightforwardly with leftover dough and a bit of water to make it sticky. I should mention that my Mom doesn’t miss, she drops the bottom and top crusts on dead center every time. Maybe when I’m 86 I’ll be able to do that too.

What are you proud of?

Someone asked me that not too long ago, and while I have this highly visible geek persona, on that front I always feel like I’m stumbling in the dark pushing through cobwebs, benefiting unfairly from multidimensional good luck, straining at the edges of what I can understand, asking people to explain things over and over. Imposter syndrome? Yeah, but extreme cynicism, plus suspicion of anyone who sounds over-confident, are super helpful.

So I’ll tell you what I’m proud of: Being a functional domestic adult. I can conjure up an OK dinner for the family from whatever catches my eye in the grocery on the way home, and have it on the table pretty damn quick after I come in the door. I can iron a shirt and calm a baby and clean a kitchen and prune a shrub and chainsaw firewood, then split it. I can untangle a ten-year-old’s hair after she’s been on the trampoline.

I’ve got a kid inside my head who’s in awe of my awesome mastery of these grown-up mysteries.

On top of which, I can now make pie. It’s the opposite of imposter syndrome, and it’s really OK, I think.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconGareth and Rune 30 May 2017, 3:00 pm

He’s leaving and she’s dying. Still, these are happy pictures.

Gareth and Rune

That’s Gareth Kirkby, a friend for decades, who came over for dinner because we’d drifted apart, it’s been a while, and because he’s leaving (has left now) for Asia, on a trip with no fixed end. He’s political, a good writer and a good person and full of surprises. We’ll miss him.

In his arms, Rune the Bengal cat, who is 19 years old and failing fast; a list of her ailments would fill too much sad space. But the interventions have (just barely) not reached abusive levels, and they happen without the hated trips to the vet. Spring is coming and she visibly enjoys the sunshine; but she won’t see another. She’s been the best cat ever, full of stories; watch for her obituary in this space pretty soon. We’ll miss her.

Gareth and Rune

We are waves climbing the beach, growing thinner, and who knows how far each will get? But a sunny spring evening on the porch stops time.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconRock Surprise 20 May 2017, 3:00 pm

On a recent Saturday we accidentally took in two very different pop-music concerts; I got one decent pic but ended the evening angry.

Months ago, I’d learned that All Them Witches were touring and bought Vancouver-gig tickets, because I liked the basic loud well-written tuneful guitar-rock songs I’d heard on the radio or YouTube or somewhere. Then Lauren looked at the calendar and said “Hey, we’ve got Bobbi’s birthday party that night.” But it was OK because the party was early.

It was at the Fairview Pub, which I’ve gone by on wheels and feet a zillion times, once or twice even recognizing the name of the bar band, but never inside. I assumed, at 4:30, it’d be beers and conversation.

But I got a couple of shocks when I walked in. First, there was a nine-piece horns-and-guitar soul revue tearing up Rock Steady. Second, once my eyes adjusted, I felt… young. Well, have a look at the picture.

Big City Soul

The band is Big City Soul. Not much of a picture, and unfair because it leaves out co-lead-singer Connie Ballendine.

They’re good! And the audience is old! But, so am I.

The waitress told me that the white-hair set comes in for the 4:30-7:30 show; then they have a rock band later, and a younger crowd.

So, the geezers on the dance floor were laying down some pretty sharp moves, and the band was playing some super hot licks. Pretty straight-ahead R&B; I remember Them Changes and Good Rockin’ at Midnight. They closed with Proud Mary, which it’s hard to do anything new with; their approach was playing it twice as fast as anyone, which worked OK.

Nothing I heard changed my life, but the band was tight and fast and beautifully rehearsed. Except, during a sax solo, I cracked up because the break had three bars of jazz in it, which just didn’t work — remember that great scene in The Commitments?

In fact, they were a lot like the Commitments, only greying middle-class Canadians instead of snotty Dublin greasers. Also, the sound was pretty good. I left smiling from ear to ear.

It didn’t last. All Them Witches were at Vancouver’s sleazy old Cobalt Hotel, near the heroin neighborhood. What a dive, except for it’s got a higher stage than most bar venues, so you can usually see the band.

The opener was meh, sang out of tune and played too long. Finally, the Witches ambled on stage and muddled through getting wired up. I guess they’re not at a level where they have a road crew as such.

When they were all connected, they started playing — the first attempt didn’t take for some reason but they lurched into gear on the second attempt.

The sound was execrable, with Charles Michael Parks Jr’s vocals mixed behind the guitars. The songs, interspersed with lengthy episodes of bass re-tuning, were pretty good when you could hear them. The dual-guitar sound occasionally bit down super-hard and just right. But basically, they just weren’t bringing it.

Charles Michael Parks Jr of All Them Witches Charles Michael Parks Jr of All Them Witches

Looks like a rock star, though.
Shooting live electric music with a modern camera is totally a gas.

I might even buy their recording. But that performance was a disgrace to an honorable profession.

I’m not ready to start dancing to the safe stuff with the other old people. But If you’re offering something new and fresh, you still have to come halfway and work for your money.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconI Don’t Believe in Blockchain 13 May 2017, 3:00 pm

There are conferences and foundations and consortia and keynotes; it’s the new hotness! But I looked into blockchain technologies carefully and I’ve ended up thinking it’s an overpromoted niche sideshow.

First off, I should say that I like blockchain, conceptually. Provably-immutable append-only data log with transaction validation based on asymmetric crypto, and (optionally) a Byzantine-generals solution too! What’s not to like? But I still don’t think the world needs it.

I’m not stuck on the technical objections, for example the laughably slow transactions-per-second of most real-world blockchain implementations. Where I work, scaling out horizontally to support a million TPS is table stakes.

I could maybe get past the socio-political issues, the misguided notion that in civilized countries, you can route around the legal system with “smart contracts” (in ad-hoc procedural languages) and algorithmic cryptography.

I could even skate around the huge business contra-indicator: Something on the order of a billion dollars of venture-capital money has flowed into the blockchain startup scene. And, what’s come out? I’m not talking about platforms that are “ready for business” or “proven enterprise-grade” or “approved by regulatory authorities”, I’m talking about blockchain in production with jobs depending on it.

But here’s the thing. I’m an old guy: I’ve seen wave after wave of landscape-shifting technology sweep through the IT space: Personal computers, Unix, C, the Internet and Web, Java, REST, mobile, public cloud. And without exception, I observed that they were initially loaded in the back door by geeks, without asking permission, because they got shit done and helped people with their jobs.

That’s not happening with blockchain. Not in the slightest. Which is why I don’t believe in it.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconStill Blogging in 2017 3 May 2017, 3:00 pm

Not alone and not unread, but the ground underfoot ain’t steady. An instance of Homo economicus wouldn’t be doing this — no payday looming. So I guess I’m not one of those. But hey, whenever I can steal an hour I can send the world whatever words and pictures occupy my mind and laptop. Which, all these years later, still feels like immense privilege.

A lot of good writing is on Medium, which has learned its bloglessons. Shortish-to-longish form: check. Something fresh every day: check. Follow your faves: check. But on my phone, an irritating goober at the screen’s foot says “open in app”, trying to tempt me out of the blogosphere, off of the Web. I guess lots of people go there but I’m not gonna.

On a blog, I can write about blogging and whimsically toss in self-indulgent pictures of May’s budding azaleas.

Budding azaleas

I can end my career, right here, in a flash. I can rant about the perfidy and corruption of my local governing party, who I devoutly hope are about to be turfed by the voters. I can discuss the difference between O(1) and O(log(N)), which can usually be safely ignored.

On blogs, I can read most of the long-form writing that’s worth reading about the art and craft of programming computers. Or I can follow most of the economists’ debates that are worth having. Or I can check out a new photographer every day and see new a way of seeing the world.

Having said that, it seems sad that most of the traffic these days goes to BigPubs. That the advertising dollars are being sucked inexorably into Facebook/Google and away from anyone else. That these days, I feel good over a piece that gets more than twenty thousand reads (only one so far this year).

But I don’t care. I’ll prove it by running a picture of a cement mixer’s insides.

Inside a cement mixer

I wonder what the Web will be like when we’re a couple more generations in? I’m pretty sure that as long as it remains easy to fill a little bit of the great namespace with your words and pictures, people will.

The great danger is that the Web’s future is mall-like: No space really public, no storefronts but national brands’, no visuals composed by amateurs, nothing that’s on offer just for its own sake, and for love.

Here’s a visual composed by an amateur.

New York in a rainstorm

Manhattan rainstorm (spot the bicyclist).

If you’re reading this, you have my thanks. But let’s be honest: I can’t know what you like. Every human product that’s really worth reading or seeing or hearing is made mostly to please its human producer. Because if you aim to please the world you usually miss, the target’s just too big and you can only guess where it is..

That, more than anything, is why I’m still optimistic about whatever this thing is I’m doing here.

Anyhow, I’m not going away.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconMLB Fan 29 Apr 2017, 3:00 pm

I was in New York last week, and got to make a call on MLBAM, a really smart customer of AWS, where I work. The first three letters in MLBAM mean baseball, of which I’m a devotee; and also a happy five-year subscribing customer of So I was feeling sort of multi-level fannish. It was super-fun, and I got a cute picture.

MLB’s in a nice corner of SoHo and the offices are drop-dead cool, although I suspect the bobblehead-and-memorabilia density might be a bit much for some.

Anyhow, while you’re waiting in the lobby you can admire their fine selection of trophies, a lot of them tech-geek stuff. But there’s at least one Emmy, and then have a close look at the one in the middle.

Trophies at the office

The little plaque says:
NYC Metro Sports
2008 Co-Ed Softball
Division 3 Metro Champions

There were at least two of those NYC-city championship trophies, and I suspect that’s pretty elite amateur-ball territory. What I’d call walking the talk.

A footnote, by the way: I’ve had MLB as a customer before, at Sun, pre-cloud. Sometime around the time they won that NYC trophy they took me out to an Oakland game. I got to sit in the press-box and it stands out in my memory because the visiting team was Seattle, and also in that box were the cheery and deranged Japanese press gaggle who followed Ichiro around to all his games, back then.

Anyhow, if you like baseball at all, I totally recommend subscribing to their service. It Just Works, and on just about every conceivable device with a screen or a speaker, with lots of polish and attention to detail.

It makes me happy that they’re using software that I helped write, and it’s a signal of their sophistication that they’re well into adopting stuff I was still coding late last year.

They’re generally just damn smart in the way they use the cloud, to the extent that they’re now doing Internet for a growing list of other sports.

In particular, I got a briefing on the machinery they’ve put together to get all that Statcast raw data out of the parks and into the Internet. It included a couple of jaw-droppers, and there might be a chance to pitch in with some stuff we’re just coding up right now.

Anyhow, thanks to ’em for hosting us, and I wish we’d scheduled another hour or two.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconSix-page Typography 23 Apr 2017, 3:00 pm

What happened was, Lauren brought home Bringhurst’s The Elements of Typographic Style and I was instantly captivated, by the book’s beauty and also the power of its message. So I’ve got typography on my mind. Stand by for more on the subject, but it struck me immediately that I’m living a typography lesson at work, in the form of the famous Amazon six-pager.

It’s not a secret; to start with, read Brad Porter’s excellent The Beauty of Amazon’s 6-Pager (although in typo-geek mode, I have to point out that “Six-pager” reads much more nicely than “6-Pager”).

Like Brad says, we put intense work into writing these things, and then others of us put intense work into reading them. I’m at a place in the structure where I find myself doing both; neither is easier than the other.

As a guy who’s invested years into descriptive markup and structured documents and flexible presentation and so on, I ought to be horrified by six-pagers, which are fixed-format paginated word-processor output. But in fact they work great. It saves so much time when you can say “That replication setup, second para on page 3, won’t it murder write throughput?”

You know what I’m starting to see? People putting in line numbers. And that’s an even bigger time-saver, particularly if you want to raise an issue about how this on page 1 relates to that on page 5.

Oh, and we do some initial reviewing electronically, but when it matters, six-pagers are printed. Because of course.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

Favicon2017 Camera News 15 Apr 2017, 3:00 pm

Herewith some reportage on the most interesting cameras in the world, with opinions to provoke er entertain people who are up on this stuff, and a basic survey of the landscape for people who like pictures and wonder about cameras.

[Update]: The same day I wrote this, DPReview ran a nice piece on shooting Seattle cherry blossoms with a bunch of different cameras, including a few of the types, and individual cameras, discussed here. Check it out.

I’m an enthusiast photog (not remotely pro) and I’ve noticed, over the years, when I write generally about what’s up with cameras, I get notes from people saying “thanks, that was interesting”. I think I may have sold a few cameras over the years, even.

Conclusions first

Let’s see if we can start some arguments.

  1. The most interesting cameras in the world right now are the new digital “medium formats”: Fujifilm GFX 50S, Pentax 645Z, and Hasselblad X1D. Here’s a comparo. But they’re expensive and you almost certainly don’t need one unless you’re a pro.

  2. The next most interesting cameras in the world are the ones in mobile phones. They’re excellent for most things, but don’t obsolete “real” cameras just yet.

  3. All modern cameras take great pictures. The most important differences between them are ergonomic: How quickly and easily you can get the shot, especially when conditions are bad.

  4. There are reasons to think that the “APS-C” and “full-frame” sensors are the big winners going forward; the price of being smaller, and the cost of being larger, are both too high.

  5. I think the SLR is probably doomed; mirrorless cameras have too many advantages.

Picture break! The theme is spring.

Spring blossoms

Camera taxonomy

You can sort cameras into two baskets; by how big their sensor is, and by their physical configuration. For sensors, bigger is better; sizes that are relevant today, small to large, are:

  1. 1/2.3" (7.7mm diagonal, more or less); this is what good modern phone-cams have.

  2. Micro Four Thirds (~21.5mm diagonal); what the mirrorless cameras from Olympus and Panasonic have.

  3. APS-C (~28mm); what most “ordinary” DSLRs, and the Fujifilm/Sony mirrorlesses, have.

  4. Full Frame (~43mm); what’s in the Canon, Nikon, and Sony flagships.

  5. Medium Format (~55mm); also called 645, A.K.A. really freaking big. This is what the “most interesting cameras” at #1 in the first list above use; interesting because they have these sensors in bodies, and at price points, that are not totally out of reach.

There’s a pretty good write-up on all these size trade-offs at Camera sensor size: Why does it matter and exactly how big are they? But it’s from 2013 and doesn’t include Medium Format.

As for configurations, three are interesting these days.

  1. Mobile phone; it fits in your pocket and you shoot by tapping on the screen.

  2. SLR; the most “traditional” shape, with a lump on the top, and you look out through the front lens with the help of prisms and mirrors.

  3. Mirrorless; you look at an electronic reproduction of what the camera sensor is seeing, either through a viewfinder or a screen on the back of the camera. Those “most interesting” medium format cameras are interesting partly because two of them are mirrorless; the Pentax is the only SLR.

Time for another picture break!

Sprint moss

How big a sensor do you need?

The little ones in your phone can take great pictures; why would you want more? Two big reasons: A bigger sensor makes it easier to get that nice effect where your subject is sharp and the background is fuzzy (see the sharp fuzzball below). Second, if you have more pixels you can blow your picture up bigger, for example to print and hang on a wall.

The first argument is good, but the second is weak. Because most of us, these days, share and enjoy pictures on screens, and only on screens. That blossoms-and-sky pic at the top came out of my Google Pixel and, after cropping, is 2764×3375. My 15" Retina MacBook Pro only has 1200 pixels of vertical resolution. So I already can’t display all the pixels from my Pixel.

Also, on the wall of my living room I have a four-foot-tall print of a photo shot with an old-school pocket cam (no longer relevant in the mobile-cam era) from an airplane.

So, it’s surprising how big you can go. But still… last time I was in Vegas I went wandering and ended up at Rodney Lough’s gallery, full of room-size blow-ups; I found many of them overwrought and overproduced, but wow, the impact is not to be denied. He’s still using 4×5" and 8×10" film cameras, but I bet those medium-format puppies at #1 above could do the trick.

Realistically though, are you going to want to work with pictures wider than you are tall?

Picture break!

Left over from last fall

So what really matters?

For most practical purposes, your phonecam will meet your photographic needs. Which is to say, the quality of your pictures will depend mostly on your ability to see the opportunities.

Things your phone still can’t do: Take pictures of things that are a long way away; capture the classic portrait look (but Apple’s working on that); shoot in the dark (but late last year I managed to capture actual moonbeams with my Pixel); have fun with different kind of lenses; take pictures in a rainstorm. Or (most important) let you take control of your photographs.

So given that any modern camera can do all the things that your phone can’t, and produce beautiful pictures, what are the difference that matter?

It turns out that the camera companies have (differing) opinions about how pictures should be taken, and ship opinionated cameras. Which is wonderful. Personally, I’m a Fujifilm fanboy, for exactly one reason: I like where the knobs and dials are, and how they work, and how things look through the viewfinder. I suppose I could get used to another maker’s opinion, but at the moment I’m pretty convinced that for me, the Fujifilm setup lets me shoot faster and focus sharper and light-compensate better.

There are lots of people who are going to find themselves in better tune with the opinions of Nikon or Canon or Sony, and that’s just fine; although I have to confess that the few times I’ve tried out a recent Sony it felt like I was fighting against the controls, not working with them.

So, I’m gonna say, if you’re thinking about a camera, don’t waste time worrying about pixels or sensors or ISOs or, really, any specs at all. Borrow or rent a few different ones and take some damn pictures already; then you’ll know.

Focus on fun

I don’t get paid for taking picture (well, rarely) and you probably don’t either, so we should bear in mind that this is a recreational activity.

It’s a path I haven’t been down, but I suspect the cameras that win on the pure-fun metric are the fixed-lens mirrorless offerings, notably the Fuji XF-100 or Leica Q. These things are kind of expensive, but they have great lenses and great viewfinders and look cool and if you point them at pretty well anything and shoot, you’ll probably be happy. Photography should make you happy.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconJSONPath 14 Apr 2017, 3:00 pm

Or should be that be JsonPath? Whatever, it’s a tool I’ve been using lately and generally like. But it could use a little work.

The last project I worked on, Step Functions, has a JSON DSL for State Machines, which makes use of JSONPath (see Paths and Input and Output Procesing) to solve a tricky problem in a way that people seem to find easy to understand and use.

Early on in that project we adopted the Jayway JsonPath library and it seems to mostly Just Work.

But, we’ve had a few questions from customer along the lines of “Your service rejected my InputPath, but it looks OK to me.”

Which raises the question: What is a legal JsonPath, anyhow?

To the extent there’s an “official” definition, the most obvious candidate would be Stefan Goessner’s JSONPath - XPath for JSON. Standards wonks will sneer at it, not a shred of BNF in sight. But I like it, because it applies the most important lesson from Mark Pilgrim’s immortal Morons and Assholes essay: Have lots of examples.

Having said that, it’s kind of skinny. And if you go back to that Jayway JsonPath spec and start scrolling the, well, you can keep scrolling and scrolling, and there’s a lot of goodness there.

But still, is $.blog-entry a valid JSONPath? Or should you have to say $['blog-entry']? Because blog-entry is not, after all, a JavaScript “Name” construct.

For the purposes of AWS Step Functions, JsonPath means what Jayway says it means. But I’d be happier if there were an RFC or something because, good as Jayway is, people do [*gasp*] write code in languages other than Java.

So, an RFC maybe? The idea’s not crazy.


Let me settle one dispute right here: Stefan Goessner says “JSONPath”, Jayway says “JsonPath”. Stefan’s right, because it’s called JSON not Json, and by the analogy with XPath.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconIsItOnAWS Lessons 29 Mar 2017, 3:00 pm

I did some recreational programming over Christmas and the blog I wrote about it is now guesting in Jeff Barr’s space for your amusement; try the software at What I didn’t do there was relay the lessons I picked up along the way; one or two are around AWS, but most follow from this being my first nontrivial expedition into the land of NodeJS. So (acknowledging that only 0.8% of my profession aren’t already Nodesters), here they are. Spoiler: I don’t like Node very much.

Lesson: Lambda has historically been used for behind-the-scenes work. But with the recent arrival of new API Gateway and Certificate Manager goodies, it’s become pretty easy to convince a function to serve HTTP requests pointed at your own web-space. Will this be a popular idiom? Beats me.

Lesson: I can now work with Node’s everything-is-a-callback worldview, but still, at the end of the day I think it’s wrong. What I want to do is fetch data, then process data, then write data, and if a damn computer language can’t give me a sequential abstraction when I want to do sequential things, well screw it.

Yeah, I acknowledge the kozmick performance gains Node achieves, even when living in a single-threaded environment, by pushing developers into callback-or-die territory, but you know, there are things like pre-emptive multitasking and thread pools that should let the system interleave IO and compute for performance without making me worry my pretty little head over it.

Having said that, async/waterfall is a straightforward way to remediate the damage.

Lesson: Node provides a very serviceable little JavaScript REPL on my Mac. There is no programmer on whose life JavaScript doesn’t impinge sometimes, and a command line is awfully helpful in exploring array combinatorics and related weirdness.js.

Lesson: Constructing a zip was pretty easy with jszip. Except for, despite the fact that a zip is a bunch of bytes, jszip insisted on emitting a Node Stream. But it seems that NPM generally contains correctives for its misfeatures, in this case raw-body.

Lesson: Node’s HTTP-fetch function is kind of dumb and clumsy. Every language should have a one-liner that says “Here’s a URL, gimme back an object with the content-type and the response body’s bytes, or let me know if you can’t.” Of the languages I’ve used in recent years, only Go and Ruby do.

Lesson: Upon publishing this, I will receive much pitying feedback along the lines of “Well of course you could have done it in a one-liner using TheNewHotness.js.” And also pointing out many other better ways to have done this using things my Internet search skills were insufficiently advanced to discover. Draw your own conclusion.

Lesson: The IPv6 address-literal syntax is stupidly human-hostile.

Lesson: NPM has at least one of everything you can possibly imagine.

Lesson: NPM dependencies are a fulminating cancerous mess. This little Lambda that runs when the JSON updates needs fifteen freaking megabytes in its node_module directory, and the zip is like 2.5M. For the little function that actually handles the IsItOnAWS requests, I consciously tried to keep the dependencies down, but I still ended up needing async, ipaddr.js lodash, and sprintf-js for another 2½ meg. Feaugh. What’s a “lodash”, anyhow?

Lesson: The Lambda and S3 APIs are minimal, sensible, and well-integrated into Node’s resistence-is-futile you-will-learn-to-love-callbacks paradigm.

Lesson: The best Node code is Non Fancy Node.

Lesson: The tape unit-test harness Just Worked for me out of the box, had a nearly-zero learning curve, and was minimally intrusive. I’m a fan.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconContradictions 27 Mar 2017, 3:00 pm

Back when I was an actual Marxist, we used to talk about the “contradictions of capitalism”. It’s actually a handy phrase (alliterative too!) and recently I feel like the Internet is trying to stuff those contradictions down my throat.

Fish in a barrel

It’s not exactly hard to reel them off. Item: The owners of every business are incented to pay their employees as little as possible, but need their customers to have spare money in their pockets. Item: Prosperity depends on growth, everyone knows that; but we’re using our ecosystem fully and population curves around the world range from flattening growth to steepening decline.

See how easy it is?

Engagement in the clouds

Two pieces crossed my radar recently. First, Gartner recently released its annual State of the American Workplace report, a weighty slab of PDF you have to trade your email address for, but there’s a decent summary with some graphs over on LinkedIn.

The news isn’t good. It turns out that that only about 30% of American employees are “engaged”; of the rest, 50% or so are “disengaged” and 16% are “actively disengaged”. And there’s loads of quantitative data to show that lack of engagement correlates with lack of growth, profits, and other good-biz metrics.

Put another way: Scott Adams may be an annoying weaselly troll, but Dilbert is accurate reportage.

Now cast your eyes at The Future Of Labor by Fred Wilson, New York VC and Thought Leader; he discusses “three big megatrends impacting the future of labor/work”, one of which is “ the move to an on demand model for work”. He envisions a future where, when a business needs something done, “they issue the work order to the labor cloud and someone picks up the work order and gets it done.” This allows the business “to get the work done without thinking about the kind of relationship they have with the worker.”

Obviously, no sane manager should expect “engagement” from the denizens of the “labor cloud”, any more than they can from the growing chunk of the population working for low pay in permanent-part-time mode. See? Contradiction!


You want real contradiction? How about 11 Facts About Hunger in the US. The US, you know, Earth’s richest nation. Where 17.5 million households are “food insecure”.

I don’t miss Marxism as a framework, but let’s not kid ourselves that the symptoms it was trying to address are behind us.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

FaviconGarage Color Fix 21 Mar 2017, 3:00 pm

I was out the other day shooting signs of spring; there was this garage, and it was pretty too.

Regina, Saskatchewan garage in color-corrected light turquoise

Color partly by some paint company, augmented by
quite a few years of Prairie weather. Isn’t it pretty?

The reason I’m writing this is that it’s the first time in years I’ve had to put significant work into color repair on a Fujifilm pic. Because the version above looks just like what I saw. But out of the camera, it looked like this:

Regina, Saskatchewan garage in light turquoise, no color correction

Back in my Pentax days, I got pretty slick with the Lightroom white-balance apparatus, which is itself pretty slick. But in my four Fujifilm years I’m not sure I’ve touched them.

Well, I did on that one. It didn’t work; I found another way:

  1. White balance: as shot.

  2. Exposure: -0.25 (fight that glare).

  3. Highlights: -15 (fight some more).

  4. Shadows: +10 (boost the shady side).

  5. Saturation: +33 (the colors weren’t wrong, they were just washed-out).

  6. Blue: -20 (sky was overexcited). At this point things were better but still not what I’d seen. Time for the secret weapon.

  7. Profile: Velvia/VIVID (smiles).

I don’t know who it was at Fujifilm and Adobe that got those film treatments into Lightroom, but I sure owe them thanks. I don’t use one that often, but so great to have it.

Blinklist Blogmarks Digg Ma.gnolia My Web 2.0 Newsvine Reddit Segnalo Simpy Spurl Wists Technorati

Page processed in 0.569 seconds.

Powered by SimplePie 1.2.1-dev, Build 20111015034325. Run the SimplePie Compatibility Test. SimplePie is © 2004–2017, Ryan Parman and Geoffrey Sneddon, and licensed under the BSD License.