-
11. Data: 2012-11-21 09:58:14
Temat: Re: Potyczki
Od: "slawek" <s...@h...pl>
Użytkownik "PK" <P...@n...com> napisał w wiadomości grup
dyskusyjnych:s...@n...notb-home.
..
> Abstrahując od tego, że Twoje rozumienie słowa "informatyka" jest
> trochę węższe niż to powszechnie przyjęte, to mam dla Ciebie mały
Czy zgadzamy się, że algorytmika jest jedną z dyscyplin informatyki? Jeżeli
też tak uważasz, to dlaczego twierdzisz, że cokolwiek "zawężam"?
Co do zadań... Za "matematyczne" (ew. "fizyczne", "historyczne",
"geograficzne" itd.) uważam takie zadania, do rozwiązania których nie jest
potrzebny ani prawdziwy, działający, komputer, ani też choćby wiedza o tym
jak takie komputery działają. Np. równanie x*x - x - 1 = 0 można rozwiązać
bez jakiegokolwiek komputera, podobnie jest z problemem "krzesełkowym" (tj.
z zadaniem z "Potyczek").
Natomiast efektywne znalezienie najczęściej pojawiającego się podciągu
bajtów (liczb?) w konkretnych danych "ważących" dziesiątki GB... o, to jest
"informatyczne" w tym sensie, że bez użycia "prawdziwego komputera" (tj.
czegoś co działa, nie zaś konceptu w rodzaju
"teoretyczna-hipotetyczna-maszyna") po prostu nie uzyskamy odpowiedzi. A
dodatkowo: bez _dobrego_ algorytmu nie uda nam się osiągnąć rozwiązania w
sensownym czasie (tj. niewiele dłuższym niż zajmuje samo czytanie danych).
-
12. Data: 2012-11-21 10:11:53
Temat: Re: Potyczki
Od: "slawek" <s...@h...pl>
Użytkownik "PK" <P...@n...com> napisał w wiadomości grup
dyskusyjnych:s...@n...notb-home.
..
> tak: "Po tym wydziale nie będziecie dobrymi koderami - najlepsi koderzy
> jakich znam skończyli fizykę po drugiej stronie ulicy."
Niby że osiąga się taki poziom profesjonalizmu, iż to czym zajmują się
zwykli pracownicy (w konkretnym przypadku "koderzy") staje się nieistotne a
nawet zbędne. ROTFL
> Uszanujcie to, że są ludzie, których cieszą tego typu zadanka :). Jakby
Oczywiście. Fajnie. Super. Cieszy. No no...
Ale chciałoby się, aby czasami ktoś zajmował się właśnie Informatyką - a nie
tylko zadaniami w rodzaju "szynka traci po ugotowaniu" (tzn. zadaniami "z
treścią" całkiem jakby wyjętymi ze starych podręczników do matematyki dla
szkół podstawowych).
-
13. Data: 2012-11-21 10:21:23
Temat: Re: Potyczki
Od: "slawek" <s...@h...pl>
Użytkownik "kenobi" <p...@g...com> napisał w wiadomości grup
dyskusyjnych:dbef1d12-bbf8-4f02-8065-d90cfa3a0aa9@go
oglegroups.com...
> w jakim sensie 'nieefektywnego pisani kodu'?
Me too...
Dołączam się do pytania. Co oznacza "nieefektywne pisanie kodu?"
Czy chodzi o "kod, który nie jest efektywny"? Czy też raczej o "metodykę,
która jest nieefektywna"? A może o "pisanie długopisem po szybie, które -
jak łatwo zauważyć - nie jest efektywne?"
I czy obejmuje to także "pisanie kodu implementującego nieefektywne
algorytmy"? (Ogólnie ciekawe pytanie: czy algorytm może być nieefektywny?)
-
14. Data: 2012-11-21 20:38:38
Temat: Re: Potyczki
Od: PK <P...@n...com>
On 2012-11-20, bartekltg <b...@g...com> wrote:
> Dziwne to. Studiowałem po obu stronach ulicy Pastera
> i z taką pinią po żadnej ze stron się nie spotkałem.
No to tak jak ja. Autor opinii: dr Chrząstowski-Wachtel.
>> Nie ukrywają też (są wręcz dumni), że stosunkowo mała część absolwentów
>> ląduje na stanowiskach programistów. Oraz że uczą niedzisiejszych
>> języków (to się chyba zmienia) i nieefektywnego pisania kodu (to się nie
>> zmienia).
> A tu przesadzasz, albo zmyślasz.
>:)
Po co miałbym zmyślać?
Co do przesadzania: w której części? Bo jeśli w całości, to z całą
pewnością nie.
pozdrawiam,
PK
-
15. Data: 2012-11-21 20:45:58
Temat: Re: Potyczki
Od: PK <P...@n...com>
On 2012-11-21, slawek <s...@h...pl> wrote:
> Czy zgadzamy się, że algorytmika jest jedną z dyscyplin informatyki? Jeżeli
> też tak uważasz, to dlaczego twierdzisz, że cokolwiek "zawężam"?
Problem polega na tym, że informatyka ludziom kojarzy się z komputerami
i programowaniem. Algorytmika nie potrzebuje komputerów tak samo, jak
sztuka gotowania nie potrzebuje elektrycznych maszynek do mięsa. Inaczej
mówiąc: algorytmika jest częscią informatyki w szerokim sensie (nauki
o informacji), a nie informatyki w wąskim sensie (computer science).
> Co do zadań... Za "matematyczne" (ew. "fizyczne", "historyczne",
> "geograficzne" itd.) uważam takie zadania, do rozwiązania których nie jest
> potrzebny ani prawdziwy, działający, komputer, ani też choćby wiedza o tym
> jak takie komputery działają. Np. równanie x*x - x - 1 = 0 można rozwiązać
> bez jakiegokolwiek komputera, podobnie jest z problemem "krzesełkowym" (tj.
> z zadaniem z "Potyczek").
No i zgoda. Właśnie dlatego ten konkurs nazywa się "Potyczki
algorytmiczne", a nie "komputerowe" czy "informatyczne".
pozdrawiam,
PK
-
16. Data: 2012-11-21 21:05:11
Temat: Re: Potyczki
Od: PK <P...@n...com>
On 2012-11-21, slawek <s...@h...pl> wrote:
> Ale chciałoby się, aby czasami ktoś zajmował się właśnie Informatyką - a nie
> tylko zadaniami w rodzaju "szynka traci po ugotowaniu" (tzn. zadaniami "z
> treścią" całkiem jakby wyjętymi ze starych podręczników do matematyki dla
> szkół podstawowych).
Miliony ludzi na świecie wróciło dziś z pracy po dniu spędzomy na
klepaniu kodu (w tym ja, choć nie jestem zawodowym programistą).
To chyba jednak ktoś się tą informatyką zajmuje, nie?
Generalnie rzecz polega na tym, że poza garstką szczęśliwców,
większość programistów robi rzeczy błache i prymitywne. Praktyczne
programowanie to ani nie zadania z PA ani nie "bardziej informatyczne"
szukanie podciągów ze słowem "bajt" w treści zadania. Praktyczne
programowanie to pisanie głupawych gier, GUI, setek stron dokumentacji,
debugowanie, testowanie i klepanie sterowników.
Dla ogromnej części programistów najbardziej wymagającym "umysłowo"
(matematycznie, koncepcyjnie, algorytmicznie itp itd) zadaniem
w życiu zawodowym będzie implementacja prostego algorytmu dostępnego
na wikipedii.
Władze MIMUW chciały stworzyć studia (i ich "przedłużenie" w postaci
PA), które zmuszą studentów do myślenia i zachęcą do nauki.
Statystycznego studenta MIMUW łatwiej jest zachęcić zadaniem
"ciekawostką" niż jakimiś stricte technicznymi problemami. Tym
Ci studenci (którzy w sporej części studiują równolegle matmę,
a na studia dostali się, bo byli laureatami olimpiady z matmy lub
fizyki) różnią się od choćby studentów informatyki na politechnikach.
Poza tym akurat absolwenci tego wydziału często lądują w różnych
consultingach, bankach, Gemiusach itp. I mam wrażenie, że radzą sobie
tam znacznie lepiej niż konkurenci z (także bardzo dobrej) informatyki
na Politechnice Warszawskiej. Może właśnie dlatego, że mieli na
studiach zadania bez słowa "bajt"? :)
Za to gdybym chciał zatrudnić człowieka do sumiennego rzeźbienia
w GTK, testowania i dokumentowania, to bez wątpienia wybrałbym
inżyniera lub fizyka.
pozdrawiam,
PK
-
17. Data: 2012-11-21 21:50:38
Temat: Re: Potyczki
Od: Baranosiu <r...@w...pl>
Dnia 21.11.2012 PK <P...@n...com> napisał/a:
[...]
> Miliony ludzi na świecie wróciło dziś z pracy po dniu spędzomy na
> klepaniu kodu (w tym ja, choć nie jestem zawodowym programistą).
> To chyba jednak ktoś się tą informatyką zajmuje, nie?
Absolutnie nie "podbijam" tu do Ciebie, ale jasna granica nie
istnieje. Czy ktoś, kto pisze procedurę do Excela w VB jest programistą
czy nie? Czy ktoś kto pisze skrypt w LUA pod Renoise (program
muzyczny) jest programistą czy nie? A ktoś kto robi makro w
Photoshopie (nawet nie widzi kodu!) to programista czy nie? Nie ma
twardego podziału, jednak zrobiłbym rozróżnienie między informatykiem
(który na dobrą sprawę nie potrzebuje nawet komputera do pracy, bo
zajmuje się szukaniem rozwiązań w postaci algorytmu) a programistą
(kimś, kto "tłumaczy" maszynie jak ma działać), oczywiście w praktyce
jest się zarówno jednym jak i drugim (czyli zarówno szuka rozwiązania
jak też i wyraża się to rozwiązanie w języku maszyny). Na Zachodzie jest
dużo wyraźniejszy podział między developerem i programmerem, w Polsce
jest (moim zdaniem) mniej wyraźna i wszystkich wrzuca się do jednego worka.
> Generalnie rzecz polega na tym, że poza garstką szczęśliwców,
> większość programistów robi rzeczy błache i prymitywne. Praktyczne
> programowanie to ani nie zadania z PA ani nie "bardziej informatyczne"
> szukanie podciągów ze słowem "bajt" w treści zadania. Praktyczne
> programowanie to pisanie głupawych gier, GUI, setek stron dokumentacji,
> debugowanie, testowanie i klepanie sterowników.
Jest wiele fajnych dziedzin w których można się "odnaleźć", na
przykład aplikacje biznesowe (które z programistycznego punktu
widzenia są tylko bardziej lub mniej złożonymi interfejsami do baz
danych ale odwzorowanie obiegu informacji dużej firmy w systemie i
zautomatyzowanie procesów decyzyjnych wcześniej wykonywanych "ręcznie"
to już nie jest banalna sprawa - no i pracuje się z "nieinformatykami"
:D), jest też automatyzacja (pisanie oprogramowania do
maszyn-robotów) itd. Jeśli nudzi Cię pisanie "kolejnego tetrisa na
komórkę" to poszukaj czegoś innego - jest w czym wybierać :D
> Dla ogromnej części programistów najbardziej wymagającym "umysłowo"
> (matematycznie, koncepcyjnie, algorytmicznie itp itd) zadaniem
> w życiu zawodowym będzie implementacja prostego algorytmu dostępnego
> na wikipedii.
Dla programistów tak, bo moim zdaniem programista nie jest od tego aby
*wymyślać* takie rzeczy (od tego jest projektant, analityk i paru
innych), programista siada do pracy jak już wiadomo co i jak trzeba
zrobić i tylko trzeba to wyrazić w języku maszyny. Oczywiście w
praktyce programista zajmuje się także zadaniami spoza swojego
podwórka :D
[...]
> Za to gdybym chciał zatrudnić człowieka do sumiennego rzeźbienia
> w GTK, testowania i dokumentowania, to bez wątpienia wybrałbym
> inżyniera lub fizyka.
A ja bym w ogóle nie patrzył w "cenzurkę" i kto z czego jest
magistrem, papier to tylko papier i sam papier programu nie napisze
(no i przypomina mi się słynne "jak sobie przypomnę jak niektórzy
skończyli studia, to aż się boję pójść do lekarza" :D). Przykłady kodu
i bezpośrednia rozmowa powiedzą więcej niż kierunek studiów. Czasami
potrzeba kogoś, kto będzie wymyślał rozwiązania, a czasem potrzebny
jest tylko "pianista" do wklepania kodu (i bywa, że czym mniej
"wymyśla" tym lepiej :D).
-
18. Data: 2012-11-21 22:20:11
Temat: Re: Potyczki
Od: PK <P...@n...com>
On 2012-11-21, Baranosiu <r...@w...pl> wrote:
> Dnia 21.11.2012 PK <P...@n...com> napisał/a:
> [...]
>> Miliony ludzi na świecie wróciło dziś z pracy po dniu spędzomy na
>> klepaniu kodu (w tym ja, choć nie jestem zawodowym programistą).
>> To chyba jednak ktoś się tą informatyką zajmuje, nie?
>
> Absolutnie nie "podbijam" tu do Ciebie, ale jasna granica nie
> istnieje. Czy ktoś, kto pisze procedurę do Excela w VB jest programistą
> czy nie? Czy ktoś kto pisze skrypt w LUA pod Renoise (program
Przy takim podejściu rzeczywiście nic się nie da ustalić, bo wielu
"nie programistów" klepie kod, a wiele osób zatrudnionych przy
produkcji software nie koduje ani trochę.
Jak dla mnie najlepszym rozróżnieniem jest stanowisko (lista
obowiązków). W moich nie ma słowa o programowaniu/kodowaniu,
moje stanowisko nie ma w nazwie słowa "programista" czy czegokolwiek
podobnego. Dlatego nie jestem zawodowym programistą, choć
programuję zawodowo :).
> jak też i wyraża się to rozwiązanie w języku maszyny). Na Zachodzie jest
> dużo wyraźniejszy podział między developerem i programmerem, w Polsce
> jest (moim zdaniem) mniej wyraźna i wszystkich wrzuca się do jednego worka.
W Polsce też jest bardzo wyraźny. Po prostu mówiąc "zachód" masz na
myśli duże korporacje (bo o nich wiesz). Mówiąc "Polska" masz na
myśli oferty pracy, które przeglądasz oraz znajomych opowieści
od znajomych programistów. Czyli widzisz także rynek małych firm,
gdzie 3 osoby robią cały projekt :).
Nie mniej przyznaję, że jest to zjawisko dosyć nowe. Kiedy jeszcze
myślałem, że zostanę zawodowym programistą (powiedzmy: połowa
zeszłej dekady), coś takiego jak "developer" czy "projektant
aplikacji" w polskich ofertach pracy AFAIR prawie nie istniało.
> Jest wiele fajnych dziedzin w których można się "odnaleźć", na
> przykład aplikacje biznesowe (które z programistycznego punktu
> widzenia są tylko bardziej lub mniej złożonymi interfejsami do baz
> danych ale odwzorowanie obiegu informacji dużej firmy w systemie i
No moja branża :), choć ja jestem akurat od tej strony analitycznej,
tzn. wymyślam dla zespołu software (złożonego z analityków, klepaczy
i testerów, więc bardzo "koszernie" :)).
> A ja bym w ogóle nie patrzył w "cenzurkę" i kto z czego jest
> magistrem, papier to tylko papier i sam papier programu nie napisze
> (no i przypomina mi się słynne "jak sobie przypomnę jak niektórzy
> skończyli studia, to aż się boję pójść do lekarza" :D). Przykłady kodu
Ale we wstępnej segregacji CV wybrałbym powiedzmy 10 ze 100 i byliby
to inżynierowie, fizycy i osoby wybijające się doświadczeniem. I pewnie
któryś z nich spełniałby moje wymagania. Jeśli nie, to szukałbym dalej
i może w końcu zatrudniłbym świetnego programistę po pedagogice - to
trudno przewidzieć :).
Za to akurat nie należę do osób wierzących w tezę, że rozmowa czy
fragment kodu mówi o człowieku więcej niż wyniki 5 lat studiów czy
kilkanaście punktów w CV. Człowiek na rozmowie o pracę może się
zdenerwować i spalić, może go boleć głowa, może mieć atak sraczki.
Ale jeśli skończył trudny wydział (najlepiej znany mi osobiście),
to znaczy, że w horyzoncie kilku lat umie spiąć pośladki i wytrzymać
duże obciążenie. Za to nie przywiązywałbym aż takiej uwagi do ocen,
bo są bardzo niemiarodajne. Patrzę na swój dyplom i wiem, że połowa
ocen była mocno losowa. Część w górę (bo nanielubianym przedmiocie
trafiłem na łatwe pytania), ale większość niestety w dół (bo pracowałem,
chorowałem, byłem w górach lub dorwałem się do TES:Oblivion :)).
pozdrawiam,
PK
-
19. Data: 2012-11-21 23:20:38
Temat: Re: Potyczki
Od: "slawek" <s...@h...pl>
Użytkownik "PK" <P...@n...com> napisał w wiadomości grup
dyskusyjnych:s...@n...notb-home.
..
> Problem polega na tym, że informatyka ludziom kojarzy się z komputerami
> i programowaniem. Algorytmika nie potrzebuje komputerów tak samo, jak
1. Nie wiem "z czym się ludziom kojarzy informatyka", ale wiem jaka jest
definicja informatyki.
2. Algorytmika potrzebuje komputerów aby nie być "mniemanologią". Tzn.
/można/ nie mieć komputera - ale trzeba wiedzieć, co /może/ zrobić
komputer - a czego zrobić /nie/ /może/. Inaczej "algorytmika" sprowadzałaby
się do "naciśnij guzik i wypowiedz życzenie" (bo komputer powinien sam się
zaprogramować, ot co...)
> sztuka gotowania nie potrzebuje elektrycznych maszynek do mięsa. Inaczej
> mówiąc: algorytmika jest częscią informatyki w szerokim sensie (nauki
> o informacji), a nie informatyki w wąskim sensie (computer science).
3. Moim zdaniem computer science to raczej "technologia obliczeniowa" - tzn.
w tym przypadku "computer" to coś co robi "computing". Co ciekawe, w USA są
wydziały informatyki. Co do "gotowania"... w oryginalnym dowcipie
(Dijkstra?) było o "teleskopach" - tj. że informatyka to tyle ma wspólnego z
komputerami, co astronomia z budową teleskopu. Dowcip był jednak dość
kiepski, bo astronomia rozwinęła się znacząco właśnie dlatego, że powstały
teleskopy (i radioteleskopy) - bez nich bylibyśmy zdanie na metody
staroegipskie...
-
20. Data: 2012-11-21 23:46:07
Temat: Re: Potyczki
Od: Baranosiu <r...@w...pl>
Dnia 21.11.2012 PK <P...@n...com> napisał/a:
[...]
> W Polsce też jest bardzo wyraźny. Po prostu mówiąc "zachód" masz na
> myśli duże korporacje (bo o nich wiesz). Mówiąc "Polska" masz na
> myśli oferty pracy, które przeglądasz oraz znajomych opowieści
> od znajomych programistów. Czyli widzisz także rynek małych firm,
> gdzie 3 osoby robią cały projekt :).
Byłem też 2 lata w UK (2006-2008) ale zgoda, z "zachodnim" rynkiem
miałem do czyniena tylko w kontekście dużych firm.
[...]
> Ale we wstępnej segregacji CV wybrałbym powiedzmy 10 ze 100 i byliby
> to inżynierowie, fizycy i osoby wybijające się doświadczeniem. I pewnie
> któryś z nich spełniałby moje wymagania. Jeśli nie, to szukałbym dalej
> i może w końcu zatrudniłbym świetnego programistę po pedagogice - to
> trudno przewidzieć :).
We wstępnej segregacji brałbym pod uwagę historię zawodową.
> Za to akurat nie należę do osób wierzących w tezę, że rozmowa czy
> fragment kodu mówi o człowieku więcej niż wyniki 5 lat studiów czy
> kilkanaście punktów w CV. Człowiek na rozmowie o pracę może się
> zdenerwować i spalić, może go boleć głowa, może mieć atak sraczki.
> Ale jeśli skończył trudny wydział (najlepiej znany mi osobiście),
> to znaczy, że w horyzoncie kilku lat umie spiąć pośladki i wytrzymać
> duże obciążenie.
Kwestia przeprowadzenia rozmowy. Jak ktoś się spala "z zasady" to też
i nie do końca nadaje się do współpracy w wieloosobowym zespole, gdzie
komunikacja jest jednym z podstawowych elementów. Poza tym dla mnie
akurat bardziej miarodajne jest, że ktoś "spiął poślady" i ma na swoim
koncie kilka projektów niż kilka zaliczonych egzaminów :D
Apropos castingów, to słyszałem o takim podejściu, że "egzaminowany"
dostawał nierozwiązywalny problem i badane było jak będzie "walczył",
czy po 10 sekundach "myślenia" (wyczerpaniu rutynowych podejść) powie
"nie wiem" czy też będzie próbował dalej, oraz czy spróbuje dyskutować
o zadaniu z egzaminatorem, czy też "podda się" i uzna, że to nie jego
liga - mówiąc prościej pod pretekstem zadania zawodowego (to nie była
informatyka) tak na prawdę robiono test psychologiczny :D