One of the most common requests web developers receive from their clients is for websites to be able to be self-managed in terms of updating content and images. In the age of easy-to-use social media platforms and other online applications that allow virtually anyone without technical expertise to manage content online, it would seem like a no-brainer request to implement – the reality is that this capability is often extremely tricky for a number of reasons.
Why is it so difficult to update a website yourself?
The root to the cause is that the core technologies (i.e. a collection of programming languages and various standards that govern the world wide web) that make a website look good and function correctly are simply not designed to be utilised by persons without technical expertise.
The list of programming languages that allow web developers to create functional websites is quite long. Here is some of what you may have to learn if you want to properly self-manage the presentational aspects of your website:
- HTML (Hypertext Markup Language)
- CSS (Cascading Style Sheets)
- XSL (Extensible Stylesheet Language)
- XML (Extensible Markup Language)
- SVG (Scalable Vector Graphics)
- ... this list just keeps going!
Not only do you have to learn all of the above, but you will also need to learn how to make them all work together! No business owner (or receptionist tasked with updating the company website) has the time for that. As an additional disclaimer, the above only covers the presentation aspects of your website – the other list that covers dynamic features, security, transactions, databases... is even longer!
It's a common trend nowadays that people set their expectations for website management capabilities based on what they have seen or used on major social media platforms. These platforms tend to set a benchmark as to what you can do online without technical expertise.
Social media platforms hold your hand at every step. Images are resized and optimised for you. Photo galleries are automatically generated. Content is accepted in many languages without issues. Content summaries are automatically extracted from linked pages.
It should be no problem for your web developer to implement all these features into your website, so you can just go in and edit everything? Right?
Unfortunately, these are completely unrealistic expectations. Major social media platforms have enormous teams of qualified software engineers working on daily basis to make those features work flawlessly. They hire psychologists to ensure that their websites are intuitive to use. They have the resources to do large-scale testing. They track and fix bugs in record time.
You, however, most likely have a modest budget for a basic business website. That doesn't mean you are completely out of luck – there are ways to work your web developer to incorporate capabilities that will allow you to manage parts of your website with minimal technical expertise. The key issue is that your web developer will need to know exactly what kind of capacity you need – functionality tailored to particular needs is generally the best solution.
A solution: build custom databases
Instead of encouraging the client to manually edit pages via a Content Management System (CMS), as is typically done by majority of web designers, my approach to building user-editable websites is to find ways to group content and build databases where possible.
For example, a client may have a catalogue of 30 niche products targeted for industrial applications. They are not interested in selling these products online (i.e. they do not want to invest into a full fledged shopping cart), but they would like some capability to add, edit and remove these products in the future. They may edit their website once every three months or so.
A solution to this problem would be to create a user-editable database of products. Some of the parameters that the client may be able to edit could include:
- Product Title
- Product Description
- Product Image
- Small Product Images (up to 6)
- Product Technical Manual (PDF), etc.
In this case, pages would be automatically generated with all the applicable presentation and search engine optimisation (SEO) components.
A custom database that can be managed via an administration system would allow the client to manage the product catalogue with minimal technical expertise, and no chance of breaking the site layout, messing up the presentation components and failing to correctly use semantics.
This topic can turn into a very long and complex discussion. But, the key takeaway is that the client needs to advise the web developer as to what they exactly plan to do with the website in the future. It's not enough to merely state that to a web developer that you want a "website that you can entirely edit yourself" - because that is not quite technically feasible without you becoming a web developer! Unless you want to be in a situation in the future where you will end up with a broken website because of your attempt to update content, it is very important to discuss your particular needs in advance and design a system that works for you.