Keresés

Részletes keresés

mmormota Creative Commons License 2004.05.26 0 0 575
Huhh, az első és az utolsó mondat mintha kizárná egymást...
Kb. így hangzik: Mi egy nagyon jó focicsapat vagyunk, de állandó jelleggel rosszul focizunk. :-)

Megpróbálom pontosabban megfogalmazni az autodidakta programozás tanulással kapcsolatos véleményemet.

Ha valaki sose járt semmiféle programozói iskolába, de egy jól programozó csapatban megismerte és átvette a tapasztaltabbak módszereit, az nem autodidakta. Sőt, ez a legjobb, mert olyanoktól tanult, aki értenek is hozzá. (A gyorstalpaló tanfolyamokról, egyes főiskolák programozás tanításáról nagyon rossz a véleményem.)
Ha az illető esetleg egy idő után szükségét érezte hogy bővítse az elméleti tudását, és úgy ment el tanulni, hogy ki tudta választani azokat az előadásokat, amit érdemes is meghallgatni, esetleg kiküldték továbbképzésekre külföldi egyetemekre vagy cégekhez - kb. ez a csúcs.

Egy másik modell, amivel nincs jó tapasztalatom: Programozgatni kezdett otthon, saját szórakozásra. Később elvállalt kisebb munkákat, ezeket sikerrel megoldotta. Elterjedt a környezetében, hogy ért a programozáshoz, évekig dolgozott teljesen önállóan. Programozni nem tudó környezete felnézett rá, ő "értett a számítógéphez".

Kialakul egy önálló, stabil stílusa, ami több szempontból élesen ellentétes mindennel, ami a team munkához kell. A programot úgy kezdi el, hogy programsorokat ír le, és folyamatosan írja, alakítja, amíg kész nem lesz. (nem terv alapján kódol, nem dokumentált a programja, nem írja le mi mire való és mit csinál, nem különíti el a user interface-t a végrehajtó részektől, driver funkciók keverednek be, nem ismeri és így nem használja a szabványos hívásokat, megkerül rendszerfunkciókat, elszórtan sőt számok formájában szerepelnek olyan konstansok amelyek egy másik rendszer paraméterei és változhatnak, a változásokat nem dokumentálja, régi hibás szemét keveredik be, és így tovább)

Ehhez hasonló problémák miatt olvashatatlan a kód, és egy év múlva ő maga se ismeri ki magát benne. Ha mások kódjához kapcsolódik, állandóan bedől, és nem lehet tudni, miért. Régi hibák térnek vissza, és mikor nagynehezen elfogják, kiderül hogy egy már korábban javított hiba, csak visszaette a fene, mert nem a hazavitt merevlemezen levő új kód, hanem valami féléves szemét fordult be.

Ugyanakkor mélyen meg van arról győződve arról, hogy ő a menő, és értelmetlen hülyeségekkel zaklatják. Ha edig jó volt, most miért nem az?

Előzmény: ivivan (574)
ivivan Creative Commons License 2004.05.25 0 0 574
Én egy nagyon jó csapatban dolgozom jelenleg, mégsem tudtam ezeket megtanulni. Mert nincs rá idő. Sajnos jelenleg egy átlagos programra 3-6 hónap áll rendelkezésre. Ez a tervezéshez és igényfelméréshez szükséges idő fele! Szóval a programok ahogy-esik-úgy-puffan technológiával szoknak készülni :)
Előzmény: mmormota (570)
ivivan Creative Commons License 2004.05.25 0 0 573
Ez egy elég érdekes hozzászólás.

1: nagyon meg vagyok sértődve :)
2: a nagy projekteket is fel lehet osztani kisebb projektekre és akkor már hatékonyan alkalmazhatók az ilyen emberek is (mint pl én)
3: az "autodidakta programozók" is képesek együttműködni, csak kevesen nem tudják bevallani, hogy nem tudnak mindent...

Előzmény: mmormota (571)
ivivan Creative Commons License 2004.05.25 0 0 572
Természetesen hallottam a JIT-ről. És valóban sokkal gyorsabb lett tőle a Java. De a fordítás is ideig tart. Tehát ha nem olyan tesztet futtatsz, ahol valamit 10000000000000000 szor kell végrehajtani, akkor a fordítási időt is figyelembe kell venni. (például egy Java-s program mindig lassabban indul el, mint egy natív)

A túl sok szemetelés sem olyan ritka nagy programrendszerek esetén, mint azt gondolnád. Nagyon ügyes trükkök kellenek ahhoz, hogy a Java ne szemeteljen ész nélkül :)

Előzmény: nadamhu (567)
mmormota Creative Commons License 2004.05.25 0 0 571
Az autodidakta programozók kis projectekben képesek jól teljesíteni. Nagy, együttműködést igénylő munkában az én tapasztalatom szerint nem sokat ér a megszerzett tudásuk. Sőt, inkább akadályozza a helyes módszerek átvételét.
Előzmény: ivivan (569)
mmormota Creative Commons License 2004.05.25 0 0 570
Én úgy látom, jelenleg jól programozni kizárólag egy hatékony programozói team tagjaként lehet megtanulni. Ott lehet csak stílust, módszereket, tervezést, együttmúködést, tesztelési módszereket tanulni.
Az egyetem leginkább arra kell, hogy egy ilyen helyre felvegyenek.
Előzmény: ivivan (566)
ivivan Creative Commons License 2004.05.25 0 0 569
Engem inkább az zavar, hogy a tanárok, akik tanítanak, vagyis inkább tanítani próbálnak, vagy semmivel sem tudnak többet, mint mi, akiket tanítanak, mert ők is éppen most tanulják. Vagy tudják ugyan amit tanítanak, de minek kell egyáltalán tanulnunk, hiszen már évtizedekkel ezelőtt elavult...
Előzmény: NEXUS7 (560)
nadamhu Creative Commons License 2004.05.25 0 0 568
Úgyhogy olyan GUIra van szükség, amit még egy mókus is tudna használni!
Ezzel messzemenôkig egyetértek. Azzal nem értettem egyet, hogy a GUI megtervezése lenne a lényeg, hiszen legtöbbször ez a legkönnyebb feladat, és nem ezen múlik, hogy jó-e a rendszerterv.
Előzmény: ivivan (565)
nadamhu Creative Commons License 2004.05.25 0 0 567
Szerinted miben írták a JVM-et? Talán assemblyben? Természetesen az is C/C++-ban készült. És ilyen szempontból természetesen a Java program egy speciális C/C++ programnak tekinthető.
áljunk meg egy szóra...

Elôször is, mond neked valamit az a technológia, hogy JIT?
Másodszor: hogyan fordítasz virtuális függvényt assemblyre C++-ról.

Na most gondold el, hogy a JIT virtuális függvényhívást is inline-osíthat adott esetben.

Egyébként ez csak egy extrém példa. én sem hiszem, hogy egy JAVA kód gyakran gyorsabb lenne, mint egy C++-os, de a különbség egyre kisebb, gyakorlatilag csak a túl sokat szemetelô JAVA programok okoznak ma már gondot...

Előzmény: ivivan (564)
ivivan Creative Commons License 2004.05.25 0 0 566
Az informatika létező szakma, de te jártál programozó szakra? Én jártam (sőt még járok, mert halasztanom kellett az államvizsgát). És az égegyadtavilágon semmit sem tanultam ott. Szóval azon kívül, hogy lesz majd egy szép pecsétes parpirom, nem fogok semmivel sem többet tudni annál, aki nem végezte el az egyetemet, hanem autodidakta módon képezte önmagát.
Előzmény: Silan (561)
ivivan Creative Commons License 2004.05.25 0 0 565
Őszintén, hány végfelhasználóval találkoztál összesen? Egy átlag felhasználónak az egér használatát kell tanítani! Úgyhogy olyan GUIra van szükség, amit még egy mókus is tudna használni!

Viszont teljesen igazad van a GUI függetlenségében!

Előzmény: nadamhu (554)
ivivan Creative Commons License 2004.05.25 0 0 564
Szerinted miben írták a JVM-et? Talán assemblyben? Természetesen az is C/C++-ban készült. És ilyen szempontból természetesen a Java program egy speciális C/C++ programnak tekinthető. Ebből nyilván egyértelmű, hogy soha nem sikerülhet olyan Java programot írnod, amit nem lehet legalább elérni sebességben C++-ban!

A belinkelt kódba csak bele néztem, de ezt egyből kiszúrtam: "cout << fib(n) << endl;" Nagyon szépen meg van csinálva C++-ban a stream kezelés. De olyan félelmetesen lassú, hogy azt már büntetni kéne...

Előzmény: nadamhu (553)
nadamhu Creative Commons License 2004.05.25 0 0 563
OFF
Ez elvileg szerintem úgy van, hogy ha Magyarországon egy tudományegyetemen Prog-Mat-on végeztél, akkor hivatalosan (gondolom) Programozó-Matematikus vagy, vagy Programtervezô Matematikus? Ha egy můszaki egyetemen Můszaki Informatika szakon, akkor hivatalosan Mérnök-Informatikus. (nekem ez van a diplomámban.)
Aztán, hogy a gyakorlatban végül fejlesztôi, rendszergazdai, vagy más munkakörben köt ki az ember, az szerintem egyénfüggô.
ON
Előzmény: NevemTeve (562)
NevemTeve Creative Commons License 2004.05.25 0 0 562
Úgy látom ennek a topiknak már úgyis annyi... szóval kifene az imformatikus? Én ismerek sok programozót, szervezőt, rendszergazdát, operátort, adatbázis-adminisztrátort és hasonlókat, de ki az az informatikus?
Silan Creative Commons License 2004.05.25 0 0 561
Az informatikus egy létezo" szakma, diplomát adnak hozzá. Számomra elég visszatetszo", ha valaki anélkül nevezi magát informatikusnak (még akkor is ha csak úgy mondja, hogy "mondjuk rá"), hogy lenne informatikusdiplomája. Ezek után még mi jöhet? Elolvasok egy orvosi kézikönyvet, ennek alapján családtagjaimnak ajánlok ido"nként gyógyszereket, s ezek után ha megkérdezik, orvos vagyok-e, azt mondhatom: "mondjuk rá!"?
Előzmény: NEXUS7 (560)
NEXUS7 Creative Commons License 2004.05.25 0 0 560
Háj Silan!

Nem értem mit problémázol! Te hajlandó lennél musaic vagy akárki szakértelmét minősíteni olyan területeken, ahol még nem alakult ki intézmény rendszer erre?

Amúgy ez a probléma nem ismeretlen a tudomány elött sem. Érdemes elolvasni James Gleick könyvét a káosz tudományának kialakulásáról.
Voltak olyan doktoranduszok, akik saját maguk aktívan részt vettek ennek az új tudománynak a megalapozásában, ezért aztán jó kis helybetopi volt a részük. Másokhoz képest késve tudtak ledoktorálni többek között mivel nem volt ki elött vizsgázni. És akkor még a szokásos rosszindulatról nem is beszéltünk.

Előzmény: Silan (559)
Silan Creative Commons License 2004.05.25 0 0 559
Ja, gondolom, ezt is Egelytől tanultad.
"Egely úr, Ön fizikus?"
"Mondjuk rá!"

:))

Előzmény: Törölt nick (557)
Törölt nick Creative Commons License 2004.05.25 0 0 558
"...en egy szoftverfejleszto cegnel vagyok architekt es designer, ugy, hogy semmi kozom a program kinezetehez/vizualis dizajnjahoz. :)"

VAN RÓLA DIPLOMÁD????!!!
:)

Előzmény: Szindbad76 (555)
Törölt nick Creative Commons License 2004.05.25 0 0 557
"Nem hiszem, hogy valaha is komolyan programoztál."

Hinni a templomban kell.. Tőled (egy komoly tudóstól?) ilyen mondatokat nem tűrök el.. :)

"Azonkívül szerintem nem volt korrekt részedről, hogy az "informatikus vagy?" kérdésre azt válaszoltad: "mondjuk rá". Milyen diplomád is van?"

Hadd tegyem meg kedves Silan, hogy azt mondjam, amit jónak látok. Lécci, lécci, lécci!
Nálam a "mondjuk rá" azt jelenti, hogy "szűk értelemben véve", nem a köznapiban.

"Akinek nincs informatikusdiplomája, az ne nevezze magát informatikusnak. Pont."

Csak hogy tisztázzuk: Nem neveztem magam annak. Csak te hallgatólagosan annak vetted.
Egyébként, ha valaki a lent írott munkákat végzi, minek neveznéd? Számítástechnikai betanított munkás? Vagy mi? Akkor eléggé tróger vagyok, a mögöttem álló 20 évvel..
Nem igaz?

Előzmény: Silan (550)
Törölt nick Creative Commons License 2004.05.25 0 0 556
"De azt nem árt leszögezni, hogy szerintem teljesen más jellegů munka a grafikai designolás, meg mondjuk a legújabb QUAKE engine tervezése, optimalizálása."

Természetesen. Más jellegű, így van. Én csak annyit mondtam, hogy egyik munkakör sem előbbrevaló a másiknál.

"Tehát, ha csak annyit mondassz, hogy játékszoftver fejlesztô vagy a legtágabb értelemben, az kb. olyan, mintha azt mondanád, hogy hangszerekkel foglalkozol. Nem?"

Tényleg lehet, hogy annak tűnik.
Lehet hogy hihetetlen, de játékszoftverfejlesztésben nem pusztán egy kategóriába tartozom. És ezzel nem vagyok egyedül. Ül még itt néhány ilyen ember..

A cv-ben pl. ilyenek vannak..:
"1997 januárjától saját csapattal (Redward Studios), megkezdtük egy 3D-akció űrszimulátor
fejlesztését, Drift címmel. A projectben 3D modell tervezéssel (csapatunk saját tervezőrendszerével és engine-ével), hangeffektus készítéssel, speciális vizuális effektekkel és 3D vektoros animációkészítéssel foglalkoztam.
A fejlesztési idő alatt több, mint:
-1400db 3D objektumot
-1000db audio szinkronhangot és effektet, kb.
-130db specális (vizuális) effektet, ezek összesen kb.
-1500db különálló effektet tartalmaznak, és kb.
-20db bázist és scene-t
terveztem meg, és tartottam kézben. Mindezeken kívül az összes renderelt és realtime 3D mozi, VHS kiadvány, promóciós videó vágását, hangeffektezését és szinkronját készítettem el. Feladatom volt még a játék egységes grafikai megjelenésének biztosítása, a többi grafikus munkájának összehangolása, felülvizsgálata/szűrése által. A 3D objektumok: az űrhajók, az adatbankban látható fegyverek és tool-ok 150-600 polygonból állnak, az akkori időben kiadott programokhoz képest meglehetősen részletes kidolgozottsággal, olyan technológiákat tartalmazva, amelyek még ma sem túl gyakoriak. Ezen technológiák kifejlesztésében is részt vettem.
1999 Októberétől az Appaloosa Multimediánál dolgoztam, a már kiadott munkák közül részt vettem az Ecco the dolphin projectben (dreamcast és ps2). Feladataim közé tartozott a pályaépítés-bevilágítás, térkép, speciális effektek, realtime 3d mozik készítése, stb. Az általános projectfejlesztés mellett 2001-2002-ben két webes java játékban is dolgoztam grafika/hang/pályakészítés munkakörben: http://www.bonus.com (super dino, streetball)
2002 novemberében adták ki Amerikában saját magáncsapatunk játékát, Drift: when worlds collide címmel. Jelenleg otthoni szabadidőmben saját 3D-s játékkal, modellekkel, hangokkal, filmvágással, digitális fotózással, statikus weboldalak fejlesztésével foglalkozom, valamint részt vettem a fővárosban látható új Taxi állomások modellezésében, és a pályázati dokumentációjának elkészítésében."

Bocs ha hosszú lettem.. Ennyire offtopic témát ide..

Előzmény: nadamhu (546)
Szindbad76 Creative Commons License 2004.05.25 0 0 555
Hehe, csak hogy teljes legyen a fogalmi zurzavar, en egy szoftverfejleszto cegnel vagyok architekt es designer, ugy, hogy semmi kozom a program kinezetehez/vizualis dizajnjahoz. :)
Előzmény: Silan (536)
nadamhu Creative Commons License 2004.05.24 0 0 554
OFF
Nem érdemes általánosítani, de szerintem a GUI a leglényegtelenebb része leggtöbbször a rendszernek. (A munkahelyi projektünkben mondjuk pl. nincs is.) Egyébként a GUI-t legjobb minél jobban leválasztani a rendszerrôl, hogy aztán bármikor lecserélhetô legyen. (Vagy lehet párhuzamosan pl. web-es, GUI-s, API-s, parancssoros interface.)
ON
Előzmény: ivivan (551)
nadamhu Creative Commons License 2004.05.24 0 0 553
OFF
Nekem még sosem sikerült Java-ban jobb kódot írnom, mint C-ben... Ha ilyet csinálnál az csoda lenne! Vagy béna a C programozó. Ugyanis a JVM is eszik némi erőforrást. A nagyon profi programozók szerint 3-5 ször lassabb a Java (plussz amennyi a GC ideje)
Nem tudom, hogy kik ezek a nagyon profi programozók. Ahogy HondaVuk leírta, a Java manapság jellemzôen max 50%-al lassab, mint a C++.
Persze minden az aktuális tesztprogramok jellegén múlik, de nem ritkák az olyan tesztek sem, ahol gyakorlatilag egyezik a tlejesítmény, sôt esetenként a JAVA gyorsabb.
Ez elvileg is elôfordulhat, mert a JIT inline-olni tudja a virtuális függvényeket, amit egy C++ fordító nem tud megtenni.

egy teszt, amiben a JAVA gyorsabb

Persze eredetileg C++-ról volt szó, te meg C-rôl beszélsz, de hát én nem szívesen programoznék C-ben ma már, hacsak nem kényszerítenének.
ON

Előzmény: ivivan (549)
ivivan Creative Commons License 2004.05.24 0 0 552
Szerintem meg az ne nevezze magát informatikusnak, akinek van diplomája róla, de egyébként gőze nincs róla...
Előzmény: Silan (550)
ivivan Creative Commons License 2004.05.24 0 0 551
Szerintem jelenleg a legfontosabb része egy szoftver fejlesztésének a felület, a GUI megtervezése! Az egymással versengő programok tudásban szinte teljesen megegyeznek, csak külsőben, felhasználó-barátságban térnek el!

Ez most már tényleg az ucsó OFF volt. Megigérem. De még sosem sikerült egy igéretemet se betartanom!

Előzmény: Törölt nick (545)
Silan Creative Commons License 2004.05.24 0 0 550
Akinek nincs informatikusdiplomája, az ne nevezze magát informatikusnak. Pont.
Előzmény: ivivan (549)
ivivan Creative Commons License 2004.05.24 0 0 549
Silan: Még nekem sincs diplomám, ennek ellenére cirka 5 éve ebből élek. És csak önkormányzatoknak, minisztériumoknak írogatok pici rendszereket (pl: pénzügyi rendszert)

Ha van olyan szakma, ahol nem számít a diploma, akkor az a programozás és tágabb értelemben az informatika is ilyen. Nem az a fontos, hogy diplomád legyen, hanem hogy programozni tudj!

Nexus: Igazából nagyon hülye vagyok mindenfajta grafikához. Inkább a programozás másik vége érdekel: a tervezés, az adatbázisok, az algoritmusok.

Nekem még sosem sikerült Java-ban jobb kódot írnom, mint C-ben... Ha ilyet csinálnál az csoda lenne! Vagy béna a C programozó. Ugyanis a JVM is eszik némi erőforrást. A nagyon profi programozók szerint 3-5 ször lassabb a Java (plussz amennyi a GC ideje)

Szerintem egyébként a leginkább hasznos programozási nyelv a Java jelenleg: egyszerű, könnyen programozható, de kellő ismeretekkel mindent meg lehet benne csinálni...

Előzmény: Silan (548)
Silan Creative Commons License 2004.05.24 0 0 548
Nem hiszem, hogy valaha is komolyan programoztál. Azonkívül szerintem nem volt korrekt részedről, hogy az "informatikus vagy?" kérdésre azt válaszoltad: "mondjuk rá". Milyen diplomád is van?
Előzmény: Törölt nick (543)
nadamhu Creative Commons License 2004.05.24 0 0 547
Még jobb párhuzamok:

Keveset mond: zenecsinálással foglalkozok.
Többet mondanak:
a. Hangmérnök vagyok.
b. Zenész vagyok.

Keveset mond: autókkal foglalkozok
Többet mondanak:
a. Autó tervezô mérnök vagyok.
b. Autóversenyzô vagyok.

...

(Egyik sem alacsonyabbrendů, mindegyiket lehet profin csinálni, de jellegükben azért különböznek.)

Előzmény: nadamhu (546)
nadamhu Creative Commons License 2004.05.24 0 0 546
Általános az a hozzáállás(főleg "adatbázis" programozóknál), miszerint a programozóknál alábbvaló minden más munkakör.
Szerintem egyik munkakör sem alábbvaló a másiknál, fôleg, hogy mindet lehet nagyon profin, meg sz@rul is csinálni. Pl. ha a projektnek profi tesztstartégiája van, és a teszter profi, az sokat segít.
De azt nem árt leszögezni, hogy szerintem teljesen más jellegů munka a grafikai designolás, meg mondjuk a legújabb QUAKE engine tervezése, optimalizálása. Gondolom kb. olyan a viszony, mint a hangszerszekesztô, meg a zenész között.
Tehát, ha csak annyit mondassz, hogy játékszoftver fejlesztô vagy a legtágabb értelemben, az kb. olyan, mintha azt mondanád, hogy hangszerekkel foglalkozol. Nem?
Előzmény: Törölt nick (545)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!