Temat: Potrzebna Pomoc w projekcie c++
Hehe, ale się namieszało :)
Nie będę cytował poszczególnych wypowiedzi - odniosę się do poruszanych tematów.
1. Co do czasu realizacji zadań: wszystko da się oszacować, wszak jesteśmy profesjonalistami :)
Ale, jeśli my szacujemy czas wykonania na x miesięcy, a konkurencja twierdzi, że zrobi to w czasie x / 5, to po prostu wiadomo, że tego nie zrobią. I tutaj jest rola jednego z drugim handlowca, żeby uświadomił to klientowi, zamiast naginać się i zobowiązywać, że zrobimy to jeszcze szybciej niż konkurencja.
Wiem, że to co piszę, to chciejstwo - ale takie uginanie się przed klientem i konkurencją po prostu potwornie psuje rynek i tak naprawdę prędzej czy później odbija się na nas jako firmie. To powinno być karalne :) A co zrobić, żeby tak nie robili? Oczywiście to zależy, generalnie nic się nie da zrobić. Ja, jak pełniłem przez pewnien czas obowiązki project managera, mówiłem takiemu handlowcowi: "Co, stary, mamy to zrobić 6 x szybciej niż powiedziałem? Hmmm, to ty masz problem, bo ja mówiłem, że się nie da." Efekt: dość szybko przestałem pełnić te obowiązki - ale przynajmniej kilka projektów chłopaki robili bez nerwowego patrzenia im na ręce, no i kilku handlowców poleciało w kosmos :))) Z drugiej strony co i raz mamy jakieś tematy, które spadły nam po konkurencji, bo jednak nie udało im się zrobić w czasie x / 5.
2. Co do produkcji oprogramowania: produkować to sobie można rzeczy powtarzalne, np. gwoździe. Oprogramowanie się tworzy - a to zasadnicza różnica. I to już zaczyna być (ponownie) wbijane przyszłym managerom w głowy w wielu renomowanych zagranicznych uczelniach. Człowiek nie jest maszyną, i każda praca koncepcyjna jest z gruntu nie do końca przewidywalna - głównie chodzi mi o czas, choć także i o efekty. Ja wiem, że nie chodziło o tłoczenie płytek, tylko o proces wytwarzania (nie produkcji!!!!) oprogramowania. Ale nadal wielu managerów uważa, że nie różni się to niczym od produkcji gwoździ - co oczywiście świadczy o ich całkowitej niekompetencji (zwykle to są Ci, którzy przyszli z całkowicie innych dziedzin biznesu i nie odróżniają .NET CF od MS SQL).
3. Co do syndromu NIH: nie jest tak źle :) Jeśli coś jest sprawdzone (najlepiej przeze mnie, a przynajmniej przez kogoś, kto jest dla mnie w danej dziedzinie autorytetem), to czemu nie używać? Natomiast jestem przeciwnikiem podejścia, że skoro to jest, to róbmy absolutnie wszystko tylko na tym. Moim zdaniem: to, co się da zrobić na tym, róbmy na tym, a co się nie da, róbmy inaczej. Odkryłem Amerykę, nie?
4. Co do robienia byle jak: miałem na myśli raczej bezmyślność przy kopiowaniu niektórych rozwiązań, jaką niektórzy programmersi potrafią wykazywać :) No i poraża mnie podejście w stylu: "Co, nie podoba Ci się mój program do wyświetlania pierwszej linijki z pliku logu tekstowego? Że niby wymaga 1GB RAM i Pentium4? A co to przeszkadza? Przecież maszyny klienta, na których to będzie chodzić, są znacznie mocniejsze?". Ja wiem, że ten gość zrobił to w 3 minuty, a mi zajęło by 20 minut. Ale, ale: czy to naprawdę cokolwiek zmienia???
I na koniec: ja naprawdę jestem po tej samej stronie barykady :) Tylko wq... mnie, że muszę patrzeć, jak biznes prostytuuje trudną przecież, ale i piękną sztukę programowania.
Produkcja? Wrrrrrrrrrr....
I już naprawdę na koniec mały gwoździk: pomyślmy, na czym ludzie (programmersi, a potem ownerzy firm) zrobili naprawdę dużą kasę? Na kolejnym WMS-ie wyprodukowanym w/g kolejnej zwinnej metodologii? Może na kolejnym programie na PDA do analizy konkurencji? A może na jakimś CMS-ie, którym zwinne sekretarki w małych firmach aktualizują informacje na firmowych "portalach"? Nie. Ludzie zrobili kasę na systemach operacyjnych (MS, Apple), firmware do routerów (Cisco), oprogramowaniu do rozpoznawania gestów (Apple-iPhone), oprogramowaniu do analizy sygnałów analogowych (technologia GPS).
Zauważcie róznicę: to nie było robione pod konkretny biznes, natomiast to wykreowało całkiem nowe "biznesy".
A teraz popatrzmy na te STL-e i inne gotowce i pomyślmy: czy programowanie kolejny raz logiki biznesowej, która de facto składa się z dobrze znanych nam już procesów, jest naprawdę ciekawe? Czy ciekawa jest inwentura, którą właśnie zaimplementowaliśmy w nowym WMS-ie (20-tym z kolei)? Czy może ciekawe są raporty z pivotami, na które de facto klient popatrzy raz albo wcale?
Jak może być ciekawe to, co każdy potrafi zrobić po przeczytaniu kilku książek?
I jak można przez ponad pół życia robić nieciekawe rzeczy?
A na koniec, jak można przyznawać wciąż rację ludziom, którzy gadają bzdury?
Wrrrrrrrrr....
Piotr Głudkowski edytował(a) ten post dnia 13.09.10 o godzinie 01:53