Coding Challenge 7.0 — Spring 2025


Use the latest HTML5 technology to build a small web application that solves the following problem.


The Challenge

Create an interactive data visualization app in the form of a web application for a dataset containing storm event statistics across the past 5 years (2019-2024) using the United States fips codes.


Official Contest Rules and Detailed Specifications

Please read the Official Rules and Specifications document at http://rde.org/CodingChallenge/2025spring/Rules.pdf.

Before submitting your entry, make sure you follow all of the requirements in the Official Rules and Specifications, or your entry will be disqualified.

Using a server-side database is optional for this project. Design the application's architecture however you like!

Click here for the Official Entry Form


How do we solve this?

Create a web application with a user interface that presents the dataset provided in an interactive, easy-to-understand way.

Data

The primary dataset for this project is the NOAAs "Storm Events Database" dataset. The project will include the past 5 years (2019-2024) of data, which must be downloaded individually. The StormEvents_details-ftp files can be downloaded as CSVs from the following location:

https://www.ncdc.noaa.gov/stormevents/ftp.jsp

If a list of fips codes and their latitude and longitude is needed for geocoding, the following dataset may be used. You may, of course, use a different source for this data if you wish.

https://github.com/josh-byster/fips_lat_long

For this project, server-side programming languages and a server-side database are optional.

Map Screen

You may use any free geocoding/mapping service you wish, e.g., Google Maps.

You may use Chart.js, Rgraph, or Flotr2 to create charts and graphs to visually represent the storm information from the primary dataset.

Presentation Screen

The main page (landing page/index page) for this web application will be a map of the United States, with each of the fips codes labeled on the map, in such a way that the user can click on a map location or a flag/pointer on the map, and from there, navigate to the storm charts screen for that fips code.

In addition to the map, there should be a function on the map screen allowing the user to type in a fips code and search for it, providing an alternate way to get to the storm charts screen without using the map.

Storm Chart Screen

This screen should display a set of charts based on the storm data for a single fips code. Do your best to design a sensible, user-friendly page to chart and graph the data available.


Requirements


  1. Permissible HTML5 / JS Chart Libraries. Submissions must use one of the following free and open-source client-side charting libraries in order to render graphs:
  2. Permissible Languages. Using a server-side programming language is optional. Submissions that use server-side processing must be coded using one of the following server-side languages:
    • PHP
    • Node.js
    • ColdFusion (CFML)
    • Python

  3. Permissible Databases. Using a server-side database is optional. Submissions that use a server-side database must use one of the following database systems to store data:
    • MySQL
    • Microsoft SQL Server (Express Edition)
    • MongoDB

  4. Submissions may not utilize browser plugins. Submissions utilizing browser plugins will be disqualified. For more information, please see the detailed specifications and rules.
  5. Submissions must be the work of a single individual. Submissions which represent the work of more than one individual, or which are submitted by a single individual on behalf of a team of two or more, will be disqualified.

  6. Submissions must be received by the deadline. May 7, 2025 at 23:59:59 EST (11:59:59 PM EST). Submissions for which the upload is not complete by May 7, 2025 at 23:59:59 EST (11:59:59 PM EST) (or in the case of submissions which are made via US postal mail, which have not been received by May 7, 2025 at 23:59:59 EST (11:59:59 PM EST)), will be disqualified.

Questions and Answers

When we receive questions about the contest, we'll answer them on the Questions and Answers page (click here).


Sign Up for a Reminder

To sign up for contest reminders, and to indicate your interest in an internship with RDE, fill out the form below. We will send you reminders until the contest deadline on May 7, 2025.

We will not take your answer on this Reminder Form into account when judging contest entries.
* Internship
* I cannot participate in
this challenge because

By submitting this form, you are requesting us to send you email Reminders about the Contest. Submitting this form does not enter you into the Contest, and it is not a requirement for contest entry. We plan to post the official Contest Rules and Detailed Specifications on this website on 04/23/2025. Before entering this contest, please read the official Contest Rules to determine whether you are eligible to enter the contest.


Completed Contests

Prizes

0th place / grand prize$500
1st place$200
2nd place$100

Prizes will be in the form of an Amazon.com gift card.
All contestants will be considered for an RDE Internship.

Schedule

April 23, 2025
Detailed Specifications Release and Contest Start

May 7, 2025
Submission Deadline

Why is RDE sponsoring this?

RDE wants to get to know programmers who naturally enjoy a good challenge and like to go above-and-beyond in all that they do. This is a good opportunity for great programmers to get to know RDE and why we're special.

Click here to learn about our special partnership with NJIT.


Flyer

Coding Challenge Flyer