Web-site development metaphors for non-tech people.

Today in a conversation with a customer I came up with a metaphor to explain some concepts about web-sites and hosting in Azure. I think this can be useful, should be recorded and developed further:

  • Think of a web-site as a Book. Pages in a book are web-site pages with text. Easy enough and translates well.
  • Web-sites to run need a server. Server is a Book-shelf that can have many books (sites).
  • You can have a book-shelf (server) in your office or in a Library. Library is a data-centre or a cloud that contains many book-shelves and many books. Somebody cares about the library for you, but you pay for the space on a shelf to keep you books there.
  • Domain Name is a Library Card that by name of a domain knows what shelf/location the required book(site) sits.
  • DNS server is a Librarian that keeps library cards organised and provides you with the right card when you ask for you site.
  • I also was explaining about having 2 publishing slots on Azure: production and staging. Production is the current book that is served to clients. Then when you publish new version of a book(site) – it is placed next to the current book(site) and then you swap these books around. Making the new book(site) to be currently in production.

Though this worked really well for me this morning, this metaphor does not explain well how on-premises hosting will work (your own tiny private library?). Or how web-sites fetch data from databases and if you swap sites/book they still serve the same data from the same database? Perhaps database can be a filing cabinet and every book contains a reference section on how to fetch data from the filing cabinet, but this is getting more complex than I like.