Worldolio Architecture

This document describes how Worldolio is put together, you do not need to know any of this to get the benefit of using Worldolio but we thought you might be interested.

Team

Worldolio has been developed by Andrew Trevarrow and Derek Wilson. We are both experienced and skilled software developers with a background in Windows, comms, mobile software and web site construction.

We developed Worldolio using our own tools, computers and time.

Objectives

We had a number of things we wanted to get out of developing Worldolio

  • Experience using .NET for desktop, mobile and web development
  • Managing and coordinating a development team with very constrained resources (we are doing this outside of full time employment)
  • Experience of developing software for a mobile audience
  • Compare and contrast the different approaches available to construct software
  • Create a professional product
  • Extend our marketability

Architecture

The architecture of Worldolio has been designed to separate the code into data, business logic and presentation layers. This has special relevance for Worldolio as we need to implement each layer using a variety of tools and technologies.

Diagram of Worldolio components

Microsoft .NET Platform

The initial platforms that Worldolio is designed for means that we have been able to make use of Microsoft.NET. This has enabled us to build the different versions of Worldolio and share much of the code between different versions. This helps speed up development and testing of diverse platforms.

As can be seen the core data engine, which contains all the geographical data as well as the geographical calculators are common across all platforms. Thus the complexities of local time and sunrise and sunset need only be tested once.

Windows CE for PocketPC and Smartphone

Although using the .NET Compact Framework gives portability to some CE devices there are some drawbacks

  • Not available on CE based Smartphones
  • A lot slower than native code
  • Requires the PocketPC 2000 and 2002 users to download and install the Compact Framework

In the light of this we have produced a native CE version written in C++.

Java MIDP Platform

It is unclear if Microsoft will dominate the mobile computing market in the same manner as the desktop computing market. However it seems unlikely that Java will disappear anytime soon. It would be interesting to develop a version of Worldolio for Java phones to gather metrics and experience of that platform.

Worldolio Development Milestones

  • Jan 2003: First ideas for Worldolio, Registered worldolio.com
  • Feb 2003: Started work on Worldolio
  • Apr 2003: Prototype Data Assembly completed with first 500 cities
  • Jul 2003: Prototype WebSite deployed to worldolio.com
  • Aug 2003: Prototype Worldolio Compact produced
  • Oct 2003: First release of Worldolio.NET for PocketPC (.NET Compact Framework)
  • Nov 2003: First release of Worldolio Web
  • Nov 2003: First release of Worldolio.NET for Windows (v1.0.0.0)
  • Jan 2004: Bug fix release of Worldolio.NET for Windows (v1.1.0.0) and Worldolio.NET for PocketPC (v1.2.0.0)
  • Feb 2004: Prototype of Worldolio Mobile web site
  • Mar 2004: Added day night shadow to WorldolioWeb, Worldolio.NET for Windows (v1.2.0.0) and Worldolio.NET for PocketPC (v1.3.0.0)
  • May 2004: Prototype of Worldolio.NET for Smartphone (v0.9.0.1)
  • Aug 2004: First release candidate Worldolio for PocketPC completed
  • Oct 2004: Major performance gains in Worldolio.NET for PocketPC (v1.4.0.0)
  • Jan 2005: Major UI upgrade for Worldolio.NET for Windows (v1.3.0.0)
  • Feb 2005: Shareware Windows Mobile PPC version released (v1.2.1.4) and first sales, we can retire now :-)
  • May 2005: Added current weather observations to web site
  • Oct 2005: Added weather forecasting to web site
  • Oct 2005: Web site UI given a major overhaul to make maintenance and accessibility easier
  • Oct 2005: Smartphone version released (1.2)
  • Apr 2006: Mobile Web site is now complete and has weather forecasting
  • Aug 2006: Old .NET Compact Framework versions for PPC and Smartphone are withdrawn
  • Mar 2007: Released changes needed for US Energy Policy Act 2005 (Windows v1.4.5.0, Windows Mobile v1.5.0)
  • May 2007: Alpha version of Worldolio v2 running on developers devices
  • Jun 2007: Reorganised web site as a result of visiting shareware dev conference
  • Jul 2007: Beta version of Worldolio v2 released
  • Dec 2007: Released changes needed for Venezuela timezone changes (Windows v1.4.6.0)
  • Jan 2008: Worldolio v2 for Windows Mobile Released v2.0.0.53
  • Aug 2008: Ported Big Windows / WebSite from .NET v1, VS2003 to .NET v2 VS2008
  • Jun 2012: Ported Big Windows / WebSite from VS2008 to VS2012 moved hosting to derekwilson.net
  • Sep 2021: Added Chocolatey package for Big Windows WinForms app v2.0.0.0
  • Oct 2023: Updated Big Windows WinForms app for new timezone changes

Known Problems

This section lists problems that have been found in Worldolio that haven't been resolved yet. We will provide fixes for these problems as fast as we can.

Worldolio Web

  • When the time is updated on the View Cities page using script in the browser the day/night images are not kept up to date
  • The site sometimes jumps half way down the screen in Netscape 7, however it is displayed correctly in Netscape 6

Worldolio MobileWeb

  • There is no way of changing the display preferences on the mobile site.

Worldolio.NET for Windows

  • The local time slider on the Time Planner tab does not have enough hours on it on a day when the hour goes back for the home city.

Worldolio for PocketPC

  • None at this time

Worldolio for Smartphone

  • None at this time