These are the experiences of a layman who has paid the price for presuming he knew enough about web development to manage his website projects.
My first projects started with me seeing a cool template that I liked, getting excited, and automatically over simplifying the whole process of launching the project. The result was spending way more time and money on a project than anticipated and not getting the result I hoped for.
Projects hardly ever go as smoothly as you think they would but experience showed me that there were three main pitfalls: Budget, Technology and Accountability.
The first major pitfall a lot of businesses encounter is underestimating the actual costs of a project. We usually envision a Mercedes-Benz that shouldn’t cost more than a scooter. That doesn’t work when buying a car and certainly not in web development.
Everything has a price, which brings us to two common mistakes in budgeting.
High expectations result in disappointment. Do not expect a second Amazon when you are planning for an e-commerce site for winter socks. Or even worse, do not expect a site like Amazon when your budget is hardly enough for a Shopify store.
Manage your expectations and be realistic.
Define the functions you need and what services want to offer early on and stick to them. A mistake I repeated very often, was to get carried away with all the possible options. I would want an extra video here, a popup there or some other option that would turn out much more expensive than I imagined.
Changing plans all the time not only strains your budget and delays your schedule, it can also have consequences regarding the frame you choose for your web application. Which brings us to the second pitfall.
On my first projects I thought the only technical choice I had to make was between WordPress, Drupal or Joomla. Until somewhere down the road a developer mentioned technology stack, I now know how important it is to choose the right technology stack for web applications to get the desired outcome.
A lot depends on what is the expected input, how it is processed and the result should be delivered. The visual packaging and administration tools also play an important role in the stack elements.
As mentioned above it is important to determine the application’s architecture before a developer can advise you on the right approach. A feature that might seem minor to you, something you would take for granted, might need a completely different back-end solution as originally planned. Don’t take anything for granted, a small feature might turn out to be a mammoth task.
Too many cooks spoil the broth.
When you have finally got your act together, and are ready to start a project, make sure that only one person is responsible for communicating decisions. It doesn’t mean that only one person should make the decisions but there shouldn’t be any ambiguity in who tells the team what to do.
Imagine you contract someone to paint your living room and everyone who passes through makes a comment on how they would like it and the painter does what they say. You’ll end up with a room that no one really likes, cost much more than expected and, most probably, has to be redone.
It is also important that one person, at least, has an overview of the project and owns it. This speeds up decision making processes and makes it easier to detect, and solve, problems.
There is a lot more to a web application than meets the eye. Extra expenses needed for the server, maintenance, technical support, administration and security were just a few things that I learned the hard way.
Don’t get fooled by cheap solutions, don’t fall for overly expensive solutions and do not rely on a random blog post that popped up when searching. Do your homework, listen to the geeks with a track record and tame your expectations, then there is a good chance that you’ll get what you want with less headaches than I had.