Reflections & analysis about innovation, technology, startups, investing, healthcare, and more .... with a focus on Minnesota, Land of 10,000 Lakes. Blogging continuously since 2005.

Tag: Silverlight

iPhone and Flash – Apple and Adobe at War?

Things are getting real interesting out there on the iPhone front, in so many ways. Here’s a case in point: this fastest-ever growing mobile phone platform, as originally introduced last year, did not support Flash (and still doesn’t), but it’s clear that Adobe, the company behind Flash, would sure like to…uh…do something about that? Iphonemultipleimages

Perhaps you saw the news that broke last week related to this. Here are the two items I caught:
iPhone Still Not Ready for Flash (from CMP’s funky, new Contentinople site)
Who Needs Flash on iPhone More, Adobe or Apple? (from the great blog "last100," part of the ReadWriteWeb network)

After reading these, I decided to ask a couple of my smart local buddies to do guest posts. First, my longtime designer friend "PXLated" — who’s an almost-as-longtime Apple and Adobe user and follower. Get this, he goes this far back with Adobe technology (I love this story): when he first called ’em for support, John Warnock took the call. [Yeah, for you trivia buffs, that was the founder.] I asked PXLated what the heck was going on, and if he could give me his take over the weekend. His comments follow:

Adobe’s been pushing Apple to put Flash on the iPhone and is using the blogosphere to promote its cause ("we need Flash, we need Flash", blah, blah, blah). Adobe and their surrogates — you know, the old interactive CD developers whose businesses went tits-up when the web took off — try to play it that Flash is a web standard and, to have the full web on the iPhone, you need Flash.

First of all, it’s not a standard. It might be ubiquitous, but it’s not in any way, shape, or form a web standard. There are many things delivered over the Internet (the web, mail, etc), and Flash is interactive multimedia delivered over the internet. There happens to be a Flash plug-in that allows it to be played within a browser, but it’s not "standard" web technology.

So, Apple has basically said no, the full version of Flash is too resource-intensive and power hungry, and even taxes desktop machines. Load up some Flash sites (or several) and it can bring your browser to a screeching halt and max your CPU usage. I’ve seen it written that it’s even worse on Macs than on Windows, as Adobe has never optimized the Flash player for the Mac. Then there’s "Flash Lite," a version that’s on some phones. But, according to what I’ve read, and what Jobs has said, it is too lightweight, in that it won’t render Flash sites as we know them — only ads and simpler stuff like animations. And it won’t even display stuff created in the latest version of Flash.

So, currently, there isn’t a version of Flash that Apple will allow. The full version of Flash is too heavy, and Flash Lite is too light.  Bottom line, there is no version appropriate for the iPhone/iPod Touch.

The current brouhaha is that Apple came out with their iPhone SDK, and Adobe’s current CEO said in a conference call last week that his firm would use that to develop Flash for the iPhone. The reality is they can’t without deeper ties to the underlying operating system, or to the Safari browser. That isn’t possible without Apple’s help and approval.  It seems his engineers explained the facts of life to him, and a day later he corrected himself.

So, now Adobe is back to square one.

My guess is there’s a lot of politics going on behind the scene, and some of it is historical:
1) Adobe raped Jobs in licensing fees for using display postscript at NEXT.
2) They tried to do that again at Apple for OSX, and Jobs said screw you and developed the whole display technology using PDF. He could do this because Adobe had opened the specs so PDF could become a standard. Open=no licensing fees… 🙂
3) Adobe probably pissed Jobs off (as well as all Mac users) when they were one of the last software companies to release OSX versions of their programs, and used Carbon (a bridge) rather than Cocoa (the native method).
4) Adobe then again took forever to make their apps native for Intel, probably further straining their relationship with Jobs.

So, basically, I would guess there is no love lost with Jobs when it comes to Adobe. Hey, they screwed with him when he was down.

The problems for Adobe are many. First, all their big apps (including Photoshop and Illustrator) are mature, and there just isn’t much they can add to them to make people upgrade. They locked themselves into a development box where they can’t utilize all the great underlying OS features to create a nice upgrade, either. So, their only place for real growth is to ride the next wave in computing — mobile — but they can’t if Flash isn’t as ubiquitous on phones as it is desktops. So, there are a bunch of choke points and pressures.

The iPhone points to the future and is a grand success, but Apple prefers to use and promote web standards — like Scalable Vector Graphics (SVG), Javascript (Ajax), and the latest in the HTML specs — rather than proprietary things like Flash.  Microsoft is introducing a Flash competitor called Silverlight. So, Adobe is desperate because they know the mobile phone/browsing market is many times bigger than the desktop market. If they can’t get Flash to be as ubiquitous on mobile devices as it is on the desktop, the jig is up and they could miss out on the whole next generation of computing. And all those Flash developers will have to learn new skills.

It’s desperation time for the whole bunch, hence the latest outcry.

Thanks, PXLated. This will indeed be very interesting to watch! [Note: I guess I won’t go long on Adobe stock.]

Not being one to ever be satisfied, I then just had to ask yet another of our mutual smart friends for his opinion on the news. Steve Borsch has an excellent blog at Connecting the Dots, and also blogs with me occasionally at Minnov8. He’s very savvy in the ways of Apple and Adobe, having worked for Apple for several years in sales in the ’90s. And he’s as plugged in to where things are headed in the new world of "the Internet as platform" as anyone I know. Here are his comments:

Any of us in the tech sector knows that shrink-wrapped software is dead; the personal computer will be less and less necessary going forward; and that multiple device types connected to the Internet — with most of the processing being done "in the cloud" or at hosted facilities — will be the way most of us get our news, information, entertainment, and social connections going forward.

As the Internet increasingly morphs into the "platform" for applications — either Web, desktop, or the new category of rich internet applications (RIAs) — runtime "containers" will be critical for any company hoping to be relevant, and Apple’s name has come up as one of the most absent players in this space. Ironically, iTunes is often used as the best example of a rich internet application, since one can rip and manage music on the personal computer desktop; share it within the home; buy and download music, movies, and video "up in the cloud" along with cover art; and subscribe to free audio and video podcasts.

Adobe’s AIR (Adobe Integrated Runtime) is an RIA platform with incredible functionality and the capability to "collapse" many sorts of technologies into a "container" that runs in a Web browser or on a personal computer desktop. Microsoft’s Silverlight takes a different approach (and many design tools exist for creating and deploying Silverlight "containers"), but the essence is the same: next generation hybrid applications that attempt to marry the best of the desktop with the best of what’s delivered over the Internet from the cloud. In fact, buzz has it that Silverlight was a direct strategic response to the ubiquity of Flash (which is on something like 97% of all browsers), and that Microsoft’s abdicating the runtime of video, audio, and animation to Adobe was a very bad idea…especially if the company was interested in cloud computing (which it is now!).

My belief is that Apple isn’t going to sit this one out, and the Flash controversy is all about positioning their approach (whenever it’s revealed), since they have all the building blocks necessary: the most ubiquitous creative platform, called Macintosh; Quicktime (which I’d argue is the best video container); Safari on both Mac and Windows (built on the fast, completely Web-standard browser engine called "WebKit"); incredibly simple "clip" technologies like WebClip (a fast and easy way to clip a section of a web page, and it automagically turns into a widget); and the fastest growing mobile device (iPhone); and many, many rumors of upcoming device-types leveraging the critically acclaimed "touch" technology used in the iPhone interface.

Add to that Apple’s famed ability to deliver easy-to-use interfaces to historically difficult processes and technologies. Probably my best example is the phenomenally good-looking movies and, most specifically, DVDs that can be created with iMovie and iDVD. Having grown up in the interactive space with videodisc and CD-ROM, I can tell you that creating and delivering a DVD is so laughingly simple that one of my non-technical friends (who can barely figure out the radio in his car) has delivered some of the best-looking DVDs I’ve ever watched.

My prediction is that Apple will be delivering different "touch" form-factors in the next six months (along with faster 3G iPhones), as well as touch modifications to their notebook platforms. As user-generated content continues to explode — and demand accelerates for tools to create and deliver it — Apple will be right there with what’s needed to create and deliver at runtime.

There you have it, folks. What my smartest, tech-savviest friends say is behind all this Apple/Adobe posturing regarding Flash. In other words, there’s a whole lot more than meets the eye.  And your intrepid reporters at Tech-Surf-Blog [wherever I can find them!] are out there for you, right in the middle of it all.

(For another take on Apple and its culture, check out this great cover story just published in Wired Magazine: Evil/Genius: How Apple Wins By Breaking All the Rules.)

Now, you need to tell me what *you* think about the future of Apple and the iPhone.  Don’t be shy — comment below and show your stuff…

Widget Summit, Day 2: Platform Mania

So, how many platforms do we need for widget development, anyway?  And how many will survive, or thrive?  That’s surely an open question — one that will likely get answered in the next year or two. And then there’s the question of what is a widget, really?  Or "mini web app" … "social media app" … "gadget" … or whatever we call them. Or does the name really matter?

This post is my final coverage of the Widget Summit conference — specifically, the last five breakout sessions, which extended through end of day Tuesday. (All the rest of my Widget Summit coverage is here.) I thought the best sessions to catch on the second day would be those devoted to widget/web-app platforms from the majors. So, two sessions I attended were about development on (guess what?) Facebook, while the other three were on Apple’s iPhone, Microsoft’s new Popfly platform, and Google Gadgets. Here’s the way the rest of Day 2 played out, in the order of appearance:

Redmond Wants a Piece
Popfly is a new plug-in for Silverlight, Microsoft’s new Flash competitor. It’s now available on the web in private beta — and, according to Dan Fernandez, Popfly product manager and evangelist, the goal is to "democratize development." He said there’s a huge world of non-professionals using MySpace and other sites and doing some amount of HTML and Javascript to build web apps or widgets. "There are 7 million ‘pros’, but 107 million ‘non-pros’," he said.  MIcrosoft wants a piece of that. [Like they want a piece of everything else in the Web 2.0 world if they can get it, no?]  Popflyslide
"Users are the stars," said Fernandez, noting that it’s all about "embracing expression."  He mentioned a recent study that found people spend more than an hour a week changing their online profile. He showed how, with Popfly, non-pro developers can snap together different "blocks" to build an app. They’ll be able to make what he called "Popfly gadgets" for Windows Live Spaces. In the audience questions following, someone asked when the product will actually be released, but Fernandez indicated he had no idea. Another obvious question came next: "What about Adobe AIR?" To which Fernandez said, "That’s a different audience."  As in real developers. He did say that Microsoft is looking at the possibility of going open with Popfly. He also said that cross-platform support is being addressed. "Support for Mac is in the Silverlight runtime," and Linux support is (or is coming), too. [By the way, here’s some coverage of the Popfly demo at Web 2.0 Summit, which Steve Ballmer did a day or two afterwards — with Fernandez at the keyboard; he told me that morning at The Palace Hotel he was hoping his demo would work so he didn’t get shot…  🙂 ]

The Facebook Gurus Speak
Tyler Ballance of Slide is the developer of some of the most popular apps on Facebook — including Top Friends, Fun Wall, Fortune Cookie, and Famous Quotes.  He of course talked about FB’s favorite term of late — the "Social Graph" — and about the concept of "Social Utility."  Slidestats
Tylertitleslide
To develop a successful Facebook app, you need "real social interactions," Tyler said. "Helping users interact is what makes a good app."  But how about what we commonly know as widgets, other than Facebook apps?  "Little biddy things you drop on a page," as Tyler called them. Socialgraph
He said using those on Facebook "isn’t too brilliant…they might work on Facebook — some do — but it’s probably not the way you want to go." On the other hand, he was happy to tell us that his Fun Wall app is "the best implementation of the widget idea on Facebook." [How humble of him.] He also said that "just porting apps to Facebook doesn’t work" and "just putting an RSS feed on your profile, for example, isn’t that interesting."  The point is that FB users use this platform differently — "it’s unique." He talked about a new app he’s working on (or has just completed?) called "Why Are You Awesome?"  He said it let’s you tell your friends why you are and — a key point he stressed — "it gives them a reason to check back."  A couple of other key points Tyler made were these: "Notifications" are important, because people "crave these updates"….and the "Feed" is the "highway on Facebook — put things there that are interesting and relevant."  He talked about the pros and cons of FBML (Facebook’s own markup language). It gives you the native look and feel, making the app "indistinguishable from the platform," he said. On the negative side, FB’s bugs become your bugs, "and you’ll always be the one to get blamed." The other option for developers is the "embedded iFrame" approach. On the plus side, it gives you "near complete control — you’re only constrained by space and the terms of service."  However, you must call the Facebook API "lots"….and if an iFrame app is done wrong, "user experience suffers." So, what do you do? "Pick the one that you’re most comfortable with, and what you can ship the fastest. If it’s more than three days, forget it." Perhaps the most interesting insight was this: "Figure out how users interact with your app. And don’t take things so seriously. Facebook users don’t sign on to do work."  [I’m not so sure FB’s leaders would agree with him there, as they try to make the platform attractive to more adults — meaning those active in the workaday world, concerned about things like, oh, productivity, business networking, and the like?  Employers are already cutting off Facebook from their corporate networks because it’s perceived to be all about screwing off. So, the notion that FB users don’t care about work can’t be something FB’s investors like to hear.]  The audience questions began with "What about useful and fun apps — are there any"?"  I didn’t hear a good answer. "Is there any way to link to several pages within an iFrame app?" Tyler said it would be better and easier to use FBML in this instance. [He did note, in passing, that Top Friends is an iFrame app. And, later, he noted he works on this app "all day long."] Another general tip Tyler gave was to make an effort to stay on top of Facebook changes. "They’re definitely building out the platform." He also said metrics of what what people do inside the app are very important — "not so much their whole social map."  But be careful you don’t violate FB’s terms of service: "You can only hash someone’s data for 24 hours."

Dave Fetterman is the creator, lead engineer, and a founding member of the Facebook Platform project.  He was formerly with Microsoft and has a master’s in computer science from Harvard. He opened his talk by telling us how many Facebook developers there are now. Davefetterman
Are you ready?
It’s more than 50,000! He also said the site gets 54 billion page views a month. Yes, that’s a "b." 

Fetterman launched into his advice for aspiring Facebook developers — the first and most obvious being "Make your app social." To be quite blunt about it, he said this: "Your content’s not interesting unless it’s interesting to your friends — or my friends." He also stressed the benefits of privacy. "It’s not a burden — it’s an asset."  So, how does one get viral distribution?

Fettermanslide_5
Fetterman talked about the Facebook News Feed, and also about adding an app from the Profile (he said to develop with FBML for this), and he stressed the importance of Notifications "from granular updates." He said that mass distribution in "now easy."  But he noted that "spreading an app is entirely different from spreading
a widget."  The latter, he said, is like "mailing HTML."  He gave his take on how an app is different from a widget [see his slide here: "Widgets, eh?" you have to forgive Dave — he’s a Canadian  🙂 …] Fettermanslide2_3

Facebook’s goal is to make developers as comfortable building on its platform as on your own site, Fetterman said. He added that FB has its own flavor of Javascript now, called FBJS — "to help you play in our environment." The goal is to give you JS while ensuring that you "remain safe" on Facebook.  He also said they have "MockAJAX."  New solutions he named as being in the works now are: message attachments, fb:mobile, and fb:ref. For more, Dave said to go to developers.facebook.com and wiki.developers.facebook.com.

iPhone Calling
Matt Drance was next up, the "Sharing Technologies Evangelist" at Apple.  How’s that for a title?  He does a bunch of stuff, and one of those is helping third parties develop for the iPhone platform, which was his topic this day. Matt said the iPhone was only 109 days old, and that it’s already had three updates in three months. He reminded us that the iPhone’s Safari browser is the same one for the new iPod Touch. Last week, Matt said a new iPhone web apps directory went live. "Apple is very serious about the web development platform for the the iPhone." [What Matt didn’t let us in on was the news that Uncle Steve was about to drop, the very next morning, that Apple was planning to open up the iPhone to third-party apps. Can’t blame him, I guess — he’d like to keep his job. But, c’mon, Matt — we wouldn’t have told anyone! 🙂 ] Mattdrance

Matt talked about the Safari "WebKit," which is a web development engine. And he gave a bunch of pointers for those who plan to develop for the iPhone: understand the browser prefs (JS can be turned off, popups disabled, etc) … you need to separate your page content (JS, CSS,and HTML), and "be well formed and standard" (he specifically recommended the CSS Zen Garden site for inspiration) … know your resource limits … know your scripting limits … understand windows and dialogs (window.open and target="_new") … use supported content types, including Word, Excel, PDF, Quicktime (no Java, Flash, or SVG for iPhone, at least not yet) … use native fonts … test and bug with Safari 3 … and remember that the iPhone’s input device is a finger — which is a lot different from a mouse! Matt reminded us that the iPhone does not have cut & paste, drag & drop, or selection — at least not yet.  Finally, he advised, even if you don’t yet have an iPhone or iPod Touch, you should get Safari 3 and see how your site or app looks in it.

GOOG Got It Goin’ On (Oh, Really?)
We were lucky to have presenting, in the very final session, Adam Sah, the architect for Google Gadgets. The most common place to find them, said Adam, is on iGoogle start pages. Google Gadgets is a platform for multiple sites, not a plug-in. Adamsah
"The end-user owns the page," said Adam. "Why do they like gadgets? Because they’re just remote HTML, cached by Google."  And why do providers like them? "Because it’s an easy, cheap way to create interactive content," he continued. "You can write one in 30 seconds. And it’s high leverage — write once, run all over. Whataregadgets_2
You get free, effective distribution to tens of millions of users." He showed a slide identifying all the distributors of Google Gadgets. He said Gadgets are "frictionless and scaled…you don’t have to cut a deal with Google." 

Adam also spoke about the newest type of Google Gadget — "Gadget Ads."  He said they’re paid-placement gadgets that reach hundreds of thousands of sites. "A Google Gadget ad is nothing more than buying traffic for your gadget," said Adam. "They’re great for time-sensitive content, like movie openings," he said, " and great for ‘seeding’ viral distribution." What percentage of Gadget Ads get syndicated by others?" someone in the audience asked. Adam said it’s still too early in the game to talk about that. But, speaking of virality, he recommended that "putting an ‘Add to Google’ or ‘Email This’ button inside your gadget will get you free traffic." He said "It’s been hard to get initial virality started, but not so now with Google Gadgets." 

In closing, he said what makes a good Gadget in general (not necessarily the ad type) is a very small or no logo, usefulness or utility, and no registration required. He also put up a slide (shown here) with a whole bunch of resource links. Googgadglinks_3
One link he didn’t mention, which I found on my own, was this one: Google Gadget Ventures, a page that tells you how you can develop new gadgets with the financial support of Google. 

That’s right — yet another company is stepping up with a financing program for widget (gadget) developers.  Life is sure good if you’re an entrepreneurially minded developer these days, wouldn’t you say?

A recent interview of Google’s Adam Sah was just published on this ZDnet blog.  It drills in further to some of the topics I touch on here in this post.

UPDATE (10/23): To make a couple of clarifications regarding Dave Fetterman’s presentation.

UPDATE (10/24): I didn’t mention in this post yet another platform: MySpace. It announced, after Widget Summit ended, that it, too, was opening up its platform to developers.  But I figured most of you had already heard that. For some perspective and links on the topic, however, including developments at Web 2.0 Summit, here’s a recent post from Seth Levine’s blog.

 

Widget Summit, Day 2: Geeky But Oh-So-Widgety Good

At 7:30 am on Tuesday, I was back at the squeaky-clean-new UCSF Mission Bay campus, chompin’ at the bit for more of that good widget scoop. Along with Monday’s program, this would surely be more widget smarts than a person could get anywhere else on the planet — at least this week. Tuesday’s session was to have a different purpose:  producer Niall Kennedy had planned it that way [and hats off to him for a great job putting this event together!]. Monday was about the business of widgets and large trends affecting the industry, while he told us Tuesday was for getting into the nitty-gritty, helping attendees plan their widget implementations. And there was no question in my mind that most of the 200+ attendees at Widget Summit 2007 were in fact developers — or, as Niall described them in the conference materials, the people "directly involved in this hyper-growth industry, providing the tools and content that connect people and their ideas across the web."

On this day, I would take deep dives for you, oh valued readers, in Javascript widget basics, advanced Javascript. Microsoft’s Popfly and Silverlight, Facebook development, iPhone widget development, and — last but certainly not least — Google Gadgets.

Dori Smith, a well known programmer and author of Javascript books (published by O’Reilly and others), led the first session. She told us how the term "widget" isn’t really well defined — it means different things to different people. Dorismith
In the Apple world, for example, there’s the "widget object," while in the Vista world, there’s the "system.gadget" object — but they’re different things.  She also called the industry on the "write once, run anywhere" claim — calling it a myth. "Unless it’s something really, really basic," she said, "you’re going to have to tweak the widget for different platforms."

So, what should your considerations be when creating your first widget? Dori set out a great list:
• what do you want to do?
• is it community-oriented and viral? or maybe just something simple, like a countdown to an event?
• is is static or dynamic?
• will it require frequent updates?
• is it for a web page or not?
• what platform will you use?
• what does your audience want?

Dori said cross-platform woes can be best dealt with by separating content from style and behavior: HTML for content, CSS for style.  She recommended you start by making your widget work without Javascript, then add JS functionality without touching the HTML. She said DOM (Document Object Model) lets you manipulate with Javascript without affecting the HTML.

The biggest complaint about widgets is that they’re slow, Dori said. The solution?  "Better written widgets!" Let the page finish loading, she said, adding that there’s a simple workaround to this problem. (Presumably, you have to read one of her books.)

What’s Dori’s crystal ball?  First, she’s really looking forward to Leopard coming out on October 26.  She’s seen a lot of the new stuff coming in this OS upgrade, but can’t talk about it.  One thing she could mention: "Dashcode" — a development environment for widgets. "I love this product!"  Audience question:  "But is it only for Mac OS dashboard widgets?"  Dori’s answer: "Yes, but you can create graphics you can use on other platforms."  She also really likes the new "WebClips feature of the new Leopard OS.  "It allows people with no interest in code to make their own widgets."

Programmers are increasingly understanding the impact of widgets, Dori said. "And users are more willing to install widgets."  She warned, however: "Platform incompatibilities will get worse before they get better…The standardization process will help," she said, "but it will take a long time."

Since this was a session on Javascript, what about that other kind of widget?  "Could you comment on Flash?" asked an audience member. "There are lots of people out there with iPhones," she said, "which don’t support Flash!"  The questioner countered: "But Javascript doesn’t work on MySpace."  Dori countered back: "Yes, but you can use DHTML. It really depends on what you want to do."  Flash is much more visual, she allowed, but it’s also an expensive product to buy.  And the final good insight from Dori: "Anything you can do in Flash you can do in Javascript — on one platform.  The problem comes with multiple platforms."

But, as if this session wasn’t enough on JS, there was more coming. Joe Smarr, the young, animated chief architect at Plaxo, jumped right up on the stage to continue the fun.  [Joe is the son of famed computer scientist Larry Smarr.]  Plaxo, Joe reminded us, was doing Ajax iframes in 2004. It now has 20 million users. "Why is JS special?" Joe asked. Joesmarr
"Because you’re downloading real source code and running it in the browser," he said. And downloading and running JS blocks the browser, and the UI thread. "Code from different domains is executing together," Smarr said. "You can do a lot of good with Javascript, but you can do a lot of harm, too."

The biggest piece of advice from Joe: "Make your widget NOT slow the page down — or open any security holes. Make it fast."  He also put in a plug for Firebug (a Firefox plug-in for coders): "It’s the web hacker’s best friend. Makes it really hard to keep developing in IE."  Joe gave us his secrets for high-performace widgets:

• write less code

• draw HTML efficiently

• yield early and often

• profile like crazy

He had this opinion as well: "innerHTML is way faster than DOM manipulation." On the subject of best practices in Javascript, Joe stressed, "Give your functions unique names! You’re in a shared namespace. Otherwise, you can clash with others." For security, he said, "use JSON and callbacks for third-party API calls." For more info, Joe said to check out his blog — two specific posts to look for there have "OScon" in the title. He’s also pointed to a video of him presenting on this same topic at OScon. An audience question: "What about multiple widgets on the same page?" Joe’s answer: "You have to worry about those widgets fighting each other. Each one should have its own ID….And don’t assume too much about the host environment."

More to come later from me — one more post, wrapping up the rest of Tuesday’s program.