Sub-domain-er

And now, a little bit of meta, behind-the-scenes tech talk.

A week and a half ago my site had a little downtime. The cause was a result of the dynamic IP address that was assigned to Eggers1, my web server, was a little too dynamic: it changed, without warning, putting my site on a little cul-de-sac on the internet.

I was able to move my content over to another server I had, on a slower connection, temporarily. And since then, I’ve moved everything back to Eggers, but I’ve left my site content on my secondary server, Lethem2, as a backup.

I’ve been slowly working on the backend stuff necessary to have my backup server automatically mirror the main one, and to act in the future as a failover in case something goes wrong again in the future. And, knowing technology, something will fail in the future.

Not all of it is in place yet, but I’m kind of proud of the fact that I know have sub-domains to my main address on the internet. eggers.bamoon.com points to my main server, and lethem.bamoon.com points to my secondary. I’ve got each server emailing me their current IP address at 1 AM in the morning, every morning, and it checks against the previous day’s address and sends a separate alert if it changes.

Next step is to implement a script, using Mac OS X’s launchd(8) to copy the primary over to the secondary if the primary has updated. In order to make that work best, I need to upgrade both servers to Mac OS X 10.5 – they’ve been running 10.4.11 since their inception.

I would not call myself a Unix or command-line guru or wizard – at best, I’m a padawan, still learning and not yet a master. But I’ve been learning all sorts of new stuff:

  • I’ve learned a lot about using crontab(1) to run scripts on a regular basis. Unfortunately, crontab(1) is deprecated on Mac OS X – the functions of it are in Apple’s replacement, the previously-mentioned launchd(8), and launchd(8) adds more, to boot.
  • Because the default editor for crontab(1) is the viciously-user-unfriendly text editor vi(1), ugh, I’ve been learning how to do basic editing in that.
  • In the process of setting up my sub-domains, and having my main domain point to two different IP addresses and two different servers, I’ve learned a lot more about how DNS, the internet’s address book system, works; like how I can have multiple A records in a single DNS entry, to utilize DNS’s ability to load-balance traffic.
  • And, of course, I’ve learned more about how to write shell scripts, since those are what do all the heavy lifting of mirroring each server, checking IP addresses and notifying me about any changes.
  • This may seem like a simple thing, but since Unix-y (and Mac OS X is Unix-y – well, technically, BSD-y – at its core) operating systems are configured by simple text files, being able to manipulate and make changes to lots of different text files quickly and efficiently is a key skill. To that end, rather than wrestle with vi(1) all the time (or, more correctly, in addition to wrestling with vi(1)), I’ve learned how to use the command-line tool sed(1) to do fast search-and-replace on multiple text files with one fell swoop.

…and in these hard economic times, learning new skills is always a good thing. Anyone need any web server work done? Anyone? I work cheap while I’m still learning…


1 Everyone has a naming convention for their hardware. Mine is to name my computers and computing devices after favorite authors; in this case, my main web server is named after Dave Eggers, author of “A Heartbreaking Tale of Staggering Genius” and others.
2 This server is named after Jonathan Lethem, an incredibly dark and brilliant author.

How can this be?

While doing some light cleaning around the house this weekend, I noticed that my vacuum cleaner wasn’t the best. I bought it on the cheap, and it doesn’t always pick up dirt and paper shreds and whatnot from my new carpet.

And I thought, “my vacuum cleaner sucks.”

And I laughed.

Because sucking is pretty much what a vacuum cleaner is supposed to do.

I spent a few minutes working on how someone could express that their cleaning instrument wasn’t very good at what it was designed to do, and it made me laugh.

“My vacuum cleaner sucks” and “my vacuum cleaner doesn’t suck” have both the same meaning, and the opposite meaning. At the same time.

I thought of “flammable” and “inflammable” and how, even though the prefix “in-” usually reverses the meaning of the word to which it is affixed, in this one case, it does not. But it’s not entirely the same because the two words just seem like they should mean the opposite. They don’t.

Not like the “vacuum/suck” conundrum.

I wonder if the Language Log folk have ever talked about this?

One to Ten

I was thinking about how rude some people can be, when I stopped to consider where they would fall on the canonical 1 to 10 scale.

Of course, when assigning a level of rudeness on the 1 to 10 scale, you have to think about what the extreme ends of the scale represent. In this case, the 1 would represent “polite”, which is the least rude one can be.

But then I tried to figure out what the high end of the scale would be. What would 10 on the rude scale be? Would it be the rudest person ever, like, say, Andrew Dice Clay’s public persona, or even Rush Limbaugh? Someone who is barely socialized and whose every utterance is designed to shock and dismay?

The problem is, I kept thinking of more and more examples of people who were even ruder than that… like, say, Osama bin Laden, or Dick Cheney. But then we’re getting into a definitional gray area: are they rude or are they simply evil?

And I decided that there was no way to assign a top end to the 1 to 10 scale of rudeness. Rudeness, it turns out, is somewhere in the middle on some other scale, a moral scale.

It’s kinda funny like that.

My most popular status

On Friday, I had a stoopid headache that may or may not have been a migraine. It was painful, and I felt like throwing up, and I was light sensitive. Also grumpy; I chose not to inflict my presence on my friends for the normal Friday night Battlestar Galactica showing at the Bagdad.

But some say that since I was still conscious and was able to watch TV (albeit in the dark, curled up on the couch like I was re-inventing the fetal position), that it was not an actual migraine.

So I updated my status on Facebook (and MySpace, too, but as you’ll see, all the fun was over on Facebook) to read:

“Brian is starting his weekend with a migraine.”

This turned out to be the most popular status update I’ve even posted. I got seven responses to it from six different friends. I got expressions of sympathy (“Your pain. I feels it.”), denial (“It’s not a migraine. It’s all in your head!”), enthusiasm (“Fantastic! You know how to par-tay!”)

All of which were more than welcome. Still, I have to give the random award of Best Response to a Complaint of Pain to Nicole’s “Maybe it’s a tumor…”

[youtube=http://www.youtube.com/watch?v=kgAWK06SXvY&color1=0xb1b1b1&color2=0xcfcfcf&hl=en&feature=player_embedded&fs=1]

I’m here to tell all y’all… It’s not a tumor!

Hope you all had a great weekend!

“Coraline” IN 3D

Neil Gaiman, author of the book “Coraline”, has this to say on the subject of where to sit when watching a 3D movie:

@lunarobverse for 3D movies you don’t normally want to be in the front couple of rows, and middle’s seems preferable.”

I have to admit, getting a direct answer from the author of the book that was translated into a movie to my question about where to sit has me feeling more than a little bit fanboy-ish.

I love the immediate feeling of connection I get from Twitter. I actually posted my question while waiting in the lobby prior to the movie, while the theater personnel were cleaning the theater, just 20 minutes before the movie was to start. I posted the question from my iPhone, on a whim. And had my answer in plenty of time to adjust where I was sitting to take full advantage of 3D during the film.

Even some of the previews were in 3D, and for the most part, it worked: the preview for “Monsters vs. Aliens” actually looked almost enjoyable from a technical standpoint, although I still suspect it lacks the depth of any random Pixar flick. Except, perhaps, for Pixar’s next flick, “Up”, which leaves me feeling underwhelmed. Really, Pixar? A movie about a grumpy old man who wants to get away from everyone? Of course, I’ll still go see it in the theater, but color me skeptical.

Oh, wait, this was supposed to be a review of “Corline” IN 3D. I got distracted by the special effects for a moment, and the tiny interaction with one of the films’ originators.

I have not read the book on which the movie is based, but the film was sufficiently creepy from the very start. Coraline is a little girl who feels neglected by her parents and alienated from her friends and hometown; the family has just moved to a rainy little place called Oregon, and her parents are always grumpy and nose-deep in their writing and computers. Little Coraline goes exploring and soon stumbles on a parallel world where her Other Mother and Other Father are happy, doting, and giving people who cultivate a garden that looks like Coraline and bake all her favorite foods and buy all her choices in clothes and do nothing but play games with her.

So of course the ones who spoil her and lavish attention on her are the bad guys.

Seeing the movie with adult eyes, I felt creeped out by all the attention the Other Mother and Other Father gave to the little girl. I wonder if any of that translated so well to the younger members of the audience. I would be surprised if it did not, though I have only my own instincts to go on.

I’m glad I got to see the movie in 3D; with only a couple of scenes near the beginning and during the end credits, the effect was used to simply give depth and perspective to the movie, and not to shock and reach out of the screen. The level of detail to the world was evident.

I recommend the movie. If you can see it in 3D, more the better – but hurry, because apparently the 3D screens are being slowly replaced with some Disney Jonas Brothers thing. Ugh.

Anarchy texts

My iPhone vibrated and chimed to let me know a text had come in.

I was sitting at my desk at work, so I dug the silver brick out of my pocket and looked to see who had texted me.

The screen just showed a phone number, which meant that the person wasn’t in my address book. The text mentioned a birthday party for the sender, tomorrow night, at a bowling alley. It had the look of something sent to a bunch of people, a blast group text, rounding up a posse.

I had, just a week or two ago, done some cleaning up of my address book. Had I mistakenly deleted someone who still texted me? I couldn’t think of anyone – the list of texts I had received in the last few weeks had names and pictures attached to numbers; it looked complete.

Was this from someone I hadn’t talked to in a long time? A girl I had dated once or twice and then fallen out of contact with? Did I get included by mistake? Was this spam?

So many questions. I tried Googling the number, but nothing turned up.

I walked over to my friend Ken’s cube, sat down across from him. “I just got this text and I don’t know who it’s from.” I showed him my phone.

“It could be spam,” he suggested. “Replying might sign you up for something.” He shifted to his Announcer Voice. “Congratulations, by reying to this text you are now the proud recipient of a lifetime subscription to the ringtone of the month club, billed in one lump sum of $999.99!”

“Who, me?” I smiled.

“Did you try Googling it?”

I nodded. “I should just reply like I know who it is. Maybe mess with ’em a bit.”

Ken gave me a blank stare. “Or you could just tell them that your address book is messed up and you don’t know who it is.”

“Where’s the fun in that?” I was smiling, still. “You and your whole ‘be honest and straight-forward’ kick!”

Ken turned back to the computer he was working on, quickly. A bit too quickly; he betrayed a little frustration. “Whatever. Just reply.”

“This could very likely be a wrong number, or someone I removed from my address book for a good reason,” I continued, only half-serious. “It’s entertaining to play around a little.” Meanwhile, I was already keying in a reply – an honest and straight-forward reply, explaining that I had messed up my address book and did not know who had sent me the text.

Ken said, “You’re going to mess something up and piss someone off, just because they invited you to a birthday party! I just do not get you sometimes!” He was a bit rant-y.

“I like things that are entertaining. And if they’re not already, I like making them that way. What can I say?” I was needling him a little, even as I hit send on essentially the text he suggested I send.

“You’re trying to make it a better story. When it’s already a good story to begin with.”

“May-be,” I conceded.

Soon enough, the reply came back: it was a waitress at the Limelight, a restaurant I eat at frequently. I sent a quick “Oh, hi! Happy almost-birthday!” back to acknowledge I’d gotten the text. Nice!

Good thing I hadn’t carried through with my random anarchy plan…

characterized by or preferring the state or situation of being alone

I haven’t been getting out much. Except for my regular Friday nights out with the guys to see Battlestar Galactica’s final episodes at the Bagdad Theater, and my obsession to become a regular customer at the Delta Cafe, and getting to and from work, I haven’t spent a lot of time outside of my apartment.

I’m not sure why that is: a long, cold winter; most (but not all) of my friends living in other counties and me not having a car; the pressure of financial tightening as the economy worsens; or even grumpy-old-man-ism, a preference for being inside and away from strangers.

Perhaps none of these. Perhaps some of them.

I’ve even had invitations from new friends to hang out, spend some time, be social and have fun. Some, like Neva’s birthday party, I accepted. But several I have not. It’s not them; it’s most definitely me.

I lack the energy to dig into my own motivations. I think I’m afraid to find out what they are. At least, I think that, I don’t know for certain. Because… I’m afraid to examine my own motivations. Duh. QED.

I haven’t run in over a week. Last week, after feeling some pain in my groin for several weeks, I finally got up the courage to visit my doctor to figure out what it might be. My fears ran rampant, as you might imagine, considering the sensitive area the pain was in. But it turned out to be a simple ligament sprain, a “sports hernia”, requiring nothing more than some prescription NSAIDs and rest. My doctor, Dr. Carl, once he’d eliminated all other causes, demonstrated definitively for me that that was all it was – he literally put his finger right on the tendon and the spot where the pain originated from, and further demonstrated that rest would relieve the pain.

Running is my anti-depressant, on top of allowing me to eat donuts for breakfast and not gain weight and giving me an excuse to be outside and active. Take away my running and I fall inward.

Luckily the waiting and resting is over. I’ll be able to run again soon. And hopefully my mood and my energy will return.

And hopefully I can lose the several pounds of… um… fuel… I’ve gained in this short time.

I think the lack of energy is contributing to my blogger’s block lately, too. It’s harder for me to come up with a post a day. So excuse this free rambling. I’ll be back on track soon enough.

Spring can’t get here fast enough, for so many reasons.

Zombie lies

I think I first heard the term “zombie lies” from Duncan Black. That link goes to top hit for “atrios zombie lies”, not necessarily the first instance of him saying it, by the way, and I’m not saying that he invented the term. But he uses it often, and it always seems to refer to the same idea: a zombie lie is an argument or idea that has been thoroughly debunked and refuted, time and time again, and yet still seems to have people in the public sphere promoting and defending it.

Like the zombies of fiction and fantasy, you can’t put them down. No matter how many bullets you put in them, no matter how many times you stab one, they just will not die.

And the zombie lies seem to revolve, politically anyway, around conservative policies and themes. Like the whole “Social Security is going bankrupt!” zombie lie. You hear this a lot. You heard it from President #43 right after he was elected in 2004. You hear it even today, while we are in the middle of an economic disaster caused by tax cuts and deregulation. But the fact of the matter is that Social Security as currently structured will pay out full benefits until the year 2041. Y’know, somehow I think we have some time to deal with the “problem” of a fully-funded safety net for retirees and the disabled for the next 32 years. Maybe we could be focusing on the more immediate problems right now?

Another zombie lie is related to, and in argument against, the just-passed mostly-spending bill in Congress, and can be summed up in the phrase “government should be run like a business!” This zombie lie includes the idea that “we’re broke – we shouldn’t borrow any more!” It’s a bit more insidious because individual Americans can certainly understand their own household economics: when income decreases, spending should likewise decrease. You don’t borrow money when you’re broke. The reason this is a zombie lie, though, when applied to governments and larger economies is that only the government is large enough to absorb the costs of infusing new capital, in the form of spending, into an economy in an effort to reverse an economic depression. If no individual is spending any money because of a depression, it takes the government to step in and make things happen.

How do we know that this is true? Because FDR’s New Deal spending is what got America out of our Great Depression. In fact, when FDR gave in to some “fiscal conservatives” in Congress and cut taxes and decreased spending, in 1937, you can plainly see that those cuts reversed the gains from the previous spending. It may seem counter-intuitive to those of us who are clipping coupons and cutting back personally, but if we want to get out of this economic nightmare, we should be cheering the spending portions of the stimulus bill that just passed, and should be booing the Republicans who forced a bunch of tax cuts into it.

Just look at how great President #43’s tax cuts were at sustaining and building on President Clinton’s budget surpluses. Oh, wait. #43 turned a $127 billion dollar surplus into a $455 billion dollar deficit.

We need more spending; and because #43 left us in a hole with his tax cuts for the rich and his wars of choice in Iraq and Afghanistan that costs us billions, and the free money give-away to banks and financial institutions (which I will admit, President Obama supported at the time and is continuing), our situation is far more dire than it should have been. But that doesn’t take away the proven fact that building infrastructure and putting more capital and money into the economy is the answer, in a nutshell.

Luckily, that’s what President Obama is proposing. Sadly, the Republicans seem to want to obstruct that spending and, in some cases, Republican state governors are considering refusing the money. That’s about as willfully destructive and ignorant as they could possibly be.

Y’know, just like zombies.

Twelve hours of sleep

Sorry I don’t have a real post for you this morning. I’ve been sleeping.

Got home last night from work, and was immediately tired. Well, I’d been tired all day, and had a bit of a headache. I barely had any energy but forced myself to get a load of laundry done (a bunch of black t-shirts, actually) then crashed on the couch and watched a little bit of recorded TV (last week’s Clone Wars) and then… drifted into bed.

Where I slept for twelve hours.

Had a dream about shopping for a VW Jetta that I was sure I couldn’t afford. Had another dream about moving into a new house that I, also, couldn’t afford. I think those dreams stemmed from the conversation at lunch about the economic crisis our country, and the world, is going through.

But beyond my vague remembrances of dreams, being in bed was a half-day of oblivion.

Now I’m over-tired and stiff, muscles sore, and a bit sweaty (I didn’t turn down the heat before sleep so it’s too warm in here).

And now, I’m off to work.