View Single Post
06-11-2008, 01:11 AM
Join Date: Sep 2007
This is going to be a large project made by people who are at different ends of the world and will never see each other. Projects are already hard enough when you have people who can talk to eachother in person. Lets not get rushing into this. The work that I am doing now is teaching me a lot about huge systems (the monster I am working on is 50,000+ files).
We need to start walking before we can start running. Without good planning, our coding stage will be longer and less efficient. Here is what needs to happen before a line of code comes from any of us:
We need to make a detailed plan of what the project is.
We will need to decide upon technologies. It will obviously be PHP, most likely mysql as the database. But are there any other technologies we need?
Make a roster of who is proficient at what
We need to decide what server resources we will need to add, or if we will just make them.
We need to agree upon a coding style. We must use a uniform style with things like indentation, variable names, ect. This even goes for things like SQL cleaning.
We need to decide what project management software we will use. Since we are not a company with a large budget, we can not afford software for everyone. The only tool I can see us using is a version control software and documentation tools.
We need to decide, based off the roster, who is who. While we are not a business, someone has to be the head. We need one person to manage everyone and decide what direction the project goes. I will elaborate more on positions later.
The manager needs to divide portions of the project to different people. Since we are not a business, it would probably be best to have the manager make a list of tasks and what they require. Users can then volunteer for a portion. They should state how many hours it should take them.
The manager then needs to create a timeline for the project based off of how long things expect to take. But since we don't have a team working eight hours a day, we don't really know how long things will take. It would be best for the manager to have a planed order of things. Based off of that he can have what needs to be coded done in however long it takes.
Then before we start coding, we will have to have a meeting of some sort to make sure everyone is on the same page and understand what everyone is doing. Then, and only then, are we ready to start coding.
Due to the fact we don't have a full time team, coding will take longer than normal. Just make sure everyone follows procedure and we should do well.
Then we have debugging, the most tedious portion because you are rooting though code that
works. We don't have money for any debugging software (such as visual studio test edition, about 3k IIRC), so we will have to go though by hand and make a list of all found bugs. After we go though extensively, fix the bugs, and repeat process until things are functional, we can release. Towards the end of debugging, when bugs are only found in small and specific cases, we can release a beta so users can start finding things.
I won't have time to pledge any contribution, but I will help if needed from time to time.
More on positions. Positions are hard to start talking about now since we don't know the size of the team we cant fully make the position list. The positions that will be needed will however include:
-Head Manager (described above)
-Code Auditor. Since some of our programmers may not be advanced at what, we will have to have someone go over people's code and make sure it is up to par.
-Help Desk/IT Guy. It will not necessarily be his only position, but if members have questions of things pertaining to programming or the server they come to him. He will also be responsible for managing the server, if something goes wrong you will go to him for help. Multiple people can do this as long as they work together.
View Public Profile
Send a private message to Village Idiot
Find More Posts by Village Idiot