Archive for April, 2010

On the Future of Personal Computing

Thursday, April 29th, 2010

Eric S. Raymond wrote a compelling pair of essays a short while ago about how Smartphones could replace desktop computers and how the competing smartphone markets spell good news for the open-source movement:

How smartphones will disrupt PCs
Greed kills: Why smartphone lock-in will fail and open source win

The first essay describes a near-future scenario where your home computer setup is basically a good monitor, a full-size keyboard, mouse, and a docking station for your smartphone to interface with those devices. Your work setup would be the same, and plugging your phone in at the office provides you with the same computing environment you have at home, and, in a more restricted mode, while on your way to the office.

The second is how Apple’s strategy to lock their customers into using only software approved by the company (and deemed non-threatening to opportunities for in-house profit) is doomed to failure, making a loose analogy to how IBM’s hardware designs came from behind to win out over Apple’s, back in the day. Their walled-garden model, I think they like to call it.

I find the main argument of both essays to be completely persuasive and have a bit to add about how I see computing going in the near future.

First, a bit of introduction: I have no dog in the Apple vs. Microsoft hunt. I think they’re both pretty crappy companies that I wouldn’t want to work for. I tend to prefer Windows to Mac, for the sole reason that everyone knows Windows is garbage, but some people seem to think Macs are significantly better. Mac OSX is no better than a severely broken linux distribution (with an extremely hands-off, generally successful package handler) as far as I have investigated and the shell environment needs almost as much augmentation as a Windows build in order to function usefully. My personal computers are all dual-boot Windows XP and Slackware. At work, my workstations run Windows XP, except one Mac that I use for audio ( since Bias makes some nice software for that platform)…

Over the past few years, I’ve worked hard to move as much heavy-lifting computing work onto dedicated linux servers to free up resources on my and my colleague’s workstations for creative work. That’s the key of where I see computing going. We’re going back to a terminal-mainframe system, in which ERS’s idea of evolving smartphones works great.

An obvious example of this is my own smartphone, the Droid. I’ve got an application called ConnectBot installed on it that let’s me run secure shells on any server I have access to in the world. I have access to enormous computing power at all times from a pocket-sized, ubiquitously networked device.

Another, slightly further-off example of the return to terminal-mainframe computing is in thin clients. I could easily see cable companies and other ISP’s offering thin clients in the near future, where the company maintains a small server cloud and rents thin client boxes and peripherals to customers that access it. They’d no doubt offer subscription tiers that give the customers access to different software packages. If they were to adopt an Apple-like model, where customers would only be allowed to install “signed” software that wouldn’t infringe on their tiered subscription business model, it would be an unpopular service. If the tiers were worked more like the standard cable subscription model, where customers who pay more would get access to bundles of services that they’d already have to pay for (like ESPN360 access and other services like that), it would make sense for a lot of people, who’d free themselves from a lot of problems like keeping their hardware up to date, maintaining a secure computing environment with redundant data storage, and having access to a routinely scaling amount of computing power and storage with very little trade-off: they’d just be giving their money to Comcast instead of Best Buy.

As a quick aside before getting to the point of this essay, I don’t have much faith in the future of iPads or the Android tablets coming out; or for the existing netbooks. They strike me as half-measures: I want a portable, inobtrusive computing machine and I want it to be integrated seamlessly with my desktop workflow. The screen should be in my hand or on a big screen, not perched on my knees, girlishly pinched together.

To sum up, a vision of the very near future: ESR argues that smartphones can displace desktop workstation boxes and that closed software markets are likely to fail in competition with freer alternatives; I observe that thin-client type devices might fill the void more quickly than smartphone computing power can keep up (and satisfy marketplace demand given telecom contracts and what-not), thus moving smartphones into that sort of a terminal-server constellation.

So where does Flash fit in to this equation, at the risk of raising the ire of the early-adopter Apple segment?

I don’t want to get into the Flash vs. Apple war, which I find to be overheated, to put it mildly. I do want to make some observations and predictions on the future of Flash, however.

While Flash is largely closed and proprietary, it does allow content developers to make applets that work on any platform that has the Flash plug-in—and that’s a very good thing. I hope that Flash 10.1 works well on phones. Almost certainly it’ll work better on Android than on PalmOS or Windows Mobile 7, for the simple reason that Android developers uniquely have no profitability motive to close off access from the eventual Flash plug-in for Android devices from the hardware video decoders available on the device.

And somewhat counter-intuitively, I believe it to be an advantage that Flash is largely closed and proprietary. You can do things with Flash that you can’t do with any HTML5 video player, most importantly, you can play streaming video from an RTMP server like FMS, Wowza, or Red 5; and you can serve up copyrighted materials in a way that makes it as difficult as possible for people to steal the content and save it to their own computers. You need a proprietary plug-in if you want to do that. (Which I need to do.) Hulu and many Universities will continue to depend on Flash because there is no viable alternative. Without a closed plug-in (and some other things) there’s really no way to make copyrighted materials available and protected.

The non-philosophical complaints that I see about Flash most often are: “I hate advertisements!”, “My scroll wheel stops working when my pointer hits Flash objects!”, and “It’s inaccessible to the blind!” The first one is a bogus complaint: there will always be advertisements and you can do things even more obnoxious with javascript than what you can do with Flash. The second one is more of a browser problem than a Flash problem as far as I know. That happens with Firefox, but not with IE. And seems a pretty damned trivial complaint to me. The last one is just a fact about the priorities that Flash programmers seem to have, because Adobe puts a lot more effort into making their products support accessibility features than most companies out there. There’s a fourth complaint that I don’t hear much about, that it’s pretty hard to embed flash with w3c compliant code and make it work in all browsers, but that’s a solved problem.

I’m sure that Flash will stick around for online video because I believe the HTML5 video tag is somewhat misguided or at least that the direction HTML5 is heading has been hijacked somewhat by folks with non-altruistic interests. (As background, one of the new features in HTML5 is a video tag that is intended to allow web designers to add video to their pages as easily as they add pictures. They don’t need to design a player, that work will presumably be performed by the browser itself, although they can use javascript to override whatever the browser wants to do. The way it’s done pre-HTML5 is by using a plug-in like Flash, quicktime, or windows media player that has controls and can decode and play the video file that you send to it. Since HTML5 pushes the problem onto the browser developers, you have the problem of these competing organizations having to agree on what codecs are supported. Firefox basically won’t support any codecs that anyone uses—just VP3 which is probably patent-free, Safari will support the patent-encumbered h.264 and some prorietary mac stuff, IE will support h.264 and windows media stuff. The Flash plug-in can decode h.263, h.264, and VP6 video in MP4 or FLV containers.) I’ve avoided encoding video to MP4 containing h.264/aac because I’m not certain where the University of Illinois sits with respect to MPEG-LA’s potential royalty claims. Apple and Microsoft both have financial interests in pushing h.264 since they’re members of MPEG-LA. I’ve been using h.263 (Sorensen Spark) in FLV containers, since nobody seems to pursue Lucent’s IP on it. I also prefer the way it renders text on a chalkboard to VP6 and like how fast it encodes relative to h.264. I don’t know whether any browsers will support h.263, but I don’t care, because I’ll be delivering it via the Flash plug-in.

So my prediction is that Flash sticks around and that eventually, Apple and Adobe will compromise by allowing a stripped down Flash plug-in that only includes the features needed to decode and render video and that requires HTML5 style controls to manipulate. That’s assuming, of course, that Flash 10.1 works as well as it needs to on mobile devices.

2010 Version of Pitch F/X

Monday, April 26th, 2010

I checked out the Pitch F/X data for today’s Cardinals at Giants game to see if there was any new fielding information included, thinking that if it’d show up in the DB, that’s where it’d be since AT&T had the additional cameras installed late last season.

No dice.

However, the database has a few new features and is organized a little bit more nicely. The most interesting features that jump out are a “nasty” attribute to each pitch and a timestamp parameter, “start_tfs” to each event node. I’ll be interested in seeing what kind of observations “nasty” makes; it’ll be fun to be able to calculate which pitchers are the fastest and slowest working with the timestamps, among other things. These additions make the database more useful for other uses, too, and the overall re-organization makes it more user friendly.

A little bummed that the field f/x data’s not included. Once it is, I expect Gameday will start to look much like an old NES baseball game. I mean that in the best possible way.

Small update: Someone more knowledgeable than I pointed out that timestamps are present on all pitches for older data, too, in the sv_id attribute. Fantastic.

DVRCast for FMS 3.5

Monday, April 19th, 2010

Today, I installed the DVRCast application on the Flash Media Server at work and ran into a little bit of an underdocumentation problem. We run our FMS in an origin/edge architecture and the supplied documentation for DVRCast only explains how to install on a single-node, origin-only server setup. The installation archive comes with two different application folders, dvrcast_origin and dvrcast_edge. It was pretty obvious what the two were for, but didn’t have anything to go off of on how to install dvrcast_edge to the edge servers.

A quick internet search revealed that someone else had encountered the same problem, but didn’t see a solution given.

What I did was install dvrcast_origin to the origin server per the instructions, but renamed it dvrcast. Then I rewrote the host.ini file in dvrcast_edge from this:

#name primaryIP;secondaryIP
server1 localhost;localhost dvrcast_origin

to this, using the correct name and IP address for the origin server, of course:

#servername primaryIP;(secondaryIP) app_name
origin.server.com 123.456.789.012 dvrcast

Works like a charm. The parents are going to be so happy at commencement…

As a side effect of getting this up and running, I also have multi-rate streaming ready to go. Pretty successful day one of programming week.

Rare Good Column on Health Care

Monday, April 19th, 2010

From the Chicago Tribune: Nursing our way out of a doctor shortage, discussing the doctor shortage that will become much, much worse in a few years when Uncle Sam starts subsidizing the insurance industry and expanding medicare, and suggesting that regulations be relaxed to allow more people to seek treatment from nurse practitioners. I’d love to see that, along with some tort reforms to reduce unnecessary CYA medical practices, of course. In my ideal system, I’d be able to buy some kind of health insurance that only covers catastrophic, unexpected illness or injuries and I pay out of the pocket for routine maintenance.

For me, it’d work great: I rarely get sick, and when I do, I know what it is and how to cure it. The majority of working-age people are like that, too, and if we could pop in to see a nurse, explain our medical history and how long we’d put up with the symptoms to confirm a bacterial and not a viral infection, pay out of pocket, then walk out with a prescription for a Z-pack, the medical system would be humming along smooth as silk. When I busted my face up last year, I paid out of pocket and got over $600 worth of discounts for paying cash. The cost of the repair ended up being about the same it’d take to fix my car if I’d hit a side panel that hard, so a reasonable price.

The big problem with the healthcare discussion today look to me that everyone wants “someone else” to pay their costs (when there is nobody else, there’s just you and people like you) or we think that we can pay insurance companies substantially less money than insurance companies pay for our healthcare. We’d be better off with less insurance and more doctors and nurses, but we’re committed to head in another direction.

Another thing from that story: it mentions the health-clinics run by the CVS and Wal-Greens drugstore chains. That’s a brilliant idea that I only recently heard of from a friend in St. Louis. There aren’t any in my area yet, but once they show up, I’ve pretty much got what I need, except for the whole health insurance for unexpected problems part, which I wouldn’t be able to buy because of state mandated minimum coverage.

In other medical news, this is exciting.

Well That’s Exciting

Thursday, April 15th, 2010

Broad-spectrum antivirals on the horizon? The release claims that it works in mice without killing the host.

Baseball, Life, and Stan the Man: “No one is ever really gone because a world so good as to include spring days in the ballpark would never really take away the things we love.

Illinois Gov. Pat Quinn withdraws job offer to Canoe Czar: I must say, I’m disappointed in our Director of Natural Resources, who seemed like a shockingly decent person to be working for the Illinois gov’t, he said, unironically. At least he re-opened the parks.