A couple of years ago, when I first started working on community calendar syndication, you could find lots of public calendars by searching Google Calendar. And then, one day, you couldn't. I've never found any official statement about why that feature went away, but I can make an educated guess. My syndication hubs include lots of feeds managed by Google Calendar, and it's not uncommon to see events coming through those feeds that clearly weren't meant to be public announcements:
Private Party: 8PM
Board Meeting, Closed Session: 5:30PM
My guess is that the calendars marked Public on Google are no longer searchable because too many people made these kinds of mistakes. And it's understandable that they do. Google Calendar is, for most people, a tool for personal information management. You keep track of your social life, your medical appointments, your kids' soccer games.
But when you're the soccer coach, the schedule of games isn't just personal information. It's public data. How public depends on where you set the dial. You might want to share the information only with players' parents, in which case you can convey the URL of the calendar's feed only to them. Or you might want to embed the calendar on the team's website, so that anyone who cares about the team can view the calendar there -- and optionally synch it to a smartphone, desktop, or personal cloud.
Some people have figured this out, but most haven't yet. That's partly because it just doesn't occur to them. But it's also, I think, because people intuitively know that it's tricky to walk the line that separates public from private data.
The soccer schedule, for example, typically won't only include games. There are also practices to which you probably don't want to invite the community, and the post-season party to which you definitely don't want to invite the community. How do you separate these cases?
For a Google Calendar that you've made public there are a couple of ways to do it. If you mark the practices and party as private events, they'll still show up in the public iCalendar feed, and in the public HTML view you embed on your site, but without any details. People will only see events at the appointed time with the title Busy. How would the people who should be attending those events get the details? You'd give them the URL that points to a corresponding private iCalendar feed that does include them.
Alternatively you can keep two separate calendars side by side. Make one public for the regular games, and keep the other private for practices and parties. That way the two sets of events will be cleanly separated. You can embed the game schedule on the team's site, and if your local newspaper is enlightened you can syndicate the schedule to them. Meanwhile the practices and the party are on a private calendar that you only share with the team. On the private side, people subscribe to both calendars as overlays onto their own personal calendars.
I've rarely seen the first strategy used. Some people use the second, but not many. Why? No matter how you do it, controlling the visibility of your personal cloud requires a bit of thought and discipline. That's the bad news. The good news is that it's possible, and not really that hard. Some things are only for you. Others you share with your team. And some you publish to the world. As we colonize the cloud, understanding how to use these concentric scopes effectively will become an essential skill.