Charlottesville Civic Innovation Day 2018

June 10, 2018 - 2 minutes
A recap of the Regional Transit Challenge projects from the initial hack event.
Civic Tech

Intro

Last weekend saw the second annual Civic Innovation Day hosted for Charlottesville, Virginia, an all-day data event that pulls students and professionals together to answer a range of real community challenges. And as the project fellow for the Regional Transit Challenge, I’m helping organize the effort to “create a platform for current and potential transit passengers to know what service options are available, and how to best access the services”.

This post is a summary of the solutions presented during the event. There is a GitHub repo too with data and links to original presentations.

Updating the bus system

Authors: Kurian, Caitlin, Yaxin, and Emily

A low-tech signage design concept that improves rider experience with better information graphics at physical bus stops.

Deck:

Original Presentation on Google Drive

Design:

Prototypes on Figma

Fragmented but Fixable

Authors: Caroline Chong, Rickey Guo, Sung Joon Park, Edward Radion, and Yaman Shrestha

A more unified mobile transit app experience, through focused development on top of the current CAT platform.

Deck:

Vizualizing JAUNT service areas and CAT bus stops together

Authors: Samantha Toet, Justin Masters, and Nathan Day.

Integrating transit options into an interactive and mobile friendly Leaflet map. See the GitHub repo for more code.

## R code for data cleaning ------------------------------------------------
library(sf)
library(tidyverse)
path <- "~/future/cid/" # overhead to reproduce/knit

# CAT stop coordinates
cat_sf <- read.table(file=paste0(path, "data/CAT_2017_08_GTFS/stops.txt"), 
                     sep=",", header = T) %>%
    select(stop_lon, stop_lat) %>%
    st_as_sf(coords = c("stop_lon", "stop_lat"))

# JAUNT polygons arranged largest >>> smallest
jaunt_sf <- st_read(paste0(path, "data/doc.kml")) %>%
    select(-Description) %>%
    mutate(aread = st_area(.) %>% unclass) %>%
    arrange(desc(aread))
## R's easy leaflet connect --------------------------------------------------
library(mapview)

widgetframe::frameWidget( # only needed for web
    (mapview(jaunt_sf, zcol = "aread") +
        mapview(cat_sf, col.region = "green"))@map
    ) 

Outro

A big thank you to everyone who participated and contributed their skills to solving real local problems for Charlottesville. There are follow up meetings scheduled with the transit authority sponsors to map out the app/sign path forward.

Stay tuned.