Menu

Wealthfront track at the Silicon Valley Code Camp

October 20, 2010

This year’s Silicon Valley Code Camp was the largest and greatest so far. Like last year, Wealthfront (then kaChing) had few packed presentations. This year we had a full Wealthfront track, focusing on software quality starting with the first line of code through testing to production. As requested, here our our presentations.    A well-typed program… Read more

Agile, test-driven development in… MATLAB?

September 23, 2010

I recently decided to take a leave of absence from kaChing to work with the Covert Systems Biology Lab at Stanford on building the world’s first “whole-cell” computational model. The team (size: 3) is extremely talented and packed with domain knowledge and experience, but they’ve never worked on a piece of software this large before. When I accepted the… Read more

Keeping the trunk stable

September 10, 2010

Since the very beginning, kaChing has been trunk stable. In other words, everybody develops on the trunk and the software is stable at every point in time. Our trunk is being continuously built and tested and we cannot deploy a revision to production unless the revision has been successfully built and all the tests are… Read more

Models, they make everything look good

August 31, 2010

One of the most common best practices in Rails is to keep the controller light weight. This helps maintain the code’s readability maintainability, and refactorability (just like coding, I make stuff up). This is often done by pushing as much of the business logic as you can (where it still makes sense) down into a… Read more

Guice tricks for better testability, part one

June 16, 2010

I thought I’d enumerate some of the small Guice tricks we use for making our code more testable. Today: Logical Clocks. You never want to use System.currentTimeMillis() in your code. Rather, you want a logical clock that you can replace in your tests in order to control the flow of time. In Guice, not only… Read more

Just-in-time Providers for Guice

May 31, 2010

Guice is widely recognised as the best dependency injection framework for the JVM world and specifically for Java. It has brought together ideas from numerous projects, including Spring and PicoContainer, and popularised type driven development. Dependency injection is one of the principal enablers for test driven development, and as such central to our software practices… Read more