My thoughts as an enterprise Java developer.

Wednesday, December 29, 2010

Can java.util.concurrent.lock.Lock detect deadlocks caused by two threads acquiring the same locks in a different order

Could java.util.concurrent.lock.Lock detect deadlocks caused by two threads acquiring the same locks in a different order?

Could it use a static list of all threads that have locks and ThreadLocal locks lists to know about all in use locks and then check for incorrect order when lock() is called.

In lock:
Check the ThreadLocal list and if there are no other locks then proceed.
Else if there are other locks then look through other threads to determine if any have any of the same locks in a different order.
Add current lock to ThreadLocal list.

In unlock:
Remove current lock from ThreadLocal list.

Thursday, October 21, 2010

Format for design and requirements

Do a "requirements document" and "design document" use an outdated format? Is one monolithic document the right way to handle that information? Are there better ways to handle that information?

Consider this idea:
Keep requirements/design info in a tree structure.
Support viewing the whole tree to a specific depth so that people can ignore undesired detail.
Allow ownership to be set by branch.
Allow editing each node separately so there is less chance for conflict.

Friday, August 13, 2010

Stephen Colebourne's: Oracle, Google and the politics of money

Stephen Colebourne's Weblog: "On the specifics of the lawsuit I have little to say. Google undoubtably have sailed close to the wind. But did they cross the line? Well, thats for lawyers now. The problem I have is not that there was something to discuss, but that Oracle thinks that this approach will improve their position. For me it shows how out of touch they are with how community and sentiment works outside CxO level politics.

The lawsuit is likely to shine a bright light on the OpenJDK too. Anyone who has contributed to the project known as 'OpenJDK 7' should now be concerned about whether their work will ever be freely available as open source."

Friday, March 05, 2010

BatchGeo - Make google maps using many addresses / coordinates

BatchGeo - Make google maps using many addresses / coordinates: "Is your data is in a spreadsheet? Well try this free and unique tool to...
Map it using Google Maps"

Looks quite useful!

Tuesday, March 02, 2010

IBM rethinks industry-standard servers | Business Tech - CNET News

IBM rethinks industry-standard servers | Business Tech - CNET News: "Big Blue's new family of servers, dubbed the eX5 portfolio, features architecture tweaks that allow the customer to add more memory without buying an entirely new server."

Am I misunderstanding, or is IBM just now adding a feature that PC's have had for decades?

Friday, January 22, 2010

A Little Less Conversation

A Little Less Conversation: "In 2006, Moishe Lettvin, a former programmer at Microsoft, wrote a blog post describing the year he spent coordinating the list of items that would be featured on one menu in Windows Vista -- the menu you use to turn off your computer. (See The Windows Shutdown Crapfest.) Lettvin figured that 43 people all had a voice in designing this one menu. Forty-three! By Brooks's formula, that means managing 903 connections. Lettvin says he spent so much time on coordination tasks that, in 12 months, he produced fewer than 200 lines of code."