2,219 reputation
1512
bio website
location Netherlands
age
visits member for 3 years, 11 months
seen yesterday

Jul
24
comment What's the difference between using RDFS/OWL versus XML?
Uninformative opinionated answer. Please show references to back-up these claims.
Jul
11
comment Should a server “be lenient” in what it accepts and “discard faulty input silently”?
A strongly disagree. unless it is user-entered input, always be strict on both input and output. What happens when your service needs to be re-implemented? Did you document all the possible date formats? You'll need to implement them all, since you don't want old clients to break. Please, use ISO 8601 for all machine generated date instances and periods: it is well specified and broadly available in libraries. By the way, what does 2011-01-02 really mean? The period of time from 00:00 the 2nd up to 00:00 on the 3rd? In what time-zone?
Jun
18
comment What are studies comparing programmer productivity in determined languages/environments?
These graphs merely illustrate two dimensions (code size and performance). It's easy to find many more relevant dimensions, such as maintainability, readability and availability of libraries, to name a few.
Jun
16
comment Passing class names or objects?
It's not necessarily bad design. However, it seems your switch statement should not return a class but an instance dealing with that class. But it is difficult to make assumptions without knowing the kind of behavior in your static methods. What do they do? What state do they modify?
Jun
14
comment Passing class names or objects?
By the way, if it doesn't, please say so. I can't become a good teacher without feedback :)
Jun
14
comment Passing class names or objects?
If you only have static methods, you are most likely abstracting at the wrong level. A static method is essentially a 'normal' method of the meta-class (the class of the class). But since you probably don't have a language in which you can express behavior of meta-classes, you should model the meta-class as a normal class instead and have it produce instances, just like you'd do with a factory pattern (you'd return factories with behavior that allows you to instantiate objects implementing an interface). Hope this makes sense to you.
Jun
14
answered Passing class names or objects?
Jun
14
answered Should you exercise TDD on prototype applications?
Jun
14
answered Overload or Optional Parameters
May
11
comment Dynamic typing across the whole technology stack - where to enforce data validity?
@tdammers I've seen some pretty large government data exchange projects here in the Netherlands where SOAP is extensively used, applying XML schema's totaling 10's of MB large. Yes, it is complicated, but it would be near impossible to prove any correctness in sth such as JSON. Writing validation for these structures would be near impossible without reinventing the wheel and creating a data validation language. I'm not stating XML schema or XML is readable, it is not. You should use graphical editors to help you interpret.
May
10
comment Dynamic typing across the whole technology stack - where to enforce data validity?
@tdammers I mentioned: "because of the reasons given". There are many facets of XML that make it complex: just have a look at the W3 XML specs. But namespaces (uniqueness) and typing (XML Schema), correctly applied, prevents clashing and allows you to prove correctness of certain algorithms, in turn making the interchange of messages by means of XML simpler (but not easier). Constraining state is not merely a technical issue for compilers, but also allows you to reduce complexity, prune states and prove correctness.
May
10
comment Dynamic typing across the whole technology stack - where to enforce data validity?
I disagree that XML is more complex because of the reasons you have given, except for attributes. XML is more difficult to learn, but namespaces eventually make things simpler. Marshalling (with XML schema) allows for automatic validation at the gate. There are parts of XML that are more complex, such as the built-in DTD, handling of character encoding and many other facets.
May
9
comment Can methods in an OOP language be considered as some kind of closure?
Writing that comment, I decided to buy the book at Amazon, since it is such a classic. Read the book at the university 12 years ago.
May
2
awarded  Yearling
May
1
comment Can methods in an OOP language be considered as some kind of closure?
If you find CLOS interesting, I suggest reading "The Art of the Meta-Object Protocol" (en.wikipedia.org/wiki/The_Art_of_the_Metaobject_Protocol). For me it was a definite eureka moment.
May
1
comment Should OO design, or database design, drive the coding of my @Entity classes?
The truth, as always, is really convoluted. Imagine a relation with eight entries and you select four of them with a separate query? Horrible overhead. Say, you have a 8000 entries and you select units of 1000 with separate queries? Perhaps worth doing? Anyways, thanks for asking the question, it got me into my thinking phase.
Apr
27
answered Domain-aware code text editors
Apr
26
answered Should OO design, or database design, drive the coding of my @Entity classes?
Apr
19
comment Interesting Topics in Comp. Sci. for New Students?
Mere mortals :)
Apr
16
comment Interesting Topics in Comp. Sci. for New Students?
Perhaps my answer was a bit harsh, although I still find myself in agreement with it. How I wish some of my professors would have connected the curriculum with history! But where do you start? At Al-Khwarizmi? Or with Ada Lovelace? Babbage? Perhaps operations research, like you said, and point out the mechanical artefacts. But, then again, real high-level programming started with Zuse, or should it be Lisp? Should we include Turing, Godel, Church? For this reason, and others, I find it more logical to start with the present and leave history for another class.