Sarah Lim

Computer Science

Northwestern University

slim [at] u.northwestern [dot] edu

me standing in front of a wall painted with fish
Sk8er Boi was a pretty good song

About

I am a rising senior undergraduate in Computer Science at Northwestern University, where I am fortunate to be supervised by Haoqi Zhang and Nell O'Rourke through Design, Technology, and Research and the Delta Lab.

I work on developer tools and programming environments to scaffold and support non-expert programmers. My research interests are broadly in the areas of human-computer interaction (HCI), computing education, programming languages, and software engineering (PLSE). My technical interests include functional programming and all aspects of engineering the web, from CSS semantics to browser engine internals.

I am generously supported by the Google Lime Scholarship, Palantir Women in Technology Scholarship, Microsoft Tuition Scholarship, and Box Engineering Diversity Scholarship.

Service

  • I'm a head teaching assistant for introductory EECS courses, with a particular focus on mentoring students without prior programming experience. Most of my efforts have revolved around curriculum development for EECS 111: Fundamentals of Computer Programming I at Northwestern.
  • I sit on the Weinberg Student Advisory Board, representing Computer Science majors in the Weinberg College of Arts and Sciences.
  • During the 2016-17 school year, I was one of two students serving alongside faculty on the Weinberg Curricular Review Committee, reviewing proposed changes to majors, minors, and academic offerings within the College.

Experience

As of Summer 2017, I am a software engineering intern at Khan Academy. Previous internships and summer jobs have included:

Miscellanea

News

May 2017

Spoke at the Northwestern Big Ideas Forum, "How We Learn About Learning," with professors Nell O'Rourke and David Uttal, and fellow undergrad Gabby Ashenafi.

May 2017

Ply wins the CHI 2017 Student Research Competition! Northwestern Engineering has a nice write-up about the whole thing.

April 2017

Received a Microsoft Tuition Scholarship for 2017-18.

Jan 2017

Ply: Visual Regression Pruning for Web Design Source Inspection is accepted to the CHI 2017 SRC.

Projects

Recent escapades in research, development, and coursework.

Visual Regression Pruning

Delta Lab

researchdevelopment

We introduce a visual significance heuristic for removing irrelevant HTML and CSS source code during web design reverse-engineering tasks. CHI 2017 Student Research Competition Winner, Denver, Colorado.

Guiding Web Inspection with Tutorial Keyword Frequency

Delta Lab

researchdevelopment

In order to bridge the gap between web design tutorials and real-world examples, we extend a web inspector to highlight CSS properties frequently mentioned across a given set of tutorials. Presented at 2016 Google Scholars' Retreat, Mountain View, California.

SVG Charting Library

LinkedIn

development

An opinionated Ember.js addon to replace Highcharts with native SVG and DOM APIs. Released addon as a company-wide multiproduct. I worked on this project during my internship at LinkedIn, under the mentorship of Cody Coats and Michail Yasonik.

Predicting the Popularity of User-Generated Discussion Questions

EECS 349: Machine Learning

courseworkdevelopment

Using Python with the Reddit API and NLTK library, we collect information about AskReddit posts over a two-week period to analyze what makes a question popular. Alternating decision trees achieve 72.9819 accuracy with 10-fold cross-validation, an improvement over the ZeroR baseline of 51.0708. Features related to the language of the question, time and day of posting, and initial commenting behavior prove most informative. With Sameer Srivastava, Jennie Werner, and Aiqi Liu.

Commentator

Northwestern Debate Institute

development

End-to-end Google Apps Script-based pipeline for publishing practice debate comments to individual students' feedback pages. Previously, instructors needed to manually edit the feedback pages for all four students in order to provide feedback from practice rounds. Deployed at the 2015 Northwestern Debate Institute and subsequently adopted for the entire program in 2016.

Teaching

I serve as a teaching assistant for the following courses at Northwestern. Terms marked with an asterisk (*) denote a head teaching assistant role.