Baking Day
Posted in Baking
Last dog watch, 2 bells (7:18 pm)

Today started out pretty relaxing, Lorien fell asleep on the couch because she wasn't sleeping well last night, and I woke up early and continued reading my book (Conceptual Blockbusting: A Guide to Better Ideas). She finally got up and left, and I started refreshing my own sourdough starter I started last year (not the one I normally use). I'm bringing it up to full activity to test its flavor; it has one chance to be tasty or I throw it out in favor of another one I have lined up (still, aside from my normal go-to Giza starter).

So after I refreshed the starter, I made bread. Eight pounds of bread dough. I soon realized that my 8 quart container isn't big enough for that much bread to rise in, as it began a Napoleonesque expansion war. I had to tap it down several times before it blew the lid off my container. Even after I put it in the refrigerator. Eventually I decided to just bake a one-pound loaf.

Just as that came out of the oven, Lorien came home and asked me to start on another Strawberry Cream Cake like I made a couple of weeks ago. I just took that cake out of the pan and it is in the final cooling stages.

So I did a lot of baking today, and it was all from scratch. I even organized some of my dry goods into sealed containers. I moved both my cake flour and masa harina out of their rolled-up open bags into sealed containers. Also, it's time to get rid of my bread machine. I haven't used it in a very long time…

2 Comments »
On Outages and Early Mornings
Posted in General
First dog watch, 3 bells (5:34 pm)

This morning I went to the office early to make sure the new website rollover went smoothly. I got there just after 7am to find the phones down because our T1 PRI was offline. Fortunately, most of the right steps had already been taken to resolve the problem and I just had to make a few phone calls. Well, after the heat from that died down, the website switch was green-lit. It took me about 12 seconds to change the Apache config.

Most everything else was solving small problems. A week or so ago I wrote a PHP script to handle importing data from an online database to an internal server, but due to the complicated nature of the data, it was difficult to test. I took a long time to set up an environment to test against, and even then it still wasn't really conclusive. But it looked good, so I deployed it and it runs fine. The only thing that worries me is that it worked without any bugs at all. It always makes me nervous when something just works, it makes me wonder what nasty bug I haven't found. Anyway, I had to fix an issue, and the entire fix was implemented by adding the number '6' to the file at a certain spot. One-byte change. It's great to crank something like that out once in a while, but I'd rather have something I know had bugs and was fixed…

2 Comments »
Twitter Weekly Updates for 2010-06-06
Posted in Twitter
Middle watch, 2 bells (1:03 am)
Leave a Comment »
A Nice Day Outside
Posted in Random Thoughts
Forenoon watch, 4 bells (10:05 am)

Means I'll have a nicer day inside while it's still Spring…

Stupid allergies.

2 Comments »
New T-Shirt Idea
Posted in Random Thoughts
Afternoon watch, 2 bells (1:03 pm)

I would pay money for a Porkins is my wingman t-shirt. Someone should make one so I can buy it.

Leave a Comment »
Theme Update
Posted in Tech
First dog watch, 2 bells (5:19 pm)

I fixed a small but annoying (to me, anyway) bug in my blog theme just now. If you were to view my custom theme in a very wide window (greater that 1400 pixels or so) the main body text would start to "underlap" the right-hand sidebar. By imposing a maximum-width limit to the content area I fixed the issue to my satisfaction.

Leave a Comment »
Boost::Spirit 2 Redux
Last dog watch, 8 bells (8:27 pm)

Well if you stopped by yesterday you may have read my post about Boost::Spirit 2 and the trouble I had converting to the new Spirit 2 library. Fortunately, Hartmut Kaiser, one of the Boost::Spirit authors must have a Google blog notification when Spirit is mentioned in a blog, because he left a comment with a suggestion for me earlier!

Unfortunately, I still can't seem to get qi::phrase_parse to work right. The problem is that I'm trying to match one of a set of increasingly complicated grammar structures (perhaps starting at the most complicated and working backwards would fix this issue…). So, here is my problem in gruesome detail:

I'm implementing a get command for a MUD, an online text-only game system. Since I'm writing it from scratch, I decided to use some of the most up-to-date tools I could find to do so, and Boost has some terrific libraries that make this possible. As far as I can discern, the get command can come in the following forms:

  1. get hammer
  2. get 20 nails
  3. get hammer 2 (the second hammer)
  4. get 20 nails 3 (20 of the 3rd type of nails visible)
  5. get hammer from toolbelt
  6. get 20 nails from bucket
  7. get hammer from toolbox 2 (the hammer from the second toolbox)
  8. get 20 nails from bucket 3 (you get the idea)
  9. get hammer 3 from toolbox 2
  10. get 20 nails 2 from bucket 3

The problem comes when using phrase_parse with an empty space skip-parser. Given the two rules:

bool res = qi::phrase_parse(first, str.end(),
				(
					+qi::alpha
				),
				' ',
				item
);

And

bool res = qi::phrase_parse(first, str.end(),
					(
						+qi::alpha
						>> "from"
						>> +qi::alpha
					),
					' ',
					item,
					container
);

If I check the phrase get hammer from bucket it matches rule one, because after you remove all the spaces from the string it's just one long word! This is an unexpected result, and even if I check rule two before rule one I only match rule one!

And now I'm really lost. I imagine there's a better way to do this, but I can't seem to figure it out. Also, since my allergies are going crazy, I've got to take the night off anyway. Anybody out there know of a solution?

3 Comments »
Mind of a Ninja
Posted in General
Forenoon watch, 4 bells (10:05 am)

This shirt is awesome: Mind of a Ninja

Leave a Comment »