HHC: Brainstorming Part 2


Unfortunately I’ve been running up against a wall in my previous todo list and have subsequently decided (however tentatively) that I’m going to be writing all this stuff from scratch, which irks me to no end.  RSS feed readers, on-screen notification systems, local content repositories, etc.  I just have to be prepared to write it all from scratch, then keep my eyes open for toolkits (at both the product and library levels) that will help me skip ahead a bit.  So while I’m sketching that out, let’s keep going with the process of breaking down the initial list into more concrete requirements and todo list items.

  1. A contact-management system that would make Harvey MacKay faint from information overload.

I’ve always wanted to tie together my flow of email with a real contact management database.  Partially for a simple address book that’s not hosted on some effervescent mobile device, partially for “business networking” (something that was important to me back then and is suddenly starting to come back around) and partially to keep an eye on who I know, what I know about them, etc.  Yeah, it probably sounds a little Big Brothery. But I think it would be a fascinating tool that wouldn’t require so much in the way of active maintenance effort.

Now, I could just use a CRM system.  Something like SugarCRM. Just pull the thing down and slap it in to a database.  So I’ll check around for something like that. (I have enough professional experience with Sugar to know it’s positively awful, so it’s definitely not a contender.)

  1. Notifications and ticklers (woohoo!) for the following:
    1. People who’ve emailed me who I’m “officially due” to contact
    2. Software projects and updates that I’m interested in but may not have explicitly subscribed to.
    3. The same thing with commercial products (books, music, movies, etc.)
    4. All of this to bubble up into the ticker application mentioned above as well as a “product wishlist” that’s automatically maintained and published to a well-known location so I never have to answer the question “What do you want for (insert holiday here)?” again.

Of course this feeds in to the contact management system. But here we start getting in to the interesting stuff, something I used to call the “Interest Engine”.  Let’s not put the cart before the horse.

  1. People who’ve emailed me who I’m “officially due” to contact

The unspoken component here is that I want to tie my email (and perhaps other forms of messaging) in to the contact database system so that I can see things like “you usually go a round of email with soandso every week, but you haven’t in a few weeks.  Do you mean to let that slide?” etc.

This isn’t a particularly easy problem, but it’s not exactly high-end computer science either.

The key to this, and how it relates to the other sub-items in #4 is that I want to be proactively notified not only of events (Frob sent you an email!) but of peculiar gaps between events (hey, you haven’t emailed Frob in a month!)

The other three things on that list are essentially “event sources” in that they’ll take the shape of a few search engines that’ll notify me if the results change.  So if I like Deadpool (and if you don’t you’re wrong) this thing should take a peek on the internet every “time interval” and see if something interesting pops up (what “interesting” means is an interesting question) and creates a similar alert.

Add to that the other items, software updates, youtube channel updates, movie releases, etc.

I have to confess, that #4 item I don’t really understand.  One problem might just be that back in 2003, Amazon wasn’t SUCH a big deal and my wish list just wasn’t that well developed.  But now? Now I really think that’s solidly covered.  Besides, what good is maintaining a wish list (which is ostensibly for sharing) on a personal internal closed network application?  So I’m officially striking #4.

So what this all comes down to for these two major-heading items is three things:

  1. contact management database
  2. Email repository
  3. An engine that creates custom notifications based on a variety of heterogeneous data sources, both internal and external

Fortunately the email database is something I already have and use.  I created a little custom database and a few scripts that parse mbox files (from Thunderbird), break them out into individual messages, then insert them in to a relatively logical database.  I’m encountering some interesting capacity issues now that it’s growing with email content bodies. But I’ll be able to manage that well enough.

The todo list:

  1. Roughly outline what I’m going to want in my contact management database.
  2. Use that outline to shop for off the shelf systems that have the flexibility, UX, and open architecture I need.
  3. Create a single sample of a custom rss feed off of a scraped website of some kind.
  4. Create a custom rss feed off of incoming emails from one or two email addresses.

Should be fun.  As for the last todo list, I’m waiting on a couple resources to start coding up the custom feed management system, so this will dovetail nicely with that.



WordPress wiki plugin? (or: It’s like blogging, but different)

As you might imagine (with what 4 posts under my belt in two weeks?) I’m trying to figure out what it is I’m going to do with this site. Or, perhaps better stated, how I’m going to do it.

I like the blog format, always have.  But there’s always been a problem with it and that’s that posts sort of drift off in to the past and out of site (heh, see what I did there? I kill me. “Someone ought to.” … “You shut up. we’re not doing that here.” … “Who’s we? Frog in yer pocket?”) forever.

Let’s take that HHC post I hit publish on less than 5 minutes ago.  That’s fine. It ain’t art, nor is it literature, or particularly erudite by my standards.  But what I’d much rather do than let it drift off is be able to actively change it as needed. Expand it, break it apart into smaller pieces as needed.

It starts to sound more like a wiki (in the original c2.com sense, wikipedia) than a blog.  So maybe the thing to do is get a WordPress wiki plugin (that models itself after basic wikis rather than “group collaboration sites”), install it and see how it goes.

I might have to actually write the thing myself, which wouldn’t really break my heart, truth be told.

We’ll see. I’m gonna go poke around some.

Huge Honkin’ Console…back from the dead

I’ve been working through my archives of writing, old blog posts, etc. and I came across the original post I made back in 2003 (really? 13 years?  ugh) talking about my fantasy “Huge Honkin’ Console” project.  Going through it I realized (cringeworthy editorializing aside) that I pretty much still want every single thing on this list.  I may load up the actual page somewhere here, as it’s a marvel of early 2000s Radio Userland blog formatting (past the age of spinning guitar bullet icons, but too early for magazine layout web pages, which suck just as much.)

So here’s the outline, for your amusement and my accountability, pasted right out of the original post text’s html.  I’ll even leave in the crappy links for now, to show how much the blogosphere (remember that word?) has changed in the last 13 years:

I want…

  1. A real-time ticker application that will be updated using RSS. (Not the current “refresh to update” silliness in aggregators of today) Publishable schedule items (to the rest of the world or a specific subset at my option)
  2. To subscribe to lists of events that are occurring around my area geographically, and virtually and have those events appear in a calendaring application. To use a blog or blog-like publishing environment (I’m thinking Zope with  CMF) for a personal desktop
    heads-up-display console from which I work at all times.
  3. A contact-management system that would make Harvey MacKay faint from information overload.
  4. Notifications and ticklers (woohoo!) for the following:
    1. People who’ve emailed me who I’m “officially due” to contact
    2. Software projects and updates that I’m interested in but may not have explicitly subscribed to.
    3. The same thing with commercial products (books, music, movies, etc.)
    4. All of this to bubble up into the ticker application mentioned above as well as a “product wishlist” that’s automatically maintained and published to a well-known location so I never have to answer the question “What do you want for (insert holiday here)?” again.
  5. A database of articles and references to articles (and other reference materials) on a huge honkin’ LOCAL hard drive that’s accessible through automated AND manual topic discovery as well as a full blown search engine.  (For instance:  All of Shakespeare, the “30 days to a more readable blog” article set. Comments on my own posts off of UCCU.)
  6. the built-in modem that comes with my computer to behave as my
    answering machine, saving audio transcripts of incoming messages as well as recording live conversations. AND:

    1. Trap caller-ids and match them against my address book, entering the call event PERMANENTLY in an ever-growing log system.
    2. A record to either automatically or at my option (selectable at run time) pull up references to the caller, and lists of communications over time. Including but not limited to:
    3. Incoming and outgoing phone calls with:
      • speech-to-text generated transcripts
      • instant messaging transcripts
      • lists of instantly accessible emails between both parties.
      • cross-references between other parties involved in all mentioned conversations.
  7. Intelligent Agents (ooh, blast from the past 😉 to be constantly indexing and searching the internet for other things that I might be interested in.
  8. Fully functional annotation engines to work in conjunction with my window-on-the-web environment so I can mark-up both cached and remote versions of web pages for future reference.
  9. The ability to publish these annotations (the way a few applications used to be able to do… uTok, etc.) so that other people can view them as well.
  10. Ubiquitous PGP (or equiv) system for communication across email, instant messaging, etc. People will need to be approved to be added to the list.
  11. Notifications when people read, comment on, or annotate anything I’ve published out in publicly-accessable land. (and all the other psycho TrackBack, Pingback features that have shown up in the blogosphere in the last year or so.)
  12. Published playlists from iTunes, WinAmp and any other damn thing. Note I don’t mean publishing the mp3s, just the playlists so I can compare with other people and see what music I might be missing in the world. (Hilary sit the hell back down and shut up.)
  13. Remote whiteboard chatting  (Jabber plug-in anyone?)
  14. horrifyingly high-performance rpc mechanisms (XmlRpc for now, but something a bit more svelt in the future) to distribute this work load on my local lan however I see fit (or auto-balanced.)
  15. Published blog entries (like this one) to auto-annotate with links to the right places (i.e. Jabber, uTok,(no longer available.) , Zope, CMF, RSS, etc should all be auto-linked without me having to “create shortcuts” in Radio (which just took about 20 minutes).)
  16. Integrated desktop:
    1. liveTopics
    2. Wiki
    3. Blogging
  17. Built-in mind-mapping and diagramming toolkits for charting ideas and representing them textually once the “virtual whiteboarding” session is done. (Not to mention the automated post-session analysis and discovery phase designed to extrapolate on behalf of the participants.)
  18. That cool little thing from the AT&T commercial a few years ago where the girl plays the first 3 notes of a song on her guitar and the Agent goes and grabs the song title.
  19. Live chatting and always on IRC with private subscription-only channels between circles of friends.
  20. Newsgroups as RSS feeds, distilled into threads automatically, with a signal-to-noise ratio rating accompanying each article and group.
  21. And I want it ALL in a unified source-accessible platform (I’ll pay.  Doesn’t have to be open source.  But I will need the source)
  22. A massively flexible api for developing plug ins for the 50,000,000 things I haven’t thought of and the 150 or so I’m gonna make money on and therefore am not mentioning here.

Adorable right?  But it highlights some really fascinating things to me. As contrasted with the internet back then, the web is a worse place now. None of this stuff seemed the least bit outlandish to me back then, and certainly it’s much more within reach now.

This is what the conversation was like back in the day (something something ‘damn kids’.)  People talked about the possibilities of technology and the web and how we were going to integrate it in to our lives.

There were all kinds of neat ways for wiring my website with your web site so we could have our own little domains but still keep abreast of what was going on with everyone else.

And I wonder still what really happened.  Certainly the blame can be laid largely at the door of social media and later at the rise of the smart phone.   There used to be cool applications for interacting with websites. Now it’s just “post this to twitter, share this on facebook” and that’s it.

Let’s take my favorite example from back in the day: uTok.

uTok was a horrifically insecure little piece of software.  It would attach itself like a cute little barnacle to your web browser and, for every web page you visited, it had a live chat room of other uTok users who were accessing that page (or site, I forget the granularity) at the same time, a comment section that was live.  It was great. And yeah, of course it worked by sharing your browsing habits to a centralized server and recording your every move to provide tracking information to advertisers (I presume.)


Remember ICQ? Yahoo Messenger? AIM? Little chat applications that allowed you to just have little IM conversations without bleating everything that comes out of your mouth in to public space. And yes, you can direct message on twitter, or message people on facehole.

Yes. On one hand, I’m That Old Guy now. I’m absolutely fine with that. (And once you hit your 40s, you’ll understand why, you little shit.)

What I don’t know is the answer to this:

Has the immediacy of bite sized instant gratification social media actually resulted in a dumbing down of discourse (across all subjects) or has it simply resulted in a democratization of use that’s made it appear that way by reducing the accessibility barrier to the unwashed masses of users?

Admittedly, you have to write stuff to have a blog. You’ve got to have at least a marginal facility at stringing words together, coupled with an intention to do so.  That right there shuts out most of the population of the Little Blue Dot.

And it could also be that I frequent things like Twitter, where bite-sized bleats are all you can really manage, or reddit, where messages are fire and forget, discussion groups with no real continuity.

But for now I’m going to start at the top of that list and see if I can’t chart my way through and estimate what it will take to get that done, maybe even take a bite out of it.




Scenes from the office: #632,112,642.5

End of a long week, finally doing a big release that my code isn’t a part of.  Someone makes a smartass comment.

Boss, to me “Are we allowed to throw things at people here?”

“If YOU’re asking ME that, we need to have a serious conversation about titles and compensation.”

Uncomfortable laughter…dead silence.  Chatterbox breaks the ice with nonsequitur.

Point made.

Frankie Crackers

“So, this guy that sells me breadsticks from Italy, Frankie Crackers.”


“Frankie Crackers, yeah, he offered to have a driver, who doesn’t speak a lick of English, come out and pick me up from my hotel so I can see the breadstick operation.  Yeah, he said he’d put me up in a hotel for the night and have the driver take me home the next day.”

“Uhm… that sounds an awful lot like a different kind of offer.”

“Yeah, I know.  You know uncle John’s in the crazy house right?”

“Uncle John?”

“Yeah.  Apparently he tried to shoot himself, then he tried to jump out of a moving car while they were taking him to the hospital.  They’ve got him on … something.  I don’t know what, and they’re not letting his family see him and he can’t leave.  But keep in mind, this is from Mom.”

“Well, there’ll still be SOME facts in there then.  Even SHE can’t make up ALL that shit.”

“I know, but why wouldn’t they let his family see him?”

“Are you kidding?  He’s on suicide watch.  Having his family come and visit would make it worse.  Don’t forget who his family is.”

“Yeah, OUR family.”

“Don’t remind me.”

“Oi, make with the posts”

Yes, well. I suppose I’ve been letting the illusion of work fatigue get the better of me.  That and the weird fear that masks itself as “perfectionism” so it can pretend to be virtue (subtle shit, that.)

So, a little word on some of the stuff I’m going to post.

Some of it is going to be blind furious ranting, no doubt.

Some of it is going to be bar notes (I carry a notebook with me when I…who am I kidding, always, and I write down more than people think.)

Some of it is going to be straight journal entry type stuff.

Some of it is going to be recipes, programming notes and questions, etc.

Lots of it will also be fiction, some won’t.  Most will be a mix of the two.

So take this shit seriously at your own risk.


Let’s go spelunking in the archives and see what we can find, shall we?





It’s going to take me a while to get used to formatting posts with this new fangled 21st century blogging toy.  When I started blogging it was manual edit of html files (and we were THANKful. now GTFOff my lawn.)

I’m toying with the idea of just giving up all my sooper recipe secrets.  The egg nog, bagels, baguettes, cookies (well, maaayyyyybe not the cookies.)

The way I figure it, I came up with the tweaks that made my take on those things special. I did it before and if I just handed it over to the internet, I would be forced to push the envelope and come up with more.    We’ll see.

IN THE MEANTIME. Here’s the chili I’ve been working on for a few years (call it 4-5 times a year, a little tweak every time, yadda yadda, no I fucking hate Seinfeld.) It’s not the spiciest chili in the world. If you brag about scoville units or what the hell ever then…just go away. You’re a pepperhipster.

But the recipe below, which I just finished the last of today, is the best I’ve made.  I have to stress that it will create a “perfectly serviceable basic chili” and that you’ll end up tweaking it to your taste.  I’ll probably make this a little spicier next time.

A note: I have a 7 1/2 quart crock pot. If you try to do this in a normal sized crock pot, send me pictures of the mess because it’s gonna be fucking hilarious.

THAT said, here we go.  Ingredients first, instructions second, as God intended:

  • 5.1 pounds of 80% lean ground beef (the .1 is just ’cause that’s what it added up to.)
  • 3 Large white onions.
  • 3 Bell Peppers
  • 19oz can of black beans
  • 19oz can of pinto beans
  • 15oz can of tomato sauce
  • 28oz crushed tomato (this MIGHT be a bit much. But it backed off after a while, so I’m leaving it like this.)
  • 16oz jar of Pace hot salsa (Yeah, it’s cheating. Bite me. I’m not here to win a ‘from scratch’ award.)
  • 4 Tablespoons crushed garlic
  • 3 (+1 later) Tablespoons Cumin
  • 3 (+1 later) Tablespoons of Chili Powder. (Yeah if you want to go watch Alton Brown’s video on making your own chili powder you can. Yeah your chili will be better than mine if you do. Go brag to your mother.)
  • 1 teaspoon of crushed red pepper.
  • 1/2 Cup of flour (yes really.)
  • 24oz guinness stout (wait what? Damn right.)
  • 4oz can of sliced jalapenos (later)

It’s best to do these more or less in order, just to minimize the amount of time you’re staring at simmering pans.  It’s not the most complex recipe of all time. After all it’s crock pot chili.

Rule #1:  Taste at every stage. You’ll never know what ingredient does what if you don’t taste it every time you do something to it.

  1. Cut up the onions and put them in a large pan on medium low heat WITH A LID. We don’t want to dehydrate them.  We’re not looking for carmelization or anything. We just want to sweat them down a bit.  I find that if I put the onions in raw they never quite cook through all the way in the crock pot, which is fine if that’s how you want them.   Let ’em stew in their own juices.
  2. Turn the crock pot on low.
  3. Drain the cans of beans and pop those in. (people say dry beans are better. Never tried it.)
  4. Tomato sauce, crushed tomatoes, salsa, guinness, red pepper, garlic, cumin, chili powder (3T of each of those. Like it says above, save 1T for later.)
  5. cut up your peppers as small as you like and toss them in too.
  6. Now for the beef.  I like to cook ground beef really REALLY hot.  Otherwise, it tends to render out and just sorta boil itself and this is chili not some insipid flavorless British peasant food.  To do this, I use a wok on the stove (I tend to use it a lot owing to the fact that it doesn’t fit in my fucking cabinets) at ludicrous heat in batches of… enough.  Seriously. I’ve no idea how much at a time.  As long as you’re browning it and not boiling it, you’re good.
  7. WHEN you brown the last batch of beef, toss the 1/2 cup of flour in there and mix it up pretty good. Since it’s been browned you might want to put a good bunch of the already browned beef back in to just sorta coat with the flour.
  8. Beef in to crock pot.
  9. Check the onions. If they were on medium low and you really started them first, they should probably be ready to go in. Get every drop you can out of that pan in to the crock pot.
  10. Now. Everything is in there except the ‘later’ stuff, which consists of:
    1. 1 Tablespoon of Cumin
    2. 1 Tablespoon of Chili powder
    3. 4oz can of sliced jalapenos
  11. Wait.  Srsly. This is the most awful part of making chili.  You can’t have it today. I don’t care if you started this at 3 in the morning.  You can’t have it today.  Leave it on low until tomorrow afternoon.
  12. It’s tomorrow! (see how that works. Fucking magic.)  Put in the rest of the ‘later’ stuff. Why?  Here’s something nobody ever told me about crock pots until after I’d experienced it a few times: slow cooking DESTROYS spices.  It pulls the sharpness right out of them. That’s why we use so much on the front end, it bleeds in to the chili wonderfully, creating a great flavor base without being too sharp.  It seems on the front end like a ridiculous amount of cumin to put in anything.
  13. So we need, after 18 to 24 hours, to give the spices a swift kick in the ass. That’s why we held off with the jalapenos and a bit of each of the spices, more or less.  Dump them in now and mix it up pretty good.
  14. Give it another hour and a half.
  15. Eat.

Some more of the whys:

Flour:  The flour adds texture, plain and simple.  I like my chili to be a gloppy mess. Don’t? leave it out.  It will affect the flavor not one bit.

Crushed Tomatoes: When you taste this as the initial ingredients are all in there, you’re going to make a face and say “that’s awfully tomatoey.” I did and I was pissed because I thought I misread my recipe from the last time.  But the magic of the crock pot pulls the sweetness of the tomatoes way back by the end of things.  It’s really really not too much by the time it’s done.

Guinness: CRITICAL.  I promise you if you obey orders and taste it after you’ve mixed the Guinness in you’ll be quite pleasantly surprised by the affect it has.  It adds a richness to the flavor that nobody (yet) has been able to guess the source of.

Cumin: I think, pepper aside, it’s the most important spice in chili. It actually serves a pretty similar role in the flavor profile as the Guinness.

So enjoy.  Next time I’ll probably put a bunch of bacon in  (cooked to crispy and crumbled first) and I’ll probably amp up on the peppers by chopping up a little can of chipotle’s as well for the back end.

something something w00h00!

Yep. That’s right you fuckers. I’m pathologically incapable of keeping silent and between the headache that Trump people give me and Twitter’s shameless censorship (I mean, who suspends Robert Stacey McCain? That’s like chastising Mr. Rogers) it was time to leave THAT poisonous forum.

After the whole #JeSuisMilo thing I figured I’d stick to my guns and not leave until the booted me. But it got to the point between all that and the lycanthropic effect this political season has had on people both near and dear to me and those who I would otherwise just mute, well, enough was enough.

Plus, I probably had no protein and by 11:00 at night, that makes for a grumpy grumpy programmer.

So, in true Wilsonian fashion I lit out for the territories. Apropos of that, let me introduce or remind you of this little piece of genius:



Besides, anyone who’s known me for more than 4 minutes knows I’m far more interested in monologue than dialog anyway. This way I don’t have to pretend I’m talking TO anyone but mahdamnself.

A couple things:

– I will be posting work stories. So many people have been asking for work stories.
– I will be backfilling this blog with choice selections from blogs, sites, and various effluvia that’s escaped my mind through the keyboard over the past couple decades.
– I will also be posting on a bit of a horrifying array of topics. I used to try to keep things separate, different blogs, different category pages, etc. It led to me not writing a damn fucking thing. I’ll try to keep things categorized and tagged appropriately, but…yeah I might not.

One last thing:

[funsci.com. A post about a dead link.]

Hey, I was poking around for something half a bubble off plumb to do this weekend and I came across this site Fun Science Gallery. Now, there are a bunch of things like this out there (just google troll for it) but what really hit me was this article on Lexical Analysis of Text. This is a field I’ve been working in for years (however casually :p) and I’m pretty impressed with this article. Not for it’s sophistication, but for it’s “let’s get down to business and play” attitude. Sure, they use MS Access. But they do so in a way that provides a nice playground for experimentation. Maybe I’ll fart around with it and rip out a MySql/Perl version for giggles.