The Best and Worst of 2008

The Good of 2008

Financial Opportunities for Independent Application and Game Makers

While so-called “ISVs” (small software shops, often staffed by just the founding programmer) have largely disappeared from the Windows platform, pushed out by Microsoft’s total dominance of most IT spend alongside a widespread consumer mentality that software should always be free — whether in the libre sense ala open source, or the more prevalent gratis sense of free in the form of piracy (often justified with bizarre logic that goes something like “I paid $499 for this PC! I’m not paying more for software!”) — other lucrative opportunities have opened up for entrepreneurial developers.

Alternative platforms like cell phones (the iPhone, Google’s Android, or the more scattered but numerous Java ME targets) and game machines (such as the Xbox 360) have provided tremendous new opportunities with limited barriers to entry. Vendor online stores and fair revenue sharing splits have made selling your product easier and more rewarding than ever before.

On the Mac the independent software market remains very robust, with a consumer base that is willing to spend for software that enhances their quality of life in some way.

Display Technology

They’ve gotten larger (but lighter and more energy efficient), have faster response rates and better quality, with color range and contrast ratios seeing great improvements, all while remarkably coming down in price. Large-screen displays with 1920×1080 pixels are becoming commonplace in media rooms, even during the downturn.

Day Trip To The CityThe displays in our living rooms are capable of displaying the best of converging digital media. The division between the “home computer” and the home entertainment systems (a split that began when computers started demanding better displays, a need which saw the Commodore 64 and later generations leave the family room to take up accommodations in the home office) has dissolved.

JavaScript

Over a short span JavaScript has gone from being unloved and despised, begrudgingly used only out of necessity, to being widely exploited as a language that, while deceptively simple on the surface, is incredibly rich and succulent when you look just a little deeper.

Even long time practitioners of JavaScript regularly discover new functionality they never realized was there.

The increased focus on JavaScript, and the growing richness of the web, kicked off a skirmish between a variety of projects and vendors, with a horse race between the Mozilla project, Webkit (primarily in its Safari instantiation), Opera, and the upstart Google Chrome browser. JavaScript performance in some of these latest generation offerings can even rival native code in isolated scenarios, which is extraordinary for such a high-level, dynamic language long identified as a performance pig.

It’s now worthy of serious consideration whether to use one of the JavaScript runtimes (such as V8, Tamarin, or Tracemonkey) as an engine for projects having nothing to do with the client-side web.

coffeesNot all is roses with JavaScript, though. The drive towards ECMAScript 4.0 AKA JavaScript 2.0; representing a pretty dramatic shift in the language; hit some serious road blocks this year, eventually smashing off the road and exploding into mangled bits.

It’s a little fuzzy where JavaScript is heading in the coming years, but at least it’ll do it in an impressive number of iterations per second.

The Microsoft Xbox 360

Microsoft reduced the price and improved the interface and functionality. They diversified the marketing and game catalog to cater to more than just teenaged first-person shooter fanatics. For a unit that is now over 3 years old (with hardware that was probably spec’d out even a year earlier) it shows few age wrinkles, with very decent graphics at ultra-high resolutions, only occasional suffering frame rate slowdowns.

While it’s worth the price for gaming-fu alone, the 360 also doubles as a viable media extender (especially when coupled with a UPnP host like TVersity running on a PC somewhere else on the network). After bouts using full PC media boxes in the home theater setup, with the many time-thieving downsides they bring, I’m very happy to replace all of that with a simple Xbox 360 (playing streamed internet radio, Divx/Xvid, home movies on the networked NAS, YouTube clips, and so on.) With the 1080p connection and the horsepower to decode most anything without glitches, it’s a strong link in the media chain.

The marketplace functionality offers up easy access to a wide range of gaming and entertainment options, including the ability to queue up movies, shows and games on the unit or even on their online site from other devices, making them available on your 360 surprisingly quickly (I’ve queued up movies for the kids on my PC to find them available on the unit mere minutes later, seemingly exceeding the capacity of my cable connection.)

US owners with a Netflix subscription also get instant streaming of a wide range of movies.

With a decent motion sensing controller — which apparently is coming soon via a new controller codenamed “Newton”, though that could simply be more internet lies gaining truth through repeated assertion — the 360 would be uncontested.

Complaints are few, but the unit isn’t perfect.

It has a taste for polycarbonate, for instance, viciously destroying discs if you happen to move the unit at all while it’s on and endlessly spinning the disc.

[SUPER PRO TIP: After my GTA IV got eaten during a foolhardy move of a powered-on unit, the game would no longer launch but instead would freeze up the device. I never got around to replacing it, though I did discover that Rockstar Games does offer replacement media if you ship your old media to them along with $7.50. After the new NXE interface was released a few months back, with its newly offered install-to-disc functionality, out of curiosity I rented GTA IV from a local video and game store, installed it to the hard drive, and then returned it. From then on the game plays perfectly with my now defective disc in the drive. Presumably the sectors it checks to validate ownership are all still fine, and as another benefit I no longer have to listen to the optical disc noise whenever the unit is on, which is a huge improvement regardless.]

The “HD” movies available for rent online are decidedly not HD, at least not comparable to blu-ray or the defunct HD-DVD format. This isn’t surprising given that they clock in at about 4 to 6GB, versus the 30GB or so for many really high definition movies, both options using the latest codecs. They also offer a mediocre 24 hour view window from first play for rented/downloaded videos, and prices that seem a bit excessive (HD rentals come in at around $8 here in Canada, versus the $5.49 to rent from a video store, and the latter option gives me much more liberal usage times). Media embargos mean that a lot of movies simply aren’t available to Canadian users.

Computing Power

Computing power has gotten incredible. Quad-core CPUs, giant caches, ultra fast memory, arrays of massive storage devices. The storage front in particular holds incredible promise now that we’re adding SSDs to the mix. Here’s a pretty neat little product for a DIY SSD, in this case multiplexing 6 SDHC cards for much faster access. Get 6 of those (each with 6 SDHC cards), put them in a RAID10 array…you’d have absurd speed levels for about $800 for an array with 288GB of usable space. Sure that isn’t a lot of space, but it’s enough space for most reporting or OLTP databases, and you’d be enjoying 360MB/second or so read speeds and 60MB/second write speeds or better, coupled with almost instant access times.

Some inefficient-for-processing-but-good-for-development practices and technologies are becoming more tenable with the surfeit of computing power we have available to us.

The Bad of 2008

Computing Power

While it also made a showing in the Best of 2008, available computing power is still underpowered for video tasks. Once you start editing and rendering 1080p videos from the growingly common HD video cameras, and the speed of storage, the speed of memory, the speed of processors (even though video processing is one of the most capable and willing of using quad-core CPUs…it still isn’t enough)…all of it leaves a lot to be desired and makes it a less than pleasant, time consuming experience. An add-in MPEG4 compression coprocessor might be a good choice (my HD video camera has it, this tiny device doing real-time AVCHD compression, AVCHD being a variant of MPEG4, squashing to 17Mbps of video and audio info).

Video Codecs

The video codec world is a mess. If I want to convert from AVCHD to a Divx AVI, why is any transcoding necessary at all (which always reduces quality) Both are MPEG4 codecs. In fact, virtually every top-tier codec now is just a pretty face and quasi-unique wrapper around MPEG4, albeit usually with just enough secret sauce to screw it all up. So why not just standardize on one wrapper It seems to be incompatibility for the sake of incompatibility. [EDIT: Ben noted in the comments that I was quite wrong here. Turns out that MPEG4 is a bit of a hodge podge of codecs, and Divx shares little in common with AVC. From now on I’ll be encoding home video clips to x.264]

Blu-ray

The movies are too expensive. The benefits are too few. While the under-featured players (which seldom offer now common DVD functionality like Divx/MP4 playback, USB media playback, etc) are finally dropping in price, it’s still only a good option if you have a reliable source of rentable blu-ray discs (services like Netflix or Zip.ca, for instance, or a well-stocked local video store.) If you buy discs you have the irritant of likely not being able to play them in the family minivan, the kids’ computer, your laptop, and so on, which is one of the major downsides of blu-ray.

The opportunity window for a new optical disc format is closing quickly given the growing interest and utilization in internet and proprietary cable system delivery (VOD from your cable company, watching downloaded or streamed movies on your Xbox 360, iTunes movie downloads, etc).

Locally, this year’s boxing day consumptionfest featured a bevy of blu-ray player sales, and it is a sign of the times that many of them still have large numbers of units left. Strangely the lack of competition with HD-DVD has left a lot of people uninterested in the genre as a whole, which is quite contrary to many predictions that predicted a blu-ray euphoria once the competition was settled.

It’s a bit surprising that blu-ray discs carry a price premium: They’re harder to rip (though the idea that they are uncrackable has proven untrue), and the outcome is a massive file that is difficult to duplicate on media — unless you want to put it on a burnable blu-ray disc that costs more than buying the movie new, or seriously degrade the quality which would sort of miss the point of ripping from a high definition source (no codec Divx magic here. The codecs used on most blu-ray discs are the cutting edge) — or online. I would expect the media groups to heavily push blu-ray, at no price penalty, purely to try to head off piracy with a more unwieldy format.

Google’s Chrome Browser

Chrome could be the world’s greatest browser and I still wouldn’t like it. Thankfully it isn’t the best browser by a long shot, so I don’t have to rationalize that conflict too far. Aside from a mostly theoretical process isolation model (which seems to have little real-world benefit, as many users find Chrome to be one of the most catastrophically crashy browsers of the bunch), Chrome offers little to justify choosing it. The V8 JavaScript engine would have been a winner if it came out 6 months earlier, but it turns out that Google was far from alone in working to speed up JavaScript.

The reason I grief about Chrome is because it has no reason to exist. The only viable reasons why Google felt the need to make their own browser are decidedlynot good for the internet at large. Google owning and controlling a browser brings the same worries and concerns that Microsoft controlling a browser does.

Google makes their money selling ads. It concerns me having an advertising company running a browser project, even if they do provide a related-but-not-quite-the-same source tree as if that makes everything okay.

It bothers me even more that Google’s advertising initiatives have completely focused on subverting the Firefox userbase, cannibalizing a credible alternative to Internet Explorer that was finally becoming mainstream. I’m not entirely sure what Google’s motives are with this plan, but there is no way they can color this as Google the Good And Benevolent. It’s either an insidious end game playing out, or it’s some insular, egotistical developers at Google who just had to control things themselves, not content to work with the existing browser projects when they can stand tall and scream “We’re Google damnit! We’re super smart!”

Macromedia cum Adobe Flash

Many of the problems people encounter with “Firefox “(purported memory bloat and CPU saturation) are Flash related.

On my three-year-old son’s low-end PC — a Pentium IV 1.7Ghz with 1GB (anemic but not that bad) — many of the great online children games sites (such as CBC, NickJr, PBS, TVOntario), which are largely built around Flash, slog to an unusable crawl in Firefox, yet they run with gusto in IE on the same PC. This is odd given that the overwhelming bulk of computation in both cases occur entirely within the Flash environment (the browser essentially acting as a thin wrapper, and I can't imagine the basic communication between environments is so onerous that it could account for the difference), so hypothetically there should be complete equivalency between the browsers.

The #1 problem many users have using Linux-based boxes to browse the tubes are Flash related. This is becoming more critical as more and more Linux-based NetBooks hit the market.

Memory leaks. Sluggishness. Crashes. Flash is quite often the source.

Commerce Court - TorontoFlash brings a tremendous amount of richness to the web. Without it those game sites really couldn’t exist (I exclude Java and ActiveX given their serious problems, not to mention that Flash is purpose suited for exactly these sorts of projects), and of course it is now the foundation for most every video site. Adobe even donated the Tamarin project to the Mozilla project, though it didn’t turn out being the win it should have been given that Tamarin is largely focused on the DoA JavaScript 2.

Adobe really needs to fix this player. It has become foundational to the web.

Internet Explorer 8

This browser is so incredibly terrible that I have think that all of the MS developers that launched IE to greatness between versions 4 to 6 must have gone on twenty-year sabbaticals with their then-lucrative stock options. This browser is terrible in every way, and unless there is some tremendous forward momentum in the final sprint, it is completely unjustifiable as a browser choice, not even ranking among the top tier browsers (which include Firefox, Safari, Opera, and to a lesser extent Chrome). Using IE 8 would be like using Netware to run your network today, simply because it once was a good choice.

Nintendo Wii

The Wii has a lot going for it.

It has a great range of family friendly games, built in wireless connectivity, and unarguably innovative controls. It has a large catalog of games, and is easy to use with a low complexity barrier to entry.

It has been the definite winner of the next generation console wars, even though Nintendo brought the last generation to the fight.

I want to love the Wii.

But I don’t.

Many Wii games seem to utilize the motion sensing controls in the most gimmicky way possible, featuring shallow gameplay that seems more like a quickly hacked together technology demo than a serious offering.

Even where you aren’t forced to flail around with the control to do rudimentary actions, you quickly find that philosophically many Wii games insist upon “balance”, kicking you in the nads when you’re ahead, giving you a firm push when you’re behind.

Maybe there’s something cultural about that. But when I’m trying to crush my children’s contest hopes with my Mario Kart awesomeness, teaching them a life lesson about competitiveness, it’s a bit flummoxing to continually get knocked down while they get an endless series of speedups.

My five year daughter easily dominates my long-time-bowler father-in-law in Wii bowling, with seemingly random movements yielding amazingly strings of strikes.

Then there are the often unavoidable text bubbles that assault the player in the hundreds, making an unwanted appearance in many Wii games (particularly those sourced from Japan. This seems to be something that Japanese games have relied upon heavily going back to the Phantasy Star / Zelda days). Going past these asinine play obstacles is incredibly irritating, at least for me. Half the game play, it seems, is the challenge of maintaining sanity and an interest in the game after clicking through a hundred sparse text bubbles full of unnecessary and uninteresting filler text.

While the motion sensing element of the controllers are arguably best of this generation (using standard Bluetooth making them theoretically usable on other devices like the PC), the other hardware of the Wii is seriously outdated: Basically last generation’s Gamecube with a paintjob. The SDTV output is underwhelming, offering so little definition that it’s painful to play split-screen multiplayer, which is a waste given that many of these units are hooked up to sets capable of at least 1280×720, often even 1920×1080.

As one of the early buyers of the Wii, and the target demographic given that my family features three young children, I can’t help but express some disappointment in the unit. I really don’t understand how it still manages to get the attention it does, still existing in a honeymoon while people stock up on hardware and games they’ll never actually play.

[Sidenote: Got the kids Wii Music for Christmas to discover it’s more of the same formula. It’s a mile wide and one inch deep. Yet again it seems like a technology demo dressed up as a pretend game]

Online Comments

While it’s expected that the sophistication of comments on a site like YouTube will lie somewhere around the intellectual level of head-injured drunk, there remained the hope that other sites might feature a more intelligent contributor. When some major Canadian newspapers added comments, I looked forward to a presumed onslaught of interesting and thought provoking contributions. Instead I was disheartened by the complete lack of political sophistication, the partisan political team cheerleading, the sophistry, the endless logical fallacies, the idiocy…all of it has reduced my opinion of mankind. I can only hope that it is a grossly unrepresentative demographic that feels the need to post their thoughts on newspaper sites.

The Decline of Honesty

When did lying become so acceptable and commonplace When did people feel so justified in descending to lies so long as it gets hits?

The Internet has always been home to a large number of hoaxes and exaggerations, but this year saw truth and reality suffering a serious beat down, and it only looks to be getting worse.

Some lies made their presence known via the blogger’s tale of extraordinary interaction with some larger than life caricature (which a gullible readership ate up because it confirmed their own simplified worldview, biases or bigotry.) Honestly, goatse with a chaser of tubgirl was less offensive than some of the obviously manufactured fiction being paraded as truth nowadays.

Lies also appeared with frequency on “citizen journalism” sites, where there’s a strong incentive to egregiously misrepresent or misreport, zooming to top the social sites with the most extravagant and inflammatory story possible. A recent example — only one of an endless stream of alike cases — would be the FDA’s decision that the many benefits of eating fish are so compelling that they outweighed the small potential risks of mercury, so they considered revising their existing recommendations thatencouraged avoidance, switching to one that was more moderate, in the same way that exercise is generally recommended even though youmight get hit by a car or a stray asteroid. Along came the “citizen journalism” sites simply discarding the kernel of truth, instead declaring that the FDA decided that mercury is “safe” (presumably at the behest of their Mega Mercury Corporation masters).

No nuances or fuzzy grays that require a moment of thought are desired when there’s a crowd to enrage into voting you up and forwarding the story on to others. For all of Fox News’ many, many, many faults, they have a brother in citizen journalism on the net.

Lies also grew via the viral videos that have been saturating the net, with that seemingly no-cost amateur video more likely being an expensive production of a Lying for a Living viral video manufacturer. Lie it up, and afterwards everyone can have a big laugh about it and cheer on your product.

So much content is undeclared fiction now that it’s a bit of a cry wolf story playing out. Many readers have become so jaded they simply believe nothing that they can’t witness directly themselves. You don’t even need to “look at the pixels” anymore: If it’s getting a lot of attention, it’s probably made up from a blogger’s imagination, a gross misrepresentation that has little correlation with reality, or a viral video that somehow is going to get some company attention.

Yeah, there’s a sex toy on the side table of your real estate picture — ha ha ha. Enjoy the PageRank your little hoax earned as every social media site plays right into your devious plans with links, a gullible public all thinking they caught you in a hilarious blunder instead of the planned out web strategy you’re pursuing. Another variation is the “super duper terrible site…let’s all point and laugh”, when the only ones that should be laughing are the people fooling you.

True stories have little impact in an environment of gross exaggerations or manufactured tales and caricatures.

The Economy

It didn’t take a psychic to see the dangers of the bubble economy (though many who pronounced some caution now hilarious see themselves as economic seers). Madoff is getting a lot of press for his apparent ponzi scheme, yet in many ways the whole market is one giant ponzi scheme. While people often like to talk about the “true value” of things (homes, oil, resources, etc), the true value is often whatever the market is willing to bear at the moment — whatever the prevailing mindset is — which is a situation naturally prone to booms and busts. Hopefully the downside of the bust is flushed out quickly and we can begin the next round of financial chicken.

Hopes for 2009

I hope the public at large becomes a lot less gullible. Extraordinary claims demand extraordinary proof.

I hope Google abandons the Chrome project, as they have abandoned many other misadventures before. Already the adoption has been mediocre, despite widespread launch press and a strong push by Google.

I hope upstream bandwidth starts opening up. It’s great that I have 10Mbps downstream virtually around the clock, but when I want to send a 10GB home video to a relative (yup, people actually do make their own content sometimes. It isn’t all about P2P sharing of pirated material), suddenly that 0.5Mbps upstream looks rather anemic. A lot of potential uses for the internet are being choked off by the widespread limiting of upstream bandwidth.

I hope SSDs continue to increase in speed and drop in price, and the operating system makers such as Microsoft properly adapt to this storage mechanism (for instance a paging file is not a good idea on flash devices. Personally I think they aren’t a good idea at all on any modern PC). Unlike a hard drive that generally has but one head mechanism, the potential multiplexing within SSDs is virtually unlimited, so the speed potential is virtually boundless.

I hope social link sites move towards more enlightened, individually focused algorithms, moving away from groupthink and herd behavior.

I hope disparate devices and appliances continue to gain capabilities and marketshare, and a robust third-party development community is encouraged and supported for each (and not just in the "create free stuff for our product so we can sell more and make more money, suckers" way, but in a mature model that allows for monetization by partners — even the tiny uISV — bringing value to the product and rewards to the creators).