Archive for June, 2005

Site Updated (I got hacked) This site is vurlnerable to XMLRPC exploit

I got hacked by the nicest hacker. I have left the message the hacker left for me on my site below (in the blockquote). Now who says all hackers are evil?

If you are running WordPress 1.5 you need to upgrade to version 1.5.1.3 immediately. See the link below for more information.

Sorry to deface this.

I love Song Hye Kyo :)

and all Xavepa 2000 ^_^

You have nice site anyway
Please upgrade to WP 1.5.1.3

Here is the security info

Whoever you are who hacked my site, thank you for the warning.

O’Reilly: Building My MythTV Box, Part 1: Hardware

O’Reilly has an intersting little article entitled Building My MythTV Box, Part 1: Hardware. Personally, this is something that I would like to do as soon as I have the money to buy all the parts.

Before I could get MythTV running, I needed a computer. By temperament and experience, I am a software hacker. If something fails, you reinstall and start over. With hardware, though, you are stuck with your mistake until you pay money to correct it. After a great deal of research, I decided on the following parts:

Eclipse 3.1 Released

Eclipse 3.1 was released today and the download site and mirrors are being hammered, so don’t even think of trying to download the thing. I downloaded it at work this afternoon (only took about an hour on a high speed line) and gave it a very trivial test run. It has a nice new icon and splash screen and the look and feel has changed a little bit as well (this is on Windows). Overall it seems to be a little more responsive, but I have nothing to back that statement up with.

Relative File IO

One problem with file IO inside of Java is that it depends on absolute file paths to be specified. This can cause a problem when trying to read files while inside a J2EE container for instance. However, there is a better way of reading files that allows you to move files without breaking any code. Try the following:

try {
  InputStream in =
      this.getClass().getResourceAsStream("testFile.txt");
  BufferedReader bReader =
      new BufferedReader(new InputStreamReader(in));

  String line = bReader.readLine();

  while (line != null) {
    System.out.println(line);
    line = bReader.readLine();
  }
}
catch (Exception e) {
  e.printStackTrace();
}

By using the getResourceAsStream method, it will search for the given file within the classpath of your application. This allows you to drop the files anywhere within that classpath and the file will still be read.

In order to test this, I set the above code up as a project in NetBeans, created the testFile.txt file and ran the program. The above code finds the file and simply prints it out to the screen. I then moved the file within the package structure and it continued to work.

Trails tutorial

RAD That Ain’t Bad: Domain-Driven Development with Trails

By now, there is a good chance you have at least heard of Ruby on Rails. For those who haven’t, Rails is a framework using the Ruby language that allows one to create database-driven web applications in a fraction of the time it would normally take. I’m not going to cover Rails in this article, as Curt Hibbs has already done a masterful job in “Rolling on Rails.” Instead, this article will focus on how we can do Rails-esque “rapid application development the right way” in Java.

Mad Penguin dot org : The Sonos Digital Music System

Mad Penguin dot org has a 5 page review of the Sonos Digital Music System. This just sound incredibly cool.

In a nutshell, the Sonos DMS is a series of Linux-powered wirelessly networked amplifiers on steroids (called Sonos ZP100 ZonePlayers) controlled by a Linux-powered hand-held device (called the Sonos CR100 Controller) that looks like an large iPod. A software package called the Sonos Desktop Controller sits on your Windows or Mac computer and helps the handheld Sonos CR100 Controller talk to the your Window or Mac box. Linux customers use their familiar GNOME or KDE tools to do the work that the Sonos Desktop Controller software would do on Windows or Mac. The idea behind the Sonos DMS is that you the consumer should be able to have one device that will allows you to play any music of your choice seamlessly in any room in your house, even if you are two floors and five rooms away from the room where you want to switch from the Rolling Stones to the Motown.

To busy, no time to post

Work has been just nuts lately and by the time I get home I am too tired to post. This is probably not a good sign. One thing I wonder about is how shops that do Agile development and in particular XP do it. How do you so the sustainable development pace part of it? For me, it seems like it is either all or nothing. You are either doing absolutely nothing or you are trying to do everything all at once. There does not seem to be any middle ground.

And the worst part of it is that I am not playing with anything new anymore. Just rehashing old code and trying to figure out how to fit it into new requirements. Other people are the ones playing with Hibernate, Sun App Server, and other technologies.

Still, I need to slow down a little bit and find time to play with new things so that I have something to post. Otherwise, if I try to keep this pace up I am going to burn myself out.

Next Page »