Keeping on top of website updates
Learn what website updates are, what they entail, why they are important, and how we can help
Today we’re going to explain what website and web application updates are, talk about why they are important, and share how we help people with keeping their website up to date.
What do we mean by website updates?
Updates can mean many things to many people, for this article we mean updates to the things that make your website work. We don’t mean updates to things like copy or images on your website.
Sometimes these are called security updates, dependency updates, or just software updates.
There are roughly four types of updates to consider;
- Updates for the framework your website uses. This could be Ruby on Rails, or WordPress, for example
- Updates for the plugins and dependencies your website uses these would be like Ruby gems, Node modules, or plugins
- Updates to the server your website code runs on, such as operating system updates and security patches
- Updates to the other services your website uses, things like API versions changing, logging/analytics services changing, or updates to your database version
We won’t be going into the specifics of these types of updates, but suffice to say these are all things your website needs but they don’t normally change the outward appearance of your website.
Reasons to keep your website updated
There are several reasons to keep your website or web application updated, these are the main ones;
- Patch security issues. Old code with known security issues can lead to your website getting hacked. Depending on what your website does this could mean your website is defaced, or it could mean customer information is stolen.
- Make use of performance improvements. Often times updates will come with improved performance, this means they either work faster or consume less resource to do the work. This isn’t always the case though, which is why it is important to test your updates.
- Make use of the latest features of a service. Sometimes you don’t get to use the entire offering of a service you use because your website is running an old version of it from before the new functionality was made.
- Reduce the overhead of doing large updates. Sometimes your website gets so old you can’t make changes to it without first doing a big update. This can be disruptive.
- Keep your developers productive. When you are using older version of something it can be hard to find relevant documentation or discussion.
These reasons apply to the four different types of updates we’ve discussed. Where the major differences lie is in how you check to see if an update is needed and how you go about performing the update.
How do I know if my website needs updates?
This will depend on how your website is set up and how it is hosted.
For example, if you use WordPress, the admin area has sections for WordPress, template and plugin updates, where you can see what is out of date.
If you use something like Ruby, a developer can run a command to see which gems are out of date. Similar things can be done for Python, JavaScript, and other languages/frameworks.
To know if your server needs updates you’ll need to check in with the hosting provider. Some are fully managed and they manage keeping things up to date, others are 100% up to you and your setup will only update if you manually tell it to.
For external services, the best thing to do is join their mailing lists to be alerted to new features or potential upgrades. If you receive an email from a service that you don’t fully understand, forward it on to your tech team, or reply back and ask for clarification.
Keeping on top of updates
Every team will approach this differently. We tend to set things up in a way that we get alerted to new updates, especially security updates, for a project and on a regular cadence we will test and then deploy those updates.
The specifics will depend on the project, but at a high-level you want to;
- Set aside time to think about updates
- Decide which updates are worth doing
- Test those updates
- Update and put the changes live
The hardest part of these steps is setting aside the time. Most technical teams know this is important, but rarely justify spending the time to do the updates until it becomes a blocker to progress on a feature they are working on.
Where possible you want as much of it to be as automated as possible, so for example when we’re looking at Ruby on Rails projects, we will set up things in a way that a new update will automatically run our tests and if we’re happy with how things look, we can press one button to have that change go live.
We can help
If your team is too busy working on features, or maybe you don’t have a team in place. We can help, by doing one off upgrades as needed, or helping with a retainer to fit your budget. The easiest thing to do is get in contact and we can discuss what you need and if we’re best placed to help.
To wrap up
Keeping your website updated can help keep it secure, performant, and help reduce how much time it takes when an update goes from being nice to have to need to have.
It takes a little bit of planning and some time, but the benefits outweigh those costs.