Archive

Archive for January, 2006

Easy AOP deployments with AspectJ

January 24th, 2006

Just the other day, I had to deploy some AspectJ code to an app server. I was prepared to go through the usual hoops to get the aspects to deploy properly. Like AspectWerkz and JBoss AOP, you would normally have to put the runtime libraries in the system class path, set some kind of property so that it could find the aspects, ect. With AspectJ, it’s very simple: compile your code with AJC, pack it all up in an EAR along with the aspectjrt.jar and your done. With AspectJ, there are no system classpath mods needed, no special properties, just nice and simple. I like that.

Author: Ryan Categories: Java Tags:

I want to like Maven

January 22nd, 2006

I’ve been taking a long look at Maven 2, and while it seems like it’s a really great tool it also seems like there’s a lot missing. My first gripe with Maven is that there is no downloadable documentation that can be read offline (at least that I could find anyway). This is a real pain in the ass when you’re trying to read up on Maven and you don’t have a live internet connection. Second, the JARs in the repository seem a bit out of date. Furthermore, it also seems that Maven 2 isn’t getting as much attention as Maven 1.x. as many of the Maven plugins have yet to ported to Maven 2. Maven 2 BTW, is a rewrite of Maven 1. This is too bad, because on the surface, Maven 2 looks like a huge improvement over Maven 1.x. I’m really interested in working with Maven 2 but I can’t for the life of me figure out how I can use either the AspectJ AJC compiler or the JBoss AOPC compiler with Maven. Even under Maven 1, this process seems a bit convoluted. Any suggestions?

Author: Ryan Categories: Java Tags:

What exactly should we learn from Active Record?

January 21st, 2006

I read an interesting post the other day titled We should learn from Active Record. While Active Record does help facilitate the quick and dirty, it has a high reliance on the database structure. Your code and database layer essentially one in the same and I’m not sure I like this approach. This is especially true if you’ve had to deal with a crappy database model to begin with.

I’m a fan of type safety and the ActiveRecord approach is a step backward in that regard. The nice thing about Hibernate, and other ORM tools, is that your object model doesn’t have to be a one to one mapping of your database model. In fact, it can be quite different. An single table might map to several different, type-safe objects. Taking Bruce’s Person example, we may have multiple types of Address’s such as HomeAddess, BusinessAddress, ect. Now suppose that you also have a Company entity which can also have an Address, but it would need to of type BusinessAddress. By defining strongly typed objects to represent our business data, we won’t mistakenly pass a HomeAddess to a Company.

Granted this is a slightly crappy exmaple, I think it kind of gets the point across. If you need a quick and dirty web app up and running quickly, why not just use Ruby on Rails? It’s great for that sort of thing. Do we really need a Java implementation of Active Record?When it comes to planning out a large scale application, I don’t see this sort of RAD approach offering much value long term. The ORM approach abstracts your DB layer from code, so if one layer has to change “it can be” isolated to a degree. But that’s just my opinion.

Author: Ryan Categories: Java Tags:

Glad I got the Nikon

January 19th, 2006

You may want to put off that purchase of that Konica-Minolta Maxxum you’ve been eyeing. About a week after Nikon announces that they’ll no longer be making Film cameras, Konica-Minolta announces that they’ll no longer be making cameras! They’ll be handing over their DSLR production over to Sony, who will continue to make KM-mount DSLRs. Why, I don’t know for sure, but I have a feeling that Sony is more interested in the KM anti-shake mechanism used in their DSLR line. We’ll see, but I bet you can get some great deals on KM bodies now :)

Author: Ryan Categories: Photography Tags:

The beginning of the end for Film

January 12th, 2006

Nikon issued a press release today which states that “95% of Nikon’s UK business being within the digital area, Nikon Corporation has made the decision to focus management resources on digital cameras in place of film cameras.” The release goes on to say that “Nikon will discontinue production of all lenses for large format cameras and enlarging lenses with sales of these products ceasing as soon as they run out of stock.” Damn I say! Apparently, only the F6 and the FM10 will continue to be sold however. But this is the first real nail in the coffin for film compatcs and SLRs. Can’t say I’ll miss ‘em much though :)

Author: Ryan Categories: Photography Tags:

Oooh, Lightroom

January 9th, 2006

So if you haven’t already heard, Adobe released a public beta of a new app called Lightroom. So far it’s pretty good and beats the hell out of iPhoto. I can’t comment on how it stacks up against Apple’s Appature, but I can say it’s no Photoshop CS2 replacement, It’s definately more of a complimentry application than a replacement. So far though, it’s rather impressive. It’s quite peppy on my PowerBook and Mac Mini. It’ll be really intersting to see how it matures and I’m psyched that Adobe is bringing a good photo management too to the Mac. Now I just need take some shots!

Author: Ryan Categories: Photography Tags:

JBoss AOP v.s AspectJ 5: Part 1

January 9th, 2006

Before I started getting into AOP, I wanted to know what the real differences between AOP implementions. Sure, we all know that AspectJ is a language extension and JBoss AOP can be done in all Java. Ask folks on the JBoss forums give you a JBoss-biased answer. Similarly, some of the IBM Developer Works articles (particularly this one) are a little dated and still have a bias toward AspectJ.

But aside from that, what makes one implementation better than the other? Is one easier to develop with? Easier to deploy? Personally, I’m still trying to figure this out and I thought I’d share some of my findings. I will state up front that initailly I was a bit more bias toward the JBoss AOP implementation. Now that AspectJ 5 has been released and it supports Java 5 and annotations, I’m seeing things a bit differentlty. Part 1 looks at the differences between IDE plugins. Part 2, which is still in development, will look at the differences implementing the same aspect in both implementation. Enjoy!

Author: Ryan Categories: Java Tags:

GM + Saab + Subaru = Sucky customer service

January 7th, 2006

Last year I got a Saab 9-2x, which is pretty much a Subaru Impreza with a Saab-styled grill. We got the Saab because, at the time, they offered a better lease deal than the Subaru. Over the summer, a pebble hit the windshield resulting in a small crack. Six months later, we’re still waiting on the part from Saab while the crack grows bigger and Bigger. Our repair shop can’t get the part because it’s on national backorder. Our dealer confirmed this and apparently there are 43 other folks ahead of us. The folks at Saab USA are now telling us to “call a Subaru dealer.” Great. When asked which model windshield is compatible with the 9-2x Linear, they had no answer. And then when asked if this would void our warranty, they didn’t know that either. In hind sight, we probably shoulda got the Subaru! It’s amazing that company as large as GM can’t coordinate parts across its divisions. It’s no wonder GM’s stock price is doing so poorly.

Author: Ryan Categories: Whatever Tags:
Buy bed in a bag bedding canopy bedding. Leather furniture furniture furniture sofas. discounted furniture furniture care discount furniture stores furniture showrooms kids furniture buy furniture online buy furniture kitchen furniture furniture shops