May 22, 2006 spout writing

Post an Amazon review and you get my royalties

Update: Whoops — didn’t think of the ways to abuse this system. I’ve updated the offer here.

If you post a legitimate review on Amazon for Windows Forms 2.0 Programming before the 4th of July, 2006, I will personally send you my royalties for that copy of the book ($4.77 — don’t spend it all in one place : ).

You have to put your email into the Amazon review so that I can communicate with you about your address and Sells Brothers, Inc. can send you a check, but good review or bad, my royalties for one copy of the book are yours.

The first five reviewers also get signed copies shipped to their home (I’ll get Mike to sign it, too). Again, the email needs to be in the post.

May 19, 2006 spout writing

WinForms 2.0 book @ the printer

WinForms 2.0 book @ the printer

The one where the brothers Sells and I travel to Ann Arbor, MI to see Windows Forms 2.0 Programming being printed. It’s well worth the trip, if you can talk the publisher into arranging it.

May 19, 2006 spout

The Sells Brothers Meet the Edwards Brothers

The Sells Brothers Meet the Edwards Brothers

Years ago, Tim Ewald made an off-handed comment about how cool the real book printing process was and that I should take the boys to see it if I ever got the chance. Two weeks ago, we got the change and this is what we saw.

The printer for Windows Forms 2.0 Programming was Edwards Brothers, Inc. in Ann Arbor, MI. The boys and I took the 8pm flight from Portland, OR to Vegas, then the 11pm flight to Detroit, arriving at 6am, having gotten about 3 hours of sleep during the flight (the boys first redeye!). On the way out the door, we’d been a little rushed (I was trying to finish off the flooring in the new laundry room so that Melissa could have her washer and drier back after its long absence during the renovations), so had left all of the carefully prepared contact info and directions sitting in my office, meaning that the first thing we had to do was to sit in the airport near a hotspot and download driving directions. This and a trip to the restroom for a teeth brushing and a fresh shirt and we had caught our 2nd wind.

We picked up our car and had a very pleasant trip to Ann Arbor, where we stopped at Mike’s Coney Island for pancakes and omelets (I had the pancakes and my youngest surprised the hell out of me by ordering an omelet — they grow up so fast!). We arrived at Edwards Brothers around 7:30a (in some time zone) and learned that they had been in business for a little while longer than Sells Brothers, Inc:

Unfortunately, we’d arrived before our escort, the very lovely Ms. Cindy Rohraff, so she caught us napping in the parking lot around 8am. Still, as we entered the lobby, it was clear that they were as excited to show us around their operation as we were to be there:

After Cindy purchased caffeinated sodas (Microsoft has spoiled me enough that I hadn’t come prepared to actually *purchase* sodas…), we began our tour and the first thing we saw was a big basket of the rejected bits of my book:

As it turns out, these bits weren’t rejected on content, but rather on printing quality.

The size of the printing floor is enormous. It felt like 4+ football fields in there and I’m sure I saw at least 50 different books in various stages of production. In this picture of the boys and Daryl (in charge of printing our job), you can get some small sense of the size of the place:

For all those jobs, Edwards Brothers employees are constantly throwing away covers, inserts and signatures” (bundles of pages that get stuck together to produce a book) that don’t meet their quality standards. In fact, I saw one guy throwing away what must’ve been 100 freshly printed book covers because he’d examined one of them with a magnifying glass and found a flaw. These guys are serious.

Next, we found our way to the input end of the printer, where they feed in 2-ton rolls of paper:

If you look closely, you’ll see that their are two rolls of paper connected here. Only one is fed through at a time, but when the first is out, the 2nd is spliced in automatically without ever slowing down the printing process, providing a virtual infinitely long roll of paper. A cache of paper is kept on rollers to enable the time it takes to splice:

When the splice happens, the rollers at the top and the bottom (not shown) get close together as the cache is used up and then after the splice, the rollers expand again as the cache fills up. That’s not to say that the printer doesn’t stop at all. When it’s running, the paper goes through the process so fast, the words and images are a blur, but whenever there’s a problem, the process grinds to a halt and restarts w/o issue.

After the cache, the paper feeds into the printing machine (or machines, depending on how many colors the output needs):

and comes out all printed:

The printing itself happens with ink that’s been spread over thin metal plates containing the laser-etched images of the book in 48 page sets, one plate for each side. The paper goes through the printer between the two plates. Here you can see Daryl changing the plates:

To support the ability to change the plates, the printer opens in the middle with hand cranks, which Daryl let the boys operate:

Daryl was one of the long list of people that bent over backwards to show us around and explain to us the process (Thanks, Daryl!). The plates themselves are shown here:

After the pages are printed, they’re rolled and cooled to set the ink:

After the ink is set, the paper goes into a machine that cuts it and turns it along three separate paths (you can see one of the paths continue over the top of the cutter):

Each path of paper is routed through a folding and bundling machine:

Once out of the bundling machine, the bundles are gathered together:

compressed (losslessly):

and stacked on pallets in sections (my book had 27 sections) for transport to the bundling department:

In my case, the cover:

and the color insert:

were printed by another vendor, but Edwards Brothers is fully capable of printing these elements. In fact, my book is pretty trivial compared to the tricks that the EB folks can do. I think next time, I’ll ask for a two-part cloth-bound hardcover with stained edges just to test em. : )

All 6500 copies were printed in one day and stacked over in the binding section of the printing plant (and again, notice the size of this place):

All of the sections were then stacked into the collating machine:

After this, my batteries ran out of power temporarily (they helpful staff at EB replaced em for me), so I can’t show you pictures, but once the books are collated and the spines bathed in glue at two temperatures (275 and 300 degrees Fahrenheit), the covers were attached and crimped and the books given the wheel treatment” as they exited the machine on their way to the cutter:

The cutter was this very scary machine they called the guillotine” and  was able to cut all three edges of my 1000 page book in a single slice and then stack the books into neat piles:

Not all the books survive the trip through the cutter (much like a real guillotine):

Once the books have been trimmed, they’re boxed and put on a conveyer to the shipping department. The shippers are responsible for lifting every single book (I apologized for my wordiness) and putting them onto palettes that are wrapped in plastic and hoisted by forklift:

The forklift stacks each palette in the warehouse for shipping:

That’s not all. The little bits of paper that were the edges of my book and the low quality copies are shredded and compressed into giant chunks:

Like the books, the cubes of paper are stacked in the warehouse for shipping:

The waste paper is shipped off to a recycler for use in other books, whereas the books themselves are shipped to distributors, like Amazon, Borders and Barnes & Noble. By now, the first of the pre-orders should be being fulfilled. The ones that aren’t sent off for sale are given to vain authors that need a physical manifestation of their work to really understand the amount of time and energy that goes into producing their book:

Special thanks go to Cindy, who was our most gracious hostess and to the staff and management of Edwards Brothers, Inc, for their work in producing such a high quality product. I also have to thank the boys for their infinite patience in indulging their father traveling to the middle west of our country to hang out amongst the stacks and stacks of books in progress. And, of course, thanks go to the readers. I hope you enjoy reader the book as much as I enjoyed working on it.

May 12, 2006 spout writing

A C# Bedtime Story Updated for C# 2.0

Seeing a reference to A C# Bedtime Story as a generic definition for .NET delegates in a recent DDJ article inspired me to post the new and improved version that takes into account C# 2.0′s anonymous delegate support. Enjoy.

May 12, 2006 fun

Code Monkey: The Song

Check out the Code Monkey mp3!

May 9, 2006 spout writing

ATL Internals, 2e, available for pre-order

ATL Internals, 2e, this time with ATL 8, is available for pre-order on Amazon.com. For those wondering what the world needs with such a book, I refer you to the preface:

.NET has hit the Windows programmer community like a tornado, tipping over the trailer homes of the ways that we used to do things. It’s pretty much swept up the needs of most web applications and service applications, as well of most of the line-of-business applications for which we previously used Visual Basic and MFC.

However, a few stubborn hold-outs in their root cellars will give up their native code only at the end of a gun. These are the folks with years of investment in C++ code who don’t trust some new-fangled compiler switches to make their native code managed.” Those folks won’t ever move their code, whether there are benefits to be gained or not. This book is partially for them, if they can be talked into moving their ATL 3/Visual C++ 6 projects forward to ATL 8 and Visual Studio 2005.

Another class of developers that inhabit downtown Windows city aren’t touched by tornados and barely notice them when they happen. These are the ones shipping applications that have to run fast and well on Windows 95 on up, that don’t have the CPU or the memory to run a .NET application or the bandwidth to download the .NET Framework even if they wanted to. These are the ones who also have to squeeze the maximum out of server machines, to take advantage of every resource that’s available. These are the ones who don’t have the luxury of the CPU, memory or storage resources provided by the clear weather of modern machines needed for garbage collection, just-in-time compilation, or a giant class library filled with things they don’t need. These developers value load time, execution speed, and direct access to the platform in rain, sleet, or dark of night. For them, any framework they use must have a strict policy when it comes to zero-overhead for features they don’t use, maximum flexibility for customization, and hard-core performance. For these developers, there’s ATL 8, the last, best native framework for the Windows platform.

May 7, 2006 fun

There’s a Windows “Brat Pack?!?”

Not only does Amazon.com have a traffic ranking for sellsbrothers.com (80,616 — this number sounds too high to be good : ), but there’s a web site review claiming that I’m one of the Windows Brat Pack.” I have to associate with Anthony Michael Hall or Rob Lowe from this bunch (they seem the most geeky), but them who’s Don and who’s Tim? Definitely, Ted Pattison is Judd Nelson…

May 5, 2006

CSD Wants You

Do you want to build the next level of capability and productivity on top of the .NET Framework and WinFX? Do you want to work on the same team as Clemens Szyperski, Tony Williams, Chris Anderson, Don Box, Doug Purdy, Steve Maine, Yasser Shohoud, Keith Short, Savas Parastatidis, Martin Gudgin, me and a host of folks so busy being smart that you don’t even know their names? Do you have a long list of where Microsoft is failing folks building distributed application and a driving need to get them fixed? If so, the Connected Systems Division is hiring (we’re the same folks that own Indigo, InfoCard, Windows Workflow, Active Directory and BizTalk).

Mail something interesting to csdjobs@microsoft.com to apply today.


← Newer Entries Older Entries →