Kumaha cara nyiptakeun proyék open source

Kumaha cara nyiptakeun proyék open sourceHiji festival IT bakal dilaksanakeun di St Petersburg minggu ieu TechTrain. Salah sahiji panyatur bakal Richard Stallman. Embox ogé ilubiung dina festival, sarta tangtu urang teu bisa malire topik software bébas. Éta sababna salah sahiji laporan urang disebut "Ti karajinan murid ka proyék opensource. Pangalaman Embox”. Éta bakal didedikasikeun pikeun sajarah pamekaran Embox salaku proyék open source. Dina artikel ieu abdi hoyong ngobrol ngeunaan gagasan utama anu, dina pamanggih kuring, pangaruh ngembangkeun proyék opensource. Artikel, kawas laporan, dumasar kana pangalaman pribadi.

Hayu urang mimitian ku hal basajan, jeung harti istilah opensource. Jelas, proyék open source mangrupikeun proyék anu ngagaduhan salah sahiji lisensi anu ngamungkinkeun aksés kana kode sumber proyék éta. Salaku tambahan, proyék kabuka hartosna pamekar pihak katilu tiasa ngarobih. Nyaéta, upami sababaraha perusahaan atanapi pamekar nyebarkeun kode produkna, sawaréh atanapi lengkep, éta henteu acan ngajantenkeun produk ieu janten proyék opensource. Tungtungna, naon waé kagiatan proyék kedah nyababkeun sababaraha hasil, sareng kabuka proyék nunjukkeun yén hasil ieu dianggo henteu ngan ku pamekar sorangan.

Kami moal nyabak kana masalah lisénsi kabuka. Ieu topik anu ageung teuing sareng kompleks anu peryogi panalungtikan anu jero. Cukup seueur tulisan sareng bahan anu saé anu parantos ditulis dina topik ieu. Tapi saprak kuring sorangan henteu ahli dina widang hak cipta, kuring ngan bakal nyebutkeun yén lisénsi kudu minuhan tujuan proyék. Contona, pikeun Embox pilihan BSD tinimbang lisénsi GPL teu kahaja.

Kanyataan yén hiji proyék open source kedah nyadiakeun kamampuhan pikeun nyieun parobahan sarta pangaruh ngembangkeun proyék open source nunjukkeun yén proyék ieu disebarkeun. Ngatur éta, ngajaga integritas sareng pagelaran langkung sesah dibandingkeun sareng proyék kalayan manajemén terpusat. Patarosan wajar timbul: naha proyék kabuka pisan? Jawabanna aya di daérah kelayakan komérsial; pikeun sababaraha kelas proyék, kauntungan tina pendekatan ieu langkung ageung biaya. Nyaéta, éta henteu cocog pikeun sadaya proyék sareng pendekatan kabuka umumna ditarima. Salaku conto, hese ngabayangkeun ngembangkeun sistem kontrol pikeun pembangkit listrik atanapi pesawat dumasar kana prinsip kabuka. Henteu, tangtosna, sistem sapertos kitu kedah kalebet modul dumasar kana proyék kabuka, sabab ieu bakal masihan sababaraha kaunggulan. Tapi batur kudu jawab produk ahir. Sanaos sistemna lengkep dumasar kana kodeu proyék kabuka, pamekar, parantos ngarangkep sadayana kana hiji sistem sareng ngadamel gedong sareng setélan khusus, dasarna nutup éta. Kodeu tiasa sayogi pikeun umum.

Aya ogé seueur mangpaat pikeun sistem ieu tina nyiptakeun atanapi nyumbang kana proyék open source. Sakumaha anu kuring parantos nyarios, kode sistem tungtung tiasa tetep sayogi umum. Naha, sabab écés yén teu mungkin saha waé anu gaduh pesawat anu sami pikeun nguji sistem éta. Ieu leres, tapi aya ogé anu hoyong pariksa bagian-bagian kode anu tangtu, atanapi, contona, batur tiasa mendakan yén perpustakaan anu dianggo henteu dikonpigurasi leres.

Mangpaat anu langkung ageung némbongan upami perusahaan nyayogikeun sababaraha bagian dasar sistem kana proyék anu misah. Contona, perpustakaan pikeun ngarojong sababaraha jenis protokol bursa data. Dina hal ieu, sanajan protokol husus pikeun wewengkon subyek dibikeun, Anjeun bisa babagi waragad pikeun ngajaga sapotong ieu sistem jeung pausahaan séjén ti wewengkon ieu. Salaku tambahan, spesialis anu tiasa ngulik sapotong sistem ieu dina domain umum ngabutuhkeun waktos langkung sakedik pikeun ngagunakeunana sacara efektif. Sarta pamustunganana, misahkeun sapotong kana hiji éntitas bebas nu pamekar pihak-katilu make ngamungkinkeun urang sangkan bagian ieu hadé, sabab urang kudu nawiskeun API éféktif, nyieun dokuméntasi, sarta kuring malah teu ngawangkong ngeunaan ngaronjatkeun sinyalna test.

Pausahaan tiasa nampi kauntungan komersil tanpa nyiptakeun proyék open-source; cukup pikeun spesialis na pikeun ilubiung dina proyék pihak katilu anu dianggo dina perusahaan. Barina ogé, sagala kauntungan tetep: karyawan nyaho proyék nu hadé, ku kituna aranjeunna ngagunakeun eta leuwih éféktif, pausahaan bisa mangaruhan arah ngembangkeun proyék, sarta pamakéan siap-dijieun, kode debugged écés ngurangan biaya parusahaan.

Mangpaat nyieun proyék opensource teu aya tungtungna. Hayu urang nyandak hiji komponén penting bisnis saperti pamasaran. Pikeun anjeunna, ieu mangrupikeun kotak pasir anu saé anu ngamungkinkeun anjeunna sacara efektif ngevaluasi syarat pasar.

Sareng tangtosna, urang henteu kedah hilap yén proyék opensource mangrupikeun cara anu épéktip pikeun nyatakeun diri anjeun salaku pamawa spésialisasi naon waé. Dina sababaraha kasus, ieu hiji-hijina jalan pikeun asup ka pasar. Contona, Embox mimiti salaku proyék pikeun nyieun hiji RTOS. Aya meureun teu kudu ngajelaskeun yén aya loba pesaing. Tanpa nyiptakeun komunitas, urang ngan saukur moal gaduh sumber daya anu cukup pikeun nyangking proyék ka pangguna akhir, nyaéta, pikeun pamekar pihak katilu pikeun ngamimitian nganggo proyék éta.

Komunitas mangrupikeun konci dina proyék opensource. Éta ngamungkinkeun anjeun sacara signifikan ngirangan biaya manajemén proyék, ngembangkeun sareng ngadukung proyék éta. Urang tiasa nyebatkeun yén tanpa komunitas teu aya proyék opensource pisan.

Seueur bahan anu parantos ditulis ngeunaan cara nyiptakeun sareng ngatur komunitas proyék open source. Pikeun henteu nyarioskeun deui fakta anu parantos dipikanyaho, kuring bakal nyobian fokus kana pangalaman Embox. Salaku conto, prosés nyiptakeun komunitas mangrupikeun masalah anu pikaresepeun. Nyaéta, seueur anu nyarioskeun kumaha ngatur komunitas anu parantos aya, tapi momen-momen nyiptakeunana kadang-kadang ditingali, nganggap ieu mangrupikeun.

Aturan utama nalika nyiptakeun komunitas proyék opensource nyaéta henteu aya aturan. Maksad abdi teu aya aturan universal, kawas euweuh bullet pérak, lamun ngan kusabab proyék pisan béda. Teu mungkin anjeun tiasa nganggo aturan anu sami nalika nyiptakeun komunitas pikeun perpustakaan logging js sareng sababaraha supir anu khusus. Leuwih ti éta, dina tahap béda pangwangunan proyék (jeung ku kituna masarakat), aturan robah.

Embox dimimitian salaku proyék mahasiswa sabab ngagaduhan aksés ka mahasiswa ti jurusan pemrograman sistem. Kanyataanna, urang asup sababaraha komunitas séjén. Urang bisa museurkeun pamilon masarakat ieu, siswa, dina prakték industri alus dina husus maranéhanana, karya ilmiah dina widang programming sistem, coursework jeung diplomas. Hartina, urang nuturkeun salah sahiji aturan dasar pangatur komunitas: anggota masarakat kudu narima hiji hal, sarta harga ieu kudu luyu jeung kontribusi pamilon urang.

Tahap salajengna pikeun Embox nyaéta milarian pangguna pihak katilu. Hal ieu kacida penting pikeun ngarti yén pamaké téh pamilon pinuh dina komunitas opensource. Biasana aya langkung seueur pangguna tibatan pamekar. Sareng supados hoyong janten kontributor pikeun proyék, aranjeunna mimiti ngagunakeunana dina hiji cara atanapi anu sanés.

Pamaké munggaran Embox nyaéta Departemen Sibernetik Téoritis. Aranjeunna ngusulkeun nyieun hiji firmware alternatif pikeun Lego Mindstorm. Sarta sanajan ieu masih pamaké lokal (urang bisa papanggih jeung aranjeunna sacara pribadi tur ngabahas naon maranéhna rék). Tapi éta kénéh pangalaman pohara alus. Contona, urang ngembangkeun demo nu bisa ditémbongkeun ka batur, sabab robot téh senang jeung narik perhatian. Hasilna, kami ngagaduhan pangguna pihak katilu anu mimiti naroskeun naon Embox sareng kumaha cara ngagunakeunana.

Dina tahap ieu, urang kudu mikir ngeunaan dokuméntasi, ngeunaan sarana komunikasi jeung pamaké. Henteu, tangtosna, urang mikirkeun hal-hal penting ieu sateuacanna, tapi éta prématur sareng henteu masihan pangaruh anu positif. Pangaruhna rada négatif. Hayu atuh masihan anjeun sababaraha conto. Kami nganggo googlecode, anu wikina ngadukung multibasa. Kami nyiptakeun halaman dina sababaraha basa, sanés ngan ukur Inggris sareng Rusia, dimana urang boro tiasa komunikasi, tapi ogé Jerman sareng Spanyol. Hasilna, katingalina pikaseurieun pisan nalika ditaroskeun dina basa ieu, tapi urang henteu tiasa ngajawab pisan. Atawa aranjeunna ngenalkeun aturan ngeunaan nulis dokuméntasi jeung commenting, tapi saprak API robah rada sering tur nyata, tétéla yén dokuméntasi kami geus luntur sarta leuwih nyasabkeun ti eta mantuan.

Hasilna, sagala usaha urang, sanajan nu salah, ngarah ka penampilan pamaké éksternal. Malahan palanggan komérsial muncul anu hoyong RTOS sorangan dikembangkeun pikeun anjeunna. Sareng kami ngembangkeun éta kusabab kami gaduh pangalaman sareng sababaraha dasar. Di dieu anjeun kedah ngobrol ngeunaan momen anu saé sareng anu goréng. Abdi badé ngamimitian ku anu goréng. Kusabab loba pamekar anu kalibet dina proyék ieu dina dasar komérsial, masarakat éta geus rada teu stabil sarta dibagi, nu tangtu moal bisa mangaruhan ngembangkeun proyék. Faktor tambahan nyaéta yén arah proyék disetél ku hiji palanggan komérsial, sareng tujuanana sanés pangwangunan proyék éta. Sahenteuna ieu sanés tujuan utama.

Di sisi séjén, aya sababaraha aspék positif. Kami ngagaduhan pangguna pihak katilu anu leres. Ieu mah ngan ukur nasabah, tapi ogé jalma anu dimaksudkeun pikeun sistem ieu. Motivasi pikeun ilubiung dina proyék geus ngaronjat. Barina ogé, lamun ogé bisa nyieun duit tina bisnis metot, éta salawasna nice. Sareng anu paling penting, urang nguping hiji kahayang ti para nasabah, anu dina waktos éta sigana gélo pikeun urang, tapi anu ayeuna mangrupikeun ide utama Embox, nyaéta, ngagunakeun kode anu parantos dikembangkeun dina sistem. Ayeuna ide utama Embox nyaéta ngagunakeun parangkat lunak Linux tanpa Linux. Hartina, aspék positif utama contributing kana ngembangkeun salajengna tina proyék éta realisasi yén proyék dipaké ku pamaké pihak-katilu, sarta eta kudu ngajawab sababaraha masalah maranéhanana.

Dina waktos éta, Embox parantos ngalangkungan ruang lingkup proyék mahasiswa. Faktor pangwatesan utama dina ngembangkeun proyék numutkeun modél murid nyaéta motivasi pamilon. Siswa ilubiung nalika nuju diajar, sareng nalika lulus, kedah aya motivasi anu béda. Upami motivasi henteu némbongan, murid ngan saukur lirén ilubiung dina proyék éta. Lamun urang tumut kana akun yén siswa mimitina kudu dilatih, tétéla yén maranéhna jadi spesialis alus ku waktu aranjeunna lulus, tapi kontribusi maranéhanana pikeun proyék, alatan inexperience, teu pisan badag.

Sacara umum, urang lancar ngaléngkah ka titik utama anu ngamungkinkeun urang ngobrol ngeunaan nyiptakeun proyék opensource - nyiptakeun produk anu bakal ngajawab masalah pangguna na. Sakumaha anu dijelaskeun di luhur, harta utama proyék opensource nyaéta komunitasna. Leuwih ti éta, anggota masarakat utamana pamaké. Tapi ti mana aranjeunna asalna nalika teu aya anu dianggo? Janten tétéla éta, sapertos sareng proyék non-opensource, anjeun kedah difokuskeun nyiptakeun MVP (produk giat minimum), sareng upami éta dipikaresep ku pangguna, maka komunitas bakal muncul di sekitar proyék éta. Upami anjeun kalibet dina nyiptakeun komunitas ngan ukur ngalangkungan PR komunitas, nyerat wiki dina sadaya basa di dunya, atanapi ngabenerkeun alur kerja git dina github, maka ieu sigana henteu masalah dina tahap awal proyek. Tangtosna, dina tahap anu pas ieu henteu ngan ukur penting, tapi ogé hal anu diperyogikeun.

Dina kacindekan abdi hoyong nunjuk kaluar komentar, dina pamanggih kuring, reflecting ekspektasi pamaké ti hiji proyék opensource:

Kuring serius pamikiran ngeunaan pindah ka OS ieu (sahenteuna coba. Aranjeunna nuju aktip pursuing sarta ngalakukeun hal cool).

PS On TechTrain Urang bakal gaduh saloba tilu laporan. Hiji ngeunaan open source sareng dua ngeunaan embedded (sareng anu praktis). Di stand urang bakal ngalaksanakeun kelas master on programming microcontrollers ngagunakeun Embox. Sakumaha biasa, kami bakal mawa hardware sareng ngantepkeun anjeun ngaprogram éta. Aya ogé bakal quest jeung kagiatan lianna. Datang ka festival jeung stand kami, éta bakal senang.

sumber: www.habr.com

Tambahkeun komentar