Flow of home assistant

I am new to homeassistant .I want to understand how homeassistant works so I thought of debugging it .So can someone tell me which IDE to use and also for where to start as I am having very hard time in understanding the file structure of homeassistant .

Architecture is described in the Developer documentation and that reflects the file hierarchy.

Is this question related to Flow of the backend of homeassistant ?