Bine ai venit pe infoarena!
Suntem o comunitate de tineri pasionaţi de informatică şi programare.
Învăţăm împreună participând la concursuri online de programare, citind ştiri şi articole despre informatică sau discutând pe forum.
A doua runda a concursului Algoritmiada 2012 s-a incheiat! Felicitari castigatorilor!
Ultimele însemnări de pe blog 
Viata de dupa olimpiade? (partea I)
Bun, dupa 3 ani intensi cu balaur.ro si summify.com am un moment de pauza si vreau sa discut putin despre optiunile de cariera a unui pasionat de informatica.
Sa zicem ca am participat la concusuri tot liceul (eventual si in facultate), poate am luat si niste premiii sau medalii… ce fac acum cu viata mea? Nu stiu cati au avut problema asta, dar pentru mine a fost un mare semn de intrebare dupa terminarea liceului si mi-a luat mult timp sa gasesc niste raspunsuri satisfacatoare. Asadar, am facut acest (scurt) ghid bazat pe experientele mele, poate e de ajutor.
Evident, tot ce scrie aici sunt parerile mele personale, nu sunt adevaruri absolute, probabil multe idei sunt chiar gresite - nu e un ghid “how-to”, doar food for thought. Deci, sa incepem...
Cred ca mediul academic se potriveste in special celor carora le-a placut partea teoretica de “computer science”, sa citeasca paper-uri, sa se gandesca toata ziua la probleme si idei, dar nu prea le-a placut sa le si implementeze in cod.
» Citeste restul insemnariiCând matematica își bagă nasul în lumea muzicală
Orice om pasionat de matematică o sa îţi spună „Matematica e peste tot!” şi nu te-ar minţi cu nimic. Lumea în care trăim este de o exactitate impresionantă, chiar şi în haos găsim explicaţii şi formule.
După această premisă, nu e de mirare că matematica există şi în muzică: structuri repetitive, artişti care compun piese după raportul de aur, frecvenţe, tempo şi aşa mai departe. Totuşi, când un matematician se implică în muzică şi are scopul de a compune cea mai proastă simfonie scrisă vreodată trebuie să îţi dai seama că va reuşi.
iNFOMUSIC.ro a publicat un articol interesant despre Scott Rickard, care la TEDxMIA în 2011 a prezentat publicului ceea ce el numeşte „Muzica ce putea fi scrisă numai de un matematician”. Folosind teoria numerelor prime şi eliminând orice structură repetitivă, matematicianul a creat cea mai proastă muzică. Provocarea lui este să găsim ceva reptitiv sau plăcut în compoziţia lui.
Vă recomand să citiţi articolul, să urmăriţi filmuleţul cu explicaţii şi să ascultaţi „capodopera” lui Scott Riockard pe "iNFOMUSIC".
» Citeste restul insemnariiSecretele negocierii unei oferte de munca
Dupa Sfaturi pentru interviuri de programare si cum sa scrii un CV continui cu structura ofertei de job de la companii din Silicon Valley si negocierea ei.
Ai primit o oferta de munca. Felicitari! Mai ai putin de lucru.
O greseala frecventa pe care o fac absolventii de facultate este ca nu isi negociaza salariul primului job pe care il iau.
Desi la firme bune oferta initiala va fi destul de atractiva , ea este doar startul negocierii şi de multe ori puteti obtine ceva mai bun. Firmele de soft au costuri foarte mari pe partea de recrutare, astfel preferă să accepte negocierea unei oferte deja extinse decât să o refuze şi să ia procesul de recrutare de la inceput pentru a gasi alt om.
Structura unei oferte de job
Dacă ai trecut cu bine de interviuri şi vei fi angajat, ţi se va extinde ceea ce se numeşte “o ofertă”. Compania îţi face o propunere pe care tu o poţi accepta sau nu. În principiu, propunerea este alcătuită din:
Raspuns in interviu
Un thread popular pe stack overflow din 2008 enumera raspunsuri slabe din interviuri tehnice. Unele sunt destul de amuzante.
Mie mi-a placut mult urmatorul:
( From a very pleasant Nigerian national who came in for a technical interview )
"Would you like to hear about my implementation of a mass e-mailing program?"
Cautarea ta binara este gresita
Cautarea binara este printre primii algorimi divide and conquer studiati la informatica. Algoritmul rezolva problema gasirii unui element x in un sir sortat A folosind monotonia elementelor pentru a injumatati la fiecare pas spatiul de cautare. Ideea algoritmului e simpla, insa aproape fiecare concurent olimpiada de informatica are cate o poveste cum a pierdut puncte la o problema din cauza implementarii. Majoritatea studentilor de informatica si chiar doctoranzilor, dupa cum ne spune Jon Bentley in Programming Pearls, nu reusesc sa scrie o cautare binara fara probleme.
Implementarile pot avea multe buguri in zone cum ar fi:
Optimizari premature
Am vazut tot felul de variante, de exemplu unii testeaza daca a[mid] e egal cu x si scurt circuiteaza cautarea. Aceasta optimizare nu ajuta in cazul general, doar complica codul. Alta varianta e sa reduci mai mult problema folosind hi = mid - 1 sau lo = mid + 1. Optimizarea e mica si adauga un pas logic in plus la care trebuie sa fii atent. Cazurile la una din marginile sirului pot deveni mai dificile sau putem avea probleme de genul hi devine mai mic decat lo.
Carti pentru programatori
Un prieten mi-a cerut recent cateva recomandari de carti de programare. Cresti cel mai rapid atunci cand codezi mult, duci un proiect de la inceput la sfarsit, lucrezi la proiecte variate, inveti de la colegi. Rar ai timp sau chef sa citesti o carte tehnica de la un capat la altul. Dar cum tot am fost intrebat va dau lista mea de recomandari:
Voi ce parere aveti despre cartile de mai sus si ce alte carti ati recomanda unui student la info ce e la inceput de drum?
» Citeste restul insemnariiParcurgere
Am vazut ca problema precedenta pe care am postat-o a starnit multe discutii interesante, asa ca va voi mai impartasi inca o intrebare de interviu mai deosebita:
Va invit sa discutati problema la comentarii. Raspunsul la intrebare se poate gasi pe internet asa ca va rog sa nu postati link-uri sau idei care nu va apartin. :-)
» Citeste restul insemnariiRezolvare pentru "suma in triunghi" si functii convexe
Rezolvarea pe scurt:
Functia e o functie convexa. Functiile convexe isi ating maximul pe marginea domeniului de definitie. Astfel e de ajuns sa evaluam functia in punctele A, B si C si gasim ca maximul este 13 si e realizat in punctul C.
Functii convexe:
Problema este pretext pentru a discuta notiunea de functie convexa. O astfel de functie are proprietatea ca pentru oricare doua puncte de pe graficul ei, graficul se afla sub segmentul determinat de cele puncte. Mai formal, daca unde e un domeniu convex (interval etc.) atunci pentru oricare doua puncte si din si orice din intervalul avem ca . poate fi orice spatiu vectorial, R, interval in o dimensiune, poligon convex in doua si asa mai departe.
Problema: Suma in triunghi
O problema misto de la un baraj IMO:
Se da un triunghi ABC cu laturile AB = 3, AC = 4 si BC = 5. Se cere sa se determine punctul M in interiorul triunghiului ABC cu proprietatea ca suma 2MA + MB + MC este maxima.
Hai sa o rezolvam in sectiunea de comentarii.
» Citeste restul insemnariiAnecdota dintr-un interviu Google
Un coleg avea acum cativa ani training pentru a fi intervievator tehnic la Google. Ca parte a trainingului trebuia sa asiste la cateva interviuri coordonate de ingineri mai experimentati.
Unul dintre interviuri a avut o parte mai interesanta:
Candidatul, sa ii zicem Xing, tocmai terminase facultatea. CVul lui zicea ca are o medalie de aur la la olimpiada internationala de informatica. Intervievatorul nu stia prea multe despre olimpiade si a pus o intrebare clasica:
"Scrie un program care tipareste in cate moduri pot fi asezate 8 regine pe tabla de sah astfel ca ele sa nu se atace."
:)
» Citeste restul insemnarii
