Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Despre hackeri vs. teoreticieni  (Citit de 6273 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Cosmin
Echipa infoarena
Nu mai tace
*****

Karma: 351
Deconectat Deconectat

Mesaje: 1.799



Vezi Profilul
« : Februarie 28, 2012, 23:06:20 »

http://infoarena.ro/blog/hackeri-vs-teoreticieni
Memorat
psycho21r
Client obisnuit
**

Karma: -15
Deconectat Deconectat

Mesaje: 74



Vezi Profilul
« Răspunde #1 : Februarie 29, 2012, 00:00:54 »

Până la urmă, cred că pasiunea pentru informatică (pentru majoritatea) a plecat de la dorința de a face ceva al lui/ei, personalizat, de a își concretiza ideea.

Depinde acum, trebuie să o consideri câte puțin din fiecare, nu poți să scrii cod fără un scop, nu poți să ai un scop fără să scrii cod. Cel puțin eu, când rezolv o problemă de algoritmică, nu sunt fericit că am urcat într-un clasament pe undeva, sunt fericit pentru că atunci când voi întâlni ceva asemănător, mă voi descurca mult mai repede și voi ști cum să abordez situația (da, nu prea sunt competitiv).
Memorat
Cosmin
Echipa infoarena
Nu mai tace
*****

Karma: 351
Deconectat Deconectat

Mesaje: 1.799



Vezi Profilul
« Răspunde #2 : Februarie 29, 2012, 01:29:10 »

Misto potul Vivi!

In videoul asta Mark Zukerberg povesteste despre proiectele lui personale http://ecorner.stanford.edu/authorMaterialInfo.html?mid=1503 El a incercat sa incorporeze in cultura facebook abordarea de hacker proactiv, de exemplu unul din sloganele interne e "move fast, break things".

Mi se pare ca Vivi sau Cristi sunt exemple locale de oameni de genu asta, oameni care au un foc interior ce ii face sa isi puna ideile in practica.

Vivi are o gramada de proiecte:
doizece.ro
divertis.ro
hartapoliticii.ro
harta publicitatii
Ca 20% la google a facut Gmail multiple inboxes.
Acum face picspree.me

sau Cristi
cu proiectele de freelancing si infoarena, iar apoi impreuna cu Mircea balaur si summify

Alt exemplu cu impact este dexonline. Catalin l-a dus de la un proiect personal la o resursa importanta a internetului romanesc.  Majoritatea proiectelor personale nu sunt extraordinar de grele din punct de vedere tehnic dar au utilitate practica.
« Ultima modificare: Februarie 29, 2012, 03:23:34 de către Cosmin Negruseri » Memorat
toni2007
Nu mai tace
*****

Karma: 160
Deconectat Deconectat

Mesaje: 663



Vezi Profilul
« Răspunde #3 : Februarie 29, 2012, 02:31:12 »

Eu am folosit algoritmica in general nu pentru olimpiada, ci pentru a invata cum sa codez mai simplu, mai rapid, mai eficient. In general, mai ales in proiectele web, conteaza sa scri o chestie in 3 linii de cod foarte concis, decat in 12 linii ca si cum ai scrie normal. Olimpiadele te invata, cand trebuie sa scri program+brut+generator+eval in timp de concurs, sa iti eficientizezi timpul. Am invatat sa bag programele si bruturile in c++, generatoarele in python si evaluatoarele in bash, in foarte putine linii de cod. M-am uitat la proiecte pe github, scrise in diferite limbaje de programare, pentru a invaa diverse smenuri de cod.

Ca o concluzie, consider ca algoritmica te invata putine lucruri daca vrei sa lucrezi in industrie. Mult mai multe smenuri le inveti hackand / lucrand / uitandu-te pe proiecte altora.
Memorat
vivi
Client obisnuit
**

Karma: 41
Deconectat Deconectat

Mesaje: 50



Vezi Profilul
« Răspunde #4 : Februarie 29, 2012, 03:18:12 »

@Robert: eu mă întreb uneori dacă chiar așa este. De exemplu, pe la InfoEducație eu am văzut olimpici destul de rar, ceea ce mă face să cred că majoritatea olimpicilor o fac ca un scop, nu ca un mijloc.

@Cosmin: you're too kind. Proiectul meu actual este http://picspree.me, nu .com. Very Happy

@Teodor: mesajul tău mă face să vreau să scriu un mesaj despre cât de (ne)importante sunt limbajele în sine. Nu spun că tu faci asta, dar mesajul tău la asta mă duce cu gândul. Eu aș spune că nu sunt expert în nici un limbaj de programare, știu să programez în o grămadă de limbaje folosind probabil mai puțin de 70% din potențialul fiecăruia. Ar fi interesant de deschis o discuție pe tema asta.
Memorat
mpatrascu
Strain


Karma: 85
Deconectat Deconectat

Mesaje: 18



Vezi Profilul
« Răspunde #5 : Februarie 29, 2012, 04:41:04 »

Evident suntem toţi diferiţi ca şi oameni (un fapt excelent), şi fiecare a avut  motivaţia sa în a ajunge olimpic și în a alege informatica.

Antreprenorii sunt o specie complexă care are nevoie de multe calități pt supraviețuire, nu neapărat aliniate cu calitățile unui informatician de olimpiadă.

Adaug și eu niște povești personale la problemă, anume 2 motive pentru care cred că aș fi un antreprenor catastrofal, dar  care m-au dus spre succes la olimpiadele de info.


1. Aș fi un antreprenor catastrofal fiindcă îmi place puritatea şi rigurozitatea

De-asta am ajuns la info și nu la fizică,care de asmenea mă pasiona mult.În fizică,  legile naturii nu sunt scrise într-o carte numită " The C Programming Language ", ci trebe să le aflăm prin nişte experimente destul de impure ( imprecise şi pline de aproximări). Cum mai adăugăm câteva zerouri la masă, energie sau viteză, hopa, apar nişte legi noi complet diferite pe noi care nu le-am fi putut bănui  înainte (fiindcă în  cu  experimentele vechi   legile noi afectau rezultatul cu maxim zece la minus 20  sau  cevanemăsurabil  pe-acolo). Devine un pic enervant jocul ăsta : adică cine plm ese crede natura asta să se joace cu aşa cu noi?

Informatica e o ştiinţă pur intelectuală, poate cea mai mare realizare a intelectului homo sapiens. E destul de remarcabil, zic eu că putem porni de la nişte porţi logice care fac and /or/ not şi putem ajunge la kernelul de Linux, la compilatoare și la la programe de flux maxim scrise în C. Care programe în C fac fix ceea ce ar trebui să facă, dacă rulează  pe un sistem corect construit corect de la bază la vârf.

Pe mine m-a fascinat aspectul ăsta de abstractizare  recursivă e şi de  construcţie din ce în ce mai complexă deasupra unor construcţii anterioare făcute tot de noi. Totul pe bază solidă, adică nişte porţi logice elementar definite, pe care am tot compus chestii mai mărețe. La modul intelectual , chiar nu contează dacă o poartă logică se defectează și dacă compilatorul are buguri. La nivel abstract al fiecare  nivel al construcției noastre  merge  şi respectă regulile nivelului de mai jos, deci este o realizare corectă care rezolvă ceva bine definit Chiar dacă un șurubel e șubred și o poartă logică explodează, astfel de detalii nu sunt interesante. Ansamblul tot  a realizat ce ne-am propus în mod abstract. și e o realizare  la fel de admirabilă.

Informatica e un joc abstract fără limite în care putem construi orice ne ţine.
Există întradevăr  limite (spre exemplu, flux maxim în O(n) probabil chiar nu e posibil).
Aceste limite mă pasionează la vârsta asta, pentru că sunt cât de mult ne putem apropia  de a identifica o lege a naturii demonstrabilă matematic . În fond, dacă chiar nu există algoritm de flux maxim liniar, asta nu e ceva stip**at în definiția limbajului C sau în modul în care ne-am decis noi să construim calculatoare. E un fapt fundamental despre biţi, informaţie, şi cum se poate raţiona cu informaţia asta în mod algoritmi- - aș zice chiar o lege a naturii, care e demonstrabilă formal matematic fiindcă toată construcția noțiunii de algoritm în informatică e una pur intelectuală bazată pe 4 porţi logice.
 

2. Un alt motiv pentru care aş fi un antreprenor catastrofal dar am ajuns la olimpiada de info e că sunt un tip antisocial care vrea să fe lăsat să încerce și să facă chestii singur. Deasta n-am ajuns la mate, care mi s-a părut fie prea strictcă fie prea socială. O demonstrație nu are valoare pe hârtie. Pot să mă gândesc mult la fiecare pas și să mă asigur cât de cât că e corectă, să încerc să o  simplific să evit calculele, etc. Dar valoarea demonstrației este una socială: o explic cuiva care e interesat de problemă şi nu găsise o demonstraţie, încerc să conving că ceva e adevărat. pentru a-l lămuri și convinge. O demonstrație  e o formă de comunicare O demonstaţie care stă pe foaie nu are niciun sens. Ca atare, matematică nu poţii face de capul tău ( sau e prea nasol).
La informatică, un algoritm scris în C are un sens şi o semnificaţie. Calculatorul e dispus la orice oră să-mi urmărească algoritmul și să-mi spună ce afișează  Procesul de codare e foarte interactiv și , cu buguri, teste, nervi, reveniri, etc. Nu are aspectul one-way de "mă gândesc și apoi scriu o demonstrație pe foaie".
« Ultima modificare: Februarie 29, 2012, 06:58:33 de către Cosmin Negruseri » Memorat
wickedman
Echipa infoarena
Nu mai tace
*****

Karma: 227
Deconectat Deconectat

Mesaje: 670



Vezi Profilul WWW
« Răspunde #6 : Februarie 29, 2012, 06:34:00 »

Eu cred că proiectele personale te ajută să devii un programator mai bun, indiferent dacă vrei să faci startups sau nu.

Durează 10 ani să devii un programator bun și câștigi timp dacă începi de mic, chiar și cu proiecte simple. Cunoștințele de algoritmică de la olimpiade se vor împleti cu cele de inginerie și o să-ți creeze o bază tehnică solidă. Mi se pare că e o strategie mai bună decât să începi să "bagi tare" inginerie de-abia după ce termini facultatea.

Dacă ar fi să alegi între info și proiecte personale, e clar mai important să faci info. Am văzut cu toții programatori care se plafonează prin facultate. Totuși ambele sunt extremități și cred că ideal e să fii undeva pe la mijloc.
Memorat
vivi
Client obisnuit
**

Karma: 41
Deconectat Deconectat

Mesaje: 50



Vezi Profilul
« Răspunde #7 : Februarie 29, 2012, 07:00:08 »

Ca pur algoritmică, mie mi-a fost suficient ce am învățat în liceu. În facultate nu am învățat nimic nou din punctul ăsta de vedere (algoritmi, structuri de date), nu am participat la ACM-uri, nu m-am antrenat pe topcoder.

În facultate am învățat însă teorie de o natură ceva mai aplicată (limbaje formale și automate, rețele, ceva sisteme distribuite, programare funcțională, sisteme expert) care mi-a fost foarte utilă.

Algoritmica din liceu, împreună cu teoria din facultate și cu proiectele personale făcute în paralel, toate trei mie mi-au fost foarte utile și toate m-au ajutat în egală măsură până acum.
Memorat
vivi
Client obisnuit
**

Karma: 41
Deconectat Deconectat

Mesaje: 50



Vezi Profilul
« Răspunde #8 : Februarie 29, 2012, 07:04:20 »

@Mihai: și eu aș fi un teoretician catastrofal. Smile Nu pot să mă concentrez puternic pe termen lung, mă plictisesc repede, am nevoie să simt că am ceva de arătat și ceva cu care să mă joc destul de rapid altfel îmi pierd entuziasmul.
Memorat
dsfm_daniel
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #9 : Februarie 29, 2012, 12:17:08 »

Eu nu ma compar cu voi si cu proiectele voastre. Am si eu, insa, un mic proiect al meu, pentru placerea mea. Am inceput sa programez un mic joculet insa am intrerupt ca sa pot sa ma pregatesc pentru olimpiada. Dupa ce se termina, voi relua. Very Happy
Memorat
rgrig
De-al casei
***

Karma: 46
Deconectat Deconectat

Mesaje: 144



Vezi Profilul WWW
« Răspunde #10 : Februarie 29, 2012, 12:17:23 »

@Mihai: Proofs are programs.  Smile
Memorat
cdascalu
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 5



Vezi Profilul
« Răspunde #11 : Februarie 29, 2012, 14:36:09 »

Salut,

   Sunt de acord cu cele 2 categorii si cred ca daca banii ar fi tinta prima varianta(sa faci din informatica un scop) ar fi mai sigura.

   In schimb eu cred, desi nu stiu cum e(sper sa aflu intr-o zi), ca daca reusesti sa scoti bani din propriul tau site sau produs te simti mult mai implinit si cu o pofta de viata mai mare.
   Pare a fi mult mai interesant pentru ca se schimba datele problemei in sensul ca nu te gandesti neaparat la bani ci cum sa-ti imbunatatesti produsul astfel incat sa fie mai atractiv pentru clienti si alte aspecte asemanatoare.
   Asta este opinia mea, persoana care nu exceleaza in informatica.Mie imi place sa ma gandesc la diverse idei de site-uri sau aplicatii de genul acesta si am aplicat cateva dar mai mult pentru a-mi testa capacitatile.

  Felicitari pentru articol!
Memorat
rgrig
De-al casei
***

Karma: 46
Deconectat Deconectat

Mesaje: 144



Vezi Profilul WWW
« Răspunde #12 : Februarie 29, 2012, 17:26:16 »

Pentru mine balanța este între pasiunea pentru a construi și pasiunea pentru a înțelege.

Ai de construit un pod extrem de lung comparativ cu lățimea lui. Trăiești înaintea erei noastre așa că nu te poți folosi de ce ai învățat la mecanică. Știi însă că nu e o idee prea bună să construiești tot podul fără să experimentezi un pic. Dacă nu iese, costul ar fi prea mare. Așa că începi cu construcția unui model, o copie de dimensiuni mici. După multe și multe încercări până la urmă iese.

Acum ești la răscruce.

Una dintre reacții este: Super, acum știu cum se face podul, mă apuc să-l fac și multă lume o să fie bucuroasă.

Cealaltă reacție este: OK, am făcut un model care merge. Dar de ce merge? Am înțeles oare ce se întâmplă? Ia să vedem dacă pot rezolva o problemă asemănătoare dar puțin diferită. Să zicem că podul trebuie să treacă peste o insulă așa că trebuie să fie puțin curbat. Dar oare de ce mi-a luat așa de mult să găsesc o soluție? Cum ar trebui să abordez probleme asemănătoare ca să le găsesc mai rapid o soluție ... Între timp, binențeles, podul real așteaptă și nimeni nu-l construiește.

Să ne întoarcem la olimpiade. Acolo ți se cere să construiești multe poduri ingenioase și de dimensiuni extrem de mici. Binențeles că nu e ca lumea reală: Un pod mare pune alte probleme. Binențeles că nu e nici cercetare: Știi deja că podul mic și ingenios care ți se cere se poate construi.

Nu cred că teoreticienii văd olimpiadele ca pe un scop, nici pe departe. Omul de care am povestit mai sus care a uitat de podul real ar putea să considere o competiție de construit modele de care se știe că se pot construi ca fiind distractivă și poate chiar un antrenament bun. Dar nu este același lucru cu ceea ce îl pasionază cu adevărat, să înțeleagă.
Memorat
mika17
Strain
*

Karma: 8
Deconectat Deconectat

Mesaje: 33



Vezi Profilul
« Răspunde #13 : Martie 01, 2012, 16:33:48 »

Ma intreb cati de aici au avut pana acum un job serios (i.e. full-time) in programare.

Pe mine titlul postului ma duce cu gandul exact la cum as imparti si eu programarea: in doua categorii antagonice
Prima este a utiliza limbajele si tehnologiile existente deja pentru a realiza produse si unelte care pot fi folosite de oameni obisnuiti in viata de zi cu zi (i.e. site-uri), sau de companii in afacerile lor (i.e. SVN-uri, project management tools etc). Aici conteaza viteza si abilitatea de a scrie cod rapid si functional, nu neaparat optimal dpdv algoritmic,  caci un simplu site poate avea zeci si sute de mii de linii de cod in spate. A doua categorie este cea "teoretica", cea orientata spre algoritmica, unde iti concentrezi efortul spre a intelege concepte matematice din ce in ce mai dificile, a crea legaturi intre diferite obiecte matematice , a descoperi noi proprietati. De exemplu, Graph Theory e o subramura a matematicii, strans legata de combinatorica, problema fluxului maxim este defapt un caz particular al problemei de programare liniara, bazata pe algebra liniara.
Dezvoltarea de algoritmi necesita mai intai modelarea unei probleme teoretice sau din viata reala, apoi intuitie si logica matematica, pentru a gasi euristic o solutie , iar apoi trebuie si demonstrat riguros corectitudinea sa. Iar o simpla modificare a cerintei poate face rezolvarea mult mai grea. (Exemplu: intr-un graf , nu se cere drumul minim, ci al K - lea drum minim, sau graful e dinamic, sau infinit)
Pentru mine informatica este o pasiune pur intelectuala, strans apropiata de a doua categorie. Am caiete pline de numere, grafuri, demonstratii. In schimb cand vine vorba de scris cod "banal", sunt lenes Smile
Problema e ca atunci cand te angajezi full-time la o firma sau multinationala, se cam rupe firul. In primul rand, nu prea mai ai timp sa lucrezi la acel site sau proiect la care lucrai din pasiune. Nu mai exista codat cand ai chef cu laptopu in brate, cu muzica tare in casti. In schimb: overtime si stat la servici chiar daca n-ai chef, stress, proiecte neinteresante, target-uri, corporatisme, sedinte peste sedinte, completare de time-sheets, hartogaraie, rapoarte, daca esti incepator, bug-fixing pe codu seniorilor, "nu conteaza sa fie optim, ci sa mearga si sa fie gata in 2 zile", etc . Iar profitul pe urma muncii tale nu il incasezi tu, ci deseori il incaseaza un "bisnitar"
« Ultima modificare: Martie 01, 2012, 16:49:32 de către Mihai Alex Ionescu » Memorat
MciprianM
Nu mai tace
*****

Karma: 87
Deconectat Deconectat

Mesaje: 324



Vezi Profilul
« Răspunde #14 : Martie 01, 2012, 16:58:33 »

Tu unde ai lucrat pana acuma de ai intalnit astfel de oameni?
Memorat
mika17
Strain
*

Karma: 8
Deconectat Deconectat

Mesaje: 33



Vezi Profilul
« Răspunde #15 : Martie 01, 2012, 17:14:33 »

@MciprianM
La o multinationala. Sediu printre altele la NY, Londra, Frankfurt. Clienti mari corporatii din toata lumea. Salarii mari pt RO(am cerut foarte mult pt un fresh graduate cu experienta 0. Si ei mi-au dat cat am cerut).
Dar plafonarea asta nu e doar la ei, io cred ca asa e cam in toate companiile, cel putin in RO. Poate in state la Google & FB o fi altfel, nu cunosc . Dar nici in state nu e totul roz. In postul meu precedent cand ziceam "bisnitar", ma gandeam printre altele la fostul patron Apple.
Cauta pe bestjobs joburile de programator. Sa vezi descrierea joburilor. Dezamagitor
« Ultima modificare: Martie 01, 2012, 17:38:39 de către Mihai Alex Ionescu » Memorat
Detrol2k
Strain
*

Karma: -2
Deconectat Deconectat

Mesaje: 48



Vezi Profilul
« Răspunde #16 : Martie 01, 2012, 20:13:27 »

Chiar asa e peste tot ? Sad

E destul de inspaimantator pentru un programator "soon-to-be" sa auda asa ceva...
Memorat
Cosmin
Echipa infoarena
Nu mai tace
*****

Karma: 351
Deconectat Deconectat

Mesaje: 1.799



Vezi Profilul
« Răspunde #17 : Martie 01, 2012, 23:21:22 »

@Mihai Ionescu e putin off topic ce zici tu aici, dar cred ca majoritatea de pe thread au experienta full time.

Un programator produce cod de calitate, la timp. Pentru asta e angajat. In cazul in care lucrezi in romania alta calitate importanta e ca il produce ieftin Smile.

Pe langa asta un programator poate alege unde lucreaza in functie de nivelul lui si de ce ii place sa lucreze. Exista o gramada de firme care nu au nevoie doar de code monkeys ci de oameni care pot rezolva probleme mai grele.
Memorat
mateiuli
Strain


Karma: -2
Deconectat Deconectat

Mesaje: 9



Vezi Profilul
« Răspunde #18 : Martie 02, 2012, 20:59:40 »

Eu ma incadrez in a doua categorie.
Imi place programarea. Lucrez in timpul liber la multe proiecte (personale, pentru bani, etc), in diferite limbaje de programare, grafica, site-uri, editari 3D, retelistica si multe altele. Nu sunt tipul de persoana care invata programarea la scoala si se duce la olimpiada iar in timpul liber uita total de cat de multe ii ofera informatica. Nu sunt prea competitiv. Eu chiar nu ma supar daca nu ma calific de exemplu maine la etapa nationala, pentru ca am timp sa studiez ceea ce imi place cu adevarat.
Chiar imi propuneam cu un coleg, ca dupa olimpiade sa incepem sa facem un joc 3D. Cu ocazia asta o sa invatam multe lucruri care cu siguranta se vor dovedi extrem de utile in viata.
Memorat
lungu9
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« Răspunde #19 : Martie 04, 2012, 18:22:12 »

Salut!
Sunt in clasa a Xa si de vara asta am inceput putin sa fac programe si siteuri, iar ca sa fiu sincer e foarte naspa...
Adica nu e greu cu programu, e greu cu invatatul. Adica nu prea ai cum sa inveti de unul singur... si daca imi zice cineva ca se poate am toate motivele sa il contrazic! Adica se poate invata dar "basicul". Pe internet si mai ales pe youtube sunt sute de tutoriale care te invata cum sa faci programe banale, dar nicaieri nu gasesti pe cineva care sa iti explice de la A la Z, adica sa fie cineva care sa faca un fel de "walk trough" si sa iti explice efectiv cum sa faci un program cat de cat ok. Sunt multi care iti explica limbajul si basicul dar "te lasa in ceata". Si e o diferenta foarte mare intre ceea ce te invata youtubeul sau cartile si ceea ce chiar iti trebuie ca macar sa faci un program ok.
Ps: daca vrea cineva sa invete sa stiti ca este un chanel pe youtube , "thenewboston", care are detoate si chiar explica fain!
Memorat
gabitzish1
Moderatori infoarena
Nu mai tace
*****

Karma: 321
Deconectat Deconectat

Mesaje: 926



Vezi Profilul
« Răspunde #20 : Martie 04, 2012, 22:36:26 »

Cam off-topic, dar incearca tutorialele de pe lynda.com daca vrei sa inveti ceva singur. Mie mi s-au parut facute fain.
Memorat
RyanBlack
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #21 : Martie 05, 2012, 16:13:20 »

Buna ziua tuturor. Inainte sa scriu ceva legat de topic vreau sa spun ca acest post m-a facut sa ma inregistrez. Am ramas Applause Shocked cand am vazut ce scria acolo. Deci eu simt nevoia sa creez lucruri folositoare pentru altii si pentru mine. Da, am facut site-ul web al scolii mele, si nu e singurul, am mai facut inca vreo 2 proiecte. Da, dupa fiecare cod scris ma gandesc daca e folositor cuiva cu adevarat. Da, ador freelancingul si mi sa spus de catre profesoara mea de educatie antreprenoriala ca am "simtul investitiei". Am doar 16 ani si proiectele (mai exact site-urile web) facute de mine nu mi se par chiar "PRO" si de aceea nu am sa le arat. Multumesc Smile
Memorat
valentin.cc
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #22 : Martie 10, 2012, 17:07:47 »

Foarte corect!!! Intotdeauna am folosit informatica pentru a imi atinge scopurile dar niciodata nu m-am gandit la aceste doua gategori!
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines