Skriva och använda fri programvara är inte bara en typ av programmering, är det en typ av filosofi. Samtidigt veta ett programmeringsspråk är allt du behöver för att programmet, är den här artikeln om hur man går med i samhället, få vänner, gör stora arbete tillsammans, och bli en respekterad specialist med en profil som du inte kan få någon annanstans. I en värld av gratis programvara kan du ganska lätt få uppgifter som i ett bolag enbart eliten, toppnivå programmerare är tillåtna att göra. Tänk på hur mycket erfarenhet du kan få. Men, om du en gång valt att bli en fri programvara hacker, måste du vara beredd att investera lite tid i att uppnå detta mål. Detta är sant även om du är en IT-studerande redan. Dessutom är den här artikeln inte om hur man blir en cracker.
Steg
- 1Få en bra unix distribution. GNU / Linux är en av de mest populära för dataintrång men GNU Hurd, BSD, Solaris och (i viss mån) Mac OS X används ofta.
- 2Lär dig några populära programmeringsspråk tills du når en mer eller mindre tillfredsställande nivå. Utan detta kan du inte bidra kod (den viktigaste delen av någon programvara projekt) till fri programvaru-miljön. Vissa källor tyder på att börja på en gång med två språk: ett system språk (C, Java eller liknande) och en skriptspråk (Python, Ruby, Perl eller liknande).
- 3För att vara mer produktiva, lär Eclipse eller någon annan liknande integrerat utvecklingsverktyg.
- 4Lär versionskontroll (är versionskontroll sannolikt den viktigaste samarbetet verktyg för delad mjukvaruutveckling. Förstå hur man skapar och tillämpa patchar (text skillnad filer). Mest Fri programvara utveckling i samhället görs skapa, diskutera och tillämpa olika patchar.
- 5Hitta en lämplig liten fri programvara projekt som du lätt kan gå för att få erfarenhet. De flesta av dessa projekt nu kan hittas på SourceForge.net. Den lämpliga projekt måste:
- Använd programmeringsspråk du vet.
- Var aktiv, med senare utgåvor.
- Redan har 4:57 utvecklare.
- Använd versionskontroll.
- Har någon del du tror att du omedelbart kan börja genomföra utan att modifiera den befintliga koden för mycket.
- Bortsett från koden, har ett bra projekt också aktiv diskussion listor, felrapporter, tar emot och genomför förfrågningar om förbättring och visar andra liknande aktiviteter.
- 6Kontakta administratören av det valda projektet. I ett litet projekt med några utvecklare din hjälp kommer vanligtvis omedelbart accepteras.
- 7Läs noga igenom reglerna i projektet och mer eller mindre följa dem. Reglerna för kodning stil eller nödvändighet att dokumentera dina ändringar i en separat textfil kan först verkar löjligt för dig. Men syftet med dessa regler är att göra den delade arbete möjligt - och de flesta projekten har dem.
- 8Arbetet i detta projekt i flera månader. Lyssna noga att administratören och övriga projektmedlemmar säga. Förutom programmering, du har en massa saker att lära sig. Men om du verkligen inte gillar något, bara gå iväg till ett annat projekt.
- 9Inte fastnar med den underjordiska projektet för länge. Så snart du hittar dig själv framgångsrikt arbetat i denna lag, är det dags att leta efter allvarlig.
- 10Hitta en seriös, hög fri mjukvara eller open source-projekt. De flesta sådana projekt ägs av GNU eller Apache organisationer.
- 11När vi gör en seriös hopp nu, vara redo för långt svalare acceptans. Du kommer förmodligen bli ombedd att arbeta för någon tid utan direkt skrivning tillgång till koden förvaret. Den tidigare underjordiska projekt bör dock ha lärt dig en hel del - så efter flera månader av den produktiva bidrag du kan försöka att kräva rättigheter du tror att du ska ha.
- 12Ta och gör en allvarlig uppgift. Det är dags. Var inte rädd. Gå på även efter det att du upptäcker att uppgiften är mycket svårare än man först trodde - i detta steg är det viktigt att inte ge upp.
- 13Om du kan, applicera med din allvarlig uppgift till Googles "Summer of Code" för att få några pengar från detta äventyr. Men bara bryr sig inte om ansökan inte godkänns, eftersom de har betydligt mindre finansierade positioner än riktigt bra hackers.
- 14Leta efter en lämplig konferens som händer i närheten ("Linux dagar" eller något liknande) och försöka presentera ditt projekt där (hela projektet, inte bara den del du programmerar). När du säger att du representerar en allvarlig Free / Open source-projekt, arrangörerna släpper ofta du från konferensavgiften (om de inte är konferensen sannolikt olämpliga ändå). Ta med din Linux-dator (om du har någon) och köra demos. Fråga projektadministratör för det material du kan använda när du förbereder ditt föredrag eller poster.
- 15Sök på nätet efter tillkännagivandet om att installationen part som händer i närheten och prova att ansluta det första gången som en användare (se för alla problem och hur hackers lösa dem) och nästa gång som installatör.
- 16Slutföra uppgiften, täck med automatiska tester och bidra till projektet. Du är klar! För att vara säker, försöka träffa några hackare av projektet fysiskt och ha ett glas öl.
- 17
- 18För bättre förståelse, titta på verkliga exempel på utveckling historia för en fri programvara projekt (ovan). Varje höjning kurvan representerar ett bidrag (rader kod) från samma utvecklare. Utvecklare tenderar att bli mindre aktiva under åren men projektet ofta även accelererar som nya människor ansluter. Därför om du redan kommit med några användbara färdigheter, finns det inga skäl till varför laget inte skulle bjuda dig.
Tips
- Alltid fortsätta hacka igång. Inte bygga, inte springa, kraschar? Det finns orsaker till allt och om du har källkoden detta oftast innebär att du kan tvinga systemet att göra vad du vill, särskilt med hjälp av webben. Denna regel har sina begränsningar, men, faktiskt, aldrig ge lätt.
- Om du fortfarande inte litar på dig tillräckligt, börja från någon del av koden som du tycker saknas och kan skrivas från grunden. Förändringar i befintlig kod är mycket mer sannolikt att locka kritik.
- För början väljer en klass, modul eller någon annan enhet under vilken ingen är mycket aktivt arbetar för tillfället. Att arbeta tillsammans på samma klass eller ens fungera behöver mer kunskaper och en hel del omsorg från alla sidor.
- Innan du ställer några frågor om de arbetsregler inne i projektet, försök att söka efter svaret i projektet dokumentation och utskick arkiv listan.
- Arbetsgivarna i vissa hackare verkar motiverad nog att låta bidragen under sin arbetstid (oftast på grund av att institutet använder Free / Open source program som hackaren utvecklas). Tänk, kanske du kan få åtminstone en del av den tid som krävs på detta sätt.
- Bara säga att du är en hacker efter några riktigt hacker samfundet erkänner dig som sådan.
Varningar
- Om du planerar att träffa Fri programvara hackare öga mot öga, alltid lämna din Windows laptop hemma. Mac OS tolereras något bättre, men inte heller välkomna. Om du tar med din bärbara dator, måste den köra Linux eller andra operativsystem som de anser som "Fri programvara".
- Om din e-postklient stöder HTML-meddelanden, stänga av funktionen. Aldrig bifoga handlingar som endast proprietär programvara (som MS Word) kan öppnas ordentligt. Hackare förstå detta som kränkande.
- Medan ordet "hacker" låter med avseende på de flesta av de akademiska miljöerna, för vissa okunniga människor kan associera med att bryta in i säkerhetssystem och andra IT-relaterade brott som en annan social grupp ( kex ) gör. Om du inte är redo att förklara, ser till vem berättar du det här ordet. Riktiga hackers som de är tänkta i den här artikeln aldrig gå med programmering verksamheter som verkar för dem olagligt. Först är de stolta över att följa hacker etik. Andra är kränkningar inte nödvändigtvis bättre betalt.
- Inte frivilligt inte bolaget ägda projekt som inte släpper vissa delar av de nummer enligt godkänd Open Source licens. I sådana fall de riktigt viktiga delar av projektet kommer sannolikt att stanna bakom de stängda dörrarna till ägaren, hindrar dig från att lära sig något användbart.
- Börja inte från liten kod optimeringar, extra kommentarer, kodning förbättringar stil och andra liknande "småskalig" grejer. Det kan locka betydligt mer kritik än något seriöst bidrag. Istället, samla dessa i en enda "sanering" patch.
- Undvik att ställa frågor som rör grunderna i programmering eller programmeringsverktyg. En gratis programvara programmerare tid är värdefull. Istället, diskutera grunderna i programmering i samhällen för amatör eller nya programmerare.
- Av samma anledning, aldrig förvänta en äldre hacker att skriva en detaljerad beskrivning av ditt uppdrag eller ens ge någon form av handledning för dig. Även projekt med öppen källkod kan ha en hel del stränga regler, de arbetar oftast i linje med vad som kallas extrem programmering i programmering metodik.
- I det informella mötet som öl om projektet till att du aldrig har bidragit med någon kod du får obehagliga känslan av att vara mycket ignoreras. Oroa dig inte, några hackare är bra vänner senare, efter att du tjänar respekt med din kod.
- Börjar inte från att starta eget projekt, om du inte vill fastna i en stolt ensamhet för alltid. Av samma skäl, inte börja från försök att återuppliva den övergivna projekt som redan har förlorat sin tidigare lag (se).
- Din hacker status i projektet samfundet speglar din nuvarande mer än ditt förflutna. I synnerhet om du vill ha en rekommendation från projektledare eller något liknande, be tills du är fortfarande aktivt bidrar.
- Redan mycket framgångsrika projekt kan ha skrivit eller oskrivna politik aldrig tillbaka något tillbaka för ditt arbete (inga pengar, ingen möjlighet att själv - främja, ingen förhöjd status oberoende av bidrag, etc - se Wikipedia ). Om du inte accepterar detta väl, hålla sig med mer mellanregister projekt som inte har råd sådan attityd.
- Stora projekt inom fri programvara, särskilt runt GNU domän, behandlar inte ditt jobb som din personliga sak. När du får eller ändra jobbet i ett program - närstående företag, frågar de din arbetsgivare att teckna vissa avtal som dessa kan eller inte kan underteckna. Detta kan tvinga att välja projekt med lösare krav.
- I kooperativ värld av gratis programvara du koden och i sällsynta fall även alla projekt i din grupp kan vara oväntat ersättas av något annat bidrag. Exempel på storskaliga skriver kan vara den numera bortglömda Harmony eller nyare historia av GNU klassökväg, till exempel. Mogna hackers säger "välkommen" och ta fördelarna med den nya koden blir tillgänglig - det finns bara inget bättre sätt att reagera. Detta är dock inte naturligt och måste läras. Se ett exempel på en sådan inställning.
Saker du behöver
- Linux. Många projekt inom fri programvara är antingen mer komplicerat att bygga under Windows eller inte bygga ordentligt alls. Detta gäller särskilt för de avancerade projekt som ägnas åt programmering av mobiltelefoner, miniatyr datorer, USB-minnen och andra fantastiska produkter.
- En dator med relativt bra internetuppkoppling. Om du vill behålla dual boot med Windows, en andra hårddisk eller partition för Linux skulle vara en bra lösning.
- Grundläggande kunskaper i minst ett programmeringsspråk och en stark vilja att lära sig mer. De mest populära språken tycks för närvarande vara och java.
- Avsevärd tid, minst 5 timmar per vecka (en typisk hardcore hacker bidrar så många som 14).
- Medan den formella utbildningen i informatik skulle göra vägen mycket lättare, du behöver inte det som ett obligatoriskt villkor och ingen någon riktig hacker community någonsin kommer att fråga dig. Hackare domare om varandra med sin hacka, inte falska kriterier såsom examina, ålder, ras eller position. Men minst 60% av hackare som klocka du patchar har "rätt" universitetsexamen och kommer inte att tillåta dig att göra något nonsens i projektet.
- Under de sista stegen (konferens-och install part) du skulle ha nytta av din egen laptop. Men det är inte bra för att arbeta hemma, så bara köpa det om du har råd den andra maskinen.
- Den beskrivna väg att bli en hacker behöver minst ca två år att slutföra.