|
|
|
|
|
by bluejekyll
3225 days ago
|
|
> throw something away and do it again. This jumped out at me too. This is such a HUGE fallacy. If what you have written is core to or is the product you're selling, you can't just rewrite it! Software evolves over time, and it can become difficult to replace it when it gains features and bug fixes for random edge conditions. Properly replacing existing software requires having a consistent API against which you are developing and can test to make sure that it continues to work. And then having the ability to potentially dark launch new software next to old to see that it works properly. Even doing all of that, replacement projects often fail, why? Simply because most organizations can't afford to have a team that is not contributing to the bottom line of delivering features to customers. Doing a replacement project should never be started without a significant amount of thought and attention. Software always takes longer to develop than you think, I even underestimate "Hello World!" most of the time. |
|
But yeah, I kinda have a feeling I know where he is coming from with some of his thoughts... my first few jobs were at startups that never went anywhere. We made great software, but never gained any customers because there was no real market for what we made.
After a while, you get REALLY focused on the craft of your code, because it is all you have. You can throw out old stuff and rewrite it, because it doesn't matter, you don't have customers depending on you. You already made what is needed by the business, the problem is there IS no business.
My current job is with a large CDN, serving a huge number of actual real customers with real demands. I don't have time to treat every piece of code I write as a piece of art. It is simply a tool to further the business.
Personally, I much prefer my current job. I would rather create things that actually matter, rather than amazing art that no one uses.