Wéi en Open Source Projet erstellen

Wéi en Open Source Projet erstellenDës Woch gëtt zu Sankt Petersburg en IT-Festival ofgehalen TechTrain. Ee vun de Spriecher wäert de Richard Stallman sinn. Embox bedeelegt och um Festival, an natierlech konnten mir d'Thema vun gratis Software net ignoréieren. Dofir gëtt ee vun eise Berichter genannt "Vun Schülerhandwierker bis Opensource Projeten. Embox Erfahrung”. Et gëtt der Geschicht vun der Embox Entwécklung als Open Source Projet gewidmet. An dësem Artikel wëll ech iwwer d'Haaptideeën schwätzen, déi menger Meenung no d'Entwécklung vun Opensource Projeten beaflossen. Den Artikel, wéi de Bericht, baséiert op perséinlecher Erfahrung.

Loosst eis mat eppes einfach ufänken, mat der Definitioun vum Begrëff Opensource. Natierlech ass en Open Source Projet e Projet deen eng vun de Lizenzen huet déi Zougang zum Quellcode vum Projet erlaabt. Zousätzlech heescht en oppene Projet datt Drëtt-Partei Entwéckler Ännerungen maache kënnen. Dat ass, wann eng Firma oder Entwéckler de Code vu sengem Produkt publizéiert, deelweis oder komplett, mécht dëst dëst Produkt nach net en Opensource-Projet. A schliisslech muss all Projetaktivitéit zu enger Aart Resultat féieren, an d'Ouverture vum Projet implizéiert datt dëst Resultat net nëmme vun den Entwéckler selwer benotzt gëtt.

Mir wäerten d'Problemer vun oppene Lizenzen net beréieren. Dëst ass ze grouss a komplex en Thema dat eng déif Enquête erfuerdert. Zimlech vill gutt Artikelen a Material sinn iwwer dëst Thema geschriwwen. Mee well ech selwer keen Expert am Beräich vum Copyright sinn, wäert ech just soen datt d'Lizenz den Ziler vum Projet entspriechen muss. Zum Beispill, fir Embox war d'Wiel vun enger BSD anstatt eng GPL Lizenz net zoufälleg.

D'Tatsaach datt en Open Source Projet d'Fäegkeet sollt ubidden Ännerungen ze maachen an d'Entwécklung vum Open Source Projet ze beaflossen implizéiert datt de Projet verdeelt gëtt. D'Gestioun, d'Integritéit an d'Leeschtung erhalen ass vill méi schwéier am Verglach mat engem Projet mat zentraliséierter Gestioun. Eng raisonnabel Fro stellt sech: Firwat maachen iwwerhaapt Projeten op? D'Äntwert läit am Beräich vun der kommerziell Machbarkeet; fir eng gewësse Klass vu Projete sinn d'Virdeeler vun dëser Approche méi héich wéi d'Käschte. Dat ass, et ass net gëeegent fir all Projeten an eng oppe Approche ass allgemeng akzeptabel. Zum Beispill ass et schwéier ze virstellen datt e Kontrollsystem fir eng Kraaftwierk oder e Fliger baséiert op engem oppene Prinzip entwéckelt. Nee, natierlech, esou Systemer sollen Moduler baséiert op oppe Projeten enthalen, well dëst eng Rei vu Virdeeler gëtt. Mee een muss fir d'Finale Produit verantwortlech sinn. Och wann de System komplett op de Code vun oppene Projeten baséiert ass, mécht den Entwéckler, alles an engem System verpackt a spezifesch Builds an Astellungen, am Wesentlechen zou. De Code kann ëffentlech verfügbar sinn.

Et ginn och vill Virdeeler fir dës Systemer vu Schafung oder Contributioun zu Open Source Projeten. Wéi ech scho gesot hunn, kann den Endsystemcode ëffentlech verfügbar bleiwen. Firwat, well et ass evident datt et onwahrscheinlech ass datt iergendeen dee selwechte Fliger huet fir de System ze testen. Dëst ass wouer, awer et ka vläicht een sinn dee bestëmmte Sektioune vum Code kontrolléiere wëllt, oder zum Beispill een entdecke kann datt d'Bibliothéik déi benotzt gëtt net ganz korrekt konfiguréiert ass.

En nach méi grousse Virdeel erschéngt wann d'Firma e Basisdeel vum System an e separate Projet verdeelt. Zum Beispill eng Bibliothéik fir eng Zort Datenaustauschprotokoll z'ënnerstëtzen. An dësem Fall, och wann de Protokoll spezifesch fir e bestëmmte Fachberäich ass, kënnt Dir d'Käschte fir dëst Stéck System z'erhalen mat anere Firmen aus dësem Beräich deelen. Zousätzlech brauche Spezialisten, déi dëst Stéck vum System am Domaine public studéiere kënnen, vill manner Zäit fir se effektiv ze benotzen. A schlussendlech, e Stéck an eng onofhängeg Entitéit ze trennen, déi Drëtt-Partei Entwéckler benotzen erlaabt eis dësen Deel besser ze maachen, well mir musse effektiv APIen ubidden, Dokumentatioun erstellen, an ech schwätzen net emol iwwer d'Verbesserung vun der Testdeckung.

Eng Firma kann kommerziell Virdeeler kréien ouni Open-Source Projeten ze kreéieren; et ass genuch fir seng Spezialisten un Drëtt-Partei-Projete matzemaachen, déi an der Firma benotzt ginn. Nodeems all d'Virdeeler bleiwen: Mataarbechter kennen de Projet besser, dofir benotze se se méi effektiv, d'Firma kann d'Richtung vun der Entwécklung vum Projet beaflossen, an d'Benotzung vu fäerdege, debugged Code reduzéiert selbstverständlech d'Käschte vun der Firma.

D'Virdeeler fir Opensource Projeten ze kreéieren sinn net do. Loosst eis sou e wichtege Bestanddeel vum Geschäft wéi Marketing huelen. Fir hien ass dëst eng ganz gutt Sandkëscht déi him erlaabt effektiv Maartfuerderungen ze evaluéieren.

An natierlech däerfe mir net vergiessen datt en Opensource-Projet en effektive Wee ass fir Iech als Carrier vun all Spezialisatioun ze deklaréieren. A verschiddene Fäll ass dëst deen eenzege Wee fir op de Maart ze kommen. Zum Beispill huet d'Embox ugefaang als e Projet fir en RTOS ze kreéieren. Et ass wahrscheinlech net néideg ze erklären datt et vill Konkurrenten gëtt. Ouni eng Gemeinschaft ze kreéieren, hätte mir einfach net genuch Ressourcen gehat fir de Projet un den Endbenotzer ze bréngen, dat heescht, fir Drëtt-Partei Entwéckler de Projet ze benotzen.

D'Gemeinschaft ass Schlëssel an engem Opensource Projet. Et erlaabt Iech de Projet Gestiounskäschte wesentlech ze reduzéieren, de Projet z'entwéckelen an z'ënnerstëtzen. Mir kënne soen datt ouni Gemeinschaft guer kee Opensource Projet gëtt.

Vill Material ass geschriwwe ginn wéi een eng Open Source Projet Gemeinschaft erstellt a verwaltet. Fir net scho bekannte Fakten z'erzielen, probéieren ech op d'Erfahrung vun Embox ze fokusséieren. Zum Beispill ass de Prozess fir eng Gemeinschaft ze kreéieren e ganz interessant Thema. Dat ass, vill erzielen wéi eng existent Gemeinschaft ze verwalten, awer d'Momenter vu senger Schafung ginn heiansdo iwwersinn, wann Dir dëst als gegeben betruecht.

D'Haaptregel wann Dir eng Opensource Projet Gemeinschaft erstellt ass datt et keng Reegele gëtt. Ech mengen et gëtt keng universell Reegelen, sou wéi et keng Sëlwerkugel gëtt, wann nëmmen well d'Projete ganz ënnerschiddlech sinn. Et ass onwahrscheinlech datt Dir déiselwecht Regele benotze kënnt wann Dir eng Gemeinschaft fir eng js Logbibliothéik an e puer héich spezialiséierte Chauffer erstellt. Desweideren, op verschidden Etappe vun Entwécklung vum Projet (an dofir der Communautéit), d'Regele änneren.

Embox huet als Studenteprojet ugefaang well et Zougang zu Studenten aus der Systemprogramméierungsdepartement hat. Tatsächlech ware mir an eng aner Gemeinschaft eragaang. Mir kënnen d'Participanten vun dëser Gemeinschaft, Studenten, a gudder industrieller Praxis an hirer Spezialitéit interesséieren, wëssenschaftlech Aarbecht am Beräich vun der Systemprogramméierung, Coursen an Diplomer. Dat ass, mir hunn ee vun de Grondregele vun der Organisatioun vun enger Gemeinschaft gefollegt: Gemeinschaftsmembere mussen eppes kréien, an dëse Präis muss dem Bäitrag vum Participant entspriechen.

Déi nächst Etapp fir Embox war d'Sich no Drëtt Partei Benotzer. Et ass ganz wichteg ze verstoen datt d'Benotzer voll Participanten an der Opensource Gemeinschaft sinn. Et gi meeschtens méi Benotzer wéi Entwéckler. A fir e Bäitrag zu engem Projet ze wëllen, fänken se fir d'éischt op déi eng oder aner Manéier ze benotzen.

Déi éischt Benotzer vun Embox waren den Departement vun Theoretesch Cybernetik. Si hu virgeschloen eng alternativ Firmware fir Lego Mindstorm ze kreéieren. An och wann dës nach ëmmer lokal Benotzer waren (mir konnten eis perséinlech mat hinnen treffen an diskutéieren wat se wollten). Mä et war nach eng ganz gutt Erfahrung. Zum Beispill hu mir Demos entwéckelt, déi deenen aneren gewise kënne ginn, well Roboter Spaass hunn an oppassen. Als Resultat hu mir wierklech Drëtt Partei Benotzer déi ugefaang ze froen wat Embox ass a wéi se se benotzen.

Op dëser Etapp hu mir missen iwwer Dokumentatioun denken, iwwer Kommunikatiounsmëttel mat de Benotzer. Nee, natierlech hu mir iwwer dës wichteg Saache virdru geduecht, awer et war ze fréi an huet kee positiven Effekt ginn. Den Effekt war éischter negativ. Loosst mech Iech e puer Beispiller ginn. Mir hunn googlecode benotzt, deem seng Wiki d'Méisproochegkeet ënnerstëtzt huet. Mir hunn Säiten a verschiddene Sproochen erstallt, net nëmmen op Englesch a Russesch, an deenen mir kaum kommunizéiere konnten, mä och Däitsch a Spuenesch. Als Resultat gesäit et ganz lächerlech aus wann se an dëse Sprooche gefrot ginn, awer mir kënnen iwwerhaapt net beäntweren. Oder si hunn d'Regele fir d'Dokumentatioun ze schreiwen an ze kommentéieren agefouert, awer well d'API zimmlech dacks a bedeitend geännert huet, huet sech erausgestallt datt eis Dokumentatioun al ass a méi irféierend war wéi se gehollef huet.

Als Resultat hunn all eis Efforten, och déi falsch, zum Erscheinungsbild vun externe Benotzer gefouert. An och e kommerziellen Client koum op, dee wollt datt säin eegene RTOS fir hien entwéckelt gëtt. A mir hunn et entwéckelt well mir Erfahrung hunn an e puer Grondaarbechten. Hei musst Dir souwuel iwwer déi gutt wéi déi schlecht Momenter schwätzen. Ech fänke mat de schlechten un. Well vill Entwéckler op kommerziell Basis an dësem Projet involvéiert waren, war d'Gemeinschaft schonn zimlech instabil an opgedeelt, wat natierlech net anescht wéi d'Entwécklung vum Projet beaflosst. En zousätzleche Faktor war datt d'Richtung vum Projet vun engem kommerziellen Client festgeluecht gouf, a säi Zil war net d'Weiderentwécklung vum Projet. Op d'mannst war dëst net d'Haaptziel.

Op der anerer Säit waren et eng Rei positiv Aspekter. Mir hu wierklech Drëtt Partei Benotzer. Et war net nëmmen de Client, mee och déi fir déi dëse System geduecht war. D'Motivatioun fir um Projet matzemaachen ass eropgaang. No allem, wann Dir och Sue kënnt aus engem interessanten Geschäft maachen, ass et ëmmer gutt. A virun allem hu mir e Wonsch vun de Clienten héieren, deen deemools fir eis verréckt war, awer deen elo d'Haaptidee vun der Embox ass, nämlech de schonn entwéckelte Code am System ze benotzen. Elo ass d'Haaptidee vun Embox Linux Software ouni Linux ze benotzen. Dat ass, den Haapt positiven Aspekt zu der Weiderentwécklung vum Projet bäigedroen war d'Realiséierung datt de Projet vun Drëttubidder Benotzer benotzt gëtt, an et soll e puer vun hire Problemer léisen.

Deemools war d'Embox schonn iwwer den Ëmfang vun engem Studenteprojet erausgaang. Den Haaptbegrenzende Faktor bei der Entwécklung vum Projet no dem Studentemodell ass d'Motivatioun vun de Participanten. Studente bedeelegen sech wärend se studéieren, a wann se ofgeschloss sinn, sollt et eng aner Motivatioun sinn. Wann d'Motivatioun net erschéngt, stoppt de Schüler einfach um Projet matzemaachen. Wa mir Rechnung droen datt d'Studenten als éischt trainéiert musse ginn, stellt sech eraus datt si gutt Spezialisten ginn, wann se ofgeschloss sinn, awer hire Bäitrag zum Projet, wéinst Onerfahrung, ass net ganz grouss.

Am Allgemengen réckelen mir glat op den Haaptpunkt, deen eis erlaabt iwwer d'Schafe vun engem Opensource-Projet ze schwätzen - e Produkt ze kreéieren deen d'Problemer vu senge Benotzer léise géif. Wéi ech uewen erkläert hunn, ass d'Haapteigenschaft vun engem Opensource Projet seng Gemeinschaft. Ausserdeem sinn Gemeinschaftsmemberen haaptsächlech Benotzer. Awer wou kommen se hier wann et näischt ze benotzen ass? Also et stellt sech eraus datt, grad wéi mat engem Net-Opensource-Projet, Dir musst fokusséiere fir e MVP (Minimum viable Produkt) ze kreéieren, a wann et d'Benotzer interesséiert, da erschéngt eng Gemeinschaft ronderëm de Projet. Wann Dir eng Gemeinschaft engagéiert nëmmen duerch Gemeinschafts-PR ze kreéieren, eng Wiki an alle Sprooche vun der Welt ze schreiwen oder de Git Workflow op Github korrekt ze maachen, dann ass dëst onwahrscheinlech an de fréie Stadien vum Projet wichteg. Natierlech, op de passenden Etappe sinn dat net nëmme wichteg, mä och néideg Saachen.

Als Ofschloss wëll ech drop hiweisen commentaire, menger Meenung no, reflektéiert d'Benotzer Erwaardungen vun engem Opensource Projet:

Ech denken eescht iwwer dëst OS ze wiesselen (op d'mannst probéieren. Si verfollegen et aktiv a maachen cool Saachen).

PS op TechTrain Mir wäerten esou vill wéi dräi Berichter hunn. Een iwwer Open Source an zwee iwwer embedded (an een ass praktesch). Um Stand wäerte mir e Masterclass iwwer d'Programméiere vu Mikrokontroller maachen Embox. Wéi gewinnt wäerte mir d'Hardware bréngen a loossen Iech se programméieren. Et gëtt och eng Quest an aner Aktivitéiten. Kommt op de Festival an op eise Stand, et gëtt Spaass.

Source: will.com

Setzt e Commentaire