Cursul de Dezvoltare Liberă @ETTI v1

Ce este CDL?

Cursul de dezvoltare liberă este un curs/laborator alternativ, cu o durată de 9 - 10 săptămâni, dedicat tuturor studenților pasionați de programare. CDL este despre dezvoltarea de software liber, despre unelte utile și despre ce înseamnă o comunitate open source.

Cursul a fost implementat cu succes în cadrul Facultății de Automatică și Calculatoare și în cadrul Facultății de Matematică și Informatică. Ne bucurăm să vă anunțăm că anul acesta va avea loc prima ediție a cursului în cadrul Facultății de Electronică, Telecomunicații și Tehnologia Informației.

Alte ediții: 2013 @UniBuc, 2013, 2012, 2011 toamna, 2011 primăvara, 2010, 2009.

Urmărește ultimele noutăți despre CDL pe Facebook, Google+ și Twitter.

Notă: Cursul nu intră în programa școlară și nu aduce credite în plus.

Cursanți CDL

Nume Proiect
Andrei Sorin Bălașa Unknown Horizons
Mihai Dogariu CMU Sphinx
Radu-Florin Dunarentu WoUSO
Laura-Stefania Flueratoru DexOnline
Alexandru Lucian Georgescu OpenCV
Alexandru Niculae FireFox
Corneliu Andrei Rîpanu WHC
Alexandru Rusu WoUSO iOS
Bogdan Ungureanu DexOnline
Ana-Maria Vladu BAMG Facebook
Bogdan Zlate GNUnet

Curs 1

  • Ce înseamnă Open Source? [link]
  • Linux - hands-on workshop [link]
  • Discuții cu mentorii despre proiecte

Curs 2

  • Programare sub mediul Linux (în C) [link]
  • Sisteme de versionare (git) [link]
  • Hackathon

Curs 3

  • Programare Orientată pe Obiecte
  • Hackathon

Curs 4

  • Best practices. Coding style.
  • Debugging your project!
  • Hackathon

Curs 5

  • Testarea codului
  • Invitat surpriză
  • Hackathon

Curs 6

  • Cum funcționează WEB-ul? [link1, link2]
  • Invitat surpriză
  • Hackathon

Curs 7

  • GUIs, UX
  • Hackathon

Curs 8

  • Python - crash course
  • Invitat surpriză
  • Hackathon

Curs 9

  • Prezentarea proiectelor
  • Final

Calendar

Proiecte

Te invităm să afli mai multe despre proiectele la care ai putea să lucrezi semestrul acesta!

World of USO

BAMG Facebook

Unknown Horizons

Firefox

World of USO on iOS

dexonline

GNUnet

WHC::IDE

OpenCV

CMUSphinx

Proiect CDL: World of USO

Descriere

World of USO este o platformă online de învățare, asemănătoare cu un joc de cunoștințe. O modalitate interactivă și distractivă prin care studenții pot învăța noțiuni legate de Linux și cultură IT.

World of USO este dezvoltat in Django. Informații despre Django găsiți la: https://docs.djangoproject.com/en/dev/intro/overview/

De ce WoUSO?

Vă veți îmbunătăți skillurile de programare dobândind cunoștinte despre Python, Django, etc. Veți contribui semnificativ la dezvoltarea jocului. WoUSO is fun.

Mentor

  • Ionel Popescu

Unknown Horizons

Descriere

Unknown Horizons este un joc de stragie 2D in timp real cu accent pus asupra economiei, similar cu jocuri precum Anno sau Caesar.

Initial vom rezolva cateva bug-uri mici pentru familiarizarea cu baza de cod, apoi se va putea lucra la gameplay, interfata sau grafica, in functie de preferintele studentului.

Mentor

  • Cristian Mocanu

World of USO on iOS

Descriere

World of USO este un joc pentru studentii anului I de la Facultatea de Automatica si Calculatoare. Jocul se bazeaza pe niste quiz-uri din materia de Utilizarea Sistemelor de Operare. Studentii se dueleaza in raspunsuri, indeplinesc quest-uri si fac vraji in incercarea de a castiga cupa World of USO.

Exista o versiune a jocului pentru Web si o versiune pentru Android. Anul acesta ne propunem sa realizam versiunea pentru iPhone si iPad. In doua luni vom construi aplicatia in totalitate.

Limbaj de programare folosit: Objective-C

Cunostinte minime: C, notiuni de Programare Orientata pe Obiecte.

Mentor

  • Andrei Vasilescu

dexonline

Descriere

dexonline propune crearea unui joc de iscusință în care jucătorul primește un cuvânt cu ale cărui litere trebuie să formeze alte cuvinte într-un anumit interval de timp.

Jocul va fi împărțit pe niveluri de dificultate în funcție de frecvența literelor cuvântului dat.

Fiecărui utilizator logat i se va salva scorul și se vor alcătui clasamente, se vor acorda insigne, etc.

La finalul jocului se vor afișa cuvintele descoperite de jucător, urmate de cele nedescoperite, dimpreună cu definițiile lor.

Necesită cunoștințe minime de programare web: HTML, CSS, JavaScript, PHP.

Mentor

  • Alexandru Grigoroiu

GNUnet

Descriere

GNUnet este un framework folosit pentru crearea unei retele peer to peer securizata. Serviciul implementat in nivelul de top al retelei permite partajarea informatiilor/datelor sub protectia anonimatului.

Principalul scop al proiectului este de a extinde suita de teste astfel incat o zona cat mai mare de cod sa fie acoperita.

Tehnologii folosite: C, SVN.

Mentor

  • Claudiu Olteanu

Mozilla Firefox

Descriere

Mozilla Firefox este browser-ul open source dezvoltat de Mozilla Corporation.

Networking Dashboard este un proiect care oferă dezvoltatorilor o interfaţă de monitorizare a activităţii de networking din spatele browser-ului.

Pagina about:networking este disponibilă acum în versiunile Nightly şi Aurora de Firefox, partea de backend este scrisă în mare parte în C++, iar partea de interfaţă grafică în Javascript, XHTML şi CSS.

Interfaţa grafică a dashboard-ului este minimală, ne dorim ca în urma CDL să oferim proiectului o nouă interfaţă (propusă în bug-ul https://bugzilla.mozilla.org/show_bug.cgi?id=802398) atât din perspectiva stilizării cât şi a funcţionalităţilor JavaScript.

Mentor

  • Robert Bîndar

WHC::IDE

Descriere

WHC (Workflow of Heterogeneous Computing) este un software care, folosind OpenCL, produce programe capabile sa profite atat de CPU cat si de GPU sau APU.

WHC OpenCL IDE

Pe parcursul CDL, vom lucra la IDE ( Integrated Development Enviroment ). IDE-ul este un wrapper peste WHC care permite, printre altele, batch exectution, auto-completion, salvarea si recuperarea starii in caz de un crash, s.a. . Acesta este construit folosind C++ pentru partea de logica, și QT pentru randara grafica a IDE-ului. Proiectul este in mare parte finalizat, dar totusi raman mici buguri de reparat si feature-ri de implementat.

Tehnologii folosite: C++, QT

Cunostinte minime: C/C++ nivel mediu

Mentori

  • Nițu Adrian
  • Andrei Preda

BAMG!-VoiceNavigation for Facebook

Descriere

BAMG! este o aplicatie care le permite utilizatorilor de Facebook ca, dupa logare, sa isi controleze vocal contul (scroll printre posturi, like-uri, share-uri, accesarea profilurilor altor utilizatori, vizualizarea pozelor etc.). Momentan aplicatia este utilizabila doar pe Google Chrome 25+, pentru ca Firefox nu are optiunea de speech input (inca).

Aplicatia a fost dezvoltata direct ca o extensie de Chrome si a fost publicata si pe webstore. Vom lucra cu javascript, jquery, un pic de html si css si Web Speech API de la Google pentru a aduce imbunatatiri la ceea ce exista si pentru a extinde optiunile utilizatorului. Fiind o aplicatie “tanara”, orice noua idee de design si implementare este binevenita. Dupa terminarea comenzilor utilizate pe Facebook, vom trece si la alte site-uri de socializare.

La proiect am lucrat initial impreuna cu alti trei colegi pentru un hackathon organizat in noimebrie de Facebook in colaborare cu ROSEdu. Ulterior, am publicat aplicatia pe webstore si … asteptam utilizatori si contribuitori.

Mentor

  • Georgiana Ciocîrdel

OpenCV

Descriere

OpenCV este una din cele mai populare biblioteci de procesare de imagini, putand fi folosita de la simple comparatii de imagini pana la recunoastere faciala.

Proiectul propus pentru CDL isi doreste dezvoltarea unei interfete grafice pentru a putea experimenta rapid cu aplicarea diverselor filtre si algoritmi peste stream-uri video (imagini de la un webcam sau din alte surse).

Aplicatia propriu-zisa va fi dezvoltata de la zero (desigur, cu ajutorul nostru) in C++, interactionand cu bibliotecile OpenCV pentru calcule si Qt pentru interfata grafica.

Tehnologii folosite: C++, OpenCV, Qt

Cunostinte minime: C++, notiuni de Programare Orientata pe Obiecte.

Mentor

  • Adrian Stratulat

CMUSphinx

Descriere

CMUSPhinx este un toolkit open-source folosit pentru recunoasterea vorbirii.

Proiectul propus pentru CDL isi propune sa realizeze un calcul al erorii pentru componenta CMUSphinx care realizeaza detectarea numarului si perioadei de aparitie a fiecarui vorbitor intr-un fisier sonor.

Acest feature a fost implementat in editia de anul trecut a CDL.

Tehnologii folosite: Java, CMUSphinx

Cunostinte minime: Java (optional), algoritmi si/sau structuri de date (optional dar binevenit), notiuni de Programare Orientata pe Obiecte

Mentor

  • Cosmin Boacă

WHC::IDE

  • URL:
  • Repo and Development:

Descriere

WHC (Workflow of Heterogeneous Computing) este un software care, folosind OpenCL, produce programe capabile sa profite atat de CPU cat si de GPU sau APU.

WHC OpenCL IDE

Pe parcursul CDL, vom lucra la IDE ( Integrated Development Enviroment ). IDE-ul este un wrapper peste WHC care permite, printre altele, batch exectution, (buggy) auto-completion, salvarea si recuperarea starii in caz de un crash, s.a.
Acesta este construit folosind C++ pentru partea de logica, și QT pentru randarea grafica a IDE-ului. Proiectul este in mare parte finalizat, dar totusi raman mici buguri de reparat si feature-uri de implementat.

Tehnologii folosite: C++, QT

Cunostinte minime: TODO

Mentor

  • Adrian Nițu

Contact

Dacă ai orice fel de întrebări referitoare la CDL ne poți trimite un mail la cdl@rosedu.org.

Organizatori

Cursul de Dezvoltare Liberă (în engleză Community & Development Lab) vă este adus de Echipa ROSEdu.

Despre site

Puteți găsi repository pentru acest site pe GitHub

Credits

(în ordine alfabetică):
Taygun Agiali, Robert Bîndar, Cosmin Boacă, Diana Ciocîrdel, Alex Grigoroiu, Cristi Mocanu, Adrian Nițu, Claudiu Olteanu, Adrian Stratulat, Ionel Popescu, Andrei Preda, Mihai Tiriplică, Andrei Vasilescu, Laura Vasilescu și prietenii.

Condiții și drepturi de folosire

ROSEdu deține drepturile asupra întregului conținut al acestui sait.

ROSEdu, în calitate de deținător al drepturilor de autor, eliberează conținutul acestui sait sub licența GNU Free Documentation License v1.2. În acest sens, accesul, distribuția și modificarea conținutului sunt libere, cu condiția păstrării autorilor inițiali. Se recomandă folosirea sintagmei "Documentație originală scrisă de membrii asociației ROSEdu".

Pentru informații suplimentare, te așteptăm pe lista generală a ROSEdu sau pe canalul IRC #rosedu.

What is CDL all about?

The free Open Source Community and Development Lab is a course organized by ROSEdu

Currently, at its 7th edition, the course aims to help enthusiast undergraduate students at Faculty of Telecomunications and Electronics to make their first contributions within an open source project and to get a feeling of what real world software development actually means.
The topics covered by this course range from programming language specifics (such as C#/Python), highlighting object oriented programming concepts and design patterns, to proper project management tools and community integration.



The main components of our course are:

  • Theoretical presentations combined with practical laboratories to help students gain technical expertise using various programming languages and open source tools
  • Development sessions under the guidance of experienced mentors to help students work on specific features of an open source project
  • Presentations held by invited guests, industry leaders of the Romanian IT community with various topics (careers in software engineering, startups, technology).

CDL v5.0

Another CDL edition is over!

We had the lucky 13 number of participants. All the students worked on their projects, and at first some didn’t know what to expect of the project. They received constant support from their mentors, had hackathons, technical presentations (git, vim, python, gsoc opportunities and more), and also soft skills presentations (about leadership, innovation, open source etc.). According to the students’ feedback, most of their expectations were greatly exceeded.

The projects we had were Pidgin, openSIPS, DEXonline (as always), digiKam (a former CDL student now mentoring for it) and awouso (android + WoUSO, another traditional project of ROSEdu). The Dexonline team implemented a very fun Hangman game that’s playable on Dexonline’s homepage. This enjoyed so much popularity that it got featured in a newspaper article. It includes difficulty levels, try it yourself at http://www.dexonline.ro.

Thanks to Ixia’s constant support, we’ve managed to have fun after CDL yet again. This time we went on a trip to Bran, Brasov. One can tell we all had a great time by just looking at 10 facebook pictures. Eau de Web brought joy to all of us with a lot of technical books personally recommended by Eau de Web’s employees. And last but not least, Google has offered swag for everybody, including some t-shirts with G+ (very cool).

CDL v4.0

The 4th edition of the Open Source Development Course is over!
After 9 weeks of hard work, commitment and enthusiasm on behalf of both the participants and the mentors, it is safe to say that this was a truly successful edition of the course!

The outcome was, undoubtedly, remarkable! At the end of the course each team put forward new functionalities that were implemented as patches to the main projects, and that made it back into the mainstream.

And because we are not the only ones to believe in the importance of this course, this year Eau de Web, Google and IXIA contributed by rewarding the participants with prizes!

Eau de Web offered books on Open Source and development to each student while IXIA offered a trip to Busteni for the participants and the organizers. Thank you!

CDL v3.0

The 3rd edition of the Open Source Development Course is over!
After 9 weeks of hard work, commitment and enthusiasm on behalf of both the participants and the mentors, it is safe to say that this was a truly successful edition of the course!

The outcome was, undoubtedly, remarkable! At the end of the course each team put forward new functionalities that were implemented as patches to the main projects, and that made it back into the mainstream.

And because we are not the only ones to believe in the importance of this course, this year Google and IXIA contributed by rewarding the participants with prizes!

We especially received support from the IXIA company: a trip to Busteni for the participants and the organizers! In addition to that, we owe the facilities in the laboratory where the CDL takes place exclusively to the effort and implication IXIA has demonstrated within the faculty and within ROSEdu! Thank you!

Projects

Throughout this course, each student is assigned to work on an open source project, under the guidance of a mentor actively involved in the development and in the community of the project. We aim to bring new contributors to existing open source/free software projects.

We consider this an immense opportunity for our participants, as they can easily overcome difficulties encountered when setting up the working environment (compiling the code, getting to know how it is organized and so on). Moreover, the mentors assist the development sessions within the course, are able to directly answer technical questions and plan the feature evolution, step by step.

Last, but not least, we would like to say a big THANK YOU to all the mentors who have dedicated numerous hours of their precious time for the benefit of the participants and the success of this course.

Testimonials

Results are best measured in time, and we are delighted to hear success stories from our former participants in the software engineering field, where knowledge gained through this course has proven to be vital.

"Through the course, I have learned not only essential technical aspects, but new ways of looking at things"
Mihai Tabără, CDL 2009

"I participated in my first year as a student and in my second as a mentor. This proves how you can personally evolve through the CDL course. The experience gained through CDL helped me get involved in important open source projects, such as Google Summer of Code."
Vlad Voicu, CDL 2009 - 2011

"CDL represented for me a turning point. Until then, I had no idea about how an open source project works. It turned out that I was wrong in many ways: how I should contribute code, how I should work within a team, how I would present the project I’m working on..."
Dan-George Filimon, CDL 2010 - 2011

"CDL has opened the doors for me to the open-source world. During this course, I learned a lot about different tools and practices that are mostly used in open-source projects, which made me a better programmer. It has also helped me a lot during my Google Summer of Code project in 2010. I am always up-to-date with the evolution of this course and I can say that the team is improving it every year. Congrats to everyone for helping new students learn the ways of open source development and Computer Science in general."
Diana Tiriplică, CDL 2009

"I particularly enjoyed this course because I was able to gain knowledge in so many different fields of Computer Science."
Mircea-Ștefan Ghideu, CDL 2010

Get involved!

We have currently limited our students contributions to communities and projects where we are able to find mentors from our university, to physically be present during the weekend hackatons within the course. This helps a lot ensuring quality for our freshman students, the target audience for CDL, since they can be easily guided on writing code efficiently for the features they are willing to work on.
However, our upcoming project is ROSEdu Summer of Code, inspired from Google's Summer of Code and sponsored (with a smaller remuneration) by our University. It has a slightly different target and stands as mandatory curricular practice for some of our university students, interested in working within an open source project. Particularly, this is a very good opportunity to attract new contributors to your project! Write us, at cdl@rosedu.org, if you are interested.