141 reputation
2
bio website
location
age
visits member for 2 years, 9 months
seen Jan 30 at 15:49

Jan
30
answered What is the value in hiding the details through abstractions? Isn't there value in transparency?
Jan
3
comment Has any language become greatly popular for something other than its intended purpose?
postscript - is ubiquitous (in almost every computer and printer), but only used for printing graphics. Although, one could argue that it was repurposed when used within pdf's.
Nov
30
comment What is the difference between requirements and specifications?
[explaining why two comments]: SO comments are such a pain - hitting "return" will submit the comment, even though it's a multi-line textarea. And if you take more than 5 minutes to finish it after that, it won't accept the edit. So you have to submit it as a second comment. I was editing only to make it fit in the length. sigh. Next time I'll just it over spread two comments in the first place... [anyway, I agree that the point of view - buyer/vendor - is the main distinction. I am troubled by your terminology, but I think it deepens my understanding to try to articulate why.]
Nov
30
comment What is the difference between requirements and specifications?
I can see customers "seeking a product", when there is an established product category - but they seek it as a solution to a problem/need they have. Vendors do market their products as "solutions" - because they're communicating to customers (who have problems requiring solutions). When building the product (the thing itself and its features, not why they are building them). One argument is that a problem can have very different solutions - but a product is one specific thing.
Nov
30
comment What is the difference between requirements and specifications?
interesting. I can see customers "seeking a product", when there is an established product category. But they seek that product because they've already worked out that it will solve their problem - i.e. they seek that product, not for its own sake, but as a solution. It's also true that a vendor does market their product as a "solution" - but that's because they're trying to communicate to customers (who seek solutions to their problems), and build something that will be wanted. Actually building the product (that is, the thing itself and its features independent of why they are needed)
Nov
29
comment What is the difference between requirements and specifications?
The what/how sound-bite is right, sort of; but confusing, because you can also look at the specification for a program as describing what it should do, and the design being how it should do it. Another is declarative pl (like prolog and SQL), in which you state the what not the how. One resolution is that they are a hierarchical of abstractions, with a parent stating what and children stating how (outside vs inside). I much prefer your second view, which is closer to "what it's for" vs. "what it is" i.e. benefit vs. feature.
Nov
29
comment What is the difference between requirements and specifications?
I would swap the terms "product" and "solution", because a solution is usually in terms of the customer's problem, whereas a product is usually in terms of the seller (i.e. the technical implementer). A similar contrast is benefit/feature, where benefit is in customer terms (what use is it to them), and feature is in implementation terms (what actually is it, so we can make it).
Sep
21
comment What should take precedence: YAGNI or Good Design?
@KeithS: It seems John Carmack did something similar: "source code of Quake II ... unify Quake 1, Quake World and QuakeGL into one beautiful code architecture." fabiensanglard.net/quake2/index.php
Sep
19
comment What should take precedence: YAGNI or Good Design?
Yes. When I used to design-for-reuse/extension upfront, I'd find that when I wanted to reuse or extend it, it would be in a different way than I had anticipated. Prediction is hard, especially concerning the future. So I support your 3-strikes rule - by that time, you have a reasonable idea of how it will be reused/extended. NB: an exception is if you already know how it will be (e.g. from previous projects, domain knowledge, or already specified).
Sep
19
awarded  Teacher
Sep
19
awarded  Supporter