The next thing that came up was determining how we could use that sort of data. There were a couple of challenges that presented itself.. one, with a database of 3.5 million cities, we couldn't go joining against that database to get lat/long data if we wanted to say.. find all members close to another member. Additionally, we needed the math to determine if a member was close to another member to work QUICK.
Prior to the release of the new forums last June, the development situation for Gamedev.net was less than ideal.. especially considering we all have CS backgrounds. The new forums actually had stemmed off of a version of the forums that had been written 3 years prior. During that time the forums underwent a lot of changes on the "production" gamedev.net that had to be back ported into the new code. SOOOOO much stuff was cleaned up and changed fundamentally with the new forums it was ridiculous.
During the final release push it was really myself and Michalson who put in a lot of the hours developing the software. We never had a problem really because Michalson worked pretty hardcore on the moderator tools that help us to say.. detect duplicate accounts from the same user, or potential former banned people, etc. with alarming swiftness. With the "report this post to moderator" option and his moderator tools I have witnessed a dramatic decrease in the response time for handling issues. So he did that, and I worked on stuff like the forums, books, gds, etc. The point is.. we worked on mutually exclusive things, so we didn't step on each others toes.
Sicrane and superpig also did some work for the forums.. and on some cool projects too (we gotta get superpigs quoting system in there some day.. that thing is awesome). Sicrane was KILLER at testing. He found bugs doing shit that was probably about as obscure as one could get. I felt pretty comfortable with the release even though on the production environment we felt some initially growing pains that we hadn't experienced before. Though you had to expect it.. we took a production system that had been running stable offline and replaced it with a virtually untested (for all intents and purposes) and entirely new codebase.
When the actual release came around guys like Dave became much more involved with getting the content side of the software up to spec, which required making small tweaks to certain files.. which might later get overwritten by me or Michalson or..
So we needed a revamp, badly. That's when we really took a step back over the fall and analyzed how we develop things. We began to write proposals for new major projects and completely design them from start to finish prior to writing a line of code. The individual tasks were entered into a project task management system to break it down a bit more into manageable chunks. This actually proved incredibly useful because you can pretty easily obtain direction for figuring out a pretty common problem.. "What do I do next?" Subversion definitely became our revision control platform of choice, and now we have been checking in projects all over the site. We're working on an approach to publish to the site directly from our subversion repository.. even revert to previous versions if something goes really bad(tm).
Oli came on board the project in early January or late December and was presented with the design for the gathering. We were able to additionally revamp some of the techniques we used to code projects for the site and ended up doing a lot based of of XML using XSL for the UI. The result was actually an unexpected potential future benefit.. It is EXTREMELY easy to expose the XML for public consumption. This is something we definitely want to try to do.
Why? Cuz of projects like SHilbert's rating tracker, for example. That thing is just plain cool. Click here to see the related post. With so many programmers around, it just makes sense.
Phew.. I think I'm going to take a break from this post for now. I suppose I had a lot to mention.