3 ms·
"We tried 1 week and 2 weeks iterations. Neither worked out. With short iterations there was a constant pressure to get shit done and technical debt accumulated
by api 14y ago
"We tried 1 week and 2 weeks iterations. Neither worked out. With short iterations there was a constant pressure to get shit done and technical debt accumulated like a huge garbage heap. It is impossible to squeeze a good solution into a short timeframe."
This is the most common Agile failure mode I've seen. You have to finish by the end of the iteration, so you're very heavily biased toward ugly hacks and Rube Goldberg machine coding. Elegance never fits in a sprint.
The last total Agile Kool-Aid drinker company I worked for also coincidentally had the most massive shit heap of code I have ever seen in production. It was a heterogenous mix of VB.NET, Ruby, Java, shell scripts, and Python running on Linux and Windows (and a bit of Mono on Linux), all glued together with duct tape and chewing gum. The Scrum Master was really proud of it, called it a Service Oriented Architecture. He could make pretty charts of it that made it look good, but if you lifted the hood it looked like garbage and required at least 10X the Amazon EC2 footprint it should have required. It was probably also a security nightmare, and was definitely hell to maintain.
That experience really destroyed my interest in Agile, since I could see very clearly how the problem was emergent from Agile's short sprint and exclusively deliverable-focused structure. The programmers were actually decent coders, and it wasn't really their fault. (Except maybe the heterogeneity...)
- deleted 14y ago[deleted]
- static_typed 14y agoThis is common in a lot of Rails shops - they are so proud of the extensive Cucumber tests, of the endless gems required just to run the tests, of the layer-upon-layer of crap, and look all the tests passed, it must be good right? Wrong. The worst code I have ever seen. Written to pass tests, unmaintainable, fragile as hell due to the turtles-all-the-way-down architecture of relying on a thousand-and-one third party gems (and the checkins showing how frequently that very same code barfed and broke 'vital' things'). Agile is a pox upon software development, but hey, it sells books, provides employment for otherwise unemployable 'project managers' and finally putting to rest any semblance of engineering in software and systems today.
- tablet 14y agoI believe the resulting situation is not what you should blame agile for. Shitty code created by shitty developers. No exceptions.
- api 14y agoGood developers can only write good code if they can think and plan. Neither of these is ever a sprint objective. The objective of a sprint -- in practice -- is always to bang out the absolutely minimal quality hack required to complete the sprint's objectives.
- tablet 14y agoNothing distracts good developers to write good code. There is NO excuses. Bad management? Bad mood? Fuck it. Find another job if management can't live with good solutions. Again. No excuses.