<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8736841547394734502</id><updated>2011-08-08T04:53:51.986-07:00</updated><category term='flash'/><category term='oil'/><category term='challah'/><category term='beer'/><category term='rye flour'/><category term='cashews'/><category term='wheat germ'/><category term='lessons'/><category term='mushroom'/><category term='carraway seeds'/><category term='Pizza'/><category term='Baking powder'/><category term='butter'/><category term='All-purpose flour'/><category term='ajax'/><category term='pineapples'/><category term='honey'/><category term='skype'/><category term='maple syrup'/><category term='brown sugar'/><category term='whole wheat flour'/><category term='cornmeal'/><category term='offtopic'/><category term='skax'/><category term='milk'/><category term='molasses'/><category term='Bread Alert'/><category term='computers suck'/><category term='basil'/><category term='apple butter'/><category term='garlic'/><category term='baking'/><category term='egg'/><category term='bread flour'/><category term='coding'/><category term='Yeast'/><category term='asp.net'/><category term='oatmeal'/><category term='haXe'/><category term='Tortillas'/><category term='poppy seeds'/><category term='greasemonkey'/><category term='progress'/><category term='almonds'/><category term='prototype'/><category term='safari'/><title type='text'>Code Bread</title><subtitle type='html'>A baking blog with a coding problem.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>26</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-8347999537502868630</id><published>2008-04-01T17:51:00.001-07:00</published><updated>2008-04-01T18:04:30.552-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='asp.net'/><category scheme='http://www.blogger.com/atom/ns#' term='safari'/><category scheme='http://www.blogger.com/atom/ns#' term='prototype'/><category scheme='http://www.blogger.com/atom/ns#' term='coding'/><title type='text'>Whither form posts, Safari?</title><content type='html'>Now, in the "code" department...&lt;br /&gt;&lt;br /&gt;I'm writing this for the benefit of the web-at-large, as nobody else appears to have commented on this behavior in my Googling.&lt;br /&gt;&lt;br /&gt;Say you have an ASP.NET form with a FileUpload (&amp;lt;input type="file"&amp;gt;) element in it.   You leave the element blank and submit the form.&lt;br /&gt;&lt;br /&gt;Internet Explorer and Firefox both send all of the form elements to the server, with no file.&lt;br /&gt;&lt;br /&gt;Safari, on the other hand, sends an empty form post.&lt;br /&gt;&lt;br /&gt;That makes ASP.NET sad, as none of the hidden ViewState fields are sent.  Which means that your Button_OnClick bindings won't work, because they rely on the ViewState to know what just happened.&lt;br /&gt;&lt;br /&gt;Here's my solution: for Safari, remove any blank file elements before the form is submitted.&lt;br /&gt;&lt;br /&gt;The problem exists on both Safari 2.0.3 for OS X and Safari 3.1 for Windows.&lt;br /&gt;&lt;br /&gt;This solution &lt;i&gt;should&lt;/i&gt; work, but is not tested as written (I changed it to an anonymous function for this blog post).  It requires &lt;a href="http://www.prototypejs.org/"&gt;Prototype.js&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Page.RegisterOnSubmitStatement(&lt;br /&gt;   "fixSafariSubmits", &lt;br /&gt;   @"(function() {&lt;br /&gt;   if (Prototype.Browser.WebKit) {&lt;br /&gt;       var pageForm = document.getElementsByTagName('form')[0];&lt;br /&gt;       var inps = Form.Methods.getInputs(pageForm, 'file');&lt;br /&gt;       inps.each(function(inp) {&lt;br /&gt;           if (inp.value == '') Element.remove(inp);&lt;br /&gt;       });&lt;br /&gt;   }&lt;br /&gt;   return true;&lt;br /&gt;})()");&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-8347999537502868630?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/8347999537502868630/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=8347999537502868630' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/8347999537502868630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/8347999537502868630'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2008/04/whither-form-posts-safari.html' title='Whither form posts, Safari?'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-6301202071368377431</id><published>2008-03-16T11:47:00.000-07:00</published><updated>2008-12-10T10:19:52.893-08:00</updated><title type='text'>Pain à l'Ancienne</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/R91r1L4UuSI/AAAAAAAAAJk/dUM3ydtkm_g/s1600-h/IMG_3546+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/R91r1L4UuSI/AAAAAAAAAJk/dUM3ydtkm_g/s320/IMG_3546+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5178413708012206370" border="0" /&gt;&lt;/a&gt;All kinds of news from out here.&lt;br /&gt;&lt;br /&gt;We just had an offer accepted on a house!  So if you thought I didn't post very often before, now it's going to be even less for a while!&lt;br /&gt;&lt;br /&gt;Second, I may have some sort of allergy.  Possibly to wheat.  So who knows how long this blog will last.&lt;br /&gt;&lt;br /&gt;But third, my wife bought me a copy of &lt;a href="http://www.google.com/url?sa=t&amp;amp;ct=res&amp;amp;cd=1&amp;amp;url=http%3A%2F%2Fwww.amazon.com%2FBread-Bakers-Apprentice-Mastering-Extraordinary%2Fdp%2F1580082688&amp;amp;ei=UWzdR8ixBIOMggOJ-_G-Cw&amp;amp;usg=AFQjCNHbztExKdEX-rujTTLDQIOC0t_yRQ&amp;amp;sig2=WGF0MzbrEziQEwgLpUX0BA"&gt;The Bread Baker's Apprentice&lt;/a&gt; for my birthday.  And in it is a recipe for Pain à l'Ancienne. &lt;br /&gt;&lt;br /&gt;And it is goooood.   &lt;br /&gt;&lt;br /&gt;I feel that it would be doing the author a disservice to post the recipe for this one.  Besides, you really have to get into the first few chapters to understand the theory behind it.  But basically, it's completely different from every other bread I've made.&lt;br /&gt;&lt;br /&gt;For one, there's no kneading.  For another, you use ice cold &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/R91r474UuTI/AAAAAAAAAJs/6IGywMGtzj4/s1600-h/IMG_3550+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/R91r474UuTI/AAAAAAAAAJs/6IGywMGtzj4/s320/IMG_3550+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5178413772436715826" border="0" /&gt;&lt;/a&gt;water -- as in refrigerated for several hours, then with ice added to it.  You use less than a teaspoon of instant (quick-rise) yeast.  You mix the basic ingredients together (flour, water, yeast salt), then stick it into the fridge immediately to keep the yeast from being too active.  The dough is so wet you couldn't possibly do any kneading.  And the oven is preheated to 500 degrees, then turned down to 475 only after you've given the bread three steam baths, one every 30 seconds.&lt;br /&gt;&lt;br /&gt;But it's eye-opening.  The flavor and texture are fantastic -- a cut above anything I've ever baked.  We went through almost an entire baguette last night at midnight, after it had cooled enough to eat.  I think I'm going to break into another one in a minute.&lt;br /&gt;&lt;br /&gt;Yum!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-6301202071368377431?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/6301202071368377431/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=6301202071368377431' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/6301202071368377431'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/6301202071368377431'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2008/03/pain-lancienne.html' title='Pain à l&apos;Ancienne'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lbIuTLJZDsQ/R91r1L4UuSI/AAAAAAAAAJk/dUM3ydtkm_g/s72-c/IMG_3546+%5B640x480%5D.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-4339685435744071518</id><published>2008-02-28T12:04:00.000-08:00</published><updated>2008-02-28T12:13:08.385-08:00</updated><title type='text'>A new era awaits</title><content type='html'>So I've finally reached a point of frustration with my bread.  I can make tasty flavors, but textures?  They're all kinda... sandwichy.  You know -- even crumbles throughout, with now real elasticity and certainly none of the great air bubbles you get in artisan breads.  So I decided to &lt;a href="http://ask.metafilter.com/84046/A-more-breadifying-experience"&gt;Ask Metafilter what I could do to improve things&lt;/a&gt;, and received some excellent responses.&lt;br /&gt;&lt;br /&gt;The missus used that info to get me a terrific present for my birthday: &lt;a href="http://www.amazon.com/Bread-Bakers-Apprentice-Mastering-Extraordinary/dp/1580082688"&gt;The Bread Baker's Apprentice&lt;/a&gt;.  I'm hoping this takes my bread baking skills to the next level.  Will update you on my progress sometime in my next post, which at my current posting rate will probably be in mid-2010.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-4339685435744071518?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/4339685435744071518/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=4339685435744071518' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/4339685435744071518'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/4339685435744071518'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2008/02/new-era-awaits.html' title='A new era awaits'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-3400688824304343152</id><published>2008-01-25T11:54:00.000-08:00</published><updated>2008-01-25T12:21:30.769-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='honey'/><category scheme='http://www.blogger.com/atom/ns#' term='oil'/><category scheme='http://www.blogger.com/atom/ns#' term='greasemonkey'/><category scheme='http://www.blogger.com/atom/ns#' term='bread flour'/><category scheme='http://www.blogger.com/atom/ns#' term='challah'/><category scheme='http://www.blogger.com/atom/ns#' term='egg'/><category scheme='http://www.blogger.com/atom/ns#' term='Yeast'/><title type='text'>Redfin Walkability, Challah</title><content type='html'>Sorry for the delay and lack of bread.  I've actually become the master of Challah over the past few weeks.  Here's a generic Challah template:&lt;br /&gt;1 c water&lt;br /&gt;1 egg&lt;br /&gt;1/4 c honey&lt;br /&gt;1/4 c canola oil&lt;br /&gt;1 scant tbsp yeast&lt;br /&gt;2 tsp salt&lt;br /&gt;&lt;br /&gt;1 more egg, beaten with a tbsp of water&lt;br /&gt;Sesame seeds&lt;br /&gt;&lt;br /&gt;Mix all the above together.  Add in flour slowly until the dough is kneadable.  Knead for 5-10 minutes.  Let it sit for an hour until doubled in bulk.  Punch down and braid.  Let it rise another 45 minutes.  Brush with the egg/water mixture, then sprinkle sesame seeds on top.&lt;br /&gt;Pop it into a 350 degree oven for 20 minutes.  After 20, be vigilant -- the sugar and egg conspire to make this burn quickly and without warning!&lt;br /&gt;&lt;br /&gt;We're in the market for a home, and using RedFin to find properties.  Our knowledge of neighborhoods is still not great, but we know wherever we end up we want to be able to walk to the grocery store, a coffee shop, and other things.  &lt;a href="http://www.mediamax.com/rouftopv5/redfinwalkability.user.js"&gt;Here's a little GreaseMonkey script that adds a "Get WalkScore" link below a property's address on RedFin.&lt;/a&gt;  It just links over to &lt;a href="http://www.walkscore.com"&gt;WalkScore.com&lt;/a&gt; with the current property.  Handy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-3400688824304343152?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/3400688824304343152/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=3400688824304343152' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/3400688824304343152'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/3400688824304343152'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2008/01/redfin-walkability-challah.html' title='Redfin Walkability, Challah'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-5924637842965799493</id><published>2007-07-23T13:15:00.001-07:00</published><updated>2007-07-23T13:19:24.479-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='offtopic'/><title type='text'>On Harry Potter</title><content type='html'>Two days later I'm still depressed that it's all over. I explained to Mrs. Rouftop over lunch:&lt;br /&gt;&lt;br /&gt;Imagine you just got the last bag of potato chips in the world. And you have to eat it as fast as you can because there's a hole in the bag that will cause the chips to "spoil" (ha ha). Then when you've finished it, there are no more chips. Anywhere. Ever again.&lt;br /&gt;&lt;br /&gt;And you still crave just one more damn chip.&lt;br /&gt;&lt;br /&gt;That's how I feel.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-5924637842965799493?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/5924637842965799493/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=5924637842965799493' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/5924637842965799493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/5924637842965799493'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/07/on-harry-potter.html' title='On Harry Potter'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-8827431217216391359</id><published>2007-07-22T20:19:00.000-07:00</published><updated>2007-07-22T20:39:13.278-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bread flour'/><category scheme='http://www.blogger.com/atom/ns#' term='maple syrup'/><category scheme='http://www.blogger.com/atom/ns#' term='wheat germ'/><category scheme='http://www.blogger.com/atom/ns#' term='poppy seeds'/><category scheme='http://www.blogger.com/atom/ns#' term='almonds'/><category scheme='http://www.blogger.com/atom/ns#' term='All-purpose flour'/><category scheme='http://www.blogger.com/atom/ns#' term='Yeast'/><category scheme='http://www.blogger.com/atom/ns#' term='whole wheat flour'/><title type='text'>Bread Alert: Poppy Almost Wheat</title><content type='html'>I needed to bake.  It had been too long.  We actually BOUGHT a loaf of bread last week.  How wrong is that?  So I finally set up a sponge in the evening, knowing that my hatred of wasting food would overcome my growing slothness.  (Slothiness?  Slothliness?  Slothistry?).&lt;br /&gt;&lt;br /&gt;No photos, and I'm blogging from memory this time as the loaves are a couple days old.  Worse, I didn't even measure some of the ingredients.  Just threw 'em in willy-nilly.&lt;br /&gt;&lt;br /&gt;Sponge:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 packet yeast&lt;/li&gt;&lt;li&gt;1 c all-purpose flour&lt;/li&gt;&lt;li&gt;1 c whole wheat Flour&lt;/li&gt;&lt;li&gt;1 c Water&lt;/li&gt;&lt;li&gt;1 tbsp maple syrup&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Mix:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1/2 cup slivered almonds&lt;/li&gt;&lt;li&gt;1/8 cup poppy seeds (?)&lt;/li&gt;&lt;li&gt;1 cup water&lt;/li&gt;&lt;li&gt;1 tbsp olive oil&lt;/li&gt;&lt;li&gt;1 tbsp salt (see Notes)&lt;/li&gt;&lt;li&gt;2 tbsp wheat germ&lt;/li&gt;&lt;li&gt;2 cups whole wheat flour&lt;/li&gt;&lt;li&gt;1-2 cups bread flour&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Glaze:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 egg&lt;/li&gt;&lt;li&gt;1 tbsp water&lt;/li&gt;&lt;li&gt;poppy seeds&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Combine the sponge ingredients and let sit in a warm spot overnight.&lt;br /&gt;&lt;br /&gt;Toast the almonds in the toaster oven to bring out the flavor, watching closely to make sure they don't burn.  Remove and let cool until they are no longer too hot to touch.  Add nuts and poppy seeds to the sponge and stir.  Add salt and wheat germ, then water and olive oil and mix to form a batter.  Slowly add whole wheat flour until the dough is kneadable, then transfer onto a floured work surface.  Knead for 10 minutes, using the bread flour as needed to control the stickiness.&lt;br /&gt;&lt;br /&gt;Oil a bowl, plop the kneaded dough in and give it a twirl.  Cover with plastic wrap and let rise until doubled, 1 hour.&lt;br /&gt;&lt;br /&gt;Oil a pair of loaf pans.  Punch down the bread and shape into two loaves.  Press into the prepared pans.  Cover and let rise until doubled again, 45 minutes.&lt;br /&gt;&lt;br /&gt;20 minutes before baking, preheat the oven to 350.&lt;br /&gt;&lt;br /&gt;Beat an egg with one tablespoon of water.  Using a basting brush, lightly coat the top of the loaves.  Sprinkle with poppy seeds.  Place in the oven and bake for 30 minutes or until the loaves sound hollow when tapped on the bottom.&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I FORGOT THE SALT!  This led to the bread rising quite quickly.  Desperate, and willing to experiment, I took our salt shaker and shook some onto the dough after the first rising, then kneaded it in.  In all I probably only added 1/2-1 tsp of salt. This was not enough, hence the recommendation to add 1 tbsp at the correct time.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Maybe due to the humid, rainy weather (or the lack of salt?), this loaf started to show signs of mold after only two days on the counter.  I cut  off the suspect bits and threw the loaves in the fridge.  Not my favorite solution but we don't have any better at the moment.&lt;/li&gt;&lt;li&gt;This loaf deserves a second try.  We actually have been shaking salt onto the bread before adding other ingredients, as it's a bit bland.  But the flavors/textures of the poppy seeds and almonds are quite good.  &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-8827431217216391359?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/8827431217216391359/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=8827431217216391359' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/8827431217216391359'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/8827431217216391359'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/07/bread-alert-poppy-almost-wheat.html' title='Bread Alert: Poppy Almost Wheat'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-1601638239619842695</id><published>2007-07-08T07:28:00.000-07:00</published><updated>2008-12-10T10:19:53.400-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='molasses'/><category scheme='http://www.blogger.com/atom/ns#' term='Bread Alert'/><category scheme='http://www.blogger.com/atom/ns#' term='rye flour'/><category scheme='http://www.blogger.com/atom/ns#' term='whole wheat flour'/><title type='text'>Bread Alert: Super Wheaty Rye</title><content type='html'>My mother was in town this weekend, and she's on a strict diet which allows for no white flours.  I invented this loaf for her.&lt;br /&gt;&lt;br /&gt;Sponge:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 cup whole wheat flour&lt;/li&gt;&lt;li&gt;1 cup rye flour&lt;/li&gt;&lt;li&gt;1 packet yeast&lt;/li&gt;&lt;li&gt;1 tsp molasses&lt;/li&gt;&lt;li&gt;1 cup water&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Sift together flours and yeast.  Add molasses and water and stir to form a heavy batter.  Cover with plastic wrap and let sit overnight.&lt;br /&gt;&lt;br /&gt;Mix:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 tbsp wheat germ&lt;/li&gt;&lt;li&gt;1 tbsp carraway seed&lt;/li&gt;&lt;li&gt;1 tsp dill&lt;/li&gt;&lt;li&gt;1 1/4 cup hot water&lt;/li&gt;&lt;li&gt;1 tbsp safflower oil (whatever flavorless oil you have is fine)&lt;/li&gt;&lt;li&gt;1 cup rye flour&lt;/li&gt;&lt;li&gt;3 cups whole wheat flour, approx&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Sprinkle the wheat germ, carraway, and dill on top of the sponge.  Add the hot water and stir to form a nice wet batter.  Add the rye flour and stir well.  Slowly add in the whole wheat flour until the dough is kneadable.  Flour a work surface with more whole wheat, and knead for 10 minutes, adding whole wheat flour as necessary to control the stickiness.&lt;br /&gt;&lt;br /&gt;Oil a mixing bowl.  Place the dough in the bowl and give it a spin, then flip it so all surfaces get a little oil on them.  Cover with plastic wrap and set in a warm place to rise, one hour.&lt;br /&gt;&lt;br /&gt;Punch down the dough and divide in two.  Oil two loaf pans, shape the ball into oblongs and press into the pans.  Cover and let rise until doubled in bulk.  (WARNING: I let this rise for too long.  See my notes below.  I recommend 45 minutes for the second rising.) &lt;br /&gt;&lt;br /&gt;20 minutes before baking, preheat the oven to 350.  Bake for 30 minutes or until it sounds hollow when tapped.  Allow to cool completely before cutting and serving.&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Because of the lack of bread flour, this dough doesn't quite have the elasticity of the others I've made.&lt;/li&gt;&lt;li&gt;Oh noez!  The bread rose beautifully, but collapsed in the oven.  Latest theory -- I allowed it to rise too much before baking.  I gave it one hour for the second rising in a very warm room, when 45 minutes would have been enough.&lt;/li&gt;&lt;li&gt;The flavor is very rich with this bread. The sheer quantity of whole wheat provides a contrasting flavor to the rye; even though it's technically a rye bread it really tastes more like a brown bread.  It would have benefited from an even lengthier sponge.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Photos:&lt;br /&gt;&lt;div style="text-align: center;"&gt;The sponge.  Didn't have as pungent a smell as before, but that didn't affect the rising.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/RpJ5PMjD4NI/AAAAAAAAAI0/gtJQzk2DvMQ/s1600-h/IMG_3093+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/RpJ5PMjD4NI/AAAAAAAAAI0/gtJQzk2DvMQ/s320/IMG_3093+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5085260231227990226" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;After the first rise.  You can see that there's nothing wrong with the yeast!&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/RpJ5PMjD4OI/AAAAAAAAAI8/Bb7eehKwWzM/s1600-h/IMG_3094+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/RpJ5PMjD4OI/AAAAAAAAAI8/Bb7eehKwWzM/s320/IMG_3094+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5085260231227990242" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I wish I had a photo before they went into the oven, so you could see how much they had risen.  Yet after baking, they fell back to their pre-rising height.&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RpJ5PcjD4PI/AAAAAAAAAJE/mF75VenAAPI/s1600-h/IMG_3095+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RpJ5PcjD4PI/AAAAAAAAAJE/mF75VenAAPI/s320/IMG_3095+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5085260235522957554" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-1601638239619842695?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/1601638239619842695/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=1601638239619842695' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/1601638239619842695'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/1601638239619842695'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/07/bread-alert-super-wheaty-rye.html' title='Bread Alert: Super Wheaty Rye'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lbIuTLJZDsQ/RpJ5PMjD4NI/AAAAAAAAAI0/gtJQzk2DvMQ/s72-c/IMG_3093+%5B640x480%5D.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-2724431376581741229</id><published>2007-07-06T15:42:00.001-07:00</published><updated>2008-12-10T10:19:55.041-08:00</updated><title type='text'>Buns in the Oven: Whole Wheat Hamburger Buns</title><content type='html'>Sloppy Joe night has been forever changed.  From now on, it'll just be called "bun night," and we'll serve the sloppy on the side.&lt;br /&gt;&lt;br /&gt;Seriously, this is not any harder than any other bread I've baked.  The whole wheat gave them a bit of their own flavor, and they have a touch more heft than your average store-bought bun.  This is modified from &lt;a href="http://www.amazon.com/Bernard-Claytons-Complete-Book-Breads/dp/0743287096"&gt;Bernie&lt;/a&gt;.&lt;br /&gt;&lt;ul&gt;&lt;li&gt;2 cups whole wheat flour&lt;/li&gt;&lt;li&gt;2 packages yeast&lt;/li&gt;&lt;li&gt;1 tbsp salt&lt;/li&gt;&lt;li&gt;2 tbsp room temperature butter&lt;/li&gt;&lt;li&gt;2 cups hot water&lt;/li&gt;&lt;li&gt;3 cups (Approx) bread flour&lt;/li&gt;&lt;li&gt;a bit of milk&lt;/li&gt;&lt;li&gt;sesame seeds, ideally in a shaker&lt;/li&gt;&lt;/ul&gt;Stir together the wheat flour, yeast and salt.  Add the butter and stir in as best you can -- don't worry too much about getting it mixed in perfectly, just give it that old college try.  Add the hot water and stir it up into a smooth batter. Slowly add the bread flour 1/2 cup at a time until kneadable, then move it onto a floured work surface.  Knead for 8-10 minutes or so, adding flour as necessary to combat the stickiness.  Place the kneaded dough in an oiled bowl, cover with plastic and let it rise to double in bulk in a nice warm spot (30-40 minutes should do).&lt;br /&gt;&lt;br /&gt;Flour your work surface again.  Punch down the dough, then divide it into 12 equal-sized pieces. Focus on your yogic breathing to prevent kvetching at the impossibility of getting 12 equal pieces from a lump of dough.  Shape each piece into a ball, cover all with wax paper or greased plastic wrap and let rest for 5 minutes.&lt;br /&gt;&lt;br /&gt;Grease a baking pan.  Squish each ball into a small disc, 1" thick and 4" in diameter, and place on the pan.  Cover again with wax paper and let rise for 30 minutes.&lt;br /&gt;&lt;br /&gt;Preheat the oven to 350 degrees 20 minutes before baking.&lt;br /&gt;&lt;br /&gt;Remove the wax paper and brush all the buns with milk, then sprinkle sesame seeds on them all.  Bake for about 25 minutes.  Let the buns cool before serving.&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Great fun to make, and somehow really satisfying to see them come out of the oven looking better than Stroehman's.&lt;/li&gt;&lt;li&gt;The milk helps to keep the crust soft.  Another tip is to place the buns in a plastic bag to cool -- the steam will soften them further.  Just make sure that you let the buns cool enough that they don't melt the bag.  (I thought of this after biting into my sloppy joe and feeling more resistance than I was expecting. You might like it crustier, though!)&lt;/li&gt;&lt;li&gt;Very glad to have remembered to preheat the oven on time, and to use oiled plastic wrap.  The latter is key if you don't have wax paper -- you don't want anything to touch the formed, rising dough that might stick to it, because peeling it off can cause collapse.  And nobody wants a collapsed bun.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Photos:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;Dough.  Looks like all dough.  This would have made a nice, simple loaf of peasant bread.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KJMjD4GI/AAAAAAAAAH8/WyzaoTYdlTY/s1600-h/IMG_3087+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KJMjD4GI/AAAAAAAAAH8/WyzaoTYdlTY/s320/IMG_3087+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5084223288683782242" border="0" /&gt;&lt;/a&gt;My rising spot.  Sunny and surrounded by happy plants.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KJcjD4HI/AAAAAAAAAIE/_8o5oC994OI/s1600-h/IMG_3088+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KJcjD4HI/AAAAAAAAAIE/_8o5oC994OI/s320/IMG_3088+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5084223292978749554" border="0" /&gt;&lt;/a&gt;All rise for the Honorable H. Bun, presiding.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KJcjD4II/AAAAAAAAAIM/EZW8nDBs4tQ/s1600-h/IMG_3089+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KJcjD4II/AAAAAAAAAIM/EZW8nDBs4tQ/s320/IMG_3089+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5084223292978749570" border="0" /&gt;&lt;/a&gt;12 perfectly equal balls with absolutely no variation at all, just completely perfect.  (Lying is okay on the internet, right?)&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Ro7i_MjD4MI/AAAAAAAAAIs/k0e7TdfZ7Lw/s1600-h/IMG_3090+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Ro7i_MjD4MI/AAAAAAAAAIs/k0e7TdfZ7Lw/s320/IMG_3090+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5084250604675784898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Ready for the second rising.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KJsjD4KI/AAAAAAAAAIc/Pi0XwCj7PKY/s1600-h/IMG_3091+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KJsjD4KI/AAAAAAAAAIc/Pi0XwCj7PKY/s320/IMG_3091+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5084223297273716898" border="0" /&gt;&lt;/a&gt;Hot buns!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KNcjD4LI/AAAAAAAAAIk/sxJ7EoPN61Q/s1600-h/IMG_3092+%5B640x480%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KNcjD4LI/AAAAAAAAAIk/sxJ7EoPN61Q/s320/IMG_3092+%5B640x480%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5084223361698226354" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-2724431376581741229?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/2724431376581741229/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=2724431376581741229' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/2724431376581741229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/2724431376581741229'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/07/buns-in-oven-whole-wheat-hamburger-buns.html' title='Buns in the Oven: Whole Wheat Hamburger Buns'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lbIuTLJZDsQ/Ro7KJMjD4GI/AAAAAAAAAH8/WyzaoTYdlTY/s72-c/IMG_3087+%5B640x480%5D.JPG' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-9129326360697158555</id><published>2007-07-03T14:02:00.000-07:00</published><updated>2008-12-10T10:19:56.227-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bread flour'/><category scheme='http://www.blogger.com/atom/ns#' term='lessons'/><category scheme='http://www.blogger.com/atom/ns#' term='maple syrup'/><category scheme='http://www.blogger.com/atom/ns#' term='Bread Alert'/><category scheme='http://www.blogger.com/atom/ns#' term='oatmeal'/><category scheme='http://www.blogger.com/atom/ns#' term='Yeast'/><title type='text'>Bread Alert: Maple Oatmeal Sandwich Bread</title><content type='html'>I'm so late.  I know.  Blogging is so hard.&lt;br /&gt;&lt;br /&gt;This bread is long gone.  Two delicious loaves they were.  Too delicious, perhaps.&lt;br /&gt;&lt;br /&gt;The recipe is interesting because the first rising occurs before you knead the dough.  Not sure why, but I'm not complaining!  Thank you, &lt;a href="http://www.amazon.com/Bernard-Claytons-Complete-Book-Breads/dp/0743287096"&gt;Bernard&lt;/a&gt;!&lt;br /&gt;&lt;ul&gt;&lt;li&gt;2 1/2 cups boiling water&lt;/li&gt;&lt;li&gt;1 cup quick or regular rolled oats&lt;/li&gt;&lt;li&gt;1 package dry yeast&lt;/li&gt;&lt;li&gt;3/4 cup maple syrup (the real stuff)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;2 tsp salt&lt;/li&gt;&lt;li&gt;1 tbsp vegetable oil&lt;/li&gt;&lt;li&gt;5 cups bread flour, approximately&lt;/li&gt;&lt;/ul&gt;In a large bowl, pour the boiling water over the oatmeal and let sit for 1 hour.  (I found this a great excuse to make oatmeal for breakfast.)&lt;br /&gt;&lt;br /&gt;Sprinkle the yeast over the cooled oatmeal and stir.  Add maple syrup, salt, and oil.  Stir in 3 cups of flour.  The dough will have the consistency of a heavy batter.  Cover with plastic and set aside to rise for one hour.&lt;br /&gt;&lt;br /&gt;Oil two medium loaf pans. &lt;br /&gt;&lt;br /&gt;Add additional flour 1/2 cup at a time until the dough can be lifted out onto a floured surface for kneading.  Knead for 10 minutes, adding flour as necessary to control the stickiness, until smooth and elastic.&lt;br /&gt;&lt;br /&gt;Divide the dough in half, shape into mini loaves and push into the oiled loaf pans.  Cover with oiled parchment paper and let it rise until the dough reaches the edge of the pans, about another hour.&lt;br /&gt;&lt;br /&gt;20 minutes before baking, preheat the oven to 350.  Bake until the crusts are nicely browned, 40-50 minutes.&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Delicious, delicious, delicious.  Sweet, but not overpoweringly so, and perfect for sandwiches.&lt;/li&gt;&lt;li&gt;The dough is sticky!&lt;br /&gt;&lt;/li&gt;&lt;li&gt;This didn't rise nearly as much as I thought it would once in the bread pans.  In fact, it didn't really get to the edge of my pans.  Once in the oven, they ballooned and ripped apart their sides.  Go figure.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Here's a lesson: &lt;span style="font-weight: bold;"&gt;never try to make bread on a tight schedule&lt;/span&gt;.  I had tried to time this so that Mrs. Rouftop and I could have fresh sandwiches for lunch on a work day.  Unfortunately, the rise was too slow, so it came out of the oven 30 minutes late.  We tore into it as soon as it was out of the oven, whipped up a fast pair of sandwiches, and she was gone.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Another lesson: &lt;span style="font-weight: bold;"&gt;let the bread cool before eating&lt;/span&gt;!  I know it's hard to resist a hot loaf, but this one actually tasted better after it cooled than before.  Plus it was a huge mess to cut.&lt;/li&gt;&lt;/ul&gt;Photos:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;The mix.  Mmm, maple syrup!&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Roq99sjD4AI/AAAAAAAAAHI/1Lwp8wVAP78/s1600-h/IMG_3081+%5B%25P%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Roq99sjD4AI/AAAAAAAAAHI/1Lwp8wVAP78/s320/IMG_3081+%5B%25P%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5083083997068910594" border="0" /&gt;&lt;/a&gt;After the rise -- a big mushy mass.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Roq998jD4BI/AAAAAAAAAHQ/_w2AULi9LFU/s1600-h/IMG_3082+%5B%25P%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Roq998jD4BI/AAAAAAAAAHQ/_w2AULi9LFU/s320/IMG_3082+%5B%25P%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5083084001363877906" border="0" /&gt;&lt;/a&gt;But after kneading, it looks like any other dough.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Roq998jD4CI/AAAAAAAAAHY/3dGv9FPrYiM/s1600-h/IMG_3083+%5B%25P%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Roq998jD4CI/AAAAAAAAAHY/3dGv9FPrYiM/s320/IMG_3083+%5B%25P%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5083084001363877922" border="0" /&gt;&lt;/a&gt;Two loaf pans ready to go in the oven.  Note, they didn't rise as much as the recipe suggests!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Roq9-MjD4DI/AAAAAAAAAHg/5d3RZyGq5YI/s1600-h/IMG_3084+%5B%25P%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Roq9-MjD4DI/AAAAAAAAAHg/5d3RZyGq5YI/s320/IMG_3084+%5B%25P%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5083084005658845234" border="0" /&gt;&lt;/a&gt;Outta the oven, big and beauteous.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Roq-BsjD4FI/AAAAAAAAAHw/2R4HgBnvVJo/s1600-h/IMG_3086+%5B%25P%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Roq-BsjD4FI/AAAAAAAAAHw/2R4HgBnvVJo/s320/IMG_3086+%5B%25P%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5083084065788387410" border="0" /&gt;&lt;/a&gt;Turkey, avocado, tomato, mustard... and the crust came off on its own.  That's the danger of not waiting until the loaf has cooled.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Roq9-cjD4EI/AAAAAAAAAHo/SWE09eKKt3g/s1600-h/IMG_3085+%5B%25P%5D.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Roq9-cjD4EI/AAAAAAAAAHo/SWE09eKKt3g/s320/IMG_3085+%5B%25P%5D.JPG" alt="" id="BLOGGER_PHOTO_ID_5083084009953812546" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-9129326360697158555?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/9129326360697158555/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=9129326360697158555' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/9129326360697158555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/9129326360697158555'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/07/bread-alert-maple-oatmeal-sandwich.html' title='Bread Alert: Maple Oatmeal Sandwich Bread'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lbIuTLJZDsQ/Roq99sjD4AI/AAAAAAAAAHI/1Lwp8wVAP78/s72-c/IMG_3081+%5B%25P%5D.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-455774897750347084</id><published>2007-06-27T16:24:00.000-07:00</published><updated>2007-06-27T16:26:43.448-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pineapples'/><category scheme='http://www.blogger.com/atom/ns#' term='offtopic'/><title type='text'>Pineapples: A website for everything</title><content type='html'>I do have another post to write about yesterday's "Maple Oatmeal Bread" (verdict: awesome!).  But first, I must share: &lt;a href="http://www.howtocutapineapple.com/"&gt;http://www.howtocutapineapple.com/&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;This site follows the classic web business model: do one thing and do it well. &lt;br /&gt;&lt;br /&gt;I love it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-455774897750347084?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/455774897750347084/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=455774897750347084' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/455774897750347084'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/455774897750347084'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/06/pineapples-website-for-everything.html' title='Pineapples: A website for everything'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-6666218917897877405</id><published>2007-06-21T17:29:00.000-07:00</published><updated>2007-06-21T17:40:17.106-07:00</updated><title type='text'>Pizza Glut: Seasoned Whole Wheat Pizza, take two</title><content type='html'>Just a quickie.  I will take more pics and document better in the future, I promise!&lt;br /&gt;&lt;br /&gt;Dough:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 packet yeast&lt;/li&gt;&lt;li&gt;1 cup whole wheat flour&lt;/li&gt;&lt;li&gt;1/2 tsp salt&lt;/li&gt;&lt;li&gt;2 tsp garlic powder&lt;/li&gt;&lt;li&gt;1 tbsp dried basil&lt;/li&gt;&lt;li&gt;2 tsp dried oregano&lt;br /&gt;&lt;/li&gt;&lt;li&gt;1 cup water&lt;/li&gt;&lt;li&gt; 2 tbsp olive oil&lt;/li&gt;&lt;li&gt;1.5 cups all-purpose flour&lt;/li&gt;&lt;/ul&gt;Preheat oven to 500 degrees.  (It needs to heat for an hour to get the right temp for the crust!)&lt;br /&gt;&lt;br /&gt;Mix dry ingredients except all-purpose flour together.  Add water and oil and stir to mix.  Slowly add the all-purpose flour 1/2 cup at a time until kneadable.  Knead for 5-10 minutes.  Place in an oiled bowl for 1 hour.&lt;br /&gt;&lt;br /&gt;Punch down the dough, divide into two balls and let rest for ten minutes.  Shape the dough into rounds (or whatever shape suits you) and place onto oiled cookie sheets.  Top with sauce and favorite veggies.&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;This was a winner!  Top flavor, mmmmmmmm so good!&lt;/li&gt;&lt;li&gt;I didn't follow my own advice -- I added some dry ingredients after the water.  Silly me, it just makes it more difficult to mix it up.&lt;/li&gt;&lt;li&gt;Also, I tried too hard to get two nice-sized pizzas out of this one, and ended up with crust that was too thin, as in there were holes in the dough after I pressed it out.  Bad idea, as no crust means no support for cheese, sauce, and veggies.  I didn't feel like starting over after the little hole developed so I just hoped it would "fill itself in."  Fat chance.&lt;/li&gt;&lt;li&gt;Finally, I must use aluminum foil on top of the pans next time.  Not sure what I was thinking, but cleanup sucks when you just oil a cookie sheet. They now have a few more permanent stains.  &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;No pictures again.  So sad.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-6666218917897877405?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/6666218917897877405/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=6666218917897877405' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/6666218917897877405'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/6666218917897877405'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/06/pizza-glut-seasoned-whole-wheat-pizza_21.html' title='Pizza Glut: Seasoned Whole Wheat Pizza, take two'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-395733935150743848</id><published>2007-06-18T06:56:00.000-07:00</published><updated>2007-06-20T09:01:51.266-07:00</updated><title type='text'>On freezing dough</title><content type='html'>Today's thaw day.  If this works it could change EVERYTHING!  And by "everything," I mean how much pizza dough I make this week. :-)&lt;br /&gt;&lt;a href="http://www.breadmachinedigest.com/library/freezing_dough.html"&gt;This article&lt;/a&gt; makes freezing and thawing look easy.  I like easy.  Still, I have doubts that it's going to work well.  Won't the dough dry out as it thaws?  Or over-rise and collapse in the oven?  I guess we'll find out.&lt;br /&gt;One thing I think I need to invest in is wax paper.  Dough sticking to plastic wrap is a bummer.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;UPDATE:&lt;/span&gt; This worked flawlessly.  Dough removed from the freezer at about 7:30 AM had doubled in bulk by about noon.  I turned the oven on at 11:30, put it in the oven at noon and had fresh bread for lunch. &lt;br /&gt;And about the wax paper... Using plastic wrap sprayed with olive oil works perfectly.  Maybe not as low-fat, but olive oil is so good for you, who cares!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-395733935150743848?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/395733935150743848/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=395733935150743848' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/395733935150743848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/395733935150743848'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/06/on-freezing-dough.html' title='On freezing dough'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-3058663297702492266</id><published>2007-06-12T21:32:00.000-07:00</published><updated>2008-12-10T10:19:57.390-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='apple butter'/><category scheme='http://www.blogger.com/atom/ns#' term='beer'/><category scheme='http://www.blogger.com/atom/ns#' term='bread flour'/><category scheme='http://www.blogger.com/atom/ns#' term='lessons'/><category scheme='http://www.blogger.com/atom/ns#' term='molasses'/><category scheme='http://www.blogger.com/atom/ns#' term='butter'/><category scheme='http://www.blogger.com/atom/ns#' term='wheat germ'/><category scheme='http://www.blogger.com/atom/ns#' term='Bread Alert'/><category scheme='http://www.blogger.com/atom/ns#' term='cornmeal'/><title type='text'>Bread Alert: Too Much Dark Sour Bread</title><content type='html'>I'm going to start a "lessons" tag so I can easily refer to all the things I need to remember whenever I bake.  Here's one:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Remember to take into account the liquid in the sponge!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;A loaf of bread contains approximately 1 1/4 cups of liquid, and then enough dry ingredients to hold it together.  Two loaves means 2.5 cups of liquid or so.&lt;br /&gt;&lt;br /&gt;Mrs. Rouftop is always concerned about the sponge being too dry. She set this one with 1.5 cups of water.  When I began baking today, I started by adding all the liquids from my Dark Sour Bread recipe: 1.5 cups of beer, .5 cup water, .5 cup molasses.  All of a sudden, I'm staring at 4 cups of liquid in a bowl.  And I'm thinking: doh!&lt;br /&gt;&lt;br /&gt;This recipe is adapted from &lt;a href="http://www.amazon.com/Bernard-Claytons-Complete-Book-Breads/dp/068481174X"&gt;Bernard Clayton's Complete Book of Breads&lt;/a&gt;.  (If you're looking for a good bread cookbook, you can do no better!)&lt;br /&gt;&lt;br /&gt;The Sponge&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 cup bread flour&lt;/li&gt;&lt;li&gt;1 cup whole wheat flour&lt;/li&gt;&lt;li&gt;1 1/2 cups water&lt;/li&gt;&lt;li&gt;1 packet yeast&lt;/li&gt;&lt;li&gt;1 heaping tablespoon apple butter&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Mix the ingredients, cover with plastic and let sit for two days.  (One day would be more than enough.  It really doesn't seem to matter.  I didn't have time to bake yesterday, so I just waited.  The sponge fermented more.  It was fine, thankfully it didn't spoil.)&lt;br /&gt;&lt;br /&gt;This recipe makes 3 or 4 nice round loaves.&lt;br /&gt;&lt;br /&gt;The mix&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 1/2 cups beer, preferably flat&lt;/li&gt;&lt;li&gt;1/2 cup water&lt;/li&gt;&lt;li&gt;2 tbsp butter&lt;/li&gt;&lt;li&gt;1/2 cup molasses&lt;/li&gt;&lt;li&gt;2 tsp salt&lt;/li&gt;&lt;li&gt;3/4 cup wheat germ&lt;/li&gt;&lt;li&gt;2/3 cup cornmeal&lt;/li&gt;&lt;li&gt;2 cups whole wheat flour&lt;/li&gt;&lt;li&gt;enough bread flour to fill out the dough (3-4 cups)&lt;/li&gt;&lt;/ul&gt;Heat the beer on the stove until it simmers.  If the beer is not flat, you will need to stir it constantly -- once it hits the boiling point, it will foam up very fast.  Turn off the heat, and add the water, butter, molasses and salt.  Allow it to cool to 115 degrees (warm, not hot to the touch).&lt;br /&gt;Add this mix to the sponge and stir.  Add the wheat germ and cornmeal, then the whole wheat flour 1/2 cup at a time.  Continue to add bread flour 1/2 cup at a time until it forms something remotely kneadable, then turn it out onto a very well floured surface.  This is incredibly sticky dough, so be prepared to use a lot of bread flour on your hands and kneading surface!  Knead for 10 minutes until it has that earlobe consistency we know and love.&lt;br /&gt;&lt;br /&gt;Transfer the dough to a well-oiled bowl and cover with plastic wrap.  Place in a warm spot and allow it to double in bulk, about an hour and fifteen minutes or so.&lt;br /&gt;&lt;br /&gt;Prepare cookie sheets by covering with parchment paper and dusting with cornmeal.&lt;br /&gt;&lt;br /&gt;Punch down the dough, then divide into 3 or four pieces.  Shape them into rounds and place on cookie sheets.  Cover with plastic wrap that's been greased with vegetable oil and allow it to rise until again doubled, one hour.&lt;br /&gt;&lt;br /&gt;Twenty minutes before baking, preheat the oven to 350 degrees.  Bake for 30 minutes or until they sound hollow when tapped on the bottom.&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;My solution to the massive quantities of dough: After shaping two loaves into rounds, I shaped the remaining dough into a long torpedo, covered in oiled plastic wrap and placed in a sturdy plastic bag, then stuck it in the freezer. This is my first time freezing dough, we'll see what happens!&lt;/li&gt;&lt;li&gt;The flavor is really good, but all the extra flour diluted the goodness of the beer and molasses. The original recipe called for only 1.5 cups of whole wheat flour and 1 cup of bread flour; I used at least twice that.&lt;/li&gt;&lt;li&gt;Another effect of too much dough: it's harder to knead.  I think it needed more time than I gave it, as the loaves were flat and lifeless at the end.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;I remembered to preheat the oven! Yay! Then I forgot to put the bread on time.  Boo!  I don't think that was what caused the flatness.&lt;/li&gt;&lt;li&gt;Greasing plastic wrap.  It's key.  I finally can keep it from sticking to my already-shaped loaves.  Wax paper would probably work even better.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Don't get me wrong, this is delicious. I highly recommend it.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Photos:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;Heating the beer: I figured a nice wheat beer would really do the trick. New Belgium Mothership Wit, in this case.  &lt;span style="font-size:78%;"&gt;Let's see, 24 ounces of beer = 3 cups, this recipe calls for 2 cups... What do I do with that last cup?  Any ideas?  Anybody?  Hmm.  I'll think of something.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rm96auZFvCI/AAAAAAAAAGI/--kTA6SXZWo/s1600-h/IMG_3069.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rm96auZFvCI/AAAAAAAAAGI/--kTA6SXZWo/s320/IMG_3069.JPG" alt="" id="BLOGGER_PHOTO_ID_5075409904618290210" border="0" /&gt;&lt;/a&gt;Here's the sponge.  I should have known I was in trouble just from the size of it.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rm96auZFvDI/AAAAAAAAAGQ/0ySRKa8yL5k/s1600-h/IMG_3070.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rm96auZFvDI/AAAAAAAAAGQ/0ySRKa8yL5k/s320/IMG_3070.JPG" alt="" id="BLOGGER_PHOTO_ID_5075409904618290226" border="0" /&gt;&lt;/a&gt;In the middle of mixing it up, and it's just getting bigger.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rm96a-ZFvEI/AAAAAAAAAGY/Y_fGIx-OLus/s1600-h/IMG_3071.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rm96a-ZFvEI/AAAAAAAAAGY/Y_fGIx-OLus/s320/IMG_3071.JPG" alt="" id="BLOGGER_PHOTO_ID_5075409908913257538" border="0" /&gt;&lt;/a&gt;After rising.  Yes, it's OUT OF MY BOWL!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rm96a-ZFvFI/AAAAAAAAAGg/YthRjtWunMY/s1600-h/IMG_3072.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rm96a-ZFvFI/AAAAAAAAAGg/YthRjtWunMY/s320/IMG_3072.JPG" alt="" id="BLOGGER_PHOTO_ID_5075409908913257554" border="0" /&gt;&lt;/a&gt;Two loaves left to rise...&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rm96bOZFvGI/AAAAAAAAAGo/QCaolqXfaIs/s1600-h/IMG_3073.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rm96bOZFvGI/AAAAAAAAAGo/QCaolqXfaIs/s320/IMG_3073.JPG" alt="" id="BLOGGER_PHOTO_ID_5075409913208224866" border="0" /&gt;&lt;/a&gt;... one wrapped up for the freezer.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rm96h-ZFvHI/AAAAAAAAAGw/mbSQnQ7txIg/s1600-h/IMG_3074.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rm96h-ZFvHI/AAAAAAAAAGw/mbSQnQ7txIg/s320/IMG_3074.JPG" alt="" id="BLOGGER_PHOTO_ID_5075410029172341874" border="0" /&gt;&lt;/a&gt;After the second rising.  Holy crap-o-moly!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rm96iOZFvII/AAAAAAAAAG4/Lvi8Cv3T6_c/s1600-h/IMG_3075.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rm96iOZFvII/AAAAAAAAAG4/Lvi8Cv3T6_c/s320/IMG_3075.JPG" alt="" id="BLOGGER_PHOTO_ID_5075410033467309186" border="0" /&gt;&lt;/a&gt;A somewhat flattened, but truly delicious, turkey sandwich.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rm96iOZFvJI/AAAAAAAAAHA/nc_C0ZnmqWc/s1600-h/IMG_3077.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rm96iOZFvJI/AAAAAAAAAHA/nc_C0ZnmqWc/s320/IMG_3077.JPG" alt="" id="BLOGGER_PHOTO_ID_5075410033467309202" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-3058663297702492266?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/3058663297702492266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=3058663297702492266' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/3058663297702492266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/3058663297702492266'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/06/bread-alert-too-much-dark-sour-bread.html' title='Bread Alert: Too Much Dark Sour Bread'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rm96auZFvCI/AAAAAAAAAGI/--kTA6SXZWo/s72-c/IMG_3069.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-6992511033685291346</id><published>2007-06-07T17:20:00.001-07:00</published><updated>2007-06-07T17:26:32.714-07:00</updated><title type='text'>Flash Videos</title><content type='html'>Flash video is great.  But if you're brand new to it, it can be daunting figuring out how to get it to work.  It doesn't help when your web server is returning 404 errors for a file that you KNOW is there.  &lt;br /&gt;&lt;br /&gt;To solve, you have to map the .FLV extension to video/x-flv in IIS.  &lt;br /&gt;&lt;br /&gt;I don't know why MS chooses to show a 404 instead of some other access denied error.  For that matter, I don't know why you can download an MPEG without doing any mapping.  Some things are best left alone.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogs.ittoolbox.com/c/engineering/archives/adding-flv-mime-type-in-iis-4198?e=unrec#commentsForm"&gt;Setting up MIME types for Flash on IIS&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I'm probably going to bake some chocolate chip cookies tonight, but I don't think that's worth blogging about.  The recipe is on the back of the chips.  The rest is left as an exercise for the reader.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-6992511033685291346?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/6992511033685291346/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=6992511033685291346' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/6992511033685291346'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/6992511033685291346'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/06/flash-videos.html' title='Flash Videos'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-3207944396271272921</id><published>2007-06-06T10:48:00.000-07:00</published><updated>2007-06-06T15:01:04.514-07:00</updated><title type='text'>Launching a Process from ASP.NET 1.1</title><content type='html'>I've been grappling with some pretty crappy code lately, as I try to rescue a project from another coder's gross mismanagement.  Features are poorly implemented or not implemented at all, there is code duplication everywhere, the whole thing makes me want to scream bloody murder and take an axe to it.&lt;br /&gt;&lt;br /&gt;One big problem was integrating with a third-party COM object that just plain didn't work under ASP.NET.  The component creator had no advice on the matter, so I took things into my own hands and wrote a console application that wrapped the object's core functions.  Then came the pain: how do I invoke a process from C# that runs as a given user (Network Service won't cut it) and doesn't show a window?&lt;br /&gt;&lt;br /&gt;Here's the result of a ton of Google searches and the pulling out of much hair.  It uses the Windows API call "CreateProcessWithLogonW" (can anybody explain why windows API coders use such arcane nomenclature?), and sets flags to keep the process hidden.  (The real gem was finding the @"winsta0\default" line -- without this your process cannot execute from ASP.NET.  Why?  Hard to say from merely Google.  Perhaps if I bought a book.)  Feel free to incorporate this into your own code, most of it came from &lt;a href="http://pinvoke.net/default.aspx/advapi32.CreateProcessWithLogonW"&gt;this handy site&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;UPDATE:&lt;/b&gt; I spoke too soon.  This ONLY works if the user I log in with is in the Administrators group -- not good!  I'm going to take a completely different tack.  If anybody knows what I'm missing to make this work with a non-admin, chime in in the comments.  &lt;small&gt;Even if it's five years from the posting date, I'd love to know what I did wrong!&lt;/small&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=8736841547394734502&amp;postID=3207944396271272921#" onclick="document.getElementById('ProcLauncher').style.display='';return false;"&gt;Show Code&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;!-- code formatted by http://manoli.net/csharpformat/ --&gt;&lt;br /&gt;&lt;div id="ProcLauncher" style="padding: 20px; display: none; z-index: 10; position: absolute; top: 0pt; left: 0pt; background-color: rgb(255, 255, 255);"&gt;&lt;br /&gt;&lt;a href="http://www.blogger.com/post-edit.g?blogID=8736841547394734502&amp;postID=3207944396271272921#" onclick="document.getElementById('ProcLauncher').style.display='none';return false;"&gt;Hide&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="csharpcode"&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System;&lt;br /&gt;&lt;span class="kwrd"&gt;using&lt;/span&gt; System.Runtime.InteropServices;&lt;br /&gt;&lt;br /&gt;&lt;span class="kwrd"&gt;namespace&lt;/span&gt; ProcessLauncher&lt;br /&gt;{&lt;br /&gt;  &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;class&lt;/span&gt; ProcLauncher&lt;br /&gt;  {&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;const&lt;/span&gt; UInt32 Infinite = 0xffffffff;&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;const&lt;/span&gt; Int32  Startf_UseStdHandles = 4; &lt;span class="rem"&gt;// 00000100 (binary)&lt;/span&gt;&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;const&lt;/span&gt; Int32     Startf_UseShowWindow = 1; &lt;span class="rem"&gt;// 00000001 (binary)&lt;/span&gt;&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;const&lt;/span&gt; Int32  StdOutputHandle = -11;&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;const&lt;/span&gt; Int32  StdErrorHandle = -12;&lt;br /&gt;&lt;br /&gt;      &lt;span class="preproc"&gt;#region&lt;/span&gt; WinAPI Calls&lt;br /&gt;      [StructLayout(LayoutKind.Sequential, CharSet=CharSet.Auto)]&lt;br /&gt;          &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;struct&lt;/span&gt; StartupInfo&lt;br /&gt;      {&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    cb;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; String reserved;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; String desktop;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; String title;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    x;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    y;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    xSize;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    ySize;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    xCountChars;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    yCountChars;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    fillAttribute;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    flags;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; UInt16 showWindow;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; UInt16 reserved2;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;byte&lt;/span&gt;   reserved3;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; IntPtr stdInput;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; IntPtr stdOutput;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; IntPtr stdError;&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;struct&lt;/span&gt; ProcessInformation&lt;br /&gt;      {&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; IntPtr process;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; IntPtr thread;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    processId;&lt;br /&gt;          &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;int&lt;/span&gt;    threadId;&lt;br /&gt;      }&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;      [DllImport(&lt;span class="str"&gt;"advapi32.dll"&lt;/span&gt;, SetLastError=&lt;span class="kwrd"&gt;true&lt;/span&gt;, CharSet=CharSet.Unicode)]&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;extern&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; CreateProcessWithLogonW(&lt;br /&gt;          String userName,&lt;br /&gt;          String domain,&lt;br /&gt;          String password,&lt;br /&gt;          UInt32 logonFlags,&lt;br /&gt;          String applicationName,&lt;br /&gt;          String commandLine,&lt;br /&gt;          UInt32 creationFlags,&lt;br /&gt;          UInt32 environment,&lt;br /&gt;          String currentDirectory,&lt;br /&gt;          &lt;span class="kwrd"&gt;ref&lt;/span&gt;   StartupInfo startupInfo,&lt;br /&gt;          &lt;span class="kwrd"&gt;out&lt;/span&gt;  ProcessInformation processInformation);&lt;br /&gt;&lt;br /&gt;      [DllImport(&lt;span class="str"&gt;"kernel32.dll"&lt;/span&gt;, SetLastError=&lt;span class="kwrd"&gt;true&lt;/span&gt;)]&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;extern&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; GetExitCodeProcess(IntPtr process, &lt;span class="kwrd"&gt;ref&lt;/span&gt; UInt32 exitCode);&lt;br /&gt;&lt;br /&gt;      [DllImport(&lt;span class="str"&gt;"Kernel32.dll"&lt;/span&gt;, SetLastError=&lt;span class="kwrd"&gt;true&lt;/span&gt;)]&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;extern&lt;/span&gt; UInt32 WaitForSingleObject(IntPtr handle, UInt32 milliseconds);&lt;br /&gt;&lt;br /&gt;      [DllImport(&lt;span class="str"&gt;"Kernel32.dll"&lt;/span&gt;, SetLastError=&lt;span class="kwrd"&gt;true&lt;/span&gt;)]&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;extern&lt;/span&gt; IntPtr GetStdHandle(IntPtr handle);&lt;br /&gt;&lt;br /&gt;      [DllImport(&lt;span class="str"&gt;"Kernel32.dll"&lt;/span&gt;, SetLastError=&lt;span class="kwrd"&gt;true&lt;/span&gt;)]&lt;br /&gt;      &lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; &lt;span class="kwrd"&gt;extern&lt;/span&gt; &lt;span class="kwrd"&gt;bool&lt;/span&gt; CloseHandle(IntPtr handle);&lt;br /&gt;      &lt;span class="preproc"&gt;#endregion&lt;/span&gt;&lt;br /&gt;    &lt;br /&gt;      &lt;span class="kwrd"&gt;public&lt;/span&gt; &lt;span class="kwrd"&gt;static&lt;/span&gt; UInt32 RunProcess(&lt;span class="kwrd"&gt;string&lt;/span&gt; username, &lt;span class="kwrd"&gt;string&lt;/span&gt; domain, &lt;span class="kwrd"&gt;string&lt;/span&gt; password, &lt;span class="kwrd"&gt;string&lt;/span&gt; appPath, &lt;span class="kwrd"&gt;string&lt;/span&gt;[] arguments)&lt;br /&gt;      {&lt;br /&gt;          &lt;span class="kwrd"&gt;for&lt;/span&gt; (&lt;span class="kwrd"&gt;int&lt;/span&gt; i = 0; i &amp;lt; arguments.Length; i++)&lt;br /&gt;          {&lt;br /&gt;              arguments[i] = &lt;span class="str"&gt;"\""&lt;/span&gt; + arguments[i].Trim().Replace(&lt;span class="str"&gt;"\""&lt;/span&gt;, &lt;span class="str"&gt;"\"\""&lt;/span&gt;) + &lt;span class="str"&gt;"\""&lt;/span&gt;;&lt;br /&gt;          }&lt;br /&gt;        &lt;br /&gt;          StartupInfo startupInfo = &lt;span class="kwrd"&gt;new&lt;/span&gt; StartupInfo();&lt;br /&gt;          startupInfo.reserved = &lt;span class="kwrd"&gt;null&lt;/span&gt;;&lt;br /&gt;          startupInfo.desktop = &lt;span class="str"&gt;@"winsta0\default"&lt;/span&gt;;&lt;br /&gt;          startupInfo.flags = (Startf_UseStdHandles | Startf_UseShowWindow);&lt;br /&gt;          startupInfo.stdOutput = (IntPtr)StdOutputHandle;&lt;br /&gt;          startupInfo.stdError = (IntPtr)StdErrorHandle;&lt;br /&gt;          startupInfo.showWindow = 0;&lt;br /&gt;        &lt;br /&gt;          UInt32 exitCode = 123456;&lt;br /&gt;          ProcessInformation processInfo = &lt;span class="kwrd"&gt;new&lt;/span&gt; ProcessInformation();&lt;br /&gt;&lt;br /&gt;          &lt;span class="kwrd"&gt;string&lt;/span&gt; currentDirectory = System.IO.Path.GetDirectoryName(appPath);&lt;br /&gt;&lt;br /&gt;          &lt;span class="kwrd"&gt;try&lt;/span&gt;&lt;br /&gt;          {&lt;br /&gt;              CreateProcessWithLogonW(&lt;br /&gt;                  username,&lt;br /&gt;                  domain,&lt;br /&gt;                  password,&lt;br /&gt;                  (UInt32) 1,&lt;br /&gt;                  appPath,&lt;br /&gt;                  &lt;span class="str"&gt;"\""&lt;/span&gt; + appPath + &lt;span class="str"&gt;"\" "&lt;/span&gt; + &lt;span class="kwrd"&gt;string&lt;/span&gt;.Join(&lt;span class="str"&gt;" "&lt;/span&gt;, arguments),&lt;br /&gt;                  (UInt32) 0,&lt;br /&gt;                  (UInt32) 0,&lt;br /&gt;                  currentDirectory,&lt;br /&gt;                  &lt;span class="kwrd"&gt;ref&lt;/span&gt; startupInfo,&lt;br /&gt;                  &lt;span class="kwrd"&gt;out&lt;/span&gt; processInfo);&lt;br /&gt;          }&lt;br /&gt;          &lt;span class="kwrd"&gt;catch&lt;/span&gt; (Exception e)&lt;br /&gt;          {&lt;br /&gt;              System.Diagnostics.Debug.WriteLine(e.ToString());&lt;br /&gt;          }&lt;br /&gt;&lt;br /&gt;          WaitForSingleObject(processInfo.process, Infinite);&lt;br /&gt;          GetExitCodeProcess(processInfo.process, &lt;span class="kwrd"&gt;ref&lt;/span&gt; exitCode);&lt;br /&gt;          CloseHandle(processInfo.process);&lt;br /&gt;          CloseHandle(processInfo.thread);&lt;br /&gt;        &lt;br /&gt;          &lt;span class="kwrd"&gt;return&lt;/span&gt; exitCode;&lt;br /&gt;      }&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-3207944396271272921?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/3207944396271272921/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=3207944396271272921' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/3207944396271272921'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/3207944396271272921'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/06/launching-process-from-aspnet-11.html' title='Launching a Process from ASP.NET 1.1'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-120145328156539958</id><published>2007-06-03T16:18:00.000-07:00</published><updated>2008-12-10T10:19:58.556-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='apple butter'/><category scheme='http://www.blogger.com/atom/ns#' term='bread flour'/><category scheme='http://www.blogger.com/atom/ns#' term='molasses'/><category scheme='http://www.blogger.com/atom/ns#' term='butter'/><category scheme='http://www.blogger.com/atom/ns#' term='carraway seeds'/><category scheme='http://www.blogger.com/atom/ns#' term='brown sugar'/><category scheme='http://www.blogger.com/atom/ns#' term='Bread Alert'/><category scheme='http://www.blogger.com/atom/ns#' term='rye flour'/><title type='text'>Bread Alert: Marbled Rye</title><content type='html'>Mrs. Rouftop had a great idea today.  "I'm going to bake a marbled rye bread," she declared.  Then she looked at her to-do list and became despondent; as usual, she was trying to squeeze too many things into her Sunday.  But it sounded like a fun bread to make, so I took up the challenge.&lt;br /&gt;&lt;br /&gt;Sponge:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 cup whole wheat flour&lt;/li&gt;&lt;li&gt;1 cup bread flour&lt;/li&gt;&lt;li&gt;1 package yeast&lt;/li&gt;&lt;li&gt;1 heaping tbsp apple butter&lt;/li&gt;&lt;li&gt;2 cups water&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;After allowing it to sit for a day, divide the sponge into two large bowls.&lt;br /&gt;&lt;br /&gt;Pumpernickel Bread:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;2 tbsp unsweetened cocoa powder&lt;/li&gt;&lt;li&gt;1 tbsp caraway seed&lt;/li&gt;&lt;li&gt;1 tsp salt&lt;/li&gt;&lt;li&gt;1 c water&lt;/li&gt;&lt;li&gt;2 tbsp molasses&lt;/li&gt;&lt;li&gt;2 tbsp butter &lt;/li&gt;&lt;li&gt;1.5 c rye flour&lt;/li&gt;&lt;li&gt;1.5 C. bread flour&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Rye bread:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 c water &lt;/li&gt;&lt;li&gt;2 tbsp packed light brown sugar&lt;/li&gt;&lt;li&gt;1 tbsp caraway seed&lt;/li&gt;&lt;li&gt;1 tsp salt&lt;/li&gt;&lt;li&gt;2 tbsp butter&lt;/li&gt;&lt;li&gt;1 cup rye flour&lt;/li&gt;&lt;li&gt;2 cups all-purpose flour&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;In each bowl, add non-flour ingredients to the sponge and stir to mix.  Add the rye flour, then gradually add the bread flour until the dough is stiff enough to knead.&lt;br /&gt;&lt;br /&gt;Knead each one for 5-10 minutes, then oil two bowls and allow them to rise separately.  Punch down each one and knead briefly to get the air bubbles out.&lt;br /&gt;&lt;br /&gt;Using your hands, flatten the rye bread into a large rectangle, then flatten the pumpernickel bread on top of it.  Keep the pumpernickel rectangle a little smaller than the rye.  Roll the combined rectangle into a cylinder.  Divide the cylinder into two loaves, then pinch the ends so that you cannot see the pumpernickel at all -- only the rye exterior.  Place on a cookie sheet that's been dusted with cornmeal, and allow to rise one hour.&lt;br /&gt;&lt;br /&gt;Twenty minutes before the rising is through, preheat the oven to 350 degrees.  Bake the loaves for 30 minutes or until it sounds hollow when tapped on the bottom.&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Hooray, I preheated the oven in time!&lt;/li&gt;&lt;li&gt;These loaves were ginormous because I failed to account for the water in the sponge, and had to add bread flour accordingly.  That said, too much bread is hardly a problem 'round these parts.&lt;/li&gt;&lt;li&gt;The loaves were placed on one cookie sheet.  As a result, they grew together, so when they came out of the oven they were conjoined and needed separating.  To try to toughen up the exterior where they were pulled apart, I reversed them in the oven and baked for an additional five minutes.  Next time I suspect two loaves will merge I'll place them on separate cookie sheets.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;Photos:&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;Mixing up two loaves of bread.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RmN2cNnTtgI/AAAAAAAAAFQ/fjKP5NaJJtc/s1600-h/IMG_3058.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RmN2cNnTtgI/AAAAAAAAAFQ/fjKP5NaJJtc/s320/IMG_3058.JPG" alt="" id="BLOGGER_PHOTO_ID_5072027832412255746" border="0" /&gt;&lt;/a&gt;Ebony and ivory...&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/RmN2cdnTthI/AAAAAAAAAFY/LejRO9n1zUo/s1600-h/IMG_3059.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/RmN2cdnTthI/AAAAAAAAAFY/LejRO9n1zUo/s320/IMG_3059.JPG" alt="" id="BLOGGER_PHOTO_ID_5072027836707223058" border="0" /&gt;&lt;/a&gt;... rise together in perfect harmony...&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/RmN2cdnTtiI/AAAAAAAAAFg/AivFp2thvic/s1600-h/IMG_3060.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/RmN2cdnTtiI/AAAAAAAAAFg/AivFp2thvic/s320/IMG_3060.JPG" alt="" id="BLOGGER_PHOTO_ID_5072027836707223074" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;...side by side on my counter (okay I'll stop now)&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RmN2ltnTtlI/AAAAAAAAAF4/m4qFwVJyVig/s1600-h/IMG_3061.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RmN2ltnTtlI/AAAAAAAAAF4/m4qFwVJyVig/s320/IMG_3061.JPG" alt="" id="BLOGGER_PHOTO_ID_5072027995621013074" border="0" /&gt;&lt;/a&gt;The pumpernickel goes undercover.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RmN2ctnTtjI/AAAAAAAAAFo/EWXeR1yqLbw/s1600-h/IMG_3062.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RmN2ctnTtjI/AAAAAAAAAFo/EWXeR1yqLbw/s320/IMG_3062.JPG" alt="" id="BLOGGER_PHOTO_ID_5072027841002190386" border="0" /&gt;&lt;/a&gt;Fresh outta the oven, wow did these guys rise!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RmN2ctnTtkI/AAAAAAAAAFw/Z9ZTKu9hDok/s1600-h/IMG_3063.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RmN2ctnTtkI/AAAAAAAAAFw/Z9ZTKu9hDok/s320/IMG_3063.JPG" alt="" id="BLOGGER_PHOTO_ID_5072027841002190402" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;We found this really tasty with Cypress Grove Lamb Chopper cheese.&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RmN2ltnTtmI/AAAAAAAAAGA/6K8kg2bONdg/s1600-h/IMG_3064.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RmN2ltnTtmI/AAAAAAAAAGA/6K8kg2bONdg/s320/IMG_3064.JPG" alt="" id="BLOGGER_PHOTO_ID_5072027995621013090" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-120145328156539958?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/120145328156539958/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=120145328156539958' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/120145328156539958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/120145328156539958'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/06/bread-alert-marbled-rye.html' title='Bread Alert: Marbled Rye'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lbIuTLJZDsQ/RmN2cNnTtgI/AAAAAAAAAFQ/fjKP5NaJJtc/s72-c/IMG_3058.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-943515659834711616</id><published>2007-06-01T09:52:00.001-07:00</published><updated>2007-06-01T11:18:15.649-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='garlic'/><category scheme='http://www.blogger.com/atom/ns#' term='basil'/><category scheme='http://www.blogger.com/atom/ns#' term='All-purpose flour'/><category scheme='http://www.blogger.com/atom/ns#' term='whole wheat flour'/><category scheme='http://www.blogger.com/atom/ns#' term='Pizza'/><title type='text'>Pizza Glut: Seasoned Whole Wheat Pizza</title><content type='html'>This one's just a quickie without photos.  I made another pair of pizzas last night.  The sauce was the same as last time -- my wife had thrown the leftover in the freezer and so I merely had to thaw it.&lt;br /&gt;&lt;br /&gt;Dough:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 packet yeast&lt;/li&gt;&lt;li&gt;1 cup whole wheat flour&lt;/li&gt;&lt;li&gt;1/2 tsp salt&lt;/li&gt;&lt;li&gt;1 tsp garlic powder&lt;/li&gt;&lt;li&gt;1 tsp dried basil&lt;/li&gt;&lt;li&gt;1 cup water&lt;/li&gt;&lt;li&gt; 2 tbsp olive oil&lt;/li&gt;&lt;li&gt;1.5 cups all-purpose flour&lt;/li&gt;&lt;/ul&gt;  Toppings:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1/2 c cherry tomatoes, halved&lt;/li&gt;&lt;li&gt;1 green bell pepper, sliced into rounds&lt;/li&gt;&lt;li&gt;1 small white onion, chopped&lt;/li&gt;&lt;li&gt;shredded mozzarella cheese&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;Sauce: &lt;a href="http://codebread.blogspot.com/2007/05/pizza-glut.html"&gt;See my previous article&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Preheat the oven to 500 degrees.  (My cookbook recommends it be preheated an hour in advance of baking.)&lt;br /&gt;&lt;br /&gt;In a large bowl, sift together the yeast, whole wheat flour, salt, garlic powder and basil.  Add water and oil and stir until well mixed.  Slowly add the all-purpose flour until the dough is stiff enough to knead by hand.  Turn it out onto a floured surface and knead for 5-10 minutes, adding more white flour as necessary to keep it from sticking.  Oil a bowl, drop the kneaded dough and and give it a spin so the whole surface is covered with oil, then place plastic wrap over the top and let rise for one hour. &lt;br /&gt;&lt;br /&gt;Sautee the onions in olive oil until translucent.  Add peppers and cook for an additional minute.&lt;br /&gt;&lt;br /&gt;Punch it down, divide into two balls, and let rest for 20 minutes.  Oil a pair of cookie sheets, then squish down the dough onto the sheets so they're nice and thin, with a slight ridge on the edges.  Cover with sauce (leaving a little room around the edges), sprinkle with cheese, and arrange toppings evenly.  Bake for 10-15 minutes.&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;I lowered the oven temperature to 475, but I think that was a mistake.  The crust was not quite as perfect as last time.&lt;/li&gt;&lt;li&gt;The amount of herbs and garlic can definitely be increased; I could barely taste them.  I'm going to try for a tablespoon of basil next time, and maybe 2 tsp of garlic powder... and some oregano for good measure.&lt;/li&gt;&lt;li&gt;Whole wheat crust is yummy! &lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Previously: &lt;a href="http://codebread.blogspot.com/2007/05/pizza-glut.html"&gt;Pizza Glut&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-943515659834711616?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/943515659834711616/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=943515659834711616' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/943515659834711616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/943515659834711616'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/06/pizza-glut-seasoned-whole-wheat-pizza.html' title='Pizza Glut: Seasoned Whole Wheat Pizza'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-3248689591345755106</id><published>2007-05-30T16:14:00.000-07:00</published><updated>2007-05-30T16:24:08.423-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='progress'/><category scheme='http://www.blogger.com/atom/ns#' term='computers suck'/><category scheme='http://www.blogger.com/atom/ns#' term='offtopic'/><title type='text'>For everyday tasks, choose a Mac.  A Mac+, that is.</title><content type='html'>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).&lt;br /&gt;&lt;br /&gt;In a similar vein, Hal Licino at Hubpages.com performs &lt;a href="http://hubpages.com/hub/_86_Mac_Plus_Vs_07_AMD_DualCore_You_Wont_Believe_Who_Wins"&gt;an amazing benchmarking test&lt;/a&gt; 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?&lt;br /&gt;&lt;p&gt;The result is enough to make a programmer crawl into a hole and meditate for the rest of his life.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;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 &lt;strong&gt;&lt;i&gt;zero advance in productivity.&lt;/i&gt;&lt;/strong&gt;&lt;p&gt;And that's just plain crazy. &lt;/p&gt;&lt;/blockquote&gt; &lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-3248689591345755106?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/3248689591345755106/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=3248689591345755106' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/3248689591345755106'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/3248689591345755106'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/05/for-everyday-tasks-choose-mac-mac-that.html' title='For everyday tasks, choose a Mac.  A Mac+, that is.'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-319423278590981018</id><published>2007-05-30T15:26:00.001-07:00</published><updated>2008-12-10T10:19:59.896-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='milk'/><category scheme='http://www.blogger.com/atom/ns#' term='apple butter'/><category scheme='http://www.blogger.com/atom/ns#' term='bread flour'/><category scheme='http://www.blogger.com/atom/ns#' term='butter'/><category scheme='http://www.blogger.com/atom/ns#' term='cashews'/><category scheme='http://www.blogger.com/atom/ns#' term='Bread Alert'/><category scheme='http://www.blogger.com/atom/ns#' term='Yeast'/><category scheme='http://www.blogger.com/atom/ns#' term='whole wheat flour'/><title type='text'>Bread Alert: Cashew Apple Sandwich Bread</title><content type='html'>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....&lt;br /&gt;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.&lt;br /&gt;&lt;br /&gt;Sponge:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 c whole wheat flour&lt;/li&gt;&lt;li&gt;1 c white flour&lt;/li&gt;&lt;li&gt;1 package yeast&lt;/li&gt;&lt;li&gt;1 c water&lt;/li&gt;&lt;li&gt;1 heaping tbsp organic apple butter (no added sweeteners/preservatives/etc)&lt;/li&gt;&lt;/ul&gt;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.)&lt;br /&gt;&lt;br /&gt;Mix:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1 c cashews&lt;/li&gt;&lt;li&gt;2 tbsp butter&lt;/li&gt;&lt;li&gt;1 c whole milk&lt;/li&gt;&lt;li&gt;1 tbsp salt&lt;/li&gt;&lt;li&gt;2-3 cups whole wheat flour&lt;/li&gt;&lt;li&gt;1-2 cups bread flour&lt;/li&gt;&lt;/ul&gt;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.&lt;br /&gt;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.&lt;br /&gt;After 40 minutes of rising, preheat the oven to 350 degrees.&lt;br /&gt;Bake until the bottoms sound hollow when tapped -- 30 minutes in my oven.&lt;br /&gt;&lt;br /&gt;Notes:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Once again, I forgot to preheat the oven.  It's amazing I can do anything at all considering how absent-minded I am!&lt;/li&gt;&lt;li&gt;The milk really did seem to keep the bread soft.  Even the crust is nice and soft.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;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.&lt;/li&gt;&lt;li&gt;This was one of my worst dough divisions ever.  One loaf is nice and big, the other kinda tiny.&lt;/li&gt;&lt;/ol&gt;Photos:&lt;br /&gt;&lt;div style="text-align: center;"&gt;The sponge, after a day of waiting, has nice bubbles and a great beery aroma.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rl39-dnTtaI/AAAAAAAAAEg/n3EZcvkWkrU/s1600-h/IMG_3049.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rl39-dnTtaI/AAAAAAAAAEg/n3EZcvkWkrU/s320/IMG_3049.JPG" alt="" id="BLOGGER_PHOTO_ID_5070488005032261026" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The ball of dough is formed.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rl39_NnTtbI/AAAAAAAAAEo/PjwHw6O9ngg/s1600-h/IMG_3051.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rl39_NnTtbI/AAAAAAAAAEo/PjwHw6O9ngg/s320/IMG_3051.JPG" alt="" id="BLOGGER_PHOTO_ID_5070488017917162930" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Rising was nice and uneventful.  One of these days I'm going to do a time-lapse movie of this part.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rl39_tnTtcI/AAAAAAAAAEw/Ug6ZlsCGsWs/s1600-h/IMG_3052.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rl39_tnTtcI/AAAAAAAAAEw/Ug6ZlsCGsWs/s320/IMG_3052.JPG" alt="" id="BLOGGER_PHOTO_ID_5070488026507097538" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Second rising, in my favorite warm spot&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rl3-A9nTtdI/AAAAAAAAAE4/2xiMQF3kTfo/s1600-h/IMG_3053.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rl3-A9nTtdI/AAAAAAAAAE4/2xiMQF3kTfo/s320/IMG_3053.JPG" alt="" id="BLOGGER_PHOTO_ID_5070488047981934034" border="0" /&gt;&lt;/a&gt;Just out of the oven.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rl3-BtnTteI/AAAAAAAAAFA/os1ZlgDgY1g/s1600-h/IMG_3054.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rl3-BtnTteI/AAAAAAAAAFA/os1ZlgDgY1g/s320/IMG_3054.JPG" alt="" id="BLOGGER_PHOTO_ID_5070488060866835938" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Nice air holes, great flavor, this one's a keeper!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rl3-JdnTtfI/AAAAAAAAAFI/ALBbziWAk2w/s1600-h/IMG_3056.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rl3-JdnTtfI/AAAAAAAAAFI/ALBbziWAk2w/s320/IMG_3056.JPG" alt="" id="BLOGGER_PHOTO_ID_5070488194010822130" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-319423278590981018?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/319423278590981018/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=319423278590981018' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/319423278590981018'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/319423278590981018'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/05/bread-alert-cashew-apple-sandwich-bread.html' title='Bread Alert: Cashew Apple Sandwich Bread'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rl39-dnTtaI/AAAAAAAAAEg/n3EZcvkWkrU/s72-c/IMG_3049.JPG' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-1528937724642471160</id><published>2007-05-23T13:12:00.001-07:00</published><updated>2007-05-30T16:22:46.064-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='skax'/><category scheme='http://www.blogger.com/atom/ns#' term='skype'/><category scheme='http://www.blogger.com/atom/ns#' term='offtopic'/><title type='text'>Skype Faxing!</title><content type='html'>Well, technically you can't send faxes OVER Skype&lt;sup&gt;*&lt;/sup&gt;.  But the guys at &lt;a href="http://www.skax.net/"&gt;Skax&lt;/a&gt; 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!&lt;br /&gt;&lt;br /&gt;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.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:78%;"&gt;* mainly because of compression... learn more &lt;a href="http://www.soft-switch.org/foip.html"&gt;here&lt;/a&gt;.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-1528937724642471160?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/1528937724642471160/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=1528937724642471160' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/1528937724642471160'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/1528937724642471160'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/05/skype-faxing.html' title='Skype Faxing!'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-2647391399930926790</id><published>2007-05-23T10:06:00.000-07:00</published><updated>2007-05-23T10:37:41.282-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='haXe'/><category scheme='http://www.blogger.com/atom/ns#' term='flash'/><category scheme='http://www.blogger.com/atom/ns#' term='coding'/><title type='text'>Neat web authoring environment: haXe</title><content type='html'>I got mildly hooked on &lt;a href="http://ec2-1.playr.co.uk/onslaught/"&gt;Onslaught&lt;/a&gt; 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 &lt;a href="http://www.mtasc.org/"&gt;MTASC&lt;/a&gt;, 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.&lt;br /&gt;&lt;br /&gt;Reading about MTASC led me to the developer's latest project, &lt;a href="http://haxe.org/"&gt;haXe&lt;/a&gt;.  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:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Act as server middleware (running on top of the &lt;a href="http://nekovm.org/"&gt;Neko virtual machine&lt;/a&gt; with Apache)&lt;/li&gt;&lt;li&gt;Create standalone Javascript and Ajax calls&lt;/li&gt;&lt;li&gt;Most intriguingly, create and compile flash movies.&lt;/li&gt;&lt;/ol&gt;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 &lt;a href="http://codinginparadise.org/weblog/2005/10/amass-ajax-massive-storage-system.html"&gt;AMASS client storage &lt;/a&gt;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.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mtasc.org/"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-2647391399930926790?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/2647391399930926790/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=2647391399930926790' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/2647391399930926790'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/2647391399930926790'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/05/neat-web-authoring-environment-haxe.html' title='Neat web authoring environment: haXe'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-1721343468250530178</id><published>2007-05-23T08:41:00.000-07:00</published><updated>2008-12-10T10:20:00.930-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='baking'/><category scheme='http://www.blogger.com/atom/ns#' term='Baking powder'/><category scheme='http://www.blogger.com/atom/ns#' term='All-purpose flour'/><category scheme='http://www.blogger.com/atom/ns#' term='whole wheat flour'/><category scheme='http://www.blogger.com/atom/ns#' term='Tortillas'/><title type='text'>Taco kisses for you!</title><content type='html'>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.&lt;br /&gt;&lt;br /&gt;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 &lt;a href="http://www.cookingcache.com/breads/flourtortillas.shtml"&gt;this recipe&lt;/a&gt;, but added whole wheat for more flavor.&lt;br /&gt;&lt;br /&gt;Ingredients&lt;br /&gt;&lt;ul&gt;&lt;li&gt;1.5 c all purpose flour&lt;/li&gt;&lt;li&gt;1.5 c whole wheat flour&lt;/li&gt;&lt;li&gt;1 tbsp baking powder&lt;/li&gt;&lt;li&gt;1 tsp salt&lt;/li&gt;&lt;li&gt;1 c water&lt;/li&gt;&lt;li&gt;3 tbsp vegetable oil (I used safflower)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Directions&lt;br /&gt;&lt;ol&gt;&lt;li&gt;In a medium bowl, sift together flours, baking powder and salt.&lt;/li&gt;&lt;li&gt;Add water and oil and stir to mix.  (I used a wooden spoon at first, then my hands as it stiffened up.)&lt;/li&gt;&lt;li&gt;Roll into a ball and let it rest for 15 minutes.&lt;/li&gt;&lt;li&gt;Roll the ball into a tube, then divide into 10 pieces.&lt;/li&gt;&lt;li&gt;Flour a work surface and a rolling pin, then roll each piece as flat as you can.&lt;/li&gt;&lt;ol&gt;&lt;li&gt;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.)&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;li&gt;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.&lt;/li&gt;&lt;/ol&gt;Notes:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;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.&lt;/li&gt;&lt;li&gt;Whole wheat flour is sticky, and thus a pain in the butt when rolling, but the result was worth it.&lt;/li&gt;&lt;li&gt;Smaller is better -- I should have divided it into 14 as the recipe writer suggested.&lt;/li&gt;&lt;li&gt;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.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Photos:&lt;br /&gt;&lt;div style="text-align: center;"&gt;All the ingredients mixed up.  (Note a little bit of Wry Wheat in the background!)&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/RlRwfNnTtVI/AAAAAAAAAD4/VEfnRsKM-is/s1600-h/IMG_3045.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/RlRwfNnTtVI/AAAAAAAAAD4/VEfnRsKM-is/s320/IMG_3045.JPG" alt="" id="BLOGGER_PHOTO_ID_5067799162231436626" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;Rolling out the tortillas.&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RlRyGdnTtZI/AAAAAAAAAEY/6sF3mV2RxMY/s1600-h/IMG_3046.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/RlRyGdnTtZI/AAAAAAAAAEY/6sF3mV2RxMY/s320/IMG_3046.JPG" alt="" id="BLOGGER_PHOTO_ID_5067800936052929938" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;Frying them up.&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/RlRwgNnTtXI/AAAAAAAAAEI/Nmgvc7D_tBQ/s1600-h/IMG_3047.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/RlRwgNnTtXI/AAAAAAAAAEI/Nmgvc7D_tBQ/s320/IMG_3047.JPG" alt="" id="BLOGGER_PHOTO_ID_5067799179411305842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Another well-executed surprise for Mrs. Rouftop's lunch break!&lt;br /&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RlRwg9nTtYI/AAAAAAAAAEQ/SctIkAr3fQw/s1600-h/IMG_3048.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RlRwg9nTtYI/AAAAAAAAAEQ/SctIkAr3fQw/s320/IMG_3048.JPG" alt="" id="BLOGGER_PHOTO_ID_5067799192296207746" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-1721343468250530178?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/1721343468250530178/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=1721343468250530178' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/1721343468250530178'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/1721343468250530178'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/05/taco-kisses-for-you.html' title='Taco kisses for you!'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lbIuTLJZDsQ/RlRwfNnTtVI/AAAAAAAAAD4/VEfnRsKM-is/s72-c/IMG_3045.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-7520371551976474282</id><published>2007-05-19T23:19:00.000-07:00</published><updated>2008-12-10T10:20:02.254-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bread flour'/><category scheme='http://www.blogger.com/atom/ns#' term='baking'/><category scheme='http://www.blogger.com/atom/ns#' term='Bread Alert'/><category scheme='http://www.blogger.com/atom/ns#' term='rye flour'/><category scheme='http://www.blogger.com/atom/ns#' term='Yeast'/><category scheme='http://www.blogger.com/atom/ns#' term='whole wheat flour'/><title type='text'>Bread Alert: Mrs. Rouftop's Wry Wheat</title><content type='html'>Mrs. Rouftop also dabbles in the breadmaking.  Today she invented her own bread, a honey rye wheat in the form of baguettes.&lt;br /&gt;&lt;br /&gt;Sponge&lt;br /&gt;&lt;ul&gt;&lt;li&gt;.5 c wheat flour&lt;/li&gt;&lt;li&gt;.5 c white flour&lt;/li&gt;&lt;li&gt;1 c rye flour&lt;/li&gt;&lt;li&gt;1.5 c water&lt;/li&gt;&lt;li&gt;1 packet yeast&lt;/li&gt;&lt;/ul&gt;Let rest for 10 hours&lt;br /&gt;&lt;br /&gt;Dough&lt;br /&gt;&lt;ol&gt;&lt;li&gt;Add 3 tbsp honey, 3 tbsp olive oil, 1 tbsp salt and 1.5 cup water to the sponge and mix&lt;/li&gt;&lt;li&gt;Add .5 cup more wheat flour, .5 cup more rye, and then enough bread flour to knead.&lt;/li&gt;&lt;li&gt;Knead for 10 minutes.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Oil a bowl (with olive oil), roll the dough in it and set it to rise for an hour&lt;/li&gt;&lt;li&gt;Shape dough into four long baguettes, place on baking sheets lined with parchment paper and dusted with cornmeal&lt;/li&gt;&lt;li&gt;Allow to rise until doubled in bulk, about 50 minutes&lt;/li&gt;&lt;li&gt;20 minutes before baking, place a cookie sheet (with a lip) in the oven and preheat the oven to 350&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Place bread in oven, then pour 1c water into the preheated pan to provide a steam bath.&lt;/li&gt;&lt;li&gt;Bake for 20 minutes.&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Notes&lt;br /&gt;&lt;ol&gt;&lt;li&gt;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.&lt;/li&gt;&lt;li&gt;We shortened the baking time to 20 minutes because we didn't want to burn the thin loaves.&lt;/li&gt;&lt;li&gt;Despite doing a steam bath, the crust was very thin and soft.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;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 &lt;a href="http://codebread.blogspot.com/2007/05/bread-alert-mushroom-garlic-bread.html"&gt;Mushroom Garlic Bread&lt;/a&gt;.  That may have helped to keep this less dense.&lt;/li&gt;&lt;li&gt;This was delicious, the perfect complement to the cheeses we picked up at the Seattle Cheese Fest today!&lt;/li&gt;&lt;/ol&gt;Photos&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;The sponge, all ready to go.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rk_swdnTtOI/AAAAAAAAADA/B5di432w2jc/s1600-h/IMG_3039.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rk_swdnTtOI/AAAAAAAAADA/B5di432w2jc/s320/IMG_3039.JPG" alt="" id="BLOGGER_PHOTO_ID_5066528423142470882" border="0" /&gt;&lt;/a&gt;The dough after first kneading.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rk_swtnTtPI/AAAAAAAAADI/FHfO-ctO9FM/s1600-h/IMG_3040.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rk_swtnTtPI/AAAAAAAAADI/FHfO-ctO9FM/s320/IMG_3040.JPG" alt="" id="BLOGGER_PHOTO_ID_5066528427437438194" border="0" /&gt;&lt;/a&gt;The dough after first rising -- not bad for one packet of yeast!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rk_sw9nTtQI/AAAAAAAAADQ/8H7J2JNwmZY/s1600-h/IMG_3041.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rk_sw9nTtQI/AAAAAAAAADQ/8H7J2JNwmZY/s320/IMG_3041.JPG" alt="" id="BLOGGER_PHOTO_ID_5066528431732405506" border="0" /&gt;&lt;/a&gt;Shaping into baguettes.  (There was one more on another cookie sheet.)&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rk_sxNnTtRI/AAAAAAAAADY/8U3NI9R4yWk/s1600-h/IMG_3042.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rk_sxNnTtRI/AAAAAAAAADY/8U3NI9R4yWk/s320/IMG_3042.JPG" alt="" id="BLOGGER_PHOTO_ID_5066528436027372818" border="0" /&gt;&lt;/a&gt;Hot bread fresh from the oven.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rk_tGNnTtTI/AAAAAAAAADo/MFl-uTdGzU8/s1600-h/IMG_3043.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rk_tGNnTtTI/AAAAAAAAADo/MFl-uTdGzU8/s320/IMG_3043.JPG" alt="" id="BLOGGER_PHOTO_ID_5066528796804625714" border="0" /&gt;&lt;/a&gt;Paired with Cypress Grove Chevre.  Oh yes.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rk_tGNnTtUI/AAAAAAAAADw/facNAP_Vrbk/s1600-h/IMG_3044.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/Rk_tGNnTtUI/AAAAAAAAADw/facNAP_Vrbk/s320/IMG_3044.JPG" alt="" id="BLOGGER_PHOTO_ID_5066528796804625730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-7520371551976474282?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/7520371551976474282/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=7520371551976474282' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/7520371551976474282'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/7520371551976474282'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/05/bread-alert-wifeys-wild-wry-wheat.html' title='Bread Alert: Mrs. Rouftop&apos;s Wry Wheat'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rk_swdnTtOI/AAAAAAAAADA/B5di432w2jc/s72-c/IMG_3039.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-643364582733398249</id><published>2007-05-17T15:47:00.000-07:00</published><updated>2008-12-10T10:20:03.024-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bread flour'/><category scheme='http://www.blogger.com/atom/ns#' term='baking'/><category scheme='http://www.blogger.com/atom/ns#' term='rye flour'/><category scheme='http://www.blogger.com/atom/ns#' term='Yeast'/><category scheme='http://www.blogger.com/atom/ns#' term='whole wheat flour'/><category scheme='http://www.blogger.com/atom/ns#' term='Pizza'/><title type='text'>Pizza Glut</title><content type='html'>Today's experiment:  Freshly baked pizza.  My first ever.  I'll be using a recipe from my favorite cookbook, &lt;a href="http://www.amazon.com/New-Basics-Cookbook-Julee-Rosso/dp/0894803417/ref=pd_bbs_sr_1/002-5578405-8611250?ie=UTF8&amp;s=books&amp;amp;qid=1179442236&amp;sr=1-1"&gt;&lt;span style="font-style: italic;"&gt;The New Basics Cookbook&lt;/span&gt;&lt;/a&gt; by Julee Rosso and Sheila Lukins.&lt;br /&gt;&lt;br /&gt;Basic Pizza Dough&lt;br /&gt;makes two 12", four 6", or eight 3" pizzas.&lt;sup&gt;1&lt;/sup&gt;&lt;br /&gt;1 cup warm water&lt;br /&gt;1 package yeast&lt;br /&gt;2.5 - 3 c all purpose flour&lt;br /&gt;2 tbsp olive oil&lt;br /&gt;.5 tsp salt&lt;br /&gt;&lt;br /&gt;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!&lt;br /&gt;&lt;br /&gt;Basic Pizza Sauce:&lt;br /&gt;makes enough sauce for the pizza quantities listed above&lt;br /&gt;1 28 oz can Italian-style tomato puree&lt;br /&gt;1 large clove garlic, minced&lt;br /&gt;1 tsp dried oregano or marjoram&lt;br /&gt;4 fresh basil leaves or 1 tsp dried (so sad, we have no basil plant)&lt;br /&gt;1 bay leaf&lt;br /&gt;freshly ground pepper to taste&lt;br /&gt;&lt;br /&gt;Combine all ingredients in a 3 quart saucepan and simmer for 30 minutes.  (Now that's a recipe!)&lt;br /&gt;&lt;br /&gt;Pizza:&lt;br /&gt;Preheat oven to 500 degrees F ONE HOUR before baking.  Place the rack on the lowest setting.&lt;br /&gt;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).&lt;br /&gt;&lt;br /&gt;Roll the dough out into the shape of your pan, or toss it into a circle like the professionals&lt;sup&gt;2&lt;/sup&gt;.   Add sauce to one inch from the edge.  Top with your fav's&lt;sup&gt;3&lt;/sup&gt;.  Bake for 15-20 minutes on the lowest rack of the oven.&lt;sup&gt;4&lt;/sup&gt;&lt;br /&gt;&lt;br /&gt;My notes:&lt;br /&gt;&lt;ol&gt;&lt;li&gt;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.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;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!)&lt;/li&gt;&lt;li&gt;Toppings: Rosemary Chicken Sausage, Sauteed Onions.  One-half cheese, because the wife is experimenting with eating less dairy.&lt;/li&gt;&lt;li&gt;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!&lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;Photos:&lt;br /&gt;&lt;div align="center"&gt;&lt;br /&gt;The dough prepares to rise:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gW9nTtJI/AAAAAAAAACY/5pUo3WmU8_w/s1600-h/IMG_3032.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gW9nTtJI/AAAAAAAAACY/5pUo3WmU8_w/s320/IMG_3032.JPG" alt="" id="BLOGGER_PHOTO_ID_5065740734730318994" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The dough hath risen.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gXNnTtKI/AAAAAAAAACg/FYvCD87I_ys/s1600-h/IMG_3033.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gXNnTtKI/AAAAAAAAACg/FYvCD87I_ys/s320/IMG_3033.JPG" alt="" id="BLOGGER_PHOTO_ID_5065740739025286306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Making into two balls and allowing them to rest.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gXNnTtLI/AAAAAAAAACo/2H1qzUGqK_A/s1600-h/IMG_3034.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gXNnTtLI/AAAAAAAAACo/2H1qzUGqK_A/s320/IMG_3034.JPG" alt="" id="BLOGGER_PHOTO_ID_5065740739025286322" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Ready to go into the oven.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gXdnTtMI/AAAAAAAAACw/l5ex2SyHI_E/s1600-h/IMG_3035.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gXdnTtMI/AAAAAAAAACw/l5ex2SyHI_E/s320/IMG_3035.JPG" alt="" id="BLOGGER_PHOTO_ID_5065740743320253634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Mmmmmmm, homemade pizza in two hours!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gXdnTtNI/AAAAAAAAAC4/1uH5kfWnER0/s1600-h/IMG_3036.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gXdnTtNI/AAAAAAAAAC4/1uH5kfWnER0/s320/IMG_3036.JPG" alt="" id="BLOGGER_PHOTO_ID_5065740743320253650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-643364582733398249?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/643364582733398249/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=643364582733398249' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/643364582733398249'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/643364582733398249'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/05/pizza-glut.html' title='Pizza Glut'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_lbIuTLJZDsQ/Rk0gW9nTtJI/AAAAAAAAACY/5pUo3WmU8_w/s72-c/IMG_3032.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-8906179657958305949</id><published>2007-05-16T11:27:00.000-07:00</published><updated>2008-12-10T10:20:03.413-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bread flour'/><category scheme='http://www.blogger.com/atom/ns#' term='garlic'/><category scheme='http://www.blogger.com/atom/ns#' term='baking'/><category scheme='http://www.blogger.com/atom/ns#' term='mushroom'/><category scheme='http://www.blogger.com/atom/ns#' term='Bread Alert'/><category scheme='http://www.blogger.com/atom/ns#' term='rye flour'/><category scheme='http://www.blogger.com/atom/ns#' term='Yeast'/><category scheme='http://www.blogger.com/atom/ns#' term='whole wheat flour'/><title type='text'>Bread Alert: Mushroom Garlic Bread</title><content type='html'>Today's experiment is mushroom garlic bread.  Here's my made-up recipe:&lt;br /&gt;Sponge:&lt;br /&gt;1 c whole wheat flour&lt;br /&gt;1 c bread flour&lt;br /&gt;1 packet Rize yeast&lt;br /&gt;1 tbsp honey&lt;br /&gt;1 c water&lt;br /&gt;&lt;ul&gt;&lt;li&gt;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.)&lt;/li&gt;&lt;/ul&gt;Mix:&lt;br /&gt;1 c crimini mushrooms&lt;br /&gt;4 cloves garlic&lt;br /&gt;1/4 cup butter&lt;br /&gt;1 tbsp salt&lt;br /&gt;1/2 tsp black pepper&lt;br /&gt;1 tbsp dry basil&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Place mushrooms and garlic in food processor.  Process till it's a nice mass of mushroom goodness.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Melt butter in a frying pan.  Add mushroom mix, salt, pepper, and basil and sautee for 10 minutes.&lt;/li&gt;&lt;li&gt;Remove from the heat and add one cup of cold water.  (This will help it cool, and is needed by the bread.)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Allow mix to cool until it is just warm to the touch.  (I waited about 30 minutes.)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;The rest:&lt;br /&gt;2 cups whole wheat flour&lt;br /&gt;Several cups of bread flour*&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Combine the mix with the sponge and stir it up.&lt;/li&gt;&lt;li&gt;Add the whole wheat flour one cup at a time and mix.&lt;/li&gt;&lt;li&gt;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.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Oil a bowl, plunk it down and turn it about till coated.&lt;/li&gt;&lt;li&gt;Loosely cover the bowl with plastic wrap and leave it in a warm place to rise until doubled in bulk.&lt;/li&gt;&lt;li&gt;Punch it down, divide in two, and smush into two oiled loaf pans. Allow them to rise until doubled in bulk again.&lt;/li&gt;&lt;li&gt;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.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;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.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;Notes:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;I accidentally poured more oil than I should have into the bowl before the first rising.  Hopefully it will still turn out ok.&lt;/li&gt;&lt;li&gt;Wow, did this bread rise nicely!  Of course I didn't think to take pictures.&lt;/li&gt;&lt;li&gt;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.&lt;/li&gt;&lt;li&gt;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!&lt;/li&gt;&lt;li&gt;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.&lt;/li&gt;&lt;li&gt;Crust came out nice and crispy.&lt;/li&gt;&lt;/ul&gt;Here's the bread before it rose.  No photo of the after -- it really bulked up!&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RktU-NnTtHI/AAAAAAAAACI/qax_AxLQ6h4/s1600-h/IMG_3030.JPG"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RktU-NnTtHI/AAAAAAAAACI/qax_AxLQ6h4/s320/IMG_3030.JPG" alt="" id="BLOGGER_PHOTO_ID_5065235633691407474" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;And here's the final product:&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RkuWhNnTtII/AAAAAAAAACQ/wcNhVvpx9_E/s1600-h/IMG_3031.JPG"&gt;&lt;img style="cursor: pointer;" src="http://1.bp.blogspot.com/_lbIuTLJZDsQ/RkuWhNnTtII/AAAAAAAAACQ/wcNhVvpx9_E/s320/IMG_3031.JPG" alt="" id="BLOGGER_PHOTO_ID_5065307703242634370" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;* Sorry for the lack of specific instructions.  Perhaps someday I'll summarize my bread making technique.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-8906179657958305949?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/8906179657958305949/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=8906179657958305949' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/8906179657958305949'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/8906179657958305949'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/05/bread-alert-mushroom-garlic-bread.html' title='Bread Alert: Mushroom Garlic Bread'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_lbIuTLJZDsQ/RktU-NnTtHI/AAAAAAAAACI/qax_AxLQ6h4/s72-c/IMG_3030.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8736841547394734502.post-450136153669694512</id><published>2007-05-16T11:21:00.000-07:00</published><updated>2007-05-16T11:26:49.733-07:00</updated><title type='text'>Obligatory Hello World</title><content type='html'>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.&lt;br /&gt;&lt;br /&gt;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.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8736841547394734502-450136153669694512?l=codebread.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://codebread.blogspot.com/feeds/450136153669694512/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8736841547394734502&amp;postID=450136153669694512' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/450136153669694512'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8736841547394734502/posts/default/450136153669694512'/><link rel='alternate' type='text/html' href='http://codebread.blogspot.com/2007/05/obligatory-hello-world.html' title='Obligatory Hello World'/><author><name>rouftop</name><uri>http://www.blogger.com/profile/08080853737458554859</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
