Bloat!

Interesting commentary over at InfoQ in regard to keeping the line-of-code count low.  It’s based on a  Steve Yegge post in regard to his 500-LoC-Game that he now considers unmanagable.

I disagree with his idea that fewer LoCes are preferrable to Design Patterns – at least, this statement cannot be generalized.  But I agree with the basic idea.

I actually see the problem he addresses as much in Knowledge Management as in Programming.  Many businesses have huge problems organizing their knowledge, and the data in question is mainly unstructured.  Something to think about…

Treffen mit James Gosling

"It’s just a Bag of Code"

Bezeichnung von Android und die Antwort auf die Frage, wie die strategische Zusammenarbeit zwischen Google und Sun aussieht. Überhaupt war die Antwort recht zynisch. Laut James haben Google und Sun seit zwei Jahren miteinander gesprochen, aber jedes Geschäftsmodell von Google beinhaltete eine Übernahme von Sun’s Kunden. Er bezeichnete Google abfällig als "advertising agency".

"It involves other people’s patent lawyers"

Antwort auf die Frage, warum Sun mit JAM das Rad neu erfindet, statt auf OSGI zuzugreifen.

"Powerpoint has a broken Workflow"

Kommentar zum Thema OpenOffice vs. Microsoft Office. Sun wurde kritisiert, die OpenOffice-Plattform zu vernachlässigen.

"Linux on Phones is a Device Driver Framework"

Antwort auf die Frage, ob es ein Java-Betriebssystem geben wird. James antwortete, dass es zum einen solche Ansätze schon gegeben hat. Er sieht da aber kein großes Potential, weil der Aufwand, Treiber zu programmieren, einfach viel zu groß ist. Die eigentliche Frage ist, wie viel von dem unterliegenden Betriebssystem noch für den Nutzer sichtbar ist – und bei Linux auf Handys wird das so gut wie gar nicht sein.

"Vista crippled OpenGL"

Das sind keine Neuigkeiten aber der Grund, warum Java 7 unter Vista so langsam ist. Auch bei Apple ist das Problem ein ähnliches, da es dort eine eigene OpenGL Implementation gibt, die Sun Schwierigkeiten macht. Da viele Teile von Apples Graphics-Subsystem proprietär sind, muss Sun auf Apple warten und kann die Arbeit der Anpassung nicht selbst machen.

"I don’t know how to answer politely"

Antwort auf die Frage, ob Swing und SWT komplementär sind oder konkurrieren. Laut James war IBM an der Entwicklung von Swing beteiligt, machte dann aber plötzlich eine 180-Grad-Wendung und erschien mit SWT. Laut James haben AWT und SWT die selbe, schlechte Architektur (was ich bezweifle, aber mal nachforschen werde). Die Konsequenz: SWT läuft gut unter Windows und überall sonst ziemlich schlecht. Laut James hat SWT genau die selben Probleme wie AWT. Nun ja, was Performance betrifft, ist das sicher nicht der Fall.

"You have given us not having to learn Visual Basic"

Danksagung eines Teilnehmers an James.

What is wrong with Xing?

I do use Xing, but I refuse to pay for it.  I don’t like their business practices, and I think their service is overpriced.  In fact, I only use it to announce events of the Düsseldorf Java User Group.  I used linkedIn in America, and I liked it much better and the free / paid for services much more balanced.  Furthermore, I wouldn’t mind using an ad-supported service that is cheaper / free instead.  Am I alone?  Obviously not: The Financial Times points out that only 8.1% of the users pay.

Keyword substitution – good or bad?

I have a problem: I want to do Subversion Keyword substitution on Office Documents.  But enabling it breaks them (of course!).  When I was scanning the web for solutions, I encountered this Blog Entry arguing against keyword substitution in the first place.

I don’t agree: While the author is right that this can be a nuciance when processing diffs and having to redo builds, there are many cases where it can be really useful: Specifically, as soon as a file leaves the context of repository it becomes really valuable.  If you email a file, for instance.

Bottom line: Keyword substitution shouldn’t be enabled by default on the whole repository.  But if enabled selectively, following a good policy, it’s a useful feature in the toolbox.

Coderichtlinien – gut oder schlecht?

Neulich beim Java Stammtisch in Düsseldorf diskutierten wir, ob Coderichtlinien gut oder schlecht sind. Stefan Tilkov ist dafür – wenn man den gesunden Menschenverstand beachtet. Dem stimme ich zu, und ein gut konfiguriertes Checkstyle kann dabei enorm hilfreich sein.

Allerdings waren nicht alle Teilnehmer des Stammtisches dieser Meinung. Ein Anwesender vertrat die Ansicht, dass Stil irrelevant ist, denn mit einer guten IDE kann man jeden Code navigieren und mit ein paar Klicks auto-formatieren.

Dem stimme ich nicht zu. Ein konsistenter Stil bringt wesentlich mehr als nur Formatierung: Oft wirkt er sich auch auf Dokumentation, Pattern, etc. aus. Aber einen Punkt finde ich noch viel wichtiger: Wenn der Code eingecheckt wird, möchte ich wissen, was sich geändert hat. Da kein Diff-Werkzeug die Semantik versteht, kann es nach einer Auto-Formatierung so aussehen, als hätte sich der gesamte Code geändert, obwohl sich vielleicht überhaupt nichts geändert hat.

Web Site Redesign is complete

Finally I got to redesigning my web site. I was really unhappy with it: What I had the last few years was okay, with a hand-build Blogging System. But then I did an half-ass switch to Serendipity that I never completed, and when I was job-hunting in Germany I did another redesign to make the site look more professional (which didn’t really succeed). So finally, here is the new look. I hope you like it.