Sunday, April 22, 2007

Spend time with your kids...

...so Peyton Manning doesn't.

Friday, April 20, 2007

OpenID support in Acegi Security

SourceForge.net: acegisecurity-developer

Acegi security now has a first-draft of OpenID support as provided by Robin Bramley of Opsera Limited. We'll definitely need to get some documentation and samples going. It's a great start though.

More info on OpenId...

Thursday, April 19, 2007

Congratulations Mark Buehrle!

Last night, a rare and very special thing happened on the south side of Chicago. Mark Buehrle, long-time ace pitcher for the Chicago White Sox, pitched a complete game no-hitter.

This is special for many reasons. This day and age a complete game itself is less and less common. Managers like to bring in middle relievers and closers, because everyone worries about pitch count. Most of the time, if your pitcher gets to 100 pitches, they get yanked. There are a few horses left out there that will go the complete game, Mark Buehrle is one of them.

A no-hitter (or in baseball slang, the no-no), is a game where the offense fails to get a single hit during the entire game. You can have a no-hitter, while still switching pitchers, but that's no fun. What's important is to see one pitcher go all the way without allowing a single hit. Not one. There is also the concept of the "Perfect Game". A perfect game is one where the pitcher does not allow any hits or walks for the duration of the game. Mark did walk Sammy Sosa in the fifth inning, but he promptly picked him off at first base.

Here's some perspective on the no-hitter accomplishment. Mark is only the 16th pitcher in White Sox history to throw a no-hitter. The White Sox have been around since 1900, so think about that a second. Here's a list of all the pitchers in history who have accomplished the no-no.

Wednesday, April 18, 2007

free.winelibrary.com

Here's something fun that I should have blogged about earlier. Have a look at http://free.winelibrary.com. Here's the deal. Monday through Friday at 1pm EST a new wine will be offered with free shipping. One wine, one day, free shipping. What sort of wine will it be? Well that's up to Gary Vaynerchuk and friends.

Overall the wines are usually intriguing ideas from various places around the world. For example, here's a recent entry from Greece. (note that the old links are not valid for free shipping) Is it good? Who knows. Usually the community will leave comments on the wine if they've had it or not. You gotta be quick though if you see something you like. The wine will sell out pretty quickly. Then you'll see the comments go from Wine to Whine in a hurry.

Here's a tip I posted on one of the quick-sellouts recently...
I setup a “Scheduled Task” in Windows to open a browser to free.winelibrary.com at 12:05 (CST). That way I never forget to check it.

This is a great service where you can really find some steals if you pay attention. Don't miss out on something you think you might like by second guessing it. Get off the fence and ring it up!

For more information you can read the "About" tab.

Wednesday, April 11, 2007

Learning Flex

I'm having a little fun on the side learning about Adobe Flex 2. I don't have Flex Builder 2, as it is incredibly expensive. I'm just using vi and the mxmlc compiler from the free Flex 2 SDK download. I have also downloaded the Flex Builder 2 Trial from the site, but haven't installed it yet.

Right now I'm following the "Live Docs" available online from Adobe. They're not bad, most of the examples have the Flex Builder part first and then show you the mxml source output on the next page. I've gotten along pretty well by just skipping the "Set up your project" pages.

So far, it's fun and interesting. I don't know if I'll invest in a book just yet, just to see how far I get without one.

Tuesday, April 10, 2007

Pandora: Internet Radio

It's seems Vinay and I are playing blog-tag. My friend Vinay posted an article about Pandora, an internet audio site. This is too cool. You type in an artist or song and it navigates you through music with similar styles. Like I said, too cool.

Another thing I noticed about the site is the advertising. I know it sounds odd, but I like their approach. There is a somewhat obtrusive advertisement in the top right corner, but it isn't overwhelming. The interesting thing is that the site is basically skinned to the advertisement. Each track change brings with it a new add, and a new skin to the site. The current BP campaign involves these cartoony looking babies driving in a car. The Pandora page gets re-skinned with the colors and background image of the babies in the ad. A very interesting approach.

Monday, April 09, 2007

Event Stream Processing

I recently read an article at OnJava: "Esper: Event Stream Processing and Correlation". Event Stream Processing is a very cool technology that allows real-time reaction to events in your business. It can be used effectively in network monitoring and business intelligence.

Rather than reacting to receiving a single event, which doesn't scale well from a network monitoring perspective, you react to an aggregated view of those events. If one request to your database is slow, that isn't significant in a large application. If you look at the request times over a 1 minute period, and see that the latency is increasing; that's very significant. Stream processing allows you to process these sort of events.

I'm not a business guy, so any example I come up with for that is going to be totally contrived and lame. I'm sure there are some great ones though :P

Have a look at Wikipedia for more explanation.

Back to the article...
The article focuses on using an open-source tool caled Esper, which is avaialable from Codehaus. I haven't set the application up yet, but I will on one of my two 40 minute train rides. We use a similar product where I work. It is not open source, and is not available to me here. Politics :)

Sunday, April 08, 2007

President Feed: Update

Tim O'Brien and friends have made some nice updates to PresidentFeed. I see you can remove your vote, without having to cast a new one now. The UI is cleaned up, it looks a little more - I dunno - serious I guess. The new widgets that show approval percentages, and vote charts. Very nice.

One thing that was removed, that I think is unfortunate, is the links to the candidate sites. I'd love to see the site aggregate news info about the candidates. Having one site that gets news updates for all the candidates in one friendly place; that'd be extremely cool. Hell, even if it's just links to a news.google.com search.

What do you think Tim? :P

Tuesday, April 03, 2007

Back from Vacation

My family and I drove down to Florida for a week long vacation. I live in Chicago, so it takes like two days to get there with three kids in the car. The vacation was nice, though not very relaxing with so many things to do and see.

The most amazing part of the vacation was taking my 4 year old daughter to Disney World. She loved it, she was so excited for almost every part of it, it was fantastic. Seeing your daughter talking with Snow White, Cinderella and Belle is enough to get any Father choked up.

And now, it's back to work ugh :P

Wednesday, March 14, 2007

Happy pi day!

My friend, Alex Wolfe, gets the credit for hitting me with this first.

But happy pi day! (3.14), get it? Unfortunately he didn't contact me at 1:59 though...

Tuesday, March 13, 2007

Google Guice 1.0 Released

Guice 1.0 has been released. Guice, as you'll see all over the internet at this point, is a Dependency Injection framework from the folks at Google.

That being said, there are plenty of lemmings out there who'll go running off the cliff for this; because it's from Google. So, guess what, I'm going to jump to, but I'm bringing a parachute.

I started trying to port over some simple code I have on my laptop from Spring to Guice this morning. The very first thing I noticed; is that there is no feasible way to inject an existing Pojo class (that is annotation-free) without writing a Provider class for every Pojo. So if you're using Spring framework classes (without the XML), such as JmsTemplate, HibernateTemplate, and JdbcTemplate, you better get used to writing Provider classes.
Read more here...

There is an alternative approach that involves building a Spring ApplicationContext from XML, and then bringing it into Guice using there SpringIntegration code. But once you've done that, what's the point?

I'm betting someone will come up with a good solution for this. It really is a nice framework, but the Pojo thing is very limiting.

Here's some links for more information...
crazybob.org: Guice 1.0
Guice at googlecode
My googlegroups post on the pojos

Tuesday, March 06, 2007

Ernest Gallo

Ernest Gallo past away today at age 97, at his home in Modesto California. Even if you don't know wine, you recognize the name E&J Gallo. Ernest Gallo is the father of the American wine industry.
Learn more...
http://www.gallo.com/ErnestGallo/
http://en.wikipedia.org/wiki/Ernest_Gallo/

Friday, March 02, 2007

IDEs for Ruby

A nice comparison sheet of the various Ruby posted over at O'Reilly Ruby.
http://www.oreillynet.com/ruby/blog/2007/03/ides_for_ruby.html

This sheet is actually from another blog: "The Nameless One"

It is funny, to me at least, is that the O'Reilly post is written by Curt Hibbs. Curt is one of the principle developers on the FreeRIDE Ruby IDE; he mentions that in his post. The interesting part is that the comparison did not include FreeRIDE. This is for a good reason. FreeRIDE is a joke. FreeRIDE really stands to make Ruby look bad to people being introduced to it for the first time. FreeRIDE is unstable at best, bordering on unusable.

A first timer on a Windows box is probably going to download the one-click installer to install Ruby. This installer comes with FreeRIDE and will put shortcuts out for it. The afore mentioned first-timer will launch it and try to play with it. It will be slow, clunky and featureless; then it will crash. With an immediate "wow, well screw that" from the newbie.

It sort of reminds me of much of the worlds view of Java due to all the shitty Applets and Swing/Awt apps out there.

If you're looking for a good 'free' rails IDE check out RadRails, if you're a Java guy with IntelliJ installed, definitely check out the Rails plugin.

Tuesday, February 27, 2007

OpenID

I was reading Tim Bray's post on OpenID this morning. It's interesting to start looking at something new, when you begin with someone pointing out the flaws. After watching Simon Willison's screencast on OpenID I decided this seemed pretty cool.

OpenID is essentially a decentralized single-sign-on system. I can sign in to any site that supports OpenID using my new OpenID from this blog. My new OpenID is http://raykrueger.blogspot.com/. That's right, it's just the URL for this blog.

This is why I think OpenID is cool. My 'REAL' OpenID is raykrueger.pip.verisignlabs.com, I set it up at verisignlabs because they are the only provider that uses TLS by default. In Tim's post he points out that a lack of TLS/SSL in this scenario is sketchy at best, and I agree. Encryption is a must.

Ok, so Versign provides the OpenID authentication, but when I log into sites that support OpenId, I tell them my OpenId is
http://raykrueger.blogspot.com/. When they come here to my blog they'll find a simple bit of html in the page that tells them where to go for the real authentication provider. Have a look; right click this page and 'view source', you'll see two tags in the head section of the page that look like this:
<link href='https://pip.verisignlabs.com/server' rel='openid.server'/>
<link href='http://raykrueger.pip.verisignlabs.com/' rel='openid.delegate'/>
This tells the site that I'm logging into that http://raykrueger.blogspot.com/ is not the real provider, and that they should go to versignlabs as the server, and use by delegate openid, raykrueger.pip.verisignlabs.com.

Why go through all this trickery? Why not just use versignlabs as my openId directly? Well, if versignlabs (which is beta) gets dropped, or (god forbid) becomes a paid service, I'm not screwed. I can change providers at any time, just by changing the html tags here at blogspot. If you're interested in setting up this up for yourself, have a look at Simon Willison's instructions.

Maybe we'll have to look into adding support into Acegi Security for it. I wonder what Tim O'Brien over at PresidentFeed thinks about using it there?

Saturday, February 24, 2007

Beaujolais

In my recent studies of wine, I was reading about Beaujolais. My wife doesn't like most red wines, but I do. We do agree on Pinot Noir, as it is very low on the red wine scale. Well, knowing Dawn's tendency towards whites, and reading about the characteristics of Beaujolais, I picked up a bottle of 2005 "Louis Jadot Beaujolais-Villages". It was a big hit, we both really enjoyed it.

Beaujolais is made from 100% Gamay grapes, and produced in the Burgundy region of France. You can read all about it at Wikipedia: Beaujolais

If you like Pinot Noir, if you're a afraid if 'big' red wines, check out Beaujolais. The Louis Jadot 2005 Villages was very good. Lots of cherry and Dr. pepper flavors, with some good tannins to boot.

Thursday, February 22, 2007

Google Analytics

Some time back I had considered moving to Wordpress.com. I had thought about doing so I could see statistics and such for the blog. Then I found that I could do it with Google Analytics.

Google Analytics is ridiculously easy to setup. You sign in with your Google account, and tell it the domain you want to watch. Then you paste in a little snippet of javascript at the bottom of each page you want to track.

Using Blogger, this is simply done by choosing to 'customize' your template. You click on the 'edit html' link and scroll down to the bottom. Just before the last </body> tag you paste in the snippet. You're done, every page in your blog is merged with this template and will get tracked automatically.

Watch out though! This is where I ran into trouble...
If you switch templates at all you have to paste that code back in there, or you'll lose all tracking for 2 weeks like I did :(

Tuesday, February 13, 2007

President Feed

My friend Tim O'Brien put together a really cool new site called PresidentFeed.com. It is sort of like a live running poll of Presidential candidate approval ratings. You cast your vote for a candidate you like, and you can remove that vote and give it to someone else later if that guy (or gal) does something stupid. On top of that you can also add "thumbs up/thumbs down" ratings to candidates (think Tivo, without the neat sound).

On the tech side it's all ajax web 2.0 style built on Rails. I love the look, I hate the ugly banner add at the top, but hey gotta pay for the hosting somehow.

Tim is also running a blog about it over at http://presidentfeed.blogspot.com. Check it out.

Thursday, February 08, 2007

Google Reader

If you haven't checked out Google Reader, you should give it a look. I don't personally have a wealth of experience using other feed readers out there, but I've tried a few. The Google reader is non-intrusive for the most part. Most of the operations you'd want are close at hand and obvious (mark all as read, for example). They use tagging rather than folder structures, though they display your tags as folders. If you tag something as java, you can still tag it as technology; it will show up in both.

If you use Firefox 2.0, and you should, you'll find that they play really nice together. When browsing the web with Firfox you'll see a little 'RSS' box come up in your address bar. That box means that there is a feed for the site your looking at and you can subscribe to it. If you click on that box, Firefox will take you to a page where you chose where to add that subscription. If you choose Google Reader, google will come up and ask you if you'd like to add it to your google homepage (cool in it's own right, but not a good feed reader), or Google Reader. Clicking on Google Reader will take you into Reader, and will show you the new subscription at the bottom of your subscription view on the left (putting new stuff at the top would be better in my opinion). Your new subscription will also be the current view in the reader pane. Up at the top you can choose to label (I was calling it tags earlier, sorry) the current subscription for categorization.

So, if you haven't checked it out before, give it a look, it's pretty nice. Hell, if you don't like it it's not like you have to uninstall it or something :)

Sunday, February 04, 2007

What about next year?

Well, the Bears just lost the SuperBowl. Our defense played like shit. Our offense barely played, but when they did, they played like even worse shit. Then when they try to put the game in the hands of Grossman to, make something happen, he gives it up. Everyone is going to be blaming Grossman for this, and he definitely deserves a big part of the blame, but not all of it. Our offense barely got on the field because our defense couldn't get off. As a whole, beginning to end, the Bears played like shit. Our defense managed to cut off the big play, but gave up first downs like they were on sale. I've never seen the Bears miss so many tackles, it was really sad to watch. At least Hester tried to get things off to a good start by running back the opening kick off for a Touchdown. Now Hester's Touchdown is a mere side-note.

I'd say there's always next year, but we're going to lose a bunch of guys after this year. This was our chance and they blew it. So, what about next year?

Friday, February 02, 2007

Bear Down Chicago Bears

Bear Down, Chicago Bears sung by Lyric Opera's Bryan Griffin
I don't know why he looks like some kind of creepy ogre lumberjack, but hey, he can sing.


The video for this one is really lame, but it's got the 'real' recording of the fight song.