By David Shreffler, Director of Development
Website and app development is the culmination of literally thousands of coding decisions made over the course of a project. The number of details hidden “under the hood” of a web or app project is staggering. As a marketing director, you probably don’t understand all of those details but you’re the one that’s being held accountable at launch.
Sure, it looks great but how reliable is it? Have all the bugs been worked out? Is it fast for all users, and does it work across all devices? Can it be easily updated going forward? Can new functionality be added without significant rework? Are there any security risks?
The answers to all of those questions lie in the quality of the development process. But no one really talks about it. Short on time? Cut down on dev time. Even the best-intentioned developer can begin to jettison best practices. Code just until it works, minimize testing, skip commenting (brief notes developers add in the code to explain confusing sections to aid in readability and make future updates quicker), ignore performance, neglect security. … The list goes on.
Why development best practices matter.
The cumulative effect of these coding shortcuts impacts the total cost of ownership of your new website or app. The challenges that you might run into are post-launch bug fixes, slow site speed, lost revenue due to lackluster SEO, out-of-date plugins can’t be updated, hard to make simple content updates and little ability to scale/grow your site with your business.
Clean code and a finely-tuned development process have these benefits:
- Reliability – Solutions are built considering all use cases, rather than a surprise edge case breaking the site. For example, a blog template may look good in development, but what happens when someone posts with an unexpectedly long title? Is it displayed correctly, or does it run off the page or wrap incorrectly? Specific to WordPress, the decision to use a plugin is balanced with the desire not to reinvent the wheel with the need to select reputable and stable plugins. Minor functionality is integrated into the core theme rather than seeking additional one-off plugins.
- Security – Creating a secure product requires additional consideration, as websites and apps are not inherently secure. Experience with proper development practices, though, allows security best practices to be applied throughout a project rather than reactive, post-launch efforts. With WordPress sites, one of the easiest ways to maintain a secure site is to ensure that core and plugin updates are applied regularly (see below, Upgradability).
- Performance – A slow site now has direct costs: reducing SEO performance and subsequent organic traffic, increasing bounce rate, and increasing IT infrastructure costs. Building a fast website or app during initial efforts is cheaper than retrofitting performance fixes post-launch.
- Mobile – Mobile support is more than just making sure the site is readable on a phone. It’s about the entire mobile experience. How do the needs of mobile users differ from desktop users? Can mobile users find what they need quickly? Does the site work well with touch input? How does the site load with slower cellular connections?
- Compatibility – Another way of thinking about compatibility is “audience reach.” How many customers are missing out if your site or app only works on some browsers or devices? Attention to compatibility during development paired with a rigorous QA process ensures your website or app is working its hardest.
- Maintainability – Well-organized and commented code extends the lifespan of a website or app. Without a conscious effort toward clean programming, tens of thousands of lines of code can quickly become chaotic. Known as “spaghetti code,” it requires increasingly more effort to perform even basic updates. Sloppy code can also require rebuilding from scratch before it would otherwise be necessary for other business reasons (rebranding, new initiatives, etc.).
- Upgradability – A site built on standards maximizes interoperability with future updates. This benefit allows new features and content to be added easily, as well as issue-free updates with WordPress core and plugin updates.
- Manageability – Different than upgradeability and maintainability, manageability relates to the effort necessary for clients to make routine changes to their sites. If financial details need to be updated, can a single spreadsheet be uploaded to the site, or is it a laborious data entry process? Does a copy change need to occur on every page, or is there a single spot to make the change globally?
While it sounds like the only solution for a reliable outcome is to spend more, an experienced agency partner can significantly reduce this cost. The key to this efficiency is making development best practices a habit rather than special exercises.