Interesuje mnie jak zaczynacie zadania programistyczne. Od ogółu do szczegółu czy od szczegółu do ogółu? Może macie inne doświadczenia? Podzielcie się nimi.
Analizuje problem, dzielę go na mniejsze do czasu aż są na tyle małe, że mogę zabrać siè za implementację (często poprzedzoną drobnym proof-of-concept). Podczas implementacji typowe metodyki (tdd/bdd) i z bani.
To zależy. Jak jest to coś co jest podobne do tego, co już nieraz robiłem, to po prostu siadam i koduję na spontana. Potrafię robić to po 3 piwach nawet i dalej kod ma sens następnego dnia ;)
Jeśli jest coś trudnego, to myślę, rozrysowuję sobie, myślę, piszę działający (ale i bardzo brzydko napisany) prototyp, rozwijam go (w sposób bardzo chaotyczny, żeby tyko zahakować funkcjonalnośc), no a potem jak widzę jak to działa i jakie są realne techniczne możliwości napisania (często przy okazji takiego pisania uczę się jednej czy większej liczby nieznanych mi technologii) to porzucam prototyp i zaczynam wszystko od nowa, co najwyżej kopiując niektóre fragmenty kodu czy odtwarzając z pamięci pewne rozwiązania.
Rozwiązując jakiś problem zwykle staram się sprowadzić go do znanego problemu lub podzielić na mniejsze podproblemy, czyli klasycznie top-down. Jednak koduję niemal zawsze od szczegółu do ogółu tj. bottom-up. Lubię mieć szybko coś działającego, a nie tylko wydmuszki.