Thursday, March 06, 2008

Apple: "Who needs Flash?"

Ouch - from the grand poobah, Steve Jobs: "version of Flash formatted to personal computers is too slow on the iPhone"

Adobe's response notes the difference between "Flash lite" (for mobile) and "Flash" (the desktop version Jobs alluded to in his comments).

From a technology perspective, this hilights a subtlety Jobs implies that most (including Adobe's Ryan Stewart) either missed or mis-directed in their responses: Jobs doesn't want the half-assed version of the Web that most users experience on their handsets - he wants the real thing.

And that means, for the iPhone, Flash, not Flash Lite. The point being, the iPhone is a general purose computing device, and, though it may require interaction paradigm adjustments (form factor, input schema, etc.), it shouldn't have to compromise richness and robustness.

The current Flash Player really is optimized for the desktop (especially the Intel platform)- but, to be fair, that's an engineering deficiency, not a phyics problem; it is possible for the Flash platform to address...

Labels: ,

Monday, February 25, 2008

Adobe: Engage and AIR

I'm at the Adobe Engage event is SF today, for the launch of Adobe AIR. Its been a while coming (beginning with Adobe Apollo), with much written about it.

Interesting elements: desktop integration (peristent storage, UI touchpoints, etc.), full HTML(via WebKit) support, integrated PDF display, and an application packaging model for easy install and update (distribution).

The two most important pieces (IMHO) are the persistent storage model and application packaging model - these start to bring the
benefits of "content" to executable applications... that its "Flash" underneath is interesting but not necessarily the important part. These technologies do provide a differentiated but overlapping feature set that I don't mean to downplay, but HTML, Flash, PDF, etc. are, I think, going to end up being more about onboarding developers.

Hard to appreciate how important distribution is as a part of application lifecycle management.

The natural comparison points are
Silverlight and Prism, and as with those two, distribution will be less the issue than finding the compelling applications will be (although you should note that Silverlight, in particular, is more an answer to Flash than AIR).

Adobe is significantly advantaged in this regard because (a) they're cross-platform (by that I mean crossing OS, browser and Web/Desktop boundaries), and (b) they're committed to the platform - the biggest knock with Microsoft and the Mozilla Foundation is that its hard to tell how serious they really are. Remember when all of Vista was going to *require* .NET? Or remember ChromeEffects? Or Blackbird?

That said, I think one chink in the AIR platform (IMHO) is that it provides no way for third parties to natively extend the platform - Adobe still thinks about applications as B2C propositions. A second knock is that they still haven't gotten the "just in time" element of application and platform install quite right (I've written on this before) - it will limit (again IMHO) where users prefer websites to applications.


Still - there's a lot to like.

More shortly - Kevin Lynch is talking now...

Labels:

Sunday, February 03, 2008

Fun with Flash

Amusing video :)

Labels:

Wednesday, January 16, 2008

MacWorld 2008: Software Industry R.I.P.

It's only fair, and certainly poetic, but the circle is now complete. As Apple, with the Apple II (and a little nudge from VisiCalc), heralded the beginning, so too did Steve Jobs (and Apple) herald the end (or at least, the end of the beginning) of the software industry.

No longer is a "what" (as in, "What do you?"), its now officially a "how". I'm calling it: Time of Death - January 15th, 2008, 9:48am PST (or thereabouts :))

What's am I going on and on about?

Steve Jobs made some cool announcements at the annual Apple-o-phile incest/love-fest: iPhone/iTouch upgrades, AppleTV stuff, MacBook Air, Time Capsule/Airport, and no mention of OS X...

(Tiger? Leopard? What's next? I dunno!! - some damn cat??)

Its not THAT wierd he didn't mention it - after all, Leopard just shipped, and I expect the OS enhancements will probably debut at the Apple Worldwide Developer's conference in June.

What was wierd was that nobody noticed... or cared.

It's a trend that's been developing for some time, but, these days, saying you do "software" is now as meaningful as saying you're in the "customer business" (
or as insightful as having an "Audience business"? :P)...... just not that descriptive, dipsh!t.

And 2008 just made it official.

If you'll forgive the math mangling: It's only a hyperbole, if you can't see the asymptopes.

Labels: ,

Sunday, January 06, 2008

The Iowa Caucus

Updated: Saw this after posting... Our Voting System is a Loser

Wow... already commented to death, but the Iowa results were very surprising, especially on the democratic side. Few had predictated such a margin of victory for Obama, and certainly not with a third place finish for Clinton. Huckabee's victory over Romney was certainly not a foregone conclusion, but if it was an upset, it also certainly was not a surprise upset (if that's not too oxymoronically hair splitting of me to say).

Interestingly (and I use the term loosely :)), that Dem/Rep difference in expectation also plays out as you look back at the Iowa Caucuses. Excluding incumbent candidate years, since 1972, only once (1980) was winner in Iowa not the Republican nominee, yet on the Democratic side, only three times was the winner the eventual Democrat nominee (vs. 4 times not).

Why is that?

Certainly there's the much publicized Democratic caucus process itself. In a particular bit of difference, voters get the opportunity to "re-cast" their votes if their candidate is deemed to be not viable. This is kind of cool - it means that you don't have to feel like your vote gets "wasted" if your picking a "risky" candidate who best aligns with more of your views.

This is a brilliant innovation in Democracy that I think better captures the "will of the majority", as opposed to the usual "will of solidarity" embodied by special interest groups. I get the idea - people stick together even if they don't agree on everything just to make sure their voice and vote matters. But I think its this blind allegiance to collective relevance over individual desire that's removed the shades of grey from our hyper-partisan brand of modern politics.

That said, the core problem with the Iowa Democratic process, I believe, is that the viability adjustment (the vote re-cast) requires that your vote is not by secret ballot - that you sacrifice anonymity (think about it). And that means that peer pressure and public perception play a much larger role in the process. The secret ballot provides protective anonymity, and is a vital and important cornerstone of modern democracy. It means people can vote their mind withou fear of reprisal in defeat (as part of the possible minority).

And this delta - that of anonymity - is why I think the Iowa Democratic Caususes are not a very strong predictor of future performance. I'm not saying Obama won't win his party's nomination, but I am saying that he's a candidate that its publically easy to align with him.

I think the real solve for this is to let people pick alternatives (perhaps multiple) up front, in some rank order - a complete overhaul of the existing system.

There's an opportunity for the overhaul as we introduce digital election process - which can provide much greater turnout, as well as enable a whole new class of election "services". The security problem will get solved, though not necessarily in our parents lifetimes (sorry, old folks).

And when it does, (not to sound hokey, but) I think it creates an opportunity to better serve the spirit of the Constitution, and of Democracy, than our current process does.

We'll see what tomorrow brings.... as always :)

Labels: ,

Friday, January 04, 2008

You can't make this stuff up...

My blog is blocked by our corporate firewall... (and I quote):

Access to this page has been denied by web filtering.

If the site you are trying to access is critical to your job function, please open a support center ticket and provide the full address of the site that you were trying to access and the following message in its entirety:

Access to http://sree.kotay.com/ for user adapps.cable.comcast.com OU=Users - CHQ,OU=1500 Market,OU=Corporate,DC=cable,DC=comcast,DC=com\Rouleau-Hellhake\, Shari has been denied for the following reason:
The Websense category "Social Networking and Personal Sites" is filtered.

I guess my blog isn't work related... not really sure WHAT it's related to, come to think of it...

Labels: ,

Thursday, December 20, 2007

Best Deal of 2007: Microsoft-Facebook?

Much has been written on the terms of the deal between Microsoft and Facebook. The gist of it is this: Microsoft paid Facebook $240M for 1.6% of the company, and the exclusive rights to sell online advertising for the site.

This being the year-end, all pundit types have got their best and worst lists coming out, and this deal seems omnipresent on worst deals of the year lists.

Its not hard to see why this argument is made: "worst" is really a proxy for "stupidly lopsided value creation", and is Facebook remotely worth that much (remember that MySpace went for $500M and YouTube for $1.6B)? It creates an implied valuation on their user base (figure 50M users or so) of, like, $300 a head... that's some big math... hard to see how Microsoft ever really recoups its investment.

But of course, that's to focus on the value with regard to public markets and value cap - the *wrong* metric here. That implied valuation of $15B, is pretty much (forgive my language) bull$#!t because this deal was, in reality, a barter deal.

Let's look at the deal another way, very simply, in terms of cash:

1) Facebook gets a $240M cash infusion while giving up very little control or equity,
2) Microsoft gets a significant destination outside its network in which to build the value of its recent, very large acquistion of aQuantive (4% of the $6B that's already "sunk"),
3) Microsoft has to generate incremental ARPU of only $5 a user *in total* to break even,
4) Facebook is valued at $15B, which means...
5) Facebook is either (depending on where you think this ends): (a) off the market for some time at that price (so no Google, Yahoo, et al spoilers), or (b) tied to Microsoft and hardening/creating value in their online ad platform

Win, win, win, win, win - at least for Microsoft and Facebook: you know, the parties actually doing the deal?

Isn't that the definition of "best"? Lopsided value creation for *both* sides?

Any "investment" dollar$ back from the deal is pure upside for Microsoft. That means that they, more or less, let Facebook fill in the denominator: $240M of $XX - Microsoft doesn''t/didn't *really* care what that number was...

I don't know about you, but it leaves me with a funny taste in my mouth... is this the "revenue exchange" program of the new bubble - a variation of the old: "I'll buy from you if you buy from me and both our revenues go up, but we're not spending any money trick?"

Dunno - but it also smells suspiciously similar to another "equity for exclusivity" deal...

Labels: , , , ,

Thursday, December 13, 2007

My new favorite word

w00t?

Not so much.... I like "backronym...." :)

(ok, maybe *favorite* is a strong word - but its funny... looks funny, sounds funny, is funny - try saying it aloud)

Labels:

Wednesday, December 05, 2007

Urgh.

Ok -so the only worse flight to take than a red-eye, is a red-eye with connections. Urgh... to quote the inimitable (all evidence to the contrary) Danny Glover: "I'm getting too old for this [expletive]..." :)

Thursday, November 29, 2007

Touch UI and the Art of Intent

Observation: One of the great things about the mouse as an input device is the idea of "intent" - that your cursor indicates your locus of attention when used for interaction (Roll-over states and tool-tips being trivial expressions of this).

You have a simpler model of this semantic with the Blackberry trackball (and the
Blackberry jog wheel before that), and a crappier version with things like using your remote control with a TV EPG (guide) or the arrow keys on your cell phone to navigate menus.

Touch interaction systems, like the iPhone, lack that model completely - just like most older (read: HW only) Consumer Electronics UIs (think VCR or DVD player).

In some cases, that really doesn't matter much... and in other cases, the directness of interaction provides a far better paradigm.... but, it suggests the question:
is "intent" a semantic that will disappear for Touch UI? Or is it a temporarily "lost" item, like tactile feedback - just a gap to be crossed?

Labels: ,

Sunday, November 25, 2007

Review: Beowulf (in 3D!)

First, the short version: it was a fast paced, man-movie of an adventure (especially in 3D!). Not quite as testosterone-ly epicly big screen worthy as, say, 300, but still a movie well worth seeing in a theater (in 3D!). Really fun.

The longer version: It was good, but won't hold up - even for re-watching in the near term, and certainly not in the longer term as a "film".

Obviously, there's the whole 3D(!) -motion capture thing. Definitely a huge step forward here, especially as compared to Zemeckis' previous outing with this technology in The Polar Express. In particular, I thought they really nailed the close shots (especially the eyes), but in attempting to service the "real" left a lot of the motion looking very stiff. Ironically, it was the big motion action sequences and distance shots that looked the most fake - great effort, but still short of the "reality bar" and likely to look Dr. Who bad in a decade or so. Still - there are moments when you really, completely get drawn in (and then, *whack* get snapped out :P...)

Story-wise, the conceit of the movie (i.e. why the filmakers are "re-visiting" the well known story) is this: Imagine if everything in the original were literally true, but embellished by the narrator (Beowulf himself for much of the tale) and edited for "mature content" by the transcribers (likely cleric/priest scribes) of the epic Olde Englishe poeme. It definitely adds a layer of pathos to the story - filling in the missing "back story", but also afflicts the story with that Soap opera interconnectedness that's drowned action/adventure storytelling (especially sci-fi and fantasy) in the wake of the Empire Strikes Back.

Sometimes a dragon is just a big evil dragon
, you know?
(apologies in advance for the politics of the previous link - but, whattya gonna do?)

Still - its was fun to watch, and fun to note where (and why) it diverged from its source. And it was co-written by Neil Gaiman, who, even when just off, is miles better than most...

Labels:

Wednesday, November 21, 2007

The Great SetWorkingSetSize() Scam...

I saw this post at ZDNet about Firefox 3 memory usage,. Setting aside for a second whether Firefox 3 is better than IE 7 or Firefox 2, this reminds me of one of the great cheats of "small applications" developers everywhere:

SetProcessWorkingSetSize(GetCurrentProcess(), -1, -1)

This Windows API makes your application look *very* efficient without actually doing anything, and has been employed by MANY a popularly considered"lightweight" application (and some, um, less light) - because the "Memory Size" column in Task Manager on Windows doesn't reflect memory usage.

"Hunh?!?!", you say?

That column actually reflects the working set of memory for your app - which is the amount of memory currently "realized" (in active use) by your process. Let's look at some use cases to illustrate what that actually means:

1) Allocate a bunch of memory and free it. Your app isn't reserving the memory space, but the working set may still be high - Windows will lazily reclaim if its needed by another application.
2) Minimize all your application windows. This does the equivalent of the Windows API call I listed above, and the memory working set for that application gets *totally* paged out. Then Windows will load back the memory pages as they're accessed - its the equivalent of clearing a cache.

This last is confusing (and illustrates the issue): after
SetProcessWorkingSetSize(GetCurrentProcess(), -1, -1), "Memory Size" in Task Manager doesn't reflect what's been "reserved" (allocated) by an application, just what blocks of memory are being/have been actively "touched" since the working set was "cleared".

If all that's confusing, fortunately for you, its easy to boil down to a simple action: Use the "Virtual Memory Size" column in Task Manager instead to look at application memory usage. You can find under the "View... Select Columns..." menu. It reflects what the application has requested from the OS, but not yet released, i.e. the real memory consumed by the application!

More info here.

Labels:

Thursday, November 15, 2007

Android: Sound and Fury signifying... ?

So... I've been looking at Android a little bit (what's actually available thus far is really the SDK, not the platform itself).

A few comments:
- Custome Java(-ish - more on this shortly)VM/bytecode engine
- Integrated Webkit for HTML/JavaScript authoring
- Fast, robust 2d graphics (native and software only) with a custom presentation engine
- OpenGL ES, with possibility of HW acceleration
- Rich storage semantics through SQLite
- Still a little fuzzy on the licensing terms: Google says (emphasis mine)"Over time, more of the code that makes up Android will be released..." - not sure what that means...

The SDK support Java application only at this stage (and the forseeable future?) - though, in theory, platform source code being available under "non-restrictive" terms creates the opportunity for other types of enhancements.

So - still early, but on the good side: LOTS of (welcome/needed) attention to the graphics and presentation layers.

On the bad: fracturing Java (which only recently has started to make progress on getting past the "build once/debug everywhere" problems). If Sun doesn't address this with Google, it'll be hard for them to maintain any credibility or cohesion with the Java Community Process for managing Java's roadmap.

Interestingly this hilights a truism of mine: for software, single implementation trumps single specification - more on this in a future post.

How this will work with open source and Android is unclear, because as Johnathon Schwartz (Sun's CEO) points out: "Companies compete, communities simply fracture".

In particular, it'll be interesting how Google rationalizes their rumoured "non-fragmentation" clause and the idea of "non-restrictive" licensing...

Labels: ,

Monday, November 12, 2007

Watch this Space, pt 1
(AKA the Android cometh)

Updated: Up and available around noon EST (someone sent me the link already! :)). Will look at it tonight... amusingly, win and mac tarballs downloading now, but consistently crapping out on linux set...

So, despite all the "news" last week (*cough* tease) - and all the subsequent pontificating - today (in theory) is when the Android SDK - the guts of the long rumoured Google "gPhone" - is actually released, and we get some real meat.

I have to hand it to the Symbian guys, though who take "quote of the week" for John Forsyth's likening of a Linux mobile initiative to the common cold: "It keeps coming round and then we go back to business."

Heh.

So... watch this space (I'll share some thoughts once I get an "open" look...)

Labels: