The conference's closing session began with the usual close-of-conference announcements, then we segued into "Cookin' at the Keyboard" with David Blank-Edelman and Lee Damon. While neither have any formal culinary experience, both like to cook. Lee demonstrated by preparing (from chopping the vegetables through serving it to David), on-stage while David spoke, a tofu and vegetable stir fry and ice cream with homemade hot chocolate sauce throughout the course of the talk.³ David spoke about how system administrators could learn from restaurant cooking procedures.
First, as an appetizer, David spoke about why cooking is hard. The summary is that you're not just applying heat to some food, but you're managing the conditions and there are lots of variables, such as the quality of the ingredients, the temperature and humidity of the air, and the level of heat involved.
Next, as the first course, David discussed recipes. Based on talking with cookbook authors and chefs, he talked about how writing recipes is hard. You never make the same food twice, you can't go into explicit detail on every step (including such things as the suppliers of the food and manufacturers of the stove and pans and so forth) without scaring your audience, and most people don't use common sense in terms of recovery (if a recipe says "cook 10 minutes" they'll cook it for 10 minutes even if it's obviously done after 5). Solutions to these problems are to treat recipes as general guidelines and to never expect someone to duplicate a recipe but instead to approximate it. You also find in cookbooks that they specify common units and time ranges and they provide visual and textual clues to let the reader (cook) make judgements. As you get more experience you can come up with simpler recipes with fewer ingredients to achieve the same or better flavors. Or, the better you get, the simpler it gets. So, learn to simplify: It takes experience. Learn where to cut corners, learn to ask questions, to question every ingredient, and to compromise when necessary.
As the second course, David had talked to several working chefs about working in a world-class kitchen. Starting with a definition of restaurant terms, and continuing through a comparison of trade (such as a burger-flipper or help desk worker) to craft (cook or system administrator) to art (chef or ubergeek), he went through the skills you needed. The chefs agreed that to be a good cook you'd need urgency, the ability to take direction, cleaning as you go, precision, knowing about the subject matter, initiative, focus, and dedication. You also need to be part of a team, be willing to jump in and help when needed, and be able to receive new information and produce with it. These skills, with minor changes from food-industry to technological terms, describe a lot about systems administration.
In the case of cooking, preparation (mise en place) is included in the process. You need to be prepared physically and mentally; you need to know where everything is and have everything to hand, ready when you are, and be as fast and as efficient as possible. As you get more experience you're able to work better under pressure, to help others, and to show your creativity.
Finally, for dessert, David provided an overview of what we as systems administrators can take away from the talk. We need to write better recipes and recipe interpreters, such as configuration management tools. We need to develop our skills and moves better. We need to prepare, work clean, and focus on the task. Finally, like a line cook becoming a chef, we need to chase perfection: Take teaching opportunities but not necessarily every learning opportunity, communicate with your team, document what you do, learn more things, ask for help when you need it, and be able to roll back and start over when you have to.