Wednesday, February 25, 2009

Short IntelliJ Java IDE review

Slow and unintuitive (I don't want to build my own keymap file for the millionth application.  I stopped doing that for other programs about 6 years ago when they all standardized on what keys do what).

Everybody who says it is better than eclipse is a liar.  Save your money.

Wednesday, February 18, 2009

Short Aspose.Slides for Java review

I like Aspose. It's moderately powerful. There's nothing that really competes with it for generating MS Office documents accurately in custom code. My problem is that the API is too rigidly tied to the file format. For example, all my Shapes that I'm editing in a powerpoint template are just boxes of text. To edit the text, I have to call shape.getTextFrame().setText(). (this will look much nicer in .NET code since you can omit all the get/set stuff that java forces on
you) But if I do edit my text that I destroy the font attributes (color, height, which font) that were in my template. So, in order to preserve my font, I need to call shape.getTextFrame().getParagraphs().get(0).getPortions().get(0).setText(). That's not intuitive default behavior. Aspose is great, I just wish the would engineer the API to make things a little easier on programmers. One more little example is that you have to get and set all font attributes individually even though there's a container class in the API called FontEntity. I don't doubt that they're going to fix that in a later version though.

Also, it's stupid that they don't include JAI or put a link to it on their download page since it's a required library.

Update: The java version is maybe half as good as the .NET version. You can't convert excel charts to images, the collections don't implement the java.util.Collection interface and it seems to be crippled in general by their support for Java 1.4. Also, searching the forums for help on java stuff instead of .net stuff is a pain in the butt. Plus, since they put the words .NET and Java and links to all of their products on every page you can't effectively search the forum with google or msn.

Monday, February 16, 2009


I really wonder what people hear when I say "What's going on?" that makes them almost all respond with a consistent "All right."

Friday, February 13, 2009

Rejected Senryu

The leaders slow
Progress in hindsight
Leads towards the past.

The task at hand
was pointless and hard.
O what a challenge

Thursday, February 12, 2009

Goals for a few Months

In no real order

1. Master Aspose
2. Run a full marathon (next goal, qualify for Boston)
3. Increase size to 200lbs while keeping body fat below 10%.  Also, do 30 pullups in one go and also be able to do 10 hand stand pushups.
4. Run a mile in 5:30 again.  (immediate followup goals: run two miles in a row at that pace, then three, then five)
5. Record a complete song with guitar, bass, and vocals.
6. Teach daughter to sing
7. Get wife to run a 5k
8. Plant another garden this year.
9. Build any electronics project.
10. Visit Buffalo and Seattle.

Tuesday, February 10, 2009

Extremely Old IE6 IFrame Hack Alternative

I never saw anybody else do the ie6 iframe hack this way (using insertAdjacentHTML) and it always seemed simpler to me because you can skip the positioning step if you're not doing overly crazy CSS.  I found my extremely old menu code today and still feel like it's worth sharing.
Here, show_obj is your DOM element that you want to show above select dropdowns."_shim";
show_obj.insertAdjacentHTML("afterBegin","<iframe scrolling=no id='"+frameid+"' style='position:absolute; top:0; left:0; display:hidden;' src='javascript:document.write(&nbsp);'>&nbsp;</iframe>");
wobj = document.getElementById(frameid).style;
wobj.zIndex = -1;
wobj.width = show_obj.offsetWidth;
wobj.height = show_obj.offsetHeight;
wobj.display = 'block';

Then when you hide your element you can just delete the frame ( document.getElementById(frameid).removeNode(true); ).  Sure it's javascript that only works in IE, but it's fixing an IE bug, so no big deal.

Or just using the jQuery bgiframe plugin.

Monday, February 09, 2009

How Not to Run a Race

Dear Cherry Blossom 10 Mile Race Organizers,
When you say it's a $10 fee to transfer registrations to other runners, you're lying.  I was charged $12.50 and the person who gave me their slot was charged $10 too.  I understand that it's for charity, but I'm not going to run your race again, because I feel that you're being deceitful.  Also, I'm still miffed that you guys can't run a web server capable of handling the high load when web registration opens.  Maybe you'd be better off not having the race and just sending fund raisers to the Cherry Blossom festival or parade.  Because now you just seem like tightwads.
Peace, M

Wednesday, February 04, 2009

High on Potential

If enough good things happen close enough together, I feel like I'm running so fast that my feet are barely touching down and it's hard to get enough traction to speed up any more.  That is something that I actually used to do when I was little.  It is probably the greatest feeling in the world.