So over the past several months, I’ve been spending quite a bit of time following, reading and developing widgets for a variety of platforms. I’ve classified widgets into three platforms:
1. Web - These would be widgets you would embed or develop for portals such as Myspace, iGoogle, Netvibes or Facebook
2. Desktop - These tend to be more full-featured widgets since they operate on the desktop; examples include the Google sidebar, Yahoo Konfabulator or Vista widgets
3. Mobile - This would include a variety of mobile widget platforms including Nokia’s Widsets or ULocate’s Where.com
Anyways, in 9 months of widget development and exploration, this is what I’ve noticed:
1. When designing my widget, I need to optimize for different tiers. I design a medium-tier version for the web where I may not have a lot of CPU or access to certain functionality. I design and build a lower-end version for the mobile and a high-end version for the desktop.
2. For each platform (web, desktop, mobile), I’ve had to port across a variety of vendors - in some cases, this may take as long as a week.
3. More recently, some of my widgets were being denied submission for failing to meet certain style guidelines such as title color or font.
4. I signed agreements with some vendors to gain access to special functionality such as access to location information or file-system access on the computer.
5. Once I submitted my widget into the provider’s directory, promotion and discovery became another major hurdle
Does this not sound like mobile development?
1. Low-tier, mid-tier and high-end builds
2. Porting nightmare
3. Carrier and handset style rules
4. Carrier and handset certificates
5. Deck submission, discovery and promotion
The only thing we don’t have yet is the mandatory carrier revenue share. I suspect the widget providers are planning to develop ad-supported revenue-shares very soon.