Coding Challenge 6.0 — Spring 2020


Winners!

The Spring 2020 RDE Coding Challenge 6.0 is over. Thanks to everyone who submitted an entry.

Congratulations to our winners!

  • [0th place / Grand Prize] Sunday David
  • [1st place] Karankumar Patoliya
  • [2nd place] Shreyas Patil
The Submission deadline has been extended to April 5, 2020

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 demographic statistics of New York City's zip codes.


Official Contest Rules and Detailed Specifications

Please read the Official Rules and Specifications document at http://rde.org/CodingChallenge/2020spring/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!


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 New York City's "Demographic Statistic by Zip Code" dataset, which can be downloaded in various forms from the following location:

https://catalog.data.gov/dataset/demographic-statistics-by-zip-code-acfc9

If a list of zip 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://public.opendatasoft.com/explore/dataset/us-zip-code-latitude-and-longitude/information/

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 demographic information from the primary dataset.

Presentation Screen

The main page (landing page/index page) for this web application will be a map of New York City, with each of the zip 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 demographic charts screen for that zip code.

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

Demographic Chart Screen

This screen should display a set of charts based on the demographic data for a single zip 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. April 5, 2020 (Extended from the original submission deadline of March 15, 2020) at 23:59:59 EST (11:59:59 PM EST). Submissions for which the upload is not complete by April 5, 2020 (Extended from the original submission deadline of March 15, 2020) 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 April 5, 2020 (Extended from the original submission deadline of March 15, 2020) 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).


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

Details of the challenge will be provided at the info session at NJIT, although you do not need to attend the info session to enter.

Date: Wednesday Feb. 12, 2020
Time: 4pm - 5:30pm
Location: NJIT campus, GITC 3700.

February 13, 2020
Detailed Specifications Release and Contest Start

April 5, 2020 (Extended from the original submission deadline of March 15, 2020)
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