Tales from the AntiTestingSide - The Stubborn Architect

Confrontation
Fresh into a new organization and handed a project. The person that did the handing off was the "Architect" (bridge-builder).

The bridge-builder does not like refactoring. The bridge-builder also wants automated tests to be developed AFTER the code works, not before. His motto, lets build a bridge without measuring anything and see if it's still standing 1 day after vehicles start driving on it.

So back to the code -- it's NOT in production yet, 80% complete, it DOES work to some degree, has ZERO requirements and analysis done, and ZERO unit-tests. Get it working. What is a Test- Driven developer to do? Start writing tests against this code? If so, the code is probably poorly designed due to the limited THINKING beforehand and is going to be hella hard to write tests for. Re-designing existing code is pretty much the only option at this point (while reusing the existing core-functioning-code, after all money was spent on getting the current executable). The last option (not the best in my opinion) is to write wrappers (adapters) for the classes under-test that will allow easier unit/integration testing.

Which option is better? In this case, the former!

Ultimatum
I refactored a lot of the code into more managable chunks. Having removed some duplication etc.. I was able to actually see what was going on. Of course, the infamous flame email came from the bridge-builder about how he has been an Architect for 12 years and that it's his life. Getting over that useless information, the fact still stands.

Releasing crappy code with ZERO analysis and ZERO tests for it is not my idea of a smart move for future maintenance. The time to do this was now since the code is NOT in production and has some time to make it BETTER than what the bridge-builder wants.

Moral
Don't piss off a stubborn bridge-builder, they always win. After pissing them off, continue to wrap tests around the code before it goes out to production. It's worth the time if theres available time to do it. In my case, I have the time, so I will proceed. Is it going against what the bridge-builder wants? Yes. Is what the bridge-builder wants good for the company? Yes and No.

Yes: it's a great idea and could benefit the company very well, if it does what it's supposed to
No: it will become a maintenance nightmare later on.

Side Note: I am fully aware that business needs must be fulfilled. But in this case there is ample time for this small project. Do it as right the first time as possible. Or else the ever popular problems arise that organizations always face.