option is to retreatsimplifying the program until you get to something that works and that you understand beginning programmers are often reluctant to retreat because they can' stand to delete line of code (even if it' wrongif it makes you feel bettercopy your program into another file before you start stripping it down then you can paste the pieces back in little bit at time the learning journey as you progress through the rest of the bookdon' be afraid if the concepts don' seem to fit together well the first time when you were learning to speakit was not problem for your first few years that you just made cute gurgling noises and it was ok if it took six months for you to move from simple vocabulary to simple sentences and took - more years to move from sentences to paragraphsand few more years to be able to write an interesting complete short story on your own we want you to learn python much more rapidlyso we teach it all at the same time over the next few but it is like learning new language that takes time to absorb and understand before it feels natural that leads to some confusion as we visit and revisit topics to try to get you to see the big picture while we are defining the tiny fragments that make up that big picture while the book is written linearlyand if you are taking course it will progress in linear fashiondon' hesitate to be very nonlinear in how you approach the material look forwards and backwards and read with light touch by skimming more advanced material without fully understanding the detailsyou can get better understanding of the "why?of programming by reviewing previous material and even redoing earlier exercisesyou will realize that you actually learned lot of material even if the material you are currently staring at seems bit impenetrable usually when you are learning your first programming languagethere are few wonderful "ah hah!moments where you can look up from pounding away at some rock with hammer and chisel and step away and see that you are indeed building beautiful sculpture if something seems particularly hardthere is usually no value in staying up all night and staring at it take breaktake naphave snackexplain what you are having problem with to someone (or perhaps your dog)and then come back to it with fresh eyes assure you that once you learn the programming concepts in the book you will look back and see that it was all really easy and elegant and it simply took you bit of time to absorb it glossary bug an error in program central processing unit the heart of any computer it is what runs the software that we writealso called "cpuor "the processorcompile to translate program written in high-level language into low-level language all at oncein preparation for later execution