How to Deal with a PHP Coder who Walks 75% through a project:

Ever have a PHP coder walk on you 75% of the way through a project, then demand payment for the incomplete work they’ve done thus far?

Here’s a real response to such a situation that you can probably appreciate…


-----Original Message-----
From: john [mailto:john@fake-email.com]
Sent: Tuesday, March 29, 2011 2:28 PM
To: Me
Subject: Re: status

Need to grab last week's check.

Can meet you somewhere this week, or by mail is ok.


-----Reply Message-----
From: Me [mailto:me@fake-email.com] 
Sent: Tuesday, March 29, 2011 3:03 PM
To: 'john'
Subject: RE: status

class Company {
	const OUTSTAINDING_PAYMENT= 1800;
	public static function payHalf() {
		return self::OUTSTAINDING_PAYMENT/2;
	}
  	public static function pay($billedAmount) {
		return $billedAmount;
	}
}

class John {
	public function __construct($agreeToTerms=true) {
		if ($agreeToTerms) {
			echo Company::payHalf();
			if ($this->completeProject()) {
				echo Company::payHalf();
				echo Company::pay($this->billRemainder());
			} else {
				unset($this);
			}
		} else {
			unset($this);
		}
	}
	public function completeProject() {
		return rand(0,1);
	}
	public function billRemainder() {
		return rand(500,1000);
	}
}

By “walk” I meant “walk out”, i.e. ditch you.