Sunday, March 9, 2008

My New Toy -> Installing Ubuntu

I've chosen ubuntu for my new Mini Box M200. Why? Because I use it home and I had the livecd hanging around. I figure I can minify it once it's installed. Now, there's a few issues I ran into with getting this to work.

Here's my hardware:

- Minibox M200 with 50 GB Hard Drive and no other peripherals
- 4 GB USB Key
- System Running Ubuntu 7.10 already

Issues:
1) Creating a "Live USB" installation.
I followed the directions found here. These were the best out on the net for actually getting it to work.

2) Getting the M200 to boot off USB.
I had to go into the BIOS and do the following. Make the primary boot device be USB-ZIP. Why zip? no clue, but I found it off a forum. The second thing you have to do is turn on legacy USB support. Well, not sure if you have to, but it was recommended.

3) Fixing Master-boot record (I had GRUB installed on the USB stick from an earlier install)
To fix this I followed these directions. In ended up using a syslinux MBR instead of extlinux, but it works fined just the same. For me it was as simple as the following command: sudo cat mbr.bin >/dev/sdb.

Expect a post about when I actually configure this box to block all evil.

Saturday, March 8, 2008

Check Point Integrity Client -> EPIC FAIL

Not sure how many of you are using Check Point Integrity Client, but this firewall has single-handedly crippled my machine. It's amazing how unresponsive the program is in general.

Right-clicking on the taskbar icon takes between 1-10 minutes, LITERALLY. I'm not making this up. The I'm currently waiting for the GUI to pop up. If it happens while I'm writing this, I'll add it to the blog. It's amazing how slow it is. I'm not really sure what the hell it's doing. The worst part is when the GUI is up, (which just happened), it's also slow and unresponsive. It's doing something, but it just hangs every button click you do.

Not only that, somehow the firewall manages to block my router's configuration page. Not sure how it's doing that especially since I told it to trust IPs in my home network range. Oh well. At least my home computer is fun to use.

Friday, March 7, 2008

Eclipse Junit/Hyades Easter Egg?

So... if you're like me and want to Unit test your code, you begin to find interesting frameworks to do this.

Recently I've been ticked off at how lame Eclipse plugin testing was. That is, until I learned about hyades. Hyades does the OSGi magic for me, so I can have tests that execute within OSGi. Finally, I can write good unit tests that really test my app.



I stumbled across the following. If you're checking the javadocs for the junit.framework.TestSuite class and the static addTest method (Junit 3 I believe is what hyades uses), you'll notice the following pop-up in eclipse (3.4m4):

...As the moon sets over the early morning Merlin, Oregon mountains, our intrepid adventurers type...


Not sure if you found this, but I was highly amused.

Moral Compass

Today, I had a realization. I was complaining about a co-worker getting screwed over by another coworker at happy hour. My friend Charles says "Dude, that's just politics". On thinking about it, he's right.

"Dude, that's just politics" means, yes it's not very cool to be the guy being screwed, but it happens in this world. People are jerks, get over it. I figure he's right, I need to get used to people screwing each other over, I'm just going to try not to do it myself (if I can help it). There are times were you have to do your job, and there are times when you have the option not to screw someone over. Please don't be that guy that no one trusts.

The only thing "politics" does to a team of developers is demoralize them and destroy any kind of unity that might have existed. It's a very bad thing. Yes it exists in the world, and there's not much I can do to stop it. I just know I don't like it, and I hope not to propogate it myself.

Thursday, March 6, 2008

IE8 Passes Acid 2, but fails Benchmark

This is mildly amusing. IE8 beta was boasting that it could pass the Acid2 compliance test. This is apparantly true, although many users would say otherwise. Apparantly it's a "security" feature of IE, and you have to go to the correct website for the test to work (see the details here.

In other mildy amusing news, check out this benchmark. Apparantly, I should start trying to use Safari if I want real speed in my browser. However, looks like Firefox is good enough for my windows box.

Wednesday, March 5, 2008

My Latest Toy

I've just received my shipment of this. A really really sweet power-consumption-optimized computer the size of a Wii. I'm not really sure which one is bigger. It even ships with Windows Drivers (not that I plan on using windows). The funny thing is, the drivers come on a CD. The computer doesn't have a CD drive (probably due to space limitations).

The specs for my machine:


  • 120w 12v input DC Power Supply
  • J7F2WE1G5D Jetway Hybrid Mini-ITX Motherboard
  • Onboard 10/100 LAN
  • Onboard VGA, S-Video and RCA out
  • Onboard Sound (input/output)
  • 2 Front USB & 2 Back USB ports
  • Mouse & Keyboard PS/2 inputs
  • Wake on LAN OR USB device
  • 1.5 GHz Processor
  • 1 x Gigabit LAN expansion board
  • 40 GB PATA Hard Drive
  • 512MB DDR2 Memory


The plan is to throw this guy in front of my router and use it as an initial spam/virus/firewall/blocker for the house. That means ANYONE who uses and/or hacks my wireless router will be limited to what this box gives them (until they hack this box), which I plan to turn off SSH, HTTP, etc. Why? Because my monitor supports mutliple inputs and I have an extra keyboard/mouse. That and the additional security. Probably not needed, but hey why not.

The biggest question now is what OS to install. I use Ubuntu 7.10 at home, I'm a big fan of the Fedora Core series as well. However, I want something that I can "minify" the installation off, and something that's easily placeable on a USB stick (since it's my only access besides the existing hard-drive).

I'll probably have some more posts in the future about my success!

Ivy + Ant != Maven

This is a quick rant while i wait for Eclipse to stop hogging all my CPU power.

Recently I took a look into Ivy as an alternative to switching one project's entire build system to Maven. I figure, if it lets me do dependencies like Maven, then at least I can have maven/ant projects work together until we can convince everyone maven is a good idea.

I'd been using Maven so long for new projects (and by so long I mean literally only a few months), that I forgot how much work it was to write an ANT script. No convention, tons of documentation to read for each type of task... It was a pain. That and Ivy is overly complex. They don't really provide a "simple example" that lets you hook into an existing Maven repository. Ok, so they do have a nice build file example, but it is just that *VERY* simple. If, like me, you need to do something only moderately simple, you need to start reading through documentation.

It took me half-an-hour to realize that the "connector" to hook up to a Maven Repository was called "ibiblio". WTF! Ibiblio happened to be the biggest maven repository, but with things like Archiva, we have a company maven repo that just handles company-proprietary packages. I was attempting to hook ivy into this, the whole time thinking "If I was using Maven, I'd already be done".

I've seen a lot of abuse on maven for having bad documentation and being overly complicated. Yes, Maven has documentation sprawled over many different internet websites, and it's a very complicated, powerful piece of software. Don't tell me Ivy is any simpler. Sure it only handles dependencies, but it puts a lot of burden on the build-file. At least with Maven, I have a lot of convention-over-configuration I can simplify my life with. With ivy, it's not that easy. In fact, I spent *MUCH* less time learning maven and making build files. The majority of my time with maven was spent setting up "corporate infrastructure" (i.e. Archiva, Continuum & and a Company Master POM).

I'll admit, Ivy is impressive. It really looks to do an amazing job of managing dependencies, and if I ever had a really complicated need, i would use it. However, for my general needs, it's a little overkill. It's also not something I can inject into an existing app in 30 minutes or less (my usual amount of play time for anything).

Sometimes limitations can be freeing. At least with maven I don't have to think about what to name targets, where dependencies should be downloaded, etc.