rolisz's site

Statistici la jumătatea facultății

Am ajuns la punctul culminant după cele două tutoriale de d3.js și vom vedea rezultatul final: grafice frumoase :D

Am testat în Chrome, Firefox și IE, ultimele versiuni.

Grafice

Moar LISP

Că am tot avut discuții cu câțiva colegi legat de anumite probleme la LISP, voi posta re­zolvările la unele (mai cerute de public) și, dacă am chef, le și explic.

First off:

Sa se scrie o functie care plecand de la o lista data ca argument, inverseaza numai secventele continue de atomi. Exemplu:

(a b c (d (e f) g h i)) ==> (c b a (d (f e) i h g))

(defun invers(l)
    (invers_aux l nil)
)
(defun invers_aux(l sir)
    (cond
        ((null l) sir)
        ((atom (car l))
  
continue.

Tutorial Prolog

Cu ocazia apropierii parțialu­lui de Prolog, am găsit și eu o nouă temă pentru un post de blog: câteva exerciții de Prolog rezolvate și explicate.

1. Sa se genereze lista aran­ja­mentelor de K elemente, cu elementele unei liste date. Ex: [2,3,4] K=2 => [[2,3], [3,2], [2,4], [4,2], [3,4], [4,3]]

Aran­ja­mentele sunt alegeri din elementele listei în care ordinea contează. O metodă simplă de a genera aran­ja­mentele este să generăm com­binările și apoi generăm per­mutările fiecăruia. Com­binările le putem genera în două moduri: alegând primul element din listă și reunind cu o combinare mai mică din restul listei, sau dintr-o combinare de aceași mărime din restul listei. Back­trackingul din Prolog will take care of the rest. Per­mutările continue.

Anul 2

Ah, facultate, Cluj, aventuri noi. Mutat mai aproape de stația de autobuz \:D/

Cum mi se par materiile până acuma?

Sisteme de operare dis­tribuite. Continuare la Sisteme de operare. Același prof. Aceași carte. Același site de unde luăm temele. Diferența ar fi că facem și IPC pe Windows. Dar cursul îi de la 8. ZzzzZZZzzzzZZZZzzzzZZZZ

Baze de date. Cooperare stu­dențească la maxim: ce o scris profu pe tablă, acolo, primul cuvânt? Da al doilea? Și întrebarea asta se pune și din primele 3 bănci. Proful de la seminar reușește în schimb să facă materia atractivă. :D:D Aș merge și cu altă grupă just for the lolz. Și facem Visual Basic, dar continue.

EOL

Err, end of year, not line. Mno, am gătat și asta. Primul an de facultate. It was kinda fun. It was a bit short. Mai ales al doilea semestru.

Din punct de vedere ed­u­ca­tion­al, facultatea nu a fost chiar la ce mă așteptam. Mă așteptam să mă chinui un pic mai mult. Știu că sună arogant, but I was expecting a bit of a challenge. În comparație cu un singur curs de la Coursera, care m-a ținut mai ocupat decât toate chestiile de la facultate, lab­o­ra­toarele de la noi erau… făcubile pe loc.

Algebra a fost ok. Not my favorite, dar îmi place eleganța cu care se lucrează acolo și continue.

Chestie utila pt SdA

Încercând să capișgălesc rotațiile la AVL, am găsit pe net o mică aplicație utilă, care explică frumușel cum se fac operațiile pe arbori. Mică atenție, dubla rotație stânga o face din rotație dreapta și apoi stânga, analog pentru DRD, dar rezultatul este același.

Dacă mai găsesc chestii utile, o să le postez aici. Dacă aveți voi ceva util pentru colegi, lăsați un comment.

Fițuica mea la SO

Cred că asta îi prima fițuică pe care am făcut-o. Damn, aproape că îmi vine să memorez chestiile ăstea decât să le scriu așa mic :| Și cică o colegă o scris și mai mic... și mai mult... :-S

[gallery link="file"]

Educație online

În ultima vreme educația online gratuită începe să fie la „modă”. Primul site important în acest domeniu a fost Khan Academy, unde acuma sunt puse peste 3000 de videouri care explică tot felul de domenii, mai ales de matematică, dar și de fizică, programare, economie, istorie, etc. Videourile încep cu conținut de bază (îs videouri despre rezolvarea ecuației de gradul 1), și în unele domenii merg până la chestii avansate (la analiză se ajunge la derivate parțiale & stuff like that). Din păcate, la capitolul programare stau mai... slăbuț: au doar vreo 30 de videouri, cred că în Python, despre câțiva algoritmi de bază (Fibonacci, sortare, factorial), dar explicați destul continue.

Tutorial awk

La materia SO[1. Sisteme de operare] învățăm printre altele Unix, unelte Unix și avem și teme cu anumite scripturi. Printre altele, sed, grep și awk. La primele două nu am fost pe fază și nu am scris tutorial, dar voi încerca să explic un pic awk acuma (pentru că există greșeli în doc­u­men­tația pe care ne-a dat-o proful).

Awk este un limbaj de scripting spe­cial­izat pe pre­lu­crarea datelor de tip text. Awk consideră un fișier ca fiind format din în­reg­istrări (delimitate prin ’n’, adică linie nouă Unix-style, dar se poate schimba), iar fiecare în­reg­is­trare are câmpuri, care sunt delimitate prin spațiu deobicei (dar se poate schimba aceasta). Un program continue.

Instalare Linux pe mașină virtuală

Cum la SO [1. Sisteme de operare, Cătă dragă ], mare parte din timp vom lucra în Linux, vom avea nevoie de el instalat pe cal­cu­la­toare. O opțiune ar fi să instalăm pe o partiție separată și să facem dual-boot. Cum nu toți pot face asta (coughno driverscoughNVidia Optimuscough) sau nu toți au chef (ma­jori­tatea colegilor mei) sau și-au aranjat deja partiția de Windows încercând să facă asta, o să prezint o altă metodă, care este destul de bună în ma­jori­tatea cazurilor: instalarea pe o mașină virtuală. Aceasta va fi suficientă pentru a învăța chestiile de care avem nevoie, dar dacă cineva vrea să se ocupe de low-latency audio continue.