Latest Comments
No website changes have been recorded.
Search
Stuff I like
  • The Essays of Warren Buffett: Lessons for Corporate America, Second Edition
    The Essays of Warren Buffett: Lessons for Corporate America, Second Edition

    Read this review post

  • The Five Rules for Successful Stock Investing: Morningstar's Guide to Building Wealth and Winning in the Market
    The Five Rules for Successful Stock Investing: Morningstar's Guide to Building Wealth and Winning in the Market

    Read this review post

  • Programming Pearls (2nd Edition)
    Programming Pearls (2nd Edition)
  • Pattern Recognition and Machine Learning (Information Science and Statistics)
    Pattern Recognition and Machine Learning (Information Science and Statistics)
  • Programming Collective Intelligence: Building Smart Web 2.0 Applications
    Programming Collective Intelligence: Building Smart Web 2.0 Applications
  • Dyson DC25 Ball All-Floors Upright Vacuum Cleaner
    Dyson DC25 Ball All-Floors Upright Vacuum Cleaner
  • Sigma 30mm f/1.4 EX DC HSM Lens for Canon Digital SLR Cameras
    Sigma 30mm f/1.4 EX DC HSM Lens for Canon Digital SLR Cameras

Powered by Squarespace
« What I did on 4th of July | Main | MOM »
Wednesday
25Jun2008

Software Engineering

"Make everything as simple as possible, but not simpler."

- Albert Einstein

Writing software is a messy business - You are tasked with coming up with a solution that works. This is probably best exemplified by the Netflix Prize competition (see wikipedia article for a quick overview if you have not heard of it before).

One consensus I got at KDD Cup 2007 was a slight disappointment at the "hackish" nature of the leading team, which later won the 2007 progress prize. Their winning solution is described here.

It is easy to have bloat creep into code as bugs are fixed and features are added.

One positive plus of working in Google is the inclination to frown on code bloat, and engineers are recognized for coming up with simpler implementations. This philosophy of constant iteration of software engineering ensures that systems are capable of keeping up with features while being maintainable. (Unit testing is HUGE here too)

Reader Comments

There are no comments for this journal entry. To create a new comment, use the form below.

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Post:
 
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>