Recently I’ve been offered projects with unrealistic deadlines. This has got me thinking about the issue. Unfortunately, many entrepreneurs and business people lack experience in initiating web development projects so they make some common mistakes. How you propose a project can give web developers the wrong impression. If you just follow the bad examples you find online, you will be sending warning signals to web developers and then you will find it difficult to get anyone onboard.
In order for your project to appear attractive to a web developer you must avoid the following:
- Setting an unrealistic deadline
- Offering experience in lieu of payment
- Offering a partnership in lieu of payment
- Holding out the carrot of prospective work
- Asking for a clone of a major web site
- Hinting that there will be feature creep
- Asking for work on spec
Web developers are frequently burned by accepting these projects so you will be sending warning signals if you propose a project under these terms. Web developers will mercilessly mock anyone who comes to them with these kinds of projects. Here are some examples of the kind of scorn you could inspire.
http://clientsfromhell.net/ – a popular web site that mocks the client from hell. Don’t be this guy!
Top 10 Ways to Fire the Client From Hell -developers will ditch a bad project
I suspect that many business people just don’t know any better so I’ve decided to write a few articles on the proper way to pitch your web development project.
First I want to discuss the unrealistic deadline. A project appears to have an unrealistic deadline if the scope of work exceeds what a single developer can achieve in the given timeframe. Unfortunately, there is inherent complexity in web development so you can’t really accomplish much of anything right away. There will always be unexpected technical problems that cause you to lose time. Then there are projects that are simply ridiculous. It is equally important from a client’s perspective to make reasonable requests. You will certainly not get what you ask for when you are asking for the moon. And if you do find an unscrupulous developer who will undertake a project that he cannot complete then you will just be wasting time and money. The following factors will prevent a project from being completed on a timely basis:
- Proprietary application frameworks. If a web site was built from scratch by a previous developer, then it will take time for a new developer to figure out how it works.
- Code and platform conversions. Converting a project from PHP to ASP.NET or ASP to ASP.NET or ASP to PHP is a time consuming process which will require a lot of testing. Also, moving a site from Windows to Linux or vice versa always causes unexpected technical problems.
- Being asked to clone an existing web site. Major web sites like eBay, Amazon, and even Twitter were not developed by a solitary programmer in a week. These sites represent major IT projects that probably required extensive planning, a huge budget, and a team of expert programmers. Also building a web site to scale so it can handle that kind of traffic is not a trivial task.
- Revolutionary concept and new technology. If it has never been done before, then it will take extra time to figure out how to accomplish it. Also, with new technology nobody is going to have the extensive experience to bat something out right away.
I am not very enthusiastic about projects which need to be done in a week, yet promise technical difficulties which will surely take longer than a week to solve. Accepting these kinds of projects means dealing with an unhappy client who may refuse to pay his bill.
As I mentioned previously, web development has a certain inherent complexity. Any attempt to cut corners or speed things up will fail. Various schemes have been tried to turn the whole process into a cookie cutter operation for greater efficiency. All of these schemes have failed. For example, outsourcing the work to India usually fails, especially when it is done to cut costs, because the last thing you want to do is introduce another factor into the project, like all the issues that come from dealing with people from another culture. Then there are the rapid web development platforms like Ruby on Rails. These work fine for the initial stages of a project but eventually the complexity worms its way back in and then you are wasting a lot of time working around the limitations of Ruby on Rails. Web application frameworks like Drupal do seem to offer some promise for rapid web application development but first you have to master the framework.
In conclusion, it is important to set a reasonable deadline for your project. Unrealistic expectations will not be met. You will probably just drive away the professionals who are capable of completing your project if you make unreasonable demands. Of course, for the right budget you may be able to hire a programmer rockstar who will make a superhuman effort to complete an impossible project on time, but your budget will have to be considerably higher than $300. LOL!