It’s important to understand what you’re buying when you purchase website development or programming services. Not understanding the nature of the work or the expected outcomes, costs and challenges is a major reason for project failure in technical development.
Let’s start by addressing what “development” or “programming” is not:
- Development is not graphic design. We know a sadly misinformed business person by their confusion over the difference between designing and developing. While developers sometimes have some design skills, and might use them to tweak certain parts of an interface that does not constitute a formal design process like that provided by a professional graphic designer. A design process is generally the process that happen before, or in conjunction with a separate development process. In other words you should design first, then build. Development is building, not designing.
- Development is not a safe, certain, guaranteed process with a predictable result. While developers and development processes vary in skills and quality, no matter what the level of quality there is an inherent unpredictability to both how longs things take (time), how much they cost (money) and what the problems involved will be. If you want to do something predictable, build a bridge or a house, if you want to accept uncertainty, build a website or piece of software. It’s a bit of an exaggeration but people who believe that building websites is simple enough that exact time-frames and costs can be determined prior to a project are in for constant frustration when face with the reality of the technical challenges involved.
- Development is not coding. This is a bit of a trick because coding (and/or programming) are parts of what development is and does. However, to be clear there is a difference between “development” as a process and a service compared to “only coding”. Very few projects are entirely about coding. At the minimum, a development is a combination of Project Management and Coding/Programming. So even if you hire a single freelance developer, and rely on them for 100% of the work, you are really hiring Dr. Jekyll the coder and hopefully Dr. Jekyll the project manager. Sometimes you’ll get Dr. Hyde the development that is too overworked and underpaid to play project manager, which is part of the risk of hiring a freelancer instead of a firm that isolates these roles.
So what exactly are you paying for and aiming to get when you buy “development” from either a development firm or a freelance developer? I’d say the important parts look like this:
- Communication and responsiveness. First and foremost you’re buying the right to call on somebody for help when/if needed during a project or after if it’s an ongoing relationship. Don’t underestimate the value in this because if you ever find yourself owning a website, but not having a developer, you’ll know that this is not a good position to be in if the site is at all important to your business. The communication part has to be clarified by saying that ideally you’re paying for professional, skilled communication, meaning when you ask about making a change to a part of your website or you report a bug, the person responding is qualified to give an expert answer. It definitely costs the firm money to “be available”, so realize having developers available even during times you don’t have need for them has value and saves you spending a lot of time searching for help when it is urgently needed.
- Project management and planning. Most failed projects fail in the first stage, planning. We see many partially finished websites that were doomed to fail simply because neither the business nor the original developer ever made any significant plan. And the things that some business owners think will pass for “a website plan” are shameful. Thinking of building a website like building a house, except it’s way more complex because houses don’t usually have variable rooms that only appear when the house detects guests. Like the dynamic guest room that only pops into place when your in-laws visit. Or the games room that replaces your office the moment that your friends arrive to watch the game. To take nothing away from the many skills it takes to build walls and properly insulate and wire houses, most house development is a clearly documented structured process. Still we’d question the sanity of the house builder that never produced a blueprint. A good development firm will either make sure you’re existing website plan meets a good standard, or will level with you and tell you that you need to formulate a better plan. And they’ll have the skills and process in place to get the information and structure into the plan that is required for design and development.
- People that care about standards and quality. As in any industry development has people who genuinely care about quality of the work they do. Regardless of the relationship, the budget, the other factors that might play into it they want to do good quality work and be proud of the finished result. You want these kind of developers whether they are freelancers or work in a team. You won’t usually find these kind of developers working for cheap, but their not always the most expensive either. It has to be said that the other kind of developers, who often lack serious skills but do a decent job of marketing themselves, these kind often charge the highest fees of all. There are bad development experiences to be had at any price range from $500 botched websites to $20,000 unfinished buggy software. And conversely there are good experiences to be had with budgets in the same ranges. A lot of the onus is on you the buyer, not just to beware but to be savvy. While there is no excuse for the poor work of some firms out there, the buyer must be responsible for rewarding quality and hiring quality-focused firms.
Final word on what is development. From my perspective both as a developer, and a site owner development sits at an important position in terms of how a business functions. Your website is the central hub of any digital marketing you do. Working with API’s may be critical to implementing marketing automation. For more and more businesses their online sales is the majority of their overall sales, or in some cases all. There is an important relationship between development and marketing in any business today. More businesses should maximize their use of digital marketing and especially the wealth of available marketing avenues that have little or no cost. Often a developer is the gateway to achieving that goal.