How to start reading the code?

I have some background in php, mysql, linux and asterisk. I am using FreePBX since it was Asterisk@Home 0.9. Now I want to participate in its development in my free time.

I need guidance as where to start from reading and understanding its code. Which php file should I open first to see what it does. Please guide me in this direction so I can understand FreePBX code in a well organized manner and then try to improve it to my best ability. I am also taking full time telecom classes in a college with linux/unix based development and operations programming for telecom systems. I also want to put that knowledge into FreePBX to contribute in making it the best PBX out there.

zeeshan,
you may take an initial stab at searching through the development wiki where there is a bunch of somewhat scattered information. From there, it’s a bit spotty and involves starting to dig through the code while trying to avoid the pockets of really ‘bad’ code that have not yet been fixed. Documentation is something we are starting on both ourselves and some new contributors who are starting to come on board. You may also want to poke into #freepbx-dev to seek guidance where you can often find some of us around for more immediate help and questions.

Depending on your style, another way to get familiar is to pick a task or bug, and start to try and address it. Start with some of the docs and popping into the IRC channel for now and we can go from there.

Philippe Lindheimer - FreePBX Project Lead
http//freepbx.org - IRC #freepbx

Thanks for your reply. I seems not so easy but I shall start and hopefully soon be able to understand how FreePBX code works.

zeeshan,
we are trying to take steps to make it easier and they are forth coming. I think you will see more helpful information unfolding over the course of the next few weeks. In the meantime, it is a bit of a steep learning curve - I know, I went through it also:-)

Philippe Lindheimer - FreePBX Project Lead
http//freepbx.org - IRC #freepbx