Ask HN: Tool to know approximate price quotation for a given job?
4 comments
The thing is, non technical users usually don't actually know what they want. To me this is half of the skill as developer is trying to get what they need, not what they think they need.
For example, my users ask for "another excel to upload this to the database". I know that excel is a terrible error prone solution, so refused, and gave them a web interface, with immediate feedback about errors. They are pleased with the result, because the information is taken from the database, not cut and pasted out of the database into excel, then parsed again. Speaking to the user is important.
The other problem is time estimation, which as most developers will tell you, is not easy.
For example, my users ask for "another excel to upload this to the database". I know that excel is a terrible error prone solution, so refused, and gave them a web interface, with immediate feedback about errors. They are pleased with the result, because the information is taken from the database, not cut and pasted out of the database into excel, then parsed again. Speaking to the user is important.
The other problem is time estimation, which as most developers will tell you, is not easy.
I would start out by documenting all of the deliverables of the project. Then breaking out each of those deliverables into a manageable chunk that you can reasonably estimate the price based on labor and materials that it would cost YOU to perform the task.
Once you have broken out all of the components of the job, you will then evaluate all of the potential pitfalls or risk of the job where it would increase the price, try to quantify the price of those and what you estimate the likelihood that it will happen.
Based upon all your risks, calculate what will be the most likely scenario, more than likely at least one of your risks will materialize during the project. Now take the total of the base cost of what you thought the job combined with the likely risk value and add the profit you would like to make on the job.
If you negotiate up front with your client the deliverable items, and be very specific as to the cost for those items with your risk and profit built in you will be in a very good position. As the client asks for new features you will need to recalculate your risk and renegotiate the price. Its a good idea to never work without negotiating the scope of work and the price.
As a project continues you will need to evaluate how much its costing you to do the work that you thought you could do for X dollars. This is why its really important to breakdown the work into manageable chunks. More than likely, you will continue to perform at that efficiency going forward, and you will want to evaluate based upon that knowledge if you will be under or over budget.
Once you have broken out all of the components of the job, you will then evaluate all of the potential pitfalls or risk of the job where it would increase the price, try to quantify the price of those and what you estimate the likelihood that it will happen.
Based upon all your risks, calculate what will be the most likely scenario, more than likely at least one of your risks will materialize during the project. Now take the total of the base cost of what you thought the job combined with the likely risk value and add the profit you would like to make on the job.
If you negotiate up front with your client the deliverable items, and be very specific as to the cost for those items with your risk and profit built in you will be in a very good position. As the client asks for new features you will need to recalculate your risk and renegotiate the price. Its a good idea to never work without negotiating the scope of work and the price.
As a project continues you will need to evaluate how much its costing you to do the work that you thought you could do for X dollars. This is why its really important to breakdown the work into manageable chunks. More than likely, you will continue to perform at that efficiency going forward, and you will want to evaluate based upon that knowledge if you will be under or over budget.
I don't think you can beat human experience here. Try to find an experienced freelancer or ex-project manager which is willing to make some side money by helping you negociate your contracts. I don't work in freelance, so I don't know the feasibility of my advice though.
Given only the task "move a VPS from one hosting provider to another", "rand(1000000)" is a decent estimator. ;)
But seriously, there are an incredible number of variables in this situation. Here are some I've encountered moving VPSes:
* is the code in source control?
* is the ACTUALLY RUNNING code in source control? This is different from the first one.
* how many services are running on the VPS? Moving a PHP webapp is one thing, moving a multi-process app that's using multiple daemons is quite another.
* has anybody documented the setup? Little changes in /etc can make a big difference.
But seriously, there are an incredible number of variables in this situation. Here are some I've encountered moving VPSes:
* is the code in source control?
* is the ACTUALLY RUNNING code in source control? This is different from the first one.
* how many services are running on the VPS? Moving a PHP webapp is one thing, moving a multi-process app that's using multiple daemons is quite another.
* has anybody documented the setup? Little changes in /etc can make a big difference.
No code in source control.
It's a wordpress website with a big DB and heavy traffic.
I've read that I could use WHM cPanel facility to backup and restore the website into another VPS in which I will install cPanel. From a forum I saw someone else with same task being adviced to do this:
---------------------------------------
1.Check versions of php,mysql,apache, and check whether the required php-apache modules are enabled on the new server.Check whether the exact php handler enabled on new server(like suPHP or fastcgi)
2.Create packages as like old server.
3.Ensure Dedicated IPs for the accounts are assigned properly, and ssl too.
4.Check the ownership and permissions of the accounts(sometimes permission/ownership issues will occur on cpanel-cpanel migrations).
5.Perform cPanel WHM migrations
---------------------------------------
Then, how much should I charge for this, including possible go-wrong scenarios (hopefully not hehe but..) ??
It's a wordpress website with a big DB and heavy traffic.
I've read that I could use WHM cPanel facility to backup and restore the website into another VPS in which I will install cPanel. From a forum I saw someone else with same task being adviced to do this:
---------------------------------------
1.Check versions of php,mysql,apache, and check whether the required php-apache modules are enabled on the new server.Check whether the exact php handler enabled on new server(like suPHP or fastcgi)
2.Create packages as like old server.
3.Ensure Dedicated IPs for the accounts are assigned properly, and ssl too.
4.Check the ownership and permissions of the accounts(sometimes permission/ownership issues will occur on cpanel-cpanel migrations).
5.Perform cPanel WHM migrations
---------------------------------------
Then, how much should I charge for this, including possible go-wrong scenarios (hopefully not hehe but..) ??
Maybe this can be a neat idea for someone to make, if there is not something like that? Or maybe it's already there, but being not a native English speaker perhaps I just cannot find the correct wording to google for that..
Anyway, any help is appreciated!
Thank you.
p.s. I'm actually interesed in how much to charge to move a vps from a hosting provider to another hosting provider.