4 ms·
I'm not really passing judgement on the project itself, or its validity, and I think it's cool. I'm perfectly fine with someone saying "I over-engineered this"
by whstl 1mo ago
I'm not really passing judgement on the project itself, or its validity, and I think it's cool. I'm perfectly fine with someone saying "I over-engineered this" or "I hand made this". I do this all the time myself...
I'm just pointing out that "it's in the [my own] requirements" in this case does not really make something "not over engineered".
- HelloMcFly 1mo agoIs building a bookshelf with adjustable shelves is "over-engineered" because a single fixed plank would hold books just as well? Who gets to be the arbiter on which requirements are the "real" requirements?
- whstl 1mo agoIt should be considered fair to say that some things are over-engineered in relation to others. This is a matter of (hopefully informed) opinion after all. Also opinions will change after time, or after analyzing the problem space better. GP also said that lots of product in the market are over-engineered, so I don't see why my view (that this is an over-engineered doorbell) is controversial at all.
- streetfighter64 1mo agoIt's controversial because your definition of "over-engineered" is different from most other people's understanding of the term. Most people would take it to mean "using more complex systems than needed to achieve a given outcome", while you are defining it more like "using any system at all to achieve an outcome that I consider unnecessary". The former definition is somewhat objective in that it can be tested and proven, while the latter definition is entirely subjective and sort of meaningless. I could just as well state that any doorbell is over-engineered since you can just knock. > GP: The minimum of 5+x^2 is closer to 5.5 than 10 > You: If you were minimizing 3+x^2 you could get an even lower value
- whstl 1mo agoI am not saying every product has to be the absolute minimum, that's an absurdist interpretation of what I mean. I am saying that people can call something "overengineered" and "it was the requirement" is not a defence. Maybe what I mean is: Feature creep does contribute to overengineering. That's not controversial in the engineering community at all.
- Dylan16807 1mo ago> I am not saying every product has to be the absolute minimum, that's an absurdist interpretation of what I mean. > I am saying that people can call something "overengineered" and "it was the requirement" is not a defence. Okay, so you're not saying to reject all above-minimum features, but then there seems to be no objective criteria, so who is deciding which ones to reject? Why is it not the customer? And it's not a does-nothing feature either, it has a meaningful impact on the user. > Maybe what I mean is: Feature creep does contribute to overengineering. That's not controversial in the engineering community at all. A requirement from the start, the baseline of the product pitch, is the opposite of feature creep.
- whstl 1mo agoYou can have any features you want, but people get to call it over-engineering if they say so, and "it's in the requirements" is not a shield against it.
- Dylan16807 1mo agoIn the sense that people don't have to be right they can call anything over-engineering. But it helps to have somewhat objective criteria, like whether it was feature creep. And this was not feature creep. And custom sound for something like this is a desirable feature for the average person; you can look at the massive ringtone business in the 00s to prove that.
- whstl 1mo ago
- dxdm 1mo agoWhere would you draw the line for a sufficiently simple implementation of sufficiently simple requirements? A door knocker? A door?
- whstl 1mo agoI don't think there should be a line. But it should be considered fair to say that some things are over-engineered in relation to others. It should also be considered ok to call things over-engineered. OP himself did.
- dxdm 1mo agoOf course you can call things over engineered, but seem to want to include questioning the requirements, specifically also those of the example we're talking about. Once you start that, you also need to stop somewhere. For example, we could even question the need for a door in the first place. Not saying that we should, but if you want to take over defining other people's requirements, you're putting this on yourself. So if you don't want somebody else to call you out for over engineering somebody else's requirements, where do you stop? It's not an enviable position to be in. :)
- whstl 1mo agoI am just saying over and over that the over-engineering part itself can come from a "requirement", which seems to be the contentious position here. Some other people mentioned the doorbell project was over-engineering and I just agreed with them.
- dxdm 1mo agoI agree that requirements need to be kept in check to avoid over engineering. However, I think it's hard to decide for other people far away what their requirements ought to be. So I don't agree that you can call mrb's basic wireless doorbell "overengineered" for requirements reasons alone without opening yourself up to the same scrutiny that you're applying to him.
- close04 1mo ago> I'm just pointing out that "it's in the [my own] requirements" in this case does not really make something "not over engineered". You point that out without providing any context or criteria. So you're just pointing out your personal opinion, nothing resembling fact. In this case everything is over engineered. The doorbell is overengineered before even discussing mp3.