Archive for the ‘Doshtracker’ Category
DoshTracker Update #4 – Bye bye Ext JS!
Posted by richard in Doshtracker on August 18th, 2009
I admit that finding the time to work on DoshTracker has been really difficult lately, but after months of banging my head against a wall, I’ve decided reluctantly to drop the Ext JS framework I was trying to use.
Yes, it’s pretty and yes, it makes some features almost trivial to implement but I’m struggling to find a satisfactory method for implementing any form of user authentication; a critical feature to allow you guys to log in and view your entered notes. The framework is nice, one of the most visually impressive Ajax frameworks I’ve come across but this has been my stumbling block and so I just can’t justify ploughing any more of my already scarce time into it.
So, the way forward… Well from here on in it’s going to be a clean CSS layout more akin to the DT of old but with the google map integration I’ve already developed. Managed to steal away a few hours this weekend to work on a template layout and so work on the back-end plumbing is now underway. Watch this space…
DoshTracker Update #3 – First beta site live! Design change discussion.
Posted by richard in Doshtracker on March 13th, 2009
It’s severely limited in functionality, but I’ve replaced the temporary holding page with our first beta. At the moment it’s little more than a layout prototype, but forms the foundation for everything else.
While I was messing about with the google maps integration, I discovered that the original ‘window’ based design (as used on the holding page, see below) was too confusing when displaying multiple windows and relied on the browser being maximised on a reasonable sized screen to be usable.
Because of this I’ve moved to a new design which you can now find in its place. The page is split into three panels;
Top Panel: Horizontally along the top. Contains the site logo, and a potential space for site messages and future advertising, this content is fixed to the user regardless of the state of the other dynamic panes.
User Navigation Panel: Vertically on the left hand side. Contains a dynamically generated tree based on the currently logged in user’s data, so will contain entered notes, note hits and profile information. Clicking on the tree nodes will create new tabs in the ‘Main Window’.
Main Window: The remainder of the page contains a tabbed view. Some tabs are fixed and contain general information (Welcome text, instructions, etc..) and some will be dynamically generated by user actions and can be closed. Some typical tabs envisaged are:
- Welcome screen (fixed) – Welcoming the user to the site, site news.
- Instructions (fixed) – How to use the site.
- Statistics (fixed) – General stats on the site, total number of notes, total value, top ten users, notes, tracks, etc.
- Register / Login (fixed) – To allow a user to register a new profile or login to an existing one.
- Contact Form (fixed) – To allow a user to send comments and feedback to the site admin.
- Note Entry (dynamic) – To allow a user to enter a new note into the system, will then display confirmation and previous hits for that note if found.
- Note View (dynamic) – Displays details (location map, distance traveled, condition comments, etc.) for a selected note.
- Profile Editor (dynamic) – To allow a user to view and amend their stored user profile information.
The tab panel supports scrolling as it is likely that the number of tabs may exceed the width of the screen.
The colour scheme is also under review, the blue ‘DoshTracker’ colour is ok, but the grey components are in the default extjs theme and so I plan to write up a new stylesheet to make it look more co-ordinated before the site goes fully live.
There are lots of additions to the site which are being developed in parallel so please return regularly, check out the development log on the site and this blog for more updates.
DoshTracker Update #2 – Ext JS and Google Maps API Integration
Posted by richard in Doshtracker, Javascript on March 6th, 2009
Shea Frederick on the extjs blog has produced a component which extends Panel and integrates with the Google Maps API here allowing you to display google maps anywhere you can use a Panel, that includes windows, viewports and layouts. This is great for the DoshTracker development as I can use this code to form the basis of the mapping displays, saving me a lot of code hacking and fiddling.
The issues I am having at the moment revolve around Google’s geocoding of UK postcode data. For those who don’t know, geocoding is the process of turning an address into longitude and latitude location information which can then be displayed on a map. It can be a bit hit or miss, especially in the UK where the physical area covered by a single postcode can vary widely but prior to Google providing this feature in its API, the only way of achieving this was to buy a horrendously expensive license from the Royal Mail (who own our postcodes, apparently?!?!?) making this an unfeasible option for DoshTracker.
It appears that the results you get back through the API functions are sometimes different to those you’d get typing in the same postcode into maps.google.com, a fact that they confirm in their original press release when they state that “(the) geocoder is not using the same resources as maps.google.com and may not return the same results”, but hats off to them anyway for providing the feature in the first place. For privacy reasons, I don’t intend on displaying either the full postcode or a map at a sufficient zoom level to work out the precise location of notes entered into the system, so it may be that the accuracy provided by Google will suffice, but I’m designing the system to allow me to use other geocoding services in future.
In order to do this, I’ve separated the geocoding from the actual map display. A lot of code I’ve seen so far calls the geocoding functions when drawing the map in order to set the map center dynamically. This is unnecessary for me as DoshTracker will be using maps to display previously entered locations and so I plan to only geocode the hit’s location when the new note or hit is added to the system and then to store that information in the database. This not only reduces the number of calls to the Google Maps API (reducing the chances of me exceeding their acceptable policies) but also means that I can substitute the geocoding component in the future with only minimal code changes.
I’m just ironing our a few bugs in the display but I’ll be adding a new tab to the DoshTracker homepage over the weekend to allow you guys to test the geocoder. I’ll be logging the geocoded results to a database for use in the eventual system so please feel free to geocode all of your common locations and let me know what you think. I’m particularly interested in feedback on the map zoom level and the accuracy of the results you get.
Update (13/03/2009): The most up to date version of this component is now being hosted here at Google Code.
DoshTracker Update #1 – Let’s Get Cracking!
Posted by richard in Doshtracker on February 14th, 2009
I know glaciers have been observed moving faster than the current re-development of DoshTracker but this is the first blog post of many in this new DoshTracker category.
If you’ve arrived here straight from www.doshtracker.co.uk then welcome to my blog, please feel free to have a look around and find out more about me, who I am and what I do. If you are already a reader of dutton.me.uk then I’ll be using postings in this category to provide progress updates on the re-development of DoshTracker, a UK currency tracking site I developed back in 2001 which ran for five years (check out its Wikipedia entry for more info here).
I plan to utilise both the Google Maps API and Ext JS framework in the re-design so I will be posting lots of my findings on getting these two playing nicely. I’m still 100% committed to getting DoshTracker back up and running and from all of the positive feedback I’ve had from the old user-base you guys want it too, so watch this space.



















