Haak Saxberg
Curious Adventurer
I'm interested in working with user-facing technologies; whether that means UI design and implementation or analyzing the effectiveness of an existing technology, I'm there. I'm interested in the intersection between data, UI, and feature-richness.
Physical340 E Foothill Blvd
Claremont, CA 91711
Phone 703-***-****
Email ********@***.***
Education
Undergraduate
Harvey Mudd College
B.S., Computer Science, GPA 3.45 - Expected May 2013
2009 - current
I attend Harvey Mudd College for Science and Engineering. This means that, in addition to a strong focus on the sciences, I'm well versed in the humanities: my focus was in Political Science, as demonstrated by the coursework below. I'm comfortable on all three major operating systems: Windows Vista+, Mac OS X
Leopard+, and Linux (mostly experience with Ubuntu 10+, both desktop and Server). I can work with both command-line utilities and graphical utilities with generally equal proficiency.
Programming Languages:
Proficient: HTML/CSS, JavaScript, Python, LaTeX, C++
Familiar: Scala, PHP, Java, SQL, Scheme/Racket
Exposed: Ruby, Prolog, XML
Frameworks, Libraries, and Tools:
Git, Subversion, Vim, Django, jQuery, MySQL, ReportLab, Adobe Photoshop and Illustrator, MatLab, Microsoft Visual Studio, Microsoft Office Suite
Relevant Coursework:
Taken:
Introduction to Computer Science
Principles of Computer Science
Data Structures and Program Development
Introduction to Engineering Systems
Intoduction to Engineering Design
Continuum Mechanics
One year of chemistry, with labs
1.5 years of calculus-based physics, with labs
Introduction to Biology
Global Politics
Propoganda
Political Innovation
One year of French
Large-Scale Software Development
Domain-Specific Languages
Computer Systems
Analog Circuits
Macroecnomics
Morality and Self-Interest
Digital Electronics and Computer Engineering
Algorithms
Computability and Logic
Programming Practicum
Robotics Outreach Seminar
Age of Elizabeth I and Shakespeare
Taken by January 2012:
Complexity Theory
Computer Music
Programming Languages
Parallel Programming
Computer Science Clinic
Highschool
Edmund Burke School
2005 - 2009
I helped the school put together its first-ever computer science classes during my senior year.
Experience
Software Developer: Yelp
Revenue Team
Summer 2012
I used mapreduce to create new metrics and visualizations based on billing/collection batch activity. As part of this, I became familiar with the Cheetah templating system, the mrjob python interface to map reduce, the Hadoop distributed filesystem, and best-practices for logging various types of data.
This work also exposed me to important backend usability concerns to be aware of, and ways of thinking about visualizing data in a meaningful, useful, and attractive way.
Custom LAN Search Engine
Maintenance, development, troubleshooting
2010 - current
I manage and maintain M2M, a search engine exclusive to the Harvey Mudd College network of servers (the Network) which are maintained and owned by current students. M2M allows students to find desired files amongst the 40+ TB of information stored on the Network, quickly and easily. Although I am not the original architect of M2M, I have implented several improvements to the clarity and execution of the underlying code, which is written mostly in PHP and Perl.
I completely rewrote the entire site using Python and the Django framework over the course of a month or two (February and March 2011). In addition to recreating the original services of the site, several imporovements were made and additional services developed, many of which center around involving the community more in the future development of the site.
Improvements Made
Meta-data enabled searching (Movies with ratings, overview, etc; Songs organized by Artist and Album, etc), using custom crawler functions
Tie-ins to several APIs including:
iTunes
TMDB
TVDB
Last.fm
Netflix
Improved comment board to enable Facebook-esque 'Likes'
Direct download links to files
A news page which will soon be expanded to a general multi-student blog, which for a brief time used a custom LaTeX-to-HTML parser to render markup
A method to mark files as 'bad', to warn other students of corrupt files or malware
User accounts
Polls
Notifications of files that could not be matched automatically
This is the old index page: very blue, very bright. Not ugly, but certainly plain. What this screenshot misses, though (you can see a hint of it at the edges), is that the background color of the entire page is a dark, dark blue. A pretty color in small doses, but that index content is only 800 pixels wide - most people using the site are working in resolutions of 1600 pixels or higher on the horizontal, so it was overwhelming. (Click for more!)
My solution was to brighten the whole place up. I kept some of the darker blues in the header and footer banners, but the rest of the page was put into a less tiring scheme. The banners provide a sense of 3D and immersion, and make everything between them seem more attentive to the user. The main content panel is now 1000 pixels wide (and if the window size is larger than 1200 pixels, a little easter egg pops up in the corner), but the ligher, less heavy design prevents it from being overwhelming.
While I was at it, I updated everything else too - this page uses jQuery and CSS3 techniques to rearrange key elements of the navigation on page load - this allows me to preserve the syntactic value of the HTML document itself. In terms of usability, the navigation bar is now absolutely positioned at the top of the page, so it's always accessible. It's background gradually becomes more opaque as the user scrolls down, becoming completely opaque just after it passes the search bar.
The requests page suffered from a similar problem to the index page - abrasive, abrasive blue. It was also really hard to keep track of requests, and ones that were pushed off the front page weren't responded to for a long time - a real issue from the user's perspective. There was a token "like" functionality implemented, but nothing was actually done with the number of likes - there were merely reported next to the request, and otherwise forgotten. This resulted in limited "like" activity, since the cost of liking something was not worth the benefit. The requests themselves were also formatted using tables (bad, bad style) and styled using a script that alternated classes between rows.
So, I created a "top requests" column, using the larger space granted by the 1000 pixel-wide design. Instead of a script, CSS selectors are used to target rows. The top requests section is still a table - but that's appropriate, since it's displaying data in a tabular manner. The requests themselves are now represented by tags, with appropriate header and article areas, as specified by HTML5; they're also easier to read, and to see who's requested what - each is separated by effective whitespace, and wrapped with a rounded border.
Want to know more?
Grader / Tutor
HMC Computer Science Department
2010 - current
Projects
Query Universal Interface (QUI)
Design, Implementation
2011 - Current
As part of a project for Domain Specific Langauges, Jess Hester and I developed a universal storage interface for non-relational databases. At the moment, it only supports MongoDB and Google's Appengine, but we've written it to be fairly easily extensible. Although it isn't publicly released yet, you'll be able to see more about it at its GitHub.
QUI is written in Python, and relies on backend-provided APIs to talk to the various data storage solutions that it supports.
HMCEmergency: Webapp
HMC Dean of Students Office
Summer 2011
I designed and built a webapp to allow HMC proctors with easy access to emergency numbers and other important contact information. The site is hosted locally (which means it's HMC-only, but screen shots are coming), and was built on a JavaScript framework that emulates the look and feel of native iOS apps.
Improved "Surface" Table
Design, Construction, Development
2010 - 2011
Recieved a grant of $4000 from Harvey Mudd College's Shanahan Student-Directed Projects Fund to build an improved version of my 'Surface' table. Currently a work in progress.
Leader of a team of three students, both during construction and afterwards during application development.
Multitouch "Surface" Table
Design, Construction
2010
Built from scratch, based on the Microsoft Surface hardware, but using open-source drivers and software to implmement multi-touch capability.
Skills
Leadership
Was a member of the HMC Food Committee, responsible for planning and implementing changes to the menu and operations of the Hoch-Shanahan Dining Hall, taking student desires into account.
Leader of a team of three other students in the construction of the "Surface" table.Interpersonal Skills
Comfortable in strange environments, good at setting others at ease, and able to adapt quickly and efficiently to new challenges and situations.
Microsoft Certified
Microsoft-certified as a specialist in both Word and Excel 2003.
InDesign
Responsible for the layout of highschool newspaper, and design of both flyers and programs for dramatic productions.
Continued design of flyers, programs, and brochures for certain clubs.
Computer Hardware
Built from componenents and routinely upgraded/troubleshooted five computers and two multi-touch surface tables. Well acquainted with the innards of a standard (and fairly non-standard) desktop computer.
Latin
Eight years of Latin education.
Theatrical Experience
Return to the Forbidden Planet (2009) : Captain Tempest
Peter Pan (2007) : Narrator
Anything Goes (2007): Lord Evelyn Oakleigh
Metamorphoses (2006): Midas, Cinyras, Man
Kiss Me Kate (2006): Bill Calhoun
Awards
Shanahan Student-Directed Project Fund
Drafted a proposal for a natural user interface driven computer system with a budget of $4000, which was accepted.
National Merit Scholar
Scholarship awarded every year.
National AP Scholar
Recieved a score of 4 or higher on 8 or more exams, and an average score of 4 or higher on all exams taken.
Scores: