9,267 reputation
63986
bio website
location
age
visits member for 3 years, 9 months
seen 5 hours ago

0x2B | ~0x2B


Mar
25
comment Is there a reason to have a bottom type in a programming language?
What is the difference between the type forall a . [a] and the type [a] in Haskell? Aren't type variables already universally quantified in Haskell type expressions?
Mar
25
reviewed Leave Open Testing a method that reads from standard input and outputs to standard output
Mar
25
reviewed Close With agile, what do when a user story doesn't get completed in an iteration?
Mar
25
awarded  Popular Question
Mar
21
awarded  Nice Answer
Mar
20
reviewed Close What is the best way to prove that in-code documentation is greater than extensive external documentation?
Mar
20
reviewed Close What's so bad about creative coding?
Mar
19
comment What is the best way to prove that in-code documentation is greater than extensive external documentation?
"External documentation tailored to the developer, who will never look at them, and will rather, look into the code": Depending on the context, developers who never look at the external documentation can be considered very bad developers (unless the documentation itself is very bad).
Mar
19
comment What is the best way to prove that in-code documentation is greater than extensive external documentation?
"Is there any published research by big companies that say external documentation is out dated and that in code comments are more efficient?": I do not think so because what is better really depends on the kind of project you are doing. There are projects in which coding is only 10% of effort and the rest is producing design, tests and documentation. So you are trying to prove something that, in general, does not hold.
Mar
17
reviewed Leave Open When and why to use Page.ResolveUrl
Mar
17
reviewed Leave Open When and how to do a release?
Mar
16
comment When should I stop programming / coding?
"One needs to evolve and move to the next phase after few years.": You can stop coding or you can move on to code more complex stuff. There are lots of challenging programming tasks for experienced programmers.
Mar
16
comment Why is it a bad practice to use underscores in names in Java?
Good points. On the other hand, if all the team working on a given project agrees, you can use your own convention. E.g., I use initial underscore for private members in Java, C++ and Python (Python has no private members but one can use underscore to mark members that are not meant to be used outside that class). As you pointed out, what's most important is to have a convention and use it consistently.
Mar
15
reviewed Leave Open Why applying functions using the pair “dot” notation can be a syntax error in Racket?
Mar
13
comment How to solve the Lava flow anti-pattern?
+1, also for citing the Dunning-Kruger effect. IMO one should apply the principle "If it ain't broke, don't fix it!" heavily. I think exploration of new technologies should be done in "new code". Old code can be changed if it does not work whereas changing old, working code is a mistake most of the times: we do not know how much work went into that code and how much implicit knowledge is hidden in it that makes it work properly. And here comes a new brilliant programmer that knows better, rewrites things and things stop working. I think a good programmer should be very conservative.
Mar
11
comment Is Functional Programming a viable alternative to dependency injection patterns?
See also the following question and its accepted answer: programmers.stackexchange.com/questions/171156/…
Mar
11
comment What skills are essential for professional programming that are not commonly taught in schools?
"My school never taught me how to solve problems": I went to school in the 90-ties and it was all about solving problems. On the other hand with had very little practice because "you can get it later anyway and school is more about high-level concepts" (I kind of agree with this approach). Anyway, it probably depends on the school.
Mar
10
comment How to determine whether two trees (not necessarily binary) are isomorphic
Just extend your algorithm to visit the two sequences of children and determine whether each two children at the same position are isomorphic. As an alternative, you can represent arbitrary trees using binary trees: use the right child as a pointer to the list of a node's siblings, and the left child as a pointer to the list of a node's children. In the second case, arbitrary-tree isomorphism is reduced to binary-tree isomorphism.
Mar
9
comment What programming language generates fewest hard-to-find bugs?
+1 For this definition "how large is the scope a bug can potentially influence". I had some very nasty bugs with dynamic languages where an object of the wrong data type got very far in the code (thanks to duck typing) before manifesting itself as a bug.
Mar
9
comment What programming language generates fewest hard-to-find bugs?
@Mark Pim: Back in the day I had the same experience with C versus Pascal: once a C program compiled, I had to spend quite some time debugging. Once a Pascal program finally compiled --- the compiler was much more picky --- the program often worked immediately.