Back to all storyboards

WxCoder III Progress Storyboard

November 30th, 2006

Most recently, I have been working on behind-the-scenes type stuff, such as server redundancy and SHEF encoding.

Click images to view full-size. If the text is still unclear, click the image again to disable your web browser from scaling large images.


This diagram displays a method for failover, redundant servers for WxCoder III. The system maintains a MASTER server with multiple BACKUP servers which can become the MASTER server in a moments notice. A sync process ensures all servers have the same data (using Spread). Round-robin DNS is used to ensure the login page is always available.

wxcoder screenshot


Corrections to an observation must be submitted with the same date header. The observer is not allowed to change the date or time when submitting a correction to an observation. Also, an initial method for indicating a precipitation accumulation is shown.

wxcoder screenshot


For debugging purposes, I am displaying the SHEF encoding of the observation on the 'View Observation' page. Note, on the right-hand side, if an observation is corrected by another observation, there will be a link to view that correction. A link is also displayed if the observation is a correction to another, previous observation (i.e. it goes both ways).

wxcoder screenshot


Imported users from WxCoderII. The new users have a random password, which means they can request the password be emailed to their email on record, or the supervising WFO will need to reset their password through the WFO Admin interface (which still needs to be developed).


When an observer changes their personal information (name, address, email, etc.) a notification is sent to the supervising WFO detailing the changes made.


A WFO can configure 'informational limits', which, for a given element, if outside of the set threshold, a notification email will be sent. This will be useful for being informed about such things as records breaking or questionable (but not impossible) values being entered. An observer must confirm the value (by checking the box) before the system will accept it.

wxcoder screenshot