Severe Weather Warnings

We decided to take the severe weather warnings we already had in place on our Live Storm Chasing map and make them more consumable over the web and social media. Since we were already processing this data it made sense to go ahead and expose it other ways our users would find useful so we created a page that contains all active warnings (Tornado, Severe Thunderstorm, and Flash Flood).

http://tvnweather.com/warnings

The warning data comes from the National Weather Service but we enhance it by converting the expiration time into the local timezone in which the warning is happening in. We also use reverse geocoding to provide a more descriptive location than what we get in the source warning data from the NWS.

In the warning details we page we display the warning polygon on a Google Map as show below (red for Tornado, yellow for Severe Thunderstorm, and green for Flash Flood):

warningweb

Since it’s a Google Map you can zoom in and apply most of the map options you’re familiar with:

warningwebsat

We display a clearly visible red message if the warning has expired:

warningexpired

We also use responsive design so they look good on mobile devices as well:

responsive-sidebyside

We also added support for social cards so they look great when shared over social media (Twitter and Facebook). The card includes a picture version of the warning polygon on a map and if the warning is expired you will see that status in the social card without even opening the link.

facebookcard

Twitter Warnings

We also created a new Twitter account @tvnwx that posts Tornado, Severe Thunderstorm, and Flash Flood warnings automatically as they happen. We designed it as a service we can use with other accounts we operate and customize how we see fit. It includes the improved reverse geolocated place name and the expiration in the timezone local to the warning. We also attach a static image of the warning polygon on a Google Map. We’ve seen a lot of other automated warnings on Twitter but we didn’t notice any with pictures and you know what they say, a picture is worth a thousand words.

twitterwarnings

We even size the image so it’s perfect for viewing in your timeline:

timeline

We hope you find these new warnings useful in getting the word out about severe weather.

Update:

We added some new features to make our warning service even more resilient. For example we ran into one issue where the generated image of the warning was rejected by Twitter’s API. We were able to find a work around but we added a fall back to where if there is another unexpected issue with posting an image to Twitter we instead post a text-only tweet of the warning. In this text-only warning we also include a link to the warning on our web site so you can then see a full Google Map of the warning area with the colored polygon. This will help make sure the warning gets out even in the event of the unexpected.

We also found a few cases were the location API we are using fails to return a result (with no error) even though it returns one in subsequent requests. We added another fall back here to retry this call at least three times if there is no result returned and finally resort to just listing the county names if we still get nothing. Of course it is possible the county name list in the original NWS warning can put us over the character limit for a tweet, in this case we truncated it but indicate it has been truncated by ellipses (“…”). The location info is something that we are still monitoring and our techniques may change in the future, our goal is to provide a very detailed description that still fits within the limitations of a tweet, of course providing a picture of the warning polygon on a map is about as descriptive of a location as you can get.

We also decreased the interval in which our background process which downloads the warning data from NWS operates, which means new warnings will be posted even faster.

To get all three warning types on Twitter follow our new account: @tvnwx

Tagged with: ,
Posted in General
%d bloggers like this: