Wkono

Hvordan bli fri programvare hacker

Skriving og bruk av Fri programvare er ikke bare en type programmering, er det en form for filosofi. Mens kjenne et programmeringsspråk er alt du trenger å programmere, er denne artikkelen om hvordan å delta i samfunnet, få venner, gjør stort arbeid sammen, og bli en respektert spesialist med en profil du ikke kan få noe annet sted. I en verden av fri programvare kan du heller enkelt få oppgaver som i et selskap kun eliten, toppnivå programmerere har lov til å gjøre. Tenk på hvor mye erfaring dette kan bringe. Men hvis du en gang bestemte seg for å bli en fri programvare hacker, må du være klar til å investere litt tid i å oppnå dette målet. Dette er fortsatt til stede selv om du er en IT-student allerede. Dessuten er denne artikkelen ikke om hvordan å bli en cracker.

Trinn

Hvordan bli fri programvare hacker. Få en god unix distribusjon.
Hvordan bli fri programvare hacker. Få en god unix distribusjon.
  1. 1
    Få en god unix distribusjon. GNU / Linux er en av de mest populære for hacking, men GNU Hurd, BSD, Solaris og (i noen grad) Mac OS X brukes ofte.
  2. 2
    Lær noen populære programmeringsspråk til du kommer til en mer eller mindre tilfredsstillende nivå. Uten dette, kan du ikke bidra med kode (den viktigste delen av enhver programvare-prosjekt) til fri programvare. Noen kilder antyder å begynne på en gang med to språk: ett system språk (C, Java eller lignende) og ett skriptspråk (Python, Ruby, Perl eller lignende).
  3. 3
    For å være mer produktive, lære eclipse eller noen andre lignende integrert utviklingsverktøy.
  4. 4
    Lær versjonskontroll (er versjonskontroll trolig den viktigste samarbeidet verktøy for felles utvikling av programvare. Forstå hvordan å opprette og bruke patcher (tekst forskjell filer). Mest Fri programvare utvikling i samfunnet er ferdig med å opprette, diskutere og bruke ulike patcher.
  5. 5
    Finne en passende liten fri programvare-prosjekt som du lett kan bli med for å få erfaring. De fleste av slike prosjekter nå kan bli funnet på SourceForge.net. Den egnet prosjekt må:
    1. Bruk programmeringsspråket du vet.
    2. Vær aktiv, med nyere utgivelser.
    3. Har du allerede 04:57 utviklere.
    4. Bruk versjonskontroll.
    5. Har en del du tror du kan umiddelbart begynne å implementere uten å endre den eksisterende koden for mye.
    6. Bortsett fra koden, har et godt prosjekt også aktive diskusjon lister, feilrapporter, mottar og implementerer forespørsler om forbedring og viser andre lignende aktiviteter.
  6. 6
    Kontakt administratoren for det valgte prosjektet. I et lite prosjekt med få utviklere din hjelp vil vanligvis umiddelbart bli akseptert.
  7. 7
    Les nøye reglene for prosjektet og mer eller mindre følger dem. Reglene i koding stil eller nødvendighet å dokumentere endringene i en egen tekstfil kan første vises latterlig til deg. Men hensikten med disse regler, er å gjøre det delte arbeide som mulig - og de fleste prosjekter har dem.
  8. 8
    Arbeidet i dette prosjektet i flere måneder. Lytt nøye at administrator og andre prosjektmedlemmer si. Bortsett programmering, du har mange ting å lære. Men hvis du virkelig ikke liker noe, bare gå bort til et annet prosjekt.
  9. 9
    Ikke feste med underjordisk prosjekt for lenge. Så snart du finner deg selv vellykket arbeider i dette laget, er det på tide å se etter de alvorlige.
  10. 10
    Finn en alvorlig, høyt nivå fri programvare eller åpen kildekode-prosjekt. De fleste slike prosjekter er eid av GNU eller Apache organisasjoner.
  11. 11
    Som vi gjør en alvorlig hoppe nå, være klar for langt kjøligere aksept. Du vil sannsynligvis bli bedt om å arbeide for en tid uten direkte skrivetilgang til koden depotet. Den forrige underjordisk prosjekt bør imidlertid ha lært deg mye - så etter flere måneder med den produktive bidrag kan du prøve å kreve rettigheter du mener du bør ha.
  12. 12
    Ta og gjøre en seriøs oppgave. Det er på tide. Ikke vær redd. Gå på selv etter at du oppdager at oppgaven er mye vanskeligere enn du først trodde - i dette trinnet er det viktig å ikke gi opp.
  13. 13
    Hvis du kan, påfør med alvorlig oppgave å google er "Summer of Code" for å få noen penger fra dette eventyret. Men bare ikke bryr seg dersom søknaden ikke er akseptert som de har langt mindre finansierte stillinger enn virkelig gode hackere.
  14. 14
    Se etter en passende konferansen skjer i nærheten ("linux dager" eller noe lignende), og prøver å presentere prosjektet der (alle prosjekt, ikke bare den delen du programmerer). Etter at du forteller du representerer en alvorlig Free / Åpen kildekode, arrangørene ofte slipper du fra konferansen gebyr (hvis de ikke gjør det, er konferansen sannsynlig uegnet uansett). Ta med Linux laptop (hvis du har det) og kjøre demoer. Spør prosjektet administrator for det materialet du kan bruke når du forbereder diskusjon eller plakat.
  15. 15
    Søk på nettet etter kunngjøringen om at installasjonen partiet skjer i nærheten, og prøver å bli det første gang som en bruker (se for alle problemer og hvordan hackere løse dem), og neste gang som montør.
  16. 16
    Fullføre oppgaven, dekk med automatiske tester og bidra til prosjektet. Du er ferdig! For å være sikker, kan du prøve å møte noen hackere av prosjektet fysisk og har et glass øl.
  17. 17
  18. 18
    For bedre forståelse, se inn ekte eksempel på utvikling historie for et fri programvare-prosjekt (over). Hver raising kurven representerer et bidrag (linjer med kode) fra enkelt utvikler. Utviklere har en tendens til å bli mindre aktiv i løpet av årene, men prosjektet ofte selv akselererer som nye mennesker delta. Derfor hvis du allerede kommet med noen nyttige ferdigheter, er det ingen grunn til at laget ikke ville invitere deg.

Tips

  • Alltid fortsette hacking du startet. Bygger ikke, ikke løpe, krasjer? Det er grunner for alt, og hvis du har kildekoden dette betyr vanligvis at du kan tvinge systemet til å gjøre hva du vil, spesielt med hjelp av nettsøk. Denne regelen har sine grenser, men faktisk aldri gi lett.
  • Hvis du fortsatt ikke stoler på deg selv nok, start fra noen del av koden som du synes mangler, og kan skrives fra bunnen av. Endringer i eksisterende kode er mye mer sannsynlig å tiltrekke kritikk.
  • For begynnelsen, velger en klasse, modul eller en annen enhet der ingen er svært aktivt med i øyeblikket. Samarbeider om samme klasse eller funksjon trenger mer kompetanse og en masse omsorg fra alle kanter.
  • Før du spør noen spørsmål om arbeidsforholdene regler inne i prosjektet, kan du prøve å søke etter svaret i prosjektet dokumentasjon og listearkivet.
  • Arbeidsgiverne om noen hackere synes motivert nok til å tillate bidrag i løpet av sin arbeidstid (vanligvis fordi institusjonen bruker Free / Åpen kildekode program som hacker utvikler). Tenk, kanskje du kan få minst en del av den nødvendige tid på denne måten.
  • Bare si du er en hacker etter noen ekte hacker samfunnet anerkjenner deg som sådan.

Advarsler

  • Hvis du planlegger å møte Fri programvare hackere øye til øye, alltid la Windows laptop hjemme. Mac OS tolereres noe bedre, men heller ikke velkommen. Hvis du tar den bærbare datamaskinen, må den kjøre Linux eller andre operativsystem som de anser som "Fri programvare".
  • Hvis e-postklienten støtter html-meldinger, slå av denne funksjonen. Aldri legge ved dokumenter som bare proprietær programvare (som MS Word) kan åpne riktig. Hackere forstå dette som fornærmende.
  • Mens ordet "hacker" høres med respekt i de fleste av de akademiske miljøer, for noen uinformerte mennesker kan det omgås bryte inn i sikkerhetssystemer og andre PC-relaterte forbrytelser som en annen sosial gruppe ( kjeks ) gjøre. Med mindre du er klar til å forklare, se hvem du forteller dette ordet. Virkelige hackere som de er ment i denne artikkelen aldri bli med programmering aktiviteter som virker for dem ulovlig. Først, de er stolte av å følge hacker etikk. Det andre er lov brudd ikke nødvendigvis bedre betalt.
  • Ikke frivillig til de egeneide prosjekter som ikke slippe noen deler av de kode i henhold til godkjente Open Source lisens. I slike tilfeller de virkelig viktige deler av prosjektet er sannsynlig å bo bak lukkede dører av eieren, hindrer deg fra å lære noe nyttig.
  • Ikke start fra små kode optimaliseringer, ekstra kommentarer, koding stil forbedringer og andre lignende "småskala" ting. Det kan tiltrekke seg langt mer kritikk enn noe seriøst bidrag. I stedet samle disse inn i en enkelt "opprydding" patch.
  • Unngå å spørre noen spørsmål knyttet til grunnleggende programmering eller programmeringsverktøy. En gratis programvare programmerer tid er verdifull. I stedet diskutere grunnleggende programmering i fellesskap for amatører eller nye programmerere.
  • Av samme grunn, aldri forvente en eldre hacker å skrive en detaljert beskrivelse av oppgaven din eller gi noen form for tilsyn for deg. Mens åpen kildekode-prosjekter kan ha mye av strenge regler, de vanligvis arbeider i retning av det som er kjent som ekstrem programmering i programmeringsspråket metodikk.
  • I det uformelle møtet som øl arrangement av prosjektet til at du aldri har bidratt noe kode du vil ha ubehagelig følelse av å være svært ignorert. Ikke bekymre deg, noen hackere er gode venner senere, etter at du tjener respekt med koden din.
  • Ikke begynne fra å starte ditt eget prosjekt, med mindre du ønsker å holde fast i en stolt ensomhet for alltid. Av samme grunn, ikke starter fra forsøket på å gjenopplive den forlatte prosjekt som allerede har mistet sin tidligere team (se).
  • Din hacker status i prosjektet samfunn gjenspeiler din nåværende mer enn fortiden. Spesielt hvis du ønsker en anbefaling fra prosjektleder eller noe lignende, spør til du er fortsatt aktivt bidra.
  • Allerede svært vellykkede prosjekter kan ha skrevet eller uskrevne retningslinjer aldri tilbake noe tilbake for arbeidet ditt (ingen penger, ingen mulighet til selv - fremme, ingen forhøyet status uavhengig av bidraget, etc - se Wikipedia ). Hvis du ikke aksepterer denne brønnen, feste med flere mellomklassen prosjekter som ikke har råd til en slik holdning.
  • Store prosjekter innen fri programvare, særlig rundt GNU domene, ikke behandle jobben din som din personlige sak. Når du får eller endre jobb i en programvare - nærstående selskap, spør de arbeidsgiveren din til å signere visse avtaler at disse kan eller ikke kan signere. Dette kan tvinge til å velge prosjektet med løsere krav.
  • I samarbeidsvillig verden av gratis programvare du koden og i sjeldne tilfeller enda alle prosjekt av gruppen kan bli uventet erstattet av noen andre bidrag. Eksempler på stor skala overskriver kan være nå glemt Harmony eller nyere historie av GNU classpath, for eksempel. Modne hackere si "velkommen" og ta fordeler av den nye koden blir tilgjengelig - det er bare ingen bedre måte å reagere. Dette er imidlertid ikke kommer naturlig og må læres. Se et eksempel på en slik holdning.

Ting du trenger

  • Linux. Mange gratis programvare-prosjekter er enten mer komplisert å bygge under Windows eller ikke bygge skikkelig i det hele tatt. Dette gjelder spesielt for de avanserte prosjekter, viet til programmering av mobiltelefoner, miniatyr datamaskiner, USB-nøkler og andre fantastiske enheter.
  • En datamaskin med relativt god Internett-tilkobling. Hvis du ønsker å holde dual boot med Windows, en annen harddisk eller partisjon for Linux ville være en god løsning.
  • Grunnleggende kjennskap til minst ett programmeringsspråk og en sterk intensjon om å lære mer. De mest populære språkene i dag synes å være og java.
  • Betydelig mengde tid, minst fem timer i uken (en typisk hardcore hacker bidrar så mange som 14).
  • Mens formell utdanning i informatikk vil gjøre veien mye enklere, trenger du ikke det som en obligatorisk tilstand og ingen noen reell hacker samfunnet vil be deg. Hackere dommer om hverandre med ens hacking, ikke falske kriterier som grader, alder, rase eller stilling. Men minst 60% av hackere som ser deg patcher har den "riktige" universitetsgrad og vil ikke tillate deg å gjøre noe tull i prosjektet.
  • I løpet av de siste trinnene (konferanse og installere partiet) du ville ha nytte av din egen laptop. Men det er ikke bra for å jobbe hjemme, så bare kjøpe det hvis du har råd til den andre maskinen.
  • Den beskrives banen for å bli en hacker trenger minst omtrent to år å bli ferdig.