Tuesday, December 28, 2010

Doom and Gloom Redux: Much Less Gloom

I was planning on doing a review of my new Kindle tonight, but I'm already up way too late, so I'm pushing that off 'til Wednesday and moving Wednesday's post to tonight. Got it? Okay then.

Back in my Doom and Gloom post I made a few predictions about the lame duck Congressional session. Now that it's over, I thought it was time to take stock and see how it panned out. In order:
  • All of the Bush tax cuts will be extended: This happened, but surprisingly enough it went down as less a total capitulation and more as a negotiated settlement that sorted out the problem of expiring unemployment benefits.
  • DREAM and DADT will be killed in favor of the new START treaty: This sort of happened, in that DREAM and DADT in their original incarnations both failed. However, a last-ditch push by Joe freaking Lieberman of all people got DADT passed as a standalone bill, with a surprisingly comfortable majority in favor of it.
  • Republicans will run out the clock on new START: Did not happen. Some of the leadership continued to make a stink about it, but not enough of one to keep the rank and file from voting however they wished when the treaty came up for ratification.
  • The food safety bill will die in a procedural clustersnuggle: I wasn't paying as much attention to this as I was to everything else, but the procedural SNAFU was sorted out.
So, huzzah! Compared to what I was expecting things went very well. I was amazed at how quickly the tax cut debate was resolved: there'll be trouble down the line, still, but for now the compromise is (arguably) a good thing. The passage of DADT was a pure win, and so was the ratification of START. DREAM is probably dead for the immediate future, which is a shame; hopefully something similar will come up in a more comprehensive immigration reform bill down the line.

Going forward, I'm hoping Congress continues its recent spurt of productivity through 2012; which is to say, I'm hoping that Congress doesn't deadlock and shut the government down in 2011, and gets some more appointments sorted out. Filibuster reform wouldn't be a bad start; I love Mr. Smith Goes to Washington, and I'm all for requiring an actual filibuster when a Senator wants to filibuster something. Also, gentlemen, let's drop this anonymous holds nonsense, okay? It's a stupid, ugly practice with no redeeming value that makes the Senate look bad. No more.

Okay then. Sleep now.

Friday, December 24, 2010

Merry Christmas!

Really, what else is there to say? Oh yeah: Enjoy some Christmas Corgis!

Thursday, December 23, 2010

Ack Ack Ack

Today's going to be a short post. My best friend just blew into town from Cincinnati to spend the holidays with his family, so I ended up playing co-op Plants vs. Zombies and New Super Mario Bros. for much longer than I planned and now I really need to get ready for bed.

Happily I do have some content! Just from other people.

First up is an excellent blog post from Kevin Smith (the Clerks guy), in which he talks about the creative process for film making, and how important it is to go out and do what you want to do, rather than waiting until you're somehow qualified to do it.

Second (and last) is The Penmonkey's Paean, which I am officially declaring a must-read blog post. In fact, you know what? You'll need to print this one out and tack it up on your wall, right behind your desk. Because when you're burnt out in the middle of a book or you're sick of editing for the tenth time, you will want to read this.

Monday, December 20, 2010

Learning Real-World Programming

My apologies for the missed blog post on Friday. I got caught up reading Prospero Burns and honestly forgot that I had a post lined up. Hey, there are worse excuses for missing an update.

Anyway, I responded to a forum question a while back about what to study if you're thinking about a career in computer science (which I took to read "programmer"). The rest of this post is a cleaned-up version of my response, based on about five years' experience writing code for a living. If you think I'm going too far off-mission, well, tough. Go suffer the wrath of Trollquotes.

First off, you want to learn Unix or Linux if you want to be a well-rounded programmer. For all of Windows's dominance of the desktop PC market, most servers run on some flavor of *nix, so you're going to have to learn to love the command line. Ubuntu is easy to use as a desktop, comes on a live disc so you don't have to nerf your Windows gaming box, and has the full command line experience for you to play with. (If you don't know what a live disc is, God help you, and don't come crying to me when you reformat your hard drive.) Make sure you work out how to type in emacs or vi as part of your command line tour.

While I was in college I learned to program in C++ and Java. These are useful languages to learn from, because they're strongly defined, well supported, and complex enough that you can port your skills to just about any other language without too much difficulty. But as a practical consideration, well, I haven't touched C in years and only rarely use the Java. (That'll probably drop to "never use Java" now that Oracle seems bound and determined to screw it up. I still feel bad for Professor Lobo, who was firmly convinced Java was the language of the future. Now, I suspect, not so much. But I digress...)

Code gets compiled, and you will need to know how to do that. Not everybody gets to use an IDE. If you're learning C or C++, make sure you play with gcc and make. Visual Studio is fine, but will only take you so far. If you're learning Java, start compiling with javac before anything else. Once you're comfortable with that, Ant is a great tool for building larger projects.

Now, other languages. HTML and CSS aren't programming languages, but a basic knowledge of the tags is important if you want to be a web programmer. In which case you'll also need to be able to set up an Apache web server, which is not at all difficult after a few Google searches. Many *nix systems will come with it installed or as an easy add-on in any case.

Java servlets are good to know for web programming, but will require Apache Tomcat or Glassfish as your web server. These are both still easy to set up.

Javascript and Java are two different things - Javascript is generally the one that does all the fancy web graphics on Facebook or Twitter. Learn it if you need it.

For a simple introduction to modern web programming (i.e. Web 2.0, SOA, The Cloud), you might consider checking out Ruby and it's expansion pack, Ruby on Rails. It's got a very simple syntax that does a lot in a hurry, and Rails was designed to handle buzzwords like SOAP and Ajax with ease.

On to the nitty-gritty! Perl is the #1 language in parsing text files, so if you're planning on server programming, learn it as your second language. The syntax is (arguably) a little too confusing to start learning with, but once you get the knack for it you'll be fine. You'll also want to learn a bit of shell coding to go along with the Perl.

If you're interested in games programming, XNA is the simplest way to get started in 3D gaming. That means learning C#, which is about the only reason I know of to use that particular language. It's a lot like Java, so you won't have too much trouble getting spun up.

Avoid LISP like the plague unless you like artificial intelligence.

The best programming books I've found that are up to date belong to the Head First series. These are very accessible, and entertaining, but still give you a strong introduction to their particular subject. Beyond that, the O'Reilly tech books are rarely bad, so investigate them thoroughly whenever you want to learn about a new subject.

Programming can be a lot of fun, even if you never do it for anything other than a hobby. As a profession, it won't be a blast everyday; but at its best programming is a creative, rewarding way to make a living. So if you're in school and thinking about what career path you want to follow (or, like me, you want to be a writer but like to have money for food), give coding some consideration. If nothing else, hey, you can write a Pong clone for your own amusement.

Wednesday, December 15, 2010

Lunchtime at Bugaboo Creek

Today was my office holiday get-together, and as it is written in the ancient scrolls we went out to lunch at a nearby restaurant. This year the Bugaboo Creek Steak House was selected. It's a U.S. steak house chain, but there are moose and mounties in it so I think it secretly wants to be Canadian.

Let me get this out of the way: The food was great. Excellent ribs, excellent mashed potatoes, and very good french fries. Yes I got two starches in my lunch, don't judge me.

Here's the thing. I walked into the restaurant and suddenly I'm in a taxidermist's dream world. There are heads just about everywhere. Moose heads, deer heads, bear heads. There's some kind of rodent dangling from the roof via a string. It's the sort of place that would give Sarah the fear, and the sort of place that my dad would get a big kick out of.

My coworkers and I walk over to our table, which is in the dead center of the restaurant. We're surrounded by dead animals. There's a giant buffalo's head right behind me. As I sit down, one of the guys who had gotten there a few minutes ahead of us says "Hey. Fair warning, the buffalo talks."


"Yeah, it scared the shit out of me. It's really loud. Be careful."

So now we spend the next half hour ordering drinks and looking at the menu and being terrified that this head's going to start talking. And as this is going on I'm noticing what looks like poltergeist activity all around me. A skunk is popping up out of a tin can, looking around, and hiding again. The dangling squirrel is swinging from side to side, even though the squirrel never moves. I'm half expecting the Candarian Demon Moose to turn up and kick off a jaunty musical number.

gif gifs
Moose are not musically inclined.

Finally at 11:30 on the dot, the buffalo turns it's head and blinks at me. The dead animal is blinking at me. Then it opens its mouth and says:

"Well hi there! I'm Bill the Buffalo. You know why they call me 'Wild Bill'? A lot of people think I'm named after that other guy, but that's not it. It's 'cause I came here and I ate all this delicious food, like the Lodge Center Cut Fillet, and by the time I was done I worked up a 'wild bill'!"

And then it shut up.


It really was good food though.

Monday, December 13, 2010

Super Meat Boy

I'd love to do something writing-related for today's blog, but Christmas shopping and work have got me beat. I will say that if you haven't heard of Super Meat Boy, you should go download it from XBox Live if you have the option, or on your PC if you don't, and give it a whirl. This is probably the best platformer game I've ever played that wasn't a Super Mario Bros. game. It is very fast-paced and very brutal - you will die, a lot, playing this game. And yet you will still have fun.

I'd be playing it right now, to relax from work et Krimble, but I'm too busy biting my nails waiting for Prospero Burns to make its way across the Atlantic. If I'm lucky I'll be able to scrounge a copy this weekend. Fingers crossed!

Saturday, December 11, 2010

Barfly Post: On Salable Kingdoms

Somehow I ended up at a bar tonight, not drinking, with my wife and a bunch of people I've only met once before or not at all. This wasn't a bad experience - I like these people, even if I don't have much in the way of anything to discuss with them, and the bar has decent fries. It just kind of threw me off my blogging mojo. That and the brandy I had when I got home as a reward for being the designated driver.

So! Growing up one of the first "serious" fantasy books I ever read was Magic Kingdom for Sale: Sold!, by Mr. Terry Brooks. The story follows Ben Holiday, a lawyer looking to escape from his life and a slew of bad memories. Enter Meeks, a mysterious man who offers to sell Ben a genuine magic kingdom named Landover. Ben takes him off on his offer, expecting something like a Renaissance fair... and then he meets a great damn dragon, and realizes that he might be in over his head...

The book is a real delight to read, full of humor and genuine emotion. Ben's struggle to become a hero is utterly believable, and the cast of characters are all well-fleshed creations, even though a lot of them are fairly standard fantasy characters (the incompetent wizard, the dragon, the witch, etc). The main villain isn't particularly compelling, but he's scary enough that you won't really mind; and when you get right down to it, the book is less about good versus evil than it is about a good man fighting against the urge to give up.

Now, the image at the top of this post is the cover of the printing I read when I was younger. Note the dog on the left. He is awesome. Note also that there is no indication that this book is part of a series. So imagine my joy when I check to see if the book is still in print and find these:

The Magic Kingdom of Landover Volume 1: Magic Kingdom For Sale SOLD! - The Black Unicorn - Wizard at Large  The Magic Kingdom of Landover Volume 2

Not only is the book still in print, but Landover has spawned a five-book series, available in a fine cheap omnibus format for the discerning consumer. And it even comes in e-book format, so I don't need to worry about finding space for it on my shelf! (If I don't mind reading them on my computer, that is.)

Needless to say, I'll be picking these up as soon as I have room in my reading schedule. Which, given that Prospero Burns is imminent, will probably be next month.

But I can be patient. Hopefully, Landover can too.

Thursday, December 9, 2010

Corgi Conundrum

I'm mad for even writing this so late in the evening, but I set myself a goal of three posts a week and I'm going to meet it for at least one week. Sleep? I need not sleep.

Let's talk about Corgis. Specifically my Corgi, Lina.

Are you talking about me?

Lina is an awesome dog. She's always happy to meet new people, and tends to behave very well in strange houses. In fact, odds are that she'll be much more calm and collected in a stranger's house than she ever would be in my house.

Go ahead. Sit down. Let me step on your shoulder blades...

So I thought for Christmas this year I'd bring her along to my aunt's house so she could meet the family. There's just one problem with this, and his name is Charlie. He is a beagle.

(I don't actually have a beagle photo.)

Lina does not get a chance to be around other dogs very often, and introducing her to new dogs is always a total crapshoot. It's not that Lina's particularly unfriendly, but she gets... possessive. Of me and my wife. Specifically, she won't stand for any other dog getting affection from us if she's not involved. She won't be happy if another dog has a toy, either. Treats? Fuhgeddaboudit.

Now the thing is, I know about this because Lina doesn't get along with my in-laws's dog, Melfi. And to be fair, Melfi charged Lina like a crazed bull when they first met. And Melfi's a female, so she's fair game for Lina to try and assert herself as "alpha dog". Charlie is a male, and everything I've read points to female Corgis being well-behaved around male dogs.

But I don't know, dammit. And it's important to know these things, because if my wife and I ever decide to get a second dog, we don't want two fuzzy little terrors running around trying to start World War III in our living room.

I am the Destroyer of Worlds.

My wife and I will be discussing this further, but I'm really not sure what's going to happen. We might take the risk, or we might bring Lina down next Thanksgiving when Charlie won't be around. The two dogs might fall in love, or I might spend my Christmas standing outside with a dog who's trying to "defend" me from my aunt's dog while my family eats fried oysters in a warm house.

In which case, I would have no choice but to use the Bee Costume of Shame. And nobody wants that.

Especially not Lina.

Monday, December 6, 2010


Oh right, I said I'd be doing this three days a week, didn't I? Well okay then, if I must...

I've been playing a lot of Assassin's Creed: Brotherhood lately, which has been horrible for my writing output (oh NaNoWriMo, you already seem so long ago), but great for my mental health. The story is a good enough continuation of the previous game, with some more asshole Borgias to dice up and Machiavelli himself being quite possibly sinister (I'm not sure yet and don't need spoilers, thank you so much).

The gameplay has improved, and when the servers are up multiplayer is a real treat - it's a streamlined version of the single-player game, in which you hunt down and kill rival assassins while trying to avoid being killed yourself. I definitely recommend the game to anybody who likes sandbox-style play, but maybe doesn't care for the Grand Theft Auto series.

And on to writing. Chuck Wendig has an, ahem, angry piece up about why you, yes you, suck as an editor. It's insightful stuff (certainly applies to me), and a must-read.

As for myself, I'm still getting my mind organized, and it's well past time I started getting it organized on paper. If I don't have anything in print or binary by the end of the week (hell, by tomorrow), I'm going to forget things. And that would be a shame, because I've got some pretty good ideas starting to flow. Time to abuse the Scrivener outliner tool, methinks.

Oh, and just a reminder for all the addicts: Tomorrow is a date which will live in infamy. Thank God I kicked the habit...

Friday, December 3, 2010

Outlining and Comic Books

Oops! Finally missed a day. Or, alternatively, I decided that I had better slow down on the updates before I give myself an aneurysm trying to keep up. Let's shoot for three a week, shall we? Excellent.

I've taken a step back from the NaNoWriMo writing blitz to try and get a better idea about how to organize a novel. To that end, I picked up my copy of Helsreach, by Aaron Dembski-Bowden, and started thumbing through it to get an idea of how he works out pacing, balances battle action and character action, things of that ilk.

(Why Helsreach? Because I want to write something about Space Marines fighting in a city. And Master Dembski-Bowden managed to make random switches between first and third person perspectives work in this book, so I expect I'll have plenty to learn from tearing it apart and inspecting the gribbly bits.)

I've been outlining the book in Scrivener. Here's what it looks like so far:

Haven't even gotten into scenes yet.
So, um, yeah. I might end up burning a week on this, for uncertain gain. Still, I figure this falls under the heading of deliberate practice, and I've also got some reference books to read through before my next big writing push. And I'll be outlining my manuscript while I'm at it, so even in the worst case it won't be a week lost.

Some good comic books out this week. Darkseid is currently dead, but if you're a fan then be sure to check out Action Comics Annual #13, featuring a flashback to Lex Luthor's first encounter with the master of Apokolips. This isn't Grant Morrison's Darkseid, and it ain't the Superman-obsessed, might as well be a stock supervillain one either; this is Jack Kirby's Darkseid, complete with talking in "quotes" and a penchant for hyperbole, and it's a blast to see him back. Lex also meets Ra's al Ghul in a backup story written entirely in verse.

While I'm at it, if you're a fan of the Ryan Choi Atom then check out Secret Six #28. You're welcome.

Wednesday, December 1, 2010

Doom and Gloom

NaNoWriMo has come and gone, and yet I still feel the need to blog a bit.

My iPod recently suffered a fatal attack to its display, so I was forced to listen to CSPAN Radio on my commute into work. If you've ever thought about doing this, don't. It will depress you immeasurably.

The Senate GOP has apparently vowed that it will do nothing more than ensure that all the Bush tax cuts are extended indefinitely, despite the fact that nobody has the faintest idea how to pay for them.

I therefore feel confident in predicting that not only will all of the tax cuts be extended, but a repeal of DADT and passage of the DREAM Act will both be thrown on the chopping block by the Democrats in the faint hope of getting the GOP to negotiate in good faith on the New START treaty - which they are unlikely to do, since all they have to do is run down the clock to get a stronger hand in Congress next year.

Meanwhile two million people just lost their jobless benefits in the middle of a recession, less than a month before Christmas. And the one thing the lame-duck session has achieved so far, a food safety bill, will likely be recalled due to a procedural clustersnuggle.

All of which is to say that I am packing my iPod into a bag of rice, in hopes of sucking out some phantom moisture behind the screen that might be causing the issue. If I have to pay any more attention to Congress over the next month, I will in all likelihood subject myself to a twenty-four hour Jersey Shore marathon, in the hopes of scrambling my brains so thoroughly that I lose the ability to feel outraged on any level.

I may also lose the ability to speak, recognize simple shapes, or form a coherent thought. I would consider this a small sacrifice to make.