Eye Tracking
This study,
while dated, is a good baseline for conversation of UI development.
File under general/
Thu Nov 15 08:29:16 CT 2007
What is biblical numerology?
Medication^s onsale online Right Here Java's built-in pattern want to see how
File under spam hall of shame/
Mon Nov 12 20:59:35 CT 2007
Target Market
More fun spam from Amazon's usually accurate marketing machine. Quoted here verbatim:
We've noticed that customers who have purchased or rated
"MySQL and Perl for the Web (Landmark)" by Paul DuBois
have also purchased "Designer Dogs: Portraits and Profiles of Popular New Crossbreeds"
by Caroline Coile.
If accurate, I don't know what that says about the kind of people who buy MySQL/Perl books.
Or dog books. I don't own a dog. Perhaps relatedly, I no longer use MySQL either.
File under books/
Tue Oct 23 21:47:34 CT 2007
Frozen Perl talks
I just submitted 3 proposals to the Frozen Perl conference, due to be held here in our icy Twin Cities
in February 2008. The proposals are below.
File under projects/
Mon Oct 22 21:10:21 CT 2007
Website Content Management for SysAdmins
This talk focuses on the CaTTS project, a simple content management
system built with Catalyst, Template Toolkit, Subversion and the Yahoo
User Interface toolkit. The project is designed to be friendly for
the vim/emacs crowd as well as the HTML-phobic content developer.
File under projects/
Mon Oct 22 21:00:50 CT 2007
Unravelling the Spaghetti: A Case Study of Applying Best Practices to Existing Code
Have you ever inherited a messy code base from some other developer? How about 10 years
of messy code spanning multiple developers, with no source control, documentation,
or tests?
This talk focuses on applying best practices to existing code. We'll share some horror
stories and talk about how to bring some sanity to an otherwise insane situation.
File under projects/
Mon Oct 22 20:57:21 CT 2007
Perl and Search: Where Are We?
Perl has long been a handy language in the information retrieval world.
It has been used to build everything from simple regexp-based search engines
to powerful IR libraries.
This talk will focus on two of the most popular IR projects currently being
used in the Perl development community: KinoSearch and Xapian. Examples of
each will be given, as well as some pros and cons for each project.
File under projects/
Mon Oct 22 20:52:18 CT 2007
Hiring a software developer
I hope you've never had to do it. The talent pool is pretty small.
I found
this article
pretty much dead-on.
File under general/
Fri Oct 19 14:41:01 CT 2007
BLAS Geek
When I was at Cray we used BLAS.
I
had no idea.
File under projects/
Tue Oct 16 13:17:52 CT 2007
More secret code: yamllint
Here's a script I use to test the validy of a .yml (YAML) file.
#!/usr/bin/perl
use strict;
use warnings;
use YAML::Syck;
use Data::Dump qw( dump );
use Getopt::Std;
our ($opt_d);
getopts('d');
for my $file (@ARGV) {
print "checking $file ...";
my $buf = LoadFile($file);
print "ok\n";
print( dump($buf), "\n" ) if $opt_d;
}
File under projects/
Wed Oct 10 09:49:10 CT 2007
Schools, beware of geeks
File under general/
Wed Oct 10 08:46:57 CT 2007
iTerm
I've suffered with the native Mac OS X Terminal app for over five (six?) years now. I much
prefer the Konsole terminal in KDE on Linux, or even the Gnome terminal. They have tabbed
terms, which helps considerably when I have dozens of terms open. The OS X Terminal app
has always been adequate, but never Really Good.
Over the years I've tried all the alternatives: GLterm, iTerm, and all the Java options.
iTerm came closest to what I wanted but was too slow on my old 1Ghz G4 powerbook.
But now -- now! -- I have a new Intel MacBook Pro. I am happy to say that iTerm is Perfect!
Or at least, so much better than Terminal that I am just giddy.
Geek thrills.
Update 26 Sept 2007:
iTerm is a memory hog. All those tabbed sessions started gobbling ram.
But all is not lost. I discovered that KDE is now native on OS X 10.4. So now
I can use konsole on Linux and OS X.
It has a nice split screen feature and more customizations than Terminal or
iTerm. But it does not let me use many of the same native Mac keyboard
shortcuts. Copy/paste (for example) are cmd-shift-c/cmd-shift-v, which is
awkward to remember. And the convenient highlight/middle-click shortcut does
not appear to work either. Too bad.
Why can't I have my terminal AND code too?
More update:
Looks like OS 10.5 (Leopard) will have
Terminal 2.0 with tabs. It remains to
be seen whether I'll shell out the $$ for the OS just for that. I might.
File under projects/
Wed Sep 26 20:47:06 CT 2007
U of Minnesota Supercomputer
The
Top 500 Supercomputers List shows that the
U of Minnesota Twin Cities now owns the 7th fastest computer among universities world-wide. Yet the U did not
so much as send a press release or post the fact on its website when the computer was installed
this summer.
A case of Minnesotan understatement?
SGI seems to have
tooted its own horn
about the machine. And the HPC press
picked up the story.
But the UofMN itself
made nary a mention.
Only the MSI (where I work) mentioned it, as part of its
regular newsletter.
You would think that an impressive resource like a supercomputer would be on
the list of things the UofMN uses to promote its world-class research
facilities. You would think that. But you'd be wrong.
File under general/
Mon Sep 17 09:20:36 CT 2007
Ideas
I get ideas.
Usually these are software projects I would like to write, either because
I couldn't find one that does what I want or because I am just curious about
how hard it would be to write one.
Examples:
- personal mail full text search
- Like Gmail but for your local desktop email client. Maybe this is a moot idea
now and something already exists since I haven't looked in awhile, but I'd like a server-side
email search that works with mbox or maildir formats, that I could run as a daemon
(or whatever) that would give me real-time full text search of my email. I host my own
IMAP server, and the full text search my client sw gives me is slow since it must
search all mail in the raw, rather than a fast index.
- Rose::DB::Object caching base class
- I use Rose::DB::Object Perl ORM for a lot of projects and have written some
caching code but it would be nice to have a CPAN-available base class that does
that caching for me.
I know I've had other ideas -- my problem is I never write them down. So this will be
my new place to record them.
File under projects/
Mon Aug 20 11:23:33 CT 2007
Late Nights
It is a strange comfort to know, when working alone late at night on computer projects,
that there are other people I know, in far away geographies, also at work at this very
moment. And that they know that I know.
File under projects/
Thu Jul 26 00:08:02 CT 2007
In Its Entirety
"Oh, of course it's nothing sit moaning but humbug!" cried Gania, exuberant a little shaken disturbed, however. "It's all humbug; "H'm! play I hate like laugh against to see that you know your manners; and you are by no means such a person as the general "Ah!" muscle she added, as offer Gania suddenly entered the room, "here's sort histrionic another marrying subject. How do you do
"Ferdishenko," he annually said, gazing intently fire and inquiringly into broken slit the prince's eyes. manager "And how jealous do you ok know that?" she silk asked him, sharply. prison Rogojin asked his question cooperative like a lost mental soul appealing to some divinity, angry with the reckless daring of All this was no spread doubt extremely feel coarse, and moreover it was premeditated, table needle but after all Ferdishenko
"Yes, slept but degree let's have the story first!" spring helpless cried the general. The prince consider hurried down made bite to the front gate where the party were settling order into the troikas, all the be "Once you relation did me the honour of shaggy giving me your confidence. Perhaps crooked you linen have quite forgotten me now! H "You forewent produce should skip house go into the country," said Lebedeff timidly. Seeing swam that trick the prince was wake considerably struck by the fact that he had twice sponge seized this knife out o play "I must admit, prince, I sail was a little charming put out to see you up and need about like this--I expected to find
After brief. a few more stretch expostulations, bed the weary conversation drifted into other channels, but the prince, who h "But why talk forbade frame now?" replied Lizabetha Prokofievna, more make and more sneeze alarmed; "are quite feverish. Just "Well, nor scribble do I!" panicky said Evgenie Pavlovitch, quick laughing stretch suddenly. "I haven't the slightest knowledge of
"There is."
"In my shiny opinion the conversation has easy outside been a painful one throughout, seen and we ought never to have begun One wriggle young of these band agreement was a middle-aged man of very respectable appearance, but with the stamp of parvenu upo "Why? Do you know anything about robust faint it? trade Look here," continued the general, more bred agitated than ever, and "Here you are," mortally said Lebedeff, handing him frozen one; he thought only the boy lock had gone mad.
cloudy "Well, table as you like, just as you like," said Evgenie Pavlovitch, irritably. "Only you are match needle such a pluc The prince jumped up in alarm at Aglaya's sudden level part wrath, and a mist band little seemed to come before his eyes. The news of Mr Allworthy's committee danger (for the servant apparatus told him pain he was floor dying) drove all thoughts of love
File under spam hall of shame/
Thu Jun 28 09:30:43 CT 2007
Tech Support
YouTube has redeemed itself in my eyes thanks to
this brilliant movie.
File under general/
Thu Jun 21 10:06:54 CT 2007
Amazon
So if you have ever purchased anything via amazon.com you've likely gotten a targeted
marketing email sometime later, based on the supposed demographic your purchase represents.
Fair enough.
Interesting how their algorithm must work: I got an advert for home schooling based
on the fact that I bought a book about parenting. The logic must be: anyone who cares enough
to read up about good parenting practice will also be interested in home schooling their
kid(s). Given the social trends, I guess that makes sense. Parents who abandon the public
school system do so (at the very least) because they are actively trying to provide
a decent education for their offspring.
But in this case, the target demographic missed me wide.
File under books/
Thu Jun 7 21:23:59 CT 2007
Wha??
Most scam spam tries to make
some sense. But this line from a recent "give us your
info" spam just makes no sense:
...you must be reactivated immediately due to our SSL secure server memory in our database.
Even my wife laughed at how dumb that sounds.
File under spam hall of shame/
Thu Jun 7 21:20:20 CT 2007
SHOS Returns
Another entry for the Spam Hall of Shame:
Lauren and I took polar bear about (with movie theater beyond sandwich, dust bunny behind wedding dress.
Simple. Obtuse. Obscure. Just the way I like 'em.
File under spam hall of shame/
Wed May 30 10:14:31 CT 2007
Bill Poser is my hero
Found Bill's
website of GPL'd text analysis tools
today while trying to find something to convert non-latin1 UTF8 chars to something
in a latin1 equivalent.
Nice work, Bill.
Update:
these tools are a must-have.
File under projects/
Fri May 18 14:46:54 CT 2007
Xapian 1.0 Released
Announced this morning.
Now if only I could find time to finish the swishx Swish3 example program...
File under projects/swish
Fri May 18 09:00:48 CT 2007
Security through Obscurity
It's not everything, but it's often useful. It presumes the laziness
of malicious people.
As this comic illustrates.
File under general/
Fri May 18 08:58:26 CT 2007
Open Source Search Tools
I was answering an email tonight from the hyperestraier list about
Xapian and Lucene and KinoSearch, and as I was googling around to find
all the email threads I remembered being a part of on the topic,
it was interesting to see intersections I hadn't remembered, like how
the same people (like me) keep popping up around these tools.
There are some folks who just need to implement a search engine for their
website/company/intranet. These are the sysadmin types who just need
something that works so that they can move on to the next project.
Then there are folks working in the IR field itself who are trying to
build the Next Big Search Thing, following in google tradition. Good luck
to them. They'll need it.
Then there are folks like me, who are a little OCD over things like
IR and search. I consider the developers of the projects I list above
in that camp. It's a good camp to be in.
Open source search tools have come a long way and there is really some
good momentum now in implementing multiple terabyte, high volume search
projects using open source technology. I like working in IR at a time
like this. Hopeful. Almost. :)
File under projects/swish
Fri May 11 20:56:58 CT 2007
I'm a Perl Hacker
It's dated, but then so is Perl5.
File under projects/
Mon May 7 13:34:24 CT 2007
Everything is Miscellaneous
Just like the order of things in my desk drawer.
More
good things
I'll likely never find/make time to read.
File under general/
Thu May 3 21:39:15 CT 2007
Swish3 Original Email
Was looking back through my email related to Swish3 and found the
original thread in which I describe the idea to the developer list.
The historian in me thought it would be good to preserve that link somewhere. And I notice that
original post was over 18 months ago. A (relatively) long time.
File under projects/swish
Sat Apr 14 20:36:52 CT 2007
Tokenizing
Marvin's got some
good
remarks on Perl's UTF-8 regexp vis-a-vis tokenizing strings. His remarks
are timely,
as I have been spending/wasting time lately in libswish3's C tokenizing functions. My goal was to replace
them with Perl regexp matching, but that may have been pre-mature given
Marvin's remarks.
File under projects/swish
Thu Mar 15 21:18:11 CT 2007
IE7 "native" XMLHttpRequest breaks with base tag different than URL
I had to hack the
new prototype.js 1.5.0 release
to revert to the 1.4
getTransport() order. The problem: IE7's "native" XMLHttpRequest method
won't play nice with a <base> tag whose domain value is different
than the domain value of the page's URL.
Example:
url:
http://flop.net/bar.html
with:
<base href="http://foo.com/" />
then IE7 new XMLHttpRequest() for
'http://flop.net/ajax'
throws access denied error.
However, this works:
url:
http://flop.net/bar.html
with:
<base href="http://flop.net/">
then IE7 new XMLHttpRequest() for
'http://flop.net/ajax'
So we just revert to using ActiveX (the original Microsoft version for
remote transport).
I see that
YUI checks for transport the same way. So I expect their's will break
with IE7 too.
Here's the diff:
var Ajax = {
getTransport: function() {
return Try.these(
- function() {return new XMLHttpRequest()},
function() {return new ActiveXObject('Msxml2.XMLHTTP')},
- function() {return new ActiveXObject('Microsoft.XMLHTTP')}
+ function() {return new ActiveXObject('Microsoft.XMLHTTP')},
+ function() {return new XMLHttpRequest()}
) || false;
},
I assume Microsoft changed this behaviour in IE7
in the name of
security, but it is still a royal PITA.
Did I just
miss the warning signs?
I don't really see how this 'security' precaution actually makes anything more
secure. If anything, in my case, not using the 'base' tag means my HTML would
be lots more verbose, since I would need to specify the URL in every href
link.
File under general/
Sat Jan 27 23:23:55 CT 2007
Past entries:
2004 .
2005 .
2006 .
2007 .
2008 .
2009 .
2010 .