High-level guide to learning web programming for a beginner hackathon workshop.
Thoughts on how I approached teaching coding on Khan Academy.
Created web bookmarklet for the user to tag and markup any web page in-browser with existing or new Palantir objects, then send the data back to the Palantir backend to create a new document object linked to the tagged document entities. Vastly simplified the existing tagging workflow. Hackweek project with one of the designers and another software engineer. Selected by company leaders to present at Palantir's main conference for clients in Washington, D.C. (August 2012; Coffeescript, Java, HTML/CSS)
Researched, designed and built machine-learning system for clustering similar crashes and bugs based on stack trace. Streamlined resolution of production crashes via string-matching and clustering algorithms to detect and display related past failures. Self-initiated Google summer internship project that was later incorporated into Google Feedback across all Google products, and presented at Google's Search Summit. (Summer 2011; Python, Bigtable, internal Google tools)
(article) (code) A peer-to-peer server inside of a browser that serves static and dynamic content over WebRTC. Built in 9 weeks for Stanford CS Senior Project. Allows anyone to build and serve a web application live on the internet simply by opening the site in their browser tab. Supports static HTML/CSS/JS content, as well as dynamic content with a database, templating system, sessions, and dynamic routes. Our server performs the initial handshake between the peer server (in your browser) and the peer browser (in someone else's browser), and all other content is served browser-to-browser over WebRTC. Team of two with Brie Bunge. Won top project awards from Palantir, VMWare, Hearsay Social, and Twitter across all Stanford CS senior projects at the software fair. (April-June 2013; Coffeescript, NodeJS, Less/CSS, Handlebars, Backbone)
(article) (code) Won the Stanford ACM 2014 Hackathon with Brie Bunge. When you click the bookmarklet in your browser bar, you join a live video chat with others viewing the same webpage -- a chatternet! A WebRTC project to make web pages into conversation areas. Built in ~18 hours over a weekend. (January 10-11, 2014; Coffeescript, NodeJS)
(poster) (paper) Machine learning analysis of programming communities on StackOverflow for Social and Information Network Analysis course. Predicted the current popularity of a programming tag based on the first four weeks of the tag's life. Found that the early affiliation network around a tag was more suggestive of later success than metrics on initial activity. In other words, we could tell more about a tag's future by knowing how it related to other tags on the site, versus knowng how many raw users, questions, or answers there were. Also ran PageRank on the affiliation networks. With Brie Bunge and Melissa Johnson. (October-December 2013; Scipy, Scikit-learn, Python, Snap)
Prototype for engaging middle-school girls in beginning programming, emphasizing coding as a way to create. Website includes first level of guidance toward building a magic-8 ball. Part of Stanford product design senior capstone course where my partner and I went through the design process of ideating, needfinding, and prototyping around engaging middle-school girls in CS, including small-group interviews and experiments with existing learn-to-code methods with middle-school girls. Insights also came from volunteering at the CS course at a local girls' school and helping 75 6th-12th grade girls learn to make Android applications as part of Technovation Hack Day. Worked with product design partner as lone CS major in the class. (February-April 2013; Coffeescript, Backbone, Less, HTML)
Machine learning analysis of New York City school data to examine individual school performance between 2006 and 2011, based on demographic data, test performances, and survey responses. Found that two questions on parent involvement strongly predict future improvement or decline. Also provided machine-learning evidence of a strong web of interrelated factors in characterizing schools. Team of two with Daniel Jackoway. (December 2012; Python, Matlab)