Bring out the Gimp The GIMP is a free Photoshop alternative, according to people who have never actually used Photoshop. For its tenth anniversary they ran a splash screen contest called Gimp Splash 10, and the Slashdot comments wrote themselves.
Word Verification Reader, Update #3 I revamped the bitmap-to-line-segments algorithm to handle branching, and it works magically with a little state-saving and recursion. If this ever works reliably, I may end up inventing my own Nobel Prize to quiet my conscience.
Word Verification Reader, Update #2 Progress on the Word Verification reader: horizontal-line detection under the base line, plus branch detection where multiple lines descend from one. Includes my still-unformed theory on why everyone drives like a homicidal maniac this time of year.
Word Verification Reader, Update #1 I should be working, but defeating the comment Word Verifier is far more interesting. I grabbed a simple image (my lucky letters: eiifv), decompressed it with libjpeg in C, and started separating letters from background. Fun, fun, fun.
'Drawing Names' for Christmas, Revisited How I'd revisit the 'drawing names' program: a Lisp-loving colleague who blindly copied my infinite-loop bug, then doubled his code to hide it. Version 2.0 of my Perl creation, may it bring you a merrier Christmas.
'Drawing Names' for Christmas Back in the Internet Bubble days, everyone bought everyone a gift. When budget returned to the vocabulary, I was called upon to write a program to draw names. December 2000, behold my creation.
Installing a JAR without a JAD I got a new phone that runs little Java MIDlets, and I have one idea: a Sleep Mode that answers calls, announces itself, and lets the caller decide whether to actually wake me. For the cousin who smears spackle in her eyes at night, basically.
Daimler Chrysler and the Java Crisis Someone at Daimler Chrysler searched for how to convert an OutputStream to an InputStream and landed on my logs. My answer: GinormousBuffer, a FIFO that lives in RAM until a threshold, then pages out to disk, all behind one consistent interface.
The Super Secret InputStream Some poor soul found my blog searching for "covert inputstream to string." Assuming they meant convert, here is how to do it in Java, along with all the reasons you probably shouldn't read an 8GB Titanic rip into memory.