Reputation
13,469
Next privilege 15,000 Rep.
Protect questions
Badges
6 32 75
Newest
 Nice Answer
Impact
~822k people reached

Jun
9
comment Advantage in being the first to copyleft a new algorithm?
Just to clarify, I intended my answer to specifically talk about ideas, algorithms, etc., because lots of people started talking about source code while the OP was asking about algorithms. If in doubt (and you should be), consult an IP lawyer.
Jun
8
awarded  Nice Answer
Jun
8
answered Advantage in being the first to copyleft a new algorithm?
Oct
17
comment Do you really have to do BDD/TDD in a test first manner?
TDD specifically means writing tests before code. If you don't like that, take it up with Kent Beck, who invented the term. Writing tests after your code might drive your code to some extent, but you can still trick yourself into believing you're driving your code design through tests when you're not. And it's harder to write those tests, because you often have to change untested code. Seen it too often to mention.
Sep
30
awarded  Explainer
Sep
11
awarded  Yearling
Aug
15
comment Method vs Function vs Procedure
foo.doSomething() closes over the foo variable. Any statement in doSomething can access foo through this or self, depending on your language. This is the very definition of "close over". Classes close over their member variables, therefore (ignoring "what is OO"), OO is sufficient. This is pretty well-known in the literature...
Aug
1
revised Why should I prefer composition over inheritance?
Minor spelling mistakes.
May
14
comment Do you really have to do BDD/TDD in a test first manner?
Feel free to substitute "test" with "behaviour". I haven't seen anything to convince me that, at heart, there's much difference between TDD and BDD. Focus, maybe. But the core idea? Not so much.
Mar
31
awarded  Great Answer
Feb
20
reviewed Approve ansi tag wiki excerpt
Jan
30
awarded  Nice Answer
Jan
24
awarded  Good Answer
Jan
19
reviewed Approve mvp tag wiki
Jan
19
reviewed Approve mvp tag wiki excerpt
Jan
18
comment Looking for Case Studies of How TDD Improved Quality and/or Speed of Development
@user1249 TDD doesn't say "write all the tests before writing any code". It says "write a single test that fails, and a single thing to make it pass; repeat as necessary". If you write all your tests first you lose the tight feedback loop between test and production code, which is one of the very reasons to use TDD in the first place.
Jan
8
comment What do you deliver in the first couple of iterations in Agile?
"Set up the delivery process" is much harder than people think.
Jan
3
reviewed No Action Needed Service Design approach - one generic operation, and its implications
Jan
3
reviewed No Action Needed Best way to notify the client in real time that their queue (e.g. SQS) job has finished?
Jan
3
comment What is the relation between clojure reducers and loop fusion
I'm not an expert here, but I think that the reducers library take the separation of concern a bit further. Clojure reducible maps to Haskell's Foldable, but as far as I can tell, the reducing function part doesn't have a direct analogue in Haskell.