Станьце праграмістам адкрытага праграмнага забеспячэння

Аўтар: Morris Wright
Дата Стварэння: 24 Красавік 2021
Дата Абнаўлення: 1 Ліпень 2024
Anonim
🤑 🤑 7 самых востребованных и самых высокооплачиваемых вакансий в ПРОГРАММИРОВАНИИ 💪
Відэа: 🤑 🤑 7 самых востребованных и самых высокооплачиваемых вакансий в ПРОГРАММИРОВАНИИ 💪

Задаволены

Напісанне і выкарыстанне адкрытага праграмнага забеспячэння - гэта не проста форма праграмавання (якую ў свеце праграмістаў таксама называюць "хакерствам"), гэта свайго роду філасофія. Хоць вам трэба ведаць толькі мову праграмавання, каб мець магчымасць праграмаваць, гэты артыкул распавядае пра тое, як далучыцца да супольнасці, завесці сяброў, супрацоўнічаць у вялікіх праектах і стаць паважаным спецыялістам з профілем, якога вы не можаце знайсці ў іншым месцы. У свеце адкрытага праграмнага забеспячэння вам даволі лёгка могуць быць прызначаны задачы, якія толькі элітныя праграмісты вышэйшага ўзроўню могуць рабіць у кампаніі. Падумайце, колькі вопыту вам гэта можа прынесці. Аднак, як толькі вы вырашылі стаць праграмістам з адкрытым праграмным забеспячэннем, вы павінны быць гатовыя ўкласці час у гэтую мэту. Гэта таксама датычыцца, калі вы ўжо студэнт ІТ. Заўважце, гэты артыкул не пра тое, як стаць хакерам ці ўзломшчыкам.

Крок

  1. Загрузіце добры дыстрыбутыў Unix. GNU / Linux - адзін з самых папулярных для праграмавання, але GNU Hurd, BSD, Solaris і (у пэўнай ступені) Mac OS X таксама часта выкарыстоўваюцца.
  2. Даведайцеся, як карыстацца камандным радком. Калі вы карыстаецеся камандным радком, вы можаце зрабіць нашмат больш з Unix-падобнымі аперацыйнымі сістэмамі.
  3. Вывучайце некаторыя папулярныя мовы праграмавання, пакуль не дасягнеце больш-менш здавальняючага ўзроўню. У адваротным выпадку вы не можаце ўнесці код (найбольш важную частку любога праграмнага праекта) у адкрытае праграмнае супольнасць. Некаторыя крыніцы прапануюць пачынаць адразу з дзвюх моў: адной сістэмнай мовы (C, Java ці аналагічнай) і мовы сцэнарыяў (Python, Ruby, Perl ці падобнай).
  4. Каб быць больш прадуктыўнымі, вам патрэбен NetBeans альбо аналагічнае інтэграванае асяроддзе распрацоўкі.
  5. Навучыцеся карыстацца прасунутым рэдактарам, напрыклад, vi або Emacs. Яны маюць больш высокі ўзровень навучання, але вы можаце зрабіць з імі нашмат больш.
  6. Даведайцеся пра кантроль версій. Кантроль версій - гэта, напэўна, найважнейшы інструмент сумеснай распрацоўкі агульнага праграмнага забеспячэння. Зразумець, як ствараць і прымяняць патчы. Большая частка адкрытай распрацоўкі праграмнага забеспячэння ў супольнасці ажыццяўляецца шляхам стварэння, абмеркавання і прымянення розных патчаў.
  7. Знайдзіце прыдатны невялікі адкрыты праект праграмнага забеспячэння, у якім вы зможаце лёгка ўдзельнічаць, каб набрацца вопыту. Большасць такіх праектаў у гэтыя дні можна знайсці на SourceForge.net. Прыдатны праект павінен уключаць:
    1. Карыстайцеся мовай праграмавання, якую ведаеце.
    2. Будзьце актыўныя, з апошнімі рэлізамі.
    3. Ужо складаецца з трох-пяці распрацоўшчыкаў.
    4. Для выкарыстання кантролю версій.
    5. Ёсць частка, з якой вы можаце пачаць працу адразу, без неабходнасці моцна мяняць існуючы код.
    6. У дадатак да кода, добры праект таксама мае актыўныя спісы абмеркаванняў, справаздачы пра памылкі, атрымлівае і рэалізуе запыты на паляпшэнне і падобныя мерапрыемствы.
  8. Звяжыцеся з адміністратарам абранага праекта. У невялікім праекце з невялікай колькасцю распрацоўшчыкаў ваша дапамога звычайна прымаецца адразу.
  9. Уважліва чытайце правілы праекта і больш-менш выконвайце іх. Правілы стылю праграмавання альбо неабходнасць дакументаваць змены ў асобным тэкставым файле спачатку могуць падацца смешнымі. Аднак мэта гэтых правіл - даць магчымасць сумеснай працы - і большасць праектаў працуе з імі.
  10. Працуйце над гэтым праектам некалькі месяцаў. Уважліва слухайце, што скажуць адміністратар і іншыя ўдзельнікі праекта. Акрамя праграмавання, вам трэба шмат чаму навучыцца. Але калі вам нешта сапраўды не падабаецца, проста спыніцеся і пераключыцеся на іншы праект.
  11. Не затрымайцеся ў падземным праекце занадта доўга. Як толькі вы апынецеся ў стане паспяхова працаваць у гэтай камандзе, пара пачаць шукаць нешта больш сур'ёзнае.
  12. Шукайце сур'ёзную праграму адкрытага праграмнага забеспячэння на высокім узроўні альбо праект з адкрытым зыходным кодам. Большасць такіх праектаў належыць арганізацыям GNU або Apache.
  13. Паколькі мы робім тут сур'ёзны скачок, вы павінны прыняць да ўвагі значна менш цёплы прыём. Хутчэй за ўсё ўпершыню вам будзе прапанавана запусціць без прамога доступу да сховішча кода. Аднак папярэдні андэграўндны праект павінен быў вас шмат чаму навучыць - так што пасля некалькіх месяцаў унёску ў плённую працу вы можаце запатрабаваць правы, якія, на вашу думку, павінны быць.
  14. Вазьміцеся за сур'ёзную задачу і вырабіце яе. Час. Ня бойся. Працягвайце, нават калі вы выявіце, што задача нашмат больш складаная, чым вы думалі першапачаткова - на гэтым этапе важна не здавацца.
  15. Калі можаце, звярніцеся ў Google "Summer of Code", каб укласці грошы ў гэтую авантуру. Але не хвалюйцеся, калі заяўка не будзе прынята, паколькі ў іх значна менш фінансаваных пазіцый, чым у сапраўды добрых праграмістаў.
  16. Знайдзіце прыдатную канферэнцыю, якая праходзіць побач ("дні Linux" ці падобнае) і паспрабуйце прадставіць свой праект там (увесь праекті не толькі тую частку, якую вы запраграмавалі). Пасля таго, як вы згадаеце, што прадстаўляеце сур'ёзны бясплатны / адкрыты зыходны праект, арганізатары часта кампенсуюць вас за кошт канферэнцыі (у адваротным выпадку канферэнцыя ў любым выпадку будзе непрыдатнай). Вазьміце з сабой ноўтбук Linux (калі ён ёсць) і запусціце некалькі дэма. Спытаеце кіраўніка праекта пра матэрыялы, якія вы можаце выкарыстаць для падрыхтоўкі прэзентацыі ці плаката.
  17. Шукайце ў Інтэрнэце паведамленні пра падзею ўстаноўкі побач і паспрабуйце спачатку прыняць удзел у якасці карыстальніка (звярніце ўвагу на ўсе праблемы, якія ўзнікаюць, і тое, як хакеры іх выпраўляюць), і прапануйце ўсталяваць праграмы ў наступны раз.
  18. Выканайце заданне, праверце сваю працу з дапамогай аўтаматычных тэстаў і ўнясіце свой уклад у праект. Гатова! Каб быць упэўненым, паспрабуйце асабіста сустрэцца з некаторымі праграмістамі праекта і падняць па выніку келіх піва.
  19. Для лепшага разумення паглядзіце рэальны прыклад гісторыі распрацоўкі адкрытага праграмнага забеспячэння (гл. Вышэй). Кожная крывая, якая расце, уяўляе сабой уклад (радкі кода) аднаго распрацоўніка. Распрацоўшчыкі, як правіла, з узростам становяцца менш актыўнымі, але праект часта паскараецца, нават калі да яго далучаюцца новыя людзі. Такім чынам, калі вы прыбываеце з нейкімі карыснымі навыкамі ў кішэні, няма ніякіх прычын, па якіх каманда не павінна запрашаць вас.

Парады

  • Перш чым задаваць пытанне аб практычных патрабаваннях у рамках праекта, шукайце адказ у праектнай дакументацыі і архівах спісаў рассылання.
  • Заўсёды спрабуйце скончыць любую распачатую працу па праграмаванні. Не можа быць пабудаваны, не можа працаваць, збой сістэмы? Там быць прычыны ўсяго, і калі ў вас ёсць зыходны код, звычайна гэта азначае, што ў вас ёсць сістэма добра можа прымусіць вас рабіць усё, што заўгодна, асабліва пры дапамозе онлайн-даследаванняў. Гэта правіла, вядома, мае межы, але сапраўды важна ніколі не здавацца занадта лёгка.
  • Назавіце сябе праграмістам (альбо хакерам) толькі пасля таго, як вас прызнаюць такімі некаторыя рэальныя суполкі хакераў.
  • Напачатку выберыце клас, модуль ці іншы блок, дзе ў дадзены момант ніхто не працуе вельмі актыўна. Сумесная праца ў адным класе ці нават на пасадзе патрабуе большага майстэрства і клопату з усіх бакоў.
  • Працадаўцы некаторых хакераў / праграмістаў выглядаюць дастаткова матываванымі, каб дазволіць узносы ў працоўны час (звычайна таму, што ўстанова выкарыстоўвае бясплатную / адкрытую праграму, якую распрацоўвае праграміст). Падумайце, магчыма, вы зможаце атрымаць хаця б частку часу, неабходнага такім чынам.
  • Калі ў вас усё яшчэ недастаткова ўпэўненасці ў сабе, пачніце з нейкай часткі кода, якая, на вашу думку, адсутнічае і якую можна напісаць з нуля. Змены ў існуючы код значна часцей падвяргаюцца крытыцы.

Папярэджанні

  • Ваш статус хакера ў супольным праекце хутчэй адлюстроўвае ваша сучаснасць, чым мінулае.Калі вы хочаце атрымаць рэкамендацыю альбо падобнае ад кіраўніка праекта, спытайцеся, ці па-ранейшаму вы ўносіце свой уклад.
  • Не лезьце ў дробную аптымізацыю кода, дадатковыя каментарыі, удасканаленне стылю кадавання і іншыя падобныя "дробныя" рэчы. Гэта можа сустрэць значна больш крытыкі, чым сур'ёзны ўклад. Замест гэтага вы можаце ўключыць гэтыя змены ў адзін патч "ачысткі".
  • Калі вы плануеце асабіста сустрэцца з адкрытымі хакерамі, пакіньце ноўтбук Windows дома. Mac OS пераносіцца крыху больш, але гэта таксама не вельмі вітаецца. Калі вы прыносіце свой ноўтбук, ён павінен працаваць пад кіраваннем Linux ці іншай аперацыйнай сістэмы, якую яны лічаць "адкрытым праграмным забеспячэннем".
  • Калі ваш паштовы кліент падтрымлівае паведамленні HTML, вам варта адключыць гэтую функцыю. Ніколі не ўкладайце дакументы, якія толькі камерцыйнае праграмнае забеспячэнне (напрыклад, Microsoft Word) можа правільна адкрыць. Хакеры лічаць гэта абразлівым.
  • Не прымайце ўдзел у праектах кампаніі, чый код не распаўсюджваецца на зацверджаную ліцэнзію з адкрытым зыходным кодам. У такіх выпадках сапраўды важныя часткі праекта, верагодна, застануцца за зачыненымі дзвярыма ўладальніка, не даючы вам даведацца што-небудзь карыснае.
  • Пазбягайце пытанняў пра асновы праграмавання і інструментаў праграмавання. Час праграміста з адкрытым праграмным забеспячэннем каштоўны. Замест гэтага абмяркуйце асновы праграмавання ў аматарскіх альбо пачынаючых групах праграмістаў.
  • Створаныя і вельмі паспяховыя праекты могуць мець напісаную альбо няпісаную палітыку пра тое, каб ніколі не кампенсаваць вашу працу (ні грошай, ні магчымасці прасоўваць сябе, ні павышанага статусу незалежна ад вашага ўкладу і г. д. - гл .: Do_not_expect_reward Wikipedia). Калі вы не можаце пагадзіцца з гэтым, прытрымвайцеся больш распаўсюджаных праектаў, якія не могуць дазволіць сабе такое стаўленне.
  • Не пачынайце свой уласны праект, калі вы заўсёды не хочаце правесці яго ў ганарлівай адзіноце. Па той жа прычыне лепш не пачынаць спробу адраджэння ўжо пакінутага праекта, які папярэдняя каманда ўжо страціла.
  • У выпадку неафіцыйнай сустрэчы пра праект, да якога вы ніколі не ўносілі ніякага кода, у вас будзе непрыемнае адчуванне, што вас цалкам ігнаруюць. Не хвалюйцеся, некаторыя хакеры могуць стаць добрымі сябрамі пасля таго, як вы заслужыце іх павагу ўласным кодам.
  • Буйныя адкрытыя праекты праграмнага забеспячэння, асабліва вакол дамена GNU, не адносяцца да вашай працы як да асабістага бізнесу. Пасля таго, як вы атрымаеце працу ў кампаніі, звязанай з праграмным забеспячэннем, яны просяць вашага працадаўцы падпісаць пэўныя дамовы [1], якія кампанія падпіша альбо не падпіша. Гэта можа прымусіць вас выбраць праект з менш жорсткімі патрабаваннямі.

Неабходнасці

  • Linux. Шмат якія адкрытыя праекты праграмнага забеспячэння складаней пабудаваць на Windows, альбо яны ўвогуле не будуюцца правільна. Гэта асабліва актуальна для прасунутых праектаў, прысвечаных праграмаванню сотавых тэлефонаў, USB-ключоў і іншых прылад.
  • Кампутар з адносна добрым падключэннем да Інтэрнэту. Калі вы хочаце захаваць двайную загрузку з Windows, добрае рашэнне можа стаць другі жорсткі дыск альбо падзел для Linux.
  • Базавыя веды хаця б адной мовы праграмавання і настойлівы намер даведацца больш. У цяперашні час найбольш папулярнымі мовамі з'яўляюцца C і Java.
  • Значная колькасць часу, па меншай меры, пяць гадзін у тыдзень (тыповы хардкорны праграміст уносіць вялізныя 14 гадзін).
  • Хоць афіцыйная ІТ-адукацыя значна палегчыць вам шлях, гэта ўсё не абавязковае патрабаванне, і ніводная сапраўдная хакерская супольнасць ніколі не спытае вас пра гэта. Праграмісты / хакеры ацэньваюць адзін аднаго па праграмах, а не па падробных крытэрыях, такіх як адзнакі, узрост, раса ці пасада. Памятаеце, па меншай меры, 60% хакераў з адкрытым зыходным кодам, якія ацэньваюць вашы патчы, маюць "правільную" вышэйшую адукацыю і не дазволяць вам уносіць у праект глупствы.
  • На апошніх этапах (канферэнцыя і "ўстаноўка") вы можаце скарыстацца ўласным ноўтбукам. Але дома працаваць над гэтым нядобра, таму купіце толькі адзін, калі вы можаце дазволіць сабе другі станок.
  • Шлях, які апісваецца, каб стаць "хакерам" з адкрытым зыходным кодам, займае не менш за два гады.