Which options for web development are best for you?
Website development still feels like the wild west to me (only code slingers allowed.) There are many ways to code a site, and there are pros and cons to each one. The way your site will be used, how extensible it needs to be for adding data or databases, how much content and users are some of the top considerations.
While website development is not my foundational knowledge base, I devoted time to attend web tech meetups, formal education, stretching myself to grow in knowledge. I was committed to understanding what is truly required for the most efficient, healthy, and manageable sites for both WordPress and custom-coded sites. If MEQ was to continue performing work, we needed an impeccable understanding of where to draw the line, and we needed to establish a definitive plan based on what and why. After talking with senior level-engineers who work on top brands across the world, and having one of them engage with me on a project, I became much clearer in my perspective and my opinions grew.
What are the best web practices and why?
There are quite a few languages now, and each offers very specific benefits depending on what the developer prefers and which language they like best to accomplish their goals. WordPress is the most common content management system (CMS) used for development by Marketing EQ. We have only built one fully custom-customized website on Laravel for Lazer Sport/Shimano North America.
WordPress Website Development – Out of the box themes
WordPress is what we know best. WordPress CMS can be built to look many different ways. It can be coded from the ground up, or you can use an existing, out of the box theme. There are a ton of themes too, many of which were designed from custom code, and they have been created with a set of features that may be endemic to an industry, like automotive, or real estate. But, all of the features that are built into the theme can make the site heavier affecting load speed. So if you don’t need all of that functionality, you may be getting more than you need. But in some instances, if you need to complete a fast-turn project, an out of the box theme works fine. We used a pizza theme in Divi for cjspizzas.com. It was pretty much a plug and play, with nice round containers for pizza images. That Divi theme saved us a bunch of development time and that site was completed within two weeks. It didn’t really come with extra, so out of the box was perfect.
Two themes we use are Avada and Divi. Avada comes baked with a ton of features (heavy!) where Divi is pretty stripped down, and you can add to it. But, both can accomplish an excellent result, and structuring the site data and images is pretty straightforward. Both have front-end builders, but Divi wins the “easy and fast edits” contest, hands down.
If there is a feature that is needed, and you cannot find a plug-n that is fully supported and regularly updated, then custom coding is needed for that functionality. Usually, this can be accomplished within an existing out of the box theme, but you should contact the developers of that theme first to find out. Hopefully, there’s a WordPress plugin that is both user-friendly and regularly updated. This takes the burden off of one developer. Instead, the development team updates the plugins for thousands of users.
Custom coded WordPress Website
While you can create a custom WordPress site, you are most likely going to endure much more site management and repair when WordPress and PHP require updates. Oftentimes, plug-ins and PHP can be in conflict with custom code, therefore the custom code has to be updated. In addition, custom code can be written in nearly innumerable iterations in multiple web languages from developer to developer. If a developer leaves and another has to take over your site, there could be a high degree of frustration. Do you know what their first question is (experience speaking) – Why did he/she do it this way? Then, they go about “fixing” code. But, in their attempt to fix it, they may not get it right. It’s essentially like taking a baked pie scraping out the filling, hoping a new ingredient makes it better – but it’s already baked! There is a real chance the developer will struggle, try to make improvements, and the budget for fixing the site will grow.
When a major WordPress and PHP update was performed, my neighboring web development competitors reported have to rebuild multiple sites. With all of our sites, we had a couple with plugins that had to be updated, but that was it. On the other hand, custom-code, if done right can be very lightweight without extra function and features you don’t need, and if properly supported, can work just fine. But, consider this – developers may not be “user experience” people, so you best dial in the customer journeys for your website first, and make sure you are clear on your content journeys. Otherwise, this custom-coded site may not work for your content, if the content is developed after the site. We believe that content comes first, so the design can follow.
Custom Coded Site
The reason to build a custom website for Lazer Sport was that this site would grow over time, meaning adding additional data sets in different regions, with different product codes, and eventually contain large sets of user data. This was a Laravel site and the programming language is based on PHP. It’s very fast and you only have to write code once, then it continuously and impeccably performs that task, no matter which direction it travels, and which data it fetches. This is a perfect example of why custom code is written. This site also contained custom dashboards with product registration and review. It included an admin dashboard as well. The purpose of the site was specifically for a warranty program that extended the warranty for 18 months. Therefore, it included an uploader for receipts of helmet images, and also had custom reporting built into it so specific reports could be downloaded monthly. This had a very specific purpose, and in this instance, custom code made the most sense.
In my quest to understand the variables in custom development that create variables of conflicts from developer to developer, I leaned on Steven Jadzewski, a trusted advisor who worked with me on the Lazer Sport site. Steve follows the highest standardization in development. Best practices for custom code uses Behavioral Driven Design and Testing Driven Development. BDD is written in plain language that describes the function. This means we write the action to be performed, then it is coded exactly as it’s written. When we make changes, they are always documented at the front end so we always know how it’s coded. Tracking the changes and having control of them before development means no surprises! Through this clarity, I am fully prepared for new projects using the proper processes and never losing control. This transparency for every client is required and will keep web management running smoothly with little bumps in the road.
Let us know if this was helpful, or, if there are any questions, please reach out to firstname.lastname@example.org