venomous porridge
I’m Dan Wineman and sometimes I post things here.
You should follow @dwineman on Twitter, if you feel up to it.
You can even if that's what you're into.

Archive

Jul
18th
Sun
permalink
[Flash 9 is required to listen to audio.] 615 plays

In response to my latest screed about Steam, Faruk Ateş wrote:

On the other hand, Valve’s first data from having Steam on Mac showed that it was already 5x as stable as Windows for Steam. Seems this is just early-stage growing pains; just make sure to bug-report it and give them some time, I’d say.

Well, that’s a possibility. But I think a stronger possibility is that this problem and all the others I’ve written about are an inevitable result of Valve having used a compatibility layer to develop Steam for Mac.

The job of a compatibility layer is to abstract the underlying system so that it’s less work to write code that runs on more than one platform. Your code says to the layer, for example, “Show an alert,” and the layer translates that request into the platform-specific code that displays an alert on whichever system it happens to be running on. Ideally.

But Steam’s compatibility layer seems to operate on a different level of abstraction from that. Instead of using OS X’s native alerts, menus, buttons, and so forth, it’s drawing them all on its own, and handling all the user interaction outside of the facilities the OS provides. Steam for Mac’s alerts aren’t normal OS X alerts; they’re just windows. Rather than allowing OS X to handle the modal behavior — which would automatically work right when, for example, a backgrounded app displays an alert — Steam’s compatibility layer just creates a window and then tries to enforce the modality on its own, which it does poorly.

What’s potentially worse is that this “faked” user interface can’t take advantage of any of the features real UIs on the Mac get for free, and which experienced users have come to expect. For example, the standard keyboard shortcuts for moving the cursor in a Mac OS text field don’t work, because Steam isn’t using standard text fields. And in other Mac apps, every word in every window is automatically accessible to vision-impaired users by way of VoiceOver, a text-to-speech tool built into OS X. But with Steam’s fake alerts, this fails, because VoiceOver can’t access the text. Play the above audio clip to hear VoiceOver trying to make sense of one of Steam’s error messages.

Compatibility layers are flawed precisely because of the abstraction that makes them appealing. Because they’re cross-platform, they can support only the bare-minimum subset of features that are common to each platform. They can’t provide the same level of control and sophistication that you could achieve by writing native code because the whole point is to keep you from having to write native code. But it’s precisely in that native code that good software excels. So by choosing to use a compatibility layer, you’re signing up to write mediocre software.

The process of building good software is that of making a million tiny decisions. Any reasonably sophisticated app will contain custom user interface elements; the challenge is integrating those custom elements in a sensible way with the rest of the platform. It’s a delicate balance between creating a powerful UI and one that doesn’t defy user expectation, and to achieve that there are no shortcuts. You need experience with the platform, and you need a kind of empathy that can’t be achieved by a piece of generic middleware.

That’s where Steam falls down, and I don’t see it getting up again anytime soon.

Comments (View)
permalink
I try not to be negative all the time. On this blog I try for a ratio of something like 60% negativity, 30% nerdiness, 10% erotic Bratz fanfiction.1 And I’ve already harped on the deficiencies of Steam for Mac. But I’ve just had one of the most astoundingly bad software experiences I can remember, so indulge me.

I decided to terminate some unneeded applications to free up memory on my MacBook Pro. Steam was running, hidden, so I right-clicked its Dock icon and chose Quit. But I had forgotten that Loom was also running, its window also hidden.

Apparently it’s a no-no to quit Steam while a game is running. But it also turns out that Steam is unprepared for the possibility that it might receive a Quit command while in the background. Here’s what happened next:


Steam un-hid itself and (I soon discovered) displayed a modal alert reminding me to exit Loom first.
However, Steam failed to come to the foreground so I could see or click that alert.
Clicking on the piece of the Steam window that was peeking out from behind other windows failed to bring Steam to the front, presumably because the modal alert was blocking all other clicks on Steam’s UI.
Meanwhile, Steam began playing a chime — not the beep that I had selected in my system preferences, but its own alert sound — continuously and at full volume.
I finally moved the other windows out of the way and found the modal alert, but its OK button wouldn’t respond to clicks.
Neither would Loom.
Steam crashed.

Awesome, right? There’s more. I quit Loom manually, then relaunched Steam just to make sure everything was OK. But since Steam had crashed, it wasn’t running when I quit Loom, so it thought Loom was still running. From then on, whenever I tried to launch a game — any game — it would instead show the alert pictured above.

Rebooting fixed it. But that’s an unacceptable solution. Normal interaction should never cause good software to destabilize itself to the point of requiring a reboot.

It’s clear by this point that Steam is not good software. Until today, I had put up with its problems because Valve’s games were so worthwhile. But I think this experience has crossed a line with me, and now I feel like a fool for ever supporting them.





Premium content: subscribe today! ↩

I try not to be negative all the time. On this blog I try for a ratio of something like 60% negativity, 30% nerdiness, 10% erotic Bratz fanfiction.1 And I’ve already harped on the deficiencies of Steam for Mac. But I’ve just had one of the most astoundingly bad software experiences I can remember, so indulge me.

I decided to terminate some unneeded applications to free up memory on my MacBook Pro. Steam was running, hidden, so I right-clicked its Dock icon and chose Quit. But I had forgotten that Loom was also running, its window also hidden.

Apparently it’s a no-no to quit Steam while a game is running. But it also turns out that Steam is unprepared for the possibility that it might receive a Quit command while in the background. Here’s what happened next:

  1. Steam un-hid itself and (I soon discovered) displayed a modal alert reminding me to exit Loom first.
  2. However, Steam failed to come to the foreground so I could see or click that alert.
  3. Clicking on the piece of the Steam window that was peeking out from behind other windows failed to bring Steam to the front, presumably because the modal alert was blocking all other clicks on Steam’s UI.
  4. Meanwhile, Steam began playing a chime — not the beep that I had selected in my system preferences, but its own alert sound — continuously and at full volume.
  5. I finally moved the other windows out of the way and found the modal alert, but its OK button wouldn’t respond to clicks.
  6. Neither would Loom.
  7. Steam crashed.

Awesome, right? There’s more. I quit Loom manually, then relaunched Steam just to make sure everything was OK. But since Steam had crashed, it wasn’t running when I quit Loom, so it thought Loom was still running. From then on, whenever I tried to launch a game — any game — it would instead show the alert pictured above.

Rebooting fixed it. But that’s an unacceptable solution. Normal interaction should never cause good software to destabilize itself to the point of requiring a reboot.

It’s clear by this point that Steam is not good software. Until today, I had put up with its problems because Valve’s games were so worthwhile. But I think this experience has crossed a line with me, and now I feel like a fool for ever supporting them.


  1. Premium content: subscribe today! 

Comments (View)
Jul
17th
Sat
permalink
Now cough.

(via awkwardstockphotos)

Now cough.

(via awkwardstockphotos)

Comments (View)
Jul
16th
Fri
permalink

Apple Offers Free Cat Sweaters to Address iPad Issue

CUPERTINO , Calif. — Steven P. Jobs, chief executive of Apple, acknowledged Friday that the company’s iPad 3G posed some health risks for cats when users placed the device on top of their cats and then sat on the device, but said the same problems affected all tablet computers and had been widely exaggerated by the media.

“This has been blown so out of proportion that it is incredible,” Mr. Jobs said at a veterinary conference at the company’s headquarters.

In the past weeks, reports emerged that some cat owners had experienced diminished life-expectancy of their pets when using the iPad in certain positions, most notably the “feline death squat.” Isolated incidents of furniture stains and thigh lacerations were also reported, prompting a “Don’t Buy” recommendation from Cat Fancy, despite the magazine’s earlier endorsement of the touchscreen device as the top-rated feline seating accessory currently on the market.

Only one in 200 buyers has called the company to complain about squashed cat issues, Mr. Jobs said, adding “and presumably those users live in an area of low feline skeletal integrity. Or they’re just fat.”

Mr. Jobs said that to put the problems behind it, Apple would give free Teflon-coated sweaters — cases that wrap around the cat’s body and make it easier for the animal to slip out from underneath — to all iPad buyers who want them. But critics are skeptical, observing that the sweaters make it difficult to hold or stroke their pets, and some have reported mixed results when trying to fry eggs on the non-stick surface of a besweatered cat.

Mr. Jobs conceded that the iPad 3G had a slight increase in flattened cats over the iPad Wi-Fi, but said that the increase was minimal and that he believed it was because of the added weight due to the 3G radio. Wrapping the cat in a sweater solves the problem.

“The data supports the fact that the iPad is magical and revolutionary,” Mr. Jobs said. “And there is no ‘Cuddlesgate.’ There is a challenge to the entire industry to improve cat-flattening performance.”

Comments (View)
Jul
14th
Wed
permalink
Pianotable.

Pianotable? Yes, pianotable.

Some people might say this is a terrible piano because it doesn’t have pedals, or that it will sound awful because it lacks exposed speakers (yeah it’s digital), or that you won’t be sitting at the right height to play it comfortably when you’re at the right height to eat off of it, so you’ll have to buy adjustable dining chairs.

Some other people might say that it’s a terrible table because it requires you to drape a power cord across your dining room floor, and because you can’t spill anything on it ever.

Those people can all suck it. For just triple the price of a good piano plus a good table, you can get both a terrible table and a terrible piano in one. Why? Because shut up. It’s design!

Pianotable.

Pianotable? Yes, pianotable.

Some people might say this is a terrible piano because it doesn’t have pedals, or that it will sound awful because it lacks exposed speakers (yeah it’s digital), or that you won’t be sitting at the right height to play it comfortably when you’re at the right height to eat off of it, so you’ll have to buy adjustable dining chairs.

Some other people might say that it’s a terrible table because it requires you to drape a power cord across your dining room floor, and because you can’t spill anything on it ever.

Those people can all suck it. For just triple the price of a good piano plus a good table, you can get both a terrible table and a terrible piano in one. Why? Because shut up. It’s design!

Comments (View)
permalink
Comments (View)
Jul
13th
Tue
permalink
I just noticed that today’s Pic Pick theme is “Furry!” so here’s a woolly aphid.

I just noticed that today’s Pic Pick theme is “Furry!” so here’s a woolly aphid.

Comments (View)
Jul
12th
Mon
permalink
strutting:


via Chockenberry, the damage record companies have wrought on the Rolling Stones masterpiece Exile on Main Street. LET’S MAKE EVERYTHING LOUDER YEAH THATLL SOUND GREAT …

… buncha jerks.


Wow.

What’s going on here is that in remastering (top soundwave), the audio has been distorted (via compression and amplification) so much that basically everything is the same volume. There’s no dynamic range; every instant of sound is now at peak loudness. One of the greatest recordings of all time has been made harsh, dull, and tiring to listen to because record company executives want it to sound “loud.”

It’s hard to tell from this graphic, but it looks like there may even be some clipping going on. See where the waveform is flattened against the top and bottom of the window? That’s audio data being amplified to the point of becoming indistinguishable noise. Normally when this happens, it’s a mistake: some piece of equipment is turned up too loud, overdriving the thing it’s plugged into. You turn it down, the clipping goes away. But when the clipping is part of the recording, it just sounds like dogshit at every volume level, forever.1

I’ll be keeping my non-remastered, non-ruined copy, thanks.





Wayback Machine link because the original, classic Rip Rowan article seems to have disappeared. ↩

strutting:

via Chockenberry, the damage record companies have wrought on the Rolling Stones masterpiece Exile on Main Street. LET’S MAKE EVERYTHING LOUDER YEAH THATLL SOUND GREAT …

… buncha jerks.

Wow.

What’s going on here is that in remastering (top soundwave), the audio has been distorted (via compression and amplification) so much that basically everything is the same volume. There’s no dynamic range; every instant of sound is now at peak loudness. One of the greatest recordings of all time has been made harsh, dull, and tiring to listen to because record company executives want it to sound “loud.”

It’s hard to tell from this graphic, but it looks like there may even be some clipping going on. See where the waveform is flattened against the top and bottom of the window? That’s audio data being amplified to the point of becoming indistinguishable noise. Normally when this happens, it’s a mistake: some piece of equipment is turned up too loud, overdriving the thing it’s plugged into. You turn it down, the clipping goes away. But when the clipping is part of the recording, it just sounds like dogshit at every volume level, forever.1

I’ll be keeping my non-remastered, non-ruined copy, thanks.


  1. Wayback Machine link because the original, classic Rip Rowan article seems to have disappeared. 

Comments (View)
permalink
Comments (View)
Jul
9th
Fri
permalink
OK, actually that is pretty clever.

OK, actually that is pretty clever.

Comments (View)