I teach computer science at the University of Illinois. Previously I led the blue Systems Research Group and directed the PhoneLab.
My research interests are in systems and networking, mobile systems, smartphones, and computer science education. At the University at Buffalo I taught an introduction to computer operating systems, designed and deployed a new freshman course on the internet, designed two new introductory courses, and led a comprehensive overhaul of the computer science curriculum. At the University of Illinois. I teach an introduction to computer science.
Research
This site describes my group’s research projects. My current CV (PDF) and research (PDF), teaching (PDF), service (PDF), and diversity (PDF), statements are all online and regularly updated. Please peruse to find out more.
I am lucky to supervise multiple excellent Ph.D. students. I have multiple exciting ongoing research projects with collaborators at the University at Buffalo, Microsoft Research, and the University of Michigan. Please peruse our projects and papers pages to find out more.
I am particularly excited about our work on programming uncertainty, wireless protocol validation, smartphone thermal management, and smartphone quality-of-experience. I would choose our 2014 UbiComp paper on PocketParker, our 2016 INFOCOM paper on crowdsourcing network monitoring, and our 2016 RV paper on wireless protocol validation as three representative publications.
Funding
I have received almost 3M in external funding from the NSF and Google, most as PI. My CAREER award has been recommended for funding, but the NSF will delay awarding this grant until I find a new academic position. Please peruse our funding page to find out more.
Teaching
I have taught multiple large and popular courses and have made a great deal of material available online. Please peruse our courses page to find out more.
At UB I taught a course on computer operating systems to undergraduate and graduate students. The assignments and infrastructure for this course originated at Harvard, but I have published slides, exams, and videos for the course online, and led the creation of new automated testing tools.
Last fall I taught new course on the internet to 440 incoming freshman
in a flipped format.
I have recorded
hundreds
of short videos explaining key concepts, designed
26 new
in-class activities, and supervised 30 course staff.
Material for the course will eventually be available online at the
internet-class.org
website.
Please review the
syllabus to get a sense
of how the course works in practice.
Service
I am active as a technical program committee member and reviewer for the top conferences and workshops in mobile systems (MobiSys (2017, 2016, 2014), MobiCom (2017), HotMobile (2016), MobiCASE (2016)) and wireless sensor networks (SenSys (2016,2013,2012,2011), IPSN (2017,2015), and EWSN (2013)). I also regularly review submissions to journals including ACM Transactions on Transactions on Sensor Networks (TOSN), IEEE/ACM Transactions on Networking (ToN), IEEE Transactions on Mobile Computing (TMC), and IEEE Transactions on Parallel and Distributed Systems (TPDS).
In 2015 I began editing a column for GetMobile Magazine. The column attempts to connect past developments with future trends in mobile systems. If you have any idea for a submission, please get in touch.
At UB I led an overhaul of our undergraduate computer science curriculum. Jesse Hartloff and I also designed a new series of introductory courses.
I am also involved in efforts to try and improve diversity within computer science. With help from Natasha Sanford and later Gela Malek Pour, in in 2014 I helped start a UB chapter of the Scientista Foundation which promotes female participation in STEM. Our local chapter is focused on women in computer science and, with the help of generous support from Bloomberg, has held a series of successful events on campus bringing attention to this important issue. I also organized donations to create a diversity in computer science mural, this iconic photo of Grace Hopper now adorns the wall outside our lab.
Background
My interest in computer science was kindled when I took an introductory course on operating systems from Margo Seltzer in 2000. As a graduate student I worked on sensor networks and dreamed that motes would truly become ubiquitous. While I worked on sensor networks that dream came true, but while the sensor network community mired itself in the problems created by ad-hoc routing, smartphones realized the vision of a planetary-scale distributed system. I began working on these transformative devices after completing my dissertation and have not looked back since.
I joined the University at Buffalo in 2011 and established blue in the same year. I enjoy faculty life and the challenge of meeting my commitments to teaching, research, and service. Maintaining the balance is frustrating at times, but ultimately extremely fulfilling. The chance to work closely with my students and help them learn is my greatest joy, whether that occurs in the lab, in the classroom, or beyond. I have been blessed with a great group of students—hard-working, talented, and a pleasure to be around.
I received my A.B. in Physics in 2003 and a Ph.D. in Computer Science in 2010, both from Harvard. As a graduate student I studied with Matt Welsh and worked on using wireless sensor networks to study active volcanos. We performed several deployments on Ecuadorean volcanos including Tungurahua (2004, 2007) and Reventador (2004). Our field experiences generated several projects addressing challenges typical to using resource-constrained devices for scientific purposes. Lance used policy modules to enable-utility driven bulk data collection, and IDEA (Integrated Distributed Energy Awareness) harnessed distributed energy to maximize global network objectives. I also spent a brief stint at MIT as a postdoctoral associate funded by Hari Balakrishnan.
My wife and I live in a small house in Buffalo’s up-and-coming West Side, several blocks west of the intersection of Grant and Lafayette and a few blocks east of Niagara Street. Our small home is perpetually under construction but has provided opportunities for me to learn how to install hardwood flooring and baseboards, do basic electrical wiring, and now hang doors. We live with an adorable pair of animals: a cat named Xyz (pronounced "Ziz") and a dog named Chuchu. Before he was fired by university administrators, Chuchu had a steady job as our resident therapy dog and lunch stealer. I enjoy cooking and traveling and am a 3+ season bike commuter.
GWA
Long before I began signing my emails "-gwa-", I was given the nickname GWA by my high-school cross country teammates. But why? Simple: at that time, my initials were G.W.A.: Geoffrey Werner-Allen. Being raised by a strong woman had many benefits, including a hyphenated last name combining my Mom’s (Werner) and Dad’s (Allen) single names.
But when a hyphen (Geoffrey Werner-Allen) meets the unhyphenated love of their life (Suzanna Chapman), things get complicated. We wanted the same name, but didn’t really consider being Werner-Allen-Chapmans. We did consider being Chapmans, but she already has a brother Jeff. Eventually we settled on a variant of my parent’s approach, and Chapman and Werner-Allen joined to become Challen. In fairness to my Mom, I still carry her contribution (Werner) as my legal middle name. And, contrary to what the lady at the Massachusetts Family Court might have thought, we didn’t make up the name Challen: There are others out there.
So there it is—to explain GWA, you have to explain Challen. But maybe it actually stands for "GWA with Attitude".