Posts Tagged ‘building widgets’

How to build a widget – Promoting the widget

February 25th, 2009

[Part 5 in a 5 part series titled “How to build a widget]

The widget is ready.  It is sitting on your website with a viral deployment scheme.  But the big question is  “How do people find out about your widget”?

5) Promoting the widget

If you happen to be Amazon and your main website is generating tens of thousands of hits a day, a simple graphic/link on your main page to your widget would be enough.  But everybody’s website does not generate thousands of page requests a day.

Widget Galleries.

I mentioned before (Part 4) that there are widget galleries.  Galleries are always a good place to promote your widget. However,  unless you have a run-away-hit, you are never going get more then 100+ widget installs from a simple Gallery site.

Get Creative.

The best way to promote you new widget (If you are not already getting thousands of hits on your own site) is to get some one who is receiving thousands of hits to install/and or write about it.

This blog, Widgets lab, writes about widgets every day.  They also get a couple thousand hits every day.   Write a nice email to Derek or Avatar explaining why your widget should be profiled, and they may just write about it. 

Other places to get your widget mentioned would be Web 2.0 tech blogs such as www.Mashable.com, www.ReadWriteWeb.com,  or even a general tech blog like www.Slashdot.com.

These sites reach millions of users everyday and are good place to jump start your widget.  You may have to offer to do Pete Cashmore’s laundry for a week or buy CmdrTaco a Starbucks gift card, but just maybe they will give your widget a write up it deserves.

So if you made it this far in the series you are on your way to creating your own little piece on the web,  your very own widget.  Good luck.  See you on the other side.

Part 1 | Part 2 | Part 3 | Part 4 | Part 5

How to build a widget – Deploying the widget

January 13th, 2009

[Part 4 in a 5 part series titled “How to build a widget]

The code is written.  The widget is complete.  The idea you started with is neatly contained in the world’s greatest widget.  Now you just have to figure out how to get it to everybody.

Part 4) – Deploying the widget. 

Since widgets are “portable pieces of code”  you have to find a way to give this to all of your future fans.  Easy right?  Since the widget is just normally an HTML or Javascript snippet you can just trust that would be widget users know how to grab the code and embed it on their site.  Not Exactly.

The first step in deploying your widget is creating a web site.  The web site should at the very least allow potential widget owners to know what the widget does and allow then to copy the embed code.  An example of a very simple widget site is the very first widget I developed,  www.JunkIWant.com.   JunkIWant is a Amazon wishlist widget.   No Logins.  Nothing fancy.  Just a website that gives clear instructions on how to grab the widget code.

However, you can’t be certain that just because you supply the HTML/Javascript that a blog owner will know how to grab the code and embed it into their site.   This is where widget galleries and widget dashboards help out.

Widget galleries are sites like www.widgetbox.com and www.widgipedia.com.  These sites allow you to upload your widget and gives widget users an easy interface to grab the widget code.  There is a slight learning curve on uploading your widget, but each site has FAQs and forums to help you along.  The galleries also allow you to track widget installs and some domain specific stats.  They also showcase your widget in various galleries throughout the web.  For instance, www.widgetbox.com partners with many of the larger social sites like Picazo and Bebo. 

The only drawback with  gallery sites is that they take widget users away from your web page.

Widget dashboards are sites that like www.clearspring.com and www.gigya.com.  These sites differ from the gallery sites since they give you a widget dashboard to put on your own site.  The dashboard simplifies the embedding process with a very easy to use interface to grab the widget.  They also provide widget tracking and domain specific stats.  The proccess is pretty simple to add the dashboard to your site (the dashboards are widgets in their own right).  I actually use the www.gigya.com dashboard (Wildfire) on one of my widget sites,  www.MyVGift.com.

clearspring dashboard

clearspring dashboard

Widget galleries and widget dashboard sites greatly enhance the ability to deploy and distribute widgets.  And the best part all of the distribution tools mentioned are free to use.

So knock yourself out.  You spent alot of time on your widget.  You should use every tool available to make it as easy for your potential users to get a hold of your widget.

Next – Part 5 - Promoting the widget.

Part 1 | Part 2 | Part 3 | Part 4 | Part 5

How to build a widget – Creating the widget

December 26th, 2008

[Part 3 in a 5 part series titled “How to build a widget]

You thought of an idea.  You chose the tech.  Now it is time to get busy.

Part 3) – Creating the widget. 

Widgets are self contained mini-websites and have to be treated the same way you would go about creating a website. 

[Quick definitions:  The “widget user” refers to the person grabbing the widget, while the “page visitor” refers to the person viewing the widget on the widget user’s page/blog] 

First, determine if the widget will be static or dynamic.

Static widgets are widgets that are exactly the same for every widget user that grabs the widget code.  An election countdown widget would be an example of a static widget.  The widget developer (you) only has to create the desired effect and code it without relying on any dynamic data. 

Dynamic widgets are widgets that change for each widget user embedding the code.   MyVGift.com is an example of a dynamic widget.  The widget user is each assigned a unique ID that is rendered to the object tag at the time of the web page is served.  The widget then uses the ID to pull data from a web service to determine the widget user’s Virtual Gift list.

Static widgets are normally less complicated and can be deployed without much complication.  Dynamic widgets require external sources supporting and possibly storing data for the widget.

Whichever widget type you choose is entirely up to you.  There have been extremely succesfull widgets that are static:  Maukie the virtual cat and dynamic:  RateItAll

Maukie the virtual cat

Maukie the virtual cat

Second,  allow customization.

Someones blog or Myspace page is an expression of themselves.  Why would they want to install your ugly neon pink widget on their green background Myspace page?  Give widget users the ability to customize the size/shape/skin/wording of your widget.  Page visitors do not want to have your widget stand out (in a bad way) on the widget users page.  Give the widget users the option to allow the widget to blend into the look and feel of their site.

Finally,  make your widget friendly to the widget’s users page/blog.  This means make it small and available. 

Nobody wants to install a widget on their blog that is 2.3 megs.  This will kill the experience for the page visitor.  Generally try to make your widget size under 100K.  Also make sure you host your widget on a respectable server.  Your widget is going to be served up every time the widget user’s page is served.  This is orders of magnitude more times then if you were just hosting a web site on your server.  If a widget user installs your widget and gets 3k hits a day on their site, then the widget has to be able to be served up 3k times without any slowdown (plus support all of the other widget users).     

Next – Part 4 - Deploying the widget.

Part 1 | Part 2 | Part 3 | Part 4 | Part 5

How to build a widget – Choose the technology

December 6th, 2008

[Part 2 in a 5 part series titled “How to build a widget]

Widgets in reality are actually like little mini-web sites contained on a users blog/social page.  The “embedded chunk” of code is hosted by the widget owner (you) but instead of just displayed on one location (your website), the widget is displayed virally on an infinite number if websites.

This “embedded chunk” requires some specialized tech to pull this off.

2)  Choose the technology

There are basically two categories of technologies used to create widgets:  HTML/JavaScript and third-party plug-ins.

HTML/JavaScript

A widget developer could craft the entire widget using HTML/JavaScript.  With the combination of AJAX and DHTML a developer can create at least 4 of the 5 categories of widgets (I am going to leave out the “Games” category since advanced animation is tough to deliver in a JavaScript environment. Agree/disagree?)  

HTML/JavaScript only relies on the browser to render the widget, making it the purest way to craft a web widget. 

Pros:
- JavaScript can encapsulate the “embedded chunk” of code to a small snippet.
- HTML/JavaScript is a coding common paradigm known by many web developers.

Cons:
- Many social sites forbid JavaScript since it could promote cross-scripting attacks.
- Animations and other rich content are very hard or impossible to reproduce using JavaScript.
- The HTML/JavaScript code could be seen by site visitors.

Third Party plug-ins

The other common source of widget development takes place as third party plug-ins.  The most popular third party widget platform is Adobe’s Flash. Flash allows the developer to create rich environments and user interfaces using their designer and ActionScript programming language.  Flash debuted as a third party technology in 1996 and has over 90% browser saturation.

Adobe Flash

Adobe Flash

 
Another third party widget platform gaining ground is Microsoft’s Silverlight.  Silverlight allows you to create rich environments and user interfaces using MS .NET platform.  Silverlight broke onto the scene in Dec 2006.

Flash still has more popularity as a widget platform due to its tenured status, but given the sheer volume of .NET programmers it may not be long before we see Silverlight as popular in widget development as Flash.

Pros:
- Flash is accepted by almost all blogs/social pages.
- Rich content and animation is very possible in Flash/Silverlight.
- Flash/Silverlight is much more locked down in terms of code visibility.
- Widget distribution sites generally favor Flash over JavaScript/HTML

Cons:
- Flash requires you to purchase Adobe’s Flash product to develop widgets.
– Learning .NET/ActionScript.
- Flash/Silverlight widgets are generally larger then HTML/JavaScript widgets in terms of download size.

When I was developing MyVGift.com Virtual gift widget I chose to use Flash for two reasons:  One, I wanted it to be able to be deployed on as many blog/social pages as possible (This ruled out HTML/Javascript).  Two, Flash is much more available (at present) then Silverlight.

I would like to possibly write my next widget using Silverlight since I have been working with programming Microsoft software for the last 14 years.  I strongly believe that Silverlight will play a major part in having widgets grow across the web in the coming years.

So if you are just writing a widget that is targeting Blog sites, HTML/JavaScript may be a good choice.  If your widget relies heavily on animation and you want it to have a wider reach, then Flash/Silverlight may be the option.

Next – Part 3 – Creating the widget.

Part 1 | Part 2 | Part 3 | Part 4 | Part 5

Website maintained by Happy Shoe Media LLC