Mam nadzieje, ze nie bedzie to zbyt offtopowy i kontrowersyjny watek.
Wiem, ze na tej jak i na innych grupach znajduja sie mniej i bardziej
doswiadczeni programisci. Jako, ze zastanawiam sie nad rozwinieciem
moich zainteresowan programowaniem do poziomu, za ktory bylbym w
stanie sie utrzymac lub nawet lepiej chcialem dowiedziec sie co z
Waszego punktu widzenia charakteryzuje dobrego programiste?
Pomijam kwestie zaangazowania, checi nauki, motywacji i innych dosc
oczywistych oraz zaleznych od osoby cech. Wiem, ze podstawa to bardzo
dobra znajomosc danego jezyka, na przyklad python. Reszty sie
domyslam.. Znajomosc algorytmow? Architektura komputera / pamieci?
Umiejetnosc optymalizacji kodu oraz debugowania, wyszukiwanie i praca
w programach wspomagajacych?
Interesuja mnie zarowno te umiejetnosci, jakie Wy uwazacie zarowno za
podstawowe, by mowic, iz ktos jest programista jak i pozadane, u
nowego pracownika na stanowisko programisty. A najbardziej interesuje
mnie Wasze subiektywne odczucie, jako osob mniej lub bardziej
znajacych realia rynku.
--
Pozdrawiam
Krzysztof Szynter
> Mam nadzieje, ze nie bedzie to zbyt offtopowy i kontrowersyjny watek.
> Wiem, ze na tej jak i na innych grupach znajduja sie mniej i bardziej
> doswiadczeni programisci. Jako, ze zastanawiam sie nad rozwinieciem
> moich zainteresowan programowaniem do poziomu, za ktory bylbym w
> stanie sie utrzymac lub nawet lepiej chcialem dowiedziec sie co z
> Waszego punktu widzenia charakteryzuje dobrego programiste?
Otwarty umysł, klasyczne wykształcenie, odporność na stres. Reszta to
pochodne.
--
Jarek Zgoda
Skype: jzgoda | GTalk: zg...@jabber.aster.pl | voice: +48228430101
"We read Knuth so you don't have to." (Tim Peters)
> chcialem dowiedziec sie co z Waszego punktu widzenia
> charakteryzuje dobrego programiste?
Niestety (nie lubie czerwonych - rozowych tez:), ale to cecha Millera.
Zeby umiec dokonczyc (no ale nie tak jak Miller:)
Slowem: zdolnosc do skonczenia projektu/zadania nawet jesli
i sam Brutus (Zona ?:) jest przeciwko.
Widzialem wielu z zalozenia wysmienitych programistow
(blyskotliwych, rzutkich, wyksztalconych, elokwentnych itp),
ale ta w/w ceche _naprawde_ posiada niewielu.
Slowem sa momenty ze _wszystko_ jest przeciwko Tobie
(nawet komp i kompilatory :).
Jesli bedziesz umial je przetrwac, to prawie wystarczy,
aby byc dobrym programista.
Inne rzeczy: znajomosc technologii, j.prog. wyksztalcenie
sa oczywiscie wazne, ale one wszytskie bez tej w/w cechy
sa tylko dodatkiem do kozucha.
Tych umiejetnosci predzej nabierzesz juz nawet w pracy
(zaczynajac oczywiscie od mniej odpowiedzialnych zadan),
ale zmiana natury czlowieka juz tak latwo nei zachodzi :(
AK
> [...] chcialem dowiedziec sie co z
> Waszego punktu widzenia charakteryzuje dobrego programiste?
Lenistwo i ciekawosc. Niekoniecznie w tej kolejnosci.
--
Radomir `The Sheep' Dopieralski <http://sheep.art.pl>
More sad are those we daily see: it is, and hadn't ought to be.
Z wątku o prace mozna wywnioskować ze znajomość dziesięciu modułów :P
>> [...] chcialem dowiedziec sie co z
>> Waszego punktu widzenia charakteryzuje dobrego programiste?
>
> Lenistwo i ciekawosc. Niekoniecznie w tej kolejnosci.
Hm, to takie trochę pokrewne do znanych tez o najlepszych cechach
administratora, autorstwa chyba Larry Walla: lenistwo, pycha, niecierpliwość.
GS
--
Grzegorz Staniak <gstaniak _at_ wp [dot] pl>
> Witam..
>
> Mam nadzieje, ze nie bedzie to zbyt offtopowy i kontrowersyjny watek.
> Wiem, ze na tej jak i na innych grupach znajduja sie mniej i bardziej
> doswiadczeni programisci. Jako, ze zastanawiam sie nad rozwinieciem
> moich zainteresowan programowaniem do poziomu, za ktory bylbym w
> stanie sie utrzymac lub nawet lepiej chcialem dowiedziec sie co z
> Waszego punktu widzenia charakteryzuje dobrego programiste?
Zanim podejmiesz ostateczną decyzję, co do zostania zawodowym
programistą przemyśl gruntownie sprawę tego czym się zajmuje
przeciętny zawodowy programista. Otóż zajmuje się przeważnie
rzeczami zgoła innymi niż się z boku wydaje. Słowo "przyziemność"
zaczerpnięte z artykułu Bickinga [1]_ chyba najlepiej to oddaje.
Wirtuozi algorytmów i pogromcy technologi są oczywiście potrzebni,
ale gdzieniegdzie i od czasu do czasu.
Zgadzam się w 100% z Adamem, że ta praca polega na systematycznym
dążeniu do ukończenia lub rozwijania projektu. Co w przytłaczającej
części wiąże się z szukaniem igły w stogu siana lub wprowadzaniu
drobnych ulepszeń. Niektórym to nie daje satysfakcji, a innym
wręcz przeciwnie. Utrzymywanie przy życiu i rozwijanie dużego
projektu jest wyzwaniem samym w sobie.
> Pomijam kwestie zaangazowania, checi nauki, motywacji i innych dosc
> oczywistych oraz zaleznych od osoby cech. Wiem, ze podstawa to bardzo
Bardzo ważne cechy, ale jak już Adam napisał są niczym przy braku
wytrwałości, uporu i konsekwencji w działaniu. Gdy ktoś rozkłada
ręce przy byle trudnościach, to się w tym zawodzie szybko wypali.
> dobra znajomosc danego jezyka, na przyklad python. Reszty sie
> domyslam.. Znajomosc algorytmow? Architektura komputera / pamieci?
> Umiejetnosc optymalizacji kodu oraz debugowania, wyszukiwanie i praca
> w programach wspomagajacych?
Umiejętność szerszego spojrzenia na problem. U początkującyh to jest
niezwykle rzadkie. Widzą tylko daną funkcję, czy daną klasę i nie specjalnie
ich obchodzi jak to się ma do całości. To się jakoś tam wiąże też
ze wzorcami projektowymi, ale tego imho nie można się nauczyć z książek.
Dlatego tak ważne jest pisanie _rzeczywistych_ programów, tudzież
uczestniczenie w _rzeczywistych_ projektach.
> Interesuja mnie zarowno te umiejetnosci, jakie Wy uwazacie zarowno za
> podstawowe, by mowic, iz ktos jest programista jak i pozadane, u
> nowego pracownika na stanowisko programisty. A najbardziej interesuje
> mnie Wasze subiektywne odczucie, jako osob mniej lub bardziej
> znajacych realia rynku.
To mi trochę przypomniało taki podział na rodzaje programistów [2]_. ;)
Niestety jest w nim wiele prawdy. Spotkałem na swojej drodze spore
rzesze "The Theoretician" i "The Evangelist". Bycie w zespole z którymś z tych
gatunków to prawdziwy horror. Potrafią godzinami debatować na strasznymi
zupełnie nieistotnymi detalami. Wystrzegaj się tego.
Studenci, z którymi mam do czynienia dość często należą do kategorii
"Fanboy" i "The Code Cowboy". To wynika chyba z tego, że ich zderzenie
z rzeczywistością codziennej pracy programisty jest zbyt brutalne.
Fanboys zajmują się wszystkim tylko nie pracą nad projektem, a Cowboys
uważają, że te stare pierniki tylko tracą czas na jakieś analizy,
zamiast zakasać rękawy i wklepać ten cholerny kod.
Na szczęście te kategorie ewoluują i im prędzej to zrobisz tym lepiej
dla Ciebie a zostanie programistą zawodowym będzie miało sens.
P.S.
Siebie widzę w kategorii "The Paratrooper". ;)
[1] http://blog.ianbicking.org/2008/04/11/the-mundane-nature-of-programming/
[2] http://blogs.techrepublic.com.com/10things/?p=262
RW
> Waszego punktu widzenia charakteryzuje dobrego programiste?
Bogaty zasób wulgarnego słownictwa. Nieodzowne, gdy się coś zacznie sypać. :)
w.
Wszyscy opisujecie programiste jako zawód, a przecież można to robić
hobbystycznie. Ot, chociażby Con Kolivas (http://en.wikipedia.org/wiki/
Con_Kolivas), który hackował Linuksa. Wtedy podejście i praca nad
kodem wygląda trochę inaczej. Ma ktoś jakieś doświadczenie?
> Wszyscy opisujecie programiste jako zawód, a przecież można to robić
> hobbystycznie.
[...]
> Wtedy podejście i praca nad kodem wygląda trochę inaczej.
> Ma ktoś jakieś doświadczenie?
Owszem.
Mam Kolege gitarzyste ktory.. zechcial zostac hobbystycznie kowalem
- niestety gitarzysta juz nie jest :(
+ jednak znacznie szybciej plywa :)
AK
> Wszyscy opisujecie programiste jako zawód, a przecież można to robić
> hobbystycznie. Ot, chociażby Con Kolivas (http://en.wikipedia.org/wiki/
> Con_Kolivas), który hackował Linuksa. Wtedy podejście i praca nad
> kodem wygląda trochę inaczej. Ma ktoś jakieś doświadczenie?
Jasne, ja bardzo lubię programować. Robię to nie tylko zawodowo ale i
dla przyjemności. W związku z tym za pieniądze piszę tylko rzeczy,
które choć trochę mnie interesują, a od czasu do czasu machnę jakiś
pojekcik z boku albo wyślę łatkę do softu open source, który mi się
podoba a ma braki.
--
mihau
Trzy Cnoty Programisty, owszem Larry'ego Walla[1],
nieco inna kolejność: lenistwo, niecierpliwość i pycha.
[1] dla niekojarzących -- autor Perla.
bart
--
"PLEASE DO *NOT* EDIT or poldek will hate you." - packages.dir (PLD)
http://candajon.azorragarse.info/ http://azorragarse.candajon.info/
> > [...] chcialem dowiedziec sie co z
> > Waszego punktu widzenia charakteryzuje dobrego programiste?
>
> Lenistwo i ciekawosc. Niekoniecznie w tej kolejnosci.
To chyba najlepsze cechy :)
Lenistwo nakazuje szukać gotowych rozwiązań i nie wymyślać koła na
nowo gdy gonią terminy.
Ciekawość z czasem owocuje szeroką znajomością tematyki, która nawet
gdy powierzchowna, pozwala szybko ocenić i wybrać metody działania
wobec NagłegoProblemuDoRozwiązaniaNaWczoraj.
--
mihau
Oczywiście pod warunkiem że lenistwo jest naprawdę OLBRZYMIE :) Z
takiego lenistwa wynika konieczność napisania kodu dobrego, który nie
dość że działa, to można go łatwo modyfikować.
Jan Raburski
> Jasne, ja bardzo lubię programować. Robię to nie tylko zawodowo
> ale i dla przyjemności.
Jestes zonaty ? :)
AK
> > Jasne, ja bardzo lubię programować. Robię to nie tylko zawodowo
> > ale i dla przyjemności.
>
> Jestes zonaty ? :)
Nie, ale singlem też nie jestem. Dzieci nie mam :)
--
mihau
>> Jestes zonaty ? :)
> Nie,
[..]
> Dzieci nie mam :)
No i wsio jasne...
Sobie mozna 'hobbowac'...
Do czasu ;)
AK
>
> Trzy Cnoty Programisty, owszem Larry'ego Walla[1],
> nieco inna kolejność: lenistwo, niecierpliwość i pycha.
To juz teraz wiem dlaczego perl jest jaki jest :)
--
Pozdrawiam
Darek
http://www.ostolski.com/
SQL Server, .NET, C++, Pyhton i wiele więcej
Ja przepraszam... ja sobie tak lurkuję tylko, ale temat ciekawy.
Czy naprawdę posiadanie żony przeszkadza Ci w uprawianiu hobby? Jeśli tak
to serdecznie współczuję.
ethanak
--
mailto=window.atob('ZXRoYW5ha0Bwb2xpcC5jb20=');
http://www.blubuntu.polip.com/ - a jednak sie da :)
>>>> Jestes zonaty ? :)
>>> Nie,
>> [..]
>>> Dzieci nie mam :)
>> No i wsio jasne...
>> Sobie mozna 'hobbowac'...
>> Do czasu ;)
>
>
> Ja przepraszam... ja sobie tak lurkuję tylko, ale temat ciekawy.
>
> Czy naprawdę posiadanie żony przeszkadza Ci w uprawianiu hobby? Jeśli tak
> to serdecznie współczuję.
Mając żonę + dzieci nie posiada się już czasu tzw. "wolnego" - czas
wolny to czas kradziony rodzinie. Hobby można mieć, ale takie, na które
można przeznaczyć godzinę-dwie tygodniowo, w kawałkach po pół godziny. W
ten sposób nie da się poważnie pisać programów.
--
Jarek Zgoda
http://zgodowie.org/
"We read Knuth so you don't have to" - Tim Peters
Zapewniam że się da.
ethanak
(szczęśliwy małżonek, ojciec i dziadek)
> > Dzieci nie mam :)
> Sobie mozna 'hobbowac'...
> Do czasu ;)
No to chyba pora zacząć dzieci uczyć programowania :)
--
mihau
[...]
> No to chyba pora zacząć dzieci uczyć programowania :)
Ty się nie śmiej, właśnie przedwczoraj córeczce (gimnazjum) musiałem
tłumaczyć o co chodzi w tym całym programowaniu :) Owszem na podstawie
Pythona.
ethanak
Eee tam...
Po prostu należy mieć z żoną wspólne hobby. Np. moja żona jest
informatykiem :) To wiele rozwiązuje.
pzdr
\SK
--
"Never underestimate the power of human stupidity" -- L. Lang
> Dnia Tue, 29 Apr 2008 22:08:26 +0200, Jarek Zgoda napisał(a):
> [...]
>> Mając żonę + dzieci nie posiada się już czasu tzw. "wolnego" - czas
>> wolny to czas kradziony rodzinie. Hobby można mieć, ale takie, na które
>> można przeznaczyć godzinę-dwie tygodniowo, w kawałkach po pół godziny. W
>> ten sposób nie da się poważnie pisać programów.
>
> Zapewniam że się da.
>
> ethanak
> (szczęśliwy małżonek, ojciec i dziadek)
Pytanie, czy Twoja żona jest szczęśliwa z Twoim hobby co Ty.
Moja połówka jak i moi synowie wolą jak spędzam czas z nimi a nie siedzę
zamknięty w wydzielonej pracowni - i IMO jest to normalny / zdrowy odruch.
--
bluszcz
"Don't criticise yourself, it's my privilige." - Bitter Moon
http://web-dev.pl - Dynamiczny świat internetowych aplikacji od środka
RHCE Red Hat Certified Engineer