Fri software ( open source software , engelsk fri software , også software libre eller libre software ), fri software - software hvis brugere har rettighederne ("friheder") til dens ubegrænsede installation, lancering, gratis brug, undersøgelse, distribution og modifikation ( forbedring ), samt distribution af kopier og resultater af ændringen [1] . Hvis der er eksklusive rettigheder til softwaren, erklæres friheder ved hjælp af gratis licenser .
Ligesom freeware og gratis software kan open source-software bruges og normalt fås gratis (men en bestemt distributør kan opkræve et gebyr for at få kopier fra ham, for leveringskanaler, medier - cd'er eller yderligere tjenester). Freeware distribueres dog normalt i en eksekverbar form uden kildekoder og er proprietær software , og for at software skal være gratis (gratis software), skal dets kildekoder være tilgængelige for modtagere , hvorfra det er muligt at oprette eksekverbare filer , sammen med de relevante licenser. På grund af det faktum, at ordet "salg" refererer til salg af originalen og distribution af kopier for penge og betalt licens (normalt under ikke-frie vilkår) [2] , betragter nogle stadig fri software som en delmængde af gratis software.
Der skelnes ofte mellem gratis ( gratis / libre ) og open source ( open source ) software - selvom tilgængeligheden af kildekode til open source-software er obligatorisk, og mange open source-programmer er også fri software, hvilket gør fri software til en undersæt af open source-software. I praksis hænger valget af navn ofte sammen med det anvendte sprog og til målene om frihed eller åbenhed.[ afklare ] .
Den frie software-bevægelse begyndte i 1983, da Richard Stallman dannede ideen om, at brugere skulle være frie til at bruge software . I 1985 grundlagde Stallman Free Software Foundation for at skabe en organisatorisk struktur til at fremme hans idé.
Gratis software forretningsmodeller er typisk baseret på princippet om empowerment – for eksempel nye applikationer, træning, integration, tilpasning eller certificering. Samtidig er nogle forretningsmodeller, der arbejder med proprietær software, ikke kompatible med gratis software, især dem, der tvinger brugerne til at betale for en licens for lovligt at bruge softwareproduktet.
I overensstemmelse med moderne lovgivning i de fleste lande er et softwareprodukt og dets kildekode beskyttet af ophavsret , hvilket giver forfatterne og indehaveren af ophavsretten (oftest er indehaveren af ophavsretten den organisation, der beskæftiger ophavsmanden til tjenesteværkerne ) magten til at ændre , distribuere, bruge og opføre programmet, herunder tilfælde, når kildekoden er offentliggjort. Ophavsrettens magt i det moderne samfund er så stærk, at selv studier eller forsøg på at rette softwarefejl ved adskillelse kan retsforfølges af straffeloven .
For at redde brugere af software fra de problemer, der er forårsaget af skævheden i lovgivningen om beskyttelse af intellektuel ejendom i retning af copyright-indehaveren, kan forfattere og copyright-indehavere overføre rettighederne til de fire handlingsfriheder, der er anført ovenfor, til brugerne. Dette opnås ved at frigive softwarens kildekode under en af en særlig type licenser kaldet gratis licenser . På trods af det faktum, at rettighedsindehaveren i henhold til vilkårene for gratis licenser ikke kan tilbagekalde de tilladelser, der er givet til brugere, bevarer forfatterne deres rettigheder garanteret ved lov.
Gratis software er let at kommercialisere – der er mange forretningsmodeller, der eliminerer behovet for at betale for kopier af programmet. For eksempel er en forretningsmodel meget populær, når en iværksætter kan tjene penge ved at levere tekniske supporttjenester. Der er en anden kommercialiseringsmulighed for ejeren af den gratis kode - implementering af softwareprodukter under betingelserne i en kommerciel licens, i tilfælde af at klienten skal integrere den gratis kode i sin proprietære software, og han ikke ønsker at afsløre sin udvikling.
Det særlige ved software er, at det er produceret i én form - i form af kildekode, og ofte distribueres og bruges i en anden - i form af eksekverbare programmer, maskinkoder, hvorfra det er umuligt entydigt at gendanne kildeteksten . For effektivt at ændre et program, rette fejl eller endda bare finde ud af præcis, hvad et program gør og hvordan, er det nødvendigt at have dets kildekode, for når det kompileres til maskinkode , mister programmet læsbarheden .
Oprindeligt var det at skabe software til computere primært en akademisk stræben. For dataloger var hvert program et resultat af videnskabelig forskning, på nogle måder analogt med offentliggørelsen af en artikel. Det betyder, at programmets kildekode nødvendigvis var tilgængelig for hele det videnskabelige samfund, da ethvert videnskabeligt resultat skal kunne verificeres , dvs. bekræftes af andre forskere og være åbent for kritik. Processen med softwareudvikling lignede således grundlæggende den videnskabelige proces: Videnskabsmanden tog eksisterende programmer, korrigerede dem i overensstemmelse med sine ideer og udgav de korrigerede programmer - mens han fik et nyt resultat.
Computerteknologien har dog udviklet sig ikke mindre aktivt end software til dem. I 1970'erne var der et stort udvalg af forskellige computerarkitekturer, som også var forskellige i ydeevne og pris. Naturligvis skulle der udvikles et separat sæt software til hver arkitektur. Siden midten af 1970'erne har de fleste amerikanske universiteter brugt PDP-10- arkitekturcomputere til akademisk udvikling , hvilket giver medarbejdere fra forskellige universiteter mulighed for at bruge hinandens design på deres maskiner. I slutningen af 1970'erne udviklede ansatte i laboratoriet for kunstig intelligens ved Massachusetts Institute of Technology (MIT) deres eget Incompatible Timesharing System (ITS) operativsystem til PDP-10 - (fra engelsk - "incompatible time-sharing system) ”) og et meget stort sæt programmer til hende. Kildekoderne til programmerne skrevet på MIT var offentligt tilgængelige, ansatte på andre universiteter brugte deres kildekoder og sendte rettelser til dem, al software i disse laboratorier var fuldstændig akademisk.
I betragtning af det store udvalg af computerarkitekturer var software en integreret del af selve maskinen og langt fra den dyreste del. Computerproducenter forsynede dem med hovedsoftwaren - i hvert fald[ klargør ] med operativsystemet . Computerproduktion var en videnskabsintensiv, men grundlæggende kommerciel virksomhed.
I en situation hvor[ afklar ] software handles på lige fod med husholdningsartikler, det er ikke længere kun underlagt lovene for den videnskabelige udvikling, men også egenskaberne ved materielle genstande, der kan handles, byttes, retten til at eje og bruge, som bør beskyttes ved lov.[ neutralitet? ] Så softwaren faldt i kategorien intellektuel ejendom: det vil sige, at programmets kildekode begyndte at blive betragtet som et værk.
At beskytte[ ukendt udtryk ] deres interesser, computer- og softwareproducenter bruger licenser - en type aftale mellem copyright -indehaveren og brugeren (køberen) af softwaren. Lignende aftaler blev indgået med universiteter: For eksempel blev kildekoden for programmer og retten til at ændre dem overført til universitetet, men det var forbudt at distribuere dem uden for universitetet. Sådanne begrænsninger betød, at teksterne i de tilsvarende programmer ikke kunne diskuteres åbent i samfundet, det vil sige, at de ikke eksisterede for videnskabelig udvikling. Computere og software havde også købere uden for den akademiske verden, såsom banker. Sådanne brugere det er ikke så vigtigt at få kildekoderne til programmerne, de er interesserede i softwaren som et færdigt produkt og er villige til at betale penge for pålidelige og bekvemme programmer.
Computere udviklede sig dog meget hurtigt, og PDP-10'erne , som var ret moderne i 1970'erne , var allerede forældede i begyndelsen af 1980'erne og haltede betydeligt bagefter mere moderne maskiner i ydeevne. Men for ingen af de nye arkitekturer var der ikke længere et operativsystem og anden software udviklet udelukkende i et akademisk miljø og i henhold til dets regler. Universiteter skulle nu købe nye computere med ny software og overholde licensvilkår, der begrænsede deres rettigheder til at udvikle og distribuere software – med andre ord begrænse muligheden for en videnskabelig model til at udvikle og distribuere software.
På dette tidspunkt blev de såkaldte LISP-maskiner udviklet på MIT kunstig intelligens-laboratoriet , som kunne fortolke et programmeringssprog svarende til LISP , et udviklet og lovende programmeringssprog , på hardwareniveau . Operativsystemet til sådanne maskiner og al softwaren til dem blev skrevet i LISP. I begyndelsen af 1980'erne købte nogle medlemmer af AI-laboratoriet rettighederne til LISP-maskiner og Macsyma- matematiksystemet fra MIT og grundlagde deres egne kommercielle virksomheder for at udvikle sig yderligere på dette område. Mange laboratoriepersonale gik på arbejde i disse virksomheder, hvorefter alle deres videre udvikling blev lukket for det videnskabelige samfund. De nye LISP-maskiner blev distribueret med licenser, der forbød brugere at ændre og videredistribuere kildekoden. Programmer, der plejede at være analoge med videnskabelige publikationer for MIT-ansatte, er blevet et produkt ejet af nogen.
For en af de ansatte, der er tilbage på MIT AI Lab, Richard Stallman , virkede denne situation som en uacceptabel krænkelse af den åbne videnskabelige proces med softwareudvikling. Han forsøgte på egen hånd at udvikle LISP-maskiner inden for den gamle akademiske model og åbenlyst implementere ændringer svarende til dem, der blev foretaget under lukket kommerciel udvikling, så MITs LISP-maskiner kunne konkurrere med deres modparter. Selvfølgelig er dette forsøg på at følge med den aktive udvikling af hele virksomheden[ hvad? ] var dømt til at mislykkes.
Derefter, på jagt efter ligesindede, skaber Richard Stallman den non-profit organisation Free Software Foundation. Fondens hovedmål var at bevare software, hvis udviklingsproces altid vil være åben, og kildeteksterne altid vil være tilgængelige. Det bredere mål for fonden er at udvikle et styresystem, der udelukkende er open source-software. Ved at erklære et sådant mål ønskede Stallman faktisk at vende tilbage til, hvad der forekom ham en ideel tilstand, da MIT arbejdede på sit eget operativsystem til PDP-10.
Operativsystemet, der blev udviklet under fundamentet, skulle blive kompatibelt med UNIX -operativsystemet . I begyndelsen af 1980'erne var UNIX i udbredt brug, også i den akademiske verden. Til dette styresystem var der mange programmer frit distribueret i det videnskabelige samfund, så jeg ønskede, at disse programmer skulle fungere på det nye - gratis - styresystem. Dette fremtidige operativsystem fik navnet GNU .
Free Software Foundation har tidligere opdelt ikke- fri software i semi -fri software (en, der kun adskiller sig fra fri software ved at forbyde kommerciel brug) og proprietær (proprietær, engelsk proprietær ) (som ikke har alle fire friheder, selvom kommerciel brug er tilladt); men denne inddeling bruges ikke længere [3] [4] .
Nogle gange inkluderer ikke-fri software al " kommerciel software ", idet fri software betragtes som en type fri software, men dette er ikke sandt: du kan drage fordel af programmet, ikke kun ved at sælge ikke-frie licenser.
For at samspillet mellem udviklere kunne finde sted efter princippet om videnskabeligt samarbejde, var det nødvendigt at sikre, at programmernes kildekode forblev tilgængelig til læsning og kritik af hele det videnskabelige samfund, samtidig med at forfatterskabet til værkerne bevares. For at gøre dette formulerede Richard Stallman begrebet fri software , som afspejlede principperne for åben softwareudvikling i det videnskabelige samfund, der udviklede sig på amerikanske universiteter i 1970'erne. Stallman anførte eksplicit disse principper, som også er kriterierne for fri software . Disse kriterier fastlægger de rettigheder, som fri softwareforfattere giver enhver bruger:
Evnen til at rette fejl og forbedre programmer er den vigtigste egenskab ved gratis og open source-software, hvilket simpelthen er umuligt for brugere af lukkede proprietære programmer, selvom der findes fejl og defekter i dem, hvis antal normalt er ukendt for nogen .
Kun et program, der opfylder alle fire af de anførte principper, kan betragtes som fri software, det vil sige, at det er garanteret åbent og tilgængeligt til opgradering og udbedring af fejl og defekter, og har ingen begrænsninger i brug og distribution. Det skal understreges, at disse principper kun fastlægger tilgængeligheden af programkildekoder til generel brug, kritik og forbedringer og rettighederne for den bruger, der modtog programmets eksekverbare eller kildekode, men på ingen måde de økonomiske relationer. forbundet med distribution af programmer, herunder ikke indebærer gratis . I engelske tekster opstår der ofte forvirring her, da ordet "gratis" på engelsk ikke kun betyder "gratis", men også "gratis", og ofte bruges i forhold til fri software , som distribueres uden at opkræve gebyr for brug, men er ikke tilgængelig for ændringer af brugere og fællesskabet, fordi dens kildekode ikke er offentliggjort. Sådan gratis software er slet ikke gratis. Tværtimod kan fri software distribueres (og distribueres), mens der opkræves et gebyr, men samtidig overholdes frihedskriterierne: hver bruger har ret til at modtage kildekoden til programmer uden ekstra omkostninger (bortset fra prisen på mediet), ændre dem og distribuere dem yderligere. Enhver software, hvis brugere ikke får denne ret, er ikke-fri software, uanset andre vilkår.
Open source-software er en nøglefunktion ved fri software, så Eric Raymonds senere udtryk " open source-software " synes for nogle at være endnu bedre til dette fænomen end Stallmans originale "frie software". Stallman insisterer på forskellen mellem disse to begreber, da ordene open source kun angiver tilstedeværelsen af en, ikke den vigtigste (selv om den er nødvendig for implementeringen af to af de fire friheder), efter hans mening, af egenskaberne i fri software - muligheden for at se kildekoden. [5]
Efter at have erklæret kriterierne for fri software, begyndte medlemmer af Free Software Foundation at distribuere deres software i overensstemmelse med disse principper uden dokumentation for dette: med andre ord, oprindeligt blev gratis software distribueret uden en licens overhovedet. Imidlertid overbeviste den præcedens, der skete for Richard Stallman selv (se nedenfor), ham om, at dokumentation var afgørende for fri software.
Richard Stallman udviklede Emacs teksteditor baseret på kildekoden til James Gosling . Derefter distribuerede Gosling frit sin kildekode til alle interesserede. Men på et tidspunkt solgte Gosling rettighederne til at distribuere Emacs til UniPress [6] , og firmaet bad Stallman om at stoppe med at distribuere hans version af Emacs, da de ejer rettighederne.[ stil ] Denne hændelse fik Stallman til at omskrive de dele af Emacs-kilden, som nu var ejet af UniPress, hvorefter han udviklede sin egen licens til sin software.
Stallmans licens skulle virke på samme måde som ikke-fri softwarelicenser: det er en modelaftale mellem ophavsmanden til programmet ( ophavsretsindehaveren ) og brugeren, hvori forfatteren blandt andet fastlægger rettighederne til bruger i forhold til programmet. I modsætning til den typiske proprietære licens giver Stallman-licensen brugeren de rettigheder, der er kriterierne for et gratis program: at få kildekoden til programmer, ændre dem og distribuere modificerede og umodificerede versioner. Efterfølgende blev Stallman-licensen kendt som GNU General Public License ("GNU General Public License"), forkortet GNU GPL eller blot GPL.
Denne licens fastsætter også en grundlæggende for Stallmans beskyttende betingelse for distribution af fri software: ingen bruger, der har lavet en ændret version af et gratis program, har ret til at distribuere det uden at overholde alle principperne for fri software, dvs. ændring af et gratis program, ikke-gratis. For at understrege forskellen mellem en sådan licens, som bruger ZoAP (copyright) til at inducere bevarelsen af frihed, fra typiske proprietære licenser, som bruger ZoAP til at begrænse friheden, blev udtrykket copyleft opfundet - et ordspil bygget på betydningen af Engelske ord højre og venstre . [7] Copyleft opererer ud fra, at afledte værker i de fleste tilfælde arver licenserne fra deres bestanddele; hvis et program bruger en lille del af GPL-dækket tredjepartskode, skal hele programmet og dets afledte produkter distribueres under GPL'en, så længe de er afledte af denne kode. Samtidig er der et afsnit i GPL, der giver dig mulighed for at kræve bevarelse af forfatternavne i koden, forbyde brugen af disse navne i reklamer, advare om registrerede varemærker osv., som giver dig mulighed for at kombinere værker under GPL med værker under mange gratis ikke-copyleft-licenser (for eksempel nogle fra BSD-licenserne ), uden at skabe væsentlige begrænsninger og uden at overtræde licensen - men afledte resultater, der er afledte af arbejde under GPL, kan ikke længere (uden særskilt tilladelse fra ophavsretsindehaverne) distribueres under vilkårene i denne ikke-copyleft-licens uden at overholde betingelserne i GPL - herunder inklusive og som en integreret del af ikke-fri software. Af denne grund kaldes licenser som GNU GPL nogle gange også "virale licenser" : de ser ud til at "inficere" programmet og bliver en integreret del af det.
Hovedbetingelsen for eksistensen af fri software er trods alt ikke en licens, men folk, der er klar til at dele deres programmers tekster gratis og forbedre andres tekster. Fri software arvede den åbne videnskabelige udviklingsmodel og med den den akademiske model for interaktion mellem videnskabsmænd, hvilket resulterede i en specifik organisering af fællesskabet af udviklere og brugere.
Enhver bruger af software vil uundgåeligt have spørgsmål, når han forsøger at bruge den til at løse sine problemer. Brugeren af et ikke-gratis (proprietært) program betaler producenten for det, som nogle gange giver ham nogle garantier til gengæld, hvoraf den ene er at besvare spørgsmål om programmets drift. Specielt til dette organiserer producenten en supporttjeneste, der besvarer brugerspørgsmål via telefon, e-mail og andre kommunikationsmidler.
Brugeren af et frit distribueret program modtager ingen garantier med det: Forfatteren gjorde sin kildekode åben for offentligheden, men forpligtede sig samtidig ikke til at forklare alle, hvordan programmet fungerer. [8] Selvom enhver ikke-fri software i 99 % af tilfældene også leveres "som den er" og uden garanti. Da fællesskabet af brugere af de fleste programmer er distribueret over hele verden, for at organisere interaktion i det, organiserer de mest aktive brugere (og ofte forfatterne selv) (mindre ofte, brug eksisterende) mailinglister , fora og andre midler kommunikation på internettet . For at akkumulere og klassificere information om programmet (især lister over ofte stillede spørgsmål - FAQ ; eller engelsk FAQ - ofte stillede spørgsmål), samt organisere mere komplekse former for interaktion (fælles udvikling, fejlsporingssystemer ), oprettes hjemmesider dedikeret til programmer.
I ethvert tilstrækkeligt komplekst program er der bundet til at være fejl og defekter, hvis antal normalt er ukendt. Mange store softwareproducenter opretter og betaler for arbejdet i en kvalitetskontrolafdeling (QA - Quality assurance ), som kontrollerer softwareudviklingsprocessens overholdelse af visse krav, hvis implementering reducerer sandsynligheden for fejl i softwaren (f.eks. , kravene i DO-178B standarden , som bruges i softwareudvikling til luftfartssystemer). Men på nuværende tidspunkt er der ingen metoder til fuldt ud at garantere fraværet af fejl i ret kompleks software (der er formaliserede kriterier for softwarekompleksitet).
En bruger af et lukket proprietært program, der står over for en fejl, kan ikke altid identificere dens årsag og rette fejl (da hverken programmets kildekode eller endog fejlretningsinformation er tilgængelig for ham ), men højst sandsynligt er han i stand til at beskrive fejlen og de forhold, hvorunder den opstår.
Brugeren kan rapportere en fejl til programproducenten (normalt ved at kontakte det samme supportteam ), og hvis de beslutter, at fejlen virkelig er i programmet og ikke i brugerens arbejde, vil det blive rapporteret til udviklerne.
Som et resultat kan brugeren vente længe på, at fejlen bliver rettet i efterfølgende versioner af programmet. Ofte sidestilles opdatering af et proprietært program af producenten med erhvervelse af en ny kopi, hvilket medfører de tilsvarende omkostninger og overtrædelse af forbrugerbeskyttelsesloven .
Diagnosticering af en fejl, der er opstået på en brugers computer, er ikke en nem opgave, da supportpersonalet (og endnu mere virksomhedens programmører) muligvis ikke har adgang til denne computer. Derfor praktiserer supportafdelinger i vid udstrækning programmer, der udsender forskellige informationer om brugerens computer, og i komplekse tilfælde de berygtede fejlretningsoplysninger (en medarbejder beder brugeren om at køre programmet i "diagnostisk tilstand" (normalt ved hjælp af en udokumenteret indstilling, eller brugeren får tilsendt en fejlretningsversion af det ønskede modul) og sender ham den resulterende rapportfil).
Et typisk gratis program (det vil sige ikke-kommercielt og/eller udviklet af en lille virksomhed eller enkeltperson) har normalt ikke en betalt QA-afdeling. Det betyder, at brugeren kan støde på endnu flere fejl end i et typisk kommercielt proprietært program. Jo mere relevant for ham er muligheden for at rapportere en fejl til udviklerne af programmet. Tidligere var det sædvanligt i dokumentationen, der fulgte med programmet, at angive den e-mailadresse, hvor udviklerne modtog fejlrapporter. Nogle har indført en stereotyp form for sådanne meddelelser for at lette og automatisere deres behandling. Dette alene kræver en markant højere fællesskabsforbindelse rundt om i verden, væsentligt mere end nok til lukket udvikling.
Udviklere og testledere af et proprietært produkt kan gå til det samme kontor og udveksle oplysninger der eller bruge en vis brøkdel af deres arbejdstid på at kompilere og analysere strenge rapporter, der indeholder fejlmeddelelser og fejlfindingsrapporter. En sådan organisering af arbejdskraften er effektiv, hvis kredsen af udviklere er lille, og det er relativt nemt at indføre en fælles rutine. For et åbent projekt er kredsen og den relative position for potentielle udviklere ikke begrænset af noget, så effektiviteten af udvikling afhænger i langt højere grad af, hvor let det er for alle medlemmer af samfundet at blive enige indbyrdes, samt om brugernes "bevidsthed".
Den enkle og velordnede modtagelse og omdirigering af fejlmeddelelser leveres af fejlsporingssystemer , hvoraf de mest berømte er udviklet af deltagere i store projekter for sig selv, og takket være gratis licenser bruges de overalt. Sådanne er GNUTS (udviklet i GNU), Bugzilla ( Mozilla Foundation ), JitterBug ( Samba -projekt ) eller Debian BTS . Tidligere versioner er e-mail-orienterede, senere inkluderer en webgrænseflade. For eksempel, ved hjælp af Bugzilla, organiseres et websted på internettet , hvor brugeren kan udfylde en formular for at rapportere en fejl. Hver besked har sit eget nummer, hvormed du kan komme til den "personlige" side af denne fejl, som afspejler alle de hændelser, der opstår om den, fra den første besked (åbning) til rettelsen (lukning). Hver gang der er en ændring i fejlens tilstand, sender Bugzilla e-mails til alle berørte (herunder naturligvis fejlrapporteren og de udviklere, der er involveret i programmet). Da Bugzilla giver dig mulighed for at efterlade kommentarer og vedhæfte filer, er det et komplet middel for brugeren at kommunikere med udvikleren om en fejl i programmet.
Den væsentligste fordel ved en gratis softwarebruger er, at han i modsætning til ikke-fri softwarebrugere altid har mulighed for at se på kildekoden. For mange brugere er kildekode naturligvis ikke mere forståelig end maskinkode. Men med et tilstrækkeligt vidensniveau i programmering kan brugeren selv bestemme årsagen til fejlen i programmet, eller endda eliminere den ved at rette kildeteksten i overensstemmelse hermed. Og hvis brugeren er interesseret i udviklingen af programmet, ville det være rimeligt for ham ikke kun at informere forfatteren om fejlen, men også sende ham sine rettelser til programmets kildekode: forfatteren vil kun have at anvende disse rettelser på programteksten, hvis han finder dem korrekte og passende. Det er upraktisk at sende den rettede tekst af programmet til forfatteren i sin helhed: den kan være meget stor (titusindvis af linjer), og det vil ikke være let for forfatteren at finde ud af, hvad der er blevet ændret (hvad nu hvis ændringerne blev foretaget analfabet?).
For at lette og automatisere processen med at lave rettelser udviklede Larry Wall i 1984 programrettelsesværktøjet, som i en formaliseret (men velforstået for en person) form beskriver de redigeringshandlinger, der skal udføres for at få en ny version af teksten. Med fremkomsten af dette værktøj kunne brugeren, der opdagede og rettede en fejl i programmet, sende forfatteren en lille patch, ifølge hvilken forfatteren kunne forstå, hvilke ændringer der blev foreslået, og automatisk "vedhæfte" dem til sin kildekode. Med fremkomsten af patch-værktøjet begyndte mange flere brugere at blive involveret i udviklingen af programmer med tilgængelig kildekode, og Usenet spillede en væsentlig rolle i dette . [9] I sidste ende blev denne patchmetode almindelig og ikke kun anvendt på programmets kildekode, men også direkte på den kompilerede eksekverbare kode i tilfælde af lukket software, og ordet "patch" blev et almindeligt ord . . Patches (patches med rettelser) er en obligatorisk egenskab ved dagens udvikling af programmer af enhver kompleksitet. [ti]
Hvis brugeren af programmet mangler en eller anden funktion i det, så med passende kvalifikationer, kan han godt programmere det selv og inkludere det i programmets kildekode eller betale en anden for det. Naturligvis er det en fordel for ham, at hans tilføjelse kommer ind i "hoved", forfatterens version af programmet (det kaldes upstream) og vises i alle efterfølgende versioner: du kan bare arrangere det i form af en patch og sende det til forfatteren. Denne evne nægtes brugeren af et ikke-gratis program, selvom han er tilstrækkeligt kvalificeret. Den eneste måde at inkludere den funktion, han har brug for i programmet, er at kontakte producenten (hvis programmet er proprietært) med en tilsvarende anmodning og håbe, at producenten anser den foreslåede funktion for virkelig nødvendig.
Jo flere aktive brugere et gratis program har, som er klar til at bidrage og dele rettelser, tilføjelser, jo mere pålideligt virker programmet og jo hurtigere udvikler det sig. Desuden kan en sådan gratis model til at spore og rette fejl for et program med tusindvis af aktive brugere være meget mere effektiv end noget proprietært program: ingen virksomhed har råd til et så stort personale i kvalitetskontrolafdelingen. Derfor kan et virkelig populært gratis program være meget mere pålideligt end dets proprietære modstykker.
At skrive et stort program alene er ret svært og ikke engang altid muligt, især hvis forfatteren gør det i sin fritid. Mest moderne gratis software er skrevet af en gruppe udviklere. Selvom én person begyndte at skrive et program, og det viste sig at være interessant, kan aktive brugere deltage i udviklingen. For at de ikke kun kan foretage individuelle rettelser, men generelt gennemføre hele udviklingen sammen, er der brug for specielle værktøjer. Ud over patches bruges versionskontrolsystemer til at organisere fælles softwareudvikling . Funktionerne i versionskontrolsystemet er at organisere adgangen til programmets kildekode for flere udviklere og gemme en historik over alle ændringer i kildekoden, så du kan flette og fortryde ændringer osv. [11] Den tidligste gratis version kontrolsystem - RCS - blev brugt tilbage i begyndelsen af gratis software af Usenet-abonnenter, derefter blev det erstattet af et mere udviklet CVS , men i dag anses det for stort set forældet og bliver i stigende grad erstattet af Subversion , Git og andre.
Det skal bemærkes, at fordelene ved gratis udvikling for brugeren ikke bør overdrives. Ikke al gratis software er lige tilgængelig for ændring af brugere, og dette har intet at gøre med licensen til at distribuere den. En vigtig faktor her er størrelsen af programmet: hvis det indeholder titusindvis af linjer (som f.eks. i OpenOffice.org ), så vil selv en kvalificeret bruger tage for meget tid på at finde ud af, hvad der er hvad. Det er også umuligt at regne med, at udviklerne vil svare på alle kommentarer og forslag fra brugeren ved straks at rette programmet, da de ikke har nogen forpligtelser over for brugeren med hensyn til programmets kvalitet. I denne henseende kan brugeren af et proprietært kommercielt program være i en bedre position (selv om dets udviklers forpligtelser normalt også kun skyldes love og ikke hans vilje).
Så mange af funktionerne i det gratis softwarefællesskab af udviklere og brugere stammer fra det faktum, at alle dets medlemmer normalt engagerer sig i programmet af interesse, eller fordi programmet er et nødvendigt værktøj for dem (f.eks. for at tjene penge eller anden grund). Den tid, de bruger på programmet, bliver ikke betalt, så der er intet håb om, at omstændighederne ikke ændrer sig, og udviklingen ikke stopper helt. Det er ikke ualmindeligt, at udviklingen af et program går i gang takket være én entusiastisk forfatter, der tiltrækker mange mennesker til at deltage i udviklingen, og så svinder lederens begejstring, og udviklingen svinder med. Der er tusindvis af programmer i dag, der aldrig nåede til version 1.0, selvom lederudbrændthed ikke er den eneste grund. Derudover kan programmet være nødvendigt, men "uinteressant", og derfor vil der ikke være nogen gratis udviklere. [12]
Fri softwares plads på nutidens softwaremarked er meget vigtig, og mange kommercielle og offentlige virksomheder bruger gratis software direkte eller indirekte. Faktisk, indirekte bruger alle internetbrugere for eksempel det gratis program BIND , som leverer en DNS -tjeneste . Mange organisationer, især dem, der leverer tjenester over internettet, bruger den gratis Apache -webserver , som deres fortjeneste direkte afhænger af, for ikke at nævne servere på Linux -platformen . Den største ulempe set fra en kommerciel brugers synspunkt er, at fri softwareudviklere ikke har nogen anden forpligtelse end en moralsk forpligtelse om kvaliteten af et program. Derfor finder store virksomheder, såsom Intel eller IBM , det nødvendigt at støtte gratis softwareudviklingsprojekter ved at betale medarbejdere, der arbejder inden for disse projekter.
I europæisk kultur er ejerskabsreglerne i forhold til materielle værdier blevet udviklet i lang tid . Og det er ret logisk, at disse regler blev udvidet til ikke-materielle værdier - inklusive softwareprodukter, da de begyndte at repræsentere en uafhængig værdi.[ neutralitet? ] Softwareprodukter har dog en grundlæggende forskel fra materielle objekter - de kan nemt kopieres. At skabe en kopi af et væsentligt produkt er ofte næsten lig med omkostningerne ved at skabe originalen.
På grund af denne forskel gælder princippet "kun én person kan bruge en ting ad gangen" ikke for software (og brug af det af en anden forårsager automatisk skade på den første person på grund af ikke at modtage fordele fra det), hvilket er grunden til begrebet "ejer" eksisterer. Derfor opfattes et forsøg her på at handle efter dette princip - at overdrage retten til at bruge programmet til én person - intuitivt [13] som i strid med tingenes natur. Det er ikke overraskende, at der opstår mange problemer, som hver især skal løses med kunstige og ofte unaturlige metoder.
Den klassiske metode af denne type er producentens retlige tilbageholdelse af rettigheder til softwaren, som så at sige giver softwaren til sine brugere til midlertidig brug. I dette tilfælde er brugen af ulicenseret software i det væsentlige sidestillet med begrebet loven i engelsktalende lande, kendt som tyveri af tjenester. Men dette koncept har ingen analoger i andre nationale kulturer, for eksempel russisk, og netop af de grunde, der er givet 2 afsnit ovenfor (ejeren er ikke frataget muligheden for at bruge tingen, hvilket er den vigtigste negative konsekvens af tyveri). I russisk lov er tyveri af tjenester af enhver art intet andet end en administrativ lovovertrædelse, mens der stilles strafferetligt ansvar for ulicenseret software, som lyder dissonant i russisk kultur.
Men nogle gange er det for eksempel nødvendigt at simulere "skade som følge af manglende modtagelse af varen", som "påføres" "ejeren" af programmet, når det kopieres uden skader, eller når penge returneres ved fejl og der findes mangler i programmerne. Normalt er dette "tabt fortjeneste", det vil sige den fortjeneste, som ejeren kunne have modtaget, men ikke fik på grund af, at produktet blev kopieret. Vi skal opfinde genialt udstyr , der forstyrrer kopieringen eller forårsager skade. Det er nødvendigt at indføre en særlig kategori af rettigheder i lovgivningen - lad os betinget kalde det et "patent" [14] - der begrænser misbruget - og friheden - af hele menneskeheden til fordel for ejeren af patentet. Desuden er ejeren af patentet og forfatteren til opfindelsen ikke altid den samme person (i sådanne tilfælde forværres den unaturlige karakter af disse foranstaltninger kun).
Der er også et synspunkt fra modstanderne af ovenstående. Så for eksempel betyder den konsekvente legalisering af tyveri af tjenester, at alle tjenester er gratis, hvilket højst sandsynligt betyder, at hele dette område vedligeholdes af statsbudgettet, og i dette tilfælde for det første betaler alle skatteydere for tjenester fra deres skatter, og uden en markedsmekanisme for forbrugerindflydelse på producenten ("spis hvad de giver"), for det andet afleder det statslige midler fra opgaver af national betydning, for det tredje vil den manglende markedskonkurrence føre til udjævning af kvaliteten af alle tjenester til et vist minimum af billigt og ikke særlig høj kvalitet (det er endda muligt, at en del af leveringen af tjenester tildeles forbrugeren på en gør-det-selv måde). Det samme gælder ideen om total frihed for al software.
Ikke-frie programmer kaldes " proprietary " (fra engelsk proprietary ) eller "proprietary". Nogle gange omtales de forkert blot som " kommercielle ", hvilket er forkert: der er mange måder at drage fordel af et program på, og mange vellykkede gratis projekter beviser dette.
Overgangen til specifik fri software, såvel som den generelle tendens til en gradvis stigning i udbredelsen af open source-software blandt brugere, kaldes ofte migreringen til fri software.
Medier , der ikke specialiserer sig i computeremner , sætter som regel lighedstegn mellem åben og fri software, bruger dem som synonymer. Derfor er data om udbredelsen af open source og fri software normalt givet sammen.
Open source-software bruges aktivt på internettet. For eksempel er den mest almindelige Apache -webserver gratis, Wikipedia er drevet af MediaWiki , som også er et gratis projekt.
Gratis software bruges af det belgiske justitsministerium, som allerede har halvdelen af sine computere, der kører Linux , og af det franske politi, som er helt skiftet til GendBuntu , en Ubuntu-baseret distribution. Det er planlagt at overføre alle computere i denne institution til gratis software inden udgangen af 2009 .
Open source-programmet er med succes implementeret i München . Et lignende program fandt sted i Berlin , men det blev efterfølgende besluttet at bruge en hybrid infrastruktur af kommerciel og fri software. [femten]
Fra 2009 ejer åbne systemer allerede størstedelen (over 60%) af mobilappmarkedet. Ifølge Juniper Research vil antallet af smartphones med åbne operativsystemer i 2014 stige med 2 gange (fra 106 til 223 millioner). [16]
Gratis software kan under alle omstændigheder frit installeres og bruges på enhver computer. Brugen af sådan software er gratis overalt: i skoler, kontorer, universiteter, på personlige computere og i alle organisationer og institutioner, inklusive kommercielle og statslige, i Rusland og SNG-landene .
Den Russiske Føderations regering godkendte ved dekret nr. 2299-r af 17. december 2010 [17] en plan for overgangen af føderale udøvende organer og føderale budgetinstitutioner til brug af fri software for 2011-2015 [18] .
Det russiske forsvarsministeriums institutioner, såvel som russiske ambassader i andre lande, bruger WSWS -operativsystemet . Dette OS, baseret på Red Hat Linux med mindre ændringer, er ikke gratis software, dets kildekoder er lukkede.
Fra 1. juni 2011 er GOST R ISO/IEC 26300-2010 gyldig for OpenDocument-formatet .
Fra 1. januar 2012 GOST R 54593-2011 “Informationsteknologier. Gratis software. Almindelige bestemmelser” [19] .
I begyndelsen af 2012 var omkring 22.000 arbejdspladser i Moskva poliklinikker planlagt [ opdatering ] til at blive udstyret med pc'er , der kører Alt Linux . [tyve]
Den 15. april 2013 begyndte indsamlingen af underskrifter til statsfinansiering af gratis softwareuddannelse til befolkningen i Rusland [21] .
Den 12. marts 2014 blev føderal lov nr. 35-FZ underskrevet med ændringer til fjerde del af Den Russiske Føderations civile lovbog, der regulerer brugen af åbne licenser på Den Russiske Føderations territorium [22] .
Den 3. april 2014 annoncerede informationsteknologiafdelingen i Federal Bailiff Service brugen af sin egen specialiserede Linux -distribution GosLinux ( baseret på CentOS ) som en del af den igangværende "politik om at indføre gratis software og importsubstitution af informationsteknologier" [23 ] [24] .
Gratis software i skolerI tre regioner i Rusland blev der i 2008 lanceret eksperimenter med introduktion og brug i gymnasier af grundlæggende softwarepakker til klasseværelser inden for datalogi og computerteknologi, og uddannelse af lærere og lærere i datalogi til at arbejde med gratis software i Windows og Linux-miljøer begyndte [25] .
Brugere, der ellers ville foretrække gratis software frem for ikke-fri software, fortsætter med at bruge ikke-fri software af følgende årsager:
I bibliografiske kataloger |
---|
fri software -bevægelsen | Nøglepersoner i|
---|---|
|
Gratis og open source software | |
---|---|
Det vigtigste |
|
Fællesskab |
|
Organisationer | |
Licenser | |
Problemer | |
Andet |
|
|
Software distribution | |
---|---|
Licenser | |
Indkomstmodeller | |
Forsendelsesmetoder |
|
Svigagtig/ulovlig | |
Andet |
|
Uafhængige produkter | |
---|---|
Læsning |
|
Høring |
|
Film |
|
Computere |
|
Begreber | |
se også |
|