Este timpul să le dați înapoi oamenilor care vă permit să utilizați internetul!

Mulți dezvoltatori sunt pasionați de proiectele open source și, din motive întemeiate, le folosesc în fiecare zi pentru a-și accelera munca. Există o mulțime de exemple de succes de soluții software open source, cum ar fi Linux (un sistem de operare) sau Reacţiona (o bibliotecă JavaScript). Aceste soluții sunt adesea bine elaborate și este o plăcere să lucrați cu acest tip de cod de înaltă calitate.

Așadar, să aruncăm o privire mai atentă asupra a ceea ce înseamnă open source și care sunt avantajele și dezavantajele pentru lucrul cu proiecte open source.

Ce este Open Source?

Termenul „open source” a fost inventat în industria dezvoltării de software și se referă la ceva ce oricine poate inspecta, modifica și partaja. Reprezintă o abordare specifică pentru crearea de programe de calculator care sărbătorește valorile colaborării, transparenței și dezvoltării orientate către comunitate.

Codul sursă deschisă este scris de dezvoltatori și pentru dezvoltatori.

Pentru a proteja toate părțile implicate în open source, proprietarul proiectului poate utiliza o licență Creative Commons. O licență Creative Commons (CC) permite tuturor să partajeze, să utilizeze și să construiască pe baza lucrării dvs.

Software open source este de obicei un produs software gratuit, unde dezvoltatorii au acces la codul sursă. Acestea pot îmbunătăți performanța programului, pot adăuga unele caracteristici și pot remedia erorile. Câteva exemple de astfel de software sunt LibreOffice, Mozilla Firefox și Chromium.

În schimb, există software proprietar, numit și „software sursă închisă”. Codul sursă al unui astfel de program poate fi inspectat sau modificat numai de către proprietarii săi. Unele exemple de software proprietar includ unele produse Microsoft, Adobe sau Apple.

Unele companii consideră software-ul open source ca normă, în timp ce altele preferă dezvoltarea de software open source. Și, cu siguranță, modelul open source are avantajele și dezavantajele sale.

Ce este grozav la dezvoltarea unui software open source?

beneficii open source

Beneficii personale

Dacă spun că dezvoltatorii open source sunt conduși de altruism și dorința de a-i ajuta pe ceilalți, mulți oameni care citesc acest articol pot zâmbi neîncrezători. Dar această motivație intrinsecă este principalul motiv pentru care majoritatea oamenilor lucrează la proiecte open source.

Nu subestimați importanța beneficiilor personale – acele sentimente de a fi de ajutor și auto-realizate.

Recunoașterea comunității

Oamenii de știință și medicii își împărtășesc experiența scriind articole științifice și participând la conferințe științifice. Designerii UI / UX își împărtășesc experiența Behance sau Dribbble. Scriitorii își imprimă cărțile sau le împărtășesc prin intermediul platformelor online. Muzicienii și producătorii de filme își împărtășesc munca cu lumea prin diferite servicii de streaming. De ce dezvoltatorii de software ar fi diferiți și ar dori să-și piardă oportunitatea de a primi recunoaștere?

Când lucrați sau executați proiecte open source, puteți obține recunoaștere din partea comunității de dezvoltatori în mai multe moduri, cum ar fi crearea unui profil GitHub excelent și participarea la evenimente precum Hacktoberfest.

S-ar putea să obțineți, de asemenea, reduceri, admitere gratuită la evenimente și o infrastructură bine dezvoltată pentru a vă derula proiectele. Lucrul la proiecte open source nu numai că vă economisește bani, dar vă inspiră și să folosiți toate cele mai bune instrumente disponibile în proiectele dvs.

Iată câțiva participanți la Lviv Hacktoberfest.
Iată câțiva participanți la Lviv Hacktoberfest.

Auto-publicitate

Dacă dumneavoastră sau compania dvs. participați activ la comunitatea open source, puteți câștiga o reputație excelentă. În acest fel, dacă sunteți dezvoltator individual sau independent, vă va fi mai ușor să găsiți un loc de muncă ca independent sau angajat cu normă întreagă. Dacă reprezentați o companie de dezvoltare software, vă va fi mai ușor să găsiți oameni dispuși să lucreze pentru dvs., parteneri dispuși să coopereze și clienți dispuși să solicite serviciile dvs. profesionale.

Acesta este motivul pentru care dezvoltarea de software open source creează o oportunitate de publicitate perfectă – o situație câștig-câștig atât pentru dezvoltatori, cât și pentru agențiile de dezvoltare.

Simțul valorii

Nu este nevoie să ascundem adevărul: epuizarea locurilor de muncă afectează munca dezvoltatorilor și strategiile de resurse umane ale furnizorilor de software. Dacă sunteți proprietarul unei companii, motivându-vă angajații să participe la dezvoltarea open source, le arătați că munca lor are valoare. Nu numai că vor lucra la proiectele dvs. comerciale, dar vor oferi și valoare comunității de dezvoltatori mai largi, lucrând la proiecte open source.

Ajutându-vă dezvoltatorii să atingă aceste sentimente de scop și valoare, îi mențineți interesați să lucreze cu dvs.

Același lucru este valabil și dacă sunteți dezvoltator independent. Angajarea în dezvoltarea de software open source vă va face munca semnificativă și nu veți crește să o urâți odată cu trecerea timpului.

Calitatea software-ului

Codul sursă deschisă are adesea o calitate superioară. Un software creat de o echipă de dezvoltatori poate avea o calitate mai scăzută decât cea dezvoltată de mii de dezvoltatori din întreaga lume, cu experiență în diferite tehnologii, industrii și proiecte. Iar erorile din software-ul open source sunt identificate foarte rapid, deoarece codul este în mod constant revizuit de mai mulți dezvoltatori.

Chiar și codul scris de un singur dezvoltator este adesea de calitate mai bună dacă este deschis. Dacă scrieți cod pe care îl veți vedea numai dvs. sau colegii apropiați, este posibil să nu vă pese prea mult de stilul de cod. Dar dacă scrieți cod pe care toată lumea îl poate vedea, veți face tot ce nu puteți pentru a arăta ca o maimuță de cod. Recenzii, contribuții și refactorizare din partea comunității sunt utile aici.

Securitatea datelor

Ar trebui să utilizați software open source pentru dezvoltarea aplicațiilor, deoarece este mai sigur. Comunitatea găsește și raportează prompt defectele de securitate pe care proprietarul software-ului le remediază de obicei imediat.

La rândul său, dacă există un defect de securitate într-un produs software propriu, nimeni nu va ști până când cineva nu va fi victima amenințării pe care o reprezintă.

De asemenea, produsele cu sursă deschisă nu pot să utilizeze și să abuzeze intenționat de datele utilizatorilor în mod intenționat, așa cum fac unele companii de software proprietar. Comunitatea ar descoperi acest abuz, iar reputația software-ului și a proprietarului acestuia ar fi distrusă.

Personalizare

Dezvoltarea unui software open source înseamnă, de obicei, că dezvolți un software ușor de personalizat. Deoarece codul sursă este deschis, un dezvoltator poate adăuga cu ușurință modificări la funcționalitatea interfeței.

De exemplu, Apache CloudStack este un software open source care facilitează cloud computing-ul. Un alt exemplu este platforma open source Botpress, care permite dezvoltatorilor să creeze cu ușurință chatboturi personalizate. Dezvoltatorii KeenEthics care sunt colaboratori ai Botpress se simt încântați când reușesc să simplifice viața altcuiva.

Open source este despre câștigarea și partajarea experienței. Uneori, vedeți că unui proiect de software open source îi lipsește ceva și completați acest gol contribuind la codul dvs. Alteori, înțelegi că ai putea face ceva mai bun. Open source vă ajută să faceți față plictiselii și să câștigați recunoașterea de la colegi.

Serghei Gornostaev
Sergey Gornostaev Dezvoltator complet

Ce nu este grozav la dezvoltarea unui software open source?

dezavantaje open source

Miscomunicații și neînțelegeri

Vă puteți aștepta ca solicitările să vă îmbunătățească produsul sau să vă ajute cu ceva, dar este posibil să aveți de-a face cu diferite tipuri de oameni. Unii s-ar putea aștepta să reacționați la solicitările lor 24/7. Alții ar putea deschide PR-uri, îmbunătățindu-vă produsul, dar va trebui să explicați regulile cu privire la modul în care lucrurile ar trebui pregătite și cum se îmbină în linia principală.

În cele din urmă, nu există nicio garanție că contribuțiile comunității nu se vor dovedi a fi de calitate inferioară. Acesta este motivul pentru care există șanse mari să refaceți codul cuiva și să lăsați oamenii dezamăgiți de faptul că nu combină modificările lor.

Amenințarea pentru valoarea de bază a afacerii

Nu ar trebui să deschideți niciodată nimic care are o valoare esențială pentru afacerea dvs. Dacă există un secret comercial – o idee sau o modalitate de implementare a acestuia care face afacerea dvs. unică, nu ar trebui să o deschideți astfel încât să nu devină disponibilă pentru concurenții dvs. Totuși, dacă aveți idei și instrumente care pot fi folosite de public, fără nicio pierdere pentru afacerea dvs. – deschideți-le.

De ce Open Source este ceea ce trebuie făcut

Dacă sunteți un utilizator de Internet (și cu siguranță sunteți), utilizați inevitabil o cantitate incredibilă de software liber open source. Inventatorii Internetului au conceput o mare parte din acesta ca proiecte open source și oricine îl folosește astăzi culege roadele efortului lor. De exemplu, cloud computing-ul se bazează în mare parte pe contribuții open source.

În plus, un sondaj realizat de Tidelift și The New Stack afirmă că 84% dintre dezvoltatorii de software folosesc open source în rutina lor profesională. Folosind experiența și cunoștințele altcuiva, de ce nu le împărtășești pe ale tale?

Dacă ne bucurăm de beneficiile sursei deschise, a da înapoi comunității este ceea ce trebuie făcut.

Participă la dezvoltarea Open Source!

Cum să înceapă? Deschideți depozitul GitHub către public și spuneți-i lumii despre acest lucru prin intermediul blogului dvs., a rețelelor sociale sau a forumurilor pentru dezvoltatori. Înregistrați-vă pe Știri despre hackeri deoarece există o mulțime de colaboratori open source care participă.

Aprovizionarea deschisă vă face să creșteți mai repede ca dezvoltator și aduce un rezultat util întregii comunități. În același timp, ar trebui să încercați să nu faceți rău comunității care vă oferă toate aceste lucruri open source. Contribuiți cu înțelepciune și ajutați-i pe ceilalți răspunzând la întrebări cu care vă puteți ajuta.

Ai o idee pentru un proiect?

Compania mea KeenEthics are multă experiență în open source dezvoltare web și dezvoltarea aplicațiilor mobile. Dacă sunteți gata să schimbați jocul și să începeți proiectul, nu ezitați Intrați în legătură.

Dacă v-a plăcut articolul, ar trebui să citiți cu siguranță un altul: Testare agilă: Cum să vă asigurați un software de înaltă calitate.

PS

Aș dori, de asemenea, să vă mulțumesc Alex Pletnov, CTO @ KeenEthics, pentru inspirație și contribuție la articol.

Articolul original postat pe blogul KeenEthics poate fi găsit aici: Ce este grozav la dezvoltarea Open Source și ce nu?