I make up my mind to study design pattern now. During the development of my first "big enough" program, though I pay a lot of effort to design the arch of it( and I really used poly and inher , achieving the so called observer pattern), the system looks more and more awesome while it became bigger and bigger. And I think if I want to really understand the essence of wxWidgets libs or the STL boost, I really need to be familiar with design pattern.