Thursday, April 2, 2009

Tiny Weather forecast Widget




Some of the original Weather Widget users, asked us about the availability of a version of this widget that would have smaller minimum width and height values without offering less information.

This is where JavaScript comes in.
In our opinion, the weather icon, the temperature and the precipitation info are the most important ones, so we have decided to hide the others in a hidden block that nicely appears when clicking the weather icon which happens to be a sun these days ;-)

If you would have preferred other info on top, you can always post a comment on this blog entry.
If you want to embed this 'Tiny Weather Widget' in your website or blog, you can fetch the JavaScript code from Google by clicking these links of the dutch version and/or the french version.

Thursday, March 19, 2009

Books Top 10 Widget



Aha, yet another widget.

The Books Top 10 Widget shows the books that were selling best in the Belgian bookshops during the previous week (click the info button to know the week these figures are about).

For this widget, we kept things really simple, we did not work with the Spring framework nor the Spring MVC framework anymore.
At first, a Java process that uses the Quartz open source job scheduling system regulary spiders the boek.be website to check the availability of a new Excell file that contains the latest book selling data. If there is one, another Java class reads, parses and interprets this .xls file using the Apache POI libs. The result of this process is a set of xml files that contain a more structured view on this book selling data.
The display of the Top 10 data is created by web-application that uses the new 'Play' framework that generates the widget's main page as well as the REST data service for every category of books (fiction, non-fiction, kids, ...). Play really is the discovery of the year as it bundles all advantages of Rails and Java together in what they call an easier way to build Web applications with Java. It’s a clean alternative to bloated Enterprise Java stacks. Check it out!

Friday, February 27, 2009

IPhone Weather Widget updated



The latest version of the Belgian Weather Forecast Widget for iPhone users still is a standards based web application with lots of JavaScripts and css tweaks but it's getting hard to tell the difference between this application and a proprietary iPhone application.

iPhone users just have to open Mobile Safari and browse to this url.

(This widget exists also for PC or Mac)

Thursday, February 19, 2009

Respect!

Great news coming from ...

We got the permission to freely use the data that gets published on this website and to convert it for usage inside the meteo widget.
RESPECT!

Meteo widget updated

As predicted just a few days ago, it didn't take that long before the meteo widget stumbled once again over the structure of the new version of the BDB website.
The problems stem from the fact that the weather forecast is displayed in an "html table" that is apparently getting manually updated so suddenly new rows appear while others disappear. This means we have to seek for some form of structure, especially for the possible derogations to the structure, so that an automated process can be successful in converting this unstructured data into a fixed xml format.
This is a process of trial and error. The result of this self-learning process is that after each failure, the application will become a little smarter and therefore more stable.

Monday, February 16, 2009

New version of the BDB website!

A new version of the BDB website was put online last weekend.
Of course, all of a sudden all my meteo widgets did not function anymore as they are dependent of the data published on BDB website. Therefore, I worked as a mad man this morning to get the widgets up and running again. Now, everything seems fine again but it is very possible that we will get some extra outages during the week as the BDB continuously seems to make some extra modifications. The widget's data parser is based on the data as it is published now on the BDB website but as soon as rare or extreme weather conditions force the BDB to display their data differently, I will have to catch these exceptions and try to handle them nicely, preferably by displaying this extra info in the widget.

Wednesday, February 4, 2009

Belgian Weather Forecast for iPhones



An "iPhone-like" webpage was generated out of the 'Belgian Weather Forecast' widget that is now available as a kind of online application for iPhone users.
The conversion went surprisingly well mainly due to the fact that the widget is merely a simple webpage that is built up by some JavaScript function executions and the injection of remote data that is being fetched from a server with some Asynchronous HTTP requests.
And since the mobile version of the Safari webbrowser fully supports this technology the main source part of widget could simply be reused.

De widget's style was slightly adapted, mainly with better(bigger) fonts which should improve the readability on iPhones.

Extra info and scripts, were found on the website of Joe Hewitt's fantastic IUI project. This lib also contains some scripts that could make the widget even more iPhone-like by make the transitions from a previus to a next forecast by the use of horizontal sliding.

iPhone users go here for testing

Tuesday, January 27, 2009

Intraday stock value graphing

Widget properties
Instructions for use
In order to see the evolution of a stock value, you have to click the current stock's name at the top of the widget. Now, select a new stock or index from the list popping up in the modal panel.
Remark: This widget uses a very new technology through which Flash graphs are being generated 'on the fly' by executing clienside JavaScript functions. Lots of work remains to be done in this technology as we can see that the Flash objects often dissappear from the widget mostly when scrolling or resizing the browser window. (Quality depends greatly on the browser) We will soon replace this technology with a pure JavaScript technology that also offers nice graphing libs which will make this widget a lot more stable.
You can add this widget to your personalised iGoogle page or you can embed it in a webpage or blog message (Belfox, Indices).
This widget's homepage in the Google gadget directory can be found here (Belfox, Indices)
Personalisation
Ask us to replace our logo at the bottom of the widget with your logo and link message. You can put this personalised widget on your website or blog and you can even initiate the viral spread of it in order to have your company logo and message displayed on multiple sites.
Technical info
A server application fetches a highly complex XML object from Yahoo Finance upon each and every request. This XML object is converted into a more simple and lightweight JSON object that gets sent back to the widget's front-end.
Here, in the widget's JavaScript libs, a function takes care of the construction of a robust HTML body containing a.o. the hidden panel showing a select list of other stock- or index names while another function executes an asynchronous HTTP call (AJAX) to the widgetserver from which it receives the JSON object in the response. Finally another JavaScript pushes the JSON data in the HTML code, builds a Flash chart and refreshes this chart every 60 seconds.
Server Technology
Widget Technology
Sources of the Data
The Widgetbox

This widget is also available on 'widgetbox' (Belfox, Indices) from where you can easily get the code for publication on Blogger, TypePad, WordPress, Netvibes, Pageflakes, etc

Wednesday, January 21, 2009

Belgian Weather Forecast

Widget properties
Instructions for use
To browse to the forecast of the next or the previous day, click the previous or the nextbuttons.
You can add this widget to your personalised iGoogle page or you can embed it in a webpage or blog message.
This widget's homepage in the Google gadget directory can be foundhere.
Personalisation
Ask us to replace our logo at the bottom of the widget with your logo and link message. You can put this personalised widget on your website or blog and you can even initiate the viral spread of it in order to have your company logo and message displayed on multiple sites.
Technical info
A server application initiates a webcrawler that goes online and makes a daily copy of the weather forecast data as it is being published by the BDB, both in Dutch and in French. Also, another automatic server process takes care of the transformation of the html page originally composed as a complex html table gets into a universally usable dataformat, XML.
On the widget's frontside, on the 'onDomComplete' event of the widget, a JavaScript process builds the HTML structure of the widget and fetches the data from the server by executing asynchronous HTTP calls (AJAX). Finally, this XML object is getting looped through and the data is injected into the HTML code. The 'next' and 'previous' buttons execute yet another JavaScript function on their 'onClick' event and hide the currently displayed forecast and make the widget display the forecast for the next or the previous day.
Server Technology
Widget Technology
Sources of the Data

De Bodemkundige Dienst van België vzw
The Widgetbox

This widget is also available on 'widgetbox' from where you can easily get the code for publication on Blogger, TypePad, WordPress, Netvibes, Pageflakes, etc