Apr 14, 2015umdio
This post will explore the vision and motivation behind the project - why this is important, what it could do for students and the school.
umdio is an API for university data - a way for developers to access data about the school in their applications. There’s the website, umd.io, which has documentation explaining how to use the service, and there’s the service itself, which sends the data. Right now, we provide data about courses, buses, and building locations. Dining, events, and student data are on the roadmap, along with a ton of other ideas.
As an open source project, umdio is also the code underneath - if students at another university wanted to make a similar project, they could borrow heavily from us. Good code also means more contributors and more progress, faster. umdio is also the team building it and our relationships with the school and student developers.
We’re growing the team, and we’re building relationships with the owners of data across the university. Ultimately, we aim to faciliate relationships between data owners like Dining Services, Reslife, and OIT, and student developers who want to build cool applications for themselves and their fellow students.
The idea of an open data api for Maryland has been floating around the umd student developer community for several years. At hackathons like umd’s bitcamp and in spaces like the startup shell, students use data to build technology to solve problems. Tools like the umd social scheduler are made by students, with students in mind.
Most of the hacks and apps that students build leverage other technology and data. The data that is easiest to use sees the most use. At bitcamp, about 100 of the 160 hacks submitted used the Twitter API for some part of their project, because Twitter provides easy access to interesting data.
Today, umd data is scattered and siloed, and there’s no easy way to get most of it. If you wanted to build a map that showed where particular library books were, or a graphic that showed research output per dollar, it would take more than a weekend. If you wanted to build new ways to interact with student services like testudo, dining, reslife, canvas, or the bursar, you might not be able to at all.
Students want to improve their experience, and the experience of their fellow students. We know because we’ve talked to them. They aren’t satisfied using 90’s era web apps like Venus for building their schedule when they could build better ones themselves.
New interfaces, new ways to interact with the school - right now, the limiting factor is access to the data. We want to make the data part easy so that developers can focus on making awesome things.
When we started working on the project and showing what we made to student developers, we were excited by a couple things.
Not only can the data be used to rebuild the standard student-facing webapps - it can facilitate the creation of exciting new ideas.
A bitcamp team from UMBC made an application for the Pebble watch that would guide the user to a course on campus that was happening at that moment that they was free to audit - one they could sit in on - without telling them the name of the course.Serendipity isn’t something that the university would make itself - it’s an idea that could only happen when students have access to data.
At bitcamp, we also found that there were features that developers wanted that we didn’t have. We’ll always need to improve, and with feedback from developers actively making projects, we’ll iterate quickly and be more useful.
We have big ambitions for the data we’ll provide - it will require collaboration with many different offices within the university, particularly the Office of Information Technology, as well as lots of work from our growing team. The more data we make available, the more interesting applications developers will find for it.
We see huge potential for this project, not only as a means for improving the applications that students use, but also as part of the learning environment at the university. From Dewey and Piaget, we know that learning happens best when students can connect what they are working on to their own lives.
When students use umdio, they are working with real data in a context they are familiar with. Instead of abstract, contrived, or esoteric examples that often make their way into the classroom, students can work on real projects - ones that they can show their friends and get genuine feedback on.
Hackathons and Code clubs work so well in part because students make things that they want to make - things that are relevant to their own lives. The umdio team has long been involved in teaching students to code. Part of our outreach will focus on beginners, helping those who are early in their learning process to feel comfortable working with large datasets to make useful things.
More broadly, we hope that better access to data will lead to a better learning environment for all students - not just the ones learning to code. When students have better tools, they can make better choices about which class they want to take with which professors, which major suits them best, where on campus to go to find that darn library book.
More open data could also help teachers and administrators. New tools can give instructors better insight into what parts of their curriculum students struggle with, or compare sections of classes to see what worked and what didn’t between sections. Administrators can see how resources are being used across campus, what is and isn’t effective. At the same time, open data can help the school be more transparent and accountable to the community.
Much of the potential is a ways down the road. For now, we are a small project, working hard to put data in the hands of students, so they can build great stuff.