24,294 reputation
239100
bio website
location Dallas, TX
age
visits member for 3 years, 10 months
seen yesterday

I've been programming since I was 15. I started with APL at the Hampshire College Summer Studies in Mathematics in 1974. At Carnegie-Mellon I learned FORTRAN, and ALGOL/W, and Pascal, did a lot of TOPS-20 assembly programming hacking the MM mail reader, a fair bit of TECO programming customizing the first versions of Emacs, and a bit of INTERLISP and SAIL. After graduating, I have worked in BLISS-36, a tiny bit of Cobol, a decade of C, lots of Perl and EMACS-LISP, C++, Ada, Tcl, C#, Java, Python, Ruby, JavaScript, and lately some Groovy.


Nov
7
comment Proper Model-View-_____ design
For modern single-page web applications, we are back to the classic MVC pattern on the client side.
Nov
6
comment How to detect subtle changes in a website?
Are you trying to test web content built in your organization, or to drive web pages that are completely out of your control?
Nov
6
reviewed Close how to traverse towards child node from parent node in n-ary tree?
Nov
5
comment How to avoid spaghetti code when I have a lot of conditions?
"Spaghetti code" means a tangle of control flow or state or dependencies, e.g. class A sets global X then calls B which sets Y which calls C which checks X and maybe sets Z and then calls back to class A... You just require a moderately complex boolean expression.
Nov
3
comment Do any notable C extensions include integer types that are independent of machine word size
Have you tested this?
Nov
2
comment Should a getter throw an exception if its object has invalid state?
@AgostinoX: classes that only permit certain methods to be called in certain states should be avoided, but if they cannot, then those methods should throw "IllegalStateException". It doesn't matter if those methods are "getters" or not.
Oct
29
comment Should one value simpler code over performance when returning multiple values?
Have you compiled this? It doesn't, you know. Maybe you want to eliminate the (for j...) loop? And you could just write return new String(arr).replaceAll("[^ab]", "")?
Oct
29
comment Improving the speed of coding in Fortran
Is there a reason you can't do this work in R or another mathematical system?
Oct
22
revised Should service layer catch all dao exceptions and wrap them as service exceptions?
added 60 characters in body
Oct
22
answered Should service layer catch all dao exceptions and wrap them as service exceptions?
Oct
20
comment Automatic source code generation — good idea or potential nightmare?
@Thomas: that doesn't work too well in Java, where the source file name has to match the class name and the entire class definition has to reside in that file.
Oct
19
comment What would be the return type of a cartesian product of a multiset
Seems obvious that you should return a Multiset of tuples.
Oct
18
revised What is the relationship between lambda calculus and programming languages?
added 3 characters in body
Oct
17
comment Is there any evidence that Intellisense reduces productivity?
@Panzercrisis: the fact that these files say nothing interesting, allowing them to be generated, but are still necessary in the source tree is a process smell.
Oct
17
comment How to make Doxygen documentation that helps in understanding the code?
Documentation generators suck because they add no value. Documentation should explain things. For that you need someone who understands them.
Oct
17
comment Is this function violating Single Resp Principle?
The function has a single responsibility -- to parse a particular data format.
Oct
17
answered Algorithm for tiling a surface with no adjacent tiles
Oct
17
answered Should I put the name of the method I'm testing in the Unit Test method's name/assert message?
Oct
16
comment Algorithm for tiling a surface with no adjacent tiles
What do you mean by "best results?" How large are these grids?
Oct
14
comment AOP concepts explained for the dummy
@PaulNathan: AOP is pretty simple in dynamic languages. A simple AOP framework can be created in an afternoon. In compiled languages like Java life is not so sweet.