Honestly, I do agree that reinventing the wheel is rather meaningless and silly. But the problem is that other programmers and engineers don't. And I'm pretty sure there are some open-source Slack clones out there, so money isn't a motivation. People just want to work on reinventing the wheel. Hence, work that has to be done. I'm not going to dismiss people's hard work just because I find personally it worthless.
And no, I don't see problems ever being solved, simply because they just expand. I've worked on a couple of free open source projects, showed them off to people, and have got feedback from users of "Hey, it would be cool if [insert-feature-here]". And if I implement that feature, "Ah, thanks...oh, and add this feature too." More and more 'suggestions' pile up, which means more work.
Just because you've only worked with engineers at startups making shitty products or bloated companies doesn't mean there aren't people doing work right.
You make assumptions about me that you probably shouldn't.
I think you are both right in different ways. For an engineer, the problem can always be solved in new and more efficient ways, as long as new techniques appear. But from a product design standpoint, the optimum is hit when the solution for all cases is automated into defaults and a minimum of configuration, and that leads to characteristically different products emerging to solve problems that are subsets of the old ones, rather than feature requests piling up forever.
After all, the point of the "application" is to enable a goal to be reached. We can engineer better pens, but that doesn't improve the quality of our writing; but a new tool like a typewriter or word processor does improve it by being more specific to the problem. Following the revolutionary improvement a logarithmic function takes hold; the newest Word only does a little more for most use cases than WordPerfect 5. So the next big leap would not be another word processor, but something that can automate away typing, like an AI-writer, or a cost lowering of other media that requires no typing, like voice and video capture.
For an engineer, the problem can always be solved in new and more efficient ways, as long as new techniques appear. But from a product design standpoint, the optimum is hit when the solution for all cases is automated into defaults and a minimum of configuration, and that leads to characteristically different products emerging to solve problems that are subsets of the old ones, rather than feature requests piling up forever.
I agree with this, but it's not really the point I'm making. I'm saying that the problem you're trying to solve matters. Most often people reinvent the wheel because they aren't trying to solve the problem wheels solve: they're just trying to make money, and if you're reinventing the wheel to make money you're no better than a cheap scammer. Your intentions might be better, because people think capitalism works, and that money means you must be solving a real problem, but that makes little difference to the people whose money you're taking while providing them no value.
I'm not going to dismiss people's hard work just because I find personally it worthless.
I'm not sure that sentence makes any sense: if you find it worthless, that's a dismissal.
That said, the value might be value to them: understanding existing solutions to problems helps inform you for solving novel problems. Their product is worthless, but the experience they gained making it isn't.
And no, I don't see problems ever being solved, simply because they just expand. I've worked on a couple of free open source projects, showed them off to people, and have got feedback from users of "Hey, it would be cool if [insert-feature-here]". And if I implement that feature, "Ah, thanks...oh, and add this feature too." More and more 'suggestions' pile up, which means more work.
Just because someone suggests something doesn't mean you have to or should do it. This is exactly what I'm talking about with making pointless changes: a lot of the changes people will suggest are pointless.
You make assumptions about me that you probably shouldn't.
Okay, perhaps you'd rather I said: "I see no indication in what you're saying that you have ever worked with people creating a useful product." Is that any different?
Comments
Honestly, I do agree that reinventing the wheel is rather meaningless and silly. But the problem is that other programmers and engineers don't. And I'm pretty sure there are some open-source Slack clones out there, so money isn't a motivation. People just want to work on reinventing the wheel. Hence, work that has to be done. I'm not going to dismiss people's hard work just because I find personally it worthless.
And no, I don't see problems ever being solved, simply because they just expand. I've worked on a couple of free open source projects, showed them off to people, and have got feedback from users of "Hey, it would be cool if [insert-feature-here]". And if I implement that feature, "Ah, thanks...oh, and add this feature too." More and more 'suggestions' pile up, which means more work.
You make assumptions about me that you probably shouldn't.
I think you are both right in different ways. For an engineer, the problem can always be solved in new and more efficient ways, as long as new techniques appear. But from a product design standpoint, the optimum is hit when the solution for all cases is automated into defaults and a minimum of configuration, and that leads to characteristically different products emerging to solve problems that are subsets of the old ones, rather than feature requests piling up forever.
After all, the point of the "application" is to enable a goal to be reached. We can engineer better pens, but that doesn't improve the quality of our writing; but a new tool like a typewriter or word processor does improve it by being more specific to the problem. Following the revolutionary improvement a logarithmic function takes hold; the newest Word only does a little more for most use cases than WordPerfect 5. So the next big leap would not be another word processor, but something that can automate away typing, like an AI-writer, or a cost lowering of other media that requires no typing, like voice and video capture.
I agree with this, but it's not really the point I'm making. I'm saying that the problem you're trying to solve matters. Most often people reinvent the wheel because they aren't trying to solve the problem wheels solve: they're just trying to make money, and if you're reinventing the wheel to make money you're no better than a cheap scammer. Your intentions might be better, because people think capitalism works, and that money means you must be solving a real problem, but that makes little difference to the people whose money you're taking while providing them no value.
I'm not sure that sentence makes any sense: if you find it worthless, that's a dismissal.
That said, the value might be value to them: understanding existing solutions to problems helps inform you for solving novel problems. Their product is worthless, but the experience they gained making it isn't.
Just because someone suggests something doesn't mean you have to or should do it. This is exactly what I'm talking about with making pointless changes: a lot of the changes people will suggest are pointless.
Okay, perhaps you'd rather I said: "I see no indication in what you're saying that you have ever worked with people creating a useful product." Is that any different?