ABONAMENTE VIDEO REDACȚIA
RO
EN
NOU
Numărul 150
Numărul 149 Numărul 148 Numărul 147 Numărul 146 Numărul 145 Numărul 144 Numărul 143 Numărul 142 Numărul 141 Numărul 140 Numărul 139 Numărul 138 Numărul 137 Numărul 136 Numărul 135 Numărul 134 Numărul 133 Numărul 132 Numărul 131 Numărul 130 Numărul 129 Numărul 128 Numărul 127 Numărul 126 Numărul 125 Numărul 124 Numărul 123 Numărul 122 Numărul 121 Numărul 120 Numărul 119 Numărul 118 Numărul 117 Numărul 116 Numărul 115 Numărul 114 Numărul 113 Numărul 112 Numărul 111 Numărul 110 Numărul 109 Numărul 108 Numărul 107 Numărul 106 Numărul 105 Numărul 104 Numărul 103 Numărul 102 Numărul 101 Numărul 100 Numărul 99 Numărul 98 Numărul 97 Numărul 96 Numărul 95 Numărul 94 Numărul 93 Numărul 92 Numărul 91 Numărul 90 Numărul 89 Numărul 88 Numărul 87 Numărul 86 Numărul 85 Numărul 84 Numărul 83 Numărul 82 Numărul 81 Numărul 80 Numărul 79 Numărul 78 Numărul 77 Numărul 76 Numărul 75 Numărul 74 Numărul 73 Numărul 72 Numărul 71 Numărul 70 Numărul 69 Numărul 68 Numărul 67 Numărul 66 Numărul 65 Numărul 64 Numărul 63 Numărul 62 Numărul 61 Numărul 60 Numărul 59 Numărul 58 Numărul 57 Numărul 56 Numărul 55 Numărul 54 Numărul 53 Numărul 52 Numărul 51 Numărul 50 Numărul 49 Numărul 48 Numărul 47 Numărul 46 Numărul 45 Numărul 44 Numărul 43 Numărul 42 Numărul 41 Numărul 40 Numărul 39 Numărul 38 Numărul 37 Numărul 36 Numărul 35 Numărul 34 Numărul 33 Numărul 32 Numărul 31 Numărul 30 Numărul 29 Numărul 28 Numărul 27 Numărul 26 Numărul 25 Numărul 24 Numărul 23 Numărul 22 Numărul 21 Numărul 20 Numărul 19 Numărul 18 Numărul 17 Numărul 16 Numărul 15 Numărul 14 Numărul 13 Numărul 12 Numărul 11 Numărul 10 Numărul 9 Numărul 8 Numărul 7 Numărul 6 Numărul 5 Numărul 4 Numărul 3 Numărul 2 Numărul 1
×
▼ LISTĂ EDIȚII ▼
Numărul 69
Abonament PDF

Experiența mea la Google Summer of Code

Dan Pop
Software Developer @ Codemart



DIVERSE

În primul rând, pentru cei dintre voi care nu știu nimic despre acest program, ce este sau ce își propune să realizeze, vă voi oferi o scurtă introducere despre ceea ce reprezintă de fapt. Google Summer of Code este un program care oferă studenților din întreaga lume posibilitatea de a lucra într-o comunitate open source într-un mediu prietenos și bine organizat. Programul a fost lansat de Google, cu 14 ani în urmă și în fiecare vară, pentru o perioadă de trei luni, studenții lucrează la proiectele alese. La sfârșitul programului, studenții care și-au terminat munca cu succes vor fi plătiți împreună cu alte cadouri (de exemplu, tricouri) de la Google.

Cum funcționează toate acestea? Este destul de simplu. De aceea, e păcat că o mulțime de studenți buni se tem să aplice la acest proiect, fie pentru că pur și simplu nu știu de existenta lui, fie pentru că li se pare prea complicat. Din câte știu, eu am fost singurul student din Cluj-Napoca care s-a alăturat programului și l-a terminat cu succes în anul 2017, chiar dacă în acel an au fost disponibile o mulțime de proiecte interesante.

În prima fază, organizațiile open source aplică pentru GSoC prin prezentarea unor descrieri cu proiectele lor și teme explicite propuse pentru studenți. Ulterior, o listă a organizațiilor acceptate împreună cu proiectele acestora este publicată pe pagina oficială a GSoC. Studenții care sunt interesați pot naviga printre aceste proiecte și își pot alege unul dintre ele. După ce s-au decis (deoarece există multe proiecte foarte interesante în fiecare an și este greu de ales), studenții trebuie să ia legătura cu mentorii organizației sau cu alți membri pentru a se prezenta.

Apoi, fiecare student trebuie să își întocmească propria propunere de rezolvare pentru proiectul dorit. Propunerea ar trebui să precizeze în mod clar obiectivul proiectului ales și, de asemenea, să propună soluții tehnice pentru problemele prezentate împreună cu detalii de implementare. Propunerea trebuie să conțină, de asemenea, un plan de lucru în care să specifice activitatea săptămânală a studentului. Este recomandat ca la sfârșitul fiecărei iterații (2 - 4 săptămâni), un rezultat intermediar să poată fi prezentat. De asemenea, adăugarea unor detalii despre student sunt bine venite împreună cu un scurt CV sau altă descriere a experienței anterioare în domeniu.

După depunerea propunerii finale, mentorii, organizațiile și reprezentanții Google decid asupra criteriilor de acceptare. În cele din urmă, este publicată o listă de studenți acceptați și cu puțin noroc, tu vei fi unul dintre ei.

Fiecare student va primi un mentor sau, eventual, o echipă de mentori, care îl vor îndruma pe parcursul dezvoltării reale a proiectului. Comunicarea între student și mentor este necesară pentru a urmări munca și a continua în direcția corectă.

În fiecare lună, în timpul procesului de dezvoltare de 12 săptămâni, este necesară o evaluare. Studentul își va evalua mentorii și va da un feedback, iar mentorul la rândul lui va face la fel cu privire la munca pe care studentul a făcut-o în cursul lunii și la comportamentul său general. Pe baza acestei evaluări, studentul va continua sau nu colaborarea cu GSoC și, dacă este acceptat în continuare, va trece la următoarea fază a proiectului și va primi o remunerație pentru munca pe care a făcut-o în această perioadă. Anul trecut plata a fost distribuită în trei tranșe, 30%, 30% și 40% din suma totală, pentru fiecare lună de lucru. Suma de bani primită variază în funcție de orașul în care locuiești în momentul studiilor. De exemplu, eu ca student în Cluj-Napoca, România, am obținut un total de 3000 $, ceea ce este excelent pentru un student în al treilea an de facultate în România.

La sfârșitul programului se va anunța lista studenților ce au finalizat programul cu succes și se vor trimite remunerațiile finale. Câteva luni mai târziu sunt trimise și pachetele de cadouri pentru cei care au terminat programul, dar din păcate eu nu am fost prea norocos pentru că pachetul meu nu a sosit din cauza unor probleme de livrare.

Acum, că aveți câteva idei de bază despre acest program și cum funcționează, vă voi împărtăși puțin din experiența mea reală cu proiectul GSoC și ce a însemnat pentru mine.

După ce am aflat despre această oportunitate pentru vară de la compania Codemart (colaborator în GSoC timp de câțiva ani), am fost puțin îngrijorat în legătură cu aplicarea, deoarece am crezut că nu voi putea realiza toată cantitatea de muncă solicitată. După mai multe cercetări și câteva sfaturi, am găsit proiectul TVB care părea foarte interesant, așa că am căutat mai multe detalii despre el. "TheVirtualBrain este un mediu pentru simularea dinamicii rețelelor cerebrale pe scară largă cu conectivitate structurală realistă biologic. Este un proiect open source, al cărui scop este să furnizeze toate mijloacele necesare pentru a genera, manipula și vizualiza conectivitatea creierului și a dinamicii rețelei neuronale."

Echipa internațională de coordonare a neuroinformaticii (INCF) a acceptat două proiecte diferite legate de TVB pentru GSoC din 2017, iar eu am ales unul dintre ele. Proiectul meu a avut ca scop actualizarea unor pagini web în TVB, care în acel moment utilizau tehnologii vechi și necesitau actualizare, folosind caracteristici și tehnologii mai noi.

Am avut puțină experiență în ceea ce privește tehnologiile folosite în proiect (python, javascript, webGL și altele), dar a părut o bună ocazie de a-mi îmbunătăți abilitățile și experiența de programare.

Primul vizualizator la care am început să lucrez a fost Visualizer Spectrogram Wavelet. Lucrurile au început destul de încet, dar în fiecare săptămână am reușit să evoluez. Am adăugat noi funcționalități și în câteva săptămâni am reușit să îl finalizez, munca mea fiind adăugată în proiect. În acel moment, am fost oficial un contributor de cod in TVB și eram mândru de mine.

Cel de-al doilea vizualizator pe care l-am abordat a fost Isocline PSE Visualizer. Acest vizualizator a avut părți comune cu cel precedent și în două săptămâni a fost finalizat.

Odată cu trecerea timpului, am început să câștig din ce în ce mai multă experiență și îndemânare cu tehnologiile cu care lucram și cu tot proiectul TVB. Din acel moment, lucrurile au mers mult mai bine, terminând câte un nou vizualizator o dată pe săptămână sau la două săptămâni. Următorii vizualizatori pe care i-am actualizat au fost: Pearson Coefficients Visualizer, Complex Coherence Visualizer, Fourier Spectrum Visualizer, iar ultimul, care s-a dovedit a fi nu atât de simplu pe cât părea, a fost Topographic Visualizer.

Pentru mine, Google Summer of Code a fost o experiență minunată, deoarece am fost capabil să interacționez cu o comunitate open source și chiar să fac parte din ea. Cred că GSoC este o ocazie excelentă de a vă folosi cunoștințele în a scrie cod și, de asemenea, de a învăța multe lucruri noi, toate acestea contribuind la realizarea unui obiectiv comun, acela de a construi o comunitate de care putem toți să beneficiem. Nu a fost la fel de greu pe cum părea inițial. Nu trebuie să fii expert în programare, sunt necesare doar cunoștințe de bază și restul le vei dobândi pe drum. Personal, aș repeta cu drag această experiență.

NUMĂRUL 149 - Development with AI

Sponsori

  • Accenture
  • BT Code Crafters
  • Accesa
  • Bosch
  • Betfair
  • MHP
  • BoatyardX
  • .msg systems
  • P3 group
  • Ing Hubs
  • Cognizant Softvision
  • Colors in projects