First, you need to clearly distinguish between web widgets and desktop widgets. The first are content modules that are embedded on a web page. This type of widget is entirely based on web technologies that work through a browser: HTML, Flash, etc. Such modules existed on the Internet for a long time, and they were called widgets relatively recently. Initially, the word "widget" meant just a mini-application for the desktop.
The advantages of desktop widgets are that they operate independently of the browser, have access to personal computer resources, can potentially be used offline, fit better into the context of the operating system and all surrounding programs. Desktop widgets blur the line between the web and the desktop, extracting information from the web and displaying it on the desktop.
Newsweek magazine predicted
2007 will be the year of the widgets . This word will firmly enter our lexicon, and widgets will become very popular. To date, there are four main platforms for widgets. Developer Ed Voas from Yahoo published an
overview of these platforms, highlighting the strengths and weaknesses of each.
Apple dashboardMicrosoft Windows Vista SidebarGoogle Desktop GadgetsYahoo! Widgets (Konfabulator)')
Apple and Microsoft platforms use browser cores for each widget (each for its own), while Google Desktop and Yahoo! Widgets are based on proprietary XML formats and rendering engines. Each approach has its pros and cons.
Apple Dashboard / Microsoft Windows Vista SidebarThe browser core framework makes it easy to create widgets. Existing web applications are relatively simply modified to work on the desktop. DHTML is simple and convenient. In addition, you can use special Javascript objects and Ajax libraries in widgets. For developers, handy tools have been released, including the new
DashCode IDE system.
The disadvantages of this approach are that each widget is a full-fledged web page, which requires significant system resources. Another problem is closely related to the operating system. Apple Widgets only work on Apple, and Microsoft gadgets only on Vista.
Google Desktop GadgetsGoogle currently uses proprietary XML formats and objects that are incompatible with W3C standards. It's pretty easy to understand them, if you know HTML, and they have no specific HTML restrictions, they allow the use of Javascript and Visual Basic and are not particularly demanding on system resources. Other benefits: support for dragging the mouse and other functions of the operating system, the availability of the Gadget Designer toolkit for developing widgets.
There are also many disadvantages: for example, relatively limited functionality compared to other widget engines, especially in terms of visualization and interface. To work, you need to download and install the whole Google Desktop software package. At the moment, Google is positioning its development rather as a consumer product, and not as a platform for developers. Another disadvantage is the lack of support for Mac OS X.
Yahoo! Widgets (Konfabulator)It also uses the XML format and the proprietary rendering engine. Previously, the model was not compatible with the W3C standard, but now it is gradually being corrected, so that in the future it will be possible to encode widgets in DHTML. Benefits of the Yahoo widget engine in cross-platform (it also works on Mac OS X, on Windows Vista), maximum ease of coding widgets, accessibility API, great functionality of widgets, tight integration with the operating system (Open, Save dialogs,
multi-window widgets etc.).
Disadvantages: own programming language that differs from DHTML, the need to download components (we don’t have our own operating system - Ed Voas complains), gluttony to system resources, lack of video support. Some of the flaws will be fixed in the next release.