INCLUDE_DATA

Explaining

And the tide rises, the tide falls.

Posted in Explaining on October 18th, 2004 by avi – 41 Comments

I wrote this program today to find what I’ve been calling “combo words”. Basically, you find one word that ends with a certain sequence of letters and then another word that begins with that same sequence of letters and it smushes them together into a fancy, new word. I’ve found that there are plenty of really dumb and boring examples of this, for example, “daydreaming” (daydream + dreaming). However, there are quite a few very amusing ones:

elephantoms
circumspectroscopy
bittersweetener
floundertaking
transpacification
permissionary
benedictionaries

etc, etc. Come up with your own! It’s fun! You can also run my program to get a big list and cheat, like me. :)

The recollection bathes me still with sweat.

Posted in Explaining on September 29th, 2004 by avi – Be the first to comment

Step 2: Make sure your chicken is well lubricated.

From schoolboy’s tongue, no rhetoric we expect,

Posted in Explaining on July 28th, 2004 by avi – 3 Comments

Recipe for my favorite breakfast:

You start with a stick of butter. It should be salted butter. You can substitute this with margarine, but it’ll taste like shit. Now, this butter should be nice and cold and firm, so you have to make sure that you pull it straight from the fridge, don’t let it sit out and get soft.

Next you need 4 pieces of bacon, nice and crisp. Actually at this point you should probably put the butter back into the fridge, as it’ll get soft while you’re making the bacon. Don’t use any of that fancy pepper bacon or hickory bacon or any of that junk; just plain old pork bacon, cooked until it’s really crunchy and hard. It’s also fairly important that the bacon pieces be straight. So, make the bacon, then get the butter straight out of the fridge.

Next you need to make a pancake. You should probably put the butter back in the fridge. Actually, the bacon will get gross while you’re making the pancake too, so just throw that out (or eat it, you know, whatever.) So you make a regular old pancake. I usually use the Bisquick mix stuff, you just add some water and I think milk and kind of cook it up. Make sure the pancake is fluffy and not too gooey in the middle, ’cause that it just gross.

OK, so now you have a pancake, slap that in the oven on a low temperature to keep it warm, now make your bacon again. Once the bacon is hot and crispy, you have to do this next part real fast; You take out your stick of butter and put one piece of bacon along each long side of the butter. The bacon should stick to it, if you’ve done it right. Now you take your pancake out of the oven and wrap it around the butter and bacon, so you have kind of a taco, or maybe an enchilada. Now the key here is that the pancake is nice and warm but the butter is cold, so it’s a fun mouth sensation.

That’s it; you eat it with your hands. I like to dip it into a cup of syrup, but I have found it’s important to use the good syrup; not that fake imitation maple crap, or any kind of fruit syrup. You have to use the good stuff, the maple syrup that comes in a bottle shaped like Canada. You dip that on in there and eat it. It’s great.

The Hermit sits alone. These beauteous forms,

Posted in Explaining on April 1st, 2004 by avi – 3 Comments

For those curious about this:

http://www.thinkgeek.com/stuff/41/tshirt.shtml

I give you:

for (my $x =
  '0100100100100000011100110110100001101111011100000111000001100101' .
  '0110010000100000011000010111010000100000010101000110100001101001' .
  '0110111001101011010001110110010101100101011010110010000001101111' .
  '0110111000100000010000010111000001110010011010010110110000100000' .
  '0100011001101111011011110110110001110011001000000100010001100001' .
  '0111100100101100001000000110000101101110011001000010000001100001' .
  '0110110001101100001000000100100100100000011001110110111101110100' .
  '0010000001110111011000010111001100100000011101000110100001101001' .
  '0111001100100000011011000110111101110101011100110111100100100000' .
  '011100110110100001101001011100100111010000100001';
$x =~ s/.{8}//; eval("print chr 0b$&")){} print "\n";

Just run it in your favorite perl interpreter and it’ll print out the “super secret hidden message”.

And yes, I did type in all those numbers and no, it didn’t take very long. Got it right on the first try too.

I thought if I could only live

Posted in Explaining on December 12th, 2003 by avi – 2 Comments

As you all know, I like to watch movies — I watch up to 2 or 3 a day sometimes, depending on what else I’m doing. One thing I always do after watching a movie I’ve never seen before is visit the IMDb entry for that movie and read a little bit about it. I usually read the trivia section, I skim the goofs section, and then I read some of the reviews.

Now, there are a lot of review links for many of the movies, and most of them suck. The vast majority are broken links, or just one or two paragraph blurbs, or other linkfarms to yet more reviews of the movies, or even just poorly written. So I have a few that I’ve determined to be good that I generally always read. The Salon.com reviews are very quite good, especially those written by Stephanie Zacharek, with whom I nearly always agree. The Onion’s AV Club (which is not, as you may believe, a humor site in any way), also has very good, pointed reviews. I used to read Roger Ebert’s reviews, but I more and more found him to be basically a total moron who, apart from making at LEAST one factual error per review (look at them closely some time, I think you can find one in every single review), he very often misses the point of a film and will just review it based on how it made him feel about his childhood or some bullshit like that. When none of my “regular” folks have reviews (actually fairly common for older movies), then I will generally read some reviews from some of the bigger papers.

The other person whose reviews I generally read is Doug Pratt, the guy who writes for (and runs) DVDLaser.com. The reviews are also pretty short, but they’re mostly focused on the technical aspects of the digital transfer — image quality, color balance, audio fidelity, etc. I like to read them to give me a good point of reference for what people mean when they talk about stuff like that, and for one other reason — when he’s discussing the DVD features, and there are foreign language subtitles, he always includes a sample line from the movie in one of those languages. I can’t entirely say that I know why, but I find these little snippets of translated dialogue to be incredibly funny. So funny that, in fact, I will share some with you. Bonus points to anybody who can identify the movies they’re from:

¿Este es un mojón de ABBA?

Je t’ai amené le dernier bulliten. Devine qui vient diner, maintenant?

¿Hablas conmigo? Entonces, ¿con quién diablos hablas? ¿Hablas conmigo?

who Langston warned and Dunbar amused

Posted in Explaining on October 11th, 2003 by avi – 2 Comments

Those of you who have been keeping track (and to you I apologize), will be aware that I have a number of “systems” I use in order to keep track of what order I watch my DVDs in. I have quite a few DVDs, and I have a few guidelines that I like to follow while watching them — for example, I like to watch all of the special features on each DVD, but I also like to wait between re-watchings of a DVD so that I don’t get too bored of it. I also like to try my best to watch netflix DVDs as soon as possible so I can get them back (so I can get more), etc. I used to accomplish this by just have kind of a big pile of DVDs and I would sort of grab whichever one I felt like watching at the time. I know this kind of thing is entirely sufficient for most people, but I spend far too much time worrying about optimization in my own life, and it just wasn’t swinging it for me. So, over a period of time, I came up with the system that I use now — a trio of interdependent queues[1], combined with a cascading interleave to form a single queue, from which I select movies one by one.

Let me describe the interleaving part in a little more details, because it’s really the part that makes everything work. The 3 individual queues are each made up of a single type of movie; there’s the Netflix queue, the queue of movies that I haven’t watched yet, and the queue of movies of which I have watched the main feature, but I have not yet watched the special extra features. So first I interleave the two latter queue together to form a composite queue of “movies I own”. I then take the Netflix queue and interleave it with this composite queue to get the final ordering of movies to watch. Movies are removed from the “master queue” in order, and they are added to each sub-queue as I get them. Arriving netflixen are obviously added directly the the end of the netflix queue. When I buy a new DVD, it’s added to the end of the “main feature” queue, and after I watch the main feature of a movie that I own, if there are special features on the disc, I put it at the end of the “special features” queue. When I watch a disc’s special features, I generally only watch an hour or two worth of features at a time, and then put it back at the end of the same queue.

This system affords a number of nice features — I watch netflixen reasonably quickly, twice as often as movies that I own. This helps me keep the netflix flow going at a good pace. Interleaving “new” movies with special features discs makes sure that I don’t get overly bored watching documentary after commentary after documentary. Putting movies back at the end of the special features queue means that I maximize the amount of time between 2 watchings of a given DVD — this way I won’t get bored watching stuff about the same movie over and over. Some movies do go through the queue a lot of times — FotR went through 7 times (one viewing of the film, 2 special feature discs, 4 commentaries), but that’s not bad. At no point did I think “God, shut up about the ELVES already”, and I got to see everything on the disc.

The really nice thing about this system is that the implementation is quite simple — it’s just a pile of DVDs, in order. It’s trivially easy to inspect the pile and determine where a given DVD should be inserted to simulate the system described above. Since I almost always have more DVDs than I do netflixen, they just go underneath whatever DVD is under the lowest netflix. Normal DVD either go between the high pair of DVDs of the opposite type that are adjacent, or they just go at the bottom of the pile. So that’s the system.

read more »

Ah, happy, happy boughs! that cannot shed

Posted in Explaining on August 6th, 2003 by avi – 8 Comments

Fun printer hack story from work.

Higher-end HP laser printers have a small LCD letter display on the front, that they use to display status messages, etc. This morning, I heard about a way to change this message to any arbitrary string, using a very short piece of perl code. Now, I am too much of an upstanding citizen to actually make use of this knowledge. However, I am not so well-behaved as to not send the information to someone who would make use of it — the office’s resident bitter sys admin.

He took the news with quite a bit of relish. (I heard him from about 5 cubes away exclaim, “Oh goody!”)

For a while this morning the printer said “GRAPE JAM”. After that it said “PRESS ESC TO CONTINUE”. When I left the office it was saying “MY MIND IS GOING I CAN FEEL IT”. He claims he’ll be changing it about once a day from now on.

It’s confusing the hell out of sales. I approve.

And now, like amorous birds of prey,

Posted in Explaining on July 26th, 2003 by avi – Be the first to comment

I guess it’s time to update. I keep writing half of an entry and then deciding to just delete them. Such is life. Anyways, the past few days…

Last night I set up the very first stages of my planned X10 system for my house. For those that don’t know, X10 is a system whereby different electrical devices in your home can communicate amongst themselves using signals transmitted over radio, and also through the power wiring of the house itself. As an example, here’s what I set up last night: I replaced the light switch that controls my front outdoor light with an X10 light switch. That light is now a X10 device, with code 1. Then, I plugged a radio transceiver module into another power outlet in my house. This device relays radio signals into the power system. Finally, I bought a key chain device, about the size of a remote car opener, which I configured to transmit control signals to devices 1 and 2. So now, when I get home at 1am to find that I’ve accidentally left my outside light off, and I can’t see anything at all, I can just push a button on my key chain and the light will come on, instead of spending 5 minutes fumbling around with my keys and my little LED light thing. It’s pretty nice.

Going forward, I’m not really sure what I’m going to do. I have a doodad that will let my computer interface with the X10 system, so I will be able to write some code to turn lights on and off, stuff like that. They also sent me a ton of extra stuff, since X10.com doesn’t seem to sell anything that isn’t in a “bundle”, so I have some motion sensors, a control panel thing, and some other assorted X10 devices. I’m really not sure what I’m going to work with next, but it should be fun anyways. I’m really happy with what I’ve gotten done so far.

So today, I went to a gun show. I’m not really a huge gun nut — I have fired some at a range a few times (a friend had a membership there, so it was near enough to free), but that’s about it. I’d never been to a gun show, though, so I figured it would be worth checking out. It was pretty interesting; people were selling a lot of stuff I didn’t expect them to, and I learned about different gun stuff, by asking the various sellers. There was a lot less Nazi stuff being sold there than I had thought there would be, and most of the people selling it were selling WWII and WWI memorabilia in general, but there was at least one guy who just had the big all-Nazi storefront. I guess he has the right though.

All I bought was a butterfly knife; I’ve kept a butterfly on my desk ever since I picked one up at some point during high school — I like to just flip it around while I’m thinking over things, or waiting for the ‘puter to do its thing, etc. Most butterfly knives you find at cutlery shops are the same crappy brand, and they break really easily. They’re only $10-$15 each, so it’s not a huge deal, but it is annoying. This new one I got is really nice though: it has internal hinge pins, which means they don’t get loose nearly as quickly, and it has really sturdy handles, so they’re not going to snap, which is how most of the others break. The only thing I don’t like about it is that the blade is double-sided; a lot of the butterfly techniques I like to practice involve slapping the blade against your finger, which can hurt a little bit with a double-sided blade. :) I am getting used to it though.

Like Venus in her pearly boat.

Posted in Explaining on June 26th, 2003 by avi – 3 Comments

I vote that today, June 26th, becomes National Anal Sex Day.

Hallmark will make a fortune in greeting cards.

Do I have a second?

And Jamshud’s Sev’n-ringed Cup where no one knows

Posted in Books, Explaining on March 13th, 2003 by avi – 5 Comments

I want to talk about my book system.

I guess it’s kind of a conceit that anybody will care about it, but there aren’t many aspects of LiveJournal writing that can’t be called a conceit at some level or another, so I guess I’ll press on. The basic idea behind my book system is that of fairness — mainly to books. What I mean is, I feel bad if I buy a book, or somebody gives me a book, and it ends up just sitting on my shelf for too long not being read. I feel like that book is being marginalized somehow.

So if I just left things to my own choice at the time of choosing a new book to read, books will get ignored all the time, especially if the book doesn’t seem very exciting or if maybe I think it’s going to suck. Or especially if I know it’s going to suck. So the key is random choice. It’s only fair if the book I’m to read is chosen at random from the available books — then one book won’t be shown preference over another for any reason. When I was younger and my “to-read pile” of books was more manageable, I had a reasonably simple system of dice-rolling that allowed me to select books at random from reasonably small selections. For example, if I had 15 books, I could roll a 10-sided die and a 6-sided die, add the results, subtract one and count down from the top of the pile. If I had 57 books, I would split the pile into 3 equal sections, use a 6-sided die to decide which pile to use, and then use a 20-sided die (ignoring 20s) to choose the book from the selected pile.

It was actually kind of fun figuring out the proper dice combinations, but as my book purchasing continued to outpace my book reading, and the “to-read” pile got bigger and bigger, eventually turning into a “to-read” shelf and ultimately into a “to-read” bookcase, the dice method got to be less and less viable. I also had fewer and fewer dice as I stopped playing role-playing games. Furthermore, I needed some way to keep track of all of my books, not just the ones I had yet to read — the current method of pieces of paper, a few text files on my computer, and one HTML file on my web site was also not scaling well to the ever-burgeoning book collection.

So we come to the current system. I have a relational database to describe all of the books I catalog. Each book can be in one of 4 states: “want to buy”, “can’t read yet”, “will read” and “have read”. I have a web-based interface on my home computer that lets me add books and maintain the database. I have two web pages, here and here, that I automatically generate from the database and, of course, I have a utility that randomly chooses which book I should read next.

Bah.