HTML

Programozó Páternoszter

Ez a Programozó Páternoszter (PP) blogja, a programozásról szól. Aktualitása, hogy a Debreceni Egyetem Informatikai Kara Magasszintű programozási nyelvek 1-2, C++ esattanulmányok, Java esettanulmányok című kurzusainak blogja is egyben.

A vadászat

A Debreceni Egyetem Programozói Évkönyve: az UDPROG projekt. A szakmai fórumunk a Facebook-en. Az új előadások a prezin.
A régi előadások:
Prog1:
1. C bevezetés
2. C tárgyalás
3. C befejezés
4. C a gyakorlatban
5. C++ bevezetés
6. C++ tárgyalás
7. C++ befejezés
8. C++ a gyakorlatban
9. Java platform bevezetés
10. Kvantuminformatikai alg. bev.
Prog2:
1. Java bevezetés
2. Java tárgyalás
3. Java befejezés
4. Java a gyakorlatban
5. Software Engineering bev.
6. Java EE bevezetés
7. AspectJ bevezetés
8. BPMN-BPEL SOA programozás
9. C++ haladó
10. Tensorflow

Kövess engem!

Friss topikok

Linkblog

Ez a prog1! Mi lesz a 2?

2014.05.31. 12:21 nb

A hivatali dolgokra nem térünk ki, ezek a sillabuszban elolvashatóak. Csupán az egyik alaptulajdonságot emeljük ki: MINDENT LEHET MINDENHOL HASZNÁLNI, sőt a számonkéréseken az internetképes Linuxos gép használata alapvető! Ehhez persze frissíteni kell a kurzust, esetünkben például a számonkérés egyedi, itt van páldául az utolsó vizsga: ahol a beugró a titkos fájl dekódolása. Mostantól ezek a vizsgák nem kerülnek le a webről, ennek megfelelően folyamatosan nehezedni fognak, ez a minőségbiztosításunk alapja. Találkoztunk ezzel az elvvel már a félévben: a hallgatóság némiképpen zúgolódott, amikor megtudta, hogy a tavalyi és a tavalyelőtti bajnok (most laborvezetők) is ugyanúgy résztvesznek a hallgatói robotfoci C++ alapú bajnokságban mint a kurzusba most belépő elsősök. Ez azért volt fontos, hogy ne nulláról induljunk, hanem szokjunk hozzá ahhoz, amit már Newton is tudott, hogy "óriások vállán kell állni", az ICT-ben ez méginkább így van, jobban mint a matematikában vagy fizikában bármikor.

A számonkérés modernizálása spektrumának másik vége a külső fejlődés, gondoljunk csak bele, hogy mi lesz, ha a hallgatók zöme dioptriás Google Glass-al ül be a vizsgára? Levetetjük a szemüvegét és ezzel az internetet, vagy eleve olyan vizsgát szervezünk, ahol az internet használata alapvető! De most ne oktatás-politizáljunk, hanem koncentráljunk a kurzus áttekintésére.

A jelen

Az informatikai iparnak

A kurzussal tervünk, hogy sw-fejlesztő nagy játékosok figyelmét is felkeltsük (csak, hogy el tudjuk helyezni az álmainkat ilyen lehetne pl. a Google, vagy a Motorola Mobility :) Persze egy most induló kurzus semmi referenciával nem rendelkezik, ráadásul a C++ képzést is csak most indult be: éppen ezzel a kurzussal. Ezért ilyen partnerek figyelmének a felkeltéséhez nagyon jó vízió kell, ami csak nekünk van: amolyan "toruk makto"-s belépőre lesz szükségünk, de van ötlet nyugalom :) amivel párhuzamosan persze szisztematikus építkezést is kezdünk, ez lesz a 2010-ben már kicsiben kipróbált "céges feladat" intézménye. Itt az elképzelés durván az, hogy a prog12 után a hallgatók adott része sikerrel vegye egy komolyabb céges felvételi feladatsor (pl. Boost C++) teljesítését is, a kurzus hackerei pedig más szakértsenek a cégeknél. A céges feladat koncepciót majd pár sorral később a jövő alatt fejtjük ki.

Leendő hallgatóinknak

Mit üzen a kurzus a középiskolásoknak, azaz leendő hallgatóinknak? A jelen debreceni programozás hangolásának fontos eleme lesz, hogy a diákok tudatosan válasszanak minket, ezt a választást segíthetik a hallgatói feladatként előálló kurzus promó prezik és videók. Mint minden a kurzusban ezek is versenyben születtek, ezek speciálisan Face-es versenyekben, de most szubjektíven a magam kedvenceit linkelem ide közvetlenül:

Videók

Prezik

Mennyi az annyi?

Számok nélkül nincs értékelés, jöjjenek hát röviden a számok! 128-an vették fel úgy a kurzust, hogy aláírásra, azaz laborteljesítésre is szükségük volt, közülük 75 hallgató kapta meg az aláírást és 53 hallgatótól tagadtuk meg azt, ez durván 58%-os laborteljesítést jelent.

Anonim hallgatói visszajelzés

Ezt a szabadon választható felmérést az utolsó héten megjelenők közül 50-en adták be. Először a kurzus 32 alap "fícsör"-éről kérdeztük anoním módon (de laborvezető szerint és további 4 csoportba oszva a gyűjtött pontjai alapján) a hallgatóságot annak tükrében, hogy mi-mennyire tetszett a félévben, ahol az 1 a sehogysem és az 5 a nagyon. Jól látható, hogy az átlagolás után csupán az utolsó 4 tétel szerepel az átlag alatt, az sem sokkal egyébként, de az összes többi az átlag felett teljesít, méghozzá a "Versenyek" c. tételtől felfelé a 4-es átlag felett:
udprogstat.png
Jelmagyarázat:

Chomsky Chomsky-féle nyelvosztályok megismerése
Lexer Lexikális és szintaktikai elemzés háttere
Halt Halting problem
C(x) Kolmogorov bonyolultság nem rekurzivítása
K&R K&R könyv
Stroustrup HU Stroustrup könyv (a magyar)
BME-s “BME”-s könyv
Ezüst “Ezüst” könyv
Évkönyv mo. “Tankönyvként” az évkönyv megoldás részei
Stroustrup EN Stroustrup könyv (a C11-es angol)
Linkedin A LinkedIn es szakmai posztok, tanulási szempontból
Binom A binom rendszer tanulási szempontból
Tutor A tutor rendszer tanulási szempontból
Videó Mások videó alapú megoldásai tanulási szempontból
Forrás Mások forráskódjai tanulási szempontból
Gen. Az első védés témája (Humán genom feldolgozása)
Védés 1. tech. Az első védés nyelvi tartalma (pl. OO, nested class, UML kompozíció, később másoló és mozgató szemantika)
2D RCSS A második védés témája (2D RCSS)
Védés 2. tech. A második védés nyelvi és technológiai szempontból (lexer osztály kiterjesztése, autoconf csomag, Posix szálak, C11 stb.)
Közösség A második védés közösségépítő ereje
man A manuál lapok használata
API Az API doksi használata
Qt Qt
Mat. Matematikai hátterű feladatok (pl. PageRank sajátérték, Mandelbrot)
Kreatív Kreatív feladatok (pl. biomorfok)
Laborkártya Laborkártyák intézménye
Olv. Binomi könyvolvasás
Pontverseny Pontverseny, jegymegajánlás
GNU/Linux GNU/Linux használata programozásra
DocBook 5.1 DocBook 5.1 használata a kurzus dokumentációs formátumaként
Git Git használata a verziókezelésre
Versenyek Versenyek (pl. Face-es, vagy PLB, PLK, Kolmogorovi bitfaragás)

 

A felmérés második részében szabadon tölthették ki a hallgatók a  

  • Javaslatod a következő Prog1-re, mit tartsunk meg?
  • Mit hagyjunk el?
  • Mit adjunk hozzá?

pontokat. Ennek alapján készítettük az alábbi "értelmezett" eredményt: a nem szakmai javaslatokat kiszűrtük (pl. "táncos lányok") a túl általánosakat (mit tartsunk meg: "MINDENT", mit hagyjunk el: "SEMMIT") hasonlóan, azaz bár utóbbiak nagyon értékesek, de nem számoltuk most bele, mivel úgyis a leendő elmozdulási irányokat akarjuk most tapintani (de nyilván a szereplő szófelhő pozitív irányához vehetnénk ezeket hozzá, ilyen lapból egyelőre 4-et számoltam egyébként). A pontozási módszer az, hogy adott témához + vagy - két pont, ha a tartsuk meg/hagyjuk el rovatban szerepel, ugyanígy 1 pont, ha az adjuk hozzában több/kevesebb módosítókkal szerepel. udprogstat22.pngAlapvetően 4 osztály van: a {nagyon támogatja, nagyon ellenzi} x {nagyon sokan, nagyon kevesen} szorzat mentén. Például a Qt-t és a tutor rendszert sokan-nagyon támogatják. A binom-rendszert és a robotfocit sokan szerepeltetik, de a támogatásuk és ellenzésük az átlag környékére hozza ki a témát, de ez eredő még mindig a támogatásba esik. A hegylakó szabály vagy a K&R könyv eredője már egyértelműen az ellenzésben van, de ezeknél a tételeknél nem olyan magas azok száma, akik foglalkoztak vele. A nagyon sokan nagyon elutasítják osztály pedig nem szerepel. Végezetül a nyers adatokban olyan szereplő tételek is vannak, ahol nyitott ajtókat döngetnek a kitöltők, hiszen a pontversenyben a vizsgakurzusosok is résztvehetnek, s Nekik is adok természetesen megajánlott jegyet, ha megszerzik (illetve most már múlt időben, ha megszerezték).

A tartalmi munka tekintetében bárki tetszőleges statisztikát legenerálhat, hiszen a Git repó teljesen nyilvános a sourceforge-on hosztolt UDPROG (The Yearbook of the Programmers of University of Debrecen) projekt keretében. Most csak a közös munka beindulásáról szóló videót ágyazzuk ide:

Szubjektív értékelésem szerint nagyon erős az évfolyam, egyfelől soha nem jutottunk még ennyi élményhez egyetlen évben sem a prog1-ben (konkrétan sokszor tűnt úgy, hogy lehetetlent kérünk, de mégsem volt "hiszti", hanem szakemberek módjára reagáltunk). Másfelől olyan 60%-os terheléssel ment a kurzus ahhoz képest, amilyen az ideális lesz. Milyen lesz az idealizált? Erre is láthattunk már jeleket ebben a szemeszterben: amikor a felsőbb évesek, nyilván nem a laborvezetők, hanem csak a spontán érdeklődők lesznek az aktuális hallgatói munkák opponensei, bírálói, kipróbálói - ezt érezném a "csúcsnak", mint a Platón-Arisztotelész face-to-face tanításának mai egyetemi közegre adaptálását.

Ars poetica

Még hallgató koromban (az akkori PTM "elméleti fizika" sávján, igen, ilyen is volt :) hallottam forradalmi gondolatokat Bárdos Gyulától, aki akkor az Elm.Fiz. tanszékvezetője volt talán. Ő az elméleti és kísérleti fizika mellett megkülönböztetett "számítógépes fizikát"... de nem ez ragadott meg, hanem amit például a matematika szogorlatról mondott, ami akkoriban a szűk keresztmetszet volt általában a programozók áteresztésében. Nevezetesen azt mondta, hogy ma már (kb. 1996?) a matematikai szigorlaton nem a klasszikus módon kellene tudnia azt egy hallgatónak, amit kérdeznek Tőle, hanem egy matematikai programcsomagból kéne azt a tudást effektíve használnia, konrétan nem papíron integrálni, hanem egy komplex matematikai csomag integrálna és a hallgató valódi esetekben tudjon integrálni. Forradalmi volt nekem, s idővel ugyanezzel a motívummal találkoztam a saját szakmámban is. Amikor például megnyertem az országos Java programozói versenyt egy a böngészést támogató proxy szerverrel, akkor abból azért nem lett termék, mert a programom - mivel magam írtam a HTML szemét elemzésére/tokenizálására a nyilván ezért spagetti-kód "ha ilyen karakter a következő, akkor..." elemzőt-  20-30 év "lemaradásban" voltam az informatikai kultúrától, de már pár évre a Java API-tól is (mentségemre szolgáljon, hogy az egyetemen akkor még messze nem volt Java, de ez persze nem számít). Ami számít, hogy legalább egy lexert kellett volna írnom és akkor lehetett volna killer app., de legalábbis esély a sikerére! Ezért kezdtük mi már alapban a lexikális/szintaktikai elemzést a flex(/bison majd később)-el, nem beszélve arról, hogy a "sztring-mechanika" már régen elbújt az objektumokba. Persze a programozó egyedfejlődésében is kell ez, de kéne már sokkal korábban a középiskolában, az egyetemi imperatív programozásnak már az STL-ről kell(ene) szólnia. Egy átmeneti megoldás akár lehetne, hogy a bevinfó adná a K&R könyv feldolgozását a könyv csatlakozás a UNIX operációs rendszerhez részéig, de nem akarom ezt a posztot az oktatás-politika felé elvinni, jöjjön inkább a jövő.   

A jövő

A szakmai munka szervezését, miután jó visszajelzéseket kapott, továbbra is nyíltan, az ipari szereplőkhöz közel a Linkedin-es csoportunkban folytatjuk. A hivatali dolgokra most külön nem térünk ki, de lehet kommentelni, hogy mit rögzítsünk a sillabuszba. Fontos, hogy a prog1-ben szerzett pontok átvihetőek a prog2-re, a szerzett pont - 300 képlettel. Természetesen a kurzus felépítése, szervezése a jelen prog1-el egyezik majd meg. A laboron a robotfoci szerepét a "céges feladat" intézménye veszi át. Persze a robotfocit is lehet tovább űzni, hiszen elvben nem elképzelhetetlen olyan AI tárgy, ami ezzel foglalkozna, de ez már nem a mi hatáskörünk/érdeklődési területünk. Ami ebben az irányban az, az a nyári ösztöndíjas szuperfoci projekt, ahol ha sikerül eredményt elérni, akkor azt nyilván érdemes lesz egyfajta céges feladatként a prog2-ben is szerepeltetni, ahogyan a kvantum-tudatos foci (és annak egy Boost alapú implementációja) esetén is hasonlóan járhatunk el, hiszen az már teljesen a mi platformunk!

Tankönyv tekintetében a Stroustrup 2. kötetét forgatjuk majd, de nem direkt olvasással, hanem mazsolázott részekkel STL témákban, illetve pár C11 elemet veszünk át, például a konkurrens programozás nyelvi támogatását, illetve a C11 kapcsán szimultán tárgyalunk kapcsolódó Boost technikákat. A direkt olvasandó könyv a Nyékyné-féla Java könyv lesz, az fő oktatási platform pedig az Android Java, a YANOnymous kapcsán.

De jöjjön pár tartalmi vízió! Vagy legalábbis irány.

Víziók

Mi is lehet? Itt még mindig gond, hogy az ember nem tudja eldönteni, hogy vizionáljon-e az egyetemen... de ez a kérdés gyorsan kivezet a mi hatáskörünkből, így nem érdemes itt boncolgatni. Lássunk egy olyan irányt, ahol ez a kérdés komolyan nem merülhet fel, hiszen a "licencek" itt eleve le vannak osztva, hiszen itt a GNU/Linux kernelt tervezzük patchelni: Genesis Patch.

Egy másik ágy lehet az autóipar egy még nem is létező szegmense :) Könnyan alakíthatunk ki víziókat, ha figyeljük az aktuális híreket mondjuk a Google robotautók témában, például:

persze a vízió akkor érdekes számunkra, ha a mi szerepünket is vázolja.

Ez a két aktuális hír lehet egy jó vízió alapja, e mentén vizionáljunk, hogy "milyen izgalmas programot írjunk", semmint a kommit számon :)

Azért ha olyan víziód jön, amit akár programozni is el lehetne kezdeni, azt ne írd le kommentbe! :)

Céges feladatok

A bevezetőben említett ezen intézmény részletes kibontását az évkönyvben találod (aktuális feladatként, illetve külön az appendixben szabályozva leírva). Most csak néhány kulcselemére világítunk rá. Jobban fedné az elképzelést a "cégek által kiírt oktatási célú programozási feladatok", de az kissé nehézkes. Maradjunk ezért a korábbinál és fejtsük ki, mit értünk alatta.

A 2014-2015 tanév szeptemberi szemeszterétől a Magasszintű programozási nyelvek 2 (Prog2) labor teljesítésének egyik szükséges feltétele lesz tehát egy céges feladat kidolgozása. A céges feladat lényege, hogy szoftverfejlesztésben exponáló cég specifikál egy feladatot olyan feltételekkel, miszerint a feladat leírása, a cég neve, illetve opcionálisan egy kontakt fejlesztő neve, email címe, továbbá a feladat megoldása bekerülhet a GNU GPL v3-as engedélyű UDPROG projektünkbe.

Fontosnak kiemelni, hogy a céges feladatok semmiképpen sem valamilyen konkrét "céges munka" elvégzéséről szólnak, hanem sokkal kevesebbről. Mert azt biztosítani akarjuk, hogy egyetlen résztvevő se, azaz se a hallgató, se az egyetem, se a cég ne viseljen semmiféle felelősséget, illetve  semmiylen anyagi aspektus se merülhessen fel. Ezt azzal érhetjük el, hogy a szóban forgó feladatok nem a cégek egy valódi feladatának valamilyen részét alkotják, hanem sokkal inkább direkt erre a célra kitalált fiktív feladatok legyenek, amelyek vonzóak a hallgatóknak, hiszen a cégek feladatai a beküldéssel egyértelműen egy versenyhelyzetbe kerülnek, mivel a kurzus  hallgatói teljesen szabadon választhatnak a feladatok közül. A kihívás és a megvalósíthatóság fontos szempont lesz a választó hallgatóknál, ezért érdemes a feladatot úgy skálázni, hogy tartalmazzon kihívás és könnyebben megvalósítható részt is, hogy a hallgató egyszerre akarja és merje is választani. (Megjegyezhetjük, hogy ezen törekvésünk ellenére van olyan cég is, akiknek belefér, hogy éles feladatot írjanak ki, ezzel elfogadva egyben, hogy a feladat és annak megoldása a GNU GPL v3 engedéllyel szerepeljen az UDPROG projektben.) 

Nézzük meg a 3 tipikus használati esetet:

  • Miért jó ez a hallgatónak? Mert olyan feladaton tud dolgozni, amely remek teljesítés és kölcsönös szimpátia esetén akár potenciális belépőjegye is lehet a kiíró céghez!
  • Miért jó ez a cégnek? Mert skálázott módon (egyrészt a kontakt fejlesztő közvetlenül vizsgálhatja a céges feladatukon dolgozók aktivitását a git repóban, másrészt a kiíró cég megkaphatja csak a legjobb megoldások munkáit, vagy előre egyeztetett, akár a kiírásba is bevett anyagokat, pl.: prezi vagy videó a megoldásról, annak folyamatáról stb.) tudja megismerni, megvizsgálni néhány leendő potenciális munkatársjelöltjét.
  • Miért jó ez az egyetemnek? Mert minél inkább közel tud kerülni egymáshoz a két fenti választ, annál inkább minket fognak választani a legjobb képességű diákok a régióban.

 

Kik vagyunk mi? Megtudod az évkönyvből a Debreceni Egyetem programozói évkönyvéből.

Szólj hozzá!

Címkék: Debrecen Magas szintű programozási nyelvek 1 UDPROG DEIK

Magas szintű programozási nyelvek 1, INDK301

2013.12.20. 11:48 nb

Üdvözöllek a kurzus 2013/14 tanév második féléves nyitóposztjában. Kicsit korai, de szükséges néhány bevezető gondolat, hogy közvetlenül kapcsolódva minél több információval szolgáljunk.

Eminem - Not Afraid, http://youtu.be/j5-yKhDd64s

A részletekbe nem merülnék el, itt vannak az eddigi sillabuszok, azok jó kezdő iránymutatást nyújtanak. Csak annyit emelek ki, hogy a kurzusban nincs papíros számonkérés semmiyen formában és semmilyen indokkal, sőt a hagyományainknak megfelelően bármikor (labor, írásbeli, szóbeli vizsga) bármi használható, az internetes gép használata pedig nemcsak lehetőség, hanem szinte követelmény!

Kezdjük a hallgatók többségét leginkább izgató használati esetek áttekintésével:

  • ha jó programozónak tartod magad, akkor célozd meg a megajánlott jegyet! Nem kell mást tenned, csak amit imádsz: programozni; ezzel gyűjtöd a pontokat, akár annyit, hogy gyakorlatilag a Prog2-d is meglesz már a Prog1 alatt :)
  • ha átlagos programozónak tartod magad, akkor a laborposztok minden fő-feladatát programozd be TE MAGAD (ezek részletesen ki vannak dolgozva a posztokban, nagyrészt csak reprodukálni kell őket) mert ez a rutin mindenképpen kell majd a sikeres vizsgához, illetve szerezz annyi pontot, hogy a vizsgára erős kedvezményekkel jöhess
  • ha még gyengébb programozónak tartod magad, akkor a szemléleteddel lehet a gond; kezd el érdeklődésből válogatni a példák között, mert a lelkesedés az, ami ki fog segíteni, elnyomva az esetleges tapasztalatlanságot, s csatlakozz gyorsan az előző csoporthoz - ha ez mégsem sikerülne, akkor a pontgyűjtést fókuszáld a szervezési (pl. robotfoci bajnokság, kupa lebonyolítása), tervezési (UML) vagy szoftvermérnöki (virtualizációs, kernelfordítási vagy kernel modulos) feladatokra, s ne a hardcore C, C++ kódolásra, így szerezz annyi pontot, ami nagyban megkönnyíti a jó vizsgajegy megszerzését

A témák és feladatok tekintetében az előző tanév Prog1-e jó iránymutatást ad, az előadásokat itt találod jobb oldalt egy dobozban belinkleve, a feladatok egy rész pedig benne vagy a Prog1 mega-pack-ban, vagy elő van készítve a Prog1 virtuális image fájlban. Némi további eltolódás lesz a Qt irányába, ehhez SIM nélküli okostelefonokat és tableteket majd viszünk be a laborokra. Minden félévben javulni is kell, így a múlt félév opcionális CUDA példáit (pl. Mandelbrot vagy Exor törés) most alappá próbáljuk tenni azzal, hogy a lehetőség szerint a CUDA-s terembe kérjük a laborokat. Továbbá a fenti hármas bontás krémje számára lehet igazán érdekes, hogy bevezetjük a "félév só"-ját, ez a klasszikus pontgyűjtésbe lesz integrálva, de ez szigorúan csak a valódi hardcore érdeklődőknek szól, ez lesz a Genesis Patch.

Előadás

Az előadásokat a minőségbiztosítás miatt videóra rögzítjük. Az elmúlt két prog1-ről teljes a gyűjteményem, igaz a webre csak csipeteket tettem ki, pl..:

Viszont ezt a Prog1-et már teljes egészében elérhetővé tesszük! (Ma ez már egy sztenderd dolog, lásd pl.: MIT, Stanford) Sőt olyan szoftvert is biztosítunk, amellyel a ezt a videót még annotálhatja is a hallgatóság Ez (lesz) az Intelligens Előadás projekt.

Labor

A laborokon próbálunk a tanár-diák viszony felől a vezető fejlesztő-fejlesztő viszony felé ellépni; nekem az a legjobb tapasztalat, amikor a laborközösség odacsődül egy társunk monitorjához, hogy megnézze milyen új feature-öket gyúrt a társunk a programjába! Régi vágyam, hogy a laboraláírást a robotfocira építsük fel, de ez egyelőre csak vágy, ám itt a lehetőség kommentekben ezt máris elkezdeni boncolni, hogy az első laborra erről tudjunk dönteni! (A robotfocihoz alapvető a nagy közösség, mert ez esetben a 18 fős laborok önmagukban szervezhetnek egy bajnokságot, ahol minden hallgatónak saját C++ robotfoci csapata van, s a 2 utolsó hallgató nem kap aláírást :) - persze alájuk is tehetnénk egy védőhálót, hogy mondjuk pár adott feltétel esetén Ők is megkapják az aláírást, hogy ne zárjuk ki az ideális esetet, hogy mind a 18 hallgató atomhacker a laborban.

A laborokat ebben a beosztásban tervezzük

  • Dr. Bátfai Norbert, 5 csoport,  (a "Gattaca" csoport is :)
  • Besenczi Ranátó, 2 csoport
  • Mamenyák András, 1 csoport
  • Smajda Máté, 2 csoport

minden laborvezetőnek van programozási tapasztalata (BN: Sun és Nokia Magyarország JavaEE-JavaME verseny első hely, BS: Szilícium Mező Regionális Informatikai Klaszter/SziMe3D Kft. gyakornok, MA:  XDA-Developers Tablet Z verseny első hely, SziMe3D gyakornok SM: SziMe3D gyakornok).

Boldog Karácsonyt!

Az ünnepek néhány szabad napja remek lehetőség az önfeledt programozásra, élj vele! Gondolj arra, hogy mit mondanál, ha összefutsz Steve Jobs-al és megkérdezi, "min dolgoztál a múlt héten"? Ha még nincs Linuxod, akkor mi sem lehet izgalmasabb, mint megismerkedni vele a fa alatt. Igaz kicsit már avas, de itt az 1. előadás, a 11 fólián ad ehhez tippet. Kicsit kapcsolódj is ki pár filmmel, a 18-19 fólia ajánlott alkotásait nézd újra meg esetleg (ne Torrenten töltsd le, mert az még a magyar lájtos törvények szerint is bűncselekmény szerintem).

Ja, ez a blog a kurzus információáramlásának alapja, így ha kérdésed van, ne habozz kommentelni!

prog1.png

A Debreceni Egyetem programozói évkönyve

Ahogyan már egy kommentben sugalltam, van ötletem a feladatmegoldási mozgalom önszervezésének javítására. Ez a Debreceni Egyetem programozói évkönyve. Mi is lenne ez? Az elmúlt félévekben a hallgatók jobbára magányosan, aszinkron módon dolgoztak a feladatokon. Amig jobban volt időm, addig figyeltem a feladat idő és darabszám korlátozásaira, de ahogy haladtunk előre... mostanában már magukra a feladatok megoldásaira is alig tudok rápillantani. Olcsó megoldás lenne áttolni a feladatot a laborvezetőkre, de ez nem valódi megoldás egyrészt, másrészt az Ő idejük ugyanúgy drága (hiszen titokban azon a projekten is dolgoznunk kell, amiért idetelepüne a Google egy kutatása :) ... de egyelőre térjünk vissza Földre: tehát eddig volt a magányos és aszinkron megoldás óceán, ami helyett most egyetlen tárolóban kezdünk dolgozni, amely tartalmaz egy DocBook 5.0 XML könyvet, ez az évkönyv. Évkönyv abban az értelemben, hogy szerpelel benne rövid bio-val innentől minden évfolyam minden olyan programozója, aki kommitol, s a könyv mellett ott lesznek a beküldött feladatok. Miket lehet beküldeni? A könyv tartalomjegyzéke megmondja, azaz azt én és a laborvezetők szerkesztjük. A feladatot megoldó pedig RÖVIDEN (agilis és eXtrém nálunk minden - módszertani értelemben) bemutatja a DocBook doksiban a megoldását, s feltolja a megadott helyre a tárolóba a megoldásának forrásait (a könyvet nem kell cifrázni, mert a verziókezelőből generált ChangeLog is elég lesz sok esetben). Ezzel a feladat kilőve, ennek kapcsán további pontok már csak a megoldás valódi csiszolásával, tesztelésével-BUG riportolásával, javításával gyűjthetők.

Ha a kurzus leendő hallgatója vagy, immár el is tudod kezdeni a pontgyűjtést, itt, az évkönyv végén kapsz direkt segítséget és persze ne habozz kommentelni! Nem kell mást tenned, mint a SourceForge-on regisztrálni és a loginod elküldeni a batfai.norbert@inf.unideb.hu címre.

A kurzus fóruma: http://www.linkedin.com/groups/Yearbook-Programmers-University-Debrecen-7446358

22 komment

Címkék: Magas szintű programozási nyelvek 1 INDK301 Debreceni egyetem UDProg

süti beállítások módosítása