As Ned says, it can be an insane task, and very very time consuming. Took me months to start getting my head around the layout and structure of the server, and even longer to start figuring out how all the separate code works together.
If I had one piece of advice for learning all this, I'd say try to get a development server running on your own machine, along with the necessary SQL database. Not only will you learn a huge amount by doing this, you'll then have a system to try things out on without risking breaking a live server
Oh, and then there's Arma 3.....
