Common issues with web projects

Needs not needed

This is probably the most common one: many clients come up with a long list of needs, which would require a huge system. If they have enough money to build this system and you actually end up building it, you will most probably be frustrated by the fact that they end up really using only 10 to 20 % of the features you built… There are various causes to this: some clients would like to have a system that will handle every single possible case that could ever possibly happen, and could make you spend a huge amount of time on an edge case that will never happen; others just have no idea how much time, effort and money is required to build feature X, and they just throw a list of features at you “just in case” they might be needed in the future.

  • If your client has enough money to build this giant system, and you don’t mind wasting your client’s money, then you could just build it ! If you’re like me, you’ll still end up frustrated from the fact that what you’re building is actually not being used, no matter how high the paycheck is.
  • You could try to convince your client that he will be better off not building this feature, because he doesn’t really need it. Depending on the person you have in front of you, it might be hard, but it can work.

Reinventing the wheel

If you work for big companies or big international organizations, you will most probably have to deal with many of their sections. Given that each section works independently from each other, you might find out at some point that the work you’re doing has actually already been done more or less for another section of the company, and that you’re just redoing (maybe with a fancier, newer programming language and platform) what has already been done 2 years ago for another section.

Over-engineering

This issue is one that is not related to the clients, but to the love that some tech firms and individuals have. If you’re building a simple Drupal site with a few static pages, a blog and, say, a few events, do you really need to use Grunt ? Do you really need SASS + Compass ? Do you need a fully virtualized environment with Docker or Vagrant ? How many dev ops do each of these elements add, and for which real benefit ?

  1. How much time are you spending on dev ops vs on the actual project ? If you spend more time on dev ops than on the project, you should probably give it a second thought.
  2. If some day you leave the project, how hard will it be for someone else to get up to speed ? How many things will the newcomer have to learn ? How many steps will be required to install the dev environment ?

--

--

Développeur web et passionné de finances personnelles

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Guillaume Viguier-Just

Guillaume Viguier-Just

Développeur web et passionné de finances personnelles