Today I spent several hours at the houseboat on Blue Creek Bay with Lorien's sister and her family. They're leaving for Indonesia on Tuesday, they'll be living there for the next five years. We'll miss them, but I'm sure we'll find a way to go visit. Maybe after the terrorist bombings are done. They've been living in Houston for the last several years, and we managed to visit them on several occasions.
If we do visit Indonesia, it will be one of several stops, which must contain (at minimum) New Zealand (they're really not that far apart), and Taiwan or China. And optionally Australia.
Today's great T-Shirt is Shakespeare Hates Your Emo Poems.
Funny!
Last night, on a whim, I reviewed Peanut M&Ms on Costco's website. I have no idea if it will pass their "review filters" so here's a picture of my review:

I think the part about the weasels may be the reason it doesn't make it. But now I can't help wondering: do they have two M's on them, or just one? Only one way to find out!
My wife's car has a new name. I dubbed it after attempting, for an hour, to replace a **** headlight.
I won't share the name, though. It's not appropriate for the Internet.
Wow. Just....wow. Go look at Not Your Mama's Pregnancy.
With all due respect for the liberation of women, someone has to clean the house and do all kinds of boring chores.
Huh?
Look at her closely and see the excellent posture she maintains as she walks around the room, pushing the machine on the carpet.
Wow. At least it wasn't written by a man. We'd never live that one down…
This is a red letter day for the MUD I've been working on forever. Today, I have finished implementing and testing a map function. A map is generated based on a radius around the player's current location. Optionally, and by default, the map will also have a context-sensitive key explaining the surrounding terrain. But a picture is worth a thousand words…

And here is a second example:

So there are 2,000 words for you. I'm totally excited! The World Map I have is 180x90, which comes out to 16,200 "rooms" in the world. Each zone, like the world, lives in a directory, and can contain an optional map, map key, weather map, and weather map key. There is another subdirectory for all the room save files that make up the zone.
- Wow! Lightning and loud thunder in the morning! #
- Working on my MUD again this morning. I wonder if it would compile on a Mac? #moonfruit help me out here, guys! #
- Modified exit code to support zones now. #mud #
- Playing liar's dice for the last 3 hours. Can't stop! #
- Still up playing Liar's Dice #
- Just picked up the @sjgames Munchkin counter iPhone app. Awesome! #munchkin #
- Rounding up some players for Liar's Dice at lunchtime in the office... #
- Still at work. Winding down, it's been a long day. #
- Visiting with my uncle at the hospital #
- Debugging a real nasty problem in some program code. #
- Two problems: a parent constructor was not being called ina derived object's constructor's initialization list #
- Second problem was a memory issue. Doing final testing and code review now. Ugly problem... #
- Problem is fixed now. Going through logfiles and repairing database entries by hand. Yes, it sucks. #
- Tough day at work today. It was very busy. No idea how long it will take to decompress at home. #
- Haha! "Bacon is Meat Candy" : http://www.cvwine.com/TshirtDesign.html #
- Totally got My wife with the joke: how do you get an elephant out of a Safeway store? #
- Answer: take the "s" out of safe and the "f" out of way #
- Still in cleanup mode from yesterday's issues. Thank goodness I wrote a good logging system to start with... #
- Development staff meeting imminent. Work will cease, but this isn't always a bad thing #
- Resyncing source code in Perforce. It's been a while. Literally thousands of files are being moved right now. #
- Lorien's waiting for a ride home. Wow sync just finished good timing. Later! #
- In-laws are taking their grandkids to Skippers for dinner. They also needed Lorien's car because they don't have room for all the car seats. #
- The kids' parents are in Indonesia this week. I elected to stay home and unwind. #
- As much as I dig fish and chips (it's all I eat when I visit London!), it's SKIPPER'S! That doesn't count! #
- Late evening programming. Nothing like it. Working on MUD code and unique room names. #mud #
- Love and Rockets came up on my music playlist. Haven't listened to them in FOREVER! #
- Dug up two new sourdough recipes on the 'net and mixed them up. My starter is a slow riser, so I'll bake them tomorrow night. Stay tuned! #
- Both new AND old Depeche Mode came up on random. Feels like the 80's, except cooler. #
- Hehe. The Cure is on now. Okay, so most of my music is from the 80s I guess. Sue me. #
- Well, my vocal music collection is largely 80's. I have tons of Irish trad music with almost no vocals. It's largely non-80's. #
- Having some trouble getting C++ STL reverse iterators implemented. I think it's because I'm not understanding some important piece of info #
- It would have been real nice to sleep later this morning... #
- I have been corrected in my use of reverse_iterator. In fact, I was instructed not to use them in this fashion
# - Working on some decryption software for the office. #
- Upgraded WordPress to 2.8.1 today. It was simple, just like every other upgrade. #
- It's quitting time! #
- Hey I'm using the crosswalk here! #1stdraftmovielines #
- Ladies and Gentlemen, boys and girls. Pop Goes the World by Men Without Hats! #
- Iterator issue resolved. On to a file loading issue. #mud #
- Man this sourdough bread is starting to smell good! #
- File loading issue conquered. Now I only have to worry about how long it takes to read 16,200 data files into memory. Hint: not fast! #
- Current MUD server with 180x90 world map loaded consumes 43728kb of memory. Not bad, really! #mud #
- Bread No. 1 is good. A little too sweet for me. I think the sugar kills the sourdough flavor. Lorien will probably love it. #
- Bread #1 crust is excellent. Inside is fluffy and light. Just a bit too sweet for me. #
- Sourdough No.2 has better flavor, thicker crust, but cracked a lot. Could be that it didn't rise in a pan the 2nd time #
- Kicked the old Room Daemon to the curb in favor of a new, shiny, Zone Daemon to run the MUD. #mud #
- The old room code is gone. New zone daemon is loading 16,200 rooms. Working beautifully. I'm very happy right now. #mud #
- Haven't finished level 3 at #gdcu yet, need to catch up. Good thing the weekend is coming up. #
- Working on some server-side code. Wish the day was already over. #
- Twitter is telling me I should use a newer version of Firefox. But I like my browsers a little older and more experienced.. #
- Thinking about removing the "I": http://yfrog.com/eovhij #
- Wrapping up the day. It's been long. Wish it went by faster. #
- Pulled over to try to coordinate tonight's activities before I drive somewhere I don't need to go #
- Thinking about a design for #gdcu level 4. #
- Working on exit code loading, saving, and auto-generating. #mud #
- I like watching anime, but I have to say it: most of their music SUCKS OUT LOUD. Bleach just started. Shut off TV so I didn't have to listen #
- Currently debugging the loading end of the exit code. Got an error somewhere returning empty strings instead of data #
- Stupid neighbors letting their kids yell and scream in their back yard. Called the police on them. They've got it coming. #
- All exit code is working. Had to take a break for a while and read some Alastair Reynolds. Next up: add map display command. #mud #
I got some more bits together for the MUD today, but not very much. I was hoping to have all the zone exits working properly, but there have been a few issues and I'm too tired to solve them right now. I'm very close to having custom, printable maps displaying for each client. Screenshots will be taken when the feature is working.
Anybody know why I can't do this?
Given:
class Room {
typedef boost::shared_ptr<Room> RoomPointer;
typedef std::map<std::string, RoomPointer> RoomList;
...
}
And in another object, reference it like this:
RoomList mRoomList;
if((Room::RoomList::iterator it = mRoomList.find("name")) != mRoomList.end()) {
return it->second;
}
I always get error: ‘::iterator’ has not been declared back from the compiler.
If I do this, it works fine:
Room::RoomList::iterator it = mRoomList.find("name");
if(it != mRoomList.end()) {
return it->second;
}
I ask because Nicolai Josuttis (in The C++ Standard Library) recommends comparing the iterator against the end() condition on the same line because of type conversion of various unsigned types that may be used.
I have two batches (three loaves) of sourdough to bake tonight. They're rising for the second time right now. I made them up yesterday, my starter (a Giza culture) is a slow riser. They look good, though. I like my normal recipe, but I'd like to try to find an even better recipe—this is the first experiment. I'm going to start baking in another hour or two. If I remember, I'll take some pictures!
And while I'm writing about odd news, here's a story about a witch position open in Wookey Hole in the U.K..
I don't know about you, but having grown up watching Star Wars the words Wookey Hole conjure up some very...interesting...imagery. Now if they only spelled it Wookiee…
Go read this story about a girl called Chicken Dung.
So her parents named her after the act of rubbing her down with chicken poo, which, according to their "doctor," cured her. I think they just wanted to call her chicken dung and were looking for an excuse. Heck, that's what I'd do.
This week I've been really busy at the office. Monday morning while perusing logfiles on my servers I noticed an issue with a recently released product and its online registrations. Fortunately, I caught it as soon as I did. I was also lucky that I wrote enough logging in to the program so there was no loss of data, just inconsistent tables and relationships. I was able, with the help of another developer, to track down and fix the software bug yesterday, and today I finished cleaning up the broken records.
They say the nice thing about being a guy is you can open your own jars. Well, the nice thing about being a programmer is you can write custom solutions to problems.
We've been playing more Liar's Dice tonight. About 3 more hours today. Calling it quits before it gets out of hand.
Edit: Had to correct a spelling error from my iPhone. Sometimes it works, sometimes it doesn't. The WordPress app wouldn't even tell me it had posted this entry…
Last night my youngest brother Wes came over and we played Liar's Dice (or Pirate's Dice, etc) for at least four hours. It's a fun game! The variation we have uses dice with a skull instead of a single pip that is "wild." It makes the game real interesting.