Wednesday, May 30, 2007

For everyday tasks, choose a Mac. A Mac+, that is.

For my whole life, progress bars have taken the same amount of time to complete. I remember downloading games for my PC-XT on a 2400 bps modem. It took just as long as it does to download games today. And I probably play games for the same amount of time. Are they better? In comparison, probably. Yet the experience of playing the games hasn't really changed that much (discounting first-person shooter motion sickness, that is).

In a similar vein, Hal Licino at performs an amazing benchmarking test by pitting a twenty year old Mac+ computer against a dual core AMD with 1 GB of RAM running Vista. Obviously, the AMD is a more capable machine. But is it faster at what we do every day?

The result is enough to make a programmer crawl into a hole and meditate for the rest of his life.

When we compare strictly common, everyday, basic user tasks between the Mac Plus and the AMD we find remarkable similarities in overall speed, thus it can be stated that for the majority of simple office uses, the massive advances in technology in the past two decades have brought zero advance in productivity.

And that's just plain crazy.

Bread Alert: Cashew Apple Sandwich Bread

Some days you just want something familiar. A hot cup of coffee, a book you've read a few times, a nice terry-cloth robe....
Today, I really wanted a good sandwich bread. Something soft and chewy without the rough texture of a peasant bread. But I still wanted it to be novel. The result is a delicious whole wheat bread made with milk, sweetened slightly with apple butter and textured with cashews.

  • 1 c whole wheat flour
  • 1 c white flour
  • 1 package yeast
  • 1 c water
  • 1 heaping tbsp organic apple butter (no added sweeteners/preservatives/etc)
Combine dry ingredients in a big bowl and sift together. Add water and apple butter and stir to mix. Cover with plastic wrap, and let it sit for 24 hours. (You know, you could let this sit for far less if you wanted; I just love the flavor of a well-fermented sponge.)

  • 1 c cashews
  • 2 tbsp butter
  • 1 c whole milk
  • 1 tbsp salt
  • 2-3 cups whole wheat flour
  • 1-2 cups bread flour
Add the non-flour ingredients to the sponge and stir. Gradually add the whole wheat flour until the dough becomes stiff enough to knead with your hands. Turn the dough out onto a surface floured with bread flour and knead for ten minutes, adding bread flour as needed to reduce the stickiness and make the dough workable.
After it's kneaded, place the dough in an oiled bowl and let it rise until doubled in bulk, about 75 minutes or so. Oil two loaf pans. Punch down the dough, divide it into two oblong torpedos and press them into the loaf pans. Cover with plastic wrap and let rise until doubled again, about one hour.
After 40 minutes of rising, preheat the oven to 350 degrees.
Bake until the bottoms sound hollow when tapped -- 30 minutes in my oven.

  1. Once again, I forgot to preheat the oven. It's amazing I can do anything at all considering how absent-minded I am!
  2. The milk really did seem to keep the bread soft. Even the crust is nice and soft.
  3. The texture is very rich and buttery, and the loaves came out nice and light. It's so much better when they don't collapse in the oven. I wonder if I timed it just right, or if it would have had an even better "spring" if I'd gotten them into the oven 20 minutes earlier. Regardless, they came out delicious.
  4. This was one of my worst dough divisions ever. One loaf is nice and big, the other kinda tiny.
The sponge, after a day of waiting, has nice bubbles and a great beery aroma.

The ball of dough is formed.

Rising was nice and uneventful. One of these days I'm going to do a time-lapse movie of this part.

Second rising, in my favorite warm spot
Just out of the oven.

Nice air holes, great flavor, this one's a keeper!

Wednesday, May 23, 2007

Skype Faxing!

Well, technically you can't send faxes OVER Skype*. But the guys at Skax are linking their an upload-to-fax solution to existing Skype accounts. It's only $.29 a page and follows the Skype "credit" model. In this case, you buy $5 of credits, and as long as you use it once every 180 days the credit won't expire. Compare that to eFax, where you have to spend $16/month plus a $10 startup fee!

To use the service, you need to have Skype installed and logged into your account. You also have to be running a non-Vista flavor of Windows, and use Internet Explorer to access the site. (A pain, but hey, it's in beta). They'll give you $1 of credit just for showing up, so it's a great way to send a quick free fax.

* mainly because of compression... learn more here.

Neat web authoring environment: haXe

I got mildly hooked on Onslaught yesterday. It's a fun "tower defense" style game where three simple firing towers can combine to form more potent weapons. Good times. Anyway, while reading through the various forums on how to trigger the best combos, I learned that the whole game was authored using an open source flash compiler called MTASC, and the author was really happy with it. I'm no flash developer but I'm always curious about what goes on in the open source world.

Reading about MTASC led me to the developer's latest project, haXe. HaXe is "a high level object-oriented programming language, mainly focused on helping programers[sic] develop Websites and Web applications." OK, so the guy's spelling ain't great. But what's neat about this environment is how it can be used to:
  1. Act as server middleware (running on top of the Neko virtual machine with Apache)
  2. Create standalone Javascript and Ajax calls
  3. Most intriguingly, create and compile flash movies.
This goes into my pile of "when I have time and energy," but judging from the activity on the website and the fact that it's a year past the 1.0 release, it looks worth keeping tabs on. After all, there are a lot of cool ways to use flash that aren't flashy... Brad Neuberg's AMASS client storage comes to mind. An easy way to write these kinds of apps in an integrated environment would definitely make for some really cool, functional websites.

Taco kisses for you!

One of the great things about baking bread is the realization of how few ingredients you really need to make anything bread-like, including bagels, muffins, cakes, pitas... and tortillas.

Yesterday, I had a real craving for Mexican food. We had refried beans, avocado, brown rice, tomatoes... everything but the tortillas. I was going to put them on the shopping list, but then inspiration struck. Here's 10 tortillas from scratch in 1 hour. I began with this recipe, but added whole wheat for more flavor.

  • 1.5 c all purpose flour
  • 1.5 c whole wheat flour
  • 1 tbsp baking powder
  • 1 tsp salt
  • 1 c water
  • 3 tbsp vegetable oil (I used safflower)
  1. In a medium bowl, sift together flours, baking powder and salt.
  2. Add water and oil and stir to mix. (I used a wooden spoon at first, then my hands as it stiffened up.)
  3. Roll into a ball and let it rest for 15 minutes.
  4. Roll the ball into a tube, then divide into 10 pieces.
  5. Flour a work surface and a rolling pin, then roll each piece as flat as you can.
    1. If you really want them circular, use a soup bowl with a nice, straight edge as a cookie-cutter. Er, tortilla-cutter. (I chose the more expedient "rustic" look.)
  6. Place a skillet or griddle on the stove over medium heat. Give it a light coating of oil (I used olive oil spray). Drop each tortilla onto the griddle, and cook until a little brown on one side, then flip to make sure it cooks through.
  1. No matter how flat I rolled the tortillas, they came out a bit too thick. I suspect it's the large amount of baking powder.
  2. Whole wheat flour is sticky, and thus a pain in the butt when rolling, but the result was worth it.
  3. Smaller is better -- I should have divided it into 14 as the recipe writer suggested.
  4. Our griddle is hard to get to, so I used a 10" fry pan. Bad idea -- the tortillas should lay flat, and some were so oddly shaped they didn't quite fit in the pan properly. Use a griddle.
All the ingredients mixed up. (Note a little bit of Wry Wheat in the background!)

Rolling out the tortillas.

Frying them up.

Another well-executed surprise for Mrs. Rouftop's lunch break!

Saturday, May 19, 2007

Bread Alert: Mrs. Rouftop's Wry Wheat

Mrs. Rouftop also dabbles in the breadmaking. Today she invented her own bread, a honey rye wheat in the form of baguettes.

  • .5 c wheat flour
  • .5 c white flour
  • 1 c rye flour
  • 1.5 c water
  • 1 packet yeast
Let rest for 10 hours

  1. Add 3 tbsp honey, 3 tbsp olive oil, 1 tbsp salt and 1.5 cup water to the sponge and mix
  2. Add .5 cup more wheat flour, .5 cup more rye, and then enough bread flour to knead.
  3. Knead for 10 minutes.
  4. Oil a bowl (with olive oil), roll the dough in it and set it to rise for an hour
  5. Shape dough into four long baguettes, place on baking sheets lined with parchment paper and dusted with cornmeal
  6. Allow to rise until doubled in bulk, about 50 minutes
  7. 20 minutes before baking, place a cookie sheet (with a lip) in the oven and preheat the oven to 350
  8. Place bread in oven, then pour 1c water into the preheated pan to provide a steam bath.
  9. Bake for 20 minutes.
  1. After adding all that honey, my wife tried some dough and said "This tastes wrong." That led to adding more water and more of each flour. (All reflected in the recipe above.) The dough forgave her and ended up being fine.
  2. We shortened the baking time to 20 minutes because we didn't want to burn the thin loaves.
  3. Despite doing a steam bath, the crust was very thin and soft.
  4. The bread itself was very light, even though it had all that wheat and rye flour. It is still primarily a white bread, but also I suspect the shorter baking time kept it from being very crusty. I was also more conscious about making sure the loaves got in the oven before they over-rose like the Mushroom Garlic Bread. That may have helped to keep this less dense.
  5. This was delicious, the perfect complement to the cheeses we picked up at the Seattle Cheese Fest today!

The sponge, all ready to go.
The dough after first kneading.
The dough after first rising -- not bad for one packet of yeast!
Shaping into baguettes. (There was one more on another cookie sheet.)
Hot bread fresh from the oven.
Paired with Cypress Grove Chevre. Oh yes.

Thursday, May 17, 2007

Pizza Glut

Today's experiment: Freshly baked pizza. My first ever. I'll be using a recipe from my favorite cookbook, The New Basics Cookbook by Julee Rosso and Sheila Lukins.

Basic Pizza Dough
makes two 12", four 6", or eight 3" pizzas.1
1 cup warm water
1 package yeast
2.5 - 3 c all purpose flour
2 tbsp olive oil
.5 tsp salt

Combine water, yeast, and 1.5 cup of flour in a bowl and mix well. Add oil and salt. Then add the remaining flour a small amount at a time until kneadable. Knead 5 minutes. Let it rise until doubled in bulk. Punch it down, divide into as many parts as you want pizzas, roll into balls and let rest for 15-20 minutes. The dough is now ready for shaping!

Basic Pizza Sauce:
makes enough sauce for the pizza quantities listed above
1 28 oz can Italian-style tomato puree
1 large clove garlic, minced
1 tsp dried oregano or marjoram
4 fresh basil leaves or 1 tsp dried (so sad, we have no basil plant)
1 bay leaf
freshly ground pepper to taste

Combine all ingredients in a 3 quart saucepan and simmer for 30 minutes. (Now that's a recipe!)

Preheat oven to 500 degrees F ONE HOUR before baking. Place the rack on the lowest setting.
Grease a cookie sheet. (Note: this is technically too hot for parchment paper, which is "oven safe to 400 degrees." That'll increase cleanup.) Dust with cornmeal (optional).

Roll the dough out into the shape of your pan, or toss it into a circle like the professionals2. Add sauce to one inch from the edge. Top with your fav's3. Bake for 15-20 minutes on the lowest rack of the oven.4

My notes:
  1. The biggest one is the quantity. The "two 12" pizzas must be for extremely thin crust junkies. Not just New York style pizza, but "Two block radius of Houston St and Broadway" style pizza. I only got one 12" pizza out of the dough. Admittedly, it was a bit thick, but doing two would have been paper-thin.
  2. I did try some tossing. It was fun! But somehow it didn't form circles. Which was fine, because I had a rectangle to fill. Oh, and thank goodness for the five second rule. (kidding!)
  3. Toppings: Rosemary Chicken Sausage, Sauteed Onions. One-half cheese, because the wife is experimenting with eating less dairy.
  4. 15 minutes is too long! I barely saved it from burning after only 12. The cheese was starting to turn brown, and the crust had a few black spots on the bottom, but it actually was just on the outer edge of perfection. Try 10 minutes next time!

The dough prepares to rise:

The dough hath risen.

Making into two balls and allowing them to rest.

Ready to go into the oven.

Mmmmmmm, homemade pizza in two hours!

Wednesday, May 16, 2007

Bread Alert: Mushroom Garlic Bread

Today's experiment is mushroom garlic bread. Here's my made-up recipe:
1 c whole wheat flour
1 c bread flour
1 packet Rize yeast
1 tbsp honey
1 c water
  • mix dry ingredients together. Add water and honey and stir. Cover with plastic and leave in a warm place overnight. (I actually left it for 24 hours this time.)
1 c crimini mushrooms
4 cloves garlic
1/4 cup butter
1 tbsp salt
1/2 tsp black pepper
1 tbsp dry basil
  • Place mushrooms and garlic in food processor. Process till it's a nice mass of mushroom goodness.
  • Melt butter in a frying pan. Add mushroom mix, salt, pepper, and basil and sautee for 10 minutes.
  • Remove from the heat and add one cup of cold water. (This will help it cool, and is needed by the bread.)
  • Allow mix to cool until it is just warm to the touch. (I waited about 30 minutes.)
The rest:
2 cups whole wheat flour
Several cups of bread flour*
  • Combine the mix with the sponge and stir it up.
  • Add the whole wheat flour one cup at a time and mix.
  • Add bread flour a half cup at a time or so until it is too hard to mix with a spoon. Then flour the work surface, turn out the dough and knead until it's the right consistency.
  • Oil a bowl, plunk it down and turn it about till coated.
  • Loosely cover the bowl with plastic wrap and leave it in a warm place to rise until doubled in bulk.
  • Punch it down, divide in two, and smush into two oiled loaf pans. Allow them to rise until doubled in bulk again.
  • Preheat oven to 350 degrees at least 20 minutes before they've finished rising. (Usually rising takes an hour, so 40 minutes in is a good bet.) Place a metal cookie sheet with a lip on the bottom shelf.
  • When oven is ready, place bread in oven. Immediately pour 1 cup cold water onto the preheated cookie sheet. (Now you know why it needs a lip! And why it needs to be metal!) Bake for 30 minutes, or until they sound hollow when tapped on the bottom.
  • I accidentally poured more oil than I should have into the bowl before the first rising. Hopefully it will still turn out ok.
  • Wow, did this bread rise nicely! Of course I didn't think to take pictures.
  • Big thumbs up for using plastic wrap instead of a moist towel. Wasteful? A little. But not nearly as bad as having a gob of dough stick to a towel.
  • Stupid mistake: I didn't check on how well it had risen early enough and forgot to set a separate timer for when to preheat the oven. The bread over-proofed in the pans and collapsed in the oven. Drat!
  • Flavor is very good. The mushroom flavor is obvious but not overpowering. I can't taste the basil, though -- could use more. I'll stop there with garlic. Salt was correct.
  • Crust came out nice and crispy.
Here's the bread before it rose. No photo of the after -- it really bulked up!

And here's the final product:

* Sorry for the lack of specific instructions. Perhaps someday I'll summarize my bread making technique.

Obligatory Hello World

I've been planning to set this up forever. Today, as I wait for a mix to cool and a server to be set up, I find myself with a little spare time to start things up.

I know that single-topic blogs are all the rage but I just can't be bothered. I code. I bake bread (and muffins, and bagels, etc.). Swing by for random observations from the life of a freelancer.
Website Counter