HTML

Description

Ez a blog rólam szól, következésképpen érdektelen.

Recent patches

  • MegaBrutal: @vilagoskek: Tévedsz, ez a poszt nem a feministákról szól, a feministák jó arcok! :P Ezennel elhat... (2013.10.27. 22:54) Bitch Proud
  • _Epikurosz_: A hiba a "kurva" szó jelentései közötti különbségtétel hiányában van. Pont aspie trait. Az alapjel... (2013.05.31. 21:21) Bitch Proud
  • vilagoskek: Ma már nem kurvának hívják őket,hanem feministának..Légy trendi :P (2013.01.05. 20:13) Bitch Proud
  • Lenart33: Még csak annyit, hogy kínálat abból van, amire van kereslet. Amíg vannak emberek, akiknek kell az ... (2012.07.13. 16:36) Bitch Proud
  • Lenart33: @Vaddi: Teljesen igazad van, pont ugyanezt akartam leírni! (2012.07.13. 16:34) Bitch Proud
  • Utolsó 20

Utilities

Életkép

2010.03.17. 23:41 MegaBrutal

- Tudja valaki, hogy mi az a láncolt lista? - kérdezte az előadó a funkcionális programozás előadáson. - Aki hallott már róla, az tegye fel a kezét!
Két-három hallgató bátortalanul jelentkezik.
- Talán az első félévben találkoztatok már vele... vagy nem? - nézett körbe az előadó. - Nem gond, akkor elmagyarázom.
Eközben az egyik diák elgondolkozott. Valóban nem tanították még a láncolt listát? Ő ugyan tudta mi az, de előadó szájából még nem biztos, hogy egyáltalán hallotta ezt a szakkifejezést.
Az előadó így folytatta:
- Ugye valószínűleg már hallottak arról (de ha nem, higgyék el), hogy a memória kis rekeszekből áll, és minden ilyen rekesznek van egy sorszáma. Fel is rajzolom a táblára. Itt a nulladik rekesz, alatta az első, aztán a második, és így tovább. Az a több gigabyte memória, amit vettek a boltban, mind megcímezhető byte-onként. Persze nyilván nem fogok annyit felrajzolni, kicsit sok lenne. Ha felrajzolnék 1024-et, még akkor is csak 1 kilobyte-nál tartanék. Na most megtehetjük azt, hogy egy rekeszben eltároljuk egy másik rekesz sorszámát. Aztán az adott sorszámú rekeszben eltárolunk valami adatot, majd utána megint egy sorszámot. - az előadó közben nyilakat rajzolt a táblára, amelyek egyik rekeszből a másikba mutattak az ábrán. - Ez így érthető? Nem??? Akkor még egyszer...

A fentebb említett diák itt már nem figyelt. Azon gondolkodott, hogy vajon tényleg lehetséges az, hogy egyáltalán egyetlen hallgató is legyen a teremben, akinek a láncolt lista meg a memóriatérkép újdonságnak minősül így a második félév közepén; vagy csak senki sem figyel az előadóra? Igen, lehetséges. Ami azt illeti, a programozás előadások keretében még csak arról sem esett szó, hogy mi az a pointer, nemhogy mi az a láncolt lista. Sőt, ha már itt tartunk, még azt sem tanították, hogy egyáltalán mi az a számítógép, de úgy igazából. Miből épül fel? Hogyan működik? Meg mi az a misztikus dolog, amit processzor néven emlegetnek, és állítólag a számítógép lelke? Mit csinál az tulajdonképpen, miért kell az annyira? Azért volt egy első féléves tárgy, "Számítógépes alapismeretek" címmel, amelynek keretében legalább felszínesen érintették a témát.

De végülis nem gond, a lényeg az, hogy a programozási tételeket legalább mindenki tudja. Akinek jobb a memóriája, az könnyebben megjegyzi őket, akinek rosszabb, az kevésbé. De tényleg muszáj kívülről fújni ezeket - nem elég, ha le vannak írva egy papírra, mert a gyakorlatok elején kérdezik őket. Az meg tök jó divat, hogy olvassunk be akár többszáz megabyte adatot is egy tömbbe, hogy aztán kiderítsük, hogy már az első négy adat között van csúcs. Mert ha van, akkor nagyon örülünk, és kilépünk a gecibe. Persze senki sem teszi fel azt a kérdést, hogy akkor egyáltalán miért olvastuk be a fájl többi részét, ha már az első négy adat is elég volt. De a lényeg, hogy így matematikailag bizonyítható a program helyessége - ha majd olyan programot írunk, amelyik csak azért nem lesz hajlandó lefutni egyetlen létező számítógépen sem, mert basztunk optimalizálni, akkor se lesz gond, majd megkérjük a mérnököket, hogy tervezzenek jobb gépet; hiszen nem a program a hibás, az tökéletes, Q.E.D.!

Az se baj, hogy senki sem tudja, hogy mit jelent az, hogy strukturált programozás, hiszen nem kell a fogalmakkal tisztában lenni. Persze azért az nyilván megbukik, aki goto utasítást használ, de nem szabad elmagyarázni neki, hogy miért. De tökmindegy. Szerencsére senki sem használ goto utasítást - már nem azért, mert tudják, hogy nem szabad; hanem mert azt sem tudják, hogy létezik egyáltalán. Jobb is így.

A hallgató sóhajt egyet. Sajnos nem először fogalmazódik meg fejében a következő kérdés:
Mi a retkes lófaszt keresek én itt?

(Megtörtént eset alapján.)

Örülök, hogy eddig nem fagyott ki a Firefox a seggem alól a 128 megás laptopon. Most így inkább nincs kedvem nekiállni idézetet keresni. Sorry.
(Én)

23 patches

Címkék: horror gondolat programozás elte csőrbizga

A bejegyzés trackback címe:

https://megabrutal.blog.hu/api/trackback/id/tr111848587

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Dead-End 2010.03.24. 02:30:39

Láncolt lista, strukturált prog, jaj, istenem... :D

Otthon érzem magam. :D

A poszt végén feltett kérdés már annyiszor megfogalmazódott a fejemben, hogy ha annyi százasom lenne, már milliomos lennék. :)

Azért erő, kitartás, vagy valami hasonló... TÚLÉLÉS! :D

MegaBrutal · http://lofaszkapitany.blog.hu 2010.03.24. 10:48:23

@Dead-End: Köszi. :D Amúgy az a bajom, hogy itt az eltén még nem is tanítottak ilyen alap dolgokat, hogy pointer, meg láncolt lista. Hanem ehelyett ún. programozási tételekkel faszkodunk. Persze nem mondom, hogy annak nincs értelme, csak szerintem túl komolyan veszik, és a valóban fontos és érdekes dolgok meg háttérbe szorulnak, vagy említésre sem kerülnek.

Pl. ezt a funkcionális programozást szeretem, szerintem ennek van értelme, viszont az azért agyrém szerintem, hogy bevezettünk egy új paradigmát anélkül, hogy megtanították volna, hogy mi az a strukturált programozás. Természetesen a "Programozás" című tantárgy keretében strukturáltan programozunk, de a legtöbb hallgató ezt még csak nem is tudja.

Egészen máshogy képzeltem el az oktatást az eltén... lehet, hogy inkább olyan helyre kéne menni, ahol tényleg programozni tanítanak faszkodás helyett.

Köszi, hogy benéztél! :)

Dead-End 2010.03.24. 18:28:39

@MegaBrutal: Mi is ilyenekkel kezdtük C-ből, majd C++-ból, az egésszel annyi volt a baj, hogy nem tanították meg rendesen. A kivétel-kezeléssel most barátkoztam össze C#-ból. Más a tanár. Érthetőbb, mert normálisan átvesszük.
Szóval, szerintem, máshol se sokkal jobb a helyzet oktatás terén - legalábbis itt nem. :)

weasel 2010.03.25. 16:43:49

:-)

Az ELTE-n nem tanítak programozást (legalább is nem sokat), de azért ettől függetlenül érdemes figyelni. Ugyanis néha terítékre kerülnek olyan dolgok, amik éppen érdekesebbek mint a "nyers" programozás.

Például az, hogy hogyan lehet programozási nyelvet készíteni ...

deep_fried 2010.03.26. 01:50:09

Mi középiskolában tanultuk a legalapabb tételeket, de szerintem azokat ti egy fél előadáson letudtátok. Amúgy nem jártál volna olyan rosszul a BME-vel sem, engem eddig senki sem osztályozott hasraütésszerűen, amitől úgy tartasz.

deep_fried 2010.03.26. 01:53:25

Amúgy nehéz elképzelni már, de a középsuliban még nem nagyon foglalkoztam a pointerekkel se (nem tanították, isten őrizz), és még a rekurziótól is féltem, de az egyetemen elsőben meg tökre belejöttem, mikor kellett használni fák bejárásához.

quantumboy 2010.03.29. 08:18:32

Fizikus szakon ugyanez megy. Első félév végén már diffegyenleteket kéne ismerni a kísérleti fizika ZH-hoz, míg analízisen éppenhogy túlvoltunk a deriváláson, integráláson. És az öt év alatt végig ez megy: sosem érted meg igazán, amit tanítanak, mert mindig csak fél-egy év után esik le minden, mert akkorra áll össze a kép. És akkor már késő, mert akkora káosz van a fejedben, hogy nem tudsz rendet rakni a nagy hajtásban. Miért nem lehet rendesen felépíteni egy kényelmes, következetes tantervet!? Miért!?

quantumboy 2010.03.29. 08:20:54

BTW, MegaBrutal, ha van további Lófasz-kapitányos öteleted, valósítsd meg bátran! Jól esne legalább havi egy frissítés. :)

MegaBrutal · http://lofaszkapitany.blog.hu 2010.03.29. 10:03:57

@weasel: Hát igen, arra én is gondoltam, hogy lehet, hogy van ennek az egésznek valami rejtett szépsége, amit én még nem látok. Viszont én a matek miatt default szenvedek, és ha emellett még a programozás sem élvezetes, akkor nem biztos, hogy érdemes szívni, mert hogy őszinte legyek, lelkileg igencsak szétcsesz az, hogy tkp. a nehezebb tárgyakat csak másodszorra sikerül teljesítenem. Meg így elég hosszú ideig fog tartani az egyetem, kb. 5-6 évre számíthatok, és ez még csak a BSc.

@deep_fried: Melyik középsuliba jártál? Az én középsulimban programozást nem tanítottak, de ez nem volt nagy gond, mert egész jól képeztem magam, a sulim még versenyekre is elküldött. Programozási tételekről viszont egészen az ELTE 1. félévéig nem hallottam, és akkor is azt hittem, hogy valami bevezető szarság a lámáknak, és a későbbiekben már nem fogják annyira komolyan venni őket, meg nem ez lesz a lényeg. Erre feszt a tételeket toljuk orrba-szájba, tízszer olyan komolyan véve. A legjobban az basz fel, hogy ezeket fullra kívülről meg kell tanulni. Az oktató stopperrel méri az időt, hogy mennyi idő alatt rajzolod le a kurva struktogrammot, meg írod fel az állapotteret, elő- és utófeltételt, meg minden. Pedig a prog. tétel az tipikusan olyan dolog, hogy elég lenne azt tudni, hogy melyik mire való, és mindig legyen nálad papíron leírva, hogy amikor tudod, hogy az X tétel kell, akkor meg tudd nézni. Persze a sokat használt tételeket amúgy is megtanulja az ember egy idő után. De annak, hogy be kell magolni őket, kb. annyi értelmét látom, mintha be kéne magolni egy függvénytáblát, vagy egy szakmai leírást.

@quantumboy: Analízist nálunk brutálisan tolják, ugyanis nálunk még a deriválás se volt, de nem is vesszük ebben a félévben. 3 féléves a tárgy, és 1. félévben a határérték számításra gyúrunk rá. Szóval arra tippelek, hogy itt sokkal többet tanítanak analízisből, mint a te szakodon. Ez mondjuk elég nagy kár, mert az analízist utálom, mint a szart. Habár megjegyzendő, hogy egy kis deriválást még középiskolában is tanultunk, és érdekes módon az nem is tűnt olyan nehéznek. Sőt, akkor még érdekelt is. Még kérdezgettem is egy nagyon jó matekos ismerősömet az integrálásról, amit viszont nem tanultunk.

Úgy néz ki, hogy az ELTE mindent elbasz valahogy. :p De nem tudom, itt valahogy nagyon kevés dolog tűnik érdekesnek, vagy azért, mert csak szarkenés (lásd: programozás), vagy azért, mert olyan töményen és mélyen nyomatják, ahogy az már engem inkább mégsem érdekel (lásd: matek).

Lófasz-kapitány ügyileg alkotói válságban vagyok. Mostanában meg aztán főleg, mert egy nagy rakás szarnak érzem magam, egy utolsó szarrági kis féregnek, és ilyenkor úgy érzem, hogy akármit is csinálok, az szar. Ezért aztán nem is csinálok semmit.

matraszentanna 2010.04.01. 21:33:26

@MegaBrutal: "Pedig a prog. tétel az tipikusan olyan dolog, hogy elég lenne azt tudni, hogy melyik mire való, és mindig legyen nálad papíron leírva, hogy amikor tudod, hogy az X tétel kell, akkor meg tudd nézni. Persze a sokat használt tételeket amúgy is megtanulja az ember egy idő után. De annak, hogy be kell magolni őket, kb. annyi értelmét látom, mintha be kéne magolni egy függvénytáblát, vagy egy szakmai leírást."

Mindenhol pontosan ez megy. Tudod miért? Mert 30 éve a következő volt: Tegyük fel írni kellett egy programot egy terminálon. amit valami lineáris egyenletrendszert tologat amíg el nem éri az optimumot. Ez egyrészt egy aránylag gyakori feladat volt, szóval jó eséllyel beleszaladhattál, ha programozó lett a szakmád, másrészt ha itt tartasz, és a legalapvetőbb vonatkozó matematikai tételeket sem tudod fejből, akkor mit csinálsz? Elmész a könyvtárba, kihozol hatféle könyvet, hazamész, kikeresgeted belőle a megfelelő részeket, összeollózod a programot, aztán holnap a következő feladatnál megint go könyvtár más könyvekért?

Ma pedig egyrészt ritkábbak az ilyen feladatok, másrészt ha hirtelen nem tudsz valamit, akkor úgy 20 mp alatt választ kapsz az internet segítségével. Megváltozott a szakma, megváltoztak az igények, ami nem csoda, hisz az egyik, ha nem a legyorsabban fejlődő technikai ágról van szó.

Na de mi van itt? Tegyük fel, megcsinálod a sulit, kiváló eredménnyel(ezzel máris kiszórtunk egy csomó tehetséges, de magolásban gyöngébb embert), és a szakmának valamelyik ágába is kezdesz egész jól belefolyni. Választás elé kerülsz. Elmehetsz 200 ruppó kezdőért valahova programozni, hogy 5 év múlva a 2-3 szorosát keresd. Vagy maradhatsz tanársegéd, 90 ropiért, majd tanár 150-ért, jó soká prof mondjuk 200-250-ért, munka nyegyedannyi, szakmai előrelépés esélye kisebb, a munkatársak seggek. Melyiket választod majd?

Ezt hívják kontraszelekciónak. Egy rakás lusta, tehetségtelen, a szakmát 30 éve tanult dinoszaurusz kezében van a magyar informatikaoktatás. Ha valamelyük penge is valamilyen téren(ilyen is előfordul, annyira nem is ritkán, nem tagadom), akkor vagy a mentalitása, vagy végső esetben a felettesek nyomása miatt nem fog tudni igazán hasznos órát tartani. Akinek ezek mellett mégis sikerül valami értelmeset is átadnia, az meg egy fecske, és nem csinál nyarat.

Milyen sírás-rívás lenne, ha egy tanár kitalálná, hogy megtanítja kesztyűbe dudálni a bandát, és mondjuk csinálna egy órát, ami kizárólag az objektum-orinetált programozással foglalkozik, hogy milyen szerkezetekkel érdemes megközelíteni a különböző problémákat. Ahol a heti 3 órából 2.5 gyakorlat lenne, amiből 1 mindig egy kisZH, ahol az arra az órára feladott típusfeladatot kellene megoldani, plusz évközben két nagyobb projectet kellene leadni...

Ugye, hogy már az ötlet felvetésekor is hülyének néznék az ürgét? Pedig vitaalapnak szerintem teljesen jó lenne a fenti óratervvázlat, és tuti, hogy ilyesmitől tanulnának az emberek programozni(meg természetesen az általad hiányolt alapismeretek átadásátl), nem attól, hogy perfekt tudnak papíron integrálni, vagy hogy bemagoltak 90 számítógépes grafikával kapcsolatos fogalmat...

Dead-End 2010.04.05. 23:26:25

@deep_fried: Hehe, attól máshol is tartanak. :D

[chips] 2010.04.17. 17:53:32

"Az a több gigabyte memória, amit vettek a boltban, mind megcímezhető byte-onként." - ez így, ebben a formában egy ordas nagy baromság.

[chips] 2010.04.17. 22:23:06

mert az a sok gigabyte memória, amit vettem a boltban, 64 bites szervezésű. azaz fizikailag 64bites blokkokban olvasom/írom és címzem meg.

amúgy az, hogy a processzor logikailag lehetővé teszi, hogy byte-os szervezésű adatokkal dolgozzunk, nem jelenti azt, hogy pl. egy 32 bites rendszeren ajánlott ezzel a lehetőséggel élni (durva performance penalty-vel fizetünk érte).

de vannak rendszerek, ahol erre nincs is lehetőség, bár szép lassan kihalnak :P - mondjuk igazából kompatibilitási okokból pl. a C ferdítők megoldják ott is a dolgot a háttérben bitforgatással és maszkolással. és ugyanezt csinálja az újabb x86-ok mindegyike is valahol mélyen belül mikrokód-szinten, amikor a mov al, [lófasz] műveletet végrehajtja...)

MegaBrutal · http://lofaszkapitany.blog.hu 2010.04.18. 20:59:49

@[chips]: Na, ezt amúgy nem is tudtam. :) Viszont logikailag akkor is byte-ok halmazaként szoktunk a memóriára tekinteni, habár nyilván a performance penalty elkerülése végett jó, ha tudjuk, hogy mi van ott igazából. Meg hát az előadó a lényeget akarta megértetni a hallgatókkal; ennyi erővel abba is beleköthetnénk, hogy "Na most megtehetjük azt, hogy egy rekeszben eltároljuk egy másik rekesz sorszámát." - hiszen egy egy byte-os "rekeszben" nem fér el egy 32 bites cím. :p (Amúgy nem 100%-ig pontosan szó szerint idéztem az előadót, de tényleg így fogalmazott, ugyanis akkor feltűnt az általam említett pontatlanság.)

Amúgy honnan lehet tudni, hogy a memória hány bites szervezésű? Amekkora az adatsín? Gondolom 32 bites prociknál 32 bites az adatsín, és 32 bites a memória szervezése is, de pls. javíts ki, ha hülye vagyok!

[chips] 2010.04.25. 14:29:24

@MegaBrutal: jó, de akkor is faszság, mert az adattárolás elemi egysége nem feltétlenül a byte.

a memória "szervezése" azt jelenti, hogy a külvilág irányába hány bitet tud egy működési ciklus alatt kitolni (vagy onnan fogadni). azaz azt mutatja, hogy mekkorák a rekeszeid. a megcímezhető tartomány nagyságát (azt, hogy hány rekeszünk van) a címbusz szabja meg. 16 bites címbusz esetében (pl. a Commodore 64-ben) a fizikailag megcímezhető memória 2^16 rekesz. ebből jön ki a 64k-s fizikai limit (de lapozásos technológiával tovább bővíthető). az x86 4GB-os határa is hasonlóképpen jön ki (2^32 byte).

MegaBrutal · http://lofaszkapitany.blog.hu 2010.04.25. 14:38:12

@[chips]: Pont a kérdésemre nem válaszoltál. ;)

"a memória "szervezése" azt jelenti, hogy a külvilág irányába hány bitet tud egy működési ciklus alatt kitolni (vagy onnan fogadni)." -> Akkorát tud kitolni a külvilág irányába, amekkora az adatsín, igaz? Mert hát arra tolja ki.

Amúgy a Puskásban öltek a buszozásért. A konzulensem kijavíttatta a szakdolgozatomat, hogy az nem "busz", hanem "sín".

deep_fried 2010.05.03. 02:16:15

Jaj, nem válaszoltam arra, hogy hova jártam. A Neumannba jártam, ami számtech középsuli. Amúgy voltak közgázos osztályok is, amelyek birtokolták a lányok 80%-át.
Az 4-5% lánnyal attól még lehetett volna barátkozni, de akkoriban még az is túl nagy kérés volt tőlem.
Szerintem teljesen kibírtam volna enélkül a suli nélkül, olyan rémesen sok új szakmai dolgot nem tanultam ott, vagy csak nem emlékszem, hogy új volt.
Végig Turbo Pascal ment. A végén volt pl. adatbázis-szervezés is, sql, egy nagyon drágalátos, közutálatnak örvendő, a legtöbb téren inkompetens tanártól. Tőle asszem már meg is szabadult az iskola.

Osztályonként egy-két spíler programozó volt, én csak gyakorlott voltam, ketten aláztunk a progházikkal, de más pl. a webprogramozáshoz és a hálózatokhoz jobban értett (jobban, mint én most?..), és előfordult olyan, akinek a hobbija volt az elektronika is. Ő elég rossz tanuló volt, visszahúzódásban csak kicsit ütött el az átlagtól. Az rendszergazda-tanár vele is foglalkozgatott úgy hébe-hóba, mint ahogy a karbantartó növendék-gárda fölött is apáskodott, tehát próbált a szabad időben úgy az alap tanulmányok fölött is tanítani ezt-azt. Valaki szerint mégis egy fasz volt, aki viszont jól tanít.

zsú 2010.06.21. 21:59:12

Szeretnék hozzászólni, de nagyon szakirányú lett a téma.Próbálkozom az emberi oldalával.Egyetértek, a tanáron sok múlik!Magával ragad, vagy sem az egyénisége.Jól,érthetően adja elő az anyagot,vagy nem.Igazságos?Hát igen.A tanár is ember,ezt ne felejtsük el.Neki is lehetnek rossz napjai.Nem mindig tapasztalhatjuk meg az igazi arcát.Sajnos, vagy sem,nekünk kell alkalmazkodnunk hozzá!Ez tény.Kell.Az nyer aki erre képes.Az szárnyalhat majd,később!Hogy mi legyünk a nyertesek,ahhoz okos tolerancia,nem kis szorgalom, leleményesség,rugalmasság kell.Rajtunk múlik később mennyire élhetünk szabadon.No, hát ennyi.

Vaddi · http://barokeszter.hu 2010.06.25. 11:04:18

@deep_fried: BTW, én is a Neumannba jártam, de én bőcsész lettem, nem geek! :) Egy időben legendás voltam, mert leköptem azt a tanárt, akire célzol. :)

deep_fried 2010.07.08. 00:52:29

Az aztán pálfordulás. Bár akkor biztos már 2.tól elkezdted jobban tanulni az irodalmat, vagy mit, a jó érettségiért.

Hát én amikor sztrájkoltak a többiek a tz idején a korábban random sorsolással adott jegyek miatt, és nem írták meg, én szembe úsztam az árral, éreztem, hogy most szerencsém lesz, és megírtam, 5-ös is lett. De azért, mert jól sikerült.

deep_fried 2011.01.09. 17:43:11

Jöhetnél néha a BME-ben tartott előadásokra is. Ilyen tantárgyak is vannak, mint pl.:

Biztonságos programozás

www.vik.bme.hu/kepzes/targyak/VIMIBV08/

deep_fried 2011.01.09. 18:00:05

"... ha egy tanár kitalálná, hogy megtanítja kesztyűbe dudálni a bandát, és mondjuk csinálna egy órát, ami kizárólag az objektum-orinetált programozással foglalkozik, hogy milyen szerkezetekkel érdemes megközelíteni a különböző problémákat."

Ilyesmi témájú anyag van a mérnök info egy kötelező tantárgyában, bár nagy része a megfelelő szakirányon van ezeknek.