Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re: How to calculate development time?

by pop (Scribe)
on May 31, 2001 at 18:59 UTC ( #84586=note: print w/replies, xml ) Need Help??


in reply to How to calculate development time?

Here's my personnal experience. I have developed two years ago a similar site. I was student, perl newbie, apache intermediate, SQL newbie, XML very-newbie, good knowledge of linux etc...

I had some technical knowledge in SQL, perl and so on, but no concrete experience. My colleague and friend (student too) was at the same level than mine.

We've spent 3 months full time plus 2 months coding during the night. And we went with a mod_perl (Apache::Registry) site, XML & SQL data, Template system (HTML::Template)

This site was a rewriting of an older one (mod_cgi + msql + print $html; + no cookie + no session :)))
Finally, the site major features were : Job posting, Resume posting, candidature system, application letter, Pro directory ...

I hope this help you to figure out the developement time, but I guess that it depends on plenty of details... So the other posts should be more precious than this one :)
Have Fun!!

Replies are listed 'Best First'.
Re: Re: How to calculate development time?
by Siddartha (Curate) on May 31, 2001 at 19:19 UTC
    Thanks a lot.

    The other posts does give me a better idea of what to do, but it is really nice to get some actual concrete ttimes. I do really hope that I can do it quicker than you did.

    I am doing it on my own (Mad, I know :)). I know CGI scripting quite well, even though I have not used MySQL with Perl at all. I know basic SQL query syntax, enough to update, delete and select data from tables. I don't know if I'm going to use XML at all, not yet anyway. I know a lot about linux, but unfortunately only have FTP access to the site.

    I am writing this from scratch.

    I have about 4 months to do it, and can only work on it part time. I basically need to know if I am going to crash and burn?

    I would really appreciate any specific comments on what to look out for when developing the site.

    It will be a very basic system to start of with;
    Job posting, resume posting (both as Form data), and search for current jobs/employees. My biggest problem at the moment is that he wants credit card billing for Employers when they post jobs, and I have no idea how I am going to do this. At the moment I am thinking of using someone like NetBanx to handle this for me.

    Once again thanks for all the wonderfull fast replies.

    -siddartha

      I wouldn't take credit cards unless you can control the server. Taking credit cards is a big responsibility, and you will have a hard time proving that you did it correctly should anything go wrong. Although I am used to US liability laws (and am therefore paranoid about such things), I wouldn't want to be the one who got sued because someone hacked into the ISP and set up a credit card sniffer.

      I set up a credit card system and found it to be painful, because I had to deal with:

      • Learning how credit cards really work. This isn't as simple as you might think. There are many issues that I can describe if people are interested.
      • Dealing with the US Department of Commerce denial list. They keep a list of bad guys that I wasn't allowed to sell to.
      • Security reviews by a guy who was long on paranoia and short on real knowledge. He insisted that I implement a really twisted system that had performance problems.
      • An antiquated order processing system in the company.
      • There were many more...
      Once the site is running, you need one or more people in a production and support role. This is the area that many people don't think about at all, and it makes many sites fail quickly after deployment.

      Given the level of experience you have described, the tools that you have available, and your time frame, it sounds like a crash-and-burn to me. Debugging problems will be extremely difficult, especially with your credit card system, which is difficult to prototype. For example, say your credit card transaction times out. How will you solve the problem?

      It should work perfectly the first time! - toma

      Hi Siddartha,

      I would /msg this but it's going to be too long, sorry everyone for this ad-space!!!

      Apart from Netbanx, you could also try WorldPay. They claim you can get set up with them in around 48 hours - (in reality it takes a little longer because of form filling). There are the following benefits:

      • You have the option to accept payment in multiple currencies
      • It's very easy to integrate, although the look and feel is not very customisable.
      • You don't ever store any credit card information so you don't have to worry about cc info being stolen from your server.
      • They handle repeat billing for you automatically - e.g. subscription fees.
      • web-based statements and refunds facility for the merchant
      There are loads more options in the UK for credit card billing such as securetrading - but that is much more work to integrate and get set up with them.

      On another note, you'll need to decide about who owns the intellectual property, copyrights, etc. Plus, make sure you don't give them the site without getting paid. If this is your first job, then you might fall into this trap - because it's really easy to think that you need to be very accomodating to the client without covering yourself.

      A client of mine developed a job site for someone and has only received about 10% of the fee even though the site was finished about 9 months ago.

      Bottom line: try and get everything in writing, if possible arange for some payment up-front or after the first phase is ready for the clients to see.

      $code or die
      $ perldoc perldoc
        Hi, It's nonsense that SECURETRADING takes longer to integrate, they can have a test site up in 10 minutes, to go live would take a bit longer depending on the site/shopping cart. They also have 2 options Xpay, which is xml based and payment pages. It's getting an internet merchant account and bank numbers that takes the tims. SECURETRADING is also cheaper than the others, and without hidden carges for multi-currency, fraud control and support. TRY THEM.

      In fact, I think that a very basic system for beginning could be developed quickly. As I said, my site was an enhancement of an older one, so we have spent about one month wondering how we could add the required bunch of features to the older site. (In fact, the resultant site was quite complex, featurefull...)
      So, you should gain one month :)

      You should gain more than one month since we had to learn the usage of CVS, XML::Parser and how to use Apache::Registry. More important, we had to find these tools. It's not obvious when you're just-a-newbie, and you don't know how-to-do and why =)

      Nevertheless, it takes time. A lot of time, since there are always problems, and your boss/client always add some feature enhancement... (that's why it's important to have good written specs and a good contract, as it has been said in other posts)

Re: Re: How to calculate development time?
by markjugg (Curate) on May 31, 2001 at 22:13 UTC
    Here's another note from personal experience. I've also helped developed a similiar system, using Perl and Postgres. I think our project was toward the small end. The features included:
    • Users could set up accounts and update their personal information.
    • Admins could add an update jobs and basic organizational information
    • Public could browse through jobs by category.
    The site was small enough that we didn't need a search engine, or mod_perl, or XML stuff. There were 12 fixed organizations that could post, so we didn't much interface to manage that end. I believe we spent about 50 billable hours on that. (factor in that we already have strong Perl and SQL skills and have full control and access to the hosting environment.)

    I agree with all the other folks that getting a clear spec with as many details as possible before you start is a Good Thing. We usually develop a functional mockup first, using static HTML and JavaScript clickthroughs on the forms. When that is refined with the client then we use that as the core of the final spec, and make a refined estimate with it.

    -mark

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://84586]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others surveying the Monastery: (4)
As of 2021-02-26 01:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?