Irrsinn.net: taking joy in human unreason

Site updates tag, page 2

Search-building: custom or Google

Until earlier this week, I had a lousy site search in place. It was one of Google’s Custom Search Engines, barely configured and only on its own page, due to it’s hefty (and blocking!) JavaScript. I’d long since disabled WordPress’s search since my stories aren’t being run in WordPress, and I didn’t feel like trying to chew on the internal search mechanisms to include the stories.

Last week, I started playing around with a project to create my own (Python) site search, including a crawler and Whoosh-based search. I’d seen the implementation of a Lucene search in Zend go fairly easy-peasy, and liked the idea of a self-hosted search.

Problem is–well, one of the problems is–the crawl time for a site with 1200 posts (most of which are low-priority) is a deal-breaker on a shared hosting provider. It takes far longer than 5 minutes just to collect the links, even with multiple threads. Add the parse time to get indexable content for 1200 pages, and I was stuck contemplating how to crawl and index the site in parts.

This sounds like a great, fun, project. …Except that it’s already been done and I have other things I’d rather be doing. Google did it; their index for my site updates surprisingly quickly and doesn’t make me afraid that Dreamhost will smite me. (I’ve been with Dreamhost for several years now, and while I’ve learned how to properly deploy a site since moving here from… Brinkster, was it?, I don’t relish the idea of learning a new environment for all the stuff I run here.)

So instead of the 4-5 hours I’d spent screwing with the Ikea-esque assembly of a site crawler and search, I spent two this week really making Google’s Custom Search Engine (CSE) work for me. Yes, there are ads. Yes, it’s not a solution that I own. (Then again, neither is my email, in that sense.)
Keep reading >>

OpenID: why is this so complicated?!

So, I set up a Google Profile in the hopes that I could centralize my identity on the intarwubs using this new-fangled OpenID thing.

My first target was Yahoo(!). I know, Yahoo is so not cool, but the Charlotte Camarilla LARPs have their mailing lists there. (Side note: I would totally host and maintain forums on a server for them. Mailing lists are so 1998.). I just wanted to start to sign in with my Google info, because I hate making 15 different profiles. Even Facebook Connect would be fine.

Turns out I’m stuck using my antiquated Yahoo(!) account for that (and Flickr). Of course, it wants to be my OpenID, too.

I know OpenID is supposed to be (in part) about taking ownership for URIs, but I’m not greedy. I only want ownership of a couple: irrsinn.net and some other beast with all that stupid profile info (like the Google profile I constructed, or Facebook) that can identify me other places.

Keep reading >>

Titles on links: straightening up

A combination of my recent job interview and reading Coding Horror reminded me that I’ve been slack on putting title attributes on my links here on the blagonet. The interview because it touched on accessibility, and Coding Horror because Atwood crosslinks a lot of his posts, but doesn’t give the name of the post in the title tag, which means I end up with 30 open tabs to blog entries that I couldn’t cherry-pick thanks to non-semantic URIs and no titles. I also don’t know which of Atwood’s links are internal or external without checking the URIs. Kinda frustrating.

So I reactivated my External Links plugin (which puts that nice little icon next to external links) and am being non-lazy about titling links.

I feel better already. Hopefully that’ll make things a little easier to read around here.

Initial story management plugin done

My initial pass at the story management plugin is in place. It doesn’t do the fancy things I want it to do yet, but it can note the root page of a series, output a list of stories in story-date order on that root page, note the arcs, and give Next/Previous links using the actual story names in the individual stories.

Not bad for about 3 hours of work. Especially having to code around my elbows in WP.

Interesting note: PHP stores timestamps as integers, which means that to get dates beyond the year 2038, I used this nifty little Date class. Dropped in like a charm, doesn’t seem to have caused any conflicts with other parts of WordPress.

I think I’ll polish the plugin up a bit (give it a description, for instance) and toss it up in the WP plugin library. It’s not very configurable at the moment, but that’ll probably wait until I get in the sorting features that I want.

More on the story engine

I started working up the story engine last night in Ruby. Greg suggested that XSLT (eXtensible Stylesheet Language Transformation) would be perfect for it if I stored my stories as XML. Do a simple transformation, and voila, a story in XHTML with layout and everything. I was hoping I could knock it out in a single evening.

Turns out Ruby and XSLT are two more separate critters than I thought — there’s no default library to handle it, and the three or so available are older and lack documentation. Better yet, the one easily available as a gem doesn’t use Ruby’s nice REXML, it uses LibXML.

Combine all that with never having used XSLT before, and I’m in for some annoyance. Drat. Then, if I want any WP integration (like searching, for instance), I’ll need to write a WP plugin of some sort.

I think I’ll switch to writing a WP plugin. ūüôā


Recent Posts

Exploit: Zero Day “Headless Swarm” Landing December 1

So we’ve been working on Exploit: Zero Day for a couple of years now, but I haven’t talked nearly enough about it here. It’s a web-based cyberthriller puzzle game where you play as a hacktivist, uncovering and battling against oppression and exploitation.

*innocent whistle* Totally not the sort of game I’d want to make or play, no…

It’s been in closed alpha for a while, but we’re ready to offer a prelude season of paid story: “Headless Swarm”. For details on the plotline and how it relates to the continued free alpha access, check out the announcement blog post over at FPG.

Keep reading >>

Attending a Charlottean Protest

I visited uptown Charlotte tonight, amidst the current protests and unrest after Keith Scott’s death. My friend and I had a few tidbits of info on where people were meeting, but nothing concrete, so we wandered along several streets.

In areas where people weren’t protesting, businesses were closed, and the streets were unusually silent for 20:30 on a Friday night. Troops stood in clumps of three on corners, waving or saying hello when you passed them. The occasional humvee or police SUV drove by.

Things were more lively at the Omni Hotel, where folks had covered the sidewalk in chalk. There were lots of media there: it was clearly an “allowed”, acceptable, media-consumable gathering. I’d maybe characterize it as a space for quieter expression of grief, although it was criticized by another gathering as essentially being for the white people. The writings were names of people killed and sayings that many of us are familiar with: “hands up don’t shoot”, “when will we have justice?”, etc. Religious figures were around, praying with people.

Further down Trade St., past the bus station, a group had gathered in front of some government building. My friend and I stayed there for a while. They were chanting “I am my brother’s’ keeper!” and folks were stepping up to share their perspectives. Four National Guards and a cop stood between the crowd and the building (with the aid of crowd control barriers), utterly stoic when the crowd shouted questions at them.

Keep reading >>

Remastering “The Majesty of Colors”

Folks probably know that I make video games as part of Future Proof Games, but¬†maybe not what we’re doing at the moment. Many, many (many)¬†years ago, Gregory¬†made “(I Fell in Love With) The Majesty of Colors”, a very sweet Flash game about balloons and drowning.

As the site stats geek for FPG, I can tell you “Majesty” remains pretty damned popular. (Hell, it just got linked by Buzzfeed a few days ago.) It’s an evocative game that continues to appeal to folks wanting to explore the soft feelings of a big, weird, sessile alien.¬†Problem¬†is, Flash is finally¬†actually dying — no phone/tablet can run¬†it, and some browser configurations require¬†user action before it’ll run Flash.

So we’re bringing “Majesty” to modern devices: Android, iOS, and¬†Windows/OSX/Linux. And holy crap, this game feels great on a phone;¬†moving the tentacle with your finger just feels real in a way that the tiny, mouse-controlled Flash version doesn’t. I’m excited to test it on tablets.

Keep reading >>

July 3rd 2016
Tags: On Life and Love, , No Comments

First Hair Highlights

The first time I dyed my locs.

One of the first pictures taken of my newly-dyed locs.

I did it! I’ve had locs twice now, for a total of almost five years, and each time I’ve gone, “I should be bold and dye my hair!”

But it’s very permanent, especially since my natural hair color likely needs to be lightened for color to show much. Plus, lightening hair can be damaging. Last thing I want is to have my locs falling out. I’ve literally spent years growing these things; I’m not ashamed to say I’m a little attached to them, even if I don’t name them or count them.

But finally, with the aid of recommendations from friends and family on a beautician, I got my hair did.

Keep reading >>

Ossuary 25% Off on Steam!

Steam Summer Sale 2016 Offer

Ossuary—Future Proof’s first commercial game release—is part of the Steam Summer Sale and will be 25% off until July 4. If you haven’t had a chance to play yet, it’s only $7.50 (USD). If you’re on the fence, the demo, “The Hodge-Podge Transformer,” is also on Steam.

It’s been on Steam for a year and a month now, and it’s been a fascinating experience. After watching a few Let’s Plays of Ossuary and “Hodge-Podge,” we released an update in December to improve the tutorial experience and solve some colorblindness issues.

EZD Logo Color Our current work in progress is Exploit: Zero Day, a cyberthriller where you roleplay a hacktivist by making and solving puzzles. It’s pretty cool, and our alpha players are making really friggin’ awesome puzzles and stories. If you want in, hop on the monthly mailing list and you’ll get a key in the next newsletter.

When a Nasal Polyp Isn’t a Nasal Polyp

I had a pretty gross thing happen to me today.

It started with a long, thin scope being poked into my nose — deep into my nose. They need to see where this mass in my nose was attached before they removed it.
Keep reading >>

Questionable Decisions: Hot Yoga

I made a questionable decision this afternoon.

After coffee with a yogi friend, I was inspired to start climbing back on the yoga horse. Most yoga studios in my area only have Saturday morning classes, so I had very few options for something in the afternoon.

Whatever. I was feeling brave. I signed up for an all-levels Vinyasa hot class at a studio I’d never been to. Ninety minutes.

Keep reading >>