Cathode Tan - Games, Media and Geek Stuff
logo design by man bytes blog

Friday, April 30, 2010

Developing in AIR on Android Versus iPhone

Performance-wise, AIR for Android is fast. When I was making iPhone apps with Adobe’s Packager for iPhone in Flash CS5, I had to make heavy use of hardware acceleration to make even the most basic animations run smoothly. On Android, my games are all rendering in software, and they feel no less responsive on the phones than they do on my desktop. As Lee Brimelow pointed out, “[Adobe is] able to get tremendous performance on Android devices because Google and the various handset manufacturers have chosen to work closely with us to provide the best possible experience to the end user.”
-- Adobe AIR for Android: Chroma Circuit, Gridshock, and Qrossfire Preview Videos

I downloaded Chroma Circuit for iPhone while poking around the whole Jobs thing yesterday, and it performs quite well. Nice to hear that AIR is even faster, and easier to get fast, on Android. So, Apple, apparently it isn't that Flash is difficult to get performance on mobile devices in general ... just your mobile devices.

Thursday, April 29, 2010

Steve Jobs Isn't Wrong (But That Doesn't Make Him Right)

Steve Jobs has written one of his rare open letters, this time about the whole Apple versus Adobe thing.

Please assume all the following quotes are from the above link.

Adobe has characterized our decision as being primarily business driven – they say we want to protect our App Store – but in reality it is based on technology issues. Adobe claims that we are a closed system, and that Flash is open, but in fact the opposite is true.

Just keep that in your hat for now, we'll return to it later.

Adobe’s Flash products are 100% proprietary. They are only available from Adobe, and Adobe has sole authority as to their future enhancement, pricing, etc.

This is largely true, although Flex, which compiles into Flash, has open source components, and Flex Builder is based on Eclipse. Adobe has other side projects available as open source, but in large - Flash is a black box product.

The setup is similar to Apple's. Darwin is open source. OS X is not. Jobs describes this as such:

Though the operating system for the iPhone, iPod and iPad is proprietary, we strongly believe that all standards pertaining to the web should be open. Rather than use Flash, Apple has adopted HTML5, CSS and JavaScript...

The short version of this is: Apple is closed too, except when it comes to the web. Unless that part of the web uses plugins.

So what of plugins?

Adobe has repeatedly said that Apple mobile devices cannot access “the full web” because 75% of video on the web is in Flash. What they don’t say is that almost all this video is also available in a more modern format, H.264, and viewable on iPhones, iPods and iPads. YouTube, with an estimated 40% of the web’s video, shines in an app bundled on all Apple mobile devices...

So there is an interesting slight of hand here. You can't access YouTube videos using Mobile Safari. You need to go to the YouTube app from Apple. So Job's "open" version of the web is whatever can be accessed via Mobile Safari, unless it is a plugin - and then you need to get an app from the App Store, written primarily in Cocoa (which is not open) and view it from there.

Of course, developers could also use the video tag implemented in HTML5. While that would reach the entirety of iPhone users - it would only reach a small minority of Internet users in general. Apple could solve that dichotomy for developers by allowing Flash, but they won't.

Another Adobe claim is that Apple devices cannot play Flash games. This is true. Fortunately, there are over 50,000 games and entertainment titles on the App Store, and many of them are free.

Interesting how Jobs has gone from saying "we're open, and they aren't" to "if you can't use their closed system, you should use our closed system."

How was this not about business again?

Besides, it misses the point entirely. The Flash developer community is huge, second only probably to the more generic "web developer" title - which pretty much describes anyone with anything more powerful 1998 Thinkpad and an HTML reference guide. The Flash game developer community is likewise huge. It's also important - Flash is an entry ground technology. Alien Hominid, a popular console game which began life as a Flash game. Tower Defense didn't really exist as a genre until Flash TD.

Cocoa ... and don't me wrong, I rather like Cocoa as a language, but Cocoa is none of those things.

Symantec recently highlighted Flash for having one of the worst security records in 2009. We also know first hand that Flash is the number one reason Macs crash.

From everything I can ascertain, this is true. Daring Fireball summed up the stability question quite well. However, as Gruber also points out, Flash is one of the most widely used and processor intensive functions for OS X. So, this statistic probably should be no big surprise. If everyone out there used Eclipse instead of surfing YouTube, it would probably be a different story.

Will HTML5 based video be more stable than Flash? Who knows. Possibly. Possibly not. Again, the usage of the new media tags is so small and the implementations of them so new, the jury hasn't even convened yet. Personally, I can crash a browser pretty easy double buffering two audio tags (don't ask) with enough time. And I can do that in WebKit.

In addition, Flash has not performed well on mobile devices. We have routinely asked Adobe to show us Flash performing well on a mobile device, any mobile device, for a few years now. We have never seen it.

Well, that isn't entirely true. There are Flash games which got compiled into iPhone apps with beta versions of CS5. Adobe has a list of them. And they perform just fine. But if Flash isn't performant - isn't that Adobe's problem? Along with the stability question - Apple leaves the ultimate responsibility of these things, whether built with Cocoa or WebKit, on the developer. If my web page or app crashes, that's not Apple's fault - that's mine. So why does Apple take the stern parent approach with Flash?

Again - how is this not about business again? What Jobs is saying isn't false or wrong, not entirely or mostly at least ... it's just a massive distraction from the real topic at hand. Developers could create apps with Flex or Flash that don't crash, that look good and that perform well.

So why should Apple stop them from doing so? Remember - even if Apple didn't allow plugins to operate within Mobile Safari because of performance, stability, security or whatever - Adobe's compromise was to have Flash be reviewed and deployed just like every other app on the App Store.

Job's response:

This becomes even worse if the third party is supplying a cross platform development tool. The third party may not adopt enhancements from one platform unless they are available on all of their supported platforms. Hence developers only have access to the lowest common denominator set of features. Again, we cannot accept an outcome where developers are blocked from using our innovations and enhancements because they are not available on our competitor’s platforms.

Flash is a cross platform development tool. It is not Adobe’s goal to help developers write the best iPhone, iPod and iPad apps. It is their goal to help developers write cross platform apps. And Adobe has been painfully slow to adopt enhancements to Apple’s platforms. For example, although Mac OS X has been shipping for almost 10 years now, Adobe just adopted it fully (Cocoa) two weeks ago when they shipped CS5. Adobe was the last major third party developer to fully adopt Mac OS X.

So, dear reader, you see - Apple is protecting you. It isn't that Apple is blocking a massive community of developers from offering their applications from the App Store ... it's that Apple is keeping those substandard apps which might not take full effect of Apple's innovation. You didn't buy that fancy iPhone to get the same Flash app that can be played on a Google smartphone, after all.

No. Apparently, you bought it for the fart apps, which at one point were making $10,000 a day off the App Store. Or perhaps you want an app about smoking in a group.

And if you want an app about shaking a baby to death or political satire ... you may or may not be out of luck - Apple approves and then later rejects those kinds of apps. Or the other way around. It's hard to keep track.

So just remember:

Adobe has characterized our decision as being primarily business driven – they say we want to protect our App Store – but in reality it is based on technology issues. Adobe claims that we are a closed system, and that Flash is open, but in fact the opposite is true.

Remember that when you are using your iPhone in its sealed case, connected to your computer with a proprietary cable, which connects to the closed source iTunes which downloads DRM controlled content written in a closed source language to be run on your closed source operating system, provided that content passes review by a process so secret that most people at Apple can't even describe how it actually works.

God damn you, Steve Jobs - now you have me sounding like Cory Doctorow. For that alone, I should buy a Nexus One. I was willing to put up with all of the above and even the obnoxiously chaotic App Store review process when I thought Apple could at least embrace a development community which wasn't controlled by Apple. I even like HTML5 quite a bit, but I don't believe Apple should be in the business of telling me I have to use it over Flex simply because Flex is built by a different company.

That's not a technology strategy.

That's a business one.

Plain and simple.

TV Watch: Shows You Probably Should Be Watching

No Lost last night, so let's do a quick rundown on shows you really shouldn't be missing right now:

I was luke warm to warm on the show last season, but Season Two has been particularly good and I'm already getting somewhat stoked for the next season. They're moving away from a disassociated monster-of-the-week style plots and getting more and more intwined with the rather interesting backstory. And if you missed the time-travelling episode with Petere "Buckaroo Banzai" Weller - well, you missed one of the best time travel stories ever put to screen.

I'll admit to a certain overzealousness about this show. But look: Timothy Olyphant was clearly engineered, possibly by aliens, to play a cowboy. It's co-produced by Elmore Leonard and based on one of his shorts. He spends most of his time battling either racist hicks or the Miami Mafia. It's not going to have the most complicated story arcs on television, but it is clever, fun and terribly fun to watch.

Doctor Who
OK, so kind of a lateral toss here since American viewers need to find sneaky ways to catch the latest of this BBC show. And if you haven't caught up on all the previous seasons, don't start this one. So, because I know several Cathode Readers are way behind on Who, I'll be mysteriously brief: it's actually more of the same than it might seem, but that is a good thing.

And I'm going to toss in a quick plug for .comEDY, which you can't see because it hasn't actually aired yet. Actually, still in production. But it's in production by long time Cathode Tan secret decoder ring wielder The Futon Critic and loosely based on some of our mutual history. Thankfully not about the time we broke into a secret government and released that zombie virus thing. Because woah. That would be embarrasing.

Join Dead Space In Facebook

As the marketing for Dead Space 2 ramps up, EA is making Facebook one of their beachheads. You can follow the the Dead Space page, which just dropped the HD version of a new trailer. Also, if you wanted to have played along with the same letters Destructoid got in the mail (ARGmail, as it were) - they were posted there as well.

Dead Space saw a lot of creative marketing leading up to it's launching, including an exploratory web site, backstory comics and eventually even an anime. We don't have a release date yet, but looks like fun will be had while we wait.

Tuesday, April 27, 2010

Game Play: inFamous (...and boss fights in general)

I'm not going to spend a lot of time about the virtues of inFamous - the game has gotten a decent amount of coverage since its initial release and largely lives up to the hype. The open world is well constructed and imaginative, Sucker Punch really nails the postmodern urban comic book thing. At the core of the game: blowing stuff up is a great deal of fun - chaining attacks against enemies and environment alike is engaging (though I would love to see a truly destructible environment in a game of this style).

For the core mechanics, I only have two real complaints: repetition and intelligence. Most of the missions devolve into run, run, run or blast, blast, blast ... or sometimes run, blast, run ... or - well, you get the impression. This is why the fact that Sucker Punch made both the running (be it the parkour style climbing or skate style "grinding") and blasting so much fun is critical. Intelligence wise - well, the AI is not exactly Einstein ... rather the game seems to really on every enemy having really, really, really good eyesight. You'll constantly get sniped from enemies from afar - which can be fairly annoying early in the game when your powers are limited in scope and you're trying to snipe back.

Which, allow me to nominate the floating cloaking grenade-launching robots later in the game as some of the most annoying enemies devised - they aren't particularly tough, they just buzz (literally, the noise is irritating as hell). And so glad they decided to show for the final boss fight.

And that final boss fight. I'll keep this spoiler free, but the final boss fight is representative of everything I hate about boss fights. Most of the game and missions are well designed, but the final fight goes right to every cliche every put out there: the boss is largely invincible except for a random period of time you need to keep an eye out for - all the while you'll be running back and forth avoiding a relatively random array of attacks.

The reason why the final fight was such a downer for me is this: for a game that was all about revealing the escalation of a simple bike messenger to city superhero the final fight made me feel pointless and weak. Pointless because it was quite obvious that the final boss could tear me apart in an instant if it really tried and weak because all I could do was run around a lot and wait to throw off a few shock grenades ... and then repeat.

And then repeat.

And then repeat.

And then repeat.

At some point - can't we just skip to the end? I can't count how many games have built up layers of anticipation only to have the end scene be the result of some kind of old school slugfest followed by a cinematic. Gaming evolution has given us emergent gameplay, open worlds, freedom from counting down player lives or even keep track of the score - but in many ways we're still stuck with the bonus level notion that everything should be capped with a button mashing showdown.

So that's kinda more of rant about games in general, of course. The other good bit about inFamous? A pretty decent story handled well by the comic style cutscenes. OK, I still have questions and general huh's about the ending in general, but at least it kept things interesting.

One last note: I think it is curious that inFamous, Assassin's Creed II and Uncharted 2 all have very similar core mechanics: parkour style movement, third person action, emphasis on unlocks and exploration. Yet UC2 is not an open world setup and, no offense to other two - I think easily the best of the bunch. Homework question: what exactly does an open world give players?

Anyway, if you haven't played it - you probably should. And it just recently hit Greatest Hits for the PS3 - so you can get it cheap.

The Gizmodo Raid: Let's Recap

Our story so far:

  1. Police have raided Jason Chen's property as it may have been "used to commit a felony" according to the warrant (assumingly the purchase of stolen property).

  2. Police say nobody in particular is currently under arrest and that the warrant is solely for gathering evidence. Gawker has responded citing journalism shield laws, which the DA had previously considered and dismissed but is now pausing the investigation for review.

  3. It is not apparently a widely held question as to whether or not Jason Chen would constitute as a journalist (he does), the real heart of the question is whether he is protected in this instance as the raid pertains to gathering information for a story or does not because paying for the phone makes for probable cause of a felony.

  4. The short, short version: Journalism shield laws protect journalists from companies simply pointing a finger at them and citing a crime ... but that might not be the turn of events leading to the raid.

  5. Apple sits on the steering committee for the REACT squad responsible for the raid. Police have stated they were not involved in REACT being included and that police themselves were unaware of the time that Apple sat on the committee.

So for the time we wait a bit while the men in suits figure out who has a case. And Scott Adams is still quite hilarious.

Monday, April 26, 2010

Police Raid Gizmodo Editor's Home Following Lost iPhone

So first, scroll through Gizmodo's post on the affair.

Police have seized a number of computers and other equipment from Jason Chen's home, without him present. It is interesting that they seemed to have also seized a note from Gawker's COO explaining that as a journalist, such a seizure of Chen's property might not be entirely legal.

A interesting cross-roads then: Chen is a respectable full time blogger. The iPhone was obtained through fairly innocent meansby paying $5,000 and returned to Apple upon request. Gawker is claiming a legal defense based on journalistic grounds. As The Woz himself points out, there wasn't even anything earth shattering about the leak: most of the features were already rumored or assumed. Apple, according all obtainable facts, hasn't even fired the engineer responsible for losing the iPhone in the first place.

Is Apple really going to gain more with the gestapo approach here? This doesn't seem like anything more than a threat towards bloggers for creating leaks, no matter how the information was obtained.

And ironically - it looks Chen liked his Macs.