Often, the hardest part of any search engine optimization or marketing campaign is getting changes made to the website. Figuring out what to do is often easier than convincing all the stakeholders—including marketers, IT departments, web developers—to take the necessary actions, and coaching them along the way as they apprehensively take baby steps forward. As search marketers, we also need to test web sites. We always want to tweak things and see if we do better, and if not, we go back and try something else. We also work in teams.
Success in search marketing campaigns often depends on the nitty-gritty details of execution. That is why I have spent a lot time investigating different tools that help automate our work flow and promote teamwork. One of my favorites goes by the apt and clever name of Subversion.
Subversion, also known as SVN, is free open source software that provides revision control of source code, web pages, and other documents. Revision control means that all current and past versions of each file are saved, with notes about who edited them and what they did. If a bold change goes terribly wrong, a few clicks restores a prior version of the site. Revision control also permits multiple editors to work on the same files without wrecking each others’ work. After updating their local files, everybody can be confident that they have the latest versions. Most edit conflicts are automatically resolved.
Revision control software is much more efficient than ad hoc arrangements such as emailing files back and forth or using Dreamweaver’s FTP synchronization feature. A web server is for serving web pages, not for syncing files. Our Subversion server provides much faster data transfer, and Subversion tracks changes line by line, so it only transfers the lines that have changed, rather than whole files, saving even more time.
Here are a few situations where Subversion helps most:
Eliminating the IT bottleneck. When a website is hosted in-house, the IT department often does not provide web server FTP access for security or management reasons. They usually want to control all changes, rightly so, because they are responsible. However, IT staff are busy or may lack experience in search optimization. It normally takes three times longer to teach a client how to fix their own website than to just do it for them. IT departments like Subversion because it saves them time and provides an audit trail and a reliable backup copy of the website in case the server ever suffers a meltdown. When a client is on Subversion, even if I do not have FTP access, I can still grab the latest copy of their website, make the necessary edits, and commit them to the repository. Then I ask the client to pull updated files from the repository, review the changes on a development server, and release them to the live site. Verifying and releasing a website update is faster, and requires fewer skills, than editing.
Replacing content management systems. One of the selling points for content management systems is that clients can edit their own website, especially when multiple people are involved. Content management systems usually introduce design rigidity, causing website improvements to take longer and cost more. When websites have a catalog with thousands of parts, or a shopping cart, a content management system is obviously necessary, but when a website is just brochure-ware, content management systems can be a poor investment and an impediment to search marketing. With Subversion, we allow clients to use Dreamweaver or Contribute to edit sites themselves. Everybody on the team uses Subversion to coordinate changes, and if somebody wrecks the site, we can roll back to the prior version. With Subversion as a safety net, the editing process goes faster, and more people can have access.
Delegating work.When managing staff, I need to see what they are doing and be able to jump in on a moment’s notice when help is needed. Having direct, immediate access to the source code makes it easy to fix a bug in the middle of the night when a client complains. I do not need to tell everybody “sync your files” or risk having them erase my change. Subversion handles that automatically. If a client emails a request, any employee can help themselves to the latest code from the repository, and make edits. Without Subversion, having more than one person working on a site risks confusion.
Backups and using multiple computers.My nightmare scenario used to be losing my computer. What if it breaks? I’ve switched most of my business management tools to cloud computing, such as Basecamp and Freshbooks. But I still have a few important files on my machine, plus all the websites I am working on. Subversion provides secure cloud storage for all those critical files. Subversion makes both of my computers interchangeable. I can right click on any folder to quickly synchronize files from the repository.
Subversion has two components: a server that stores sets files (called modules) and a desktop client for accessing the server. The Subversion server can be installed locally or on a remote machine. I prefer to use a hosted service such as CVSdude, where they handle all the details for a nominal monthly fee. Tortoise SVN is the most popular Subversion client for Windows. Tortoise asks for the URL of the repository, a user id, and a password. All files in a module can be checked out, edited as needed, and then changes are committed. Tortoise integrates into Windows’ File Explorer. Folders show a green check mark if they are current, or a red X when they have been changed.
In 2007 Forrester Research called Subversion “the sole leader in standalone software configuration management (SCM).” When something that good is free, you think most people would use it. However, most search marketing professionals I speak with have never heard of Subversion.
Jonathan Hochman has two computer science degrees from Yale. He runs an Internet marketing consultancy and a web development shop.
Opinions expressed in the article are those of the guest author and not necessarily Search Engine Land.