I agree with having a variety of public spaces (conference rooms, lounges) for the right context.
I've also found that open plan is great up until you hit the size of your team. One large, open room with only people you work directly with is perfect. Giant hanger-like engineering floors with 100+ people and little dividing the space is a disaster.
A large open plan floor with central, quiet conference rooms anyone can use or phone booths is great. The outer space should be divided into team rooms with their own open layout of 10-15 people or less.
My startup currently shares a large, open-plan loft space with 3 other companies. We each cordoned off one corner of the space with hanging dividers. It's just about perfect.