"Czemu to nie działa? A faktycznie, wskazuje na zły obiekt. Tak. To ma sens... Hmm. Jednak nie. A może jak tak to zrobię?"
Czyli trochę głupie robienie małpim sposobem i próbowanie wszystkiego. Potem małpi sposób został zastąpiony przez rozpisywanie algorytmu/sposobu działania skryptu na kartce. Jeżeli zrozumiem co robię źle i dojdę do rozwiązania problemu na kartce, wtedy dopiero wracam do klawiatury.
Z innych rzeczy...
Jak zaczynałem to brałem jakieś proste projekty typu Kółko i Krzyżyk, Sudoku, Scrabble, Memory z internetu. Najpierw czytałem kody źródłowe, zasadę działania, a potem jak się nauczyłem jak mniej więcej te programy działają to siadałem do kompilatora i próbowałem na podstawie tych 5-10 projektów, które znalazłem w internecie napisać swój własny. Jak już się udało, to dodawałem szereg ulepszeń. Czyli brałem gotowe projekty, z tych 5 brałem to co najlepsze i tworzyłem swój własny, który jest wynikiem tych innych.
Czemu tak robiłem? Bo to był jedyny sposób, który umożliwił mi ciągłą naukę bez przerw. Bo na początku miałem problem natury: "Chcę napisać Kółko i Krzyżyk, co muszę zrobić, jeżeli nie umiem nic?"
A tak w miarę nauki ciągle się czegoś uczyłem ;)
Teraz już raczej takich rzeczy nie robię, bo już coś tam umiem. Chyba, że uczę się nowego języka programowania :D