Archive for the ‘languages’ Category

Eric Meijer invented dumb.

Tuesday, November 27th, 2007

I just saw the funniest thing.

I’m watching this talk, by Eric Meijer, about Visual Basic.  During the talk, he keeps bringing up examples of where languages “stole” features from VB.  The first (and marginally less funny), is when he basically states that modules (i.e. collections of functions) were invented by Visual Basic. That’s right.

(more…)

why languages matter (or: why that guy doesn’t understand the meaning of “syntactic sugar”)

Friday, August 17th, 2007

I’ve been thinking more about one of my coworker’s many (strong) opinions, that programming languages are nothing more than syntax. I worry that we get too far taken by this argument, that we start to think of languages as the brand of hammer we use to pound the nail instead of the tools we use to solve the problem. Then again, languages are even more than the tools we use to solve the problem, they are the problem.

(more…)

LINQ’s query syntax was created to make me angry

Tuesday, July 31st, 2007

Before you big C# fellaters out there get all pissed off, let me start by saying how cool some of the new C# features are. For those of you who aren’t tuned in to the Microsoft Kool-Aid bandwagon, C# is becoming, well, more Lispy (by which I mean is getting language features that will let it sit at the Adult Table next Thanksgiving). Features that C#, along with some other languages (Java, I’m looking at you, you red-headed stepchild of programming languages), have been needing.

(more…)

stop crapping on C++

Thursday, June 28th, 2007

I happened upon this article, about the double-casting anti-pattern in C#, and I couldn’t help but notice the little pot-shots taken at C++ (and Delphi), to the point that people who exhibit use of this anti-pattern probably came from those weakly-typed languages.

(more…)

Swing has it backwards

Monday, April 2nd, 2007

One of the questions that I have been asked (and have asked myself) is why I’m even doing this project when Swing seems to give you a viable alternative. For example, for a JList, you can grab the ListModel and use it to register for event changes on the JList. At first, this all seems well and good, except for a really important issue: this is backwards.

(more…)

be careful of the hashCode()

Sunday, April 1st, 2007

Update:

As it turns out, I was (mostly) being a horse’s ass.  It was a bit difficult to find, but Java does provide a mechanism for getting the equivalent of Object.hashCode() on any given object (not in a general way, i.e. get the un-overridden behavior, but for this case specifically).  That method is System.identityHashCode().

One of the side-effects of the way Java is designed is that it is hard to identify an object. By this, I don’t mean identifying it by its apparent value, as in a List is the same as another list with the same stuff in the same order. What I mean is identifying an object as this object, not by its value, but by its physical existence in the whole program world thingamabobber. This usually isn’t too big of a problem, until you really start working with the collection framework’s HashMap.

(more…)

multiple inheritance or something like it

Sunday, March 25th, 2007

I’ve always felt slightly offended by the people who write off multiple inheritance in one fell swoop as being something akin to the fight against guns - it’s always misused, and there is no real useful purpose, so we might as well get rid of it in its entirety. There is a slight truth to the statement, as it applies to both guns and MI (the misuse, for example), but the conclusion is oh. so. wrong.

(more…)

noah = angry

Friday, March 23rd, 2007

Today’s little blog post comes in response to a guest article posted on The Daily WTF (which used to be What The Fuck, until the author became even more retarded than he usually is, and now it is The Daily Worse-Than-Failure). Feel free to read the original article before you continue on here, although there really isn’t anything specific you are going to learn from it: Guest Article: Our Dirty Little Secret - Worse Than Failure.

(more…)

observable collections and performance penalties

Sunday, February 25th, 2007

In thinking about observable collections, you come upon one basic performance penalty that is applicable to a much larger design paradigm, or at least one real (and defensible) penalty. This is the price of eventing, and in certain situations it can bloom somewhat quickly. I can only imagine that this and the complexities of choosing a good eventing system were the reasons why Java has no observable collections (as I wrote about here).

(more…)

java: 0, noah: -1

Friday, February 16th, 2007

I’ve always been of the opinion that Java was kinda ugly, kinda kludgey, but a decent general-purpose language. Like most, I felt that the large framework that comes standard with Java, together with the many developer tools written to help you write Java code, really outweighed any of the minor inherent language issues and implementation issues. Well, now I’ve changed my mind. I’ve decided that now, I really, really dislike Java. In fact, if it were possible, I would piss on Java and set it on fire (is that possible? does urine burn? is that a hate crime?). I’ve just had enough.

(more…)


Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 2.5 License.