It's a dreary, gloomy Saturday here in New York - probably appropriate for Halloween, yes? - and I'm getting ready to head out to the Greenmarket. In the meantime, here are some fun links to see you through that sugar hangover.
Kate Spade has chosen Brooklyn-based artist Bella Foster to design the images for their 2010 monthly planner, and has posted the watercolors she created for the project on their Facebook page. I don't use a hard copy diary anymore (Thank you, Blackberry!), but I do love these. I may have to make some sort of desktop collage for my laptop...
Frau Haselmeyer, one of my favorite bloggers, posted these gorgeous cupcake and muffin cups from Bake It Pretty. These would turn any muffin into a festive gift, and have me thinking about all kinds of holiday presents - never mind what these awesome star-shaped mini-loaf pans could do for my pumpkin bread!
Finally, from Etsy, that pantheon of good ideas and gorgeous things, come Yeehaw's farmers' market prints. I love, love, love these. If I had any available wall space, I'd buy and frame them RIGHT now. There's a cabbage, an onion, a bell pepper and an ear of corn. I may have to give into temptation and buy the artichoke-decorated notecards.
Back when I was a staff member at eGullet, one of the most popular discussion threads was one about - and I'm not kidding - roasted cauliflower. Check it out; the discussion, thus far, has lasted 16 pages and 472 posts. How on earth, you might wonder, can a vegetable as omnipresent and seemingly boring as cauliflower inspire such devotion?
If you have to ask, you clearly haven't tried roasting it.
Roasted cauliflower is a revelation. A vegetable that was good and slightly cabbagey becomes delicious when roasted to an absolutely blackened crisp. Lightly golden won't do it in this case - the darker, the better.Now, you can eat roasted cauliflower plain, right out of the oven. Toss it with enough salt and pepper, and you've got yourself a delicious side for pretty much anything. It's also great with capers and raisins, or a bit of curry powder. This week, I decided to try tossing mine with a light lemon vinaigrette and a generous helping of crushed red pepper. Thanks to the addition of lemon zest and the honey in the vinaigrette, the result was sweet, salty and spicy. Totally good for me, and totally addictive.
What could be better than that?
Spicy Roasted Cauliflower with Lemon
1 head of cauliflower, cut into stemmed florets (about 4 cups)
Olive oil
Salt and pepper
2 tbsp. lemon juice
1 tsp. honey
Zest of 1 lemon
1 tsp. crushed red pepper flakes
2 tbsp. finely chopped parsley
Pre-heat the oven to 450°F. In a large bowl, toss the florets with a tablespoon or so of the olive oil, and season generously with salt and pepper. Grease a jelly roll-style cookie sheet (or shallow roasting pan) with a bit more olive oil. Spread the florets out in one layer on the prepared pan.
Roast the cauliflower for 30-45 minutes, until it is cooked through and dark brown - even black - in most spots. Trust me.
In the meantime, whisk together the lemon juice, honey and a pinch of salt in a small bowl. Whisk in a tablespoon of oil and set aside.
Once the cauliflower is roasted to your liking, remove the pan from the oven and place the cooked cauliflower in a large bowl. Toss with the lemon zest, crushed red pepper, parsley and a pinch of salt. Mix well, taste and adjust for seasonings, and serve warm or at room temperature.
Serves 3-4 as a side.
Good intentions are nice - and, like most people, I have lots of them. But translating those aspirations into real world results is not always simple. As a problem solver by nature, I'm frustrated that many social challenges seem to have achievable solutions. As a society, we clearly know how to feed, clothe, house and educate people, at the bare minimum. Yet so many people do not have even their basic needs met.
As a first step towards turning good intentions into impact, I am participating in the Leadership New York program, run by the Coro Foundation. Now in its 22nd year, LNY trains mid-career professionals from the public, private, and non-profit sectors to be change agents within their organizations and across New York City. The part time program is 9 months long, and started with an intense 4-day off-site retreat in a rural area of Connecticut in September. We also had our first "Issue Day" on Oct 21, where we examined the NYC budget process and interviewed policy makers.
LNY has me thinking about "adaptive leadership", and the need to build coalitions. As problems become more complex, solutions can also be complex. There's a need for public, private and nonprofit partners to collaborate. Building those bridges can be more challenging than moving any one group to act alone.
If you're concerned about addressing childhood obesity, for instance, you need to think about parents and their kids, of course, but also food manufacturers and vendors, schools, and physicians. You may also need to think about the availability of parks and open space for exercise, and the safety of children playing outside or walking to school. There are a lot of factors and diverse stakeholders to consider.
This is an "adaptive" leadership challenge, which requires more than technical expertise and authority to solve. You need to reach people and influence them to change the status quo.
I'm just getting started with the program, but I am already getting my eyes opened to new possibilities. To learn more about Coro, see: http://www.coro.org/site/c.nvI2IeNZJyE/b.2108577/k.EF3D/Leadership_New_York.htm
My friend Faith was an incredible hostess during my week in San Francisco, so I had to do something to thank her. That something turned out to be dinner at The Slanted Door, a legendary Vietnamese restaurant that moved from Valencia Street to the Ferry Building a few years back.
Loyal readers and friends know that I have a weakness for Asian food, and that Vietnamese is my favorite of the bunch. I love the combination of Asian and Western flavors, and, in particular, the melding of French and Vietnamese techniques. The banhi mi is a classic example, with its French baguette and charcuterie paired with Asian herbs, pickles and sauces. I haven't eaten a lot of haute Vietnamese in my day, so I was very excited to try The Slanted Door.
You enter the restaurant through a door on the pier, just down the dock from where commuters flow onto ferries to Tiburon, Sausalito and other parts North, East and South. We arrived fairly early, just as sunset was kicking in, and the view across the bay was crystal clear and painted with golden light. The restaurant was fully-booked, so we decided to order a cocktail and wait for two stools to free up at the bar. I went for a Pimm's Cup, which turned out to be delicious and not at all lacking in cucumber.
Once we'd snagged seats, we ordered a load of food and sat back to enjoy the parade. First up, crispy imperial rolls, strongly recommended by my friend YaeRi. Filled with shrimp, pork, peanuts and noodles, they were rich and a bit heavy, but served with steamed noodles, lettuce leaves and the omnipresent nuoc cham sauce (fish sauce, sugar, and pickled vegetables), all of which lent a contrast in texture and lightened the rolls considerably.
Next up, the salt and pepper quail. I have to confess, I ordered these mostly to get at the pickled cucumbers with which they were served - never a good move. The quail was tasty enough, but nothing to write home (or to the internets) about. I didn't dislike it, but I wouldn't order it again.
Next, the jicama, cabbage and grapefruit salad. We LOVED this. Or, I should say - Faith LOVED this, and I would have LOVED it if it hadn't been quite so chockful of cilantro. I am one of those genetic unfortunates for whom the flavor of large amounts of cilantro is closer to dirty dishwater than it is to anything herbal, and there was a lot of cilantro in this salad. The cilantro-free bites I managed to concoct were absolutely delicious, though. I especially liked the combination of the tart grapefruit with the candied pecans - heavenly.
For our main course, we ordered a Slanted Door classic, the shaking beef. Made with filet, it rises far above the (still delicious) shaking beefs I've had. The beef is cooked in the wok with red onions and watercress and served with a citrus sauce on the side (you're meant to pore the sauce over the beef - or dip, if you like). Citrus and beef are an unsual combination in most Western food, but I find that I really enjoy them together. The acid in the fruit cuts right through the fattiness of the meat, brightening the flavor and creating a bit of a part in your mouth.
And I do like a party.
The Slanted Door
1 Ferry Building, #3
San Francisco, California
415.861.8032
One of the reasons I rented a house in Sonoma (as opposed to booking a block of rooms at a hotel or bed and breakfast) is that I wanted us to be able to cook. We had a lot of talented cooks on the trip, and I thought it would be fun to work together in a big kitchen, looking out at the sun setting over the courtyard, and relaxing with cocktails while we chopped, peeled, sautéed and roasted.
As it turned out, that's what we did four nights out of seven - not a bad track record, if you ask me. We had a big bowl of spaghetti with raw tomato, basil and garlic sauce on our first night, Julia Child's boeuf bourgignon on our second, and my favorite grilled lamb on Wednesday. On Friday, my Aunt Cathi made a delicious chicken dish with bacon, figs, plums and garlic that matched the sunset pretty darn admirably.
Really, it's hard to decide which was prettier! Do you need some more help?
For my birthday, Faith bought tickets to Margaret Atwood's reading at the Herbst Theatre in San Francisco. Atwood is one of my absolute favorite writers, and I brought her latest novel (The Year Of The Flood) with me on my trip to Sonoma - and finished it just in time. She's used her considerable sway over her fan base to turn her latest book tour into a series of fundraisers for local charities, which I thought was pretty nifty indeed.
Before the reading, though, we needed sustenance, and decided to head to Bar Tartine (the restaurant outpost of the legendary Tartine bakery) for an early dinner. As the offspring of a bakery, it's only fitting that Bar Tartine serve superlative bread. This being San Francisco, it was, of course, a sourdough, with a chewy crumb dark - almost black - crust. Served alongside, some of the prettiest, freshest butter I've had in a long while.
We decided to order a couple of snacks, a couple appetizers, and - in order to sample the brioche bun - to split a hamburger. First up, a round of housemade cheddar crackers. The crackers were buttery and rich, full of the sharp, only slightly smoky flavor of sharp cheddar. I never knew crackers could be this sinful, or this satisfying.
Next, we tried the radishes with fig and walnut puree. This was delicious - but we didn't really enjoy the radishes with the fig spread. We slathered the spread on our bread, dipped the radishes in the butter and sprinkled them with salt, and ended up much happier for it all. Gorgeous as separate entities, but a pairing that didn't quite work.
It was dark by the time our burger made it to the table, so I wasn't able to snap a photo of it. But I'm sure that the images we managed to grab of our appetizers more than make up for what's missing. First up, a tomato salad with Point Reyes blue cheese, frisee and edible marigolds. The tomatoes were of the late-summer variety: impossibly sweet and soft, tasting of sunlight and dirt.
Last, but most certainly not least, we shared a pork charcuterie plate. Rillettes made from the shoulder, and terrine from, well, the rest of the pig. Alongside were a little more of that sourdough (toasted this time) and some lightly pickled baby carrots. The rillettes were good, but the fatty richness obscured any other flavors that might have been waiting to get out. The terrine, on the other hand, was amazing. It too was bursting with piggy flavor, but was drizzled with an herbed vinaigrette. The sauce lent enough tang to bring a much-needed contrast to the pork, and it absolutely made the dish.
Our burger was similarly tasty. The brioche bun was (unsurprisingly, after what I learned on this visit) huge, full of sweet butter, and soaked up the burger's juices quite splendidly. All in all, a high point in a week of many good burgers.
My general feeling about Bar Tartine is that I would go back in a heartbeat, and that I'd love to actually eat at the bar. We sat next to the window (I wanted to take some gorgeous photos for you all), but the energy and activity all seemed to emanate from the rear - I want to see what that's all about.
Bar Tartine
561 Valencia Street
San Francisco, California
415.487.1600
On our Friday in Sonoma, a few of us ladies decided to head back over the ridge to Napa for lunch at Go Fish, a seafood and sushi restaurant in St. Helena. Go Fish is the newest (It opened in 2006, so it's not really new anymore, I suppose.) restaurant from chef Cindy Pawlcyn, whose Mustard's Grill was part of Napa's fine dining revolution in the early 1980s.
I ate at Go Fish back in 2007, when I was visiting Napa with my mother. A friend had recommended it to me, but I was still a bit skeptical. Seafood? In landlocked Napa Valley? Really? As it turns out, yes!We started with a couple of appetizers. The vegetable tempura was tasty, but not particularly photogenic. The salt crusted prawns arrived in their shells, surrounded by crisped garlic, and with a chile-flaked, sweet and sour sauce. I dipped mine and then ate them, shell and all. Crunchy, salty, spicy - what more could you want?
Surprisingly, our favorite appetizer was the green goddess salad. A salad of little gem lettuces, thinly sliced cucumbers, razor-thin radishes and teeny little tomatoes, it was dressed with the best green goddess I've ever tasted. Creamy, tangy and bursting with tarragon, it was just plain dreamy.
The mains were similarly delicious. We had a tuna reuben, with grilled bigeye tuna and coleslaw on rye bread, and a black cod in miso, one of Louisa's favorite things ever. I had one of my favorite things, a chirashi.Chirashi is basically a bowl of sushi rice topped with all kinds of sashimi, served with soy sauce, wasabi and ginger. Since the nori is the only thing I don't really like about sushi, sashimi is usually my fix of choice, and chirashi is sashimi on crack. I just can't get enough. This bowl was particularly good, with a variety of tuna, salmon and hamachi, along with a (cooked) shrimp and seaweed salad with sesame oil.
We were far too full for dessert, but managed a coffee or two before heading out for some serious shopping - what else would you expect from ladies who lunch?
Go Fish
641 Main Street
St. Helena, California
707.963.0700
Following up on my previous post, I explored XML vs JSON for exposing Domino data.
In order to evaluate both the formats, i set out to build a small component to achieve the following: "Read all names/emails from Domino address book and implement AJAX to optimize name search".
I defined the critical success factors to be a) Performance b) Ease of use.
I am yet to complete the development of my test component, but based on initial findings I bet on JSON to be my preferred mode.
Here is why:
Performance: Given below is the time taken for exposing a domino address book (with over 140,000 entries) (Using Firebug 1.4)
In JSON format:
In XML format:
Clearly domino renders data in JSON format much quicker.
Ease of use: JSON data is as good as any other Javascript object. Hardly any learning curve for using JSON output.
Caveat:
Be aware of possibility of malicious cross-site scripting on JSON output. Need to be judicious before using javascript 'eval()' on JSON output.
JSONView:
For all JSON enthusiasts, JSONView (current version 0.4) is a nice firefox addon to render JSON outout on the browser itself.
As a part of project work, I have been exploring alternate ways of exposing data from a Lotus Domino system.
Since Lotus Domino release 4.5, Domino comes with an inbuilt web-server and can respond to http requests with notes data from .nsf file. However this approach tightly binds data with the presentation layer, hence is not really efficient.
Starting Domino release 5.0.2, it adopted XML as the standard data exchange format and provided services (i.e http://server/notes db path/view name?Readviewentries..) to expose domino data in XML format for external systems to read and and present as they like.
With Domino Release 7.0.2, domino extended its services to expose Lotus notes data in JSON format. Without adding any complexity, you can simply specify that output format as JSON from the Readviewentries service. i.e .. extending the example in the previous section, you can get JSON format by calling this url..
http://servername/notes db path/view name?Readviewentries&outputformat=JSON..
In future posts i would evaluate Domino's XML vs JSON services..
Two monks were travelling in the rain, the mud sloshing under their feet. As they came to a rivulet crossing, they saw a beautiful young girl, finely dressed, unable to cross because of the mud. Without a word, the older monk picked up the girl and carried her to the other side.
The younger monk was agitated for the rest of their journey and could not control himself once they reached their destination. He exploded at the older monk, "How could you, a monk, even consider holding a woman in your arms, much less a young and beautiful one? It is against our teachings. It is in very bad taste."
"I put her down at the roadside", said the older monk, "Are you still carrying her ... ?"
Happy weekend, my doves! This week was a long one at the office (meetings, meetings, meetings), so a bunch of these Treasury items come not from internet research (The last thing I wanted to do when I got home at night was get back on the computer.), but from my daily NPR podcast listening - and my mom!
First up, what I learned on NPR this week. I listen to several NPR podcasts on a regular basis, since it's easier to listen to my iPod than to juggle a book on my daily commute, and Terry Gross's Fresh Air is one of my favorites. Last week she interviewed none other than my food writing idol, Ruth Reichl! Reichl is out and about doing the book tour for Gourmet Today, and the interviews she's been giving have been fascinating. She's been very open about the end of Gourmet and her experience of the news. She and Terry also talk a lot about Ruth's last book, the short memoir Not Becoming My Mother, and about sustainable fishing.
Speaking of sustainable fishing, Reichl recommends using this tool provided by the Monterey Bay Aquarium to keep track of which fish are OK to eat, since those things can change from week to week, depending on weather conditions, season and so on...
Next, the incredibly cool article my mom clipped from Travel & Leisure! Rufus Wainwright, one of my favorite musicians, spent a good chunk of his childhood in Montréal, and offers readers a few of his favorite spots. I'd already been considering a jaunt up to Québec sometime this winter (when prices are cheap), and now I'm all but decided. Rufus could probably convince me to jump off a bridge; luckily, he's more likely to croon something about opera or art.
Finally, another travel-related tidbit. If you're sick of staying in hotels or charmless corporate apartments when you're away from home, why not give airbnb a whirl? You can rent apartments or rooms for short- or long-term stays, and most of the homes I saw were gorgeous, design mag-worthy creations. I'm sure not every property on the site is perfect, but New York for $100 a night - without having to share a bathroom with strangers? Sign me up.
I've been MIA because I'm trying to learn a few new things...
It started with Customer Lifecycle Management. This domain is very interesting. The related data analysis is fascinating too.
Having noticed that analysis in RDBMS takes a lot of effort and time, I started investigating alternatives to make it repeatable and fast.
I'm dipping my toe into cloud computing and algorithms like MapReduce... Stay tuned for updates...
I've been MIA because I'm trying to learn a few new things...
It started with Customer Lifecycle Management. This domain is very interesting. The related data analysis is fascinating too.
Having noticed that analysis in RDBMS takes a lot of effort and time, I started investigating alternatives to make it repeatable and fast.
I'm dipping my toe into cloud computing and algorithms like MapReduce... Stay tuned for updates...
If I learned one thing during my week in San Francisco, it's that San Franciscans are even more obsessed with their favorite haunts than New Yorkers are. The Saturday wait for Blue Bottle Coffee at the Ferry Building can top 40 minutes, and The Slanted Door books up weeks in advance. So I suppose it should have come as no surprise to me that the line at Tartine was out the door at 4:00 on a Sunday afternoon.
We'd already had pie, quiche and salad, so Faith and I just hung out in the line of clamoring customers, eliciting slightly dirty looks as we craned our decks to check out the display cases. The items on offer looked delicious, and ever-so-decadent.
Take, for example, those cream tarts. I thought they were the height of extravagance until I spied their mama, this insanely huge, over-the-top cream pie. Honestly - I wish I'd had something to show you the scale of this thing. It was immense.
Comfort through bounty is Tartine's guiding principle, something clearly reflected in their generous, casually sumptuous pastries. The heaping of cream in those tarts, the slightly overflowing lemon curd in the tartes au citron, and the just-a-bit-taller-than-technically-correct rochers: all of them create a feeling of off-handed luxury. They make me feel like I'm visiting the home of a most generous friend, luxuriating in her hospitality and talent.
So, yes, even though I tasted nothing, I do get what the fuss is about. Truly.
Tartine
600 Guerrero Street
San Francisco, CA
415.487.2600
Ever since I started my new role in January, I've been eating lunch with a bunch of colleagues from my new floor. I knew all of these folks by name before I moved to the new group, but I'd never spent a lot of time with them. Little did I know how food-obsessed all of them are, and little did I anticipate the ideas and inspiration I'd get from our daily talks about what we like to eat.
A few weeks ago one of the more avid cooks in the group, my friend Connie, told us about a dinner she'd made recently: a coq au vin-esque one-pot meal of chicken, barley and cabbage. The whole thing sounded so deliciously autumnal that I ran back to my office and added Savoy cabbage and barley to my FreshDirect cart right then and there.
This weekend I finally had a chance to work on the recipe itself (Connie had improvised her version, so I needed to recreate it.), and I can't get enough. It's nutty and hearty and rich, but not actually bad for me. I made the whole recipe, and ate it for lunch all week. Hopefully Connie approves.
Connie's Chicken with Barley and Cabbage
One whole chicken, cut into eight pieces (or five whole chicken legs, drumstick and thigh)
Olive oil
1 large shallot, chopped (about 1/2 cup)
2 small celery stalks, including leaves, chopped (about 1/2 cup)
2 garlic cloves, peeled and slightly bruised
1 tbsp. tomato paste
1 cup barley
Salt and pepper
1/2 cup dry white wine
1/2 cup water
2 cups chicken stock
1 tbsp. Dijon mustard
1/2 head of Savoy cabbage, shredded
5-6 thyme stalks
1 Gala apple, peeled and cut into 1/2 inch cubes
Rinse the chicken and pat dry with paper towels. Salt and pepper the skin side of the chicken pieces. Heat a heavy-bottomed, 5-7 quart pot over high heat. Add enough olive oil to just coat the bottom, then add the chicken pieces, skin-side down, in one layer. (If you can't fit all the pieces in one layer, brown the chicken in multiple batches; don't crowd the pan, or the chicken will steam instead of browning.) While the skin browns, salt and pepper the other side of the chicken.
Once the skin-sides are golden-brown and slightly crisp (about 5-8 minutes), turn the pieces over and lightly brown the bottoms, about 4-5 minutes. Remove the chicken to a plate and pour off all but 3-4 tablespoons of the fat in the pot. Add the shallots, celery and garlic and cook on medium-high heat until the garlic is fragrant and the shallots translucent, about three minutes. Add the tomato paste, stir to incorporate, and cook for a minute more.
Add the barley and toss with the shallot mixture and the fat. Salt the barley (about a teaspoon should do it) and pepper it lightly. Add the wine, water and chicken stock, then stir briskly with a wooden spoon, scraping the bottom of the pot to loosen any browned bits of chicken skin or shallot.
Add the mustard and stir to incorporate. Add the cabbage, resting it on top of the barley and liquids. Salt and pepper the cabbage (again, about 1 teaspoon of salt should do it.) Then arrange the chicken on top of the cabbage, placing the thyme springs on top of it all.
Turn the heat to medium (you want the mixture to simmer, but not to boil, so keep an eye on it for a bit), cover the pan, and cook until the chicken is done and the barley is tender, about an hour and fifteen minutes. Remove the thyme stalks (all of the leaves will most likely have jumped ship by this point).
Remove the chicken to a plate for a moment. Add the apple to the pot, stir to distribute throughout the barley, and heat the mixture through for a couple of minutes. Taste and adjust for seasoning. Spoon the barley and cabbage onto individual plates, place a piece of chicken on each, and serve.
Serves five to six.
Use Transformer to create structured models from various data sources that you then distribute as multidimensional PowerCubes.
You begin by assessing your source data and planning how to organize it to support the types of
business analysis that are important to you. You then build a model that specifies the location of
this data, and the way you want Transformer to restructure it. Finally, you create a PowerCube to distribute to your PowerPlay Enterprise Server administrator or to your PowerPlay users, who can then create reports to distribute to other PowerPlay or Upfront users.
On the Wednesday I spent in San Francisco, my friend Faith and I took a day trip up to Point Reyes and Marshall via the Pacific Coast Highway. (Much more on that trip soon.) On our way to pick up the Zipcar, we stopped into Miette (in French, "miette" translates to "crumb"), a confectionery shop in Hayes Valley, just down the hill from Faith's place near Alamo Square.
Miette is flat-out adorable. Vintage and girly with an edge (candy-filled, incredibly lifelike skulls abounded), Miette stocks its own candies and pastry along with an array of chocolate and sweets from around the world. I spotted Mast Brothers chocolate (from Brooklyn), Haribo gummies (from Germany) and Cadbury Crunchies (from England).
The shop is one of three locations in San Francisco; they have two freestanding shops (one in Hayes Valley and one in the Marina area) along with an outpost in the Ferry Building. We stopped by the Ferry Building location, too, and spotted these adorable, portable pots de crèmes (bring the jar back to collect your $1 deposit) and some gorgeous, sun-yellow marigolds.
We didn't try them, but the cupcakes (back at the Hayes Valley spot) looked delicious and adorable. I personally think candy-coated peanuts might be the perfect cupcake garnish. And as much as I enjoyed the macarons we tried (most of all the hazelnut one), I fell in love with Miette as much for its aesthetic and personality as for its candy.
If I lived in San Francisco, I'd have an unreasonably hard time staying away. Who wouldn't want to eat sweets while looking at that wallpaper, or chatting with people who love candy as much as you do? Good thing it's 3,000 miles away, or I'd be my dentist's entire retirement plan.
Miette
449 Octavia Street
San Francisco, CA
415.626.6221
After our lunch at Healdsburg Bar & Grill, Miriam, Nick, Louisa and I headed down Healdsburg Avenue to Costeaux, a bakery we'd read about in my guide book. I was expecting a tiny little hole-in-the-wall, but Costeaux turned out to be a big, airy, loft-like space with concrete walls, unfinished beams with a long glass display case running along one side.
Our goal had been to collect breakfast pastries for the next morning, but the croissants and brioches had sold out long before we arrived. We were disappointed, but realized this meant we had to take one for the team and sample some desserts to make sure a morning-time return trip wasn't a waste.
We each ordered a little something (including glasses of milk for Miriam and Louisa) and grabbed a table. We had a fairly good haul with us, including a chocolate-dipped macaroon (Miriam), an éclair (Nick), a brown butter blackberry tart (Louisa) and a cream puff (me!).The cream puff and eclair were both made with the same pâte à choux (a dough that can also be used for savory purposes, such as gougères), but had very different fillings. The cream puff was filled with a combination of pastry cream and whipped cream, heavy on the whipped cream - meaning the filling was very, very light and fluffy.
The éclair, on the other hand, was filled with boozy pastry cream and topped with an obscene schmear of dark chocolate ganache. Big enough to take up most of a dessert-sized plate, the eclair won the day in terms of pure decadence.
Louisa's tart was delicious, too. The crust was flaky and buttery, and the filling was nutty (courtesy of the browned butter) but also fruity and light - almost like a fruit-filled nougat. Really, really good, and pretty to boot.
You're wondering about Miriam's macaroon, aren't you? Well, I can't help you there - she gobbled it up before I had a chance to capture it. She says it was awesome - maybe you just have to go see for yourself!
Costeaux
417 Healdsburg Avenue
Healdsburg, CA
707.433.1913
On our Wednesday in Sonoma, Jeremy had arranged for a tour and tasting at C. Donatiello Winery in Healdsburg. Five of us bundled into one of the rental sedans haunting the driveway and drove north to Westside Road, a gorgeous, slightly winding street that follows a ridge perched alongside the Russian River.
C. Donatiello is a relatively new winery, founded in 2006. Chris (the C. in C. Donatiello) started his career in wine and spirits marketing & sales, moving west from New York to start this boutique winery three years ago. They specialize in Pinot Noir and Chardonnay, two of the Russian River region's most popular grapes. The winery estate itself has a few vineyards; additionally, Donatiello sources grapes from several vineyards around the valley.Our tour included a look into the entire process, including the harvest, de-stemming, pressing and fermentation - but the highlight, for me, was a visit to the garden planted down the hill from the winery's tasting room. Designed to echo the flavors and aromas found in Donatiello's wines, the garden is planted with fruits, herbs and aromatics representative of Pinot and Chardonnay. Even the steps are planted - each tread is lined with mint, rosemary, and the like, so that their scents follow you as you scuff your shoes against them.
After poking our noses in all around the estate, we headed into the tasting room for a different sort of tour: an extensive tasting of Donatiello's Pinot Noirs and Chardonnays. Most of the wines we tasted were single vineyard wines (meaning the grapes in that wine all came from the same vineyard), and there were a few that really grabbed me.The Branley Chardonnay was slightly spicy and citrusy, with hints of apple. It's one of the few oak-aged Chardonnays I tasted and liked on our Sonoma trip. My favorite, though, was the Hervey Pinot Noir. It was full of different fruit and berries, but still smooth and round in the mouth - sometimes I find Pinot to be a bit too dry, but this one was creamy and soft.
Chris had joined us for the tasting, and mentioned that the Hervey would be even more perfect for drinking in about 15 years. My brother and sister-in-law conferred, and decided (Very generously!) to buy me a bottle for my 30th birthday, not to be opened till my 45th.
I'll keep you posted on how that turns out.
C. Donatiello Winery
4035 Westside Road
Healdsburg, CA
800.433.8296
Now that I'm back home in New York, it's time for Queenie's Treasury to start back up! It's been a crazy couple of weeks for me, both personally (I turned 30 on October 1st) and professionally, so I'm happy to be back in the groove, checking out what's going on out there on the interwebs - so let's get to it, shall we?
First, a lesson in perfect boiled eggs, courtesy of Serious Eats' Food Lab. While boiled eggs are pretty much my least favorite egg preparation, I'm still fascinated by the science behind the technique.
Looking for some pie porn? Getting ready to enter your holiday baking phase? Check out this amazing post from the Cookbook Chronicles' Lorna Yee for some major inspiration. Lorna participated in Seattle's Queen Anne Farmers' Market pie contest, and came in 4th out of 20 entrants! (She thinks this is a middling result; I am duly impressed, as I think you will be.)
Finally, a slight departure from food. I don't know about you guys, but as soon as I feel fall's chill in the air, my mind turns to thoughts of Christmas. Christmas music, Christmas foods, Christmas decorations. Etsy has fueled my obsession with that last one this week, showcasing a few decorations on their Storque blog. My favorites were these feather balls and woolen acorns, both of which would look just perfect mixed with my crystal snowflakes and hanging from some bare branches. Indeed.
I just updated the View Mapper gem to support Paperclip. You can use it to generate scaffolding code that supports uploading and downloading Paperclip file attachments.
Creating a view for an existing model
If you have a model like this:
class Song < ActiveRecord::Base has_attached_file :mp3 end
… you can generate a “Paperclip view” for this model like this:
script/generate view_for song --view paperclip
This will generate a controller, view and other code files that support uploading and downloading files. If you run your app you’ll see the typical scaffolding user interface but with a file field for the “mp3” Paperclip attachment:

View Mapper has:
If you’re not very familiar with Paperclip and how to use it or if you just want to get a Rails upload form working very quickly, then View Mapper can help you.
Creating an entirely new Paperclip model and view
View Mapper also provides a generator called “scaffold_for_view” that is identical to the standard Rails scaffold generator, except it will create the specified view. As an example, let’s create a new Rails app from scratch that uses Paperclip; you should be able to type in these precise commands on your machine and get this example to work.
First, let’s install View Mapper and create a new Rails app to display my MP3 library online (ignoring copyright issues for now):
$ gem sources -a http://gemcutter.org
http://gemcutter.org added to sources
$ sudo gem install view_mapper
Successfully installed view_mapper-0.2.0
1 gem installed
Installing ri documentation for view_mapper-0.2.0...
Installing RDoc documentation for view_mapper-0.2.0...
$ rails music
create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
etc…
And now we can generate a new “Song” model that has a Paperclip attachment called “MP3” using View Mapper like this:
$ cd music
$ ./script/generate scaffold_for_view song name:string artist:string
album:string play_count:integer --view paperclip:mp3
error The Paperclip plugin does not appear to be installed.
Wait… I forgot to install Paperclip; let’s do that and then try again:
$ ./script/plugin install git://github.com/thoughtbot/paperclip.git
Initialized empty Git repository in /Users/pat/rails-apps/music/vendor/plugins/paperclip/.git/
remote: Counting objects: 71, done.
remote: Compressing objects: 100% (59/59), done.
remote: Total 71 (delta 7), reused 29 (delta 3)
Unpacking objects: 100% (71/71), done.
From git://github.com/thoughtbot/paperclip
* branch HEAD -> FETCH_HEAD
$ ./script/generate scaffold_for_view song name:string artist:string
album:string play_count:integer --view paperclip:mp3
exists app/models/
exists app/controllers/
exists app/helpers/
create app/views/songs
exists app/views/layouts/
exists test/functional/
etc…
Finally, we just need to run db:migrate – one minor detail here is that the scaffold_for_view generator included the Paperclip columns (“mp3_file_name,” “mp3_content_type,” etc…) in the migration file to create the songs table:
$ rake db:migrate (in /Users/pat/rails-apps/music) == CreateSongs: migrating ==================================================== -- create_table(:songs) -> 0.0022s == CreateSongs: migrated (0.0024s) ===========================================
Now you can run your app and see the scaffolding UI I showed above, and will be able to upload and download MP3 files using Paperclip.
Let’s take a quick look at exactly what is different about the scaffolding code View Mapper generated vs. the standard Rails scaffolding code:
<h1>New song</h1>
<% form_for(@song, :html => { :multipart => true }) do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :name %><br />
<%= f.text_field :name %>
</p>
… etc …
<p>
<%= f.label :mp3 %><br />
<%= f.file_field :mp3 %>
</p>
<p>
<%= f.submit 'Create' %>
</p>
<% end %>
<%= link_to 'Back', songs_path %>
The code in bold was generated by View Mapper specifically to support Paperclip since we used the “--view paperclip” command line option. You can see that “:html => { :multipart => :true }” was added to form_for to allow for file uploads, and also a file_field was added for the mp3 Paperclip attachment.
If you take a look at the show view, you’ll see:
<p> <b>Name:</b> <%=h @song.name %> </p> … etc … <p> <b>Mp3:</b> <%= link_to @song.mp3_file_name, @song.mp3.url %><br> </p> <%= link_to 'Edit', edit_song_path(@song) %> | <%= link_to 'Back', songs_path %>
Here a link to the file attachment was added, using Paperclip to provide the name and URL of the attachment.
Next I’ll be adding support for nested attributes and complex forms to View Mapper.
After our visit to DeLoach, Miriam, Nick, Louisa and I took a drive up the road to the ridiculously adorable town of Healdsburg. Nestled in between Dry Creek and the Russian River, Healdsburg is a great jumping off point for exploring the eastern side of Sonoma. It's full of delicious restaurants, and we've already decided we want to give the Hotel Healdsburg a try.
But we hadn't come to Healdsburg looking for a place to sleep - we were hungry, and in search of good food. We poked around my guide book a bit, but it was a Tuesday afternoon and lots of places listed were closed. We decided to just park the car downtown and wander a bit. A block or two into our walk, we stumbled onto the Healdsburg Bar & Grill (listed in the book, but noted for its child-friendliness, something we'd specifically avoided) and decided its outdoor seating and salad- and sandwich-heavy menu was just the thing.
We sat in the sun (though we were still a bit chilly; it was incredibly windy that day) and ordered a bucket of pickles to share, along with macaroni and cheese (me), a BLT (Louisa), tomato and fig salad (Miriam) and the portobello burger (Nick).Like pretty much everywhere else I ate in California (save the taqueria truck), Healdsburg Bar & Grill is obsessed with the origin of its food; almost every item on the menu listed the provenance of the primary ingredients. While this convention can get a bit trying, it did telegraph a level of care and attention for the food that boded well for the meal.
The pickles came first, in all their salty, briny glory. Nick and I both loved the bread & butter pickles; the other items on offer (dill spears, pickled peppers, green beans) were good, but not great. Of course, they were still pickles, so I liked them fine.Next up, our mains. Louisa loved her sandwich - so much so that I couldn't get a picture of it before she got started on it. Ditto on Nick's portobello burger. Miriam, though, is family, so I had no qualms ordering her to hold off for a photo of her beautiful salad. Figs, tomatoes and creamy (not crumbly) feta made for a delicious combination, rich and sweet and salty all at once.
My macaroni and cheese was good, but not great. More of a creamy pasta with a sprinkling of panko on top, it was dotted with bacon and rich with stinky cheeses, as opposed to mild, kid-friendly cheddar. That said, it could have used a bit more tang, and the bites I enjoyed most were those I supplemented with teeny dots of mustard.
Overall, though, I'd highly recommend Healdsburg Bar & Grill as a lunch destination. The food was really well-done, and the menu is small enough to ensure that every item is given the care and attention it deserves. I can't speak for dessert, though - we went down the street for that. And, oh boy, was it good.
Healdsburg Bar & Grill
245 Healdsburg Avenue
Healdsburg, CA
707.433.3333
Dr. Devdutt Pattanaik written this article . Its an amazing must read.........
Published in Corporate Dossier, Economic Times supplement, 4 April 2008
Hanuman plays an important role in the Ramayan, yet in the epic itself, he does not hold any great position. He is just one of the many monkeys Ram encounters in the forest. He is not Sugriva, leader of the monkey troop. He is not Angad, who is told to lead the band of monkeys searching for Sita. He is not Jambavan, the bear or Nila, the monkey, who are given the responsibility of building the bridge. He is projected as an obedient follower who, through his intelligence, strength and courage, wins the admiration of Ram and emerges as one of the most revered characters of the tale and a god in his own right. But at no point does Hanuman make any attempt to steal anyone’s glory; while in his own temple he stands powerful with mountain in hand and feet on a demon, in Ram’s temple he is most content sitting at the feet of his master, hands in supplication.
Who would not want a Hanuman in his team? One who is very good at his work, one who will do whatever he is told to do, one who will never seek either reward or recognition and one who finds validation in obeying his master.
If we go to Raju’s auto repair shop, we will find that all the work is done by his Hanuman: Amol, a young boy, who has been working with Raju for three years. Amol is a natural, able to fix the most complex of problems. Raju knows he can totally rely on Amol. No job is too big or too small for Amol. He is as happy changing a tyre, as he is fixing the brakes. He does not boss over the juniors and does not feel slighted if the seniors ask him to fetch tea. If there is a problem that eludes a standard solution, everyone knows that leave it to Amol – he will, like Hanuman crossing the sea, find a way.
Yes, it matters greatly to have a Hanuman in our team. One who will not question you. One who will do exactly what you tell him to do. One who delivers no matter what the odds. One who is loyal and devoted. But is that really good?
The following is a folk story of Hanuman: Hanuman once narrated the entire Ramayan to his mother, Anjani. After the narration, an impressed Anjani sought a clarification. “You are so strong that with a flick of a tail you could have destroyed the whole of Lanka, killed Ravan and rescued Sita. Why did you not do so? So much effort and time would have been saved – you would not have had to build a bridge to Lanka, you could have avoided the war. Why did you not do that?”
Hanuman replied, “Because Ram never asked me to.”
And suddenly we wonder if this was opportunity lost. Hanuman was asked to discover Sita’s location; he did that. Hanuman was asked to fetch the mountain of herbs that would save Lakshmana’s life; he did that. No one asked him to destroy the Rakshasas and rescue Sita. Do he did not do that. One common explanation given for why Ram never asked Hanuman to kill Ravan and rescue Sita is that it was Ram’s duty to rescue Sita, not Hanuman’s. Ramayan is about Ram, not Hanuman. But it is not so in the corporate world; the story is about the entire organization, not just about the leaders.
In the entire epic, Hanuman proves his capability time and time again. On his way to find Sita, he displays his extraordinary power (crosses the ocean), brain (outwits the snake-demon Surasa), brawn (kills Simhika) and integrity (not resting on Mandara mountain). And yet, while everyone admires this, no one seems eager to take full advantage of it. Was this refusal to take advantage of Hanuman’s abilities a divine decision or merely a oversight? Is the same being done in the corporate world?
Yes, Raju loves Amol’s work. Yes, Raju admires Amol’s work. But is Raju harnessing the full potential of Amol? Is his contentment with Amol’s obedience preventing him from seeing all that Amol can do, proactively, creatively, independently, if he is given the freedom to do so? Ask Raju and he will say, “But I don’t stop Amol from doing anything.” He does not stop Amol from doing anything, but he does not encourage Amol from doing something either.
The greatest danger of having Hanumans in our team is that his actions are limited by our directions. Maybe we fear that if Hanuman thinks for himself, there will be chaos – he is a monkey after all. Maybe we fear that he will overshadow us. Hence, ultimately, only we decide the goals, we define the vision, we declare the mission and state the objective. Our Hanuman will help you realize all this. But, maybe, the goals could have been greater and grander, if we had let Hanuman do more than merely obey.
Amol once had given Raju a suggestion. “Sir, if we park our cars perpendicular to the wall rather than parallel we can keep more cars in the garage?” Raju ignored this suggestion. “Do you work,” he snapped at Amol without giving his words much thought. But the message he implicitly gave Amol was that – ‘I only want your obedience, not your intelligence.’ Amol immediately complied. And that marked the end of Amol’s creativity that would have perhaps made Raju’s auto repair shop a much greater success.
This is the danger of over compliance and extreme obedience. We prevent followers from thinking and contributing. It makes business sense therefore to take a closer look at the Hanumans in our team; we just might find in their hearts a Ram waiting to be coaxed out.
On our first real day in Sonoma (we spent Monday getting massages and consuming too much Mexican food), Jeremy & Mom went off to play golf in Bodega Bay, and Nick, Louisa, Miriam and I headed off to DeLoach Vineyards, just a mile or so down the road in Santa Rosa.
A friend of Jeremy's had (very generously) set us up with a tour in addition to our tasting, so when we arrived we were greeted by the hospitality manager, Lisa Vasse. Lisa was a great tour guide; like so many other people I've met in Napa and Sonoma, the wine industry is her second career (her first was in wine packaging, so not too far off the mark), and she's just downright psyched to be part of that world. It's really inspiring, actually, to spend a week meeting only people who are deeply engaged in and stimulated by their work.Lisa took us on a tour of the winery, starting with the vineyards. The vineyards are all organic and biodynamic, meaning that they are farmed not only without pesticides, but also treats the farm as a living, breathing organism, capable of sustaining itself (but not capable of being pushed beyond its limits through chemical or artificial processes). This means that in addition tot he vineyards themselves, DeLoach also boasts an on-site organic garden, chickens, bees and sheep!
The garden and animals are reached by a path that winds past the winery's gorgeous guesthouse, which is reserved strictly for trade use. The wine industry is, by and large, about hospitality, and the guesthouses (most wineries have them) are where the winemakers entertain their clients.The garden itself is rambling and windblown; the gardeners let things run their course here, so we saw not only perfectly ripe Sungolds (Lisa invited us to sample as many tomatoes as we liked; we were happy to oblige), but also late-season, flowering artichokes. It's pretty cool to see fruits and vegetables actually live out their life cycles; you don't get that opportunity too often here in Manhattan.
After a peek into the winery itself, where grapes were being moved out of the barrels after the first pressing, we moved on to the (epic) tasting. Lisa poured a dizying series of De Loach wines (Exhibit A: Miriam double-fisting below.), including a Sauvignon Blanc, a rosé, and some Pinot Noirs, Zinfandels and Chardonnays. Our favorites were the rosé (gorgeously dry but with a hint of fruit) and the OFS Chardonnay, a big, creamy wine completely devoid of the notorious California oakiness.
At the end, Lisa brought out a special treat: tawny port. She guessed right; she was working with a group of dessert wine fanatics, and we couldn't get enough. Rich and smooth but with a kick at the end, DeLoach port is fantastic. Three bottles made it into the case we took home, along with six bottles of rose and three of the chardonnay.
And, yes, I know you're wondering: we finished it all, save one bottle of port. We'll be drinking that at Christmas with our Christmas pudding (Miriam) and sticky toffee puddings (everyone).
My family has a few food-related traditions. We always have creamed onions at Thanksgiving. We observe cocktail hour, religiously. And, when we're in San Francisco, we visit Nanking.
We first stopped in at The House of Nanking about nine years ago, just before my mother moved to Fresno, California. Born and bred East Coasters that we are, Mom believed Jeremy and I needed to be convinced of the wisdom of a westward migration, and treated us to a whirlwind tour of California (With Fresno last, so as to soften the blow.).
The first stop on said migration was San Francisco, and one of our first meals (and Jeremy's favorite) was at Nanking. On a slightly dodgy block just south of most of Chinatown, it used to be a wildly popular hole-in-the-wall. Now it's a wildly popular double-storefront restaurant with souvenir t-shirts and nice paneling, and the food is still delicious.
My colleagues YaeRi and Mary were kind enough to indulge my Nanking craving (once I'd realized how close it was to our San Francisco office - you can see it from the window, just across from that copper-lined building), so we headed there for lunch on Tuesday afternoon.It was as good as I'd remembered - the sesame chicken, unlike most, was just lightly breaded, and coated with a sauce as spicy as it was sweet. Served with sweet potatoes and a green melon, it was downright delicious. YaeRi's crispy noodles with vegetables cam with the same melon, and we were both taken with it. It was like cucumber crossed with honeydew, and all I know is I must have some.
Now.
House of Nanking
919 Kearny Street (at Jackson)
San Francisco
(415) 421-1429
This week, I attended a workshop organized by BusinessObjects Information Management Servicess Academy. It was a four days hands-on workshop with BusinessObjects consultants flying in from Australia and Singapore. There were professionals from other System Integrators as well.
Some time back I had published a wiki page on SAP SDN on how BusinessObjects Data Services platform can be used with SAP BI. The same page has been published on SAPTechnical.com. The direct links can be found below -
SDN Wiki Page
SAPTechnical.com
Have you ever stumbled on something so delicious, so fantastic, and so wonderful that you can't quite believe your luck? That's pretty much how our whole houseful of people felt about Angelina's Taqueria in Santa Rosa. Jeremy, Miriam and I passed the truck on our grocery expedition the day we arrived, so when we needed a quick, delicious lunch the next day, we were prepared.
Mom, Louisa and I drove five minutes towards Healdsburg and pulled into the small parking lot. The taqueria itself (and Angelina along with it) were housed in an old Airstream trailer. Angelina spoke only Spanish - Mom and I speak French (totally useless), but, luckily, Louisa was a Romance Languages major at Bryn Mawr and speaks Spanish.
We ordered an obscene amount of food (Si, seis tacos de chorizo.) and waited patiently while Angelina cooked up a storm. Every few minutes the sizzling sounds would cease and she'd appear at the window, holding out another box of piping hot tacos. These stacked up rather quickly.
After paying inside, we made our way back to the house with our treasure: tacos de pollo (chicken), al pastor (pork with a rich, garlicky sauce) and de chorizo (self-explanatory); burritos (supreme - meaning with queso and crema) with carne asada (grilled beef), and some tiny containers of salsa verde. It may not sound like a lot of food; trust me, it was.
We ate blissfully, enjoying the food in a way that only Easterners deprived of decent Mexican for months on end can. The burrito was well-balanced and full of flavors: rice, beans, sinfully creamy crema, all of which cried out for a touch of salsa verde to cut the richness. The tacos were double-tortilla, topped with salsa and chopped cilantro, and full of flavor. The burrito carne asada and the chorizo tacos proved to be early favorites - but don't worry, we couldn't in all good conscience leave it there.
Over the next week, we visited Angelina's not one but two more times; we tried the tostadas, the quesadillas, every kind of taco - I even had a real Coke with my second burrito (pollo this time). Yes, Angelina's was the site of much debauchery and merriment. I can't wait to go back.
Angelina's Taqueria
Old Redwood Highway in Santa Rosa
North of Mark Springs West
No phone number - you'll see why
CnnMoney.com has recently posted a list of what it deems as the best jobs in America. It has evaluated the jobs by pay and growth prospect. Job growth is estimated for 2006-2016 from the Bureau of Labor Statistics.
If you're an undecided student in college or would like to use a period of unemployment to make a strategic career move, you may find this particularly helpful.
Upon landing in California, it is simply imperative that you head to the nearest In-N-Out Burger for a fix. This is particularly true if you've been up since 1 AM California time and haven't eaten in thirteen hours.
After picking up my rental car at the San Francisco airport (I was given a snappy little mustard-yellow Ford Focus), I swung into the city to collect Jeremy and Miriam from their friend's place, and we headed across the Golden Gate bridge and up 101 toward Sonoma.
I thought I would have to wait till Petaluma for my fix, but Jeremy spied an outpost in Marin City, and we made quick work of pulling off the freeway and into a parking spot. We had excellent timing, too - the line was out the door by the time we put our order in: a double, no cheese, animal style for me, fries and a shake for Miriam, and a cheeseburger for Jeremy.My burger was, of course, delicious. "Animal style" (one of In-N-Out's many secret menu options) means that your patties have been fried in mustard and onions, and that extra sauce has been added to your sandwich. (You can also order fries this way, in which case they come topped with special sauce and mustardy onions.) The shake was thick and creamy and delightfully pink (a good thing, as it was strawberry), and the fries were, as usual, ok - but not great.
Who cares? When they can make a burger this damn tasty, I don't need no stinkin' fries.
As a creature of habit and routine (generously peppered with adventure, of course), I'm not altogether sad to be headed back across the country today, toward my bed, my closet and my kitchen. That said, I wouldn't mind a few more days at Rancho Wikiup, the house we rented in Sonoma last week.
"We" was a group of my family and closest friends, most of whom you can find in earlier Queenie entries, including my mom, my brother and sister-in-law, Nick and Louisa, and my friend Faith. We spent the week talking, drinking, cooking, sampling wines, touring wineries, eating out and playing a couple of particularly feisty games of Charades.We did all of that in a truly unique spot. Rancho Wikiup is a converted stable in Santa Rosa, nestled up against the ridge that divides Napa from Sonoma. Built by John Rosseter in 1915, the stables were converted into living quarters about thirty years ago. The house is quirky; after our first tour, I still didn't know where the fifth bedroom was, or where the fourth bathroom might be hiding. It rambles and wanders; luckily, though, it's built around a central courtyard, so you can always stand there and yell for help.
The kitchen is a bit awkward in configuration but well-equipped, with two refrigerators, a dishwasher, gas stove and oven, and a zillion plates and bowls. We cooked up a storm, including a pot of Julia Child's boeuf bourgignon, a killer guacamole, and more than one batch of bacon.Yes, I'm happy to be headed back to my home, my heart: New York. But I wouldn't say no to a few more days at Rancho Wikiup, particularly if they included a few more dips in the hot tub and an afternoon or two of courtyard relaxation.
I found a great tool from an unlikely source. Harvard Business School has an online tool for crafting an effective elevator pitch (http://www.alumni.hbs.edu/careers/pitch/). As they say on the site, "Whether you're trying to raise capital, promote your company, or promote yourself, its essential to have an elevator pitch. You need to communicate your main message quickly to someone who doesn't even know you."
The unlikely source - Ashoka's Social Entrepreurship and Technology newsletter. But it makes sense - even when working in the public interest, you're ultimately in sales and marketing.
I came across an amusing story that has interesting parallels to the workplace:
"An old man lived next door to a family with several rowdy boys who played loudly outside his window every afternoon. The old man complained, begged and cajoled, but he could not get the kids to quiet down.
Finally the old man hatched a plan. He called the boys over, and told them "Look, I love to listen to you kids playing and having fun, but I'm an old man and hard of hearing. I'll give you money to play extra loud - as loud as you can - so I can hear you." The boys were thrilled, raised a huge ruckus every afternoon, and earned their reward.
After a few days, the old man said 'I'm running out of money, and I can only pay you half the old rate.' Disappointed, the kids played half as loud and quit early. When the old man stopped the payments all together, the discouraged boys refused to play at all and quietly went away. And the wise old man at last enjoyed his peace and quiet."
The story is a cautionary tale about how rewards can actually be controlling and kill natural enthusiasm. (Of course, in this case that was the old man's objective!)
Its sometimes cynically assumed that people will only do good work if they are directly rewarded with money, praise, promotion, etc. It's all about 'what's in it for me'. Rewards and recognition are important, of course. If you set an aggressive goal for a team, a potential reward can be a big incentive for them to put in extra effort. But as an optimist about human nature, I also believe most people have a desire to connect to a sense of purpose and passion. Creativity, innovation, contributions to community, mentoring, and other positive actions can have as much to do with a person's intrinsic motivation as any expectation of a payoff.
A team of CSSA volunteers recently provided Unicef with several hours of advice and expertise for a technology project to help deliver healthcare to women and children in Africa. It's been fun and rewarding to play a part in making that happen, and collaborating with colleagues as they connect with their own passions and enthusiasm. This volunteer effort keeps me connected to some of the things that keep me intrinsically motivated - giving back, problem solving, new challenges, comraderie - and helps renew my enthusiasm for my 'day job'. Its good to know that if I were working for free, I'd probably be doing something similar to what I already do at work.
(September 28)-> A very uncomfortable overnight bus journey dropped us in Manali via Kullu. Kullu and Manali are great hill stations in their own and given a choice we would have spent at least a day there. But limited office leaves made sure we dint rest till we reach Leh. So we took couple of rooms in Manali, just for freshening up. We set out for fixing up a taxi to Leh and eventually settled for a Tata Sumo (not that we had many choices; 8 of us and the tough terrain till Leh).
We were introduced to our driver “Sanju”. One look at him and I got a feeling that this is going to be an interesting journey ;-) Dressed in a rugged jeans and t-shirt with an ear-piercing and a thin plait amongst the otherwise short hair, Sanju promised to make us reach Leh by 29 evening despite of starting a little late. So around 11.30 in morning we started from Manali to Leh. Manali-Leh is a distance of 475 KM. Though not much, the journey is completed in 2 days, with an overnight halt. From our research we knew that the road was in bad condition at most places but the scenic beauty along the route is what makes it worth the pain. Still nothing could prepare us for the Manali-Leh highway with Sanju on the driving seat.
Our first obscure was when we were blocked for about an hour due to road-cutting before Rohtang; our first pass of the journey. The Manali-Leh-Shrinagar highway is maintained by Border Road Organization, which is an Indian army undertaking. It was around 3 in the afternoon when we reached Rohtang Pass and experienced the first chill. At most times the road was non-existing and we found ourselves travelling trough highest mountains, with our car being on the edge every now and then. Sanju knew many shortcuts through the road and that made our journey more adventures and bumpier at the same time. It’s not allowed to travel on the highway in night so we made our halt at the last village in Himachal Pradesh called Jespa. Jespa was beautiful like a dream, surrounded with mountains on the bank of Bhaga river. The temperature was chilling cold and we had to fight for a couple of rooms in the only guest house in the village. Anyway, after a hot-water bath and some comforting food, falling asleep was not very tough.
P.S -> Night halt on Manai-Leh highway is usually done at Sarchu or Pang. Since we started late, we had to halt before Sarchu at Jespa. If you are likely to hit similar situation, make sure to get the rooms booked in advance as there are only 2 guest houses at Jespa.
(September 27) -> after crossing almost 7 states, we got down at Chandigarh around 5 in evening. From here we had a bus to Manali at 8.40 in night. One of our members had some relatives in Chandigarh and the Kukreja family was gracious enough to allow us spend a few hours at their place. Chandigarh is one of India’s very few planned cities and just traveling through its roads was a pleasure. I don’t remember how many sectors we crossed from Railway station to the Kukreja house (all crosses looked just the same to me). We dumped our luggage there and headed for prime attraction of Chandigrah “The Rock Garden”. Established in 1957, Rock Garden is actually a made of rubbish and junk. Created solely by a government employee Nek Chand, Rock Garden is a great model of modern art. Statues adorned with ceramic pieces, drums, iron wastage etc is disguised in a beautiful and interesting way over more than 43 acres of space. After spending just over an hour there, we headed back to the Kukreja’s where we were to have our dinner before catching our bus to Manali. Nice fellows let us wash our dirt, fed and even dropped us to the bus station. God bless them ;-)
Day 1 (September 26)-> The first part of our journey to Leh was the train from Mumbai to Chandigarh. Paschim express had a depart time of 11 Am from Andheri station. We all huddled up on the platform quite before the train was to arrive. Standing where our coach was scheduled to halt, we realized that Chandigarh was on slip route. Slkip route means not all coaches of the train go to Chandigarh but only a few.This meant that our coach will actually be last in the train, but before we could realize this our train came. It had only 2 minutes halt at Andheri and with the entire luggage(13 bags for 8 of us, quite reasonable I had thought ;-)) we had a really tough time making it to our seats. A clear indication of how rest of the journey is going to be ;-)
In India people love their travel and since we were a large group, our seats were scattered in various compartments. So the next task was to make some insternal adjustments with other passangers so that we all could be together in one compartment. More that 50% passengers in Paschim express were senior citizens. If it was a coincidence, I dint understand. However that made our task tougher as the oldies were not very flexible for the shuffling we were trying to impose on them. Anyway our destination Chandigarh was not due in next 28 hours so we had plenty of time shifting others, making room for ourselves, playing cards and laughing at the drop of a hat. To be frank we were making so much noise that almost all others knew where we were going and some were even watching the movie guessing game we were playing.
Everything is easier said than done, and our idea of a trip to Ladakh was no exception.
I was still under kind of a shock as to what made all these people ready for Ladakh and just a little bit of initial research was enough to make us realize that Ladakh is no cakewalk. However, it being a childhood dream and the tough adventure associated, made Ladakh so inviting for us that for the next 2 months we (me and Pre) pour our blood and soul in preparing ourselves. We went thorough every single URL on the Internet that had Ladakh written on it, joined various forums and read experience of those who’ve been there.
Some of us had a really hard time getting their leaves sanctioned but nothing could let our spirits down. Thousand emails were exchanged; various things like eatables, medicines and what not were bought, tickets were booked and all we wanted was the departure day to come.
For many times in our lives we think of travelling to our dream destination, and then comes some important work assignment, some domestic emergency or some other problem out of the blue and our dream destination just remains a dream, yet to be fulfilled.
So when one lazy afternoon, a common friend of mine and my roommate’s (referred as Pre hereafter) proposed the idea of a vacation and I blurted out “Ladakh” just like that, I had no anticipation of it being ever fulfilled. But then, you never know what the destiny has in store for you and so we had 8 people ready for the idea of a trip to Leh-Ladakh.
What follows next is my first travelogue containing every single detail of how we planned this dream trip of ours, what hardship we faced before and during the trip and how we had the most joyous moments of our lives.
I'm back from vacation and working in San Francisco for a few days. This means I'm three hours behind the East Coast news cycle, and so this morning my email and Twitter feed were positively packed with messages about one tragic thing: the closing of Gourmet magazine.
To put it simply, I'm crushed. I've read Gourmet religiously for the past five years or so, and have fallen completely in love with its open-minded approach to food, its passion for travel domestic and foreign, and its gorgeous writing and photography. The current incarnation of Gourmet owes most of its soul and much of its aesthetic to the wild-haired, obscenely-talented Ruth Reichl, who left her job as the New York Times' restaurant critic to take up the helm at the (soon-to-be) late magazine.
Under her guidance, Gourmet became a publication for those truly passionate about creating and consuming food. Less chef-obsessed than Food & Wine, but more wordly than Bon Appetit, Gourmet emphasized home cooking but never forgot about the restaurant world.
Many people have criticized the magazine's photography as cold or hard; I disagree, and heartily. The simple, spare aesthetic on show at Gourmet far outpaced most food magazines in its sophistication and pure illustration of good, homemade food.
This blackberry brown sugar cake is one of my favorite Gourmet recipes of all time. I shall be making it in the weeks to come, as a sort of remembrance. While I can't wait to follow the next steps of Gourmet's immensely talented staff, that anticipation hardly softens the blow.
Now, excuse me while I go sniffle in the corner for a bit.
How would you define "Productivity" in a Software Development especially for Agile SCRUM ?
Raimonds Simanovskis has just published a version 1.2.2 of the Oracle Enhanced Adapter that includes the ability to capture dbms_output debug statements from your pl/sql code in the Rails log file. This is a bit of code that I wrote and blogged about a few months ago so not only do I think its useful but am very excited to have contributed to something many others use.
Drum roll, please...
I'm thrilled to announce that Sharon has won the autographed copy of Louisa Edwards' debut novel, Can't Stand The Heat!
Sharon, please send me an email (megblocker at gmail dot com) letting me know to whom you'd like the book dedicated, and where it should be sent!
Thanks to everyone who entered the contest!

Are you ready to move your good old business card to the digital era? If you are, then great, get ready to have some fun. If not, check out these apps anyway. They may be nice additions to your paper cards.
Unfortunately, the digital options available today require the users to be on the same platform. Perhaps we will see one of these applications as a true replacemnent to the paper business cards once this changes.
For the recent grad
For the budding entrepreneur
For the frequent conference attendee
For the technophobe
For the tweet-minded
For the iPhone addict
For the social network queen (or king)
For those who miss Tamagotchis
Poken
View Mapper will generate scaffolding illustrating how to write view code using a specified plugin or feature with your existing models. It can also generate new models.
A couple simple examples:
script/generate view_for office --view auto_complete:address
… will generate Rails scaffolding code that displays a form for an existing “office” model, with auto complete on the “address” field.
script/generate scaffold_for_view office address:string code:string
--view auto_complete:address
… will generate the same form, but also create the “office” model class file, a migration file containing the “address” and “code” columns, and other standard scaffolding files as well.
The idea behind View Mapper is that it’s easy to write simple, concise model classes representing your domain objects using ActiveRecord, but very hard to implement the corresponding views using a combination of HTML, Javascript Rails helper functions, routes, controllers, etc. If you’re not very familiar with a certain plugin you want to use in your app, View Mapper can help you get started in the right direction by generating a working example with scaffolding code.
If you’re developing a Rails plugin or gem it’s easy to write your own View Mapper module for your plugin’s users to call with View Mapper.
Code: http://github.com/patshaughnessy/view_mapper
Install:
sudo gem install view_mapper
Usage:
Two generators are provided, called view_for and scaffold_for_view:
script/generate view_for model [ --view view_name:param ]
This will generate the specified view code for an existing model. The view_for generator will look for your model, inspect all of its columns and then generate standard Rails scaffolding containing a form field for each existing column.
If you also specify a view, then a custom view will be created using the specified Rails feature or plugin, using the specified parameter.
script/generate scaffold_for_view model attributes [ --view view_name:param ]
If you don’t specify a view, then this command is identical to the standard Rails scaffold generator.
If you do specify a view, then the entire working set of a model, views and controller will be generated to implement the specified Rails feature or plugin, using the specified parameter.
Views:
Right now, I’ve implemented eight views:
I’ll be implementing more views in the coming weeks and months. There is also an API for implementing your own View Mapper module, for example to generate code illustrating how to use a plugin or gem you are working on. In the future I’ll document this as well.
I’ve written a lot here about the Rails auto_complete plugin; I’ve also refactored the auto_complete plugin to support repeated fields and named scopes. Today I’d like to show how you can automatically generate Rails view and controller code with auto_complete behavior for one of your models using a new gem I’ve written called View Mapper. If you’ve never used the auto_complete plugin before this is a great way to learn quickly how to use it in your app; even if you are familiar with the plugin using scaffolding like this can help to get a working auto_complete form up and running quickly and let you concentrate on more important parts of your app.
Let’s say you have an existing model in your app called “Person:”
Class Person < ActiveRecord::Base end
And suppose the Person model has two string attributes for the person’s name and the name of the office they work in:
class CreatePeople < ActiveRecord::Migration
def self.up
create_table :people do |t|
t.string :name
t.string :office
etc…
Now let’s install View Mapper so we can generate an auto_complete view for our person model. Since I’ve only deployed view_mapper on gemcutter.org for now, you’ll also need to add gemcutter as a gem source if you haven’t already.
$ gem sources -a http://gemcutter.org http://gemcutter.org added to sources $ sudo gem install view_mapper Successfully installed view_mapper-0.1.0 1 gem installed Installing ri documentation for view_mapper-0.1.0... Installing RDoc documentation for view_mapper-0.1.0...
Now with view_mapper you can run a single command to generate scaffolding that displays the your existing person model’s fields in a form with auto_complete type ahead behavior for the office field:
$ ./script/generate view_for person --view auto_complete:office
exists app/controllers/
exists app/helpers/
create app/views/people
exists app/views/layouts/
exists test/functional/
exists test/unit/
create test/unit/helpers/
exists public/stylesheets/
create app/views/people/index.html.erb
create app/views/people/show.html.erb
create app/views/people/new.html.erb
create app/views/people/edit.html.erb
create app/views/layouts/people.html.erb
create public/stylesheets/scaffold.css
create app/controllers/people_controller.rb
create test/functional/people_controller_test.rb
create app/helpers/people_helper.rb
create test/unit/helpers/people_helper_test.rb
route map.resources :people
route map.connect 'auto_complete_for_person_office',
:controller => 'people',
:action => 'auto_complete_for_person_office'
This works just like the Rails scaffold generator, except that the view_for generator has also:
If you start up your application and create a few person records with names and addresses, then you will see the auto_complete plugin working!

With this working example right inside your application, you can easily review exactly how the view, route and controller files use auto_complete. After that you can adapt the view to fit into your application’s design and delete the scaffolding you don’t really need or want.
As another example, let’s create an entirely new Rails application completely from scratch, and use View Mapper to setup auto_complete inside it:
$ rails auto_complete_example
create
create app/controllers
create app/helpers
create app/models
create app/views/layouts
etc…
$ cd auto_complete_example
First, let’s install the auto_complete plugin. (In a future post I’ll show how to use View Mapper with my fork of auto_complete in a complex form.)
$ ./script/plugin install git://github.com/rails/auto_complete.git Initialized empty Git repository in /Users/pat/rails-apps/auto_complete_example/vendor/plugins/auto_complete/.git/ remote: Counting objects: 13, done. remote: Compressing objects: 100% (12/12), done. remote: Total 13 (delta 2), reused 0 (delta 0) Unpacking objects: 100% (13/13), done. From git://github.com/rails/auto_complete * branch HEAD -> FETCH_HEAD
Now that we have the plugin installed, let’s create our scaffolding. Along with the “view_for” generator I used above, View Mapper also provides a generator called “scaffold_for_view.” This works the same way, except it just creates a new model the same way the Rails scaffold generator does, instead of inspecting an existing model.
Let’s create the same person model we used above, and an auto_complete view:
$ ./script/generate scaffold_for_view person name:string office:string
--view auto_complete:office
exists app/models/
exists app/controllers/
exists app/helpers/
create app/views/people
exists app/views/layouts/
exists test/functional/
exists test/unit/
create test/unit/helpers/
exists public/stylesheets/
create app/views/people/index.html.erb
create app/views/people/show.html.erb
create app/views/people/new.html.erb
create app/views/people/edit.html.erb
create app/views/layouts/people.html.erb
create public/stylesheets/scaffold.css
create app/controllers/people_controller.rb
create test/functional/people_controller_test.rb
create app/helpers/people_helper.rb
create test/unit/helpers/people_helper_test.rb
route map.resources :people
dependency model
exists app/models/
exists test/unit/
exists test/fixtures/
create app/models/person.rb
create test/unit/person_test.rb
create test/fixtures/people.yml
create db/migrate
create db/migrate/20091001161349_create_people.rb
route map.connect 'auto_complete_for_person_office',
:controller => 'people',
:action =>'auto_complete_for_person_office'
Note the syntax is the same as the standard Rails scaffold generator, except I’ve added the “view” parameter to specify we want the auto_complete plugin to be used in the view.
Now we just need to migrate the database schema and run our app:
$ rake db:migrate (in /Users/pat/rails-apps/auto_complete_example) == CreatePeople: migrating =================================================== -- create_table(:people) -> 0.0012s == CreatePeople: migrated (0.0015s) ==========================================
And if you add a few records, you’ll see auto_complete working!
I’ll be adding more views to View Mapper soon, and in future posts here I’ll write about how to generate scaffolding for Paperclip file attachments, my version of auto_complete used on a complex form, and also how to write your own views for View Mapper.
I came across ruby treemap library and tried simple example with it. RubyTreemap is a library for generating treemaps in ruby in multiple formats such as png, svg and html.
Treemaps are for visualizing data sets and are commonly used to display hierarchical data.
Some good links :-
http://rubytreemap.rubyforge.org/
http://www.oreillynet.com/ruby/blog/2006/07/treemap_on_rails.html
A Node in the treemap has a size and a color. The size can be any value and is specific to your data set. So for example, in a treemap of the book sales, a given node's size could be equal to it's total sales for the day. For all non-leaf nodes the size value must be equal to the sum of the sizes of it's children. If the size is nil it will be calculated by recursively summing the size of the child nodes. The color for a node can be either a value usually a percentage (a rate of change) or a hex string color.
Installation and dependencies :-
-- ruby script/plugin install http://github.com/rails/acts_as_tree.git
-- ruby script/plugin install http://code.qnot.org/svn/projects/acts_as_treemap
-- RMagick (rmagick.rubyforge.org/)
Download and extract RMagick-2.10.0-ImageMagick-6.5.3-10-Q8.zip from
http://rubyforge.org/frs/?group_id=12 :-
gem install rmagick --local (installing rmagick-2.10.0-x86-mswin32 )
-- gem install ruby-treemap --source http://gems.rubyforge.org
Our simple Book Model :-
Here is the table that represents books as treemap :-
and here is the generated treemap :-
You can render the treemap in your view by :-
where @root is the parent treemap node.
We can also override the methods in the Treemap::HtmlOutput class to modify the label names, making lables as hyperlinks, etc.
If we want the rate of change of color, we can modify the model entry as below :-
acts_as_treemap :label => :name, :size => :total, :color => :total
So the rate change of color of blocks will be proportionate to the size of the book sales.