Hamilton and the most important problem of computer science

William_Rowan_Hamilton_paintingSir William Rowan Hamilton (August 3/4 1805 – September 2, 1865) was an Irish physician, astronomer and mathematician that brought important contributions to classical mechanics, to the development of optical systems and of algebra. William Rowan Hamilton is known for his studies of mathematical physics and of Newtonian mechanics formulation renamed Hamiltonian Mechanics. His work proved to be essential for the study of electromagnetism and for the development of quantum mechanics.

William Rowan Hamilton was the son of a lawyer, but he lived with his uncle, an Anglican priest who also educated him.

Besides his aptitude of learning Latin, Greek, Hebrew before 5 years old, until he turned 12 he already knew Arabic, Sanskrit, Persian, Syriac, French, Italian and German. However, Hamilton started to be more interested in mathematics after he read Analytical Geometry by Bartholomew Lloyd, at the age of 16. Continuă să citești Hamilton and the most important problem of computer science

Interviu la Google (II)

Citeşte aici prima parte din articolul Interviu la Google

Cum rezolvă Google problemele

google_logo_vechiA trecut ceva timp de când am promis că voi spune ce a urmat după al doilea interviu tehnic, telefonic, pentru Google Zurich. După vreo două săptămâni, însă, într-adevăr am văzut că sunt (încă) destul de deştept, pentru că, într-adevăr, am fost invitat la un interviu on-site (la faţa locului). M-a contactat recruiterul, prin e-mail şi m-a felicitat că am trecut cu brio acest al doilea interviu şi dacă putem stabili o perioadă, cam peste vreo două săptămâni în care să vin la Zurich. Dacă ar fi fost după mine, aş fi aşteptat ceva mai mult, timp în care să mă mai pun la punct cu unele tehnici de programare sau algoritmi sofisticaţi. Am căutat pe Google cam ce fel de probleme ar putea să mă întrebe acolo, am contactat un vechi prieten, care a lucrat pentru o vreme la Google în Mountain View, iar el m-a testat cu o serie de probleme de algoritmică. La aceste probleme predominau soluțiile cu tabelele de dispersie, sortările rapide şi rezolvarea de probleme în timp liniar. De pildă, una din probleme avea o aplicabilitate foarte directă la Youtube. Am constatat că cei de la Google au un mod foarte inventiv de a rezolva unele probleme, care aparent se rezolvă în O (nxn), dar ei le rezolvă chiar în O(n), dacă trebuie să le rezolvi de mai multe ori. La unele probleme la care eu aveam o soluţie în O(log(n)) ei vin adesea cu o soluţie în O(1), încât uneori te întrebi dacă ceea ce se predă la algoritmică prin liceu sau facultate sunt cele mai avansate metode.

Adesea, fiecare problemă ce trebuie rezolvată de Google are o anumită particularitate, iar noi de multe ori aplicăm orbeşte un algoritm, bine învăţat, fără să studiem bine particularităţile acelei probleme şi să observăm că, deşi algoritmul este foarte bun, poate că în acele cazuri speciale există ceva şi mai bun.

Idei furate sau coincidenţe?

Dorind să le fac o impresie bună, le-am trimis şi câteva idei de-ale mele, din preocupările mele din domeniul limbajului natural, publicate sau care au fost ulterior publicate în articole de reviste sau la conferinţe internaţionale. Recruiterul m-a încurajat în acest sens, iar eu m-am gândit că e bine să trimit o serie de materiale reprezentative ale ultimelor mele preocupări academice, ca să fac impresie bună. Ulterior m-am convins că nu le sunt de mare folos, ei preocupându-se mai mult de problemele de bază ale informaticii (căutare şi ordonare) sau arhitecturi generale distribuite şi mai puţin de inteligenţa artificială. Pe de altă parte, mi-am asumat riscul ca să-mi fie furate ideile şi un googler să şi le însuşească, ca fiind ale lui. De fapt, Google e o firmă foarte isteaţă din punct de vedere juridic, au nişte contracte de confidenţialitate foarte deştepte, aşa încât am fost nevoit să semnez două asemenea contracte şi să le trimit lor. Unul se referea la faptul că nu voi spune ce probleme mi-au dat la interviuri (aşadar nu vă voi spune!), iar al doilea că sunt de acord să nu am pretenţii asupra a ceea ce le-am trimis benevol, dacă se întâmplă ca ei să descopere sau să inventeze ceva similar lucrărilor mele. E normal, din moment ce ei cercetează permanent şi uneori e posibil ca ideile să se suprapună :). Cu alte cuvinte, dacă mâine o să vedeţi vreo tehnologie implementată de Google, să nu fiţi convinşi că au făcut-o angajaţii permanenţi, ci poate vreun candidat intervievat.

În fine, am fost pus în legătura cu o altă persoană, o domnişoara care s-a ocupat de rezervarea biletelor de avion: mi-a trimis nişte variante din care să aleg, atât pentru dus, cât şi pentru întors şi mi-a spus că pot veni cu soţia şi că pot sta încă o zi sau două pentru a vizita oraşul. Ei puteau să-mi rezerve camera la hotel pentru două nopţi sau mai multe, dar ei îmi plăteau doar o noapte de cazare pentru o cameră (double) şi drumul cu avionul dus-întors doar pentru mine. Am ales să merg singur, după ce am discutat în familie problema. Mai ales că domnişoara de la Google a ales companiile aeriene şi nu unele foarte ieftine, ci Swiss Air şi Lufthansa. Am primit un ultim telefon în ziua de 10 martie şi mi s-a spus că totul este OK, interviul urma să fie pe 14 martie, iar eu să ajung acolo pe 13 martie.

Continuă să citești Interviu la Google (II)

Alan Turing – the Father of Modern Computer Science and Artificial Intelligence

Alan Mathison Turing (23 June 1912 – 7 June 1954) known today as the father of modern informatics and artificial intelligence, was a British IT specialist, mathematician, logician, and cryptanalyst. Alan Turing invented a device (the Turing machine) based on the work with the digits 1 and 0, which formalized the concept of algorithm and calculus.

Alan-Turing
In 1999, TIME journalists described Alan Turing as one of the most important people of the XXth century, and the editors of Nature concluded that “Alan Turing is, without any doubt, the only person who had major contributions, who changed the face of the world, in the most fine three types of intelligence: human, artificial, and military.”

Continuă să citești Alan Turing – the Father of Modern Computer Science and Artificial Intelligence

Alan Turing – father of modern computer science and artificial intelligence

Alan Mathison Turing (June 23, 1912 – June 7, 1954), known nowadays as the father of modern computer science and artificial intelligence, British former computer expert, mathematician, logician and cryptanalyst. Alan Turing invented a device(Turing machine) based on working with numbers 0 and 1 that formalized the concept of algorithm and calculus.Alan-Turing

In 1999, journalists of TIME used to consider Alan Turing, one of the most important 100 people of XX century and the editors of Nature concluded the fact that “Alan Turing is, without any doubts, the only person that has made important contributions, that changed the world, in the finest types of intelligence: human, artificial and military intelligence”. Continuă să citești Alan Turing – father of modern computer science and artificial intelligence