It was hard to get things done today, I was pulled in too many directions. I shouldn't say I didn't get anything done, though, because I solved a problem we've been working on for a while now in automating website deployment.
Now that I'm home, and have a nice meal in me, I'm less grumpy. Not totally without grump, but less.
Working on a problem in my MUD project, and I don't think a namespace will solve it now. I was hopeful, but there are some odd issues I can't find solutions for.-
Yesterday I officiated at Sarah and Frank's wedding. They got married on a boat on Lake Coeur d'Alene. It was my first time officiating at a wedding. No one's ever asked before.
Sarah had these awesome GIR shoes on, but you couldn't really see them under her dress. She also played Twister—in her dress. For some inexplicable reason, she's always wanted to do that. I have a picture of the shoes on my camera at home, I'll try to pull it down tonight if I have time.
Despite my being on a boat, I refrained from any and all pirate references during the wedding. Not a single "aye" or "arrr."
Tomorrow they're off to Norway. How cool is that? Honeymoon in Norway. Eating reindeer.
When I asked Frank if, after he returned, would he be pining for the fjords, his answer was an emphatic yes!
- Awesome shirt today at @wootshirt #bacon #
- In the middle of a full-blown gout attack. First bad one in many years and I have no idea what set it off #
- The toe is feeling better, meaning I may get some real sleep tonight. Still hurts to walk on though #
- Holy cow it's another @wootoff #
- Foot still hurts to walk on, but is much better than yesterday. Pretty swollen, too. #
- The @woot server is down, must be another bag o'crap. #
- Working from home today. But there is far too little diet pepsi in the house (eg. none). It's gout vs. pepsi, who will win? #
- Listening to the new @CarbonLeaf CD "Nothing Rhymes With Woman." I really like it #
- Homemade sourdough toast for breakfast. Epic. #
- My foot is still swelling up. It's like walking on a water balloon. #
- If Ed McMahon shows up on my doorstep now, I'll be hitting him with a cricket bat... #zombie #
- The Pepsi has won. Bought soda and ice cream for dessert tonight. Forgot to get milk... #
- Writing UI code that reads some specific encrypted information. #
- Wow got a lot of work done today at home with my foot up. Wish this was an option every day... #
- The @wootoff is going strong. They got back on Twitter finally. Haven't bought anything yet #
- Missed the bacon salt at the @wootoff ... dang. #
- Haven't tweeted much today, been busy #
- Verizon morons billed me for another month of DSL service. I hate them more every day. #
- Just finishing up work. Going to work even more with the software development dept since that's what I do more often than not now #
- Just ran across http://picturesforsadchildren.com Funny stuff. Ad for @tavisha and @RikkiSimons Tavicat-shouldn't be surprised... #
- Just taught Lorien how to rip her music collection to mp3. She's only a few years behind... #
- Seeing more lightning than I'm hearing right now... #
- Wondering how I ever survived without boost::format()!! http://boost.org/ #
- Ah, now the rain starts. I was wondering when it would show up. #
- Worked on a class to store zone map information for my MUD. It will generate colored radius maps from any x,y coordinate and a legend, too #
- Off to bed now. Still some lightning, but not much thunder at all. That shouldn't keep me awake, not that I really sleep that well anyway #
- Large Internet and digital line outage in Coeur d'Alene and Post Falls this morning. At least my cell phone still works... #
- Coeur d'Alene and Post Falls network outage update: Verizon's CO had an "equipment failure." Big local outage, still no ETA #
- Coeur d'Alene and Post Falls service update: a primary fiber trunk was cut, and switchover is happening now. Lines slowly restored now #
- Still in emergency mode. Phones and Internet still mostly down at office. Was told it should be working now #
- Phones have been back up for a little while now, fiber Internet connection still down. Latest is a fiber trunk on Fruitland Was cut #
- Fruitland is right behind the strip mall on highway 95 and Appleway, west side. Fiber was up on a pole?? #
- I lose my Internet connection and people start dying. Two celebrities down today. I could use this to hold the world hostage! #
- It's sad when 820k upload speed it just not enough... #
- At Costco getting some stuff. Bought frame for GIR print at Michael's earlier #
- Adding context-sensitive legend to the radius map function of my MUD. it's pretty cool stuff, but I have no way to show it off yet. #
- Bought a giant pineapple at Costco. #
- Stayed up til after 1am last night playing Killer Bunnies and Munchkin. Sleep is overrated. #
- Over 400 emails in my inbox. They're all server notifications. Ugh #
- That guy from that Roger Waters song is live in Spokane--Kareem Abdul Jabbar #
- Just signed up for #gdcu thanks @SJGames @raphkoster for spreading knowledge about it! #
- It's past my normal lunchtime, but I'm not hungry yet... #
- Fixing someone's messy javascript. Come on people, it's not rocket surgery... #
- I hate javascript. Scratch that, I hate poorly-written code PERIOD. Threw out a book that had useless code examples. Internet search = WIN #
- Got caught up on Burn Notice. Sad there is no new show next week. Stupid almost holiday weekend. #
- Updating my linux box. Pesky updates always sneaking around #
- Starting a proof-of-concept for shifting maps using a two-dimensional std::deque. #
- Have I ever mentioned that Nicolai Josuttis' book "The Standard C++ Library" is an invaluable resource and I use it all the time? I do! #
- Oingo Boingo came up on random play. Just never seems to get old... #
- Horizontal and Vertical shifting algorithms are working great in proof of concept. Will integrate into map class tomorrow. If I have time. #
- Tomorrow I'm going to @sarahthepark and Frank's wedding rehearsal. Did I mention I'm officiating? I am now. #
- Listening to @CarbonLeaf and integrating last night's test algorithms into my code. #
- Hamburger and German potatoes for lunch. Yummy! #
- Off to fake-marry @sarahthepark and Frank. And to get gas. #
- Showed up at 3pm, still waiting for more people to show up for the rehearsal #
- Rehearsal going well, will be done soon #
- Drinking a nice cold Pina Colada at home. #
- It wouldn't be nice if it wasn't made in a @Blendtec though. Best blender I'll ever own! #
- Can't add random change in wind direction to my weather map until I integrate the Mersenne twister random number generator I wrote earlier #
- Always seems to be one more step before I can get something finished #
- mt19937 random number generator integrated. Unfortunately I now have a namespace collision. It's going to take some time to fix this one... #
My mom passed an "Amish Friendship Bread" starter to me several days ago. I ended up cooking the "Amish Friendship Bread" yesterday.
I have some observations about the recipe. First off, I have a photocopied page of a computer-generated recipe. I've seen some pretty complicated, hand-crafted models of computer memory made of wood, but I'm pretty sure it didn't support clip art.
Nextly, the recipe absolutely forbids you to mix in a metal bowl. I can only assume this is because metal is the Devil's technology. I'm pretty sure His High Popeness' royal haberdasher himself may have, at one time, brushed up against my KitchenAid mixer though, so I think it's okay. I used it anyway.
The page also states that "only the Amish know how to create a starter." I happen to have an internet somewhere around here that says otherwise. The recipe calls for a box of instant vanilla pudding, so I suppose the Amish grind their own pudding mix from vanilla pudding tree roots or something.
My favorite part has to be the starter though. After ten days of "mashing" and adding milk, sugar, and flour, you get to split the starter off and hand it to your friends, the Amish equivalent of those annoying email chain letters you have to forward to ten people or something bad will happen to you. The funny thing is you add more ingredients to the starter, measure out several cups (each one for a friend), and then you use what's left for the bread. The starters you hand off are reset to day one. So you're making the "Amish Friendship Bread" with day one starter. Had I read the entire recipe through when I got it, I may have just cooked the thing right up, because it needs no time to ferment.
According to Wikipedia, the source of all truth and knowledge in the universe (cf. the article), there's nothing Amish about "Amish Friendship Bread." But the thing about the metal makes it sound kind of official. Official like that Bill Gates Email Tracking Software reward that you never got.
I laugh, hard, every time I listen to Woot's Oreo Cereal Recipe podcast. It's only three and a half minutes. I guarantee it might make you laugh. If you didn't like it, get off the Internet, we don't want you here.
Every weekday they podcast a new song about the day's sale item. They're nearly always funny.
Last night Lorien and I stayed up late playing Killer Bunnies and the Quest for the Magic Carrot and Munchkin.
I just signed up for the Game Design Concepts course online (it's free!).
Also, just talked to Lorien about attending Penny Arcade Expo 2009 in Seattle this September.
My office has a 10mb fiberoptic connection to the Internet. On most days. Today at 8:15am it went down (and so did this site), and it didn't come up for seven hours.
In the end, it was a squirrel—an evil death-squirrel with nasty, big pointy teeth. Apparently this morning a squirrel chewed through the only above-ground non-redundant fiberoptic cable in the city.
What drives a squirrel to do something crazy like this? My cow-orker John says "female squirrels."
Go read this short article about robbers caught on Google Street View.
Now think real hard about the second-to-last paragraph:
The company complied, and a robbery squad detective immediately recognised one of the twins.
I'm a bit surprised that only one of the twins was recognized…
Alastair Reynolds, one of my absolute favorite modern-day science fiction writers, just signed a 10 book contract. Woohoo!

It's time for Taco Trucks! Make your own! Eat them up!
Warning: Taco trucks made entirely of stuff in your printer. Which is awesome.
I've done just a little work today on my ongoing MUD project. I fixed a small problem this evening that shows up if you enable MySQL but don't have proper permissions configured. In that case, the server just quits—no coredump, no error message, nothing. So I fixed that case.
Overall, I'm quite proud of how well it runs. The socket code is first rate rock solid stable. It should be, I've rewritten it enough times now. After this weekend's work, the binary size just topped 6mb, but that's with all the debugging symbols. If I strip them out, it's only about 650kb. I'm right around 15,000 lines of code. Wow, did I get that right? I can hardly believe it's at 15k. Almost a full third of that (over 4500 lines) is devoted to commands alone.
The only thing I'm not happy with right now is how Windows telnet connects to the server. Windows telnet does something funky with the way it sends data and I haven't quite got it working right. It still connects, but it does weird things. Every other telnet or MUD client (zMUD, cMUD, etc) that I've tested with it work great.
I generate some fantastic documentation via Doxygen (view it here). Currently the server only runs under Linux/UNIX machines (in theory it should run fine on a Mac assuming you have a development environment with the proper libraries, but I don't have one to test it on). As I make more use of cross-platform libraries like Boost this may change, but I'm not porting it to Windows on purpose.
My future development roadmap is in my head, and largely consists of the next feature: maps. I've designed a drop-in directory style zone system so it's easy to add/copy zones. A zone could be the entire world or a single hut. Each zone will support a map with a legend (although they're not required). An ASCII map of the local area, optionally coloured, will be available to each client based on their current location. A key will also be written out explaining the map if a key is available. Much of the foundation has already been laid for this map system. In ten to twenty more hours of development I should have it fully integrated and working.
After the map feature, things get a little fuzzy. I may implement more objects, and probably several more commands. Mobiles and AI are on the list, but still require some careful planning before I start work on them. One thing at a time, I guess.
PS If you want to see how Doxygen generates complex dependency graphs, I would recommend this file.
It's the annual Coeur d'Alene Ironman thing today. You can't pay me enough to attempt to get downtown on a day like this. Lorien loves it. I hate not being able to park anywhere. And the crowds, *shudder*. Her parents' B&B is only about four blocks from the finish line. I'm sure that they're down there right now cheering people on.
Happy Father's Day, dad!
My latest loaf of sourdough bread just came out of the oven. This time I baked it inside a dutch (cast iron) oven, inside the oven. The crust is much better, the bread is cooked throughout perfectly, and on the whole retained more moisture than it usually does. It's fluffy and sour and just perfect. I'm going to be getting a lot of mileage out of this dutch oven. This time I preheated the ovens together to 400 degrees, then when everything was good and hot, turned the oven down to 375 and put the dough in for 30 minutes. I had some splitting of the top this time, but I also forgot to score the top of the loaf with a knife before baking. I don't know if this would have prevented the splits, but it's worth noting.