Google Gears, the app that would’ve been a godsent – ten years ago
In case anyone accuses me of not getting the idea of Google Gears, let me say this: I don't get the whole Idea of google gears. I mean come on, it caches your javasript and html for offline use in a fashionable way and enables you to enter some input to your app which is later synchronized when you reconnect to the web. All right, this will certainly make things like playing ajax Tetris a whole lot easier. The weblogs are abuzz about how google gears is better than the second coming.
But wait...do you spot the error? Wasn't Ajax meant to do some significant computing on the server side? Wasn't the whole promise of Ajax, that you'd get some meaningful data from a remote server in a quick, painless way?
Right. What Gears accomplishes is nothing like that (how could they, it's technically impossible). Of course, you would be able to edit your spreadsheets and word processors but these have been around for offline use since the advent of personal computing. In other words: Google Gears will make it easier for developers that feel comfortable in that niche that is Ajax desktop computing.
But they do this in a way that is downright scary. Instead of keeping it simple, they add this enormous complex layer of technology between your browser and the actual server. God knows how any sane developer is going to be able to debug the mess this will likely create in all those bug scenarios. Additionally, webapp developers need to comply with some design principles of Gears to make their apps "Gears ready".
To make a long rant short: I know there are a lot of people out there, who desperately wish for a network computer - and so they hack away on applications that use ajax locally and eventually they can synchronize their data to the server. It's a nice toy for a computer hacker, but I think by the time something as complex as this will be usable by Mom and Dad, ubiquitous WLAN will be a reality and the need to use these frameworks will have disappeared. But let's wait and see if anyone can come up with some kind of killer app, that turns it all around ...I highly doubt it.
Pain is the cost of Spring MVC’s elegance
I'm surprised about how far Spring has come without ever adressing simple everyday problems. If you really, honestly want to use Spring for your application all the way through, be prepared for some good shockers. Want some spring oddities?
Spring MVC and the <welcome-file> directive
If you use Spring's awesome MVC framework you will likely encounter one problem that is common among Web frameworks. If the first page you want to open is a jsp page with a Controller - i.e. a page where some java code is executed to prepare data for the invoked jsp...there seems to be no traditional way to do it.
Say you want to be able to access the url http://server.com/ to your servlet container that's just a directory. It will list the direcoty (if listig is enabled) or just show you a blank page. That is, unless you have defined a <welcome-file> directive in your web.xml which looks for a particular file to load in this case. But this is exactly the problem.
Assume you have defined the following:
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
And the index.html is the formView of, let's say a SimpleFormController.
Now what your container will do upon a request to its root context is this. It will look for a file in your filesystem called index.html and try to deliver it. Of course your index.html is not really a file, it's just mapped by, for example, a SimpleUrlHandlerMapping. Game over for the Server. It will not deliver what you expect.
Unfortunately there is no universal way of telling the container to take a look into the Spring context for the url. There is not even a possibility in web.xml to do simple forwards to other urls for the <welcome-file/>.
Instead the solution that seemed most practical to me was, to create a jsp as the <welcome-file>, save it as index.jsp and insert the following code:
<jsp:forward page="index.html" />
I assume that you chose *.html as your url-pattern for the DispatcherServlet here.
Download sources of dependencies with maven
Maven is an amazing piece of software, despite all the criticism it has endured it is fascinating to me. However there is one short line that has made life so much easier for me:
mvn -Declipse.downloadSources=true
This tells maven to download all associated sources of jar files in the pom.xml. Amazing, how much easier it is to set up a project with proper debugging sources etc. There is even a cool eclipse integration available over at codehaus.org.
How to migrate from drupal to wordpress (and clean up all the nasty leftovers)
So, after three years of Drupal, I finally got rid of it. By the last version of Drupal (it was version 5.1) there was just too much stuff in there I didn’t need and lots of features missing that make up a first class blog management system or BMS (*omg* I so created a new word!!! – oh wait, someone came up with that already, whatever). I wanted to change to WordPress. Let me show you how I did it…
Eclipse WTP and Tomcat Tutorial
If you are not interested in all the technical details of Servlet development in eclipse and tomcat, and you just want a quick introduction on how to install an Eclipse based Web development environment with all the bells and whistles and create a quick Servlet, then this screencast is for you.
Actually i just wanted to play around with Wink, which is totally awesome. Maybe I will create a more sophisticated version of this tutorial later. Sorry for the messy audio and some content glitches, but I'm sure it will be helpful to some people anyways.
keyboardsamurais.de migrated from drupal to wordpress
...and I have to say it was a tough ride. First off I'd like to mention to all MySQL developers that I hate their guts for setting swedish character sets and collations as default in the new MySQL 4.1 (well actually I don't, just some tough love here guys
). As a result some of the old articles may contain strange characters. Most of the comments are gone and my urls that are registered with google are seriously broken.
Anyways I found these Articles to be helpful with the transition:
http://www.thefactz.org/archives/62
http://spindrop.us/2006/05/19/migrating-from-drupal-47-to-wordpress
As for the reason why I switched? Drupal was at the same time too big and too small. It just doesn't work that well as a blogging tool. It's more of a CMS thing. Also, the Drupal API is just daunting. Good luck figuring out a quick hack for drupal on the fly.
P.s.: I spent most of the day fixing the broken links. Now I'm left with 388 mod_rewrite rules - hopefully that will be enough. Sheesh - what a mess this is. First MovableType, then Drupal and now WordPress - all have different urls. This was some major piece of work.
Arcor Webbill Reader v0.2
Okay, okay ich habs am Wochenende nicht geschaft so viel hinzubekommen wie ich mir vorgenommen hatte. Dafür gibts heute eine neue Release des Arcor Webbill Readers.
Da ich über Andrejs Qualen mit dem Eclipse Visual editor gelesen habe, dachte ich mir, ich muss das gute Stück auch mal ausprobieren. Heraus kam dabei die GUI Version vom Webbill Reader. Er liest wie sein Vorgänger die CSV Dateien des Arcor Webbill Frontends ein und präsentiert die Kosten getrennt nach MSN. Jedoch wird als zusätzliche Info nun auch angegeben in welches Netz man am meisten telefoniert hat. Ganz sinnvoll, wenn man seine Telefontarife feintunen möchte
Starten kann man ihn mittels der Kommandozeile java -jar webbill.jar [csvfile] der Sourcecode liegt natürlich bei und unterliegt der GPL.

P.S.: Den Visual Editor fand ich zwar auch viel zu langsam und den code nicht besonders schön, aber gemessen an den Visual Editors die ich sonst so kenne, fand ich ihn gar nicht so übel.
Auf dem Weg zur Künstlichen Intelligenz – ein Interview mit Serhat Çinar
Serhat Çinar ist Student der allgemeinen Informatik an der Fachhochschule Köln. Während seines Studiums sorgte er unter seinen Kommilitonen immer wieder für Erstaunen, wenn er beispielsweise innerhalb weniger Tage "nur um den Prozessor besser zu verstehen" einen lauffähigen Mikroprozessor Emulator in Java implementierte. Später legte er seinen Schwerpunkt auf die Erforschung von neuronalen Netzen. Er ist einer der begabtesten Informatiker, die mir bislang begegnet sind. Außerdem ist er Musiker, Autor einiger Kurzgeschichten und generelles Kreativtalent.
Arcor Webbill tool
Da ich im letzten Monat der Telekom entsagte und zu Arcor wechselte, komme ich nun endlich auch mal in den Genuss eines fortschrittlichen Rechnungssystems. Die Rede ist von Arcors Webbill. Diese lässt einen nämlich nicht nur schon während des laufenden Monats einen Blick auf die kommende Rechnung werfen, sondern bietet auch noch eine Menge Zusatzfeatures. Beispielsweise den Download der Rechnungsdaten per CSV. Da an meinem Anschluss drei Personen hängen, die jeweils eine eigene Nummer benutzen, wollte ich nun die CSV Daten in Excel sortieren um rauszufinden, was wer vertelefoniert hat. Eine mühsame Aufgabe, grade wenn man kein Excel Fan ist. Nun gut, also Eclipse hochgefahren und in 20 Minuten ein kleines Programm geschrieben:
Das Programm erfordert ein JDK >= 1.5 zum kompilieren (zum ausführen des kompilierten Programmes müsste eigentlich ein 1.4er JDK reichen).
Es wird mittels
java WebBillReader Rechnung.csv
aufgerufen und erzeugt Ausgaben der Form:
Number 0815 1234567 has a bill of: 25.7624u20AC Number 0815 7456321 has a bill of: 15.6254u20AC Number 0815 1982734 has a bill of: 0.0388u20AC Total: 41.4266u20AC
Liest also die MSN-Anschlüsse und deren Verbrauch aus und stellt ihn inklusive der Mehrwertsteuer dar.
Viel Spaß damit.