Pasztuhov Dániel

Programozásoktatás

Meg lehet-e tanulni könyvből programozni?

2017. december 12. - Pasztuhov Dániel

A kedvenc viszontkérdésem erre az, hogy "Meg lehet-e tanulni könyvből karatézni?" vagy "Hány könyvet kell elolvasnod ahhoz, hogy fekete öves karate mester legyél?"

Hadd fejtsem ki egy kicsit jobban.

Az elméletet el lehet olvasni. Meglátásom szerint, amíg az ember birtokolja az olvasás "szuperképességét", addig ez a leghatékonyabb információszerzési forma. Más üzemmódba állítja az agyat, mint a videónézés. Ráadásul míg egy írott szöveg gyorsan átfutható, ha az ember keres valamit, a videó esetében ez jelenleg nem megoldott még. (Velem pl. sokszor fordult elő, hogy míg egy videóban az indiai bemutatkozott, annyi idő alatt egy írott forrásban már meg is találtam, amire kíváncsi voltam). Ezért a mi oktatási rendszerünk is az olvasásra épül. (És tegyük hozzá, hogy egy cégnél sem fognak a feladatból videót forgatni, az bizony - jobb esetben - írva lesz. Szóval nem árt, ha az ember hozzászokik ahhoz, hogy írott szöveggel dolgozzon).

Amiben a könyvek szintén jók, hogy egy adott területet átfogóan képesek bemutatni. Bennünk van, hogy egy könyvet végig kell olvasni. Ha már végigolvassuk, akkor minden fontos dologról tudomást szerzünk.

Az elmélet nem elég. Ahogy a karate esetében is, úgy a programozásnál is fontos a gyakorlás. A gyakorlást nem helyettesíti semmilyen könyv és semmilyen videó. Százezerszer találkoztam eddigi pályafutásom során azzal a helyzettel, amikor a tanuló annyit mondott, hogy "aha, értem.", viszont látszott rajta, hogy még csak neki sem tud állni egy program megírásának az új eszközzel (amikor alkalmam volt rá, hogy megbizonyosodjak erről, igazam is volt). Az "aha, értem" és a "meg tudom csinálni" között egy Mariana-árok helyezkedik el. Gyakorlásra azért van szükség, hogy az elméleti ismeretek gyakorlatban használható készségekké formálódjanak.

Persze nem mindegy, hogy mit és mennyit gyakorlunk. Ha valaki programozástudás hiányában első projektnek azt tűzi ki célul, hogy márpedig ő mesterséges intelligenciát fog fejleszteni, akkor abba lehet, hogy beletörik a bicskája. (A túl magasra tett léc veszélye az, hogy abból a pontból túl nehéz átugrani, ekkor jön az önleértékelés, az "én hülye vagyok a programozáshoz"... Pedig csak a falat volt túl nagy és megakadt a torkán). A megfelelő méretű feladatok választása esszenciális abban, hogy az ember megtanuljon rendesen programozni. Persze honnan is tudná, aki nem programozott még életében, hogy a mesterséges intelligencia fejlesztése nem éppen gyerekjáték, ha még nincs semmilyen ismerete a területen?

Ha a tanuló megcsinálja a könyv fejezetei végén a feladatokat, akkor már eggyel közelebb jár a programozási tudás megszerzéséhez.

Amit viszont nem várhatunk el egy könyvtől:

  • Nem fogja felhívni a figyelmet arra, hogy már elavult, és van újabb kiadása
  • Nem fogja felhívni a figyelmet arra, hogy azt a feladatot oldotta-e meg az ember, ami szövegszerűen benne volt
  • Nem fogja felhívni a figyelmet arra, hogy a program valójában hibás, de arra az egy tesztesetre, amire valaki kipróbálja, pont működik
  • Nem fogja felhívni a figyelmet arra, hogy a megoldást elegánsabban is el lehet készíteni
  • Nem fogja az ember lelkét ápolni és támogatni, motiválni, ha egy hibába beleakad, továbbsegítve a megoldás felé
  • És főleg nem lehet tőle kérdezni (de legalább nem is szégyeníti meg az embert, ha nem helyénvalót kérdez, mint ami kis hazánkban fórumokban és a Facebookon nagyon bevett viselkedés)
  • És nem nézi át a programot, hogy megkeresse benne az esetleges hibákat

Összességében azt gondolom, hogy meg lehet tanulni könyvből is jól programozni, ha valaki nagyon fegyelmezett, rengeteg ideje van, óriási szerencsével vagy intelligenciával folyamatosan a jó megoldásokat választja és/vagy mindeközben jól bírja a kritikát és a kudarcokat.

Ha kényelmesebb, biztonságosabb útra vágysz, válassz inkább egy tanfolyamot vagy magántanárt.

A bejegyzés trackback címe:

https://programozasoktatas.blog.hu/api/trackback/id/tr2013480947

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.

UrbanLegend2000 2017.12.12. 19:13:08

Programozni mindenki magától tanul. Akinek csak tanítják, az sose fogja tudni.

UrbanLegend2000 2017.12.12. 19:15:22

@maxval bircaman bácsi szeredőci mélyelemző: csak kapitalista könyvből próbáltad, vagy kommunista könyvből is?
A programozás nem olyan mont a propaganda, hogy csak ismételni kell a pártközpont utasításait. A narancs sem érik parancsra. (Bár az utóbbi időben elég hozza sok buta ember is)

midnightcoder2 2017.12.12. 19:31:57

@paráznabillegető: Ennyire nem kell bonyolultan indulni. Az első programom annyi volt, hogy 10x kiírtam egymás után egy szöveget. Aztán voltak az olyan programok mint az "emberevő", ahol volt egy A betű amit a kurzor nyilakkal mozgattál és volt egy O betű aki a másik oldalról indult, és el akarta kapni az A betűmet. Ha sikerült, meghaltál. Aztán voltak az első top-down scroller játékok: egy űrhajóval zuhantál lefelé, alulról fölfelé jöttek a csillagok amiket ki lehetett kerülni. Ezeket mind-mind elég könnyű volt a korabeli 8 bites gépeken (HT-1080z, ZX-Spectrum, Commodore 64) csinálni. Ma picit másképp kell nekiállni ezeknek, de ma ott a Unity, a Godot, Python és PyGame és millió más cucc.
Őszintén szólva ilyen táblás játékot csak jóval később csináltam, amikor a C++-t tanultam.

D2 2017.12.12. 19:45:06

"Meg lehet-e tanulni könyvből programozni?" Csak könyvből semmit sem lehet megtanulni, mindahogyan kizárólag gyakorlatból sem. Persze, roppant vicces a karatéhoz hasonlítani, de inkább a nyelvhez tudnám. Kell egy csomó (könyvből történő) tanulás, példák, esetmegoldások, éles problémák, határidők, fórumokon való keresgélés, mások ötleteinek "adaptálása" stb.
A legenda szerint Kossuth is könyvből tanult angolul...

Zed is not dead yet 2017.12.12. 20:09:38

off: Látom, nem csak én - hogyan is mondjam finoman - kedvelem kevéssé a birkát.

on:

A probléma ott kezdődik, hogy rosszul lefordított referencia-kézikönyvek _nem_ tanulásra valók (mondjuk a jól lefordítottak se). Aztán amikor valaki _naaagytudású_szakember_ leír valamit arról, hogy számára mi ez a programnyelv, az is nagyjából egy ember számára használható valamire: az illető klónjának (talán).

Nem tudom, idevetődnek-e még olyan őstulkok, mint én, akik még emlékeznek (viszonylag jó példaként) a Borland Pascal 3.xx -re, meg az ahhoz kapható könyvre (szürke borítós, "Tanuljunk meg programozni Pascal"-ban, vagy valami ilyesmi címmel ... nagyjából 30 éves történet. Aztán volt egy dBase könyv, benne Kis Bill (vagy Joe, vagy valami ilyesmi) Nagy Halkereskedésének az üzleti adminisztrációs feladataival és ezek megoldásával a dBase III-ban ... szintén kb. 30-éves sztori. Ezek tényleg jók voltak, mert bármilyen szinten be lehetett szállni és végig logikus volt és érthető. Emlékeztek ezekre?

Az igazi etalon pedig a végére: a Lángos István-féle c 64 könyv. Amiben a szerző elkezdte a problémafelvetést onnan, hogy alma + alma, aztán jött a Basic, jött a gépi kód, jöttek a sprite-ok, meg a SID-chip programozása és ilyenek ... komolyan, abszolút zéró szintről indulva bárki tudta a végéig követni, tökéletesen lényegre törő, sallangmentes, következetes és logikus, hibátlanul felépített könyv volt, olyan, hogy szinte sorról sorra haladva mindig volt mit kipróbálni a gyakorlatban is, mindig volt egy kis sikerélmény, mindig volt visszacsatolás, ha az ember valamit elszúrt esetleg. Később volt alkalmam találkozni a szerzővel személyesen is (kb. 10 évvel a könyv olvasása után) és élőben is olyan, mint a könyve, teljesen egyenes, nagyképűség-mentes. Igazi példakép.

Szóval szerintem jó könyvből igenis meg lehet tanulni jól programozni bármilyen programnyelvben, amihez van az embernek valamilyen gyakorlási lehetősége is és a tankönyv tartalmaz példákat is és mindenképpen fontos, hogy induljon teljesen a nulláról (fogalomkészlet, fogalmi deklarációk, egyszerű példák, feljesztési és futási környezet bemutatása (és nem csak a szigorúan vett programnyelv) és legyen benne legalább egy olyan program, ami a kvázi "hello world"-szintről induljon (ezzel kapcsolatban le lehet írni a szerkesztőt és a fordítót is alap/középszinten), aztán lehetőleg ugyanazon a programocskán menjene tovább a gyakorlati bemutatása a tanultaknak, kb. együtt hízlalva az elméleti tudást és a forráskódot. És lehetőleg a bemutatott (digitálisan megszerezhető) források _tényleg_ azok legyenek, amik a könyvben is szerepeljenek és működjenek is (verziók, különféle kiadások, stb. problémái).

Tényleg, vajon mi lehet Lángos Istvánnal?

Nem leszünk gyarmat ! 2017.12.12. 20:26:36

Könyvből is meg lehet tanulni programozni :) Én is úgy tanultam meg :) De utána gyakorolni kell élesben :) A tanfolyamokról nincs annyira jó véleményem, oda leginkább azért jártam mert jó kikapcsolódás volt és mindig vittem magammal egy kolléganőt :) Magántanárhoz nem jártam, inkább én tanítottam :)

Zed is not dead yet 2017.12.12. 20:48:46

Főleg webhegesztőmesterektől látom azt, hogy egészen csicsás izéket összelegóznak a netről ingyen beszerezhető modulokból és hirtelen kijelentik, hogy ők programozók. Miközben a boole-algebrával kapcsolatban legfeljebb arra emlékeznek, hogy az valami izé volt, ahol A meg B meg C meg ilyen-olyan jelölések és nagyon durván kirúgták belőle a tankör javát, pedig milyen egyszerűnek tűnt eleinte. Algoritmizálás? Az minek, amikor ők objektumorientálnak (nem, hanem simán legóznak). Hatékonyság? Öndokumentálás? Jackson-módszer? Miiii?

Szóval manapság főleg humán célgépeket képeznek, általában eleve konkrét ipari megrendelésre (ahogyan egy barátom szokta emlegetni: digitális majmokat). Ennek a képzésnek fontos része, hogy tudj bizonyos szabványokat, felismerd a lego-kockák illesztési lehetőségeit és szintén fontos, hogy használj kész objeektumokat, semmi mást.

Aztán kijönnek a friss titánok a különféle papírjaikkal a suliból, hogyaszongya' "ilyen-olyan rendszermérnök", meg hasonlók és lehet őket teljesen elölről kezdeni megtanítani programozni. Már eleve az, hogy mondjuk a webreszeldék kivételével a programozási feladatok többsége _nagyon_nem_ C++-ban való megoldásért kiált. Meg nem is ilyen-olyan napi divat cuncika "(program)nyelvek"ért. Szóval ebben is zseniális volt az öreg Lángos Pista bátyó, hogy nem "bézik"ül akart tanítani, hanem "programozói gondolkodás"ul, a c64, meg a többi csak gyakorlati eszköz volt. Mint egy nyomorult vonalzó. Most meg jönnek a srácok és tudnak (szerintük) "izé"ül (az izét helyettesítsd be bármire, ami eszedbe jut). Aztán adsz neki egy faladatot, vagy odateszel elé egy aktuális forráskódot (egy aktuálisan "élő" programot), ami lehet hogy kitesz 8-10 megabyte-ot (forráskód), de nyilván nem egy tagolatlan tenger. Aztán ... ennyi. Még odáig se jutnak el sajnos, hogy kérdéseik legyenek. Diplomával. Tudással. Ésszel. És hangsúlyozom: _nem_gúnyolódok_. Ezek értelmes emberek, évekig tanultak, a tanultakból vizsgáztak, írtak szakdolgozatot, stb.

Szóval először is, kell egy egyszerű, általános célú nyelv, meg egy jó tankönyv a "hogyan oldj meg egy problémát, esetleg a számítógép segítségével" megközelítéssel. Semmi CSS, meg PHP, meg C++, meg faszom (bocs).

Ha ez első lépés után valaki kibírja, hogy _ne_programozzon_, nincsenek elvonási tünetei, ha nem engedik, hogy heteket szarakodjon egy rekurzióval (és stb.), az inkább _NE_ legyen programozó. Mert nem úgy gondolkodik, nem is fog úgy gondolkodni, nem érti, hogy miért _kötelező_ egy programot úgy megcsinálni hogy a nem várt helyzetekre is legyen benne megoldás, nem érti, hogy nincs olyan program hogy "elég jó" és vitatkozik, ha azt mondom, hogy a programot nem a számítógépnek írja, hanem annak az ismeretlennek, aki majd lehet hogy éveket áldoz az életéből arra, hogy professzionálisan _használja_ a kész programot. És ugye itt van még egy nulladik kihívás, a "képzeld el a felhasználódat és tedd boldoggá". Nagggyon ritkán van az, hogy a felhasználó az pont olyan, mint a programozó. (van itt ugye ergonómia, meg más dolgok is)

Ja igen, és ami szerintem kell, hogy _szakmát_programozz_. OK, aki 3D-motort fejleszt egy FPS-hez, annak talán elég, ha fejlett térérzékelése van és egészen jó a matek bizonyos ágaiban, de ha valami más feladatról beszélünk, akkor érts a szakmához és _aztán_ programozz. Én mondjuk üzleti szoftverekben motorozok 31 éve (azt a k..), szóval azt kell mondjam, lószart se lehet kezdeni egy brilliáns progmatossal. Még arra se képes (vagy lehet hogy nem képesség, hanem hajlandóság), hogy rögtön megértse, a könyvelés sima kódolás. És vannak ismerőseim pl. az eü. informatika terén, akik azt mondják, orvosból, biológusból (stb.) _némi_ digitális érdeklődéssel mindent ki lehet hozni, "informatikusból" legföljebb egy közepes digitális trógert (nem szitokszó volt), aki elboldogul egy jól leszervezett feladat kódolásával, de igazán nem érti, mit is csinál.

(Van egy békéscsabai ismerősöm, ő írta a névjegykártyájára, hogy "XY, digitális tróger", de ő büszke volt erre és amekkora szakember a srác, hát _úgy_ szerintem mindenki szívesen lenne digitális tróger. Én is.)

Brandon Frazer 2017.12.12. 20:48:57

Amikor legutóbb nekiálltam programozást tanulni, rájöttem, hogy kibaszottul semmi kedvem hozzá, nem is érdekel, meg időpazarlásnak tartom. Inkább felhívtam egy ismerős csajszit, akit már régóta meg szerettem volna szúrni. Sikerült is. Azóta is boldogan élünk. Gyönyörű 17 éves lányom van. És mi lett volna, ha akkor sikerül megtanulnom programozni, Egy rakás unalmas, kocka fasszal artikuláltan üvöltöznék egy kocsmában, ahol vagy ránk hívják a rendőröket, vagy mindenki magába roskadva baszogatná az OnePlus 5T telefonját, ahogy egy HUP-os talin is teszik a faszkalapok.

"!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--
_ _ _
| |__ | | ___ __ _ | |__ _ _
| '_ \ | | / _ \ / _` | | '_ \ | | | |
| |_) || || (_) || (_| | | | | || |_| |
|_.__/ |_| \___/ \__, |[]|_| |_| \__,_| (blfr4)
|___/
-->
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://ogp.me/ns/fb#">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Meg lehet-e tanulni könyvből programozni? - Programozásoktatás</title>
<base href="http://programozasoktatas.blog.hu/skins/classic/" />
<meta name="application-name" content="Programozásoktatás">
<meta name="description" content="A kedvenc viszontkérdésem erre az, hogy Meg lehet-e tanulni könyvből karatézni? vagy Hány könyvet kell elolvasnod ahhoz, hogy fekete öves karate mester legyél?Hadd fejtsem ki egy kicsit jobban.Az elméletet el lehet olvasni. Meglátásom szerint, amíg az ember birtokolja az olvasás&hellip;" />
<meta name="logcustomtarget" content="1" />
<meta name="keywords" content="könyv, programozás" />
<meta property='og:locale' content='hu_HU'/>
<meta property="og:description" content="A kedvenc viszontkérdésem erre az, hogy Meg lehet-e tanulni könyvből karatézni? vagy Hány könyvet kell elolvasnod ahhoz, hogy fekete öves karate mester legyél?Hadd fejtsem ki egy kicsit jobban.Az elméletet el lehet olvasni. Meglátásom szerint, amíg az ember birtokolja az olvasás&hellip;" />
<meta property="twitter:description" content="A kedvenc viszontkérdésem erre az, hogy Meg lehet-e tanulni könyvből karatézni? vagy Hány könyvet kell elolvasnod ahhoz, hogy fekete öves karate mester legyél?Hadd fejtsem ki egy kicsit jobban.Az elméletet el lehet olvasni. Meglátásom szerint, amíg az ember birtokolja az olvasás&hellip;" />

Nancsibacsi 2017.12.12. 20:49:33

A programozó az a szakma, amit ha az ember nem imád, akkor alacsonyabb szinten se tudja művelni. Egy programozót halál egyszerű felvételiztetni: Mutass egy saját, otthoni projectet! Ha nem tud mutatni, akkor kár tovább rabolni egymás idejét, mert aki otthon nem programozik kedvtelésből, az NEM PROGRAMOZÓ. Nem rossz, nem gyenge - hanem NEM PROGRAMOZÓ.
Ez volna az első, és legfontosabb, amit minden tanulni vágyónak el kellene magyarázni, mert így aki nem abszolúte elhivatott, az valószínűleg bele se kezdene, és ezt NAGYON JÓL TENNÉ. Jelenleg senkiháziak kezében a popszakma - annyi kontárt, béna balf.szt mint ami a programozó szakmával keresi a kenyerét egyetlen más szakmában sem lehet találni. Se orvos, se kőműves, se prostituált nincs olyan arányban kontár, mint programozó.

paráznabillegető 2017.12.12. 20:50:26

@midnightcoder2: na igen...
de valahol indulni kell. az én legkorábbi emlékem... valami szöveges kalandjáték volt, ilyen labirintusos, asszem még c16oson írkáltam, basicben... :D
nagyon szép álom volt. a kivitelezés meg gány.
de működött!
beh rég volt...

Zed is not dead yet 2017.12.12. 21:07:39

@Brandon Frazer: Akiről te beszélsz, azok nem a programozók, hanem a hormontúltengéses tini kockák. Akkor is ha közben 50 évesek. Mondjuk van némi átfedés a két halmaz között, az is igaz.

Szaktanár 2017.12.12. 21:09:29

"És főleg nem lehet tőle kérdezni (de legalább nem is szégyeníti meg az embert, ha nem helyénvalót kérdez, mint ami kis hazánkban fórumokban és a Facebookon nagyon bevett viselkedés)"

stackoverflow-t semmi sem veri ebben az attitűdben. oké, az sem nagyon segít, h minden 10. kérdés úgy szól, h mi a gond "hello world" applikációmmal, szóval érthető, h az ottani szakiknál is kicsit lejjebb csúszott már a toleranciaküszöb, de azért az se nagyon frankó, h kérdezel vmi tényleg nem alapvető dolgokat, és rögtön ott terem 3-4 okoska leoltani, h neeeemáááár, nem szégyelled magad ezzel a kérdéssel, hiszen csak alig 4-5 új class-t kell írni hozzá, meg 80-100 helyen módosítani a kódot, hát erre h nem jöttél rá magadtól. szóval azért taplók mindenhol vannak bőven.

Zed is not dead yet 2017.12.12. 21:10:13

@Nancsibacsi: Te Náncsi, bocs ha off a kérdés, de milyen az a kontár prosti? :D

Szaktanár 2017.12.12. 21:12:00

@Borzasztó Károly: ezt nem tudom, h a mo-i oktatásban igaz-e a programozásban (sok minden más tudom, h igen), de ahol én diplomáztam, ott egészen profi oktatók oktattak, akik kódoltak mellette ezerrel.

igazi hős 2017.12.12. 21:20:16

@Borzasztó Károly: Aki nem tudja, az is csinálja...

ML91 2017.12.12. 21:22:39

Az még kimaradt, hogy a mai világban a legtöbb programozó egyedül nem nagyon képes komoly sikereket elérni. Ahhoz, hogy a megfelelő határidőn belül (egyéni fejlesztésnél értsd: mielőtt más valaki megcsinálja) megfelelő minőségben elkészüljön valami jellemzően csapatokban kell dolgozni. És ez manapság legalább annyira fontos, hogy a technikai tudás.

Ellenben sok olyan emberrel dolgoztam, akiknek a tudása erős átlagos mégis nagyon hatékonyan lehet velük együtt dolgozni.

Na és pont ezek a dolgok azok, amiket nem lehet könyvből tanulni:
Hogyan kell az ötleteinket effektíven kommunikálni, hogyan lehet érvelni mellette. Mire kell figyelni egy kódreviewnál. Hogyan lehet gyorsan elmagyarázni valamit valakinek, akinek az adott témában más a tudásszintje. Hogy lehet időt becsülni. Hogy lehet a munkánkat megfelelően dokumentálni. És a kapcsolódó toolokról még nem is beszéltem...

Zed is not dead yet 2017.12.12. 21:23:50

@Szaktanár: Amikor az embernek más cégekkel (és így nyilván más programozókkal) kell alkalmanként együttműködnie, akkor is lehet találkozni ezzel a viselkedéssel. Mármint a kétbites huzalozott root úgy kezd el arcolni, hogy fingja nincs, mik a valódi szakmai kvalitások, pusztán azért, mert mondjuk az elején kiderült, hogy te (pl.) nem programozol perl-ben (ami az ő személyes liblingje). Vagy mert (valós példa) neked nincs okostelefonod (höhö). Aztán van, akit ez kellemetlenül érint, én inkább hátradőlök és élvezem, hogy nyomja a standupot a kis bináris Bonaparte. Ha egy ügyfelet ezzel meg lehet venni, akkor az csak legyen az övé először, majd ha már egyszer pofára esett, másodszor lehet az én ügyfelem. Ha pedig nem, akkor pláne win-win.

Jó programozókra (már amíg alkalmazottak) amúgy is igaz hogy egyrészt állásinterjún nem nekik szoktak feltételeket támasztani, hanem ők, másrészt pedig nagyon stresszes lehet nekik állástalanul az a hosszú idő, meg az azzal járó kilátástalanság (az a félóra, míg híre megy, hogy épp szabadok).

Szaktanár 2017.12.12. 21:28:02

@Zed is not dead yet: sztem ez is helyfüggő egyébként. mo-n tutira megy a kivagyiság, meg egymás lenézése, sok ilyen sztorit hallottam. itt dániában max magukban néznek le, de nem röhögnek ki, pedig messze én vagyok a legtapasztalatlanabb kollega a fejlesztők közt a pár év szakmai tapasztalatommal. de még a nagyobb tudásúak is szoktak egymásnak segíteni a cégnél, nap mint nap látom.

igazi hős 2017.12.12. 21:33:03

@D2: Az Arany János volt.

Prof. Wurm 2017.12.12. 21:42:41

Azt is kérdezhetném: "Meg lehet tanulni könyvből sakkozni?" vagy "Hány könyvet kell elolvasnod ahhoz, hogy sakk nagymester legyél?" A két tanulási folyamat nagyon hasonló. Én mindkettőt ismerem. Ha már az ősidőkről volt szó, én Algol 60-nal kezdtem, és ha kaptam gépi időt, a lyukszalag le is "futott" a szobányi számítógépen. Írtam már több programot különböző nyelveken, de soha nem lett belőlem se programozó - a szó igazi értelmében -, se sakk nagymester (tábla melletti). Ehhez sokkal több kell, mint azt már többen kifejtették. De könyv nélkül (főleg jó könyv nélkül) se lehet megtanulni semmit rendesen. A mai oktatás pedig nem tudom hol és mikor lett elcseszve (elnézést a néhány száz kivételtől), de a végeredmény nem túl bíztató.

Zed is not dead yet 2017.12.12. 21:43:03

@ML91: Halkan jegyzem meg, ha végig magyarul beszélsz, úgy is szakmai és érthető. Amúgy igazad van ezekben teljesen. Ráadásul azt látom, hogy aki valamit tud programozni, az rögtön vezetni akar, meg diktálni, meg önállóan, meg satöbbi. Rendesen szét van atomizálódva az egész szakma, súlyosbítva kontárokkal és titánokkal (és a kettő sokszor elég hosszú ideig egyformán arról ismerhető fel, hogy nem akar (vagy tud) érthetően kommunikálni). Esküszöm, az egyemberes (2, 3, 4, szóval nagyon nem sok) "cégek" körében az informatika tuti vezet (meg persze kozmetikai (és hasonló) tanácsadás és a különféle ügynöklések, de ezek számomra nem munkák az értékteremtés felől közelítve a fogalmat).

Aztán, amikor a zseniális programozó megalkotta élete fő művét, ami tényleg egy csoda, egy valódi unikum és így tovább (minden vicc nélkül) .... akkor mi lesz? Ki fogja azt a terméket eladni? Ki fogja szupportálni? Ki fogja naprakészen tartani, urambocsá továbbfejleszteni? Nem akkor, a nulladik napon, hanem mondjuk 1 év múlva, meg 10 év múlva, meg így tovább. És ha a hős programozó zseni ezt mind bevállalja, akkor ugyanez az ember (mert végülis ember _is_ közben, nem??) mikor él? Család, szabadság, betegség, alkotói hullámvölgyek, stb. Abszolút félretéve most a csaló bitvigéc szintén nagyon is létező alakját, a hős egyemberes (páremberes) cég nagyon könnyen ott találja magát, hogy nem győzi. És már kész is van a "kontár informatikus", akkor is, ha valójában nem az. Jártam már így, nem kevésszer: valakit megtanítunk szakmára, megtanítjuk a járulékos dolgokra is (ügyfélkezelés, tárgyalás, prezentáció, stb.) ééééés .... megy önállósodni. És amikor kérdezem, hogy "Többet fogsz keresni? Utálod a kollégákat? Egészen más jellegű feladatokra vágysz?" stb-stb, akkor nem, nem, nem ... és aztán kínlódás. Az idővel, az erővel, a ... az egész világgal való zsonglőrködés totál rátelepszik, nem tud alkotni, nem halad, nem jók az ügyfélkapcsolatai .. vagy esetleg ezekkel nincs nagyon baj, csak épp nincs élete. Gondolom, aki szakmabeli ezt olvassa, az mind pontosan tudja, miről beszélek. Hát ez egy igazi probléma.

igazi hős 2017.12.12. 21:43:57

@Nancsibacsi: Ezzel a vélekedéssel szemben csak annyit lehet írni: az amatőr ingyen csinálja, a profi csak pénzért. Eszembe nem jutna itthon bármi komolyat programozni, az túl sokba kerülne. Persze ha a "gyerek" (20 éves, BME-re jár) ír valamit, abba szívesen beszállok.

Zed is not dead yet 2017.12.12. 21:51:49

@Szaktanár: Ó, hát ehhez is ész kell (és nem az az ész, ami a kódoláshoz mondjuk). Az együttműködő, a másikat nem lenéző emberekről általában hamar ki is derül, hogy ami a szakmai tudást illeti épp ők nézhetnék le a másikat talán valami joggal. Egyébként én ezt a farokméregetést inkább a corporate-vonalak mentén tapasztalom gyakran. Már ott kezdődik, hogy milyen autóval érkeztél az ügyfélhez, aztán ott folytatódik, hogy a te valójában kinek a "kölyke" vagy (Microsoft? SAP? és persze vannak mellényes-BMW-s honi csapatok is) és innen nézve nem számít, hogy azért jársz-e mással, mert nem érdekel a bajor gépészet. Persze ezeknél a cégeknél a personal branding rendesen ki van staffírozva jutalomfalatokkal, szóval akinek nincs mai okostelefonja, annak azért nincs, mert _nem_kapott_, és ugyanez van a kocsikkal, a notebookkal, még a nyomorult gatyájukkal is, amit telefinganak, komolyan, egy vicc. Pavlov nagyon bólogat a túlvilágról. A kisebb cégek meg inkább csak azért brusztolnak ész nélkül, mert "ne juss be a piacukra". Dehát ez ugyanaz, mint ami emberenként is megy, szóval nem ragozom.

Zed is not dead yet 2017.12.12. 21:55:13

@igazi hős: De gondolom neked van _nem_otthoni_ produktumod, amit elő tudnál venni, ha meg kéne mutatnod, mit tudsz. Náncsi arról beszélt, hogy aki _semmit_sem_ tud felmutatni, az valószínűleg nem éri meg már az állásinterjúztatást sem. És mondhatott volna próbamunkát is, vagy hasonlókat, de amikor bejön az utcáról az amatőr és azt mondja hogy "ide nekem...", az .. az talán nem te vagy jelenleg.

ML91 2017.12.12. 21:55:19

@Zed:
Akárhányszor olvasom át a hozzászólásomat két idegen szó van benne:
codereview és tool. Eddigi éveimet alatt egyiknek sem találkozhat azt hiszem hiteles magyar megfelelőjével, pedig halottam már pár cifraságot (mint az Egyke tervminta, aminél bő egy órába telt rájönni, hogy az illető egy Singleton osztályt szeretne látni...).
Szóval várom a magyar alternatívákat az előbb említett két kifejezésre!
Előre is köszi!

Szaktanár 2017.12.12. 21:57:57

@Zed is not dead yet: igen, rémlik még vmi ilyesmi attitűd mo-ról, hála istennek már jó ideje nem élvezem az ottani levegőt. ez a hozzáállás itt elképzelhetetlen lenne, nem csupán a kollegák közt, de társadalmi szinten. másképp vannak szocializálva, itt a nagyképűség főben járó bűn. ha érdekel a téma:
eventyribergen.wordpress.com/2014/09/02/a-jante-torveny/

Zed is not dead yet 2017.12.12. 22:09:35

@ML91: Bocsánat, nem akartam nyelvtannáciskodni, nem is szeretném elvinni ebbe az off irányba a beszélgetést, vedd úgy hogy nem szóltam.

Zed is not dead yet 2017.12.12. 22:15:58

@Szaktanár: Még nem hallottam erről, de tényleg érdekes. Főleg ha ezt aktívan és passzívan egyaránt alkalmazzák.

Szaktanár 2017.12.12. 22:20:05

@Zed is not dead yet: állíthatom az itt eltöltött évek ismeretében, h igen, alkalmazzák. itt nincs magamutogatás, hivalkodás.

komisz_kölök 2017.12.12. 23:32:09

@Borzasztó Károly: "A programozás amúgy is tipikusan olyan, hogy aki tudja csinálja, aki nem, az tanítja."

Pontosan. Aki tud ugy programozni, hogy erdemes lenne tanitania, azt nem tudja megfizetni magantanarkent senki.

komisz_kölök 2017.12.12. 23:33:52

@Nancsibacsi: "A programozó az a szakma, amit ha az ember nem imád, akkor alacsonyabb szinten se tudja művelni. Egy programozót halál egyszerű felvételiztetni: Mutass egy saját, otthoni projectet! Ha nem tud mutatni, akkor kár tovább rabolni egymás idejét, mert aki otthon nem programozik kedvtelésből, az NEM PROGRAMOZÓ. Nem rossz, nem gyenge - hanem NEM PROGRAMOZÓ."

Ezeket a szavakat öntsük aranyba mester .)

komisz_kölök 2017.12.12. 23:39:37

@maxval bircaman bácsi szeredőci mélyelemző:

- nem magyaráznak el fontos részleteket, : lehet hogy kene annyi esz, hogy amit nem ertesz, utananezel
- túl részletesen magyaráznak részleteket, kihagyva a nagy képet. : lehet hogy elöbb meg kene nezni nagy vonalakban, mit akarsz tanulni, aztan a reszletekbe nemmi

Sanja a programozas olyan, hogy meglasztik az eredmenyen, ha nem tudsz gondolkodni, csak nagyokat mondani. A te szakmadban lehet magyarazni a tenyeket, nezni innen-onnan, a program vagy müködik vagy nem.

dr. mesterséges színezék 2017.12.13. 00:10:39

@FayRodisz: Az tenné be a kaput, ha nem lehetne megtanulni (valamennyire, ami után a saját hibáink és másokéi vezetnek tovább).
Ha ugyanis nem lehetne megtanulni, és minden nyelvhez tanfolyam/magántanár kellett volna/kellene, akkor arra kerestem volna a megtanultakkal, hogy megint tanulhassak valamit, amivel kifizethetem a később tanulandókat...

dr. mesterséges színezék 2017.12.13. 00:18:54

@igazi hős: Arany úgy fordított Shakespeare-t, hogy papírból tanult.
Kossuth úgy tartott beszédet New Yorkban, hogy a sitten tanult, Shakespeare-ből.

dr. mesterséges színezék 2017.12.13. 00:22:49

@komisz_kölök: Birca meggyőzte a könyvet arról, hogy az nem úgy van, ahogy leírja (és a könyv nem szólt vissza, tehát bircának igaza volt). Aztán a debattőri diadal után az interpreter/compiler/algoritmus nekiállt a sorosista-buzista kötözködésnek.

ArriMedes 2017.12.13. 00:27:32

ez azért elég pontatlan, mert mi az hogy "megtanulni"?
alapok, magasabb szint, konkrétan milyen ismeretek, stb. stb.

viszont a könyvek egy része nagyon gyengén van megírva

Nylul 2017.12.13. 00:37:58

@maxval bircaman bácsi szeredőci mélyelemző: Hahha, szóval buta vagy. De ezt eddig is tudtuk.

@komisz_kölök: 'Aki tud ugy programozni, hogy erdemes lenne tanitania, azt nem tudja megfizetni magantanarkent senki.'

Egy cseppet vitatom, bár lehet, hogy csak az én esetem egyedi: Hónapokat voltam internként egy full menő fejlesztőnél nagyon messze, úgy hogy főállásban senior voltam egy másik cégnél.
Az ő órabére 250$ volt, amikor 'helyette' dolgoztam ő 'megszánt' 180$-al óránként. Pair-programming toltuk, és én pár hónap alatt többet tanultam, mint azelőtt évek alatt. És azóta sem sikerült ilyen órabérrel projectet találni, mint akkor. :)

bigdata 2017.12.13. 01:19:44

Könyvből is meg lehet tanulni programozni. OK, csak könyvből elég nehéz, természetesen kell egy gép és fejlesztői környezet is. Az persze más kérdés, hogy mit fog emberünk egyetlen könyvből megtanulni, hisz olyan fokú technológiai diverzitás várja a nagyvilágban, amire mondjuk 1 db könyv kb. 0.5%-ban tud felkészíteni. Persze ha kimondottan 1 nyelv elsajátítása a cél, az megoldható. A programozók jórészt üzleti környezetben dolgoznak üzleti alkalmazásokon (beleértve a webet és mobil appokat), viszonylag ritkán merülnek fel a szűken vett programozást érintő kihívások. Az egyre növekvő számú programnyelv és keretrendszer mellett az online platformok is hódítanak (ld. Salesforce), egy pozíció betöltéséhez egy tucat technológiát kell készségszinten kezelni.

midnightcoder2 2017.12.13. 06:54:05

@Zed is not dead yet: Na ja, én is kb. ezt az utat jártam be anno, bár én kényszerből lettem egyszemélyes cég, anno a 90-es években a gengszterváltás után megszűntek a számítóközpontok, lett idehaza sok eszkimó és kevés fóka, egy SZÁMALK-os papírral ami akkoriban volt nekem képtelenség volt melót szerezni. Aztán jó sokáig bennragadtam az egyszemélyes céges létbe, ez idő alatt csináltam egész jó dolgokat, közben elvégeztem egy fősulit is, de aztán tele lett a tököm a dologgal. Ma egy multinál tolom, sokkal több pénzért sokkal kevesebb meló és nem kell a marketingtől az ügyféllel való tárgyalásig mindennel nekem szívnom. Cserébe persze be kell nyelni egy csomó bullshitet, van jó sok értelmetlen meeting, van openoffice ami mellett az energiám legalább fele arra megy el hogy egyáltalán a problémára figyeljek a zaj helyett, de a maradék fél is több mint elég a melóra.

HellsAngel 2017.12.13. 06:56:43

Ne becsuljuk le az olvasast. Nagyon komoly szakmai sikereket ertek mar el emberek azzal, hogy 1. azzal kezdtek a munkajukat, hogy megvettek azt a konyvet, amiben le van irva, hogy kell csinalni, elolvastak, megcsinaltak, mukodott (es nem dilettanskodtak bele a vilagba) 2. egyszer veletlenul eszrevettek a gepkonyv 47. oldalanak a lap aljan, hogy le van irva a megoldas arra a problemara, amivel mar hetek ota sziv a csoport 3. elolvastak egy forrasfajlt, amit mar evek ota nem nyitott meg senki 4. elolvastak valamit a repository melyen, amit mindenki probalt evek ota eltitkolni 5. elolvastak a vonatkozo man oldalt, amin nagybetukkel ki volt valami emelve, ami eppen a problema volt 6. mikozben foltoztak valamit, elolvastak, hogy mi van a kodban 12 sorral feljebb, es rajottek, hogy baromsagot csinalnak 7. elolvastak az emailjeiket 8. elokotortak a vonatkozo tiz eves emailt valahonnan 9. elolvastak a specifikaciojat valami cuccnak, es felfedeztek benne egy ellentmondast.

Az erto (sorok kozotti) olvasas egy nagyon fontos szakmai szkill, ezert aztan mindenki becsuletere valik, ha olvasva tanul meg programozni. (Ott a man man-t, a man bash-t es a man awk a tanulashoz, tehat vegul is minek konyv.)

Azonban konyvet minden barom ir, a jo konyv pedig ritka. En biztos nem olvasnek olyan konyvet, amit 1. angolbol forditottak magyarra a Tiszta kod utan. Veremnyom es tarsai. (Amikor az ember egy foldbe asott verembe vegzi a dolgat, az ugye nyomot hagy.) Altalaban olyanok forditanak, akik se az alapveto terminologiaval nincsenek tisztaba, se angolul, se magyarul nem tudnak. 2. nem olvasnek olyan konyvet, amit hajpolnak. Nagyobb a fustje mint a langja 3. amit doktori fokozattal rendelkezo programozok irtak, akik evtizedek ota egy sor profi kodot nem irtak esetleg amit doktori fokozattal rendelkezo tudosok irtak, akik evtizedek ota nem lattak profi programokat kozelrol . Az ilyenekert lehet lelkesedni, aztan osszetorsz lelkileg, amikor szembesulsz vele, hogy a valosag nem ilyen 4. ami elavult. Nem kell ezer eves szarokat olvasni. 5. aminek az eszmeisegeert nem lehet lelkesedni. Minden programozasi nyelv egy filozofia is, azt kell olvasni, aki a zaszlot viszi a tomegek elen, nem azt, aki a cuccait arulja a bodebol. 6. szerintem erdemesebb minnel ertelmesebb szerzotol olvasni, van, aki ket mondatban tobbet tud adni, mint mas 100 oldalban.

Kezdokent nem izgulnam tul, egy bash, egy szovegszerkeszto meg egy python konyv, amiben van mondjuk 50 forrasfajl. (Forumokrol kinezve, torrentrol buggantva.) Ezeket bepotyogi a jelentkezo egyesevel, megnezi, hogy hogy futnak, elolvassa roluk a meset, bepotyogi oket forditva is meg minden masodik sort kitorolve is, nyugtazza, hogy mi az, ami felig mukodik es mi az, ami igy vegtelen ciklus. Ha eljut a vegere, es le tudja irni a megoldasokat emlekezetbol, akkor mar van egy alapja, elmondhatja, hogy "konyvbol tanult meg programozni", anelkul, hogy faszsagokat olvasott volna kis janos belatol, a recserokogei tudomanyegyetem docens-jedilovagjatol

(Tudom, a python is hajpolt szar, de legalabb nem java. Szivem szerint az awk-t ajanlanam, a valaha keszult legnagyszerubb programozasi nyelv, de ezzel ma mar se baratokat, se munkat nem lehet szerezni, ezert aztan senkit sem traktalnek ezzel. A java elol menekulve a python-javascript tengely menten kezdenek most tanulni, ha kezdo lennek.)

midnightcoder2 2017.12.13. 06:58:51

@bigdata: Általában specialisták kellenek. Normális helyen aki backendezik annak ahhoz kell nagyon jól érteni, aki frontendezik annak ahhoz, aki játékot fejleszt annak ahhoz, aki meg hardverközeli dolgot csinál annak azt kell jól csinálnia. Az ég óvjon a magyar pincebététől ahol egyszemélyben te vagy a frontend és backend fejlesztő, de te csinálod desktopot és a mobilt is, de legyen még C++ ismereted is, és érts a photoshophoz, és legyen webdesigneri vénád, és legyél mellette adatbázisfejlesztő, és a munkaköri leírásodban benne lesz, hogy te fogod a WC-t is takarítani. Mindezt minimálbérért, a többit okosba, ha jól csinálod akkor a hónap végén esetleg még fizetést is kaphatsz.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 07:00:20

@FayRodisz:

Nem tudtam, hogy liberális világnézet is kell a programozáshoz. Jó, hogy szóltál. Már értem, nekem miért nem ment.

Serény Vélemény 2017.12.13. 07:50:05

@bigdata: " egy pozíció betöltéséhez egy tucat technológiát kell készségszinten " Nem lehet. Ugyanis nem lehet valaki full-extrásan oracle sql és mysql és mssql és posgresql szaki, mert vagy az egyikbe ássa magát bele tökig, és tud mindent arról, hogy hogyan kell egy adott, egyébként szabványos sql lekérdezést optimalizálni rá, vagy egy másikba, és mindenféleképpen hónapokig tart, amíg megfelelő tapasztalatot szerez, ráadásul éles, terhelt rendszeren.

G.R.Reventlov 2017.12.13. 07:59:06

Szükséges, de nem elégséges.

Akinek nincs türelme harmincszor újraolvasni egy-egy bekezdést, felfogni a különbséget aközött, hogy többé-kevésbé egyező módon vissza tud mondani egy leírt szöveget (szóljon az bármiről) / korrekt módon elemeire tudja bontani az olvasottakat és egy tőle független problémát, majd a kettőből egy működő megoldást kialakítani... az ne is kezdjen hozzá. (lásd: "nincs jó tankönyv")

Viszont aki leragad egy megoldásnál és nem képes azt újra és újra szétszedni és összerakni megint, egyre tisztább formában; aki nem képes segítségként kezelni a kritika bármilyen formáját, és akár az összes addig összerakott rendszerét kidobni egy "jó kérdés" miatt... az ugyanazt a kódot fogja élete végéig gépelni. Kőműves lesz, nem építész.

Jobb kérdés tehát az, hogy mi a programozó, kőműves vagy építész? Hiszen kőműves lehetsz könyv nélkül is, építész meg anélkül biztos nem, azzal is csak ha nagyon jó vagy. Az alábbi előadás nem azoknak szól, akik "szeretnének", hanem akik már "megtanultak". Öröm nézni, ahogy a közönség piszok lassan megérti, a fickó NEM viccel... (aki keres, sok érdekes dolgot talál innen indulva)

youtu.be/8pTEmbeENF4

dr. mesterséges színezék 2017.12.13. 07:59:18

@HellsAngel: "szivem szerint az awk-t ajanlanam, a valaha keszult legnagyszerubb programozasi nyelv, de ezzel ma mar se baratokat, se munkat nem lehet szerezni,"

Munkát nem tudok ajánlani, de pacsit igen.

(Azzal együtt, hogy nem mernék nagyonkezdőnek olyat a kezébe adni, ami alapból inputot olvas, ráadásul loopban, és erről külön nyelvi elemmel kell lebeszélni - de amint ezek a fogalmak megvannak neki, tényleg a mawkusok elé vetném.)

bigdata 2017.12.13. 07:59:37

@midnightcoder2: hm, 10 éve ez igaz is lett volna, pl. ha már említed: egy front end fejlesztő elvolt html, css, javascript alapokon. Aztán hol nyomják ezt ma nativban? Sőt, back end: ki használ pőre php-t? A very advanced objektum orientált Java programozói tudást is a hajadra kenheted, ha nem vagy Apache kompatibilis, vagy spring, hibernate miegyéb járatos, magyarán nem szedtél fel technológiai tudást. Plusz bármilyen platformon vagy fejlesztő, nem úszod meg repository, build, unit testing, deployment és társai nélkül, nehezen kerülöd el, hogy interfészeket használj és json, xml miegyéb fájlokat dolgozz fel, stb. Akad olyan pozíció, ahol csak békésen programozni kell egy adott, szűk stacken, de azt ráadásul nagyon-nagyon jól, csak hát ritka.

blöff 2017.12.13. 08:46:00

Ma divat úgymond programozGATni, autodidakta módon tanulGATni, és azt hinni, hogy programozni megtanulni az azt jelenti, hogy írtam már két ciklust.
Évek és sűrű gyakorlat kell ahhoz, hogy adott szinten megtanuljon az ember, sokan azt hiszik, hogy ha már valamit pötyögött és abból lett valami, az már tudás és mehet következő programnyelvre, meg neki nem kell ezt megtanítani, neki nem kell ám tanár, mert ő magától, meg a netről, meg tutorial videókból, persze...
Önámítás ez, olyan, mint ha zongorázni, vagy akármilyen nyelven meg lehetne tanulni egy hónap alatt.

dr. mesterséges színezék 2017.12.13. 09:05:32

@blöff: Egy hónap???
24 óra!

BTW: a könyv vagy tanfolyam témájához: komoly képzőközpontok tartanak komoly fejlesztők/gyártók által jóváhagyott tematika és oktatóanyag alapján alsó hangon félmillióért 30-40 órás tanfolyamokat olyan témakörökben, amelyekben a belépő szint meghaladása inkább 30-40 nap, és a bruttó 30-40 órába beletervezett labor az agy teljes kihagyásával megvalósított kopipészttel sem teljesíthető.

Magyarul a tanfolyam is csak ötletadásra, a kapu kinyitására lehet jó -- amire a (nem elrontott) könyv is. A többi a cseszd el és uralkodj elv mentén jön vagy nem jön el.

midnight coder 2017.12.13. 09:08:06

@blöff: Na ja. De az legalább akkora önámítás, hogy valaki X évig tanul programozni valami iskolából, az attól programozóvá válik. Programozni alapvetően úgy lehet megtanulni hogy programozol. Hogy az ehhez szükséges tanagyagot hogy szeded össze - legyen az video, élő tanár, vagy könyv vagy akár csak a net - sokkal kevésbé fontos szempont mint az, hogy csináld.

midnight coder 2017.12.13. 09:10:28

@bigdata: Az. hogy egy-egy területen a platformot kell ismerned nem cáfol meg engem, sőt inkább megerősít. Ma egy-egy területen bőven felhalmozódik akkora tudásanyag, hogy azokra a helyekre ahol mindenhez érteni kell kissé furcsán nézzen az ember.

dr. mesterséges színezék 2017.12.13. 09:11:18

@maxval bircaman bácsi szeredőci mélyelemző: wmikivel a párolgás és a forrás bánik el, veled a programozás. Ne keseredjetek el, nem lehettek mindenben a csúcson!

dr. mesterséges színezék 2017.12.13. 09:16:44

@midnight coder: Ott tartunk, hogy szélsőséges esetben a fenti technológiai tudással rendelkező, az azok által határolt területen a problémákat tényleg átlátó kollégák a saját oprendszerük gondjait nem tudják orvosolni, vagy egy egyszerű telepítő szkriptet üvöltő csapdák nélkül megírni.

1-2 évtized alatt jutottunk el ahhoz az extrém szegmentálódáshoz, amire a járűbiznisznek egy évszázad kellett.

paráznabillegető 2017.12.13. 09:23:22

én ma azzal ébredtem, hogy kurvára kedvem lett programozni, ég bennem a tettvágy.
ez teljesen ennek a blognak, különösen annak a néhány hozzászólónak az érdeme, akik tényleg hozzá is szóltak a felvetéshez.
köszönöm nekik az inspirációt!
azért a többieknek is köszi.
még birkának is - ej, de jó kedvem van!

AdamTheTux 2017.12.13. 09:36:39

@maxval bircaman bácsi szeredőci mélyelemző: Viccen kívül jobb a liberális világnézet a fejlesztéshez, ugyanis sokkal több absztrakciós szint ismeretét igényli, mint bármi más.

EU zászlót mindenhova! 2017.12.13. 10:00:00

@AdamTheTux: Libsi öntömjén, és übermensch tudat..Ebben még mindig nagyon jók vagytok..;)

midnight coder 2017.12.13. 10:04:44

@dr. mesterséges színezék: Ott tartunk, hogy komolyabb helyeken nemigen van admin joga a fejlesztőnek a saját gépén, max. korlátozott, a telepítést pedig nem kézzel tákolt scriptek végzik hanem standardizált eszközök, amiket szintén az azzal foglalkozó szakik kezelnek.

igazi hős 2017.12.13. 10:07:04

@midnight coder: "Programozni alapvetően úgy lehet megtanulni hogy programozol." Nem. Kódot írni alapvetően úgy lehet megtanulni hogy kódot írsz. Aztán vagy tudod, hogy ez még nem programozás, vagy nem.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 10:18:03

@dr. mesterséges színezék:

Semmi gond.

Alapvetően humán beállítottságú vagyok, már ott is csak negyedművelt, de a számítógépek mindig érdekeltek.

Még a C++ nyelvvel jutottam a legmesszebb, 25 éve, de ott is megrekedtem jó alapszinten.

midnight coder 2017.12.13. 10:24:00

@igazi hős: A programozás egy gondolkodásmód, amit úgy tudsz elsajátítani, ha műveled. Ahogy amúgy a matematikát sem tudod úgy elsajátítani ha nem oldasz meg egyetlen egyenletet sem, vagy zenélni sem fogsz tudni megtanulni gyakorlás nélkül.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 10:27:55

@AdamTheTux:

Dehogy jobb! Semmi köze hozzá.

Ami a programozáshoz kell az alapvetően ugyanaz, ami kell a sakkozáshoz.

Nem absztrakció kell, abban én pont jó vagyok, hanem gondos tervezés, amihez meg nem vagyok jó. Lám, a sakkot is utálom.

Annak idején írtam egy programot, mely kiszámolta az emberek születési dátuma alapján a bioritmust, s összehasonlította 2 ember bioritmusát. Felrajzolta és kiírta. C++ nyelven csináéltam.

Mutattam hozzáértő programozónak. Azt mondta: hibátlan, de röhejes, kb. 5-ször körülményesebben éri el az eredményt, mint ahogy kellene. Azt mondta: ez egy tipiikus "bölcsészprogram", feleslegesen túlbonyolít egyszerű dolgokat.

ben2 2017.12.13. 10:32:08

Az ember nem tanul, hanem hozzászokik dolgokhoz.
A programozás is ilyen. Hozzá kell szokni.
Az már majdnem mindegy, hogy hogyan: könyvből, youtube-ról, weboldalakról.
A legegyszerűbben úgy lehet megtanulni a programozni, ha az ember (és ez nem vicc), majom módjára, lépésről lépésre lemásolja, amit a video tutorialban az oktató művel, vagy manuálisan begépeli (és nem copy-paste!) az online példák kódját.
Ez ad egyfajta biztonság érzetet, hogy vezetik a kezed, mégis ha elindul a kód, az sikerélményt ad. Ilyenkor egy idő után az ember ösztönösen el kezd kísérletezni, variálni a begépelt kódot és lassan rájön, hogy mi miért van.

A magántanár működhet (tanárja válogatja), a hazai tanfolyamokat viszont messze ívben kerülném, mert az esetek 90%-ában egy adott fejlesztőkörnyezet felhasználói kézikönyvét adják elő élőszóban.

Külföldi online tanfolyamok között akadnak jók, de csak továbbképzésre, egy adott speciális témakörben, azaz előbb végig kell szenvedni az alapokat és csak utána lehet hasznuk.
Alapfokú oktatásra felesleges pénzt kidobni.

Aki nem tudja eldönteni, hogy mivel kezdje, az tanuljon pythont. Ezt a nyelvet eleve oktatási célra hozták létre, de kinőtte magát és ma már nagyon sok területen használják. A python nagyon jó prototípus gyártásra és viszonylag fájdalommentesen tovább lehet lépni C++ irányba.

Szaktanár 2017.12.13. 10:35:26

@Nylul: 250 dollár óránként? nem tudom elképzelni, h van az a programozási skill, ami ennyit ér. mondanál pár példát, mi volt az, amiért úgy érezted, ez megéri? nyilván nem azt kérem, h add át azt a tudást, amiért te eszetlen összeget kifizettél, csak 1-2 dolog érdekelne, ami szted annyira hasznos volt, h nem sajnáltad érte kifizetni ezt az összeget.

AdamTheTux 2017.12.13. 10:35:47

@maxval bircaman bácsi szeredőci mélyelemző: Ahogy írtad, humán beállítottságú vagy, és nem fejlesztő. Nos, én meg fejlesztő vagyok, és hidd el, sokkal fontosabb az absztrakciós készség. Sőt, jó rendszertervet absztrakciós készség nélkül nem is lehet írni.

Ahhoz, hogy az ember megértse a liberális alapgondolatokat szintén szükséges, hogy a világban létező dolgokat mélyebben elvonatkoztatva is meg tudja érteni az ember. Ennek van egy olyan szintje, amelyik felteszi például azt a kérdést, hogy ha az ember sellemi lény, akkor miért is meghatározó a fizikai teste bármiben?

A probléma az, és ebből kifolyólag voltaképpen egyet is értünk abban, hogy a mostani mainstream liberalizmusnak nevezett őrület káros (eleve erodálja a liberalizmus valódi értékeit), hogy olyanok olyan dolgokat népszerűsítenek, amelyeket valójában nem értenek saját maguk sem. Ennek az egyenes ági következménye a közbeszédet és a valódi probléma felismerést akadályozó PC, a kontraproduktívvá váló femináci mozgalom, vagy a normális társas érintkezést bénító gendersemlegesség elve. Az absztrakció ellentéte, a specializáció ugyanis szintén fontos.

Összegezve: a liberalista gondolkodású, a saját szellemét specializációkkal nem korlátozó fejlesztő jó eséllyel jobb eredményeket ér el, mint az, aki korlátozza a saját gondolkodását azzal, hogy ragaszkodik a specifikus dolgokhoz.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 10:46:45

@EU zászlót mindenhova!:

Nekem is volt ilyen tervem egy időben, de lemondtam róla.

Jobb kólcenteresként, több a szabadidőm.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 10:52:16

@AdamTheTux:

Én megértem a liberális alapgondolatokat, csak nem értek egyet velük. Nagy különbség!

"ha az ember sellemi lény, akkor miért is meghatározó a fizikai teste bármiben?"

Mert az ember egyszerre szellemi és anyagi lény. Platón ebben tévedett, amikor azt mondta, a test csak börtön.

A mostani mainstream liberalizmusnak nevezett őrület pedig a klasszikus liberalizmus LOGIKUS továbbgondolása.

bigdata 2017.12.13. 10:53:49

@Serény Vélemény: a felvetés jogos, csak a kontextus kérdéses. Pl. ha vki üzleti funkcionalitást fejleszt, aminek db oldala is van, ritkán kell a 4 alapműveletnél többet használnia. Left outer join, having, function based index és hasonlók kívül esnek a látókörén. Egy banki sql fejlesztőtől persze sokkal több kell, de olyan környezetben is előfordul, hogy egyes problémák megoldásához oracle tanácsadót vesznek igénybe.

midnight coder 2017.12.13. 11:03:36

@bigdata: Nem tudom milyen db oldal van felétek, nálunk db oldalon azért ennél picit több minden játszik: vannak ott CTE-k, cross apply-ok, merge-ek és még sok-sok más ami szem-szájnak ingere. Van olyan rendszerünk (nem mi terveztük, hanem valakik pár száz kilométerre nyugatabbra, és nem ma) amiben a BL nagy része SP-ben és triggerben van implementálva. A having a legkevesebb.

AdamTheTux 2017.12.13. 11:08:26

@maxval bircaman bácsi szeredőci mélyelemző: Különbözőek vagyunk. NEkem furcsának hat egy olyan rendszer, amelyik mindenáron kényszereket akar bevezetni, és nem ismeri el az emberi szabadságot, de különbözőek vagyunk.

A mainstream liberalizmus visszavezethető a klassziksura (furcsa is lenne, ha nem lenne folytonosság), de logikusnak szerintem éppen nem logikus a folytatása. Ugyanígy nem gondolom, hogy a konzervatív vagy éppen a szocialista világnézet egyértelmű következménye a nécizmus vagy a kommunizmus.

Sajnos kiragadtál egy kérdést, és állításomként tüntetted fel - ez súlyos érvelési hiba, annál is inkább, mert a válaszra - igaz nem explicit módon - de utalást tettem: míg az ember tisztán szellemi lényként való értelmezése egy igen magas szintű absztrakció, a valóság nem egy elképzelt, ideális világ, hanem valóságos, és mint ilyen, sepcializált.

A gendersemlegességnek például nem ott van a helye, hogy a "gyerek majd eldönti", hanem ott, hogy amikor felnőtt, az egész társadalom (absztrakció) számára lényegtelenné válik a neme, legfeljebb a párválasztás során (specializáció) játszik szerepet, hogy ki milyen nemű párt preferál.

Messzire kanyarodtunk, de az analógia a szoftverrendszerekkel alapvetően áll: amikor rendszertervről beszélünk általánosságban, lényegtelen, hogy mi az alkalmazásplatform, mi az adatbázis vagy a kliens. Amikor fejlesztési tervet írunk, vagy az implementációra sor kerül, akkor viszont már nagyon is fontos.

A liberalizmusnak erre kell visszatalálnia: az egyensúlyra, és a képességre, hogy különbséget tudjon tenni az idealizált és absztrakt elmélet, és a specializált és árnyalt valóság között. Erre most nem képes, de az alapok attól még ott vannak.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 11:39:32

@AdamTheTux:

Minden rendszer kényszereken alapszik, az eltérés csak a kényszerek mibenléte.

Az emberi szabadságot sok rendszer elismeri, de nem azonos módon. Pl. marxista szempontból a liberális szabadságkép abszurdan korlátozó.

A konzervatív rend a liberális része, annak mérsékelt verziója. Mármint modern értelemben. A liberalizmus ellenzését ugyanis nem szokás konzervatívnak nevezni, esetleg mondják, hogy "ókonzervatív".

Viszont a nacionalizmus továbbgondolása a nácizmus, ez szimpla tény.

AdamTheTux 2017.12.13. 12:25:08

@maxval bircaman bácsi szeredőci mélyelemző: ...és a kényszerek mértéke. Minnél kevesebb a kényszer, annál jobb. (A kényszer mindig valamilyen mértékű feszültséget jelent)

Nagyjából akkor megvan az a közös alap, ami mentén el lehet kezdeni a párbeszédet.

bigdata 2017.12.13. 12:40:23

@midnight coder: Nálunk? Mikor mi a nálunk. Amikor pl. a mobil apphoz készül API, olyankor egészen biztos, hogy a felhasználó telefonszámának a lekérdezéséhez nem lesz szükség temp táblákra meg halmazműveletekre. És nem is a db fejlesztő fog bedolgozni az őrülten bonyolult select megvalósításába. Vagy amikor a middleware fejlesztő bütyköli a hitelkonstrukció paramétereit, akkor se lesz szükség haladó sql-re. És ő is csak támogatást fog kapni, nem ténylegesen kódoló sql fejlesztőt. A havi kamatelhatároláshoz értelemszerűen nem az applikáció fejlesztők ülnek neki, hanem az adatbázis fejlesztők. Utóbbiak esetén valóban számít, hogy milyen db-hez értenek, bár azért ezt is érdemes árnyalni.

midnight coder 2017.12.13. 12:43:54

@maxval bircaman bácsi szeredőci mélyelemző: Ja. Bele is halt úgy 6 millió ártatlan. Míg az általad favorizált kommunizmusban alsó hangon is úgy 60 millióan haltak bele.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 12:45:57

@AdamTheTux:

A legtöbb kényszer a liberalizmusban van. Ugyanis a bújtatott kényszerek rendszere mindig a lehető legrosszabb dolog.

Mondok egy példát.

Kamaszgyerek vagy, el kell menned meglátogatni egy rokont, aki nem kedvelsz.

De úgy döntesz: nem mész, mert neked ez kellemetlen.

Erre jön az apád.

Ha az apád komcsi vagy fasiszta vagy hagyományos premodern szemléletű, azt mondja: takarodj azonnal, büdös kölyök, rokont látogatni, mert mindjárt kapsz 2 hatalmas pofont, ha itt feleselgetsz nekem!

Ha az apád liberó, azt mondja: megértelek, hogy nem akarsz menni, ehhez teljes jogod van, de én kérlek, menj el a kedvemért, okozz egy kis örömöt az idős rokonnak.

Mi a rosszabb? Nyilván a második: az apád hatalmilag feletted van, s tudod, meg fogja bosszúlni, ha nem teljesíted "kérését". Sőt az apád még azt is elvárja, hogy, "őszintén" örömöt is okozz.

Az első eset tisztább: teljesíted a parancsot, elmész, kibírod, de még színlelned se kell. Megmarad az integritásod, míg az első esetben beletúrtak a lelkedbe.

Na ez a liberalizmus nagy gondja: olyan szabadságot ad, mellyel nem tudsz élni a valóságban. Pl. bérmunkás vagy, s öncenzúrázni vagy kénytelen magadat, mert ha olyan véleményed van, mely nem tetszik munkaadódnak, ki leszel rúgva. Közben meg még hangoztatni is vagy köteles, hogy teljes a szólásszabadságod.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 12:47:10

@midnight coder:

Nem vagyok kommunista.

S persze a kommunizmusnak csak akkor volt 60 millió áldozata, ha beleszámoljuk a természetes halálal meghaltakat is. A valós szám 10 millió alatti.

AdamTheTux 2017.12.13. 12:49:20

@maxval bircaman bácsi szeredőci mélyelemző: A példád azért sántít, mert a "liberó" apuka valójában nem viselkedik liberálisként, hiszen érzelmi zsarolással próbálja rávenni a gyermeket arra, hogy azt tegye, amit parancsol. Az érzelmi zsarolás pedig ugyanolyan romboló hatású, mint a fizikai bántalmazás.

Amit említesz, egyik sem libarlista lépés: sem az öncenczúra, mely esetben a szólsszabadsához fűződő jog sérül, sem az érzelmi zsarolás, amey úgy általában rossz emberi viselkedési forma.

Androsz · http://migransozo.blog.hu 2017.12.13. 12:52:56

A kezdő mindenekelőtt szánja rá magát egy olyan nyelv megtanulására, amelyet egyedül meg lehet tanulni. Nem baj, ha az a programnyelv nem menő, mert ha érthető, akkor megtanulja abból a programozást, aztán majd megtanul egy menő nyelvet is.

Kell egy könyv. Jó könyv kellene, de az alig akad. A könyvek egy része elmerül a fejlesztőrendszer kezelőfelületének aprólékos ismertetésében, egy másik része pedig nem tud idejében abbahagyni egy témakört. Aki kezdő, annak először elég az egyszerűbb dolgokat megtanulnia. De akad elég jó könyv is. Amit nem egyszer kell elolvasni, hanem legyen ott a gép mellett, tele könyvjelzőkkel, kutyanyelvekkel, megjegyzésekkel.

Ha ez a nyelv már valamennyire érthető, akkor talán érdemes elmenni egy tanfolyamra, még inkább egy klubba, ha van olyan. A lényeget az ember mások magyarázataiból érti meg.

Mi legyen a gyakorlással? Persze eleinte néhány elemi feladatot kell megtanulni, de talán kezdhetünk rögtön azzal is, amivel folytatni is érdemes: *átírni mások programját*. Vannak olyan weboldalak, ahol kazalnyi forrásprogram tölthető le. Egy nem nagyon bonyolult célú programot kell kiválasztani, használni, tesztelni, majd jön az ötlet, hogy ezt most más színben írja ki, máshová, mit írjon ki még, kérdezze meg még azt is, hogy ..., és így tovább. Könnyebben tanulható meg egy utasítás célja és használata is, ha működő kódban figyelhetjük meg. Egy már működő programot sokkal könnyebb átírogatni, mint felépíteni a nulláról. Különösen érvényes ez az olyan nyelveknél, amelyeken már egy "Helló, világ"-hoz is rengeteg direktívát és deklarációt kell megírni, amihez a kezdő a legkevésbé ért. Kész programnál ez már meg van csinálva, és lehet foglalkozni a tényleges utasítások bizgetésével.

Aki programozni akar, és még nem olvas angolul, az sürgősen kezdje tanulni. A fejlesztőprogramok súgói és a mindenféle dokumentációk, szakanyagok zömükben angol nyelvűek. Nem kell igeidőkkel, harmadik alakokkal szarakodni, a kiejtés sem létfontosságú, hanem bele kell szokni a technikai szóhasználatba és egy szótárprogram rutinszerű használatába.

Szaktanár 2017.12.13. 13:00:13

@Androsz: "Mi legyen a gyakorlással? Persze eleinte néhány elemi feladatot kell megtanulni, de talán kezdhetünk rögtön azzal is, amivel folytatni is érdemes: *átírni mások programját*. Vannak olyan weboldalak, ahol kazalnyi forrásprogram tölthető le. Egy nem nagyon bonyolult célú programot kell kiválasztani, használni, tesztelni, majd jön az ötlet, hogy ezt most más színben írja ki, máshová, mit írjon ki még, kérdezze meg még azt is, hogy ..., és így tovább. Könnyebben tanulható meg egy utasítás célja és használata is, ha működő kódban figyelhetjük meg. Egy már működő programot sokkal könnyebb átírogatni, mint felépíteni a nulláról. Különösen érvényes ez az olyan nyelveknél, amelyeken már egy "Helló, világ"-hoz is rengeteg direktívát és deklarációt kell megírni, amihez a kezdő a legkevésbé ért. Kész programnál ez már meg van csinálva, és lehet foglalkozni a tényleges utasítások bizgetésével."

hát, lehet h nagyon különböző a szemléletünk, de sztem a legrosszabb, ami egy programozóval történhet, h más szar kódját kell működővé tennie. sok esetben egyszerűbb a nulláról felépíteni az egészet, mint egy pár éves, eleve nem túl jól megírt (és ez sokkal gyakoribb, mint a párja), elavult technológiát használó kódot használhatóvá tenni. azt hiszem, én talán csak a panírozást utálom jobban a legacy kódnál.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 13:05:26

@AdamTheTux:

Dehát pont ez a liberalizmus.

Olvass liberális szerzőket! A vége mindig az, hogy ha valakit nem lehet meggyőzni, marad az erőszak.

AdamTheTux 2017.12.13. 13:11:40

@Androsz: Sry, itt kerlt elő a téma :(

Laszlo K 2017.12.13. 13:26:04

Konyvbol nem lehet megtanulni kodolni. Hulyeseg. A jo programozo mindent sajat maga sajatit el, autodidakta. A jo programozonak van logikaja, abstrakcioja es jol tudja a konvenciokat es azokat betartja.

Viszont barhonnan megtanulhatja. Alapvetoen azonban nem mas mint kodok osszeollozasa, hivjuk refaktoralasnak. Egy szabalyrendszer alapjan. Mindenki tud programozni, csak nem mindenki tud jol.

Es ahogy mindenkinek mas a velemenye az eletrol, mindenki mashogyan is od meg dolgokat. Tehat sok esetben mashogy kozelit meg egy akarmilyen trivialis feladatot.

Nagyon sok kodot lattam mar es sokra azt mondom, hogy fuj. Altalaban azokra amik vagy nem az en gondolkodasmodom alkalmazzak, vagy nem hasznalnak valami patternt ra, amit enis alkalmaznek. Enellett vannak az undorito kodok, olyan emberek irjak, akik a konvenciokat se ismerik.

Erre mondom azt, hogy szuletni is kell ra es fejlodni is, tanulni. Olyan ez, mint a foci nagyban..

midnight coder 2017.12.13. 13:28:19

@maxval bircaman bácsi szeredőci mélyelemző: Ja. Pl. a Mao-féle Kulturális forradalom idején jó sokan természetesen meghaltak miután jó sokáig ütötték őket mindenféle eszközzel.

maxval bircaman bácsi szeredőci mélyelemző · http://bircahang.org 2017.12.13. 14:10:47

@midnight coder:

Fel vannak fújva a számok.

Pl. a szovjet rendszer összesen alig 15 milió embert küldött gulágba, s ezek átlag 10 %-a halt bele.

Plusz a népességkitelepítések alatt meghalt még 1 millió ember.

Valamint politikai okokból az EGÉSZ idő alatt kb. 1 millió embert végeztek ki.

A legtöbb áldozata a polgárháborúnak van. Itt a kommunisták kb. 2 millió mebert gyilkoltak le.

Az összes többi legfeljebb közvetett áldozat, lásd rossz gazdaságpolitikai miatti éhezés, stb.

A valóságban a szovjet rendszer KEVESEBB embert ölt meg 70 év alatt, mint amit a belgák Kongóban 20 év alatt, a XIX. sz. végén.

A fantasztikus áldozatszámokat jellemzően ex-komcsik találják ki, azaz szimpla egyéni önfelmentési kísérlet.

midnight coder 2017.12.13. 14:35:16

@maxval bircaman bácsi szeredőci mélyelemző: Az ott a szovjet rendszer volt. A kínaiak a kulturális forradalmukkal egy másik. A Vörös Khmerek egy harmadik - bár a fenti kettőhöz képest kispályások voltak.

domel 2017.12.13. 14:41:18

Az android programozást leginkább a stackoverflow fórumain lehet megtanulni, bármit írsz a keresőbe, azt valaki már megkérdezte, valaki pedig működő forráskódot írt be neki válasznak.

Zed is not dead yet 2017.12.13. 15:04:53

Csatlakozom Androszhoz: menjetek már off birkulni innen, legyetek szívesek. Kurva szar ezt a rengeteg politizáló személyeskedést kerülgetni. Itt egyáltalán nem ez lenne a téma. Persze nem birkának mondom, mert neki hiába, ő egy szaros troll, a többieket kérném, hogy ne etessék a trollt.

udvaros · https://udvar.wordpress.com 2017.12.13. 15:12:38

@Zed is not dead yet: A 3-as változat neve még Turbo Pascal volt - objektumoktól mentesen. 34k mértben tartalmazta a programszerkesztőt, a fordítót és a hibakeresőt. Nem volt hozzá könyvem, ezért a mellékelt példaprogramokból tanultam meg a Pascalt.

udvaros · https://udvar.wordpress.com 2017.12.13. 15:19:17

@Laszlo K: Egy programról leginkább akkor derül ki, hogy mennyire hozzáértően írták, amikor (esetleg évek múltán) módosítani kell.

Androsz · http://migransozo.blog.hu 2017.12.13. 15:38:39

@Szaktanár: "hát, lehet h nagyon különböző a szemléletünk, de sztem a legrosszabb, ami egy programozóval történhet, h más szar kódját kell működővé tennie. sok esetben egyszerűbb a nulláról felépíteni az egészet"

Érdekes, én tudom élvezni néha, ahogy más progamjából kitörlök fölösleges dolgokat, és beteszek a helyükre valami rövidebbet vagy jobbat.

De abban egyetértünk, hogy ha van egy feladatom, hozzá egy koncepcióm, építkezési tervem, adattárolási tervem, akkor a legjobb azt nulláról felépíteni. De én már tudok programozni. Aki viszont még nem tud, vagy csak egy kicsikét, az többszörösen is tanulhat részben a meglevő elemek megvizsgálásából, részben pedig abból, ahogy végigkutatja a helpeket, hogy megtalálja azt, amire ő gondol. Más programját javítgatva megteheti a kezdő, hogy csak apró részleteket cserélget ki, és mégis megmarad az élmény, hogy egy komolyabb programot futtathat és tesztelhet, ami "részben" már az ő munkája. A saját kódrészlet tesztelése is jobban megy, ha megvan körülötte a szükséges előkészítő és felhasználó kódrész.

Szóval én sem feladatmegoldásra javaslom a módszert, de tanulgatásra, én ezt tapasztaltam, beválhat. Nagyon-nagyon régen én találkoztam egy Basic nyelven írt Monopoly programmal, amiben ez nem tetszett, az nem tetszett, kezdtem kijavítgatni, jó sokat babrálgattam rajta, és persze a végeredményben úgyszólván egy betű sem volt már meg az eredetiből, egészen más karakterű programot csináltam, megtartva pár ötletet. Mellesleg assemblyben is beletettem pár apró effektust, azt is tanulgatva. Mindehhez hozzájön, hogy addig soha életemben nem láttam Monopolyt, így a szabályait, már amennyire azok az eredeti programban helyesek voltak, abból tanultam. Újítottam rajta egy-két dolgot, érdekesebbé téve, és általában véve nagyon elégedett vagyok az egésszel. Akkor, annyi tapasztalattal, annak a környezetnek a lehetőségeivel, bőven tanulhattam az egész munkából. Aztán persze írtam egy csomó programot a nulláról kezdve is, de a tanulás részeként a javítgatás nekem nagyon bejött, és más kezdőnek is ajánlom.

dr. mesterséges színezék 2017.12.13. 15:43:13

@maxval bircaman bácsi szeredőci mélyelemző:
"Nem absztrakció kell"

Hihetetlen, hogy milyen határozottan tudsz kapitális hülyeségeket kinyilatkoztatni.

udvaros · https://udvar.wordpress.com 2017.12.13. 15:49:03

@HellsAngel: A szakkönyvekkel valóban akad egy kis gond, mert azokat rendszerint munkanélküli idegenvezetők fordítják - ezért olvashatunk például korongot (disc) a magyar változatban (a szótárban ez a jelentés áll az első helyen).

dr. mesterséges színezék 2017.12.13. 15:50:48

@dr. mesterséges színezék: ... ha még azt is hozzáveszem, hogy C++ tanulása után vontad le azt a következtetést, hogy az absztrakció mellékes, akkor még hihetetlenebb.

dr. mesterséges színezék 2017.12.13. 15:54:00

@udvaros: Csapatépítés helyett összehozott ökörködés egyik pontja volt, hogy átállítottuk a Websphere appszerver konzoljának nyelvét magyarra és hétköznapi feladatokat adtunk egymásnak.
Agyleolvadás, katasztrofális kudarc, jólsikerült szórakozás - mindegyik igaz volt.

Szaktanár 2017.12.13. 15:54:07

@Androsz: oké, elfogadom az érveidet, de azt hiszem, abban megegyezhetünk, h van egy bizonyos bonyolultság, ami felett nem érdemes nekiállni az öncélú módosítgatásoknak. hányszor szívtam én már ezzel, te jó isten. módosítasz 2 sort, ami semmi kárt nem okozhat elméletileg, aztán 20 másik class omlik össze miatta, mert mondjuk a kedves elődödnek fogalma sem volt arról, h mi az a loose coupling.

Androsz · http://migransozo.blog.hu 2017.12.13. 18:31:03

@Szaktanár: Ismerős jelenség. De az is igaz, hogy ha a kezdő nem a mai divat szerinti komplikált nyelvekkel kezdi, hanem sokkal egyszerűbb szerkezetű, kevesebb adminisztrációt igénylő nyelven – mostanság én mindig a FreeBasicet ajánlom mindenkinek –, akkor ott egy kicsit kisebb a program felderíthetetlen szétesésének. De persze a toldozgatás-foltozgatás rendes esetben csak a tanulgatás ideje alatt ajánlható, gyakorlásnak.

Szaktanár 2017.12.13. 18:37:12

@Androsz: na ja, azon a szinten lehet oké. én most éppen .net mvc-t tolok a melóhelyen, agyrém más többéves szarját alakítgatni. főleg h ínyencségnek még a kutya által nem használt knockoutjs-szel is szívni kell frontenden. nagy élmény, mondhatom.