Rethinking Education at DevFest

How we completely transformed Columbia’s biggest tech event

Raymond Xu
Stories from ADI
Published in
5 min readFeb 22, 2016


Every January, ADI does a pretty crazy thing. Our entire board gives up homework, social lives, and beauty sleep to organize DevFest, a week-long event focused on providing Columbia students with opportunities to learn how to program and develop applications. We make DevFest happen each year because we know that learning something new can be transformational.

Throughout the week, we invest a lot of effort into teaching students of all experience levels new skills that they can utilize to build interesting technical projects. DevFest revolves around creating the best possible environment for learning and exploration, and our curriculum is an integral part of that. That’s why this year we proudly premiered the DevFest Track System, a multi-disciplinary curriculum set that features 6 self-paced, open-source, and permanently available online tracks.

The 6 different tracks offered at DevFest 2016. More at

What are Tracks?

DevFest Tracks are online tutorials of various topics that teach readers how to build a fully-functional project from start to finish. Each track is comprised of 5 “levels” of curriculum. Each level first introduces the reader to a selection of technical concepts and then teaches them how to apply these ideas towards the track project. Levels are our way of breaking down high-volume curriculum into discrete, consumable bites that are naturally motivated by the track project. When a reader has finished all 5 levels of a track, they will have learned all the fundamental skills necessary to start exploring more advanced concepts on their own.

For example, our Web Development Track teaches students how to build a reading list app that allows users to maintain a list of their favorite books. Students begin by exploring simple web pages in HTML and Flask and then learn to style them with CSS. They then add search functionality using the Google Books API and utilize MongoDB to store a list of favorite books. Lastly, they learn how to implement account creation and login so each user can keep track of their own personal favorites list.

This level-by-level curriculum structure creates a feeling of progression, with the difficulty of each section escalating naturally. Each level offers not just a sense that you’ve learned something, but also that you’ve built something.

The Web Development Track Project: a fully-functional Flask reading list app

Track Design

We started from scratch with our track system, and worked to design a structure that would benefit the most people. Here’s where we landed:

Self-paced. Our old lecture model forced everyone to follow along at the speed of the lecturer, whether they understood the concepts or not. Inevitably, experienced and inexperienced developers would have drastically different opinions about the pace of the instruction, and that discrepancy matters to us. After much thought, we decided to launch our new online workshop model, in which students work through interactive online tracks alongside peers and TAs. If at any point a student was confused or needed help, they could simply reread the content, discuss their ideas with their peers, or consult a TA.

Open-source. No curriculum is perfect, and it should be as easy to suggest improvements or report bugs as opening a new issue on GitHub. All tracks feature a link to the GitHub repo that they were developed in, so anyone can provide suggestions.

Permanent. Although we developed the tracks specifically for DevFest, they are valuable resources that everyone should have access to, whether they came to our event or not. We launched the tracks at the start of the event and will be keeping them up for as long as we’re around.

Educational Diversity

What we teach shapes what people know and ultimately how people think about tech — that’s a tremendous responsibility that we take seriously. Beginners venturing into technology shouldn’t be forced into one specific domain due to lack of exposure to others; rather they should be able to sample multiple fields and then decide which is most appealing to them. By redesigning our curriculum to be multidisciplinary, we hoped to offer fresh and interesting content for even the most experienced of developers.

Writing, publishing, and supporting 6 separate curriculums was completely unprecedented. In the past years, DevFest focused solely on teaching web development to everyone. This year, through partnership with various clubs on campus such as CDSS, CORE, and CU Game Dev, we proudly offered tracks in Beginner Development, Data Science, Game Development, iOS Development, Product Development, and Web Development.

The landing page of, complete with a sleek spinning globe.

A Collaborative Workspace

Every night for 4 nights in a row, we transformed Columbia’s entire engineering lounge, Carleton Commons, into a collaborative learning environment. We divided up Carleton into 6 sections, one for each track, and encouraged attendees to sit with others who were completing the same track as them to spark peer-to-peer learning. It took some coordination on our part, but it really paid off. The amount of collaboration we saw was phenomenal. Students were debugging each others’ code, hackathon teams were formed, and some attendees even came back the next day to work with people they had met the day before.

We also handed out custom DevFest Passports to every attendee. Whenever an attendee completed a level of any track, they would earn one stamp in their passport. Each stamp served as 1 entry into a raffle with prizes such as Amazon Echos, Arduinos, and Fitbits. The passport system encouraged exploration of multiple tracks, allowed students to physically track their progress, and encouraged excitement around technical learning. At the end of the week, we gave out over 130 stamps for tracks that were completed in-person at our event and logged over 1200 total visits to the track pages.

Every single one of the 1200 DevFest passports was hand-assembled by an ADI member on a wild Friday night.


This was definitely a crazy year for us that was filled with lots of “firsts”. After redesigning our curriculum methodology, partnering with other student groups, and taking over Carleton Commons, this year’s DevFest felt like a completely new event. Launching the Track System was a massive achievement, and we are extremely proud that it succeeded at such a large scale.

Thanks for reading! Have any suggestions or questions for the DevFest team? Get in touch! We’d love to hear from you.

Check out the DevFest Tracks on our curriculum page here!

Thanks to Dan Schlosser and Matt Piccolella for helping polish this piece, our curriculum partners for their hard work, and ADI for making this year’s DevFest the best one we’ve ever had.



Raymond Xu
Stories from ADI

software @notion. previously @lyft @columbia, @adicu, @google