Development time / cost for your website

Discussion about the Geocaching Australia web site
User avatar
caughtatwork
Posts: 17016
Joined: 17 May 04 12:11 pm
Location: Melbourne
Contact:

Development time / cost for your website

Post by caughtatwork » 06 June 11 10:54 pm

This is not an attempt to garner kudos, this is simply another set of statistics that I thought you might be interested in. Seriously, we do this for love and not money. You can't afford us :mrgreen:

I was interested in seeing how much work we'd put into the Geocaching Australia website in terms of code changes, code maintenance, bug fixes and background changes that you don't get to see but improve the site in terms of performance and download sizes. CraigRat has been extremely busy so far this year at his regular day job, so his contributions in terms of code development have been less than mine so far, but his effort on a regular basis applying maintenance patches and releases to the OS, DB, Webserver and PHP plus the work he has done on the mobile site would end up resulting in a similar effort.

From 1-Jan-2011 through 30-May-2011 (5 months).
There were 186 code releases made*
There were 764 pieces of code released **
I spent 323 hours on making code changes***
5 months = 149 days (I work weekends :-))
That's an average of 2.17 hours a day I spend on GCA coding****
323 hours @ $75***** / hour = $24,225

Assuming CraigRat at a similar rate even though a SysAdmin would garner a higher rate, together we have provided nearly $50K worth of code to the Geocaching Australia community for the first 5 months of the year. Assuming a similar burn rate for the rest of the year, we will put in nearly $120K work of development time and effort through to the end of this calendar year.

I think our rate of code and feature production has been somewhat consistent over the last 5 or 6 years, so excluding the code base which we inherited from Ideology and the effort in the early days of Ideology, Riblit and SwampGecko, the last 5 years has garnered some $600K worth of development effort. Including the original code base and the few years of development prior to CraigRat and I joining the development team, the "worth" of Geocaching in pure code terms probably approaches $1M. That doesn't include goodwill or other non-tangibles.

This is is a similar number of to what we counted a while ago in terms of Lines of Code and "features", so this analysis is probably more of a confirmation that anything.

Of course, feature has been built on feature and we have had a long time to generate the rich features that you and every other community member enjoys. If you were to build something from scratch (say www.opencaching.com) the richness of the features would probably not be available on day 1, so you'd be feature poor for a year or so (which again seems to be evidenced by www.opencaching.com)

I suppose when you add it all up, GCA has been a listing site since December 2004 with http://geocaching.com.au/cache/ga0001 Asia Quake and Tsunamis Appeal (Australia) so we've had a good 6 years of feature building behind us and the value that Ideology provided to all of us has been a sensational grounding on how we've built other functions and features.

Again, this is not a prompter for kudos or adulation (please throw money, paper preferably). We do what we do because we love it, the site and the community.

* Excluding any debug releases, but including bug fixes due to differences in development / production machines.

** GCA is a modular system which is not quite Object Oriented, but not exactly procedural.

*** Excluding the DB performance enhancements which were an additional 20 or so hours of prep, run and test.

**** Excluding admin time in the forum and the shop.

*****The going rate for an onshore experienced web developer (HTML / CSS / JavaScript) and programmer (PHP) as well as knowledge of SQL and Database design will run you somewhere around $80K for a permanent role and about $120K-$150K for a contract role. Mumbai will provide something cheaper and you'd get exactly what you paid for :-)
Assuming this is a contract role (i.e. if I up and left and CraigRat decided to head to Antarctica for a while) and GCA had to employ contract labour to improve / maintain the site as well as fix any bugs, you would be up for an hourly rate of around $75 per hour.
I am a programmer of some 20+ years experience starting in 1987 as a programmer in the State Bank of Victoria and moving onwards and upwards through the ranks of analyst in the bank, moving to Telstra in 1993 and emerging as IT Program Manager from 1997 onwards. I am currently operating as an IT Project Manager (including Infrastructure Deployment Management) and my portfolio is around $5M in CAPEX spend per year. My role in web based services started in 1996 with pure HTML and I got into PHP and DB solutions starting in 2002 and I joined the development team at GCA in 2005 (I think).
I think my experience would qualify me for the rates listed above without any problems whatsoever (although I hate JavaScript with the fury of a thousand burnings suns).

Damo.
Posts: 2183
Joined: 04 April 04 5:01 pm
Location: Jannali

Re: Development time / cost for your website

Post by Damo. » 06 June 11 11:25 pm

We are so lucky to have you here! =D>

Laighside Legends
10000 or more caches found
10000 or more caches found
Posts: 1304
Joined: 05 October 10 10:20 pm
Location: Australia

Re: Development time / cost for your website

Post by Laighside Legends » 06 June 11 11:29 pm

Wow! :D
Thanks again (x100) :mrgreen:

How do you keep track of the hours?
On a comparison, what would groundspeak be worth?
If only there admins were as customer focused...

Thanks for all your hard work! =D> =D> =D> =D> =D>

User avatar
rogerw3
8000 or more caches found
8000 or more caches found
Posts: 683
Joined: 26 July 09 11:11 am
Location: Lithgow

Re: Development time / cost for your website

Post by rogerw3 » 06 June 11 11:47 pm

=D> =D>

I knew you guys put in a lot of time for our benefit, but I certainly did not realise how much time and effort you are putting into the web site day in and day out.

This has to be a unique contribution to any hobby and I am sure that all Cachers out there are extremely grateful for your work.

Let's not forget that as well as the web site work c@w also runs the shop and designs most of the Pathtags.

Well done guys, words cannot express how grateful the community is.

=D> =D>

User avatar
caughtatwork
Posts: 17016
Joined: 17 May 04 12:11 pm
Location: Melbourne
Contact:

Re: Development time / cost for your website

Post by caughtatwork » 06 June 11 11:54 pm

Like any good project manager I produce a TPS report once a week and I never forget to put the coversheet on :mrgreen:

The hours are a change by change estimate. We use svn as our software version tool. Each time we commit a change to the repository and load it up to the site we make a comment about what was done and why we did it.

Examples (the comments are directly from svn):
Make instruction for publishing a cache more intuitive and link to the log page.
About 1 hour of analysis, code, test, push to production and PVT (Production Verification Test).

Give all tables a class. The default class for a table is 'stdtable' and sets it up with a padding of 2px. This makes for a consistent layout. Gallery is still set at the table level in the HTML as IE does not yet fully cope with 0 padded and spaced CSS. Will they ever get it right?
There were 82 files in that change. I spent most of Sunday working on it. So I estimated about 8 hours. Analysis and determining what to change was about an hour. Making the changes per file wasn't significant per se, but with 82 files changed I need to unit test 82 different functions. That took a while. Even at 90 seconds change and 2 minute test that's nearly 5 hours there. There were some challenges in trying to get IE to work before giving that away as a bad joke, another hour or so. Then the push to production and PVT to make sure nothing was too badly broken.

Add hover highlight.
2 hours to get the classes working and testing all the necessary bits and pieces. It probably took 30 minutes to get the shades of grey right so they weren't too dark, but contrasted enough. UI design is painful (for me) and can take a lot of time to get right so we benefit those with poor vision as well.

Remove border='0' from all images and add img to the CSS to have a 0 border.
About 2 hours. Similar deal to the above. This is not something you see, by the way. This is a benefit "behind the scenes" in that we can create cleverer / more lean code so there is less coming down the pipe at your end. With a style (in a once downloaded stylesheet) we can remove all the border='0' attributes from all images (imaging the cache lists with all those little icons and hundreds of the same (now redundant) attributes. Wheeeeeeee!

Make Dashboard all tabby driven.
About 8 hours. This is all AJAXy and I had to learn quite a lot to get it going. It ended up being quite clean in the back end and achieved a clean layout and UI representation. I even added an AJAX loading icon so you know when the tabs are ready to click. Simple end result, still hate JavaScript :-)

Add different coloured markers for GCA caches
More JavaScript. Booooo! Test was the big thing as maps are important and I didn't want to break anything. About 2 hours.

New AJAX loader for logs.
More AJAX learnings and stuff. Took about 8 hours, especially as there was a performance hit when I sent it live. Difference between my development machine and the production machine with a fully loaded DB. Some last minute and quick tweaks to accomplish teh job. That also creates a building block for the future, so well worth the time investment.

New GPX Importer
You won't see anything much out of this, but it was an entire rewrite to make it more modular and much more capable of handling additional GPX feeds. About 16 hours over 3 or 4 days to get it right. Nothing worse than having a few thousand caches and logs turning up and getting it wrong. Testing was a major component of that bugger and I still ended up with a bug or two that had to be fixed.

Commit changes for new column listsite and to remove substr() for GC or TP, etc, etc.
Back end performance changes. About 8 hours of analysis, code and test. However, performance has been a ripper. 209 files changed.

New graph software. All in one class rather than many, many classes, 1 for each graph type. Now is much easier to maintain.
Maintenance improvement rather that performance or "visual" changes. There were 6 or 7 graph classes and now they're all in one enabling code reuse rather than "cut and paste" proliferation of functionality. Major work on this one at around 40 hours. This was especially tricky to debug but I nailed them all in the end and none ended up in production. This was especially tricky with regards to trend line calculations and shaping the trend lines when the exited above or below the chart region and the right places to "cross the lines".

So each set of changes I can estimate based on what the description was, how many files were changed, the test regime to cover off all the functionality and push to production and final PVT before claiming success.

As with anything we can't catch every single error as sometimes our test databases don't cover all the situations which is why we appreciate bugs being reported. We hope that we squash them flat as soon as possible to ensure your enjoyment of the site remains at its highest.

Tuena
6500 or more caches found
6500 or more caches found
Posts: 541
Joined: 17 November 06 11:38 am

Re: Development time / cost for your website

Post by Tuena » 07 June 11 12:29 am

I would throw money at you (please throw money, paper preferably) however our notes have been polymer for many years now so the few $1 & $2 notes I have wouldn't be worth much.

Seriously I am very appreciative of the effort you & CraigRat put into the site. Orders I place with the shop are always delivered promptly & the quality of the items is first class. The site is easy to navigate & those graphs .......

Amazing statistics, amazing effort. Thanks indeed.

User avatar
allrounder
3500 or more caches found
3500 or more caches found
Posts: 365
Joined: 19 January 06 2:38 pm
Location: Kambah

Re: Development time / cost for your website

Post by allrounder » 07 June 11 9:31 am

:shock: =D>

User avatar
kennythe1st
Posts: 133
Joined: 19 December 09 7:36 pm
Location: nr Daylesford, VIC
Contact:

Re: Development time / cost for your website

Post by kennythe1st » 07 June 11 1:48 pm

Get a a life guys - a real life that is :wink:

If it helps in those occasional moments when you simply want to throw in the towel;

I started in IT software 15 years before you c@w. Reading your posting made me realise that the pro bono projects to which I had a personal relationship are the most enduring and satisfying in my memory. So think of it as your non-financial retirement bonus. :D

Many thanks, Kenny

User avatar
PesceVerde
700 or more Caches found
700 or more Caches  found
Posts: 452
Joined: 07 February 08 12:12 pm
Location: Arana Hills.

Re: Development time / cost for your website

Post by PesceVerde » 07 June 11 5:35 pm

... So think of it as your non-financial retirement bonus.
Ruhestand verboten! [-X

Outstanding Team. =D>
Always appreciated!

User avatar
blossom*
3000 or more caches found
3000 or more caches found
Posts: 1589
Joined: 25 February 09 1:59 pm
Location: West Ryde

Re: Development time / cost for your website

Post by blossom* » 07 June 11 7:27 pm

I hope you DON'T throw in the towel or find Antarctica interesting in the near future.

And I hope you guys get a lot of happiness from knowing the enjoyment you generate in all us GCA supporters. :P

User avatar
CraigRat
850 or more found!!!
850 or more found!!!
Posts: 7015
Joined: 23 August 04 3:17 pm
Twitter: CraigRat
Facebook: http://facebook.com/CraigRat
Location: Launceston, TAS
Contact:

Re: Development time / cost for your website

Post by CraigRat » 07 June 11 9:55 pm

It's so cold here tonight that Antarctica seems like a viable option :lol:

User avatar
Cheesy pigs
3000 or more caches found
3000 or more caches found
Posts: 1739
Joined: 02 June 05 6:51 pm
Location: Kingston

Re: Development time / cost for your website

Post by Cheesy pigs » 07 June 11 10:18 pm

Colder than....... an appropriate simile of how cold it is to be honest :wink:

User avatar
ruzzelz
5500 or more caches found
5500 or more caches found
Posts: 1150
Joined: 21 January 06 9:53 pm
Location: A little hill on the bright side of Brizzy

Re: Development time / cost for your website

Post by ruzzelz » 15 June 11 8:36 pm

Obviously a love investment.

A BIG Thanks for the efforts over the years =D> =D> =D> =D> =D> =D> =D>

shonkylogic
1600 or more caches found
1600 or more caches found
Posts: 212
Joined: 15 March 05 10:30 pm
Location: Wayville, SA
Contact:

Re: Development time / cost for your website

Post by shonkylogic » 15 June 11 9:53 pm

Well done guys, we really appreciate the work you put in to the site. :D

I was involved in a labour of love project some years ago (shonkymaps). It becomes an obsession. I never expect any payment, but a simple note of thanks or a bottle of red from a stranger (received last weekend at the SA event) makes a big difference to one's enthusiasm.

User avatar
caughtatwork
Posts: 17016
Joined: 17 May 04 12:11 pm
Location: Melbourne
Contact:

Re: Development time / cost for your website

Post by caughtatwork » 15 June 11 10:06 pm

Whoa. Hang on. Alcohol. I don't get no stinkin' alcohol :mrgreen:

Post Reply