background preloader

Meta

Facebook Twitter

The Guerrilla Guide to Interviewing (version 3.0) By Joel Spolsky Wednesday, October 25, 2006 A motley gang of anarchists, free-love advocates, and banana-rights agitators have hijacked The Love Boat out of Puerto Vallarta and are threatening to sink it in 7 days with all 616 passengers and 327 crew members unless their demands are met.

The Guerrilla Guide to Interviewing (version 3.0)

The demand? A million dollars in small unmarked bills, and a GPL implementation of WATFIV, that is, the esteemed Waterloo Fortran IV compiler. (It’s surprising how few things the free-love people can find to agree on with the banana-rights people.) As chief programmer of the Festival Cruise programming staff, you’ve got to decide if you can deliver a Fortran compiler from scratch in seven days. Can you do it? “Well, I suppose, it depends,” you say. On what? “Um, will my team be able to use UML-generating tools?” Does that really matter? “I guess not.” OK, so, what does it depend on? “Will we have 19 inch monitors? Again, does this matter? “I guess not. Right. “Who are they?” Does that matter? “Sure! That’s it. The Joel Test: 12 Steps to Better Code. By Joel Spolsky Wednesday, August 09, 2000 Have you ever heard of SEMA?

The Joel Test: 12 Steps to Better Code

It's a fairly esoteric system for measuring how good a software team is. No, wait! Don't follow that link! Evidence Based Scheduling. Evidence Based Scheduling by Joel Spolsky Friday, October 26, 2007 Software developers don’t really like to make schedules.

Evidence Based Scheduling

Usually, they try to get away without one. “It’ll be done when it’s done!” Most of the schedules you do see are halfhearted attempts. Hilarious! You want to be spending your time on things that get the most bang for the buck. Why won’t developers make schedules? Over the last year or so at Fog Creek we’ve been developing a system that’s so easy even our grouchiest developers are willing to go along with it.

The steeper the curve, the more confident you are that the ship date is real. Here’s how you do it. 1) Break ‘er down When I see a schedule measured in days, or even weeks, I know it’s not going to work. This forces you to actually figure out what you are going to do. If you are sloppy, and pick big three-week tasks (e.g., “Implement Ajax photo editor”), then you haven’t thought about what you are going to do. 2) Track elapsed time You can’t, really. Anyway. Summary.

Tutorials

Charming Python: Using state machines. What is Python?

Charming Python: Using state machines

Python is a free, high-level, interpreted language developed by Guido van Rossum. It combines a clear syntax with powerful (but optional) object-oriented semantics. Python is widely available and highly portable. Back to top What is a state machine? Problem 1 - Project Euler. Elegant Code. Topcoder - Prep - Coding exercises to stay in shape. Test, Debug. Eclipse.