Creating software is easy. It’s like you are building a plane and they forgot to provide you the building materials and you have to install both wings on one side according to the specification but no one knows how to do it and the plane is already flying and they already sold 10x more tickets that you can put in the plane and suddenly the fire starts….
Ok, I worked too long as the project manager, so forgive me for being too optimistic. Let’s imagine you have a new project. That would be a great journey! Because this time EVERYTHING WOULD BE DIFFERENT. You wanted to be different this time, but ended up as usual…in the hell. So what is causing this permanent hell? I tried to point out the most obvious causes.
Continue reading Late Autumn Essay: “Why each time we end up in software hell.”
During the last several months our team came across 3 projects with the same issue – customers had the “almost done” project (usually customers state smth like “85%” or “95% done”) but they could not launch it, because the bug fixing process was endless or the “last crucial” feature was almost impossible to implement. Almost all of them were startups. We performed code review for them to be able to answer if we can handle it. From inside the products looked very similar. I think I even could tell all their development history by looking at these layers of code, covering each other like patches in a crazy quilt. We usually ended up with these clients arguing about one question – “Rewrite or do not rewrite all of that”. So I decided to write this post about the BIG rewriting.
I became much lazier during the last couple of years – I need to hear a good reason to start doing something. The same when it comes to work – “why?” became one of my favourite questions. I discovered how many things are done without the reason. Ask “Why do we need this new type of report?” and then repeat the question unless you get deep to the real reason. When you finally get to smth the like “Because everyone does it!” – you can show the maximum understanding of the problem on your face while leaving the room and going to the kitchen to prepare a cup of coffee and get back to reading Reddit. Try and you’ll be surprised too.
Continue reading Product idea inception – discovery exercise
Finally, it’s my turn to write about the dead projects. Mostly because I am taking part in more than one now. I collected my observations during the last months and am ready to share them. Let’s start from the most important thing – how to realize that you are working in the zombie project. Zombie – because you can’t say, it’s dead – sometimes a huge team is working on it and you can swear you hear it’s breathing. But it can be only the sound of wind in the tubes.
How to find out that your project is a zombie
Continue reading How to undestand you ride a dead horse