Entries for month: April 2010

My Quick Reaction to Steve Jobs' "Thoughts on Flash" Letter

Technology , Miscellaneous , Adobe 7 Comments »

So just when I thought that all of the rhetoric regarding the Apple verses Adobe dustup over Flash had died down, Steve Jobs published an open letter entitled "Thoughts on Flash" on the Apple website today, ringing in yet another round in this boxing match.

I encourage those folks who care about this issue to read the letter in its entirety (rather than someone's summary of it).

Some quick thoughts I have on what was said (just my opinions/observations):

  • When Jobs dings Adobe on the issue of Flash being proprietary, he acknowledges that Apple has proprietary products as well, but that "we strongly believe all standards pertaining to the web should be open." Why, exactly? What makes it okay to engage in proprietary protections off of the web but not on it?
  • Jobs makes the point of mentioning WebKit to illustrate that Apple contributes to the open standards for the web.  He fails to mention that Adobe also makes contributions to web standards as well (the partnership with Mozilla on Javascript engine code comes to me) and that Adobe does have products in their toolset to allow developers to create websites using the latest advances in HTML, CSS, and Javascript. Adobe certainly has an interest in promoting Flash, but they continue to support other competing technologies.
  • It's interesting that Jobs implies that Adobe was tardying in providing support for the H.264 hardward decoder, yet it has been pointed out by a number of sources that Flash has long suffered from performance issues on Macintosh computers because Flash was not allowed to make use of the graphics accelerator on Macintosh chips.
  • Jobs states that any Flash sites that rely on "rollover" events to activate certain functionality would have to be re-coded in order to work on the iDevices. That may be true in some cases, but let's not forget that certain HTML and Javascript events also rely on the idea of hovering over a page element with a mouse, or dragging and dropping an item. The need to adjust to a multi-touch paradigm is not something that just affects Flash-based sites; it affects websites built with those open web standards as well. And just because something doesn't work quite right on a new device doesn't mean you should throw it out and start over from scratch.
  • I see the issue of allowing Flash to run as a browser plugin on the iDevices and the issue of letting Adobe provide a tool for developers to translate Flash code into a binary file that runs on the iPhone OS as two separate things, yet the way the letter is written it seems to combine the two issues. Perhaps it was done as a means of using the earlier arguments to sway some options regarding the Flash-to-iPhone compiler issue.
  • A lot of these complaints Jobs has regarding Flash (valid or not) can be or are being rectified. Instead of encouraging Adobe to address the things he has issues with, he "suggests" Adobe should drop Flash and stop criticizing Apple. That certainly implies to me that even an open, secure, battery-friendly, and efficient version of Flash would still never be allowed on the iDevices.
  • I have to wonder what he thinks this letter will accomplish. The fact that he wrote it at all seems to imply either some desperation or annoyance over the fact that that Apple's anti-Flash stance hasn't been as widely accepted amongst the industry and amongst consumers as he'd like.  Perhaps he's looking to gain a few more converts to his stance at the cost of making his opposition that much angrier with him?

Saw a Windows Phone 7 Prototype In Action

Miscellaneous , Mobile devices 1 Comment »

Just got back from the first Washington DC jQuery UI Meetup (more on that in a later blog post). One of the co-presenters was a Microsoft Developer Evangelist who happened to have on him a prototype Windows Phone 7 device and was willing to demonstrate it for anyone who was interested. So I got to take a look at it and wanted to share a bit of what I saw while the memory is still fresh.

If you haven't seen any of the photos or videos of what Windows Phone 7 looks like (check out Engadget), the UI is very different from that of the iPhone or Android. Instead of icons and distinct applications, you have tiles that you tap to enter certain "hubs", and within these hubs can be added app-like functionality. For example, the hub concerning photos not only serves as a photo gallery for the photos stored on the phone, but also provides the functionality for uploading your photos to Flickr or Facebook or for viewing photos in your friends' Facebook albums. Another distinct difference is that the UI menus can span across multiple horizontal screens, so sometimes you'll see text cut off on the right side indicating there's more going on just off to the right. 

I knew most of that prior to seeing the actual phone, but I was curious to see how it actually worked in practice. It actually looked kinda cool: the scrolling and screen transistions were smooth, and the removal of the need to fit text into the width of the handheld screen allowed Microsoft to use bigger font sizes for the text, making the screen very readable even from a few feet away.

But in other ways, the UI was more subtle: it has a celluar radio strength indicator at the top of the screen like the iPhone and Android phones do, but the text was small and the background was transparent, letting the wallpaper image show through underneath. And as we waited to see new Facebook updates from his friends (Facebook functionality is integrated into the OS), he pointed out the marching horizontal line of green dots that appeared at the very top of the screen that indicated that data was being updated. It was barely noticeable, but very unobtrusive.

The interesting thing I found about the "hubs" concept was that each hub area was distinctive (different background, different text color), which really emphasized the idea that you were in a different area or aspect of the phone, not just a standalone app. And he wasn't switching from one app to another to do things: he was navigating around or deeper into the current hub to access certain functionality.

Another attendee asked him what the platform would be for developing apps for Windows Phone 7, and he told us that developers could build apps for these phones using either XNA (which I'm unfamiliar with and too tired to look up right now) or Silverlight. Given the struggle Microsoft has had in promoting Silverlight as a competitor to Adobe Flash, it'll be interesting to see if the ability to develop mobile phone applications with Silverlight will further Silverlight adoption. I should also note that earlier in the conversation, he'd mentioned that the first version of Windows Phone 7 wouldn't support browser-based Silverlight or Flash (simply because there wasn't time to put that into the first release), so I took that as a sign that Microsoft plans to allow Flash (at least browser-based Flash) on these devices.

I think that about covers it. While I personally plan on remaining an Android user, I do think Microsoft's doing something interesting here, and I'm curious to see how it plays out.

Create Wireframe Site Mockups With An Eclipse Plugin (Works in CF Builder Too)

ColdFusion Builder , Web development , Eclipse 2 Comments »

Earlier today, Dan Vega tweeted:

"this is pretty freaking cool, works in ColdFusion Builder! http://wireframesketcher.com/blog"

So I went and checked it out. WireframeSketcher is an Eclipse plug-in that lets you create wireframe page mockups, similar to Balsamiq Mockups.  I download the trial version and took it for a brief spin. You simply create a new blank Screen file and start dragging and dropping page elements from the Palette view (labels, text boxes, tabbed panes, etc.) onto the Screen, resizing and re-positioning as you go. When you're finished, you can export the file as a PNG or a PDF file.

The WireframeSketcher website mentioned that the layout information for each screen was stored as XML data, so the thought crossed my mind that maybe you could feed the XML to a parsing script that could use that data to output actual HTML/CSS. Unfortunately (as I kind of suspected), the positioning of the wireframe elements is achieved with hard-coded x and y pixel coordinates, and it would be hard to translate that into the kind of relative or "in the flow" positioning used on most web pages.

Still, if you want to add a wireframing tool to your toolset and you already use Eclipse or an Eclipse-based IDE (by the way, these guys specifically name Flash Builder and ColdFusion Builder as compatible IDEs, so props to them for being aware of the Adobe tools), this is probably worth checking out. You can try it out for free for at least a week before you get prompted to pay for a license.

Trying a New Approach

Miscellaneous , Personal 3 Comments »

I've done very little blogging over the past few months, and I wasn't a prolific blogger to begin with. Part of it was that I didn't have that much to share, but mostly it was because my heart wasn't in it. Somewhere along the line, blogging became a chore rather than a hobby, something that took a lot of effort but didn't return much in the way of satisfaction.

I'm going to try and make blogging fun for me again. Not exactly sure how I'm going to achieve that, but it probably means changing my blogging style a bit.

Consider this your one and only warning.  :)