Friday, May 25, 2007

Winner

Yesterday I really established how much of a winner I am when I came to work with my shirt accidentally turned inside out. When someone told me right before lunch after I had gone to a couple meetings, I was feeling pretty good about myself, I must say.

In other news, for some reason IDEA, which I spend at least 3/4 of my day in, has a modal dialog for the Subversion diff dialog. That is incredibly annoying when I'm trying to look at two diffs, especially when it would take a one line fix to change it. Dah! So annoying!

Wednesday, May 23, 2007

In continuing this week's tradition of posting random links, here's my links for the day related to O/R mapping:

Vietnam of Computer Science
More on that
One possible solution

Completely unrelated is this performance comparison of JBossCache and Terracotta.

I would comment on these articles, but at the moment time is lacking...

It would seem as if this blog is becoming more of a browser favorites storage engine than anything...oh well.

Tuesday, May 22, 2007

Snap

Oh snap: this should be good.

Monday, May 21, 2007

Good article on the near future of Java.

Friday, May 18, 2007

Random Friday Thoughts

This new look is much better. Mucch better. Anyways: here's a good post about why JavaSpaces isn't as big as it could be.

I went to a presentation on JGroups today. The presentation was an hour long but had about five minutes of actual code, which on the one hand implies that JGroups is easy to use, but on the other side implies that the presentation was boring because the presenter didn't talk about the actual JGroups code very much (which I think was his intention but I was still disappointed).

I've been spending some spare time (always wish there was more of that, sigh...) looking at distributed computing/algorithms and trying to figure out a fun project to work on that would be more than just a toy program. I'm looking to write something that requires using technologies I haven't been exposed to much but are pretty popular such as Spring, JGroups, and Flex/Apollo. A few ideas have been distributed build system, CRM app, or some sort of distributed simulation system. The problem is my attention span is so short for spare time projects that I move on to new things before I can actually accomplish anything significant. Oh well, we'll see what happens this time.

On a completely unrelated note, this is pretty hilarious.

Monday, May 14, 2007

"Well excuuuuse me for having enormous flaws that I don't work on!" - Homer Simpson, from that episode where he pimps his milk truck and Marge builds popsicle stick people. Now that 's just funny. The Simpson's still have a few good lines left - though not many...

Friday, May 11, 2007

Since everyone else is talking about it...

Here's some random excerpts from an email conversation I had about Flash/Silverlight/JavaFX:

The Java kernel sounds all fine and dandy, but it does not exist now and it won't be released until Java 7 (maybe, delays seem inevitable) and 3MB seems like a bit of a stretch for a first release if you look at Ethan Nicholas's blog (of course that's just speculation, I admit). On mobile devices I can concede that it will probably be pretty popular because of the popularity of JavaME.

The main problem is one of economics: JavaFX makes Sun either no money or makes it so indirectly that they can't significantly profit from its success. Apollo/Flex's success will directly and unambiguously profit Adobe because they charge for developer tools; same with Microsoft. It all comes down to incentives: whoever can become most profitable in a given market will make the best product. Client side Java does not profit Sun in a significant way, especially when compared to competitors. Now believe me, I am rooting for Java because I prefer all the open standards/open source/FREE stuff, but that is the only possible advantage for JavaFX at the moment. And even the cost argument for Java can be up for debate if you consider the opportunity cost of not using something like Flash or Silverlight. If I had the next week to decide what client platform I would use for a new webtop app (probably a good thing that I don't have such authority) I would look at Adobe or Microsoft much more seriously than Sun. In a year or two things could change, but I don't foresee any dramatic changes by Sun/the Java community that can't be matched or exceeded by the competition. If history is any guide (and it is so often) new features and innovation will come much faster from companies who can profit from their products.

I couldn't help but think about this some more from articles/blogs I keep seeing about JavaFX: Everyone keeps saying that it will deliver a "Flash-like experience", but Flash has been delivering that experience for years! If Java is just now catching up to where Flash was 3 years ago, who do you think will be ahead in another 3 years? Granted, you have to use ActionScript or whatever they use to program Flash, but if it's like JavaScript it can't be overwhelmingly difficult to learn pretty quickly. If one argues for the "unified development environment" that comes with Java, then I would have to point out that .NET, despite all its faults, is ONE environment that can be used to program pretty much everything that Microsoft has touched (which isn't everything, but a gigantic section of all sorts of markets)

I'm not arguing for .NET, but if I was running a business I would definitely have to consider it seriously unless it was clear that cross-platform considerations outweighed all other advantages - which is often not the case I think.

I would guess the "blasting" of JavaFX in the blogging community at large stems from the comparisons it keeps getting to Flash and Silverlight, which seems somewhat ridiculous from what I have seen.

Wednesday, May 9, 2007

The past comes back to bite me

So some code I wrote about nine months ago when I clearly (today, not nine months ago - hindsight is 20/20) had no clue what I was doing has come back to bite me in the arse. I think I was taking stupid pills because that was some darn crappy code and it is starting cause a bit of havoc that I am have to fix with somewhat hacky techniques, since the old code is not conducive to adding good new code. Oh that I not be so ignorant last year! Perhaps a code review would have been a good idea...At least I can say that I don't write that same crap anymore (my opinion on that may differ in another year). It is amazing what one can learn in a year.

Saturday, May 5, 2007

I'm a conduit

Apparently I'm a conduit of deep discussion (actually I just wanted to use the word 'conduit') - see the comments on my last post. Here's another post from my hero John about immigration that you may find interesting.

Doc, I tried reading your comment, but it was too deep for me to grasp in one reading, though I'm pretty sure I completely disagree with whatever you are saying. I'll have to read it again to see if I can figure out what the heck you're saying.

In other news, I've been dropped into the world of SOA of late. I must say that I always thought it was just another buzzword of the year for the architecture astronauts. I have been made aware that maybe it may actually be useful. In one of our current projects at work we are using OSGi for a pretty slick new program and I must say that after working for a year on a traditional Swing/J2EE backend program, SOA has blown my mind. OSGi has provided such a clean way to modularize our software, it's just amazing. Heck, this code may actually be somewhat, dare I say it, reusable, heaven forbid.

I've also been messing around a bit with Jini and JavaSpaces in my spare time (which has been somewhat lacking of late) after stumbling across an article on GigaSpaces, which, if their white papers aren't all marketing fluff, sounds like it is a pretty darn powerful replacement for J2EE in large cluster environments. I read somewhere that OSGi is basically SOA within the VM while Jini is SOA among distributed VM's. Pretty cool stuff. So I'll let all you who are dying to hear my experiences with this stuff know what I think over the next few days/weeks.