Tuesday, March 24, 2009

Google Sites in Google Apps

In the past couple of weeks I finally decided to implement an idea that I have had for a while. It's a community website for my suburb that serves as a notice board for the community and also promotion for the suburb itself.

My vague requirements:

- Easy set-up
- Easy Maintenance
- Domain integration
- Easy for user to submit content
- Discussion /Forum

I had been tossing whether to use a blog, or a cms, or a custom built website or a mix of these. I finally decided to go with Google Sites on Google Apps.

The place to start is http://www.google.com/a/cpanel/domain/new . This is for a free standard edition. You can already own a domain, or you can buy a new one through this process, which I did. This registration only took a few minutes.

Google Apps comes with its own control panel / dashboard where you manage your users and the apps available to them. The main app which I am going to use is Google Sites. GSites lets any of your domain users easily set-up and maintain their own "wiki-style" website. A Site can be private, or visible only to signed-in domain users, or public for everyone to see.

So what I needed was one main Google site that is available for everyone to see, and make it available at the www. of my domain. This was easily configured from the dashboard. Then I started building the site itself. On paper I already had a structure I wanted to give to my website. So now i just had to implement it as best as I could with Google Sites.

The layout can be customised slightly. It will always have a header and a footer and a navigation column either to the left or to the right. The width of the website can be changed and so can the width of the navigation column. The navigation column can contain configurable menu boxes with links to pages within the site. The fonts and colours of the various bits and pieces can also be customised.

So a google site is made up of pages arranged in a hierarchical fashion, which is also reflected in the user friendly urls. example:

http://www.nsw2759.net/
http://www.nsw2759.net/now/news
http://www.nsw2759.net/now/news/nsw2759netlaunches

Also, a page can be one of a handful of types:
  • web page - just a rich html page
  • dashboard - a page with panels where you can embed gadgets
  • announcements - where you can post announcements like news, or could be used like a blog
  • file cabinet - for file attachments
  • list - for a list of things
I used a mix of the first 3 types. Editing a webpage is simple. You use a rich wysiwyg editor. You can also insert various gadgets on the page. In my case I have an "announcements" gadget which displays announcements from my "news" page, and a google calendar gadget which displays the calendar I created in my same google apps domain.


The other feature that I used throughout the website is the ability to embed a google apps document within a google sites page. In my case I needed quite a number of input forms to gather information from the community. So I created Google Forms which post the collected data into Google Spreadsheets, all in my nsw2759.net google apps domain. It even notifies me by email when someone submits a form. Pretty neat.

Google sites also comes with an auto-generated sitemap, and of course an inbuilt search facility, not to mention versioning of pages wiki style and "recent activity" page.

However, they are still working on an RSS feature and it is still missing some basic customization features such as a custom favicon.

Also, for my discussion/forum requirement: Signed-in domain users have to possibility to comment on any page/article. However I am not going to give a domain user account to every citizen of my suburb (the free google apps is only limited to 50 users, and in any case it is way too heavy for what I need). So for now I settled for a facebook group, which allows users to participate in a discussion board.

So far, I found Google Sites on Google Apps to be very effective for what I wanted to do and certainly recommend it.


Sunday, August 17, 2008

FeedBurner

Today I checked out FeedBurner. It is a tool for blog publishers to better manage and promote their content. When you "burn your feed", it means you register it with FeedBurner. Then you will be able to access your feed through FeedBurner. In this blog's case, at http://feeds.feedburner.com/SpendOneMillionDollars

To get your best out of FeedBurner, you should serve all requests to your feed through FeedBurner. Luckily Blogger has an option to redirect any requests to your feed to FeedBurner. This is not surprising since Google very recently acquired FeedBurner. So now any requests to http://blog.spendonemilliondollars.com/feeds/posts/default will redirect to http://feeds.feedburner.com/SpendOneMillionDollars.

Then you can start watching subscription statistics, automatically promoting your feed through various services and even monetizing your feed by optionally embedding google ads. Among other things, it also offers email subscriptions.

Unfortunately, WordPress.com (which I'm using for my other blog) doesn't let you redirect feed requests to FeedBurner. I'm liking WordPress.com less and less.

Thursday, August 14, 2008

WordPress and Google Apps

Today I decided to start a new blog, about something completely different than this one, http://everydaytrainblog.com/. So I thought to myself why not try something different than blogger? Without any googling, for some reason, WordPress came to mind. So I gave it a go. I didn't know anything about it. I had only heard of it.

One important disambiguation is the difference between WordPress.com and WordPress.org. WordPress.org is the WordPress software itself which you can download/modify and install on your own server. On the other hand, WordPress.com is a free managed hosting for WordPress blogs. WordPress.com limits functionality, mostly for security/scalability purposes. I had already registered and created a blog with WP.com before I even knew about this difference. In any case I needed hosting and something with zero management overhead. So I had made the right decision without knowing.

Registration and blog creation was very easy. The interface is very web2.0-ish but not very ajax-ish, yet still usable. It didn't take me too long to figure out the basics of the dashboard, postings and pages. And I was up and running very quickly. For comparison between WordPress and Blogger there are plenty of artciles around. And there is many other great blogging software/eware out there.

Next thing I needed to do was to get my own domain name running with my wordpress blog. I bought the domain name through WordPress itself. It costs $15/year to do this. $5 for domain registration and $10 for them to map the domain to your blog. You pay through paypal. You actually buy wordpress credits and then with them you buy the domain/mapping. Pretty straight forward and not many forms to fill in. My wordpress blog was running on my domain name in minutes.

Since I wasn't happy enough with this, I wanted to set up my own email address at my new domain. i.e. patrick@my-new-domain-name.com. It turns out that to do this, you need to use Google Apps. Google Apps allows companies (anyone really) to use set up google applications on the company's domain, for employees of the company to use for free. So for example, my company can use the online GMail software for its email infrastructure. My employees will have their email address on the companies domain, eg. employee1@mycompany.com, but they will use the GMail online client to manage their email (I wish we had this where I work, instead of Outlook!). Similarly, my employees can manage/maintain my company's documents using Google Docs, on my company's domain. It's a bit like a hosted intranet. Note: it is still all hosted on google's reliable infrastructure. Not many companies are willing to host their services and even moreso their data on a 3rd party infrastructure.

So anyways I had to register and validate my-new-domain-name with Google Apps, which was also very quick and simple. And then tell WordPress to link the two. It's all explained here.

So now I got a new mail address at my new domain that I bought through and use for WordPress, and for which I use Gmail/Google Apps to manage the email. Rather confusing to put it like that! But it works :)

Wednesday, August 13, 2008

GMail goes down, how well did it recover?

A couple of days ago, Google's gmail service was down for some time. I was actually using it from my mobile phone, and my fiancée was using its embedded gtalk chatting to a friend when it started playing up. Now I'm not really amazed that Gmail had problems, after all it only happens very rarely and they did recover relatively quickly. The interesting bit to my story is the following:

A gtalk message that was sent to my fiancée while the service was playing up was delivered a day later! It wasn't delivered as soon as the service was back up again, but about a day later. This says a couple of things:
  1. When things went wrong, Google made sure that the first priority was to get some level of service back up and running
  2. Most importantly, after the storm passed, they made sure they cleaned up and that every transaction, including insignificant gtalk messages that might have been stuck somewhere in limbo, were recovered and completed.
And it's good that they did. Because it happened to be quite an important message, and although it was received a bit late, it saved quite a bit of trouble.

We tend to rely on web services way too much, even a simple instant message. The loss of an instant message might not be life threatening, but sometimes we rely on it as if it was a life saver.

Tuesday, August 12, 2008

Where are you? Fire Eagle

Everyone and everything want to know where you are these days. Why? for everyone's benefit, including your own, hopefully. But would you like everyone and everything to know where you are?

Today I came across Yahoo's Fire Eagle. It's basically a location service. You tell the eagle where you are. And you don;t have to tell the fox or the cat where you are. They can ask the eagle where you are. But the eagle is trustworthy. It only tells others your location if you allow it to do so. So you can tell the eagle "Allow the fox to know my exact location" and/or "Allow the cat to know my approximate location". And then the fox asks the eagle for your location, and the fox can offer you better search results, and better targeted ads too!

So how do you tell the eagle where you are? First of all you need a yahoo account. (The eagle will never give out your yahoo account name or details to anyone; it talks with cats and foxes using cryptic keys. It's actually very secure and conforms to OAuth).

And then you can simply type in your address/location on the eagle's website pinpoint form, as often as you like. But you would not want to keep updating that all the time wouldn't you? So there are applications that do that for you, like one that you can download on a GPS enabled phone, that will keep the eagle updated automatically with your location.

So now, I, Mr. Nobody Developer can create a web application and if you, Mr. User, trust me, you can tell the eagle to let me know your location. Here's how it works:
  1. I simply send you to the eagle with a request to let me see your location
  2. You confirm with the eagle that you want to let me see your location
  3. The eagle sends you back to me with an authorisation
  4. I ask the eagle where you are, using that authorization you brought with you
  5. The eagle tells me where you are (after triple checking that I am allowed to know!)
Pretty simple isn't it? And I can store that authorisation so that I can try using it straight away next time you visit me (or whenever I just feel like knowing where you are). As long as that authorisation is still valid (i.e. you haven't told the eagle otherwise), the eagle will tell me your location.

It took me a couple of hours to get my head around the concept. I hope it took you much shorter by reading this post.

Monday, August 11, 2008

Google Docs Forms

I have been using google docs for a while now. Mostly the spreadsheets, especially useful for co-authoring stuff with my fiancee like budgets, wedding plans, house stuff etc.

But somehow I never came across Google Docs Forms. Today while reading some http://www.joelonsoftware.com/ I came across a new site they are testing in beta http://stackoverflow.com/ and their beta signup form is a Google Docs Form.

So of course I decided to give it a try. All you need to do is open your google docs (for which you need a google account) and then start a new Form. It is very self explaining how to set up. And you can put as many questions as you like. The questions can be one of 5 types: text, paragraph text, multiple choice, checkboxes, choose from a list or scale 1-n. Once you are happy with your form set-up, you click on a save button. On the bottom of the form editor there is a link that you can give out to people. When anyone submits the form, the entry is saved into an automatically created Google Doc Spreadsheet in your account, ready for you to anlayse, or even program against.

One cool feature is that you can embed the form you create into your own page. Just click on the "More Actions >> Embed" button and it will give you a piece of html to embed into your page. Here below is one that I created myself. Give it a go!

Squidoo - quick, nice and easy webpage


Today I came across Squidoo while reading about Seth Godin. Squidoo is basically an online webpage creation tool. So I gave it a go to create a page about SOMD. It was super easy to set up a page and start adding content to it. Well I actually had to remove most of the content boxes that came with the template I chose, since all I wanted was some introduction text, and a feed reader to feed from this blog. In squidoo terminology, a 'lense' is one page about somone or something. The editing interface is very simple. You can add many different modules and widgets to your page and even sell stuff or accept donations. You can earn money from ads that are displayed on your page and you can decide to take it cash or to donate it to charity. You don't need any technical knowledge whatsoever to use squidoo. All you need is something great to write about. And then of course you can see statistics, rate pages, tag, and what-not. But what strikes me is the minimal steps it takes you to get started. So here is the squidoo spend one million dollars page.