Sunday, December 18, 2005

BBC NEWS | Europe | Russian squirrel pack 'kills dog'


Squirrel death squad strikes in Russian village.
It has recently been reported by the BBC that a "Russian squirrel pack" has killed a dog. Don't believe it! This bit of sensationalism by the international press is just a well orchestrated smear campaign by some squirrel extremist groups. The main evidence for the entire story is in the eyewitness accounts of several "villagers". More likely these villagers were crusaders for the ASPS (Albino Squirrel Preservation Society) or Red Alert (A group of red squirrel loyalists) posing as villagers from the Russian town of Lazo. These kind of smear tactics are not uncommon by squirrel extremist groups. They use fear and intimidation to bully local media into running a story with some outrageous claim in the hopes that the publicity damages the reputation of other squirrel groups.

Friday, December 16, 2005

Imapfilter. Finding your 1%

Email, your inalienable digital right, and spam, the other digital right. They are like ying and yang.
Free love and free spam.
Email has been the killer-app of networked computers for 40 years. It is a method of communication that everyone from the multinational corporation down to the lonely long haul trucker is using. These days, when anybody can have as many free gigabyte mailboxes as they want, email is as close as a netizen can get to an inalienable digital right. But grant someone a right, and it won't be long before they discover ways to exploit it for their own benefit and infringe upon the rights of others. And just like that, spam was born. Everyone gets it, so I guess it is just another inalienable digital right (or is it a wrong? Sigh.) The noise from all these unwanted emails has grown from an annoying buzz to a deafening scream relentlessly jangling the wires of the net. This noise is why people like Lefteris Chatzibarbas have created software like Imapfilter, to bring order to your email account.

Sunday, November 27, 2005

Wanted: vintage, pre 1994 mullet.

Do you have proof of a pre '94 mullet? The OED wants YOU!
The mullet!The OED is looking for the first mullet, but they need documented proof the mullet is really of pre 1994 vintage! Take it easy Rooster, this contest can't be won with that picture of your coiffure at the New Year's Eve Tractor pull ca. 1993. This is for the OED (Oxford English Dictionary). That means you have to have a published example of the earliest usage of the word mullet. You see, the work of a dictionary publisher is never done. Old words take on new meanings, and new words are constantly being created. So you can imagine that the researchers at the OED have their work cut out for them. The OED has long relied on volunteers to help find examples of first usage for words, and they have just put out a new call for action. They have a specific list of words they are looking for. Among them: mullet, cyborg, porky, full monty, to bonk (sexual intercourse). If you can provide documented examples of earlier usage for these words or any of the words on this list, you can go down in history as one of the illustrious contributors to the greatest dictionary in the English language, or any language for that matter.

Tuesday, November 15, 2005

Lucene, please don't do me no wrong.

Get your baby back with Lucene
Lucille or Lucene?Lucene is an open source search and index API. It is by all accounts the gold standard of search and index APIs. A fire tested and proven technology, Lucene powers search functionality on many high traffic websites. To me the most impressive example is Wikipedia. As of this writing Wikipedia spans over 2,656,739 pages and their daily pageviews are spilling beyond the lofty borders of 1,000,000,000. If it is good enough for Wikipedia, it is good enough for anyone. All this and it is a freely available, well documented part of the Apache Software Foundation. Strangely though the history of Lucene is rather vauge. Most sources have little to say about the project other than it was written by Doug Cutting, and released on SourceForge in March 2000. I have done some "serious" research and uncovered a bit more information about the project. So stop the presses because I have the scoop on how Lucene got its name.

Tuesday, November 8, 2005

101111 Days Until Christmas

Put Tiletoy in your stocking
indexing a list, traversing it twice...This toy was linked off BoingBoing. They're electronic. They're programmable. They're open-source, and with their white on black blocky design, they look like something out of 2001: A Space Odyssey. What else could the geek on your Christmas list want? The best part about giving this gift of geekiness is that you don't have to spend anything, just put this url into their stocking "http://tiletoy.blogspot.com/" and you will fill their heart with joy. Actually that url won't help much just yet because the open hardware specifications have not yet been released. This article claims that both the software and hardware will be available under a GPL license. The hardware spec. is scheduled to be released in late November.

Wednesday, November 2, 2005

How to Arg a Perl Script

Arg, that is a good script!
This image is trademarked.Perl is often associated with camels. It has been that way ever since O'Reilly's book Programming Perl came out with a camel on the cover. Beyond the even-toed ungulate mascot, I don't have much good to say about Perl. I'll take Python or Ruby over it any day of the week. (I apologize profusely to Perl afficianadoes for my poor Perl skills. I just have no interest in being good at it. I was raised on Java and OO. I know, I know, Perl does OO too, but looking at OO Perl is like watching an 80 year old man popping his booty to the Black Eyed Peas. It is just plain wrong.)

Monday, October 31, 2005

NaNoWriMo

My NaNoWriMo pre-event checklist.
NaNoWriMo

  1. 3 cases of wine: (Aren't the best novels written by drunks?)

  2. 2 cases of lite beer: (Yea, they are all written by drunks.)

  3. 1 case gin: (Really raging drunks.)

  4. 8 pounds Kenya AA:

  5. "Mark Twain" eyebrow augmentation surgery:

Thursday, October 20, 2005

Kansas schoolboard around Thanksgiving

Schoolboard and cranberry sauce. A Thanksgiving tradition.
Turkey!!!This entry started out as a 4 paragraph affair on the contraversial Kansas State Schoolboard. Verily, it bristled with epithets, jibes, slurs, and opprobrium. It was sooo good, and sooo true that I realized it was too good to publish here. And too obvious. Any first grader who has ever ridden a schoolbus or seen southpark has the necessary vocabulary to write 4 solid paragraphs on the Kansas school board. Consequently, I have cut all that obvious stuff. I'll sum up those four deleted paragraphs with a simple comparison: the Kansas Schoolboard members are like a bunch of turkeys.

Wednesday, October 12, 2005

Mmm, a nice hot bowl of Phlogiston


Nothing beats a theory that was just plain wrong.
Should we love a theory any less just because somebody went and disproved it? I think not. You can learn a lot from a disproved theory. Take Phlogiston for instance. Have you ever heard of it? I hadn't, until I stumbled upon A Phlogistonic Vehmence Attenuator!?! Everybody needs one! Say Phlogiston out loud. Isn't it a great word? It sounds fake, doesn't it? Well, it is. People used to think that Phlogiston was the material that made something flamable. This was taught in schools and universities for nearly a hundred years, can you believe it? If some 17th century scientist told me to believe in a substance without color, odor, taste, or weight I would have been dubious. But to think they gave it such a fake sounding name, "Phlogiston." They should have been laughed right back into the Renaissance.

Friday, September 30, 2005

Open Questions

I have questions!
This is where I keep my questions until I can find answers for them.

  1. I often leave that last drop of tea in the bottom of my cup. Over the weekend it tends to grow things, and when I come in to work on Monday there are little floating tufts of mold in there. Mmmm, mold tufts, gooood to the last drop. The question I have is, "Why does the mold always grow in a perfect circle?"



Thursday, September 29, 2005

iBATIS In All Its Glory

The greatest thing since sliced bread
Viva iBATIS! If you have ever had to write an application in an object oriented language that communicates with a relational database, then you understand the word tedium down to its very core. There is nothing more mind-numbing than writing lots of 'for' and 'while' loops to populate an object from a result set. It is a trivial exercise that takes lots of time and is prone to errors. When I first started writing web applications it took me less than a few hours of using the JDBC api to realize that populating an object from the DB was a job for a peon, not a mighty software engineer. Thus I was quite motivated as I jumped on Google in search of a solution. The coding gods were smiling on me that day because I quickly stumbled upon iBATIS SQL Maps. It took me an afternoon to get comfortable with their api, and soon I was writing all my sql into XML files. Here is what I am talking about.

Wednesday, September 28, 2005

Pastitio

This image is Bacchus before Pastitio. Click for after.
Food of the gods (The Greek kind).
Pastitio is a layered dish with bechamel and meat sauce covering bread crumbs and pasta. A treat with a long history, there is evidence of the Greeks enjoying pastitio since before the times of the Trojan war (1200 B.C.). Original Greek recipes describe pastitio as stale bread covered with a rich meat sauce. A base filling disguised as a heavenly offering. No doubt this was a clever ploy Greek mothers invented to get leftover bread eaten up. It is said, the night Odysseus thought up the Trojan horse he supped on pastitio. If this dish was his inspiration then I suppose generations of Greek mothers should get the credit for winning that war.

Thursday, September 15, 2005

Airzooka!!!

Did somebody say airzooka?
GeekboSomebody brought an airzooka to work today. "What the heck is an airzooka?" you ask. Good question. In fact, an airzooka is essentially a plastic flower pot with a rubber diaphragm inside. That sounds pretty boring until you stretch the diaphragm out and let it go. Air gets forced through a 6" dia. hole in the bottom of the pot. This creates a fast moving vortex of air (picture a smoke ring) that can travel 30 feet or more. Trust me, it is awesome. Don't trust me? Picture yourself throwing a ball of air across the room at someone. If you just nick them they will feel like someone has thrown something tremendously large and fast past their head, if you hit them it feels like getting hit in the face with a thousand extra fluffy cotton balls moving at high speed. It is awesome I say! The perfect workplace toy for everybody, unless you work around delicate architectural models or houses made of cards.

Tuesday, August 30, 2005

Maxwell's Demon


On why we should repeal the second law of thermodynamics.
The second law of thermodynamics is really frustrating. It explains why no matter how many times you organize your sock drawer or clean the butter dish in your refrigerator they always slip back to an intolerable state. The second law, as stated in Wikipedia goes like this:


All work processes tend towards a greater entropy (disorder/lower energy density) over time. Since the universe is tending towards a greater entropy (expanding over time), all work processes within the universe also tend towards a greater entropy. The second law of thermodynamics is a consequence of the first law of thermodynamics (ie., energy is conserved) and the fact that the universe is expanding.


Wednesday, August 24, 2005

XDoclet can't hang


Voyage among the XDoclet lepers, a struggling group of Struts developers.
Last year some of my fellow developers came back from a Florida conference to recover from all the fun, sun, and to mull over the many new technologies they had been exposed to. The big topics of the conference were brought back into the office and put on display like polished shells and interesting pieces of driftwood. Some of the smaller ones however were quickly forgotten, left in the bottom of the sack, or shaken into the rug like sand in the bottom of your shoe. XDoclet was one of the latter. It wasn't until this month that I got around to investigating this technology. As promising as it seemed, my final report is, sadly, that it isn't of much use to a struts developer.


Saturday, August 20, 2005

Meaningless Work


Which treats of meaningless open source projects, meaningfull ones, and piping hot buns.
Here is a quote I have from a man named Walter De Maria. I don't know who this man is or how you can find more of his writings. I got this particular quote from an Architect who gave a lecture about his buildings at a church in downtown Kansas City. I don't remember the architect's name, or what he was lecturing about, though I do remember that in the bathroom at that church, above the urnal, there was a sign that said "God is watching."
Meaningless work is obviously the most important
and significant art form today. The aesthetic feeling given
by meaningless work cannot be described exactly because
it varies with each individual doing the work. Meaningless
work is honest. Meaningless work cannot be sold in art
galleries or win prizes in museums--though old fashion
records of meaningless work can make you sweat if you do
it long enough. By meaningless work I simply mean work
which does not make you money or accomplish a
conventional purpose. For instance putting wooden blocks
from one box to another, then putting the blocks back to
the original box, back and forth, back and fort etc., is a
fine example of meaningless work. Or digging a hole, then
covering it is another example. Filing letters in a filing
cabinet could be considered meaningless work, only if one
were not a secretary, and if one scattered the file on the
floor periodically so that one didn't get any feeling of
accomplishment. Digging in the garden is not meaningless
work. Weight lifting, though monotonous, is not
meaningless work in its aesthetic sense because it will give
you muscles and you know it. -Walter De Maria

Thursday, August 18, 2005

Extending the struts custom JSP taglib

In which I take my first plunge into the struts source and come out holding my own shiny new Jsp tag library

ApacheThe Kansas EMS license renewal application, a struts servlet has been on my desk for a few weeks now. I am about one third of the way finished with this app, and so far so good. Today, the hurdle of the day was to figure out how to get an input field for which the user had entered bad data to be highlighted. Like this. I already had a stylesheet for it, and it looked like I needed to do something like this in the html: [code lang="xml"]
[/code]

Fine, except I only wanted that class to show up for input fields with errors associated with them. That requires logic, and the only way I could figure out how to do this with stock struts was either through lots of nasty logic tags surrounding my div's or through tags inside of the div's. Both solutions were unacceptable. The right way to do this is to create a custom JSP tag.

Dos^M return^M character^M hell.^M^M

Of poking fish with a stick and carriage returns.
Vim editorMust there be 20 different standards for everything? I can understand how many languages, dialects, systems of weights and measures, etc. spring up in the world. They were created in isolation over the centuries. A group of people on one side of the globe, poking at fish with a stick for thousands of years are naturally going to develop their language and customs in different ways than that group on the other side who have to smash through an ice sheet if they want to poke a fish with a stick. But in this era of the world wide web, where we are all poking at fish in the same river, why the heck do we have to do it so incompatibly? Why not just agree on one way so we can get down to the good part, which is bragging who pokes a fish the best?