I'd better wade in before someone mentions the bloke that ran Germany through to the mid 1940's and this thread gets shut down. (
http://en.wikipedia.org/wiki/Godwin's_lawAfter theGym was released I had an issue with various versions floating around, lots of emails complaining of bugs, various patches flying everywhere and generally a large amount of work when I wanted to be focussed on thePhysio. I am studying a CompSci degree and the general agreement at the time of starting the planning of thePhysio was to have one codeblock that everyone accessed so I only had to worry about one complaint... and if I moved quick enough, no one else would even notice. This is still the case but the rapid development of apps that contain the majority of a game locally but can only be played when connected to the servers has given me pause for thought.
At the same time, some websites grabbed theGym download and posted it on their site, making money from the ads surrounding the game space. Now I spent a long time with the pros and cons of this (they are making money off of my hard work vs more people are now aware of my game and are playing it).
My thoughts for thePhysio were:
If images are cached, traffic won't be continuously high so subsequent playing wont incur high traffic usage.
The game needs to have a connection to my site to stop others from hosting the game without talking to me first
TheGym was written in javascript arrays which was a mess to write and to maintain so I wrote a game creator that saved everything into a mysql database and took care of all the linking for me.
I have worked in a medium sized IT office (500 staff) and have seen the benefits of database driven applications.
Outcomes of thePhysio:
I wasn't aware my host had connection limits to the mysql database, I had assumed (mock me here) that each concurrent connection would allow the database access needed to fulfill that connections requirements but alas that was wrong and I spent the first couple of weeks after launch working furiously to find a way around this massive bottleneck. The way around this bottleneck is to have an indexedDB stored locally in the browser for those browsers that can manage them. This avoids the database connection bottleneck.
I could go back and rewrite the code for the Physio but I think it's better I learn from my mistakes and get theSniper into the world.
Thoughts for theSniper:
IndexedDB will be the standard way to manage the database component with a fallback to mysql for those who's browsers cant manage.
Preloading of images with extra images (the clean ones) hosted on alternate servers to negotiate the 503 responses.
There will still be a contributors only window but it will be set with a specific end date that will be plain for everyone to see (I hope I remember this one... please post after theSniper launches to remind me if I don't honor this one).
Summary:
This all kicked off while I was away at a 90th birthday celebration (not mine) and had patchy cell coverage. I understand people are upset and I assume some of the traffic is from people checking to see if the game is live yet. I'll sit down and post a notice to the site in the coming days warning all contributors the game will be live to all in the next 4 weeks (it will be a Monday to try and spread some of the traffic before the weekend hits). This will give contributors a chance to play their hearts out, new contributors to maybe wait until the launch rather than donate before playing and those that have been waiting have a date to focus on.
I try to take the criticisms on the chin and read into them the positive natures in which I hope they were intended. I usually wait a day before posting to think these posts through as my reaction to some comments is less than courteous. I am always amazed at people who are ready to condemn a person for a decision they have made rather than praise for the effort and let them learn from it.
I hope this lays out my thinking so you can see how I have arrived at this point and understand it.