Archive for the ‘Random’ Category

I don’t rate well with google

April 28, 2005

So, I did a google search for my name…and I didn’t turn up until the 4th page (of course, my name “James Estes” Isn’t actually listed anywhere here…or wasn’t anyway :) ). The first reference to me was of an article I wrote for shadow. The article was on a custom chat tag feature I had in my chat program. Basically tags were things users could type in the chat to make things happen (like super beefed-up emoticons). For example, the kick tag…if a user typed [kick:dave,head], the message ‘James kicks Dave in the head’.

Ah…memories.

On Potential

April 14, 2005

When do you decide someone’s potential is going to stay just that? Imagine you’re on a basketball team and you’ve got a not-so-hot player…not a rookie…great potential, great enthusiasm, just not that good. Now imagine there is no practice…every game counts. Do you pass him the ball?

To me, it’s a matter of whether the player can adapt and grow…become better. It’s almost the meaning of potential (shows promise) but not exactly. You can show promise and just not have the aptitude or desire to grow into it. But sometimes it can be difficult to know when to decide the potential won’t be reached.

I’m sure a lot of criteria can be used, but I think it can be boiled down to:
Talent/Instinct
Desire/Passion (love of the game)
Adaptable (can learn)

If you have all 3, I’ll pass you the ball without second-guessing, 2 and you’ll get it once or twice a game, 1 and you’re off the team.

But if I’m not the coach (very likely) I can’t cut people from the team. So, our team would effectively be running with one fewer player. We’d wear out faster, and in the end, just won’t win as many games as if we had a full team of real players. Hopefully, the coach would step up and cut the player…but you can be sure that if he doesn’t, the whole team will run extra laps when you lose.

I have no idea where that came from.

Lingo

April 6, 2005

One of my college projects was Lingo - a living, multi-lingual, end-user-built dictionary/thesaurus. It was inspired by everything2.com which is more like an encyclopedia of everything. I liked the system they had where users actually contributed the information (nodes) and users voted up and down the nodes…bringing good and more accurate/accepted posts to the top. Lingo did the same thing but it was for defining terms and synonyms. It was mult-lingual too…so the synonyms could tie together words across languages. The synonyms would also get ‘voted’ on.

Anyway, I was reminded of Lingo by this post in the google blog.

Update: Dion has a post on a very different “Lingo“…nice timing I guess.

BookPool.com

March 31, 2005

Just discovered BookPool.com. Good timing too…they’re having an ‘open source’ sale: 43% off most open source titles. I got Pro-Spring, Expert One-on-One J2EE without EJB, and The Beauty of CSS Design…all for 74. I’m happy.

Code - Compile - Deploy - Restart - Test - Repeat

March 25, 2005

Waiting for my server to re-start. Seriously takes about 5 minutes to build, deploy, restart. The server I’m on does not support hot-deploy (nor does our setup for that matter). So, I guess I’ll learn to do bigger chunks at a time. Oh, and don’t ever mess up…too time consuming.

Laptop dead

March 24, 2005

My laptop died. It’s about time, I guess…I’ve had it for like 4 years.

Transactions

March 18, 2005

There is a huge debate/discussion going on recently on a project I’m on. Basically, the project is like 1/5 into development and there is little or no direction on handling transactions. What is there is directly managing them from the business delegate…which is ok…if handled properly. They aren’t playing nicely with others (seeing if one already exists, not committing if didn’t start, etc).

The biggest voice advocating that a standard or reusable pattern emerge is recommending an approach that would wrap the entire web request in a transaction (if the associated request would result in a call to a delegate that need to be executed in the context of a transaction). I really don’t want to settle with this as the only method for identifying/handling transactions. The delegates are written to be reused…and, in part, to encapsulate (and insulate the caller from) the underlying details. By having the delegate just assume it is running in the context of a transaction and/or forcing all calling code to know that a transaction is required will break that encapsulation and inevitably lead to breakages.

I agree that handling the transactions in the code is not easy (when done properly and thought through), and it can be messy. This is why I (and many others) like(d) session beans…and spring’s declarative transaction management. We don’t have the luxury of spring on the project, but we can easily implement a template approach (a la spring jdbc layer), or even more directly, just factor out the start/end/rollbackonly transaction logic into a helper class. The decision is leaning heavily toward the last. I didn’t propose that solution, but it is a good on for our case. The delegates still start/stop transactions, but it is much cleaner (much of the detail is handled in the helper). This allows for those who feel the entire web request should be handled in a transaction to still do that, but when the delegate is reused in a different (possibly non-request related) context, the behaviour will be predictable (won’t break).

I want a powerbook

March 16, 2005

I really really want a powerbook. My laptop (dell inspiron 4000) is really really about to bite the dust. I actually put some more money into it about 5-6 months ago. Now the touchpad will stop working for like 30 seconds if the keyboard is flexed. Also the screen will turn all sorts of shades of blue sporadically…like all the red goes out. Friend of mine got a powerbook…I’ve wanted one for so long. My wife keeps telling me “Just get it and stop talking about it!” I’m really just waiting for Tiger to come out…which I heard should be mid april. So, I’ve waited this long, I can wait until april I guess…