Whoa. Thanks! That reliefs me. I've asked some seniors and they say the same. "You should pick a programming language based on your own skill set and the needs of the project." Also, that's a very useful link you gave me there. I will have it a read soon. I'm writing the database class at the moment.
So if you're already familiar with Python, stick with it. It's a fine choice. =)
Yes. I choose Python because it's easier to develop and therefore, will make it easier for the team if a new programmer comes to the team.
As for the client-server play, I later decide to separate the client-side team into two parts. One part handles the resources along with the spiters, while the another one handles the sent data with the network guy and server-side programmer (me).
About database, I'm concerning about the normalization. It's good for some reasons, but it slows down the reading process a bit. I think I need to denormalize some of them, but not sure about the best way to do it. I can decrease the writing performance if I do it wrong. Some ideas or links will be very appreciated.
Thank you everyone! :)
About the database, and this database class you're working on:
First, if you already have 42 tables, but haven't started coding yet, you're doing it wrong, in my opinion. You're also likely to run into surprises once you start using the database. Perhaps for the moment the best approach is to use your schema as a design guideline, but build the actual db from scratch, adding what you need as you go along. It's good to look ahead and try to anticipate, but don't try to look too far. :)
Second, are you using an ORM? If not, do it, especially if you're dealing with 40+ tables. If you don't use one, you're going to end up basically writing one yourself--and it's going to suck. That's not a criticism of your programming skill, it's just that these things already exist. Use them. Sqlalchemy is nice, and you can also use Django. Django includes a bunch of other stuff you won't need, but the ORM is quite good. This will make your life easier, especially when you find yourself writing generic insert, update, and delete code. There is a learning curve, but please, for the love of god, use an ORM.
Finally, about normalization. My favorite quote about this is, "Normalize until it hurts; denormalize until it works." This goes back to my previous point: try to build what you need, as you go. Change when necessary. Iterate.
Hope that helps.