"Én sem tudom pontosan, most hol tart nálunk az oktatás és mit tanítanak, csak azt láttam, hogy akiket suli után felvettünk (nulla gyakorlattal), azok helyett a pizzafutárt is berángathattuk volna,"
10 éve történt: cégünk c++ programozókat keresett. 10 jelentkezõbõl 8-nak fingja se volt a pointer-aritmetikához. És C programozásból akar megélni? Ez volt a példa amin 80% diplomás elhasalt:
DWORD* p = 0x1000; p++; p = ?
Leggyakoribb válasz az 0x1001 volt. De elõfordult 0x1002, 0x1016 (!) is. Én meg máig nem értem.
"A programozás = matematika" Ehhez szeretnék hozzáfûzni egy durva felismerést: Az egyszeri programozó nem is találkozik a matekkal! Én 10 év után azt vettem észre hogy összeadni se kellet :) Sõt, ha csak összeadok két számot és az eredményt írom le a kódba az szakmai hiba! Mert senki sem fogja érteni mi a a fasz az a y = 123, ellenben így rendben van: #define LOW_LIMIT 100 #define BORDER_SIZE 23 y = LOW_LIMIT + BORDER_SIZE;
Sõt a megrendelõ külön kéri, hogy ne kezdjünk el "optimalizálgatni". Mert nem érdekli hogy egy függvény 10 vagy 14 ms alatt fut le, az érdekli hogy a kód olvasható, fejleszthetõ legyen.
Sõt, a rendszertervezõk se matekoznak. Nekik design patterns, intelligencia és tanulási vágy kell.
Aki matekozik az nagyon kis rész, pl. aki kitalálja a képtömörítéseket, titkosításokat. Ha õ kész van az algoritmussal a programozó majd lekódolja.
Persze nem azt akarom írni, hogy aki büszkén vallja, hogy "hülye vagyok a matekhoz" az jó lesz programozónak. Kell hozzá némi intelligencia és mérnöki véna (rendszer-szemléletnek, analitikus gondolkodásmódnak szokták írni az állás hirdetésekben). De ha ezek megvannak, a mérnöki szakmák közül mindenképp a programozót javasolnám. A legnyugisabb meló :) Nem dõl össze az épület, nem füstöl el a motor. Ha hiba van egyszerûen kijavítjuk és mindenki boldog :)
szánalmas.... gépészmérnöknek is teljesen felesleges belenyalogatni minden szarba. PLC... jó-jó szép meg minden, de az egy külön szakma. ki nem szarja le a metódusok felépülését? CAE ANSYS algoritmusok... No comment. Kajak azt se tudtam mit tanulok csak 15-20 cm széles képleteket bemagoltam. A francot nem érdekli, hogy rácsszerkezetnél a hegesztési tényezõk komponenseit meg feszültséget hogy csûri-csavarja.
Általános isiben bezzeg még a szövegszerkesztõ is érdekes lett volna. De nehogy baja legyen a gépeknek inkább csak ültünk elõtte és Neumann elvek... dec>bináris szarakodás. és TÁBLÁN a TURBO pascal!!!!
Hungary.....
Ami ideális lett volna: egy objektum-orientált nyelv alapos ismerete, Model-View-Controller ismerete, sok-sok framework és design pattern ismerete, mit mikor és hol érdemes használni. Hogy át lehessen beszélni egy egész programozási folyamatot úgy, hogy a konkrét nyelvet még csak nem is érintettük.
Én sem tudom pontosan, most hol tart nálunk az oktatás és mit tanítanak, csak azt láttam, hogy akiket suli után felvettünk (nulla gyakorlattal), azok helyett a pizzafutárt is berángathattuk volna, mert fél-egy évig csak tanultak, utána tudtak valami hasznosat produkálni. Mindenrõl hallottak de semmit nem tudtak a gyakorlatban, olyan volt mintha egy vaskos könyvbõl csak a fõcímeket magolták volna be.
Az a baj, hogy a felsõoktatásban jelenleg nincs igazi alapozás, meghatároznak egy nyelvet (tapasztalataim szerint elõszeretettel vagy JAVA, vagy C vagy C++ lesz ez) és abban elkezdik bemutatni a különbözõ technikákat és módszereket.
Én anno 2 évig tanultam kifejezetten programozást OKJ keretein belül (megjegyzem, kidobott idõ volt). Anno azzal kezdtük, hogy megtanítottak minket megtervezni a programot, utána azt, hogy hogyan válasszuk ki a megfelelõ nyelvet (ez mondjuk poénos volt, mert õssz-vissz tanultunk Pascalt és Delphi-t) és csak ezután jöhetett a kódolás folyamata. Ma meg megkérdezel egy felsõoktatásban tanulót arról, hogy minek alapján választott programnyelvet és milyen módszerrel tervezte meg a programját és nézz rád, mint borjú az új kapura. Lehet, hogy sok dolog elavulttá vált az évek folyamán, nem tudom, mert a programozástechnikát nem követtem az évek folyamán, mivel más szakágat választottam végül, de szerintem sok olyan dolog van, ami még mindig élvez létjogosultságot, mégse tanítják és nem is használják.
"Mark LeBlanc szerint a kreatív írás mellett számítástudományt is kell tanulniuk a költõknek"
Szerintem meg Mark LeBlancnak el kellene mennie egy húsz éves kvantumfizika tanfolyamra, az is nagyon hasznos tud lenni, több példa is van rá.
Szerintem a programozás alapjait fél, az objektum orientált gondolkozást és trükköket újabb fél év alatt meg lehet tanulni. Ennyi alapozásnak elég is, mert aztán jön egy nyelv kiválasztása, amiben úgy 5-6 év gyakorlat után mondható valaki jónak. Ebbõl látszik, hogy az elsõ év ami suliban megoldható, de az is csak akkor ha igazán érdekli a delikvenst a programozás (30 gyerekbõl 1). Ne raboljuk el gyerekek idejét, nekik sincs végtelen.
Nekem ez a kedvenc programozós kurzusom (Stanford). Nagyon nagy arc a csávó, és tényleg megtanít mindenkit 0 elõképzettséggel. Igaz bizonyos értelemben az elõadásokon érzõdik az amcsi színvonal, fõleg az elsõ néhányon.
Hagyjad már... szvsz hasznos a link. Az elsõ kurzus Python programozási nyelv, ami kb annyi, mint anno a 8 bites gépeken a Basic, azaz a kezdõ szint, de alaposan végigrágják. Ráadásul interaktívak a videók.
Ránéztem az linkedre, és elsõ nekifutásra nem is tûnik rossznak... nem tudom mennyire mennek bele a dolgok mélységeibe, de amit gyorsan meg tudtam nézni az érdekes.
"Ez ugyan humoros, de ez sohasem ment igy. Mar regen is egy billentyuzeten kellett gepelni es a gep lyukasztotta a szallagot"
Nem mindenhol. Pl. a gep inditasakor elindulo szoftver (gyakorlatilag a bios) elso korben meg core memory-ban volt. Ezt a fejlesztoi hardvereken egy nagy tablaba kis ferrit rudak behelyezesevel lehetett programozni, majd ez alapjan fontak belole fix programu memoriat a munkasok. Meg az apollo urhajok fedelzeti rendszere is ilyen volt. (a foldi tesztek soran tobbszor kellett a rom modulokat ujrafonni a bugfix-ek miatt) Ennek a technologianak a modern megfeleloje lett kesobb a diodamatrixos programozas, amit meg ma is hasznalnak par helyen, a regi domino vasuti biztositorendszerekben es ezek modellvasutas masaiban. A masik kedvenc programozasi megoldasom, amit poenbol eloben is kiprobaltam a bistabil reles ram programozasa a relek manualis atallitasaval. Ez azert jo, mert ha hiba van a programban, a gep megallithato, majd a manualis modositas utan ujraindithato. A vilag elso bug-ja, egy molylepke is egy ilyen reles rendszerbe szorult be. (a bug-ot a megtalalasa utan beragasztottak a tesztelesi jegyzokonyvbe, ezert fennmaradt az utokornak)
Ha már programozás és valaki szeretne fejlõdni (kis ízelítõ az online tananyagokból a udacity.com oldalról: "Programming A Robotic Car", "Building a Search Engine") Nem unalmas, a profok tök jó fejek. Ha regisztráltok segíthettek minket azzal, hogy csatlakoztok a tanuló csoportunkba és tanultok szorgosan: http://www.udacity.com/hschallenge/team/join/agpzfnVkYWNpdHl1cgwLEgRVc2VyGLmgCQw (ez egy verseny, sokat segítenétek vele http://www.udacity.com/hschallenge) Ezután akár szívesen segítünk is a tanulásban, ha írtok nekünk: [email protected] Ha esetleg az E-learning komolyabban is érdekelne :) http://www.facebook.com/colibrator
"emlekeim szerint a memoria kezelesben, cimzesekbe es a kodban valo ugrasokban is segit az ASM"
"Azt ugye tudod, hogy az assembly az tk. a gepi kod mnemonikus megfeleloje? A szimbolumkezelesen kivul semmiben sem kulonbozik egy gepi kodu programozastol. Annyi a kulonbseg, hogy $a9 helyett, LDA-t kell beirni..."
Lenyegeben igen, a szamok helyett, tobbe kevesbe ertelmes nevek vannak, de emlekeim szerint a memoria kezelesben, cimzesekbe es a kodban valo ugrasokban is segit az ASM.
Látom sok itt az assembly-ben programozó, akik assembly-ben kezdték a programozást és ott is fejezték be...
Én azt mondanám hogy ne generáljunk újabb Pistikéket! A szakmák 90%-nál találhatunk nagy számban olyanokat akik hallottak már valamit a dolgokról és õk egybõl "szakemberek" lesznek. Több éve programoztam mire érettségi után "használható" informatikai szakképzésben vehettem részt. Ezt követõen fejlesztõként helyezkedtem el amit azóta is csinálok. De! Hiába tanulok naponta új dolgokat, hiába fejlesztem magam, még így is sok év kell hogy arra a szintre jussak amire azt mondhatom hogy "szakember".
Az emberek értsenek egy esetleg két dologhoz rendesen(ahogy lentebb is írták már). De ne sokhoz kicsit. Mondjuk ehhez szintén reális elvárás lenne hogy a tanár is értsen már ahhoz amit tanít.
"Ugyan mar ASM-et csak ovisok hasznalnak, es a nagyon benak."
Azt ugye tudod, hogy az assembly az tk. a gepi kod mnemonikus megfeleloje? A szimbolumkezelesen kivul semmiben sem kulonbozik egy gepi kodu programozastol. Annyi a kulonbseg, hogy $a9 helyett, LDA-t kell beirni...
"es szepen bit-rol bit-re lyukasszak bele a gepikodot"
Ez ugyan humoros, de ez sohasem ment igy. Mar regen is egy billentyuzeten kellett gepelni es a gep lyukasztotta a szallagot.
"De aztan elsore mukodjon, mert nem pazaroljuk a gepidot javitgatassal."
Nekem egy idoben nagygepes assembly-ben kellett programoznom es altalaban csak masnapra kaptal futtatasi eredmenyt. Ha volt hiba, akkor ujra neki tudtal futni. Szoval tenyleg nagyon at kellett nezni a code-odat, hogy elsore fusson!
"Ilyet persze en is csak a tv-ben lattam, de szep idok lehettek azok."
Szerencsere a lyukszalaghoz nekem nem volt szerencsem, de lyukkartyaval eleg sokat dolgoztam. A kezdeti izgalomtol, amit egy lyukkartyalyukaszto gep okoz, nagyon gyorsan felfedezed a rengeteg hatranyat is. Summa summarum ma mar senkinek sem kivannek ilyet :)
mit akarnak föiskolában ezzel már? szakközépben/gimiben kéne tanitani számtechböl nem pedig microsoft office-t 4 éven át pár évvel ezelött..... hasztalan szar
Éppen ez a baj, hogy még a "szakértõ" helyre ültetett egyének sem vettek részt megfelelõ oktatásban. Az, ami magyarországon van az egy rakás kaki, nem oktatás.
Így aztán csak olyan embereket tudnak alkalmazni, akik ismerethiánnyal küzdenek, és nincs is helyettük más.
De az is igaz, hogy szarért-húgyért várnák el a mélyebb szakmai tudást, kb annyit akarnak és fizetnek is, mint egy betanított majomnak. Néhány kiló banánnal ér fel a hazai fizetés.
Ugyanakkor a multis cégek (mivel szvsz nekik vannak meg erre a megfelelõ anyagi forrásaik) megtehetnék azt, hogy a frissen felvett alkalmazottaikat célirányos szakmai továbbképzésre kötelezõen elküldenék - és azokat, akik ezen a képzésen képesek megfelelni, csak õket tartanák meg (megfelelõ fizetéssel persze, mert különben konkurrensek elcsábítanák), nemcsak az ilyen-olyan szir-szar vállalati rendszerük kezelésére tanítanák be, mert ha valami egyszerû, de nem sablonos problémával találkoznak, akkor képesek lennének azt is megoldani.
De egyébként a tendencia az, hogy inkább betanított bio-robot-makikat alkalmaznak a céget, mert azokat nagyon egyszerû lecserélni... meg a banán is olcsó.
Pl ahol én dolgozom, ott elviekben nem volna szabad segíteni pl egy router beállításában, állítsa be az ügyfél saját maga; ha már vett ilyet akkor legyen képes be is konfigurálni. Az igaz, hogy hivatalosan nincs ugyan megtiltva ez, de a teljesítményed kiértékelésénél ez nem pozitívum, hanem ellenkezõleg. Lerontja azt, mert nyilván egy router beállítása több idõt vesz igénybe, mint egy szimpla netkapcsolat létrehozása winXP/win7 alatt... márpedig mindenhol (értsd: minden szolgálató cégnél) alapvetõ cél az, hogy egy kezelõ minnél több hívást fogadjon. Ennek nyilvánvaló oka van. Ha egy alkalmazott több hívást kezel le, akkor kevesebb alkalmazott kell az ügyfélszolgálatra. Na, meg kevesebb szakmai tudással is kell rendelkeznie. Mondjuk egyes helyeken ezt a problémát úgy oldják fel, hogy csinálnak egy második szintû supportot, de keményen fizetnie kell az ügyfélnek.
Szerintem ez a lenyege a cikknek. Nem akarnak mindenkibol profi, de meg csak jo programozot sem faragni. Csak annyit, hogy az embereknek legyen egy alap elkepzelesuk a programozasrol. Es ehhez szerintem boven eleg lenne egy sima basic nyelv 20-25 utasitasat megtanitani. Ez eleg lenne egyszerubb programok irasara, es kozben megertenek a programozas mibenletet. Szerintem ennyit barkinek meglehetne tanitani.
"hanem az igazi programozási nyelv az az ASM... na!"
Ugyan mar ASM-et csak ovisok hasznalnak, es a nagyon benak. Az igazi programozo lyukszallagot es lukasztot hasznal, mint az 50-es evekben a nagyok. Addnek a kolkoknek 10 meter lyukszallagot meg lukasztot, es szepen bit-rol bit-re lyukasszak bele a gepikodot. De aztan elsore mukodjon, mert nem pazaroljuk a gepidot javitgatassal. Ilyet persze en is csak a tv-ben lattam, de szep idok lehettek azok. Akkor meg voltak igazi programozok.
Mondhattam volna a belsõs technikusokat is, akiknek úgy kellett megemlíteni, hogy esetleg ha egy modem nem tudja lefrissíteni a firmware-jét, mivel hibás FW file van a mappában, amibõl próbálkozik, akkor nem ártana, ha a kényszerített frissítést leállítanák a hálózaton, mert akkor esetleg az a szerencsétlen modem be is tudna inicializálni és képes lenne mûködni.
Több, mint 36 órán át azért nem volt netem múltkor, mert ez a hiba állt fenn, de össze-vissza beszéltek (közölték, hogy a hiba nálam van, majd mikor kisült, hogy a belsõ hálózati hiba lényegében csak egy egész megyét érint, akkor nekiálltak keresgélni és még így is mikor 24 órányi netszünet után ismét felhívtam õket, hogy bocsi, de a modem logja tele van az FW-s hibaüzenettel és nem ártana a kényszerített frissítést letiltani vagy egy helyes FW filet tenni a hibás helyett a mappába, a technikus közölte velem, hogy hát igen, igazam van, de a mérnökök éppen a területen keresgélik a hiba forrását, így 12 órával késõbb lehet csak net).
Szóval nem csak a HelpDesk operátorok, hanem a technikusok és a mérnökök is megérnének sok esetben egy misét...
Az a baj, hogy ez az új oktatási rendszer, amiben ugye a szakképzések FSZ néven futnak, még lovat is adnak a cégek alá azzal, hogy megpróbálnak univerzális embereket képezni. Ami egyébként az oktatók véleménye szerint is lehetetlen, hiszen mindenkinek kell valamilyen erõsség, nem lehet teljesen különbözõ ágazatokhoz maximálisan érteni.
"-esetleg minimális technikai problémákat ha nem is javítani de felismerni pl hogy a router ment tönkre vagy a net ment el. (forrasztás)"
Komolyan azt várod el, hogy egy felhasználó tudjon ilyesmit, miközben egy UPC-s HelpDesk, ha felhívják, ránéz egy logra és közli, hogy nem az õ hálózatukon van a hiba, mert a modem normális adatokat ad, tehát keresd a saját belsõ hálózatodban a hibát és azt nem képes felfogni, hogy ha direktben rádugod a gépre a modemet, akkor se megy, ráadásul maga a modem nem lépes rendesen inicializálni...?
Kérdem én, ha a "szakértõk" nem képesek ilyesmire, egy szimpla felhasználónak miért kellene tudnia?
Úgy is van. Amúgy minden idõk legjobb CPU-jának tartják a MC68000-et. Amúgy még egyes gyártók még ma is gyártják...
De a cikkhez - bölcsészkarosok ismeretköréhez - kapcsolódóan egy igazi ROFLMAO-s videó: http://www.youtube.com/watch?v=s233IA1f2L4&feature=player_embedded#! :D
Hajh... anno '96-ban, az erdõmérnökin az informatikai tanszék vezetõnek nem kicsi naívitással kifejtettem személyes véleményemet, miszerint a Visual Basic az nem programozási nyelv, hanem az igazi programozási nyelv az az ASM... na! Persze totál kiakadt ezen - mivel nem tudtam, de ez a magasszintû prog.nyelv volt a "favoritja", a vesszõparipája". (ezért rögtön megvádolt azzal, hogy nem jártam be az elõadásaira - ami persze nem volt igaz, mert bejártam, mivel azokon az órákon másoltam le mindig a kémia és fizikas gyakorlati házifeladatokat, a többiektõl kölcsönkérve) Ez egy hosszú sztori, de kivágott, bár nem írt be egyest. Amúgy fogalma nem volt arról, hogy azon az évfolyamon egyedüliként értettem valamit az informatikához, hiszen akkoriban az erdõmérnökök érdeklõdési köre csillagászati távolságokban volt "a számítógépek programozásától"...
Amikor a vizsgaidõszak végefele ismét elmentem vizsgázni "informatikai ismeretekbõl", pechemre felismert. Bár ezt majdnem megúsztam, de a baj forrása az volt, hogy a gyakorlati beugróm eleve megvolt, hisz az már a múltkori afférkor teljesült (és amibe szavaival élve - nem tudott belekötni), így azonnal mennem kellett szóbelizni, jóval a többiek elõtt. Úgyhogy próbált megszívatni. Mivel is? Aznap jelent meg a Heti Chip (akkoriban még volt ilyen folyóirat), ami ott volt az asztalán... belelapozott, majd abból kérdezgetett, mint pl az akkor még bezevezetés elõtt álló DVD szabványok ismertetése...
Végül négyessel "jutalmazott". A többiek nem akarták elhinni, mivel volt olyan évfolyamtársam, aki úgy kapott jelest, hogy amikor megkérdezték tõle a számítógépházra mutatva, hogy az mi, azt a választ adta feleletül, hogy a winchester...
Na ez jutott eszembe az ASM-rõl, ami meg viszont az én favoritom volt még 8 és 16bites gépeken.
Egyébként szörnyû az, hogy mennyire nem tudnak valóban programozni azok, akik ebbõl élnek meg... hadd ne mondjam mi van itt nálunk, ahol most dolgozom. De persze ez nem azt jelenti, hogy mindent ASM ben kellene írni, az felesleges lenne. De nemhogy programot nem tudnak írni, hanem egy normálisan rendszerezett GUI-t (vagy csak UI-t) nem tudnak összekalapálni...!!
aki számítógépet használ tudjon programozni...mi sem természetesebb
aki autót vezet legyen szerelõ aki nezét hallgat mindjárt legyen hangtechnikus aki telefonálni mer legyen elektromûszerész ha esetleg átmegy egy hídon, kutya kötelessége mérnöki tudással rendelkezni és ha netán fel mer valaki nézni az égre, akkor egybõl csillagász ...
hmmm...
"Én programozást tanultam két évig,2006-2008.(Pascal, Delphi, C++, Java, ...stb);....A következõképp nézett ki a dolog: elsõ nap, elsõ óra, Pascal.Tanár bejön, létszámolvasás. Oké; akkor kezdjük egy egyszerû programmal, ami véletlenszerûen generál egy két jegyû számot 10 és 100 között. Elkezdte felírni a kódot a táblára.Mi meg csak néztünk, mint Jenõ a moziban. Egyáltalán mi az a Pascal?Hol kell keresni?Hogyan indul?...Már végzett a "programmal" mire a 20 diákból kb 4-nek sikerült elõvarázsolnia a monitorra a Pascalt."
A kilencvenes évek elején az elsõ prog. gyakorlatom még így nézett ki:
Üdvözlök mindenkit, aki a következõ feladatot 4 perc alatt lekódolja cében, az ötöst kap, aki 5 perc alatt, az négyest, a többiek egyest.
Töredékünk ment tovább, mert a túlnyomó többség azt hitte, hogy mesedélelõttök lesznek a félév folyamán. Aki nem foglalkozott elõtte komolyabban* a programozással, algoritmizálással, annak annyi volt (matek, fizika, kémia: ugyanez).
*persze nem indult mindenki a 256 bájtos asm versenyeken :)
Amirõl én írtam az egy két éves képzés volt érettségizetteknek. Mindenki tudta, hogy elõképzettség nélkül iratkoznak be az emberek(1-2 kivétellel), akik programozást szeretnének tanulni.
"Míg régebben volt szoftverüzemeltetõ, rendszer-adminisztrátor, rendszergazda, rendszermérnök, programozó, webprogramozó, stb., addig ma már a rendszergazdának kellene mindent tudnia. "
Ez azért van, mert a cégek spórolni akarnak, és azt hiszik, hogy van olyan ember, akinek egy 3 éve létezõ programnyelvben 5 éves tapasztalata van, plusz felsõfokú végzettsége, plusz 3 nyelv tudása, plusz tízmillió programnyelvet és technológiát ismer. Ja, és 30 éves alatt, ha lehet. Mindezt bruttó 200-ért. Félelmetes, hogy milyen elvárások vannak a piacon, nulla fizetségért. Ha pedig nem jön az ember, akkor a pozíció üresen marad és az ügyfél szív.
Általános iskolában tanítanak biológiát és kémiát és nem a biológus és vegyész lobbi aknamunkája miatt, hanem mert nem árt tudnia egy 14 éves embernek, hogy miért lesz a szexelésbõl gyerek, és hogy ne öntsön egyszerre hipót és sósavat a vécébe, ha nem akarja magát megmérgezni. Ugyanakkor ahogyan a kémiai jelenségeket sem lehet megérteni, ha olyan alapvetõ fogalmakat nem tisztáznak, mint atomok és molekulák, ugyanúgy a számítógépet is úgy fogja használni a következõ nemzedék, mint egy betanított majom, ha legalább koncepció szinten nem ismertetik meg a programozással.
A programozással egy újfajta feladatmegoldási stratégiát tanulsz meg. Nem épp elhanyagolható. És igen. Mindenkinek kéne egy kicsit sportolni és olvasni is. Az alapmûveltség bármilyen hihetetlen ma már nem egy bipoláris szuicid költõ depressziós epizódjainak az ömlegéseinek betû szerenti ismeretébõl vagy egy 100 éve élt ember párkapcsolatainak napra pontos ismeretébõl áll hanem elsõsorban arról szól hogy a mai (igen bonyolult világban) képes vagy e -egészséges és fitt maradni (sport) -naprakész maradni (olvasás) -komplex problémákat kezelni (analitikus gondolkodás, programozás) -esetleg minimális technikai problémákat ha nem is javítani de felismerni pl hogy a router ment tönkre vagy a net ment el. (forrasztás)
Excel + Word vazzeg. Programozni?? Mi a fészkes fenének? A programozás ott kezdõdik, hogy a feladat határozza meg a nyelvet! Ha csak egy nyelvet tanítanak meg, és magától nem megy tovább a jó ember, felesleges kínozni...
Ja és amitõl kurv@ idegesítõ a dolog: Testépítõk véleménye: mindenkinek gyúrni kellene egy kicsit vazzeg. Könyvmolyok : Mindenkinek olvasni kellene egy kicsit vazzeg. Elektrósok: Mindenki forrasszon mááár. IT: programozás... na vazz
Ez egy marketing tudományos sz@r! Aki kényszerbõl tanul ilyet, az hányni fog és soha nem ér egy igazi programozó közelébe... akkor meg minek... sz@r
aha ja a töredéke. Programozáshoz kell logika, függyvények, egyenletek, alapmûveletek, azt hello.
Programozást van értelme tanítani általános iskolai szinten, de nem komolyabban, mint mondjuk a zenét vagy a rajzot. Azaz legyen minden gyereknek rálátása a témára, alakuljon ki egyfajta egészséges informatikai szemlélet bennük, a hátrányos helyzetben lévõ tehetségek is jussanak lehetõségekhez és akit komolyabban érdekel, annak legyen jó kiindulási alap.
@Tartyom: Nem úgy merült fel a kérdés, hogy Angol _helyett_ kellene-e bármit tanítani, hanem hogy angol _mellett_ van-e értelme. Rosszul pedig bármit lehet tanítani, ha a rossz (magyar) oktatási tapasztalatok alapján kaszálnánk el egy tantárgyat, akkor az a "gyereket a fürdõvízzel" klasszikus esete lenne. (Arról nem is beszélve, hogy ugyanilyen logika alapján az összes létezõ tantárgyat is szanálhatnánk.)
Elsõ körben le kellene cserélni a tízes számrendszert tízenhatosra.
Még mindig nem értem minek kellene programozási nyelvet tanítani, az helyett hogy mondjuk az Angol nyelvet tanítanák meg normális.
Ez arra lenne ismét jó, hogy + egy dolgot mondanak a gyereknek x ideig aztán már tud y+x+c+v+v+b+1 dolgot csak éppen semmibõl nem tud semmit. Nem lenne jobb ha tudna x+y dolgot de azt jól?!
"Én programozást tanultam két évig,2006-2008.(Pascal, Delphi, C++, Jawa, ...stb);....A következõképp nézett ki a dolog: elsõ nap, elsõ óra, Pascal.Tanár bejön, létszámolvasás. Oké; akkor kezdjük egy egyszerû programmal, ami véletlenszerûen generál egy két jegyû számot 10 és 100 között. Elkezdte felírni a kódot a táblára.Mi meg csak néztünk, mint Jenõ a moziban. Egyáltalán mi az a Pascal?Hol kell keresni?Hogyan indul?...Már végzett a "programmal" mire a 20 diákból kb 4-nek sikerült elõvarázsolnia a monitorra a Pascalt."
A kilencvenes évek elején az elsõ prog. gyakorlatom még így nézett ki:
Üdvözlök mindenkit, aki a következõ feladatot 4 perc alatt lekódolja cében, az ötöst kap, aki 5 perc alatt, az négyest, a többiek egyest.
Töredékünk ment tovább, mert a túlnyomó többség azt hitte, hogy mesedélelõttök lesznek a félév folyamán. Aki nem foglalkozott elõtte komolyabban* a programozással, algoritmizálással, annak annyi volt (matek, fizika, kémia: ugyanez).
*persze nem indult mindenki a 256 bájtos asm versenyeken :)
Informatikusként mondom, hogy ez már nem informatikai kérdés, hanem adatbiztonsági. Ergo nem jogosítvány kell annak, aki számítógépet akar kezelni, hanem nem ártana, ha már az általános iskolákban is tanítanák a gyerekeket az informatikán belül vagy azon kívül egy külön tantárgyban az alapvetõ adatbiztonságra. Ennek sokkal több értelme lenne, mint valamiféle papírhoz kötni a gépkezelést.
Javaslom, nézd meg, mit is tanulnak a mai rendszergazdák az Általános rendszergazda nevezetû képzésen az egyetemeken, fõiskolákon. Én tudom, 2 évig gyûrtem az ELTE-n. Van 4 féléves programozás, ezalatt meg kell tanulni azt, amit a BsC-sek is tanulnak programozási alapok címén. Nem scripteket kell tudni írni (az valóban szükséges egy rendszergazdának, hiszen azokat igen sok helyen igen sok célra alkalmazzák), hanem azt kell megtanulniuk, amit a Programtervezõ Informatikus képzésen tanulnak a BsC-sek 2 éven át programozási alapokként. Olyannyira igaz ez az állítás, hogy az FSZ és a BsC ezen óráit összevonva tartják!
Azt mondod, az operátor, mint szakma, összevonja az általam leírt szakmákat? Kérdem én, milyen képzés kell az operátornak? De tovább megyek: mit is nevezel operátornak? Mert ugyebár alapvetõen az operátor az, aki bent ül a telefonnál, nem megy ki terepre, pusztán a telefonon keresztül ad tanácsokat. Azután jön az, aki támogatja tényléegesen a felhasználókat, azaz kimegy terepre, megoldja a helyszínen a problémát és nem csak tanácsokat ad, esetlegesen távoli asztalkezeléssel csinál meg pár dolgot. Ez viszont már nem az operátor, hanem az IT technikus. És legvégül jön az az ember, akinek korlátlan joga van a hálózaton, azaz kezeli a szervereket, a hálózat elemeit kiépíti, stb., õ lenne a rendszermérnök. Azonban kapásból mondanám, hogy ez csupán a nagyvállalatoknál mûködõképes modell, ahol van elegendõ pénz egy komplett informatikai osztály fenntartására. Ez ugyanis az amerikai modell, ahol a small office is akkora, mint nálunk egy nagyvállalat, pedig ez náluk a legkisebb kategória!
A mai informatikai életben a cégeknél inkább az az elfogadott, hogy van egyetlen ember, aki mindent csinál. Õ a rendszergazda. A legtöbb esetben viszonylag kis méretû infrastruktúrát kell felügyelnie, pár tucat gép, esetleg még külön telephelyek. Jó esetben a telephelyeken mindenhol van informatikus és van egy központ, ahol egy mindenért felelõ rendszergazda van. De ez a speciálisabb eset, inkább az a jellemzõ, hogy 1 cég - 1 ember, esetleg még fûszernek több telephely.
Valóban, ma a felhasználók nem tudnak semmit a adatvédelemrõl. Honnan is tudnának, elég szépen, hangzatosan emlegetik mindenfelé, de igazán sehol nem oktatják. Szóval inkább ezt kellene végre valahogyan a közoktatásba belecsempészni, hátha ennek értelme is lenne.
Én programozást tanultam két évig,2006-2008.(Pascal, Delphi, C++, Jawa, ...stb);.... A következõképp nézett ki a dolog: elsõ nap, elsõ óra, Pascal.Tanár bejön, létszámolvasás. Oké; akkor kezdjük egy egyszerû programmal, ami véletlenszerûen generál egy két jegyû számot 10 és 100 között. Elkezdte felírni a kódot a táblára. Mi meg csak néztünk, mint Jenõ a moziban. Egyáltalán mi az a Pascal?Hol kell keresni?Hogyan indul?...Már végzett a "programmal" mire a 20 diákból kb 4-nek sikerült elõvarázsolnia a monitorra a Pascalt. Szóval míg léteznek ilyen szinvonalas oktatási intézmények, addig ne akarjanak programozást tanítani. A két évem alatt gyakorlatilag mindenre magunk jöttünk rá. Ma webfejlesztõ vagyok, de amit tudok azt nem az iskolában tanultam meg.(Legalábbis nem tanártól.)
Nekünk C64 Basic volt amit tanítottak a suliban... és egy kis Unix alap is. Szerettem is érdekes is volt. Most hobby szinten programozok, de fõleg Web - most tanulok meg egy csomó mindent, de sosem késõ ahogy mondani szokták.
A programozásra az életben mindenkinek szüksége lesz valamikor, amikor adatokkal kell dolgoznia. Pl. pénzügyi, ügyviteli területen egészen biztosan. Minden mérnöknek szüksége lesz egyszer rá.
A humán szakokon felesleges az oktatása, mert pl. egy festömüvesznek ez nem kell.
A színvonalnak meg teljesen elegendö valamilyen visual v. java nyelv. Nem kell több az alapokhoz.
"Ami azt illeti, nekünk általánosban tanítottak Comenius logo-t, ha ez beleszámít"
Nekunk meg C64 basic-et. Aztan egy erdelyi nyari uttorotaborban konyvbol megtanultam hozza az assembly-t is. Meg altalanos iskolas voltam es hatalmas volt a kontraszt, kint nem volt aram, kaja, az emberek tenyleg a patakban mostak, mi meg megjelentunk pestrol egy olyan iskolabol ahol mar akkor tobb gepteremnyi szamitogep volt es sok gyereknek nem esett le, hogy reggelente tenyleg a kozeli forrasbol kell hozni az ivovizet. Ehhez kepest amikor nem fotoztam, akkor tobbnyire bekesen ultem egy fa alatt es egy c64 assembly kezikonyvet olvastam...
Szoval meg lehet tanulni programozni mar akar also tagozatban is, persze a legtobb gyereknek ehhez se motivacioja, se kello intelligenciaja nincs, de nem lehetetlen. Az eletben alapvetoen meg lehet lenni rendes matektudas nelkul is, mivel pl. a betanitott munkakhoz altalban nincs ra szukseg.
Az altalanos programozashoz a matematikanak csak egy kis szeletere van szukseg, megpedig az algebrara es ennek egy specializalt teruletere, a logikara. A legtobb program egyszeru aritmetikai es logikai alapmuveletek es ezek kore epulo vezerlesi es adatszerkezetekbol epul fel. Tenyleges felsobb matematikai tudasra csak az esetek kis reszeben, a programok tervezeset vegzo mernokoknek van szukseguk. Az igazi gondot az jelenti, hogy minden programozasi teruletnel szukseg van egy nem programozashoz kapcsolodo szakterulet ismeretere. Peldaul beagyazott vezerlorendszereknel nem art ha a program keszitoje villamosmernok es erti a szoftverhez kapcsolodo hardver mukodeset is es esetleg van nemi gepeszeti tudasa is.
Viszont a nagyfoku automatizalas miatt a szamitastechnika ismerete egyre kevesbe fontos, mivel a legtobb keszulek felhasznaloi szemszogbol nezve egyszeruen csak mukodik. Tehat ahogy anno az okorban es a kozepkorban csak keves kivalasztott ember ismerte a tudomanyt es a technikat, ugy most is teljesen elfogadhato, hogy a legtobb ember ugy nezzen a keszulekeire, hogy azok valamifele varazslat miatt mukodnek. Innentol eleg ha azt tudja, hogy kell hasznalni oket, amit kelloen intuitiv rendszer eseten tanulas nelkul, minden mas esetben pedig a megfelelo 'varazslatok' betanulasaval is elsajatithatja.
ps: A kornyezetemben szinte csak en vagyok olyan aki semmi olyan dolgot nem hasznal aminek a mukodeset legalabb kis mertekben, de nem ismert meg. Mondjuk ez inkabb a kivancsisagomnak koszonheto es nem annyira hasznos dolog. Viszont mivel altalaban addig nem dobok ki semmit amig esszeru aron javithato es megfelel az elvarasaimnak, ezert a legmodernebbek mellett egy csomo osoreg keszuleket is hasznalok.
Ami azt illeti, nekünk általánosban tanítottak Comenius logo-t, ha ez beleszámít :))
Basszus, ezt a hozzászólást... nomen est omen :) Egy kis szemléletkiigazítás: a "matek szakon" nem a bizonyítást tanulod, hanem a tételt és ezt utána bebizonyítod. A tételen van a hangsúly. Persze kinek mi jön le a képzési ideje alatt... (igen ez most lesajnálás és egy erõs sejtés az állításod, miszerint elvégeztél valamit, igazsághalmazára) De csak egy példa (a te példád): a Fermat sejtés (tétel), a kódoláselmélet egyik alapja.
Iskolában nem lehet programozást tanulni. Egymás másolják a kölykök meg kijátsszák a rendszert ahogy tudják. Sokszor az oktató hülyébb az egészhez mint az a diák akit tanítani probál. KB ennek a normális megvalósítási esélye nulla. (kis hazánkban, máshol nem tudom milyen viszonyok vannak)
Ne keverjük a dolgokat. Amit ma rendszergazda képzésnek hívnak, az köszönõviszonyban sincs a programozó képzéssel. Lehet a kedves ismerõs csak igazolni akarta valahogy a szánalmas érdemjegyeit (mivel nem ismerem az illetõt, ez csak feltételezés, természetesen). Egy rendszergazdának valóban kell tudni annyit, hogy írjon kisebb scripteket és az ne nevezze magát szakembernek akinek a "rendszergazdaság" annyit jelent, hogy a pincében vakarja a vakarnivalót. A legtöbb felsorolt szakma a maga idejében indokolt volt, ma már amit az operátorok csináltak anno arra van egy jó kis rendszer, ergo a szakma léte indokolatlan. Ellenben eltértünk az eredeti tárgytól. A jogosítvány amit autóra teszel le, nem jogosít fel teherautó, taxi, kamion, ne adj isten repülõgép vezetésére. Arra jogosít fel, hogy kimehess az utcára saját esetleg céges autóval és nagy valószínûséggel képes legyél elérni a célodig anélkül, hogy magadban, az autóban vagy más közlekedõkben kárt tegyél. Véleményem szerint erre lenne igény az informatika területén is. Egy egyszerû jogosítvány után lehetne csak géphez nyúlni. Egy inkompetens kattintóbajnok már csak a netes jelenlétével is képes kárt okozni, gondoljunk a botnetekre. Ezek után ültess be egy ilyet céges környezetbe, adj neki (akár csak minimális) jogosultságokat. Mivel senki nem rágta a pici szájába, hogy nem adunk ki jelszavakat, az elsõ facebook játék során képes lesz hozzáférést adni a belsõ, céges gépéhez. Ezzel, szerintem kimeríti a károkozás tényét. Tudom mik lesznek az ellenérvek. Az elsõ, hogy senki nem ilyen ostoba. De a legtöbb felhasználó pont ilyen ostoba, a másik, hogy a cégen belül elmondják egy képzés keretében. Igen és a titkárnõt pont az a pattanásos kocka fogja érdekelni és nem a körme reszelése...
"A programozás = matematika" Elvégeztem a matek szakot, és amit ott tanultam annak talán 5 százalékánál látok arra esélyt, hogy fel tudom valaha is használni bárhol, programozásban - 1 százalékot talán használtam is már (lineáris algebrát). Tétel bizonyítások kiesnek mind, ez ugye 95%-a a matek szakon tanultaknak. Maradék 5% tényleg lehet hasznos. Szóval ha valaki nem izgul rá a Nagy Fermat tétel bizonyítására, attól még simán lehet jó programozó. Mivel ahhoz, hogy mondjuk a genetikus algoritmusokat felfogja, és tudja õket alkalmazni is, egészen más képességek szükségesek.
Szakmabeliként azt mondom, hogy ez így életszerütlen lenne. Ahhoz, hogy valaki elpötyögjön egy gépen, nem kell tudnia kezelni is azt.
Ha már kezelni tudja komolyabban, telepíteni tudja a gépeket, akkor az már egy külön szakma, a szoftverüzemeltetõ. Ha pedig esetleg még távolabb megy és magát a vasat is tudja szerelni és tudja a kész hálózatot kezelni, az a rendszer-adminisztrátor. Ha pedig esetleg ki is tudja építeni és konfigurálni is tudja azt a hálózatot, az a rendszergazda.
Ez éveken keresztül így ment, ez volt a megfelelõ leosztás, Csak aztán jöttek a nagy ötletek, hogy egy ember tudjon már több szakmát is, ráadásul belekeverték a felsõoktatási rendszert is, merthogy így majd minõségibb lesz az oktatás és ezzel lényegében a teljes informatikát megkavarták. Míg régebben volt szoftverüzemeltetõ, rendszer-adminisztrátor, rendszergazda, rendszermérnök, programozó, webprogramozó, stb., addig ma már a rendszergazdának kellene mindent tudnia. Amit anno egy 4-5 fõs team munkájának mondtak, azt ma egyetlen embernek kellene elvégeznie. Az eredmény: egy csomó ténylegesen jó rendszergazda van állás nélkül, mert nem tud programozni. A rendszer-adminisztrátor, mint szakma, megszûnt létezni. A szoftverüzemeltetõ szintén nem létezõ fogalom ma már, csak papírt kap róla az ember, ami, hogy egy kedves ismerõsömet idézzem, "még arra se jó, hogy a hátsónkat kitöröljük vele, mert kemény fedeles".
A viszonylag jól müködõ OKJ besorolások mentek a kukába. Nem a rendszer volt jó, mivel gyakorlatilag teljesen feleslegesen képeztek szakembereket, mivel több volt az újonc, mint a munkahely. De a besorolás nagyon is jó volt. Ehelyett most szakképzettséget csak felsõoktatási intézményben lehet szerezni, FSZ képzés keretében. Az OKJ-t visszaminõsítették emelt szintûvé. Az eredmény? A fõiskolákon az FSZ keretében van olyan tantárgy, ahol a tanárok saját bevallása szerint is ugyanazt az anyagot nyomják le 2 év alatt, mint amit a BsC-sek kapnak meg 3-4 év alatt... Ráadásul a rendszergazdáknak kell tudniuk programozni, weblapokhoz érteniük kell, ismerniük kell a matematika "alapjait" és még sorolhatnám a finomabbnál finomabb tárgyakat (amik ráadásul kiemelt, buktató tárgyak), amiket a valós életben nem igazán fognak használni. És ennek meg is van az eredménye: a munkahelyek ennek megfelelõen módosították az elvárásokat, szóval ha valaki melózni akar rendszergazdaként, annak igen gyakran követelmény, hogy tudjon programozni is.
Szóval ahelyett, hogy ilyen hülyeségeket találnának ki, hogy mindenki tudjon programozni, célszerûbb lenne inkább végre letisztázni a különbözõ szakmák követelményeit és azoknak megfelelõen kialakítani a képzésüket is.
Ezt a témát a prog.hu-n már kibeszéltük. Az eredmény az az, hogy minek.
Sok más dologra is rá lehetne húzni így a vizes lepedõt, sok dolog hasznos lehet, de ne 1 ember mondja már meg a frankót.
"A telefon használathoz vagy a TV nézéshez nem akarsz jogosítványt ?" Azzal nem tudsz önkéntelenül másnak kárt okozni, így ebben az esetben nem tartom szükségesnek. "Aki pedig jogsi nélkül számítógéphez merészel nyúlni, azt megbüntetnék ?" Igen.
A telefon használathoz vagy a TV nézéshez nem akarsz jogosítványt ? Aki pedig jogsi nélkül számítógéphez merészel nyúlni, azt megbüntetnék ?
"holott gyengébb matekos is lehet jó programozó" Muhahahaha... Maximum egy nyomorult bérkóder, aki programozónak hiszi magát mert képes megírni egy egyszerû sql SELECT-et. A programozás = matematika. Jah, az aki megtanulta a jquery-t használni és el tudja mozgatni a kockát jobbra, az nem programozó. A programozó, az aki megírta a jquery függvényt és transzformációt végez egy objektumon.
Látszik közöd nincs se az oktatáshoz, se a gyerekekhez. Általánosban lehet tanítani programozást - de ASM-et nem. Ahogy matematikai tételeket se bizonyítanak általánosban.
A cikkhez hozzászólva: felsõoktatásban már nincs értelme programozást tanítani annak, akinek nem ez lesz a szakmája. Minek? Ott már szakirányt kell, ahogy most is. Az általános iskola való arra, hogy az alapokat megadja, a középiskolának már specializálódást kéne segíteni, a felsõoktatásban meg csak szakirány. A gyász jelenleg az, hogy a programozás alapjának évtizedek óta a matematikát tekintik, holott gyengébb matekos is lehet jó programozó, és erõs matekos is lehet reménytelen eset ha programozás tanulásról van szó. Szóval lenne annak realitása hogy a programozást, mint külön területet tanítsák komolyabban általános iskolában, nem csak comenius logo és turbo pascal segítségével, hanem olyan speciális nyelv+fejlesztõeszközzel, ami azért hajaz a valódi nagy programnyelvekre, de kifejezetten gyerek szintjéhez van igazítva.
Elsõ körben, inkább valami jogosítvány szerû dologhoz kéne kötni a számítógép HASZNÁLATOT. Ugyanis, amíg a problémák vannak az alapvetõ készségek (szövegszerkesztés, táblázatkezelés, adatbázis használat vagy csak az SZJA bevallás kitöltése számítógépen) terén, addig hova tanuljon boldog-boldogtalan programozni. Így is elég sok, magát fejlesztõnek tartó, kókler rontja a szakma jó hírét.
második nyelv? ha az elsõrõl lenne nagy vonalakban fogalmuk, már nem lennék elégedetlen...
Szerintem általános elején kéne elkezdeni, és méghozzá asm-al. És nem azért, hogy megtanuljanak programozni késõbb magasabb szintû nyelveken, hanem mert nagyon fejleszti az alap gondolkodást, nem csak a számítástechnikait.
Magasabb szintû nyelveknél sajnos közkeletû tévedés, hogy fejleszti az alap gondolkodást... Sok programozó menõzik azzal, hogy az asmnak semmi értelme. Csakhogy eltévesztik a célt: igen, elhelyezkedés szempontjából, egyre hipergigább programok írásában, minél több pénz keresésében nem az asm fog segíteni, hanem a magasabb szintû nyelvek.
Persze mivel az ostoba civilizációnk a pénzen kívül semmiben se tud gondolkodni, nem fognak asmot tanítani.
Így aztán egyre több totál buta programozó kerül ki az egyetemekrõl, akik profin tudják a meglévõ gigarendszereket felprogramozni, az alapokat pedig nem értik. És nem csak a programozás, hanem a gondolkodás alapjait se...