Letter from the Undergraduate Chair

Andreas HaeberlenAs a Freshman, I was hooked on Computer Science by the “aha!” moment that came when a tricky bit of programming resolved itself and I understood how to get the computer to do what I wanted. Programming as a creative endeavor combines the best aspects of puzzle solving with the gratification that comes from turning ideas into something tangible, something that you can interact with. It can be amazingly empowering to create a program that is useful, or cool, or entertaining. Programming requires imagination, ingenuity, and the ability to express ideas clearly, all of which appealed to me.

But that was only the beginning. Computer Science, I discovered, was about much more than just programming or even computers. As a discipline, Computer Science encompasses a staggering array of ideas, from deep, foundational issues at the heart of mathematics to the clever software hacks found in the apps running on my iPhone (and everything in between). Computer Science is a dynamic, ever-changing field, that has become an enabling force in physics, chemistry, biology, medicine, cognitive science, psychology, and economics. Our understanding of computation continues to shed new light on all of these subjects.

Now, as Associate Professor of Computer Science, I still love the products of computing — the games I played as a kid (and occasionally even now), the social networks that let me stay in touch with friends and family, and the software that makes my day-to-day life a bit easier. But I love even more the ideas behind all of these technologies that we use every day, and that is why I count myself fortunate to work at Penn.

Penn’s Computer and Information Science Department offers students the opportunity to explore the ideas I found exciting as an undergraduate, and much more. Our core curriculum teaches the foundations of Computer Science both in theory (discrete mathematics, logic, data structures, algorithms and analysis) and in practice (digital circuits, computer architecture, compilers, and operating systems). Through hands-on laboratories and project-based courses, students can learn to design and implement software that harnesses computing technology, applying it in areas as diverse as graphics, databases, web-programming, computer security, artificial intelligence, and natural language processing. All of this culminates in a year-long Senior Project that lets students showcase their creativity and technical know-how by building a system of their own design.

Penn CIS also encourages students to follow their passions. It offers flexible degree programs that allow students to combine Computer Science with their interests in other fields from across the University. Students can choose a pre-existing program like Digital Media Design, Networked and Social Systems, and Management and Technology, or create their own program of study.

One of my favorite parts of this job is interacting with the bright and talented students that these programs attract, and I know that the other members of the department would agree with this sentiment. I encourage students to take advantage of the opportunity to engage with the faculty — after all, they rank among the top researchers in the world, across all areas of Computer Science. Students should get to know them by participating in class, by joining their research projects, or by just talking with them in the hall.

It’s cliche to say that computers and the Internet have revolutionized the world, that they have fundamentally changed the way people communicate, learn, and interact. But it’s the truth, and it’s amazing.

What’s more amazing to me is that Computer Science, compared to most other scientific disciplines, is still in its infancy. The world’s first Turing-complete digital computer, Penn’s ENIAC, was completed in 1946, less than seventy years ago. The Internet, developed in the late 1970’s and early 1980’s, is less than thirty-five years old. Google is less than twenty. Facebook is just ten. The iPad is less than five.

What’s next? You tell me.

Andreas Haeberlen
Associate Professor, Computer and Information Science
Undergraduate Curriculum Chair