In a recent meeting with a customer the terms front-end and back-end were used. Biased as I am, I assumed we were talking about code running on the client computer (front-end) and code running on the server (back-end). However, it isn’t that simple. The nice separation of concepts blurs when the code on the client side is used to change things on the server. Understandingly, the customer in this meeting calls this the back-end, because the final result is a change on the server. I was in front-end mode, because the interface/code to do so was running on the client.
The use of terminology became even more interesting when different users were identified: 1) the anonymous user who comes along while browsing the internet, 2) the registered user browsing to the same site but with additional privileges, and 3) the administrative user who actually manages the site. We all understood that user 1 operates on the front-end and user 3 operates on the back-end. What user 2 was using was confusing. Were the additional privileges in the back-end?
I’d love to throw Software-as-a-Service (SaaS) into the pool of terms … But I’ll leave some tinkering for you. I am sure you’ll then try and get a handle on Platform-as-a-Service (PaaS) and you’ll finish the circle with Backend-as-a-Service (BaaS).