Category Archives: internet

Adobe wants to be the Microsoft of the Web

I suppose this will be the one “technical” post about the whole Adobe Engage thing.

Background
For several years, I worked on Chandler, a cross platform desktop app which uses the open source wxWidgets toolkit to hide platform differences from an application. I am currently managing the Cosmo engineering team, which is developing a web UI for Chandler data which is stored in the Cosmo server. In a previous life, during 2000, I built a rich internet app (RIA) using Flash and Java.

The problem as I see it
I think that a lot (but not all) apps will become RIA’s, and the base platform technology for RIA’s is very important. Too important to be controlled, or designed by any single party. The current vogue toolchain, AJAX, has this property. It also has the property of being a cross platform development nightmare. On the desktop, you commit yourself to a single cross platform library/technology, and then you spend the rest of your time wrestling with it. In AJAX, you have multiple browsers on each platform that you want to support. Not only that, you have multiple versions of each browser. If your use of AJAX is limited to simple animation and so forth, that’s not that big a deal. But when you want to build something that has rich interaction, all those versions are a compatibility nightmare. There are also the performance problems with Javascript. Firefox partisans will be shouting “Tamarin“. Only problem with Tamarin is that it doesn’t help IE or Safari or any other browser. So much for platform independence.

Flash/Flex
Enter Flash/Flex. Flash has a great cross platform story. One runtime, any platform. Penetration of the Flash Player is basically the same as penetration of browsers capable of supporting big AJAX apps. There are nice development tools. This is highly appealing.

What is not appealing is going back to a technology which is single sourced and controlled by a single vendor. If web applications liberated us from the domination of a single company on the desktop, why would we be eager to be dominated by a different company on the web? Yet, this is what Adobe would have us do, as would the many who are (understandably, along some dimensions, anyway) excited about Flex? Read Anne Zelenka’s post on Open Flash if you don’t think that Flash has an openness problem. I’m not eager to go from being beholden to Microsoft to being beholden to Adobe.

What to do?
Unfortunately, there don’t really seem to be many alternatives. There’s OpenLaszlo, but much as I like the Laszlo folks, perusing the mailing lists shows that it’s still pretty much a Laszlo show. So while the licensing is better, the community development part doesn’t seem to be much better. There’s also the possibility of Adobe having a change of heart regarding the openness of Flash and Flex. But it’s hard for me to see why they would do that. I guess we can only hope that Adobe’s experience with Tamarind warms it to the benefits of a more open model for the future of Flash. Sun has finally woken up, so maybe it’s not impossible for Adobe to either.

[Update: see my followup]

Social social networking

It seems like I’ve been doing a lot of stuff involving social networks recently.

Flickr (http://www.flickr.com/photos/twleung)
Most of the fun activity in Flickr revolves around finding people that inspire me or who share some common interest. Sometimes that is even extending into the real world, as it did during last week’s SFlickr meetup.

Upcoming (http://upcoming.org/user/12327/)
Also last week was the first time that I really used Upcoming.org in any major way. I got an account when I went to the SFlickr meetup last May, but besides that use, I hadn’t done anything – no friends, no nothing. Since Macworld turned out to be the same week, I ended up following a number of the events at Macworld using Upcoming. I took the trouble to add friends, and subscribe to a few Upcoming RSS feeds, and this gave me no shortage of options for activities during the week. The combination of friends and locations seems to be a good fit for the way that I’d like to find out about events, especially while I am travelling.

LinkedIn (http://www.linkedin.com/in/tedleung)
Guy Kawasaki has written a pair of great posts on how to use LinkedIn more effectively. Of all the job or professional social networks, LinkedIn is the only one that has actually been any good for me. I’ve had several solicitations for contract work (even though I am not consulting any more) and I’ve seen some reasonable jobs go by (not that I am looking). I definitely feel that it is worthwhile to maintain my LinkedIn information, and to add people to my network. I’ve been much more stringent about letting people into the network, particularly since I’ve been asked to recommend people to each other, and I want to feel comfortable about doing that.

Twitter (http://twitter.com/twleung)
The most recent of the social applications is Twitter. Twitter is an app for letting you put your status out into the cloud. Your status will be recorded on a web page that people can see, and it will also be pushed to people via IM (I was having terrible luck getting IM notifications until I switched to the Jabber IM bot) or SMS (I turned this off early on before I exceeded my text message limit). You can also post status updates via the web, IM, or SMS.

It might seem like IM status messages would be enough, but they turn out not to be. At OSAF, we have a decently distributed staff using a number of communications media: IM (on multiple networks), IRC, and Skype. When I go away from my computer for lunch or an errand, I want to let people in the community know. Today, I have to go update the status of all those media. Also, in some of those media, your status information could turn into a message that scrolls off screen and gets missed. The fact that Twitter archives your updates on a web page is a great thing. For distributed working groups it provides a kind of status glue that makes up for some of the lost in person interactions. Up to a point — I’ve noticed that some people are using Twitter as if it were IM, having entire conversations through it. If you are using some kind of realtime monitoring, like IM, then this turns annoying very quickly, as you are privy to all kinds of conversations that don’t affect you, complete with IM notification sounds. If Twitter had the ability to send Tweets to groups of people, that would really help a lot. I also wish that it was easier to find people. The little pictures of people are cute but hard to read, and having to mouse over them individually to get more detail is RSI inducing.

There’s a small ecosystem springing up around Twitter. There are Ruby command line tools (sadly, I couldn’t get them to work because Ruby Gems is messed up on OS 10.4), Python/Growl notifiers (works, but high maintenance), and shiny Mac tools like twitterific. Someone has even written an Applescript Quicksilver action, Tweet, for posting. There are still a few things on my wishlist: 1) for Twitterific to both have it’s little history window and to deliver changes via Growl, and 2) to be able to set my status in Adium, Snak, and Skype based on Tweets.

Technorati Tags: