Wednesday, February 21, 2007

Wine Tasting in Livermore

S and I went to Livermore to do some wine tasting. Yes, I'm sure it was wine, not bootleg grape juice brewed in the basement of a suburban sprawl home and run across the county line by a soccer mom in her SUV. We got a late start on President's Day so we only made it to three wineries instead of the dozen or so we were hoping for. I made a notebook of these Southbay Wineries. or you can buy my source, The Best of the Wine Country. WARNING: The following contains extreme yuppyism, for I am about to discuss wine. Please resist the urge to punch me in the face after reading this to restore your street cred.

Retzlaff Winery


Because of it's small size and smooth wines, this was a good place to start. When we arrived, the hostess was the only person in the tasting room. After tasting a few wines, I readily admitted that we were fairly new to the wine tasting circuit. This started a pattern that would repeat itself for the rest of the day: the hostess completely opened up, took us on a tour of the aging rooms, and let us sample different vintages, from the casks, for free. It was a great to see the evolution of the wine, starting with an '06 recently picked, to a dark '01. The thing that surprised me most was how much the wine changes in the first year ('06 compared to the '05). It was another example of the last 10% improvement costing the most.

Neither S nor I like Chardonnay, but the version here was very clean and didn't have the dry oaky flavor that normally turns me away. The reds were also clean; too clean actually. I prefer the bolder wines we found later that day.

Concannon Vinyard

Quite a contrast to Retzalff, Concannon had a large storehouse and tasting room. The medium sized parking lot was full, so we were looking forward to a different experience. President's Day weekend the winery opened its reserve wines for tasting, pouring them at different stations complemented by cheese or chocolate. Again I started asking newbie questions at one of the later stages and struck up a conversation with the folks behind the table. Before I knew what was happening, S and I were whisked away and had started a private tour of the winery.

We started outside, looking at the hoppers which separate the grapes from the stems and leaves. Taken through the distillers, mixers, and filters we asked questions and got to poke our heads into some of the empty steel containers. Andrew, our host, gave us a few lessons on how they buy, care for, and use the wine casks. The above picture is one of the original grape presses that was used by the founder, James Concannon.

Jim Concannon is the grandson, and now runs the vineyard. We met him in the storage room, where the casked wine was held at a constant 54 degrees. Jim told us about climbing around the old room when he was young, pointed out the grooves in the floor where the draft horses used to haul full casks in or press grapes, and explained that the winery was only able to stay open during the prohibition thanks to the communion wine needed by the local churches.

Petite Syrah is the Concannon specialty. For me, though, this wine ended very abruptly. The "full" Syrah was more enjoyable and the Merlot was excellent: very bold. They had a new-to-me Spanish style wine, Contenello (?), that was nice and spicy. The whites were disappointing.

Crooked Vine

Crooked had an enlightening barrel tasting scheme: there were three casks, two different types of grapes, and two different types of wood. I was surprised that the type of wood, French Oak versus American, had already altered the taste of the wine. These casks were also '06 wines, so they hadn't been aging long. We talked with the hostess about the job of the head winemaker: how do they know when a wine is done? What are they looking for? How do they blend? The answer to all the questions is basically "whatever feels right to him/her." This drove the personalization of the wine home for me: with so many ways for a grape to interact with its soil and environment, the resulting juice to interact with its cask, the resulting wine to be tweaked and aged by a wine expect, and the end product to interact with the taster, no wonder there are so many variations.

I highly recommend a trip to this area, and you'll be reading about my next one.

Saturday, February 17, 2007

2 Nights in Dublin

B is going to Dublin, Ireland for two nights, so I thought I'd write a schedule. I visited Dublin this last December, sent by work. I had an amazing time and was able to pick up a lot about the city from walking around, talking to people, and visiting the museums.

Background

The main part of the city is quite small, which makes walking around easy. If you have time, you don't really need a schedule since you can just walk to wherever you feel like visiting next. Additionally, walking around makes it easier to find the place you're going. There's approximately 50 million small streets in Dublin, and if that wasn't enough, the main through streets change their name every couple of blocks. I suspect this is why I never found any Mapquest equivalents for Dublin.

I think the best way to enjoy Dublin is to appreciate the contrast the city has. Visit an old museum, then sit in a bar talking to locals. Visit Kilmainham then view some modern art. One of the reasons visiting other counties is so interesting is because that kind of contrast doesn't really exist in America.
Schedule

OK, I'll stop rambling now. If you're there for two days, here's what I'd pack in.

Day 1 Morning
  • Check into the Paramount
  • Walk through the street market, get some breakfast at the food square at the beginning of Temple Bar district
  • Walk back past Paramount, take tour of Christchurch, including the crypts.
Day 1 Noon

  • Walk to Guinness Storehouse, take the tour, have a pint in the Gravity Bar
  • Look across the street, see the Digital Hub which is where the Amazon office is
  • Have lunch at Nash's, aka DUB0, on Thomas St.; order Guinness' seasonal beer
Day 1 Afternoon
Day 1 Evening
  • Catch last Hop-on-Hop-off bus, get off at Jameson's Whiskey stop
  • Buy tickets for Jameson tour (discount with bus ticket), buy an Irish Coffee while you wait
  • Sit in the front row during Jameson tour movie, immediately raise your hand when guide asks who wants to be a special taster
  • After tour, cross back over the river on Hapenny bridge and eat at Guel
  • Walk to Peter's Pub off Graffton, sit at the bar, talk to people, try Green Spot, drink Guinness
  • After 10:30p, go to O'Donoghue's watch great live music
  • Stumble back to Porterhouse, across the street from Paramount, drink more
  • If you're hungry, eat at Zaytunes
  • Sleep
Day 2 Morning
  • Have an Irish Breakfast
  • Catch Hop-on-Hop-off bus, listen to tour
  • Hop off at Stephen's Green, walk around
  • Buy Green Spot at Celtic Whiskey
  • Walk along Nassau street, buy things
Day 2 Noon
  • Go to Dawson's Lounge, have pint(s) and lunch (if you are hungrier than a sandwich, eat at Kilkenny's cafe)
  • Walk through Trinity College, see Book of Kells
Day 2 AfternoonDay 2 Evening
  • Get fish & chips at Leo Burdock
  • Go to Bar Restaurant on St. George's St., get a Guinness and a brownie at the bar
  • Walk through Temple Bar, get a cocktail at one of the sleek hotel bars
  • Go back to your favorite bar, or for a longer walk, go to Mulligan's
Day 3 Morning
  • Pack and take cab to airport
  • Have pint and go home. Good job!
What did I misss?

Tuesday, February 13, 2007

OK, This Is Very Exciting

Sam Adams has developed a new beer glass.


As my beer snobbishness grows, I find myself unable to drink out of plastic cups any longer. I suppose it's not long till I can't drink out of glasses not specifically designed for the type of beer I'm drinking. Frankly, I already have a hard time drinking out of glasses that have a Bud or Coors label on them. As a geek in general, I'm also particularly attracted to using the "do one thing and do it well" philosophy, so specialized glasses appeal to me.

I view Sam Adams as a middling microbrew that hit it big. The beer is still better than the rest in its class, but its class isn't great. I respect them for trying to raise the level of national American beers and maybe serving as a "gateway beer" for many people. Of light beers, Sam Adams is the best (probably because it was developed by the inventor of light beer), but again: not a class of beer I enjoy.

I like seeing companies using their popularity and profits to do interesting things that advance their field. Google is an obvious example. The glasses are on their way to me now, so I'll let you know if Sam Adams is now an example, too.

Thursday, February 8, 2007

"Internet as a Computer"

Along the lines of my "Website as a Language" post, Yahoo! just released something called "Pipes" that promises to bring together websites in an organized way. A syntax, if you will, for whatever types your website uses. I suspect this idea, if not Pipes itself, will be very big this year because it holds the promise of brining together all the cool tools from different sites that people use.

Right now, it is the small minority, even here in the Valley, that use tools like Basecamp, Google Calendar, or PBWiki. I suspect some of this is a barrier that many websites don't consider: just remembering what the address is and what the website can do. My mom doesn't remember YouTube when thinking about Super Bowl commercials, and my dad still uses McNally maps when planning a car trip. With new tools such as Pipes, though, only one site will be needed to combine all of these small applications. Basecamp milestones will show up on your Kiko calendar, and Twitter can track data for your work's status report.

This will likely have two effects: eliminate the advantage that Google has in combining their offerings into suites, and exploding the market that small companies can reach. One of the reasons that Kiko cited for it's collapse was the integration with Gmail that Google Calendar offered. Heck, it's one of the main reasons I use it. Unless Google goes the Microsoft route and starts protecting it's products with proprietary formats, users in the future will be able to integrate their Hotmail addresses with Google Calendar just as easily. The second effect follows from the prediction that it will be easier for "normal" folks to use the small but useful tools scattered about the Internet.

Interestingly, sites are going to have to become more vulnerable in order to take advantage of these effects. If websites can become interchangeable for certain functions, usability and features become more important than stickiness. But if websites take that risk, design themselves to be expanded, enable themselves to be programatically processed, then a whole new market opens up to them.

So far, though, I'm just speaking in hypotheticals. I'll try to send an update when I actually try out Pipes. Very exciting!

Wednesday, January 31, 2007

A Website as a Language

Websites should be domain specific languages. The most popular sites are those which allow people to most easily communicate, so it seems like describing a website as a language is an excellent way to think about its design. Social sites like MySpace have an obvious communication slant, but even searches on Google are done to request that information be communicated to you. The whole notion of "Web 2.0" sites is predicated on communication between users. I am interested in more than "helping users communicate," however. How can designers build a website that is a "domain specific language" which lets its users express concepts and ideas that the original architects haven't even thought of yet?

No, That's Not What I Meant

I'm not talking about adding a forum to your website and calling it a night. I'm not talking about adding private messages between users. These features only extend English across the web. The very fact that they can be used across wildly different situations excludes them being domain specific. Specificity is important because it limits and simplifies communication. If you know that I'm talking about the Internet, I don't have to describe what type of "site" I'm talking about; you know I mean website. Specificity makes communication easier and more succinct. What I am talking about is making concepts in your domain easily communicated, manipulated, and related.

Can You Give Me an Example?

PerformanceBike.com has reviews in a specific format. Check out my helmet: it has 6 reviews, like a typical site, but at the top of the reviews it has "Customers most agreed on the following attributes". It is a very useful aggregate of opinions not easily communicated by standard review formats. If you click on " Write a Review," you can see that these agreed upon attributes are added by the reviewer in a particular format. People don't normally communicate this way; if I was talking with a friend I wouldn't say, "Strengths: light-weight, good ventilation, looks cool." But in this domain, it is useful to enforce a more specific syntax to express concepts about the helmet. If reviewers use this language, they get the benefit of getting their opinion of the product through to another person.

A counter example is craigslist: it uses natural language, and while it has some catageories to narrow down what you're looking for, it does little to help people express themselves. If you have ever searched for a specific product in your area, you know that there's not much the site helps you with. Even if I know that I want the Malm Ikea bed, there's no easy way to easily express this. There are no built in language constructs for "products," much less "beds" or styles of beds. This may be by Craig's design, but I suspect it has more to do with the trade-off involved in improving the site (needing to hire more people, needing to start charging for listings, etc.).

Why Should I Think About It This Way?

Designing a website like a language can make it truly extensible. Extensibility often happens by mistake: MySpace didn't know what it was getting itself into when it allowed users to totally customize their pages. Even though it's a big headache for them now, allowing it's users to better communicate to others was one of the main drivers of the site. Thinking about what users wanted to express, then building up a safe "language" for them to do so would have saved MySpace many headaches and avoided the CSS nightmare that has ensued.

Steve Yegge's post earlier this month also pointed to the importance of extensibility. His essential properties for great systems all point in one direction: being able to express concepts and continually build new ideas in your system. I believe many of his properties (command shell, extension language, plugin system, introspection) all derive from the same thing: a language that can express ideas in a domain, including itself. Preventing reboots is second nature to websites: you never see Amazon clearing all reviews from its website so it can start from scratch.

Secondly, developing a language that visitors can use forces you to think about what concepts they want to use. It's easy to think of features to add to a website: labels, user pictures, comments; but in order to understand what is useful to a user, you need understand what they're trying to communicate. This is similar to Joel Spolsky's activity planning except you need to go a little bit further and understand what a user is trying to say rather than what they're doing.

Amazon has added the ability to tag products, but it's barely getting any usage. Why? I think it's because customers are trying to categorize products much less frequently than they want to learn about the differences between similar products. Right now Amazon can't communicate comparisons to customers because it has no language to talk about the properties that customers care about. Which shoe is more durable? Which book is more useful for my research? There's no way for a reviewer to express these ideas in a way that can be combined with the opinions of others, compared to another item, and understood by a buyer. Instead of spending time implementing tags because other Web 2.0 companies had them, I would recommend developing something similar to PerformanceBike's reviews and letting customers compare them in ways they care about.

How Do I Develop This Language?

Domain specific languages, or DSLs, are relatively well known in the programming world. Martin Fowler has a good article on the subject. My advice on how to proceed starts like most other pieces of advice: know your audience. What are the basic ideas in your domain? For Yelp it's a business and its quality. For a poker forum its hands, bets, and cards. Now, how are customers trying to use these basic concepts to build more complex ones? What makes a restaurant appealing? What makes a a hand strong in a certain situation? Enable users to describe these ideas succinctly: a "star" rating is a good example. With a simple click, users can summarize their feelings about a place.

What questions are users asking? Can they express them on your site? Simple search is not good enough in most cases because its domain is too wide. Yelp has a separate box to express location because when searching for a business, users need to communicate what area they're interested in.

It's important to stay focused on flexibility during the design of your language. PerformanceBike reviews don't have a set number of check boxes for product attributes; they let users decide on their own. You're trying to provide the building blocks to users so they can build what work best for them, not build up a house you think they'll want to live in. Abstract upwards the types you think will important: programming languages have "integers" not the individual concepts of "1", "2", "3", "4".

Getting More Advanced

I'd like to be able to express more complex idea on websites I use. When a Yelp review has another business in it, it should be recognized as a specific object that the sites language knows about. I should be able to click on that business to learn about it, continuing the conversation. I want to easily ask a question: "What should I do for fun Saturday in San Francisco?" I is a concept that should be comparable to other people. San Francisco is a concept of a location in which to search. fun is a description of what type of businesses I am looking for.

Just like programming languages today, the website needs to be implemented. Perhaps my question will be translated into a database query that searches for businesses that have been highly reviewed by people who have rated other businesses similarly to me, constrained to San Francisco and with a tag of fun. The point is that I have a language to express my desire and the website has a way to express its response.

Feedback

So what sites do you feel expressive on? Why? What are you doing to enable your users to communicate? Yegge said, "Features for non-technical end-users don't contribute to a system's lifespan. In the fullness of time, I believe programming fluency will become as ubiquitous as literacy, so it won't matter." Are your users literate in your website?

Monday, January 29, 2007

New Bike?

J is buying a new bike, so I thought I'd post some of the resources I've used this past year for bicycling.

CPTips.com

By far the most useful resource I have found has been this website. For buying a new bike specifically, check out the sizing section. The site is useful because it summarizes a lot of researched information, and not just personal experiences and antidotes. I especially like how it cites other articles that you can go read for more in depth info.

Bicycling Magazine

Like most hobby magazines, this has a lot of hype and fawning reviews for expensive products. If you just stick to their "best" awards, like the Editor's Choice Awards, then you can extract some useful information out of it. For example, Best Entry-Level Road Bike has some useful recommendations.

RoadBikeReview

I've found this site to have the best coverage in product reviews. Nice simple interface, too, compared to the Minotaur lair that is bicycling magazine.

Try Out Everything

Each bike store or chain carries different brand bikes. Since frame geometry differs between brands, I highly recommend riding as many bikes that are in your price range as possible. Ride a couple out of your price range, too, for comparison. Then ride the ones you like again to make sure you remember them correctly. Buy the bike that feels best, however you define it: comfortable, fast, pretty, etc. Buy a bike you'll want to ride.

There's three stores I recommend checking out in the South Bay area. Performance Bike: the low cost leader in the field, I bought my bike here with lifetime minor service. I've been happy with their service, prices, and online store. I've received personal (and personable) help from the mechanics, including picking out new wheels and making fitting adjustments on my bike. When I ordered a cleaning kit from their website that failed to show up after they had shipped it, they expressed me another one no-questions-asked. Mike's Bikes: I have a couple female friends that have had good experiences here because they carry a lot of women's frames. They also carry some sort of adjustments package, but you should ask them about it when you buy the bike. Palo Alto Bicycles: these are great folks, but the store is a little pricey. The store also has free clinics about cleaning and riding your bike that I recommend no matter where you end up buying.

Price Differences

Most people are surprised that a good road bike can now cost you $1,000 or more. Even the lowest end road bikes will set you back around $550. The big jumps in price are because of the frame and wheels. The incremental jumps are from the components (shifters, derailers, brakes, etc.) Higher quality components will last longer, which is important if you are riding hundreds of miles a week. The frame and wheels affect the weight and "feel" of a bike. The weight is only important if you are concerned about racing. The "feel" of the bike should be judged when you ride it, since the saddle, seat, and fork can all affect the "feel" of the bike more than the frame material. Again, pick what you enjoy riding the most.

Have you recently purchased a bike? Any suggestions? Are you buying a bike? Any questions?

Tuesday, January 23, 2007

Superpowers?

Why do all these comic book characters want a "normal" life? When I look at their powers I think to myself, "Man, if I had *any* power, I would specialize the hell out of it." If all I could do was make purple dots appear on walls, I would practice till I could play purple movies on a big screen. Forget that boring "normal" life! Never mind what I would do with really interesting powers like Spider-Man's. But then I see stories like Team Hoyt and realize that everyone has superpowers, but they also choose a "normal" life. So what am I doing to take advantage of my powers?

One of my biggest achievements is last year's AIDS/Lifecycle ride. When I tell people that I biked from San Francisco to LA they look at me in surprise, wondering if such a thing is possible. The thing that made it super for me, though, was the amount of money raised for the SF AIDS foundation. I've talked to people that this foundation has literally saved from death. The question "If you had the power to save people's lives, would you do it?" isn't hypothetical for most people, including me. That's why I'm starting to practice and improve my bicycling skills: I want to do more this year.

Just having extra money would probably be considered a superpower by over 1.1 billion people living on a couple dollars a day. Many people don't have money to just give away, but there are places such as Kiva that you let your spare money do a lot of good. (I'm not a financial adviser, or even know what the word financial means, so as always be careful where you put your money). Kiva lets you give out loans to folks in or bordering on poverty. Unlike giving money to one of your buddies, you can be sure that your loan will be going to something useful ;) Like your buddies, you can bet that it'll be returned so you can use that money on yourself afterwards.

The fact is, just like superheroes, most people don't really want to use their powers; they just want a normal life. Unlike the worlds in comic books and TV, though, everyone has powers here. You don't need super-strength if there are no super-monsters. We do need normal compassion when people are dying from "normal" hunger. That means everyone can live a normal life while achieving the same things as your favorite super-team. Even Wolverine likes his beer at a local bar, so using your powers doesn't require giving up everything you love. So let's make "normal" super, and have fun with the powers we've got.