Itinuturo sa iyo ng wikiHow na ito kung paano magsisimulang bumuo at mapanatili ang libre, bukas na mapagkukunan ng software sa isang pamayanan ng programa. Habang ang mga taong gumagawa nito minsan ay tinutukoy bilang "mga hacker ng software", ang posisyon mismo ay higit na nakatuon sa paglikha at pag-aayos ng software kaysa masira ito. Kung interesado kang maging uri ng hacker na naghahanap at nagsasamantala sa mga kahinaan sa software o operating system, mangyaring tingnan ang aming artikulo sa pagiging isang hacker sa halip.
Mga hakbang
Hakbang 1. Maunawaan kung ano ang kinakailangan ng pag-unlad ng software
Ang pagiging isang hacker ng software ay nangangahulugang gagastos ka ng isang malaking halaga ng iyong oras sa pagbuo, pag-tweak, at pag-update ng libreng software upang masiyahan ang mga gumagamit at panatilihing nauugnay ang iyong software. Sa layuning ito, kakailanganin mong matugunan ang mga sumusunod na pamantayan:
- Magkaroon ng disenteng pag-unawa sa parehong isang wika ng system (hal., C ++) at isang wikang nagprograma (hal., Python)
- Alamin kung aling (mga) platform ang nais mong i-program para sa (hal., Windows, Android, atbp.)
- Maging handa na gugulin ang isang malaking halaga ng oras sa pag-aaral tungkol sa iyong napiling mga wika, platform, at genre ng software
Hakbang 2. Malaman na ang sinuman ay maaaring maging isang libreng hacker ng software
Taliwas sa paniniwala ng popular, ang pagkakaroon ng isang pambihirang pag-unawa sa matematika, nakaraang kaalaman sa pag-coding, at / o isang degree sa kolehiyo sa computer science (o katulad) ay hindi kinakailangan para malaman mo kung paano maging isang libreng hacker ng software.
Hangga't lehitimong interesado ka sa pag-alam kung paano bumuo ng software at handa kang tanggapin ang pagpuna kung naaangkop, walang dahilan upang isipin na hindi ka maaaring matagumpay na maging isang hacker ng software
Hakbang 3. Alamin ang iyong layunin sa pagtatapos
Ang pag-unlad ng software ay maaaring magamit para sa anumang bagay mula sa isang simpleng libangan sa gilid hanggang sa isang full-time na karera; ang pag-alam kung ano ang nais mong magawa bago ka magtakda upang malaman ang isang wika ng programa o pumili ng isang platform ay makakatulong na mapanatili kang nakatuon sa kalsada.
- Habang hindi mahigpit na kinakailangan, ang isang degree sa computer science o pag-unlad ng software ay makakatulong mapabilis ang iyong trabaho kung ang isang karera sa pag-unlad ng software ang iyong pangwakas na layunin.
- Kung ang iyong layunin ay simpleng lumikha ng isang app o isang programa na makakatulong sa mga gumagamit na makamit ang dating mahirap o imposibleng gawain, tiyakin na ang pinag-uusapan na software ay hindi pa nabubuo.
Hakbang 4. Tukuyin ang isang platform kung saan mo nais magtrabaho
Ang bawat pangunahing platform-Windows, macOS, iOS, Android, at Linux-ay may sariling pamayanan, ginustong mga wika ng programa, at mga indibidwal na pangangailangan. Alam kung aling platform kung saan ilalapat ang iyong software bago ka sumisid sa pag-unlad ng software ay mahalaga.
- Mahusay na magtrabaho sa parehong platform kung saan ka umuunlad. Halimbawa, kung bumubuo ka ng isang Android app, ang paggamit ng isang sistemang batay sa Unix tulad ng isang Mac o isang Linux computer ay mas mahusay kaysa sa paggamit ng Windows.
- Ang Linux ay isang karaniwang ginagamit (at libre) na solusyon para sa maraming mga developer ng software.
Hakbang 5. Pumili ng isang wikang pag-coding
Mayroong dalawang uri ng mga wika sa pag-coding; kakailanganin mong malaman ang hindi bababa sa isa sa bawat isa bago lumipat sa pagbuo, kahit na kailangan mong malaman ang maraming mga wika:
- Mga wika ng system - Isang wikang computer na ginamit upang makipag-ugnay nang direkta sa system. Kasama sa mga karaniwang halimbawa ang C, C ++, at Java.
- Mga wika sa pagprograma - Isang wikang ginamit upang idisenyo ang interface ng iyong software (hal., Kung ano ang titingnan ng mga gumagamit) pati na rin ang pagpapaandar nito. Kasama sa mga karaniwang halimbawa ang Python, Ruby, at Perl.
Hakbang 6. Kumportable sa linya ng utos
Ang bawat computer ay may application ng command line (hal., Command Prompt para sa Windows, Terminal para sa Mac at Linux, atbp.). Maaari mong gamitin ang linya ng utos upang makipag-ugnay sa mismong computer, na nagbibigay-daan sa iyo upang mag-isyu ng detalyadong mga utos kung kinakailangan.
Habang hindi mo gaganap ang karamihan ng iyong pag-unlad ng software mula mismo sa linya ng utos, kakailanganin mong gamitin ang linya ng utos upang magpatakbo ng ilang mga programa o isama ang mga utos ng software sa iyong computer
Hakbang 7. I-download at gamitin ang Notepad ++
Ang Notepad ++ ay isang napakahalagang mapagkukunan ng programa dahil pareho itong ginagawang madali upang masubaybayan ang pag-coding sa pamamagitan ng pagpapatupad ng mga visual aid at nagsisilbing isang tool na pang-edukasyon.
Habang sa huli ay gagamit ka ng iba't ibang mga editor ng teksto na batay sa linya ng utos upang magsulat ng isang malaking halaga ng iyong code, ang Notepad ++ ay isang phenomenal (at libre) na tool sa pag-aaral kapag una kang nagsisimula
Hakbang 8. Mag-install ng isang kapaligiran sa pag-unlad
Ang iyong mga napiling wika at platform ng malamang ay mayroong software ng pag-unlad na nagbibigay-daan sa iyo upang mai-save at subukan ang iyong mga proyekto mula sa iyong computer; ang nasabing software ay tinawag na isang "environment sa pag-unlad". Kung maaari, hanapin at i-install ang isang kapaligiran sa pag-unlad para sa iyong napiling wika bago ka magsimulang matutong mag-program.
- Kung bumubuo ka ng isang Android app, halimbawa, mag-download at mag-install ka ng development kit ng Android Studio.
- Ang mga gumagamit ng Java ay madalas na gumagamit ng isang kapaligiran sa pag-unlad tulad ng Eclipse.
Hakbang 9. Simulang alamin kung paano mag-program
Kapag alam mo kung aling wika ang nais mong gamitin, oras na upang magsimulang matuto kung paano ito gamitin. Mayroong maraming mga online tutorial-parehong libre at bayad na kung saan maaari kang makibahagi, at ang karamihan sa mga aklatan ay magdadala ng mga aklat na partikular sa wika ng programa (hal., C ++ para sa Dummies) na magbibigay-daan sa iyo na ituloy ang isang buong wika nang walang bayad.
Ang mga mapagkukunang libreng programa ay masagana sa online, kaya't gamitin ang mga ito sa iyong kalamangan bago mag-sign up para sa isang bayad na klase o bootcamp
Hakbang 10. Maghanap ng isang pamayanan na nagpapatakbo sa iyong ginustong kategorya
Ang mga proyektong bukas na mapagkukunan tulad ng mga matatagpuan sa SourceForge o GitHub ay madalas na may masugid na mga tagasunod; kung makakahanap ka ng isang proyekto na gumagamit ng parehong wika ng programa at / o may isang katulad na layunin sa iyong sariling proyekto, maaari kang sumali sa komunidad upang magdagdag ng mga mungkahi at obserbahan ang proseso ng pag-unlad.
Tulad ng anumang kasanayan, ang pagsasangkot sa proseso ng paglikha (kahit na nagmamasid ka lamang) ay ang pinakamahusay na paraan upang makakuha ng praktikal na karanasan
Hakbang 11. Makipag-ugnayan sa pamayanan
Maaari kang gumawa ng anumang bagay mula sa pag-post sa mga forum ng komunidad hanggang sa pagsisimula ng iyong sariling proyekto ng open source, ngunit ang pangunahing layunin ay upang patakbuhin ang iyong mga ideya at hadlang ng komunidad at pakinggan ang kanilang puna.
Kung sinisimulan mo ang iyong sariling proyekto ng bukas na mapagkukunan, maging handa na makompromiso sa komunidad sa mga tuntunin ng direksyon ng proyekto
Hakbang 12. Maghanap ng mga proyektong bukas-mapagkukunan upang magbigay ng kontribusyon
Tulad ng madalas na nangyayari sa pag-unlad ng software, ang iyong pangunahing ideya o proyekto ng alagang hayop ay maaaring isinasagawa ng isang pamayanan na may higit na karanasan kaysa sa iyo. Kung gayon, isaalang-alang ang paghiling na sumali sa proyekto. Parehas nitong mapapaunawa ang iyong pag-unawa sa kung paano gumagana ang mga proyekto sa software at tutulungan kang mabuhay ang iyong proyekto, kahit na sa isang setting ng pangkat.
Ang mga proyektong bukas na mapagkukunan ay maaaring hindi iyong layunin sa pagtatapos, ngunit nagsisilbing isang mahusay na paraan upang makita ang maraming magkakaibang pananaw na magkakasama upang mabuo ang isang produktong nakatuon sa user
Hakbang 13. Tanggapin ang mga pampublikong pagpuna sa iyong trabaho
Habang sumusulong ka sa iyong pag-unlad ng software at isumite ang iyong trabaho, mapapailalim ka sa mga pagpuna. Ang pakikinig sa puna ng komunidad ay makakatulong sa istraktura ng iyong pag-unlad sa hinaharap, ngunit magtuturo din ito sa iyo ng mahahalagang mga shortcut at pamamaraan para sa paglapit sa mga katulad na problema para sa mga susunod na proyekto.
Hindi lahat ng puna ay nakabubuo. Kung nakatanggap ka ng bastos o hindi kanais-nais na puna, tandaan na maging magalang kung pipiliin mong tumugon
Hakbang 14. Sumali sa mga hamon sa pag-unlad ng software, programa, o kumpetisyon
Madalas kang mahahanap ang mga hamon, bootcamp, lektura, klase, at tuwirang kumpetisyon sa mga forum ng iyong komunidad, sa mga lugar tulad ng Craigslist, at sa mga campus. Ang pag-sign up para sa anumang naturang kaganapan o kampo ay magbibigay sa iyo ng ilang may gabay na karanasan habang inilalagay ka sa isang kapaligiran na may mga kaparehong pag-iisip.
Ang isang pagpipilian ay ang programa ng Tag-init ng Code ng Google, na tumutulong sa mga mag-aaral na maging pamilyar sa mga proyekto ng bukas na mapagkukunan at pag-coding ng komunidad
Hakbang 15. Patuloy na paunlarin ang iyong mga kasanayan
Ang pagpapaunlad ng software ay isang patlang na magpapatuloy lamang na lumago habang umuusbong ang teknolohiya, kaya tiyaking patuloy kang natututo tungkol sa mga bagong proyekto, wika, operating system, at anumang iba pang nauugnay na impormasyon sa iyong ginustong lugar.
Karamihan sa tagumpay ng isang libreng software hacker ay nakasalalay sa pag-usisa. Hangga't patuloy kang nagtatanong at naghahanap ng mga sagot, ang iyong oras sa pag-unlad ng software ay magiging produktibo at mabuhay
Mga Tip
- Simula sa pamamagitan ng pag-aaral ng C (o C ++) at ng Python ay ilalagay ka sa medyo magandang kalagayan, kahit na ang Java ay isang tanyag na panimulang punto din.
- Sa huli, magtatapos ka sa pag-aaral ng maraming mga wika sa computer sa iyong oras bilang isang libreng hacker ng software.
- Ang computer programming ay maaaring mukhang nakakatakot, ngunit ito ay simpleng pagsasalita sa computer sa isang wika na naiintindihan ng computer.
Mga babala
- Hindi maipapayo na subukang buhayin ang isang inabandunang proyekto na nawala na sa naunang koponan.
- Iwasang magtanong ng anumang tanong na nauugnay sa mga batayan ng programa o mga tool sa pag-program sa isang pahina ng talakayan ng isang bukas na mapagkukunan. Ang oras ng isang libreng programmer ng software ay mahalaga. Sa halip, talakayin ang mga pangunahing kaalaman sa pagprogram sa mga komunidad para sa mga baguhan o bagong programmer.
- Ang pag-upo sa isang computer nang higit sa ilang oras sa bawat oras ay maaaring magkaroon ng pangmatagalang epekto sa iyong pangkalahatang kalusugan. Tandaan na bumangon at mag-inat, tumingin sa malayo sa screen, at lumipat ng kahit isang beses bawat bawat oras.
- Pagpasensyahan mo Tulad ng pag-aaral ng anumang kasanayan, ang pagiging isang libreng hacker ng software ay magtatagal ng oras at pagpapasiya.