summaryrefslogtreecommitdiff
path: root/talermerchantdemos/blog/articles/hr/thegnuproject.html
blob: 6347751911f90388adba3f7e28703405b0fbe664 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
<!--#set var="PO_FILE"
 value='<a href="/gnu/po/thegnuproject.hr.po">
 https://www.gnu.org/gnu/po/thegnuproject.hr.po</a>'
 --><!--#set var="ORIGINAL_FILE" value="/gnu/thegnuproject.html"
 --><!--#set var="DIFF_FILE" value="/gnu/po/thegnuproject.hr-diff.html"
 --><!--#set var="OUTDATED_SINCE" value="2014-04-22" -->

<!--#include virtual="/server/header.hr.html" -->
<!-- Parent-Version: 1.86 -->

<!-- This file is automatically generated by GNUnited Nations! -->
<title>O Projektu GNU - Projekt GNU - Zaklada za slobodni softver</title>
<meta http-equiv="Keywords" content="GNU, Projekt GNU, FSF, slobodni softver, Zaklada za slobodni softver,
povijest" />

<!--#include virtual="/gnu/po/thegnuproject.translist" -->
<!--#include virtual="/server/banner.hr.html" -->
<!--#include virtual="/server/outdated.hr.html" -->
<h2>Projekt GNU</h2>

<p>
napisao <a href="http://www.stallman.org/"><strong>Richard
Stallman</strong></a></p>

<blockquote>
<p>
Izvorno objavljeno u knjizi <em>Otvoreni Izvori</em>. Richard Stallman <a
href="/philosophy/open-source-misses-the-point.html">nije nikada bio
pobornik &ldquo;otvorenog izvornog koda&rdquo;</a> (&ldquo;<i>open
source</i>&rdquo;), ali je pridonijeo ovaj članak tako da ideje pokreta
slobodnog softvera ne budu u potpunosti odsutne iz te knjige.
</p>

</blockquote>

<h3>Prva zajednica oko softvera za razmjenu</h3>
<p>
Kada sam 1971. započeo raditi u <abbr title="Massachusetts Institute of
Technology">MIT-ovom</abbr> Laboratoriju za imjetnu inteligenciju, postao
sam dio zajednice okupljene oko softvera za razmjenu koja je postojala mnogo
godina. Razmjena softvera nije bila ograničena samo na našu zajednicu; stara
je kao i računala, isto kao što je razmjena recepata stara isto kao i
kuhanje. Ali mi smo razmjenjivali više nego većina.</p>
<p>
Laboratorij za UI je koristio operativni sustav sa značajkom dijeljenja
vremena (<i>timesharing</i>) zvan <abbr title="Incompatible Timesharing
System">ITS</abbr> (<i>Incompatible Timesharing System</i>) kojeg je
laboratorijsko osoblje hakera (1) dizajniralo i zapisalo u programskom
jeziku asembler za Digital <abbr title="Programmed Data
Processor">PDP</abbr>-10, jednog od velikih računala tog razdoblja. Kao član
te zajednice, haker sustava u osoblju Laboratorija za UI, moj posao je bio
da poboljšam taj sustav.</p>
<p>
Nismo zvali naš softver &ldquo;slobodnim softverom&rdquo;, jer taj termin
još nije postojao, ali to je ono što je taj softver bio. Kada god su ljudi s
drugih sveučilišta ili kompanija htjeli prebaciti i koristiti program na
njihovim sustavima, mi smo im to rado dopustili. Ako biste vidjeli nekoga da
koristi nepoznati i zanimljivi program, vi ste uvijek mogli pitati da vidite
izvorni kod, tako da biste ga mogli čitati, izmijeniti, ili preuzeti
dijelove za prepravak da biste napravili novi program.</p>
<p>
(1) Korištenje termina &ldquo;haker&rdquo; u značenju &ldquo;prekršitelja
sigurnosnog sustava&rdquo; je pometnja od strane masovnih medija. Mi,
hakeri, odbijamo priznati to značenje, i nastavljamo koristiti riječ kao da
označava nekoga tko voli programirati, nekoga tko uživa u razigranoj
bistrini, ili u kombinaciji tih dvoje. Pogledajte moj članak, <a
href="http://stallman.org/articles/on-hacking.html">O hakiranju</a>.</p>

<h3>Kolaps zajednice</h3>
<p>
Situacija se drastično promijenila u ranim 1980-ima kada je Digital ukinuo
seriju PDP-10. Njegova arhitektura, elegantna i moćna u 60-ima, nije se
mogla prirodno produžiti na veće adresne prostore koji su postajali
izvodivima u 80-ima. To je značilo da su skoro svi programi koji su
sastavljali ITS bili zastarjeli.</p>
<p>
Hakerska zajednica Laboratorija za UI je, nedugo prije toga,
kolapsirala. 1981., derivirana (<i>spin-off</i>) kompanija Symbolics je
unajmila skoro sve hakere iz Laboratorija za UI, i raseljena zajednica nije
bila u mogućnosti da se održava. (Knjiga Hakeri, čiji autor je Steve Levy,
opisuje te događaje i daje jasnu sliku te zajednice u njezinim najboljim
vremenima.) Kada je 1982. Laboratorij za UI kupio novi PDP-10, njegovi
administratori su odlučili koristiti neslobodni sustav dijeljenja vremena od
tvrtke Digital umjesto ITS-a.</p>
<p>
Moderna računala toga razdoblja, kao što su VAX ili 68020, imala su vlastite
operacijske sustave, ali niti jedan od njih nije bio slobodni softver:
morali ste potpisati sporazum o tajnosti (<i>nondisclosure</i>) samo da
biste dobili izvršnu kopiju.</p>
<p>
Ovo je značilo da je prvi korak u korištenju računala bio obećanje da nećete
pomagati svome susjedu. Zajednica koja surađuje je bila zabranjena. Pravilo
koje su napravili vlasnici vlasničkog (<i>proprietary</i>) softvera je bilo,
&ldquo;Ako razmjenjujete sa svojim susjedom, vi ste pirat. Ako želite neke
promjene, molite nas da ih napravimo.&rdquo;</p>
<p>
Ideja da je društveni sustav vlasničkog softvera&mdash;sustav koji kaže da
vam nije dopuštena razmjena ili izmjena softvera&mdash;antisocijalan, da je
ne-etičan, da je jednostavno kriv, može biti iznenađenje nekim
čitateljima. Ali što drugo možemo reći o sustavu utemeljenom na podijeli
javnosti i na ostavljanju korisnika bespomoćnima? Čitatelji koji nalaze
ideju iznenađujućom možda su prihvatili društveni sustav vlasničkog softvera
kao dan, ili su ga procijenili u terminima predloženima od strane tvrtki
koje se bave vlasničkim softverom. Izdavači softvera su radili dugo i
naporno da bi uvjerili ljude da postoji samo jedan način da se gleda na taj
problem.</p>
<p>
Kada izdavači softvera govore o &ldquo;provođenju&rdquo; svojih
&ldquo;prava&rdquo; ili o &ldquo;zaustavljanju <a
href="/philosophy/words-to-avoid.html#Piracy">piratstva</a>&rdquo;, ono što
uistinu govore je sekundarno. Stvarna poruka tih izjava je u neutvrđenim
pretpostavkama koje oni uzimaju zdravo za gotovo, koje je javnost pozvana da
prihvati bez ispitivanja. Hajdemo ih stoga ispitati. </p>
<p>
Jedna pretpostavka je da softverske kompanije imaju neupitno prirodno pravo
da posjeduju softver i stoga da imaju moć nad svim svojim korisnicima. (Kada
bi to bilo prirodno pravo, tada bez obzira na količinu štete nanesenu
javnosti, ne bismo mogli prigovoriti.) Interesantno, Američki Ustav i pravna
tradicija odbijaju takvo gledište; autorsko pravo (<i>copyright</i>) nije
prirodno pravo, nego umjetan, od vlade nametnuti monopol koji ograničuje
korisnička prirodna prava na kopiranje.</p>
<p>
Druga ne-utvrđena pretpostavka: jedina važna stvar oko softvera je koje vam
poslove dopušta da napravite&mdash;da mi, računalni korisnici ne bi trebali
mariti za vrstu društva koje nam je dopušteno imati.</p>
<p>
Treća pretpostavka je da mi ne bismo imali upotrebljivi softver (ili nikada
ne bismo imali program koji će napraviti taj ili onaj partikularni posao)
kada ne bismo ponudili kompaniji moć nad korisnicima programa. Ova
pretpostavka se možda činila vjerodostojna, prije nego je pokret slobodnog
softvera pokazao da možemo napraviti mnogo korisnog softvera bez da ga
ograničimo.</p>
<p>
Ako odbijemo prihvatiti te pretpostavke, i prosudimo te probleme temeljem
obične zdravo razumske moralnosti dok stavljamo korisnike na prvo mjesto,
dolazimo do vrlo različitih zaključaka. Računalni korisnici bi trebali biti
slobodni da izmjenjuju programe kako bi isti odgovarali njihovim potrebama,
i biti slobodni da razmjenjuju softver, jer pomaganje drugim ljudima je
temelj društva.</p>
<p>
Ovdje nema mjesta za opsežnu izjavu o logici iza ovoga zaključka, stoga
upućujem čitatelja na mrežne stranice <a href="/philosophy/why-free.html">
/philosophy/why-free.html</a> i <a
href="/philosophy/free-software-even-more-important.html">
http://www.gnu.org/philosophy/free-software-even-more-important.html</a>.
</p>

<h3>Izraziti moralni izbor</h3>
<p>
Kada je moja zajednica nestala, nastavak u istome tonu je postao
nemogućim. Umjesto toga, suočio sam se sa izrazitim moralnim izborom.</p>
<p>
Lagani izbor je bio pridruživanje svijetu vlasničkog softvera, potpisujući
sporazume o tajnosti i obećavajući da neću pomoći kolegi
hakeru. Najvjerojatnije bi isto razvijao softver objavljen pod sporazumima o
tajnosti, dakle dodajući pritisak na druge ljude da isto izdaju svoje
kolege.</p>
<p>
Na taj način mogao sam steći novac, i možda se zabaviti pisanjem koda. Ali
sam znao da na kraju moje karijere, gledao bi natrag na godine izgrađivanja
zidova da razdvojim ljude, osjećajući da sam proveo svoj život radeći svijet
gorim mjestom.</p>
<p>
Već sam doživio kako je to biti na drugoj strani sporazuma o tajnosti, kada
je netko odbio dati meni i MIT UI Laboratoriju izvorni kod upravljačkog
programa našega pisača. (Nedostatak određenih značajki u tom programu je
napravio korištenje pisača krajnje frustrirajućim.) Pa stoga nisam mogao
reći sebi da su sporazumi o tajnosti bili bezazleni. Bio sam vrlo ljut kada
je on odbio dijeliti sa nama; nisam mogao zauzvrat napraviti istu stvar svim
drugima.</p>
<p>
Drugi izbor, iskren ali neprijatan, je bio odlazak iz računalne struke. Na
taj način moje vještine ne bi bile krivo upotrijebljene, ali bi bile uzalud
potrošene. Ne bi bio kriv za razdjeljivanje i ograničavanje računalnih
korisnika, ali bi se to svejedno dogodilo.</p>
<p>
Dakle sam tražio način na koji bi programer mogao napraviti nešto za
dobrobit. Pitao sam sebe, da li postoji program ili programi koje bi mogao
napisati, u cilju ponovnog rađenja zajednice mogućom?</p>
<p>
Odgovor je bio jasan: prva potrebna stvar je bila operativni sustav. To je
presudan softver u počecima korištenja računala. Sa operativnim sustavom,
možete raditi mnoge stvari; bez njega, ne možete niti pokrenuti računalo. Sa
slobodnim operativnim sustavom, mogli bismo opet imati zajednicu hakera koji
surađuju&mdash;i pozvati svih da se pridruže. I svatko bi mogao koristiti
računalo bez da započne urotom lišiti njegove ili njezine prijatelje.</p>
<p>
Kao developer operativnih sustava, imao sam prave vještine za taj
posao. Iako nisam mogao uzeti uspjeh zdravo za gotovo, shvatio sam da sam
odabran da napravim posao. Odabrao sam da napravim sustav kompatibilan sa
Unix operativnim sustavom, tako da bi bio prenosiv, i da bi se Unix
korisnici mogli lako prebaciti na njega. Ime GNU je bilo odabrano, slijedeći
hakersku tradiciju, kao rekurzivni akronim za &ldquo;GNU Nije Unix.&rdquo;
<a href="/gnu/pronunciation.html">Izgovara se</a> kako se i piše.</p>
<p>
Operativni sustav ne znači samo imati jezgru (<i>kernel</i>), jedva dovoljnu
da pokrene druge programe. U 1970-ima, svaki operativni sustav dostojan
imena je uključivao naredbene procesore, asemblere, kompajlere,
interpretere, softver za praćenje izvršenja programa (<i>debugger</i>),
uređivače teksta, softver za slanje elektroničkih poruka (<i>mailer</i>), i
još mnogo toga. ITS ih je imao, Multics ih je imao, VMS ih je imao, i Unix
ih je imao. GNU operativni sustav će ih isto uključiti.</p>
<p>
Kasnije sam čuo ove riječi, pripisane Hillelu (1):</p>

<blockquote><p>
     Ako nisam za sebe, tko će biti za mene?<br />
     Ako sam samo za sebe, što sam ja?<br />
     Ako ne sada, kada?
</p></blockquote>
<p>
Odluka da se započne GNU Projekt je bila utemeljena u sličnom duhu.</p>
<p>
(1) Kao ateist, ne slijedim religijske vođe, ali ponekad se divim nekim
njihovim riječima.</p>

<h3>Slobodno kao u slobodi</h3>
<p>
Termin &ldquo;slobodan softver&rdquo; je ponekad pogrešno
shvaćeni&mdash;nema veze sa cijenom. On govori o slobodi. Ovo je, prema
tome, definicija slobodnoga softvera.</p>

<p>Program je slobodan softver, za vas, partikularnoga korisnika, ako:</p>

<ul>
  <li>Imate slobodu da pokrenete program kako želite, za bilo koji cilj.</li>

  <li>Imate slobodu da promijenite program da odgovara vašim potrebama. (Da ova
sloboda bude efektivna u praksi, morate imati pristup izvornome kodu, pošto
je izmjenjivanje programa bez izvornoga koda iznimno teško.)</li>

  <li>Imate slobodu ponovne distribucije kopija, bilo besplatno ili za cijenu.</li>

  <li>Imate slobodu distribucije izmijenjenih verzija programa, tako da zajednica
može imati korist od vaših poboljšanja.</li>
</ul>
<p>
Pošto se &ldquo;slobodan&rdquo; odnosi na slobodu, ne na cijenu, nema
kontradikcije između prodavanja kopija i slobodnog softvera. U stvarnosti,
sloboda prodavanja kopija je presudna: kolekcije slobodnog softvera koje se
prodaju na CD-ROM-ovima su važne za zajednicu, i njihovo prodavanje je važan
način da se sakupe sredstva za razvijanje slobodnog softvera. Prema tome,
program kojeg ljudi nisu slobodni uključiti u te kolekcije nije slobodan
softver.</p>
<p>
Zbog dvosmislenosti &ldquo;slobodnog&rdquo;, ljudi su odavna tražili
alternative, ali nitko nije našao bolji termin. Engleski jezik ima više
riječi i nijansi nego bilo koji drugi, ali nedostaje mu jednostavna,
nedvosmislena, riječ koja znači &ldquo;slobodan&rdquo;, kao u
slobodi&mdash;&ldquo;nesputani&rdquo; je riječ koja dolazi najbliže pravom
značenju. Takve alternative kao &ldquo;oslobođen&rdquo;,
&ldquo;sloboda&rdquo; i &ldquo;otvoren&rdquo; imaju ili krivo značenje ili
neki drugi hendikep.</p>

<h3>GNU softver i GNU sustav</h3>
<p>
Razvijanje cijeloga sustava je vrlo veliki projekt. Da bi se stavio u doseg,
odlučio sam prilagoditi i koristiti postojeće dijelove slobodnog softvera
kada god je to bilo moguće. Na primjer, odlučio sam na samome početku
koristiti TeX kao glavni oblikovatelj teksta; nekoliko godina kasnije,
odlučio sam iskoristiti X Window System, radije nego pisati novi grafički
sustav za GNU.</p>
<p>
Zbog tih odluka, i drugih sličnih njima, GNU sustav nije isto što i
kolekcija svog GNU softvera. GNU sustav uključuje programe koji nisu GNU
softver, programe koje su razvili drugi ljudi i projekte za njihove vlastite
ciljeve, ali koje možemo koristiti jer su slobodan softver.</p>

<h3>Početak projekta</h3>
<p>
U siječnju 1984. dao sam otkaz na MIT-u i počeo pisati GNU softver. Odlazak
iz MIT-a je bio nužan tako da se MIT ne bi mogao umiješati u distribuciju
GNU-a kao slobodnog softvera. Da sam ostao u osoblju, MIT je mogao tvrditi
da posjeduje djelo, i mogao je nametnuti svoja distribucijska pravila, ili
čak pretvoriti djelo u vlasnički softverski paket. Nisam imao namjeru raditi
veliki opseg posla samo da vidim kako postaje beskoristan za njegov
namijenjeni cilj: stvaranje nove zajednice oko softvera za razmjenu.</p>
<p>
Međutim, profesor Winston, tada glavni u MIT UI Laboratoriju, ljubazno me
pozvao da nastavim koristiti postrojenja laboratorija.</p>

<h3>Prvi koraci</h3>
<p>
Nedugo nakon početka GNU Projekta, čuo sam za Kompajlerski Sustav Slobodnog
Svučilišta, znani kao VUCK. (Nizozemska riječ za &ldquo;slobodan&rdquo; se
piše sa <em>v</em>.) To je bio kompajler dizajnirani da barata sa
višestrukim jezicima, uključujući C i Pascal, i da podržava višestruke
ciljne strojeve. Pisao sam njegovu autoru sa pitanjem da li ga GNU može
koristiti.</p>
<p>
Odgovorio je podrugljivo, izjavljujući da je sveučilište slobodno ali
kompajler nije. Prema tome sam odlučio da će moj prvi program za GNU Projekt
biti višejezičan, višeplatformski kompajler.</p>
<p>
Nadajući da ću izbjeći potrebu da sam napišem cijeli kompajler, nabavio sam
izvorni kod za Pastel kompajler, koji je bio višeplatformski kompajler
razvijen u Lawrence Livermore Laboratoriju. Podržavao je, i bio je napisan u
poboljšanoj verziji Pascal jezika, dizajniran da bude jezik za sistemsko
programiranje. Dodao sam C sučelje, i započeo prenošenje na Motorola 68000
računalo. Ali morao sam odustati od toga kada sam otkrio da kompajler
potrebuje mnogo megabajta stog (<i>stack</i>) prostora, dok je dostupni
68000 Unix sustav samo dozvoljavao 64k.</p>
<p>
Tada sam shvatio da je Pastel kompajler funkcionirao tako što je
raščlanjivao (<i>parse</i>) cijelu ulaznu datoteku u stablo sintakse,
pretvarajući cijelo sintaksno stablo u lanac &ldquo;instrukcija&rdquo;, i
tada je generirao cijelu izlaznu datoteku, bez da je oslobodio bilo kakav
prostor. U toj točki, zaključio sam da ću morati iznova napisati novi
kompajler. Taj novi kompajler je sada znani kao <abbr title="GNU Compiler
Collection">GCC</abbr>; ništa od Pastel kompajlera nije upotrebljeno u
njemu, ali sam uspio prilagoditi i iskoristiti C sučelje koje sam
napisao. Ali to je bilo nekoliko godina kasnije; prvo sam radio na GNU
Emacs-u.</p>

<h3>GNU Emacs</h3>
<p>
Započeo sam rad na GNU Emacs-u rujnu 1984., i u ranoj 1985. postajao je
upotrebljiv. To mi je omogućilo da počinjem koristiti Unix sustave za
uređivanje; bez interesa da naučim koristiti vi ili ed, do tada sam radio
uređivanje na drugim vrstama strojeva.</p>
<p>
U toj točki, ljudi su počeli željeti koristiti GNU Emacs, što je uzdignulo
pitanje oko načina njegove distribucije. Naravno, stavio sam ga na anonimni
ftp poslužitelj na MIT računalu koje sam koristio. (To računalo,
prep.ai.mit.edu, je dakle postalo glavno mjesto za GNU ftp distribuciju;
kada je bilo ukinuto nekoliko godina kasnije, premjestili smo ime na naš
novi ftp poslužitelj.) Ali u to vrijeme, mnogi ljudi koji su bili
zainteresirani nisu bili na Internetu i nisu mogli preuzeti kopiju
ftp-om. Dakle pitanje je bilo, što ću njima reći?</p>
<p>
Mogao sam reći: &ldquo;Nađite prijatelja koji je na mreži i koji će
napraviti kopiju za vas.&rdquo; Ili sam mogao napraviti isto što i sa
originalnim PDP-10 Emacs-om: reći im: &ldquo;Pošaljite mi traku i <abbr
title="Self-addressed Stamped Envelope">SASE</abbr>, i poslati ću vam je
natrag sa Emacs-om.&rdquo; Ali nisam imao posao, i tražio sam načine da
steknem novac od slobodnog softvera. Tada sam proglasio da ću poslati traku
svakome tko je htio, za proviziju od $150. Na taj način, započeo sam posao
distribucije slobodnog softvera, prethodnik kompanija koje danas
distribuiraju cijele distribucije GNU/Linux sustava.</p>

<h3>Da li je program slobodan za svakog korisnika?</h3>
<p>
Ako je program slobodan softver kada napusti ruke njegova autora, to nužno
ne znači da će biti slobodan softver za svakoga tko ima kopiju. Na primjer,
<a href="/philosophy/categories.html#PublicDomainSoftware">softver u javnom
vlasništvu</a> (softver koji nije pod autorskim pravom) je slobodan softver;
ali svatko može napraviti vlasničku izmijenjenu verziju. Slično, mnogi
slobodni programi su pod autorskim pravom ali su distribuirani pod
jednostavnim popustljivim licencama koje dopuštaju vlasničke izmijenjene
verzije.</p>
<p>
Paradigmatičan primjer toga problema je X Window System. Razvijen na MIT-u,
i objavljen kao slobodni softver sa popustljivom licencom, bio je uskoro
prilagođen od strane raznih računalnih kompanija. Oni su dodali X svojim
vlasničkim Unix sustavima, samo u binarnom obliku, i pokrivenom istim
sporazumom o tajnosti. Te X kopije više nisu bile slobodni softver, isto kao
što i Unix nije bio.</p>
<p>
Developeri X Windows System-a nisu to smatrali problemom&mdash;oni su
očekivali i naumili da se to dogodi. Njihov cilj nije bila sloboda, nego
samo &ldquo;uspjeh&rdquo;, definiran kao &ldquo;imati puno korisnika.&rdquo;
Oni nisu marili da li ti korisnici imaju slobodu, samo da bi trebali biti
brojni.</p>
<p>
To je vodilo u paradoksalnu situaciju gdje su dva različita načina brojanja
količine slobode dale različite odgovore na pitanje: &ldquo;Da li je ovaj
program slobodan?&rdquo; Ako ste prosuđivali na temelju slobode dane
distribucijskim pravilima MIT objave, rekli biste da je X bio slobodan
softver. Ali ako ste mjerili slobodu prosječnog X korisnika, morali biste
reći da je X vlasnički softver. Većina X korisnika su pokretali vlasničke
inačice koje su dolazile sa Unix sustavima, ne slobodne verzije.</p>

<h3>Copyleft i GNU GPL</h3>
<p>
Cilj GNU-a je bio dati korisnicima slobodu, ne samo biti popularan. Tako smo
trebali koristiti distribucijska pravila koja bi spriječila da GNU softver
bude pretvoren u vlasnički softver. Metoda koju koristimo se zove
&ldquo;copyleft&rdquo;.(1)</p>
<p>
Copyleft koristi zakon o autorskim pravima, ali ga preokreće na drugu stranu
da služi suprotno od uobičajene svrhe: umjesto sredstvo ograničenja
programa, postaje sredstvo održavanja programa slobodnim.</p>
<p>
Središnja ideja copylefta je da dajemo svima dopuštenje da pokrenu program,
kopiraju program, izmjene program, i distribuiraju izmijenjene
verzije&mdash;ali ne dopuštenje da dodaju svoja dodatna ograničenja. Dakle,
presudne slobode koje definiraju &ldquo;slobodni softver&rdquo; su
garantirane svima koji imaju kopiju; postaju neotuđiva prava.</p>
<p>
Za efektivni copyleft, izmijenjene verzije moraju isto biti slobodne. To
osigurava da djelo temeljeno na našemu postane dostupno našoj zajednici ako
je objavljeno. Kada programeri koji imaju poslove kao programeri volontiraju
da poboljšaju GNU softver, copyleft je taj koji sprječava njihove poslodavce
da kažu: &ldquo;Vi ne možete razmjenjivati te izmjene, jer ćemo ih
iskoristiti da napravimo našu vlasničku inačicu programa.&rdquo;</p>
<p>
Zahtjev da izmjene moraju biti slobodne je suštinski ako želimo osigurati
slobodu za svakog korisnika programa. Kompanije koje su privatizirale X
Window System obično su napravile neke izmjene da bi softver prenosili na
njihove sustave i hardver. Te izmjene su bile male u usporedbi sa velikim
opsegom X-a, ali nisu bile trivijalne. Kada bi izrada izmjena bila isprika
da se ospori korisnicima sloboda, bilo bi lagano za svakoga da iskoristi
ispriku.</p>
<p>
Srodan problem tiče se kombinacije slobodnog programa sa neslobodnim
kodom. Takva kombinacija bi neizbježno bila neslobodna; koje god slobode
nedostaju za neslobodni dio bi isto nedostajale i za cjelinu. Dozvoljavanje
takvih kombinacija bi otvorilo ponor toliko velik da se u njemu može
potopiti brod. Dakle, presudni zahtjev za copyleft je da začepi taj ponor:
sve dodano ili kombinirano sa programom pod copyleftom mora biti takvo da
veća kombinirana verzija bude isto slobodna i pod copyleftom.</p>
<p>
Specifična implementacija copylefta kojeg koristimo za većinu GNU softvera
je GNU opća javna licenca (<i>GNU General Public License</i>), ili GNU GPL
ukratko. Imamo druge vrste copylefta koje se koriste u specifičnim
uvjetima. GNU priručnici su isto pod copyleftom, ali koriste mnogo
jednostavniju vrstu copylefta, jer kompleksnost GNU GPL-a nije nužna za
priručnike.(2)</p>
<p>
(1) U 1984. ili 1985., Don Hopkins (vrlo maštovit čovjek) mi je poslao
pismo. Na koverti je napisao nekoliko zabavnih dosjetki, uključujući ovu:
&ldquo;Copyleft&mdash;sva prava preokrenuta.&rdquo; Ja sam koristio riječ
&ldquo;copyleft&rdquo; da bi dao ime distribucijskom konceptu kojeg sam
razvijao u to vrijeme.</p>

<p>
(2) Sada koristimo <a href="/licenses/fdl.html">GNU licencu slobodne
dokumentacije (<i>GNU Free Documentation License</i>)</a> za dokumentaciju.</p>

<h3>Zaklada za slobodan softver</h3>

<p>Interes za korištenje Emacs-a je rastao, drugi ljudi su postali uključeni u
GNU projekt, i odlučili smo da je vrijeme da još jednom potražimo
financiranje. Tako smo u 1985. stvorili <a
href="http://www.fsf.org/">Zakladu za slobodan softver (<i>Free Software
Fundation</i>)</a> (FSF), dobrotvornu ustanovu oslobođenu od poreza za
razvijanje slobodnog softvera. <abbr title="Free Software
Foundation">FSF</abbr> je isto preuzeo posao distribucije Emacs-a na
trakama; kasnije se to proširilo dodavanjem drugog slobodnog softvera (GNU i
ne-GNU) na traku, i isto tako, prodajom slobodnih priručnika.</p>

<p>Većina FSF prihoda je dolazila od prodaje kopija slobodnog softvera i drugih
srodnih usluga (CD-ROM-ovi izvornoga koda, CD-ROM-ovi sa binarnim
datotekama, lijepo ispisani priručnici, sve sa slobodom za ponovnu
distribuciju i izmjenu), i luksuzne distribucije (distribucije za koje smo
izgradili cijelu kolekciju softvera za platformu koju je klijent
odabrao). Danas FSF još uvijek <a href="http://shop.fsf.org/">prodaje
priručnike i drugu opremu</a>, ali dobiva glavni dio financiranja od
članarina. Vi se možete pridružiti FSF na <a
href="http://fsf.org/join">fsf.org</a>.</p>

<p>Zaposlenici Zaklade za slobodan softver su napisali i održavaju velik broj
GNU softverskih paketa. Dva značajna su C biblioteka i ljuska
(<i>shell</i>). GNU C biblioteka je ono što svaki program koji je pokrenut
na GNU/Linux sustavu upotrebljava da bi komunicirao sa Linux-om. Razvijena
je od strane člana osoblja Zaklade za slobodan softver: Roland
McGrath. Ljuska koja se koristi na većini GNU/Linux sustava je <abbr
title="Bourne Again Shell">BASH</abbr>, Bourne Again Shell (1), koja je
razvijena od strane FSF zaposlenika: Brian Fox.</p>

<p>Financirali smo razvitak tih programa jer GNU Projekt nije bio samo alati
ili razvojno okruženje. Naš cilj je bio potpuni operativni sustav, i ti
programi su bili potrebni za taj cilj.</p>

<p>(1) &ldquo;Bourne Again Shell&rdquo; je igra sa imenom &ldquo;Bourne
Shell&rdquo;, koja je bila uobičajena ljuska na Unix sustavu.</p>

<h3>Podrška slobodnog softvera</h3>

<p>Filozofija slobodnog softvera odbija specifičnu rasprostranjenu poslovnu
praksu, ali nije protiv tvrtki. Kada tvrtke poštuju korisničke slobode,
želimo im uspjeh.</p>

<p>Prodaja Emacs kopija demonstrira jednu vrstu posla vezanog uz slobodni
softver. Kada je FSF preuzeo taj posao, trebao sam drugi način
preživljavanja. Našao sam ga u prodaji usluga koje se odnose na slobodni
softver koji sam razvio. To je uključivalo podučavanje, kako programirati
GNU Emacs i kako prilagoditi GCC, i razvoj softvera, uglavnom prenošenje
GCC-a na nove platforme.</p>

<p>Danas svaki od ovih vrsta poslova vezanih uz slobodni softver je u praksi u
brojnim korporacijama. Neki distribuiraju kolekcije slobodnog softvera na
CD-ROM-u; drugi prodaju podršku na razinama od odgovaranja na korisnička
pitanja, do popravljanja grešaka, do dodavanja znatnih novih značajki. Čak i
počinjemo viđati kompanije slobodnog softvera temeljene na poduzimanju novih
projekata slobodnog softvera.</p>

<p>Premda, pripazite&mdash;brojne kompanije koje vežu sebe na termin
&ldquo;otvoreni izvorni kod&rdquo; u aktualnosti temelje svoj posao na
neslobodnom softveru koji radi sa slobodnim softverom. To nisu kompanije
slobodnog softvera, one su kompanije vlasničkog softvera čiji proizvodi
primamljuju korisnike dalje od slobode. Oni zovu te programe &ldquo;paketi
sa dodanom vrijednošću&rdquo;, koji pokazuju vrijednosti koje bi oni htjeli
da prihvatimo: pogodnost iznad slobode. Ako više vrednujemo slobodu, trebali
bi ih zvati paketi &ldquo;oduzimanja slobode&rdquo;.</p>

<h3>Tehnički ciljevi</h3>

<p>Glavni cilj GNU-a je bio da bude slobodan softver. Čak i kada GNU ne bi imao
tehničku prednost nad Unix-om, imao bi društvenu prednost, dopuštajući
korisnicima da surađuju, i etičku prednost, poštivanje slobode korisnika.</p>

<p>Ali bilo je prirodno primijeniti znane standarde dobre prakse na
djelo&mdash;na primjer, dinamičko alociranje struktura podataka da bi se
izbjegla proizvoljno fiksirana ograničenja veličine, i rukovanje sa svim
mogućim 8-bitnim kodovima gdje god je to imalo smisla.</p>

<p>U dopuni, odbili smo fokus Unix-a na malu veličinu memorije, odlukom da ne
podržavamo 16-bitne strojeve (bilo je jasno da će 32-bitni strojevi biti
mjerilo dok dođe vrijeme završavanja GNU sustava), i da ne napravimo napor
da smanjimo upotrebu memorije sve dok ne prijeđe megabajt. U programima za
koje rukovanje velikim datotekama nije bilo presudno, ohrabrivali smo
programere da učitaju cijelu ulaznu datoteku u jezgru, i tada da pretraže
njen sadržaj bez brige oko I/O (<i>Input/Output</i>).</p>

<p>Te odluke su omogućile mnogim GNU programima da nadiđu svoje Unix verzije u
pouzdanosti i brzini.</p>

<h3>Donirana računala</h3>

<p>Kako je ugled GNU Projekta rastao, ljudi su projektu počeli nuditi donacije
strojeva koji su pokretali Unix. Oni su bili vrlo korisni, jer je najlakši
način razvijanja GNU komponenata bio da se to radi na Unix sustavu, i
zamjenjivanje komponenata tog sustava jednu po jednu. Ali to je postavilo
etično pitanje: da li je bilo ispravno za nas da uopće imamo kopiju Unix-a.</p>

<p>Unix je bio (i jest) vlasnički softver, i filozofija GNU Projekta je
govorila da ne bismo trebali koristiti vlasnički softver. Ali,
primjenjivajući istu logiku koja vodi do zaključka da je nasilje u
samoobrani opravdano, zaključio sam da je legitimno koristiti vlasnički
paket kada je to bilo presudno za razvitak slobodne zamijene koja će pomoći
drugima da prestanu koristiti vlasnički paket.</p>

<p>Ali, iako je to bilo opravdano zlo, bilo je još uvijek zlo. Danas više
nemamo kopija Unix-a, jer smo ih zamijenili sa slobodnim operativnim
sustavima. Ako nismo mogli zamijeniti operativni sustav stroja sa slobodnim,
umjesto toga zamijenili smo stroj.</p>

<h3>GNU lista zadataka</h3>

<p>Nastavkom GNU Projekta, povećavajući broj sistemskih komponenti je nađen ili
razvijen, eventualno je postalo korisno napraviti listu preostalih
praznina. Koristili smo tu listu da vrbujemo developere da napišu dijelove
koji su nedostajali. Ta lista je postala znana kao GNU lista zadataka. U
dodatku Unix komponenata koje nedostaju, popisali smo razni drugi korisni
softver i dokumentacijske pakete za koje smo mislili da bi istinski potpuni
sustav trebao imati.</p>

<p>Danas (1), jedva da postoji Unix komponenta koja je ostala u GNU listi
zadataka&mdash;ti poslovi su napravljeni, osim nekoliko nebitnih. Ali lista
je puna projekata koje neki nazivaju &ldquo;aplikacijama&rdquo;. Svaki
program koji privlači više nego usku klasu korisnika bi bio korisna stvar za
dodati u operativni sustav.</p>

<p>Čak su i igre uključene u listu zadataka&mdash;i bile su od početka. Unix je
uključivao igre, pa bi tako i GNU prirodno trebao. Ali kompatibilnost nije
problem za igre, tako da nismo slijedili listu igara koje je Unix
imao. Umjesto toga, popisali smo spektar različitih vrsta igara koje bi se
mogle svidjeti korisnicima.</p>

<p>(1) Ovo je napisano u 1998. U 2009. više ne održavamo dugačku listu
zadataka. Zajednica razvija slobodni softver toliko brzo da ne možemo
pratiti sve. Umjesto toga, imamo listu projekata visokog prioriteta, mnogo
kraću listu projekata za koje stvarno želimo ohrabriti ljude da ih napišu.</p>

<h3>GPL GNU biblioteke</h3>

<p>GNU C biblioteka koristi posebnu vrstu copylefta nazvanu GNU opća javna
licenca za biblioteke (<i>GNU Library General Public License</i>) (1), koja
daje dopuštenje da se veže vlasnički softver sa bibliotekom. Zašto je ova
iznimka napravljena?</p>

<p>Nije stvar principa; ne postoji princip koji kaže da proizvodi vlasničkog
softvera imaju pravo uključiti naš kod. (Zašto doprinijeti projektu koji se
temelji na odbijanju razmijene sa nama?) Korištenje LGPL-a za C biblioteku,
ili za bilo koju biblioteku, je stvar strategije.</p>

<p>C biblioteka radi generički posao; svaki vlasnički sustav ili kompajler
dolazi sa C bibliotekom. Dakle, pravljenjem naše C biblioteke dostupne samo
slobodnom softveru ne bi dali slobodnom softveru nikakvu prednost&mdash;samo
bi obeshrabrilo korištenje naše biblioteke.</p>

<p>Jedan sustav je iznimka za to: na GNU sustavu (i to uključuje i GNU/Linux),
GNU C biblioteka je jedina C biblioteka. Prema tome, distribucijska pravila
GNU C biblioteke određuju da li je moguće kompilirati posjednički program za
GNU sustav. Ne postoji etički razlog da se dopuste vlasničke aplikacije na
GNU sustavu, ali strategijski se čini da bi njihovo odbijanje više
doprinijelo obeshrabrivanju korištenja GNU sustava nego ohrabrivanju
razvitka slobodnih aplikacija. Zbog toga je korištenje GPL za biblioteke
dobra strategija za C biblioteku.</p>

<p>Za druge biblioteke, strategijska odluka se treba razmotriti od slučaja do
slučaja. Kada biblioteka radi poseban posao koji može pomoći u pisanju
određenih vrsta programa, tada je objava pod GPL-om, ograničavanje samo na
slobodne programe, način pomaganja drugim developerima slobodnog softvera,
dajući im prednost u odnosu na vlasnički softver.</p>

<p>Razmotrite GNU Readline, biblioteka koja je razvijena da bi se obezbijedilo
uređivanje komandne linije za BASH. Readline je objavljena pod običnim GNU
GPL-om, ne GPL-om za biblioteke. To vjerojatno smanjuje količinu korištenja
Readline-a, ali to nije gubitak za nas. U međuvremenu, barem jedna korisna
aplikacija je postala slobodan softver specifično da bi mogla koristiti
Readline, i to je stvarna dobit za zajednicu.</p>

<p>Developeri vlasničkog softvera imaju prednosti koje novac daje; developeri
slobodnog softvera moraju raditi prednosti među sobom. Nadam se da ćemo
jedan dan imati veliku kolekciju biblioteka pokrivenih GPL-om koje nemaju
paralelu dostupnu vlasničkom softveru, dajući korisne module da služe za
izgradnju novog slobodnog softvera, i dodavajući veliku prednost za daljnji
razvitak slobodnog softvera.</p>

<p>(1) Ova licenca je sada zvana GNU niža opća javna licenca (<i>GNU Lesser
General Public License</i>), da bi se izbjegla ideja da bi je sve biblioteke
trebale koristiti. Pogledajte: <a href="/philosophy/why-not-lgpl.html">Zašto
ne biste trebali koristiti niži GPL za vašu sljedeću biblioteku</a> za više
informacija.</p>

<h3>Češanje svraba?</h3>
<p>
Eric Raymond kaže: &ldquo;Svako dobro djelo softvera započinje češanjem
developerovog osobnog svraba.&rdquo; Možda se to i dogodi ponekad, ali mnogi
glavni dijelovi GNU softvera su razvijeni sa ciljem da se napravi potpuni
operativni sustav. Oni dolaze iz vizije i plana, ne iz impulsa.</p>
<p>
Na primjer, razvili smo GNU C biblioteku jer sustav nalik Unix-u treba C
biblioteku, BASH zato jer sustav nalik Unix-u treba ljusku, i GNU tar zato
jer sustav nalik Unix-u treba tar program. Isto je istina i za moje
programe&mdash;GNU C kompajler, GNU Emacs, GDB i GNU Make.</p>
<p>
Neki GNU programi su razvijeni da bi se nosili sa specifičnim prijetnjama
našoj slobodi. Dakle, razvili smo gzip da bi zamijenili Compress program,
koji je bio izgubljen iz zajednice zbog <abbr
title="Lempel-Ziv-Welch">LZW</abbr> patenata. Našli smo ljude koji će
razvijati LessTif, i više nedavno započeli smo <abbr title="GNU Network
Object Model Environment">GNOME</abbr> i Harmony, da bi adresirali probleme
izazvane određenim vlasničkim bibliotekama (vidite ispod). Razvijamo GNU
Privacy Guard da nadomjestimo popularni neslobodni enkripcijski softver, jer
korisnici ne bi trebali birati između privatnosti i slobode.</p>
<p>
Naravno, ljudi koji pišu te programe su postali zainteresirani za rad, i
mnoge značajke su dodane od strane raznih ljudi zbog vlastitih potreba i
interesa. Ali to nije razlog zašto ti programi postoje.</p>

<h3>Neočekivani razvoji</h3>
<p>
Na početku GNU Projekta, zamislio sam da ćemo razviti cijeli GNU sustav, i
onda ga objaviti kao cjelinu. Nije se tako dogodilo.</p>
<p>
Pošto je svaka komponenta GNU sustava implementirana na Unix sustavu, svaka
komponenta se mogla pokrenuti da Unix sustavu dugo prije nego je potpuni GNU
sustav postojao. Neki od tih programa su postali popularni, i korisnici su
ih počeli proširivati i prenositi na druge platforme&mdash;na razne
nekompatibilne verzije Unix-a, i katkad na druge sustave.</p>
<p>
Taj proces je napravio te programe mnogo moćnijima, i privukao financiranje
i suradnike na GNU Projekt. Ali je vjerojatno i usporio završenje
minimalnoga radnog sustava za nekoliko godina, pošto je vrijeme GNU
developera stavljeno u održavanje tih prenesenih programa i u dodavanje
značajki postojećim komponentama, radije nego u početak pisanja, jednu za
drugom, komponenata koje nedostaju.</p>

<h3>GNU Hurd</h3>
<p>
1990., GNU sustav je bio skoro dovršeni; jedina velika komponenta koja je
nedostajala je bila jezgra. Odlučili smo implementirati jezgru kao kolekciju
poslužiteljskih procesa koji se izvršavaju iznad Mach-a. Mach je
mikro-jezgra razvijena na Carnegie Mellon Sveučilištu i tada na Utah
Sveučilištu; GNU Hurd je kolekcija poslužitelja (odnosno, krdo GNU-a) koji
se izvršavaju iznad Mach-a, i rade razne poslove Unix jezgre. Početak
razvitka je bio u zakašnjenju dok smo čekali da Mach bude objavljen kao
slobodan softver, kao što je bilo obećano.</p>
<p>
Jedan razlog odabira tog dizajna je bilo izbjegavanje onoga što se činilo
najtežim dijelom posla: otklanjanje grešaka u programu jezgre bez softvera
koji na razini izvornog koda prati izvršenje programa (<i>source-level
debugger</i>). Taj dio posla je već napravljen, u Mach-u, i očekivali smo da
će otklanjanje grešaka u Hurd poslužiteljima biti na razini korisničkih
programa, sa GDB-om. Ali prošlo je dosta vremena dok je to postalo moguće, i
višenitni (<i>multithreaded</i>) poslužitelji koji šalju poruke među sobom
su se ispostavili vrlo teškima u procesu otklanjanja grešaka. Radeći Hurd
posao razvučenim kroz mnogo godina.</p>

<h3>Alix</h3>
<p>
GNU jezgra se na početku nije trebala zvati Hurd. Njegovo originalno ime je
bilo Alix&mdash;dano prema ženi koja je bila u to vrijeme moja
simpatija. Ona, Unix administrator, je ukazala na to kako bi njeno ime dobro
pristajalo u uobičajeni uzorak davanja imena verzija Unix sustava; u šali,
rekla je svojim prijateljima: &ldquo;Netko bi trebao nazvati jezgru po
meni.&rdquo; Nisam rekao ništa, nego sam je odlučio iznenaditi s jezgrom po
imenu Alix.</p>
<p>
Nije ostalo na tome. Michael (sada Thomas) Bushnell, glavni developer
jezgre, više je volio ime Hurd, i ponovno je definirao Alix da se odnosi na
određeni dio jezgre&mdash;dio koji bi hvatao sistemske pozive i rukovao s
njima slanjem poruka Hurd poslužiteljima.</p>
<p>
Kasnije, Alix i ja smo prekinuli, i ona je promijenila svoje ime; neovisno,
dizajn Hurd-a je promijenjen tako da bi C biblioteka slala poruke direktno
poslužiteljima, i zbog toga je Alix komponenta nestala iz dizajna.</p>
<p>
Ali prije nego su se te stvari dogodile, njezin prijatelj je našao ime Alix
u izvornom kodu Hurd-a, i spomenuo je to njoj. Tako da je imala šansu naći
jezgru po njenom imenu.</p>

<h3>Linux i GNU/Linux</h3>
<p>
GNU Hurd nije prikladan za produkcijsko korištenje, i ne znamo da li će
ikada biti. Dizajn temeljen na mogućnostima ima problema koji rezultiraju
direktno iz fleksibilnosti dizajna, i nije jasno da li rješenja postoje.</p>

<p>
Srećom, druga jezgra je dostupna. 1991. Linus Torvalds je razvio jezgru
kompatibilnu s Unixom i nazvao je Linux. U početku je Linux bio pod
vlasničkom licencom, no 1992. je postao slobodni softver; kombinirajući
Linux s još nedovršenim sustavom GNU rezultiralo je potpunim slobodnim
operativnim sustavom. (Naravno, kombiniranje je bio znatan posao sam po
sebi.) Zbog Linuxa mi danas možemo pokrenuti verziju sustava GNU.</p>
<p>
Ovaj sustav nazivamo <a href="/gnu/linux-and-gnu.html"> GNU/Linux</a>, kako
bi smo istaknuli kombinaciju sustava GNU s Linuxom kao jezgrom. Nemojte
upasti u zamku nazivanja cijelog sustava &ldquo;Linuxom&rdquo;, jer to znači
pripisivanje našeg rada nekome drugome. Molimo vas da <a
href="/gnu/gnu-linux-faq.html"> spomenete i nas</a>.</p>

<h3>Izazovi u našoj budućnosti</h3>
<p>
Dokazali smo našu sposobnost da razvijemo široki spektar slobodnog
softvera. To ne znači da smo nepobjedivi i nezaustavljivi. Nekoliko izazova
rade budućnost slobodnog softvera nesigurnom; suočavanje sa njima će
zahtijevati postojan napor i izdržljivost, trajući ponekad i po nekoliko
godina. Zahtijevati će vrstu determinacije koje ljudi pokazuju kada cijene
svoju slobodu i neće dopustiti nikome da je oduzme.</p>
<p>
Sljedeća četiri odjeljka raspravljaju o tim izazovima.</p>

<h3>Tajni hardver</h3>
<p>
Proizvođači hardvera u sve većem trendu drže specifikacije hardvera
tajnim. Zbog toga je teško pisati slobodne upravljačke programe tako da bi
Linux i XFree86 podržavali novi hardver. Imamo potpune slobodne sustave
danas, ali ih sutra nećemo imati ako ne možemo podržavati sutrašnja
računala.</p>
<p>
Postoje dva načina suočavanja sa tim problemom. Programeri mogu raditi
obrnuti inženjering da bi dokučili kako podržavati hardver. Mi ostali možemo
izabrati hardver koji je podržani od strane slobodnog softvera; kako se naši
brojevi budu povećavali, tajnost specifikacija će postati samo-poražavajuća
politika.</p>
<p>
Obrnuto inženjerstvo je veliki posao; da li ćemo imati programere sa
dovoljnom determinacijom da to poduzmu? Da&mdash;ako smo izgradili jak
osjećaj da je slobodan softver stvar principa, i da se neslobodni
upravljački programi ne mogu tolerirati. I da li će veliki broj nas
potrošiti višak novca, ili čak malo viška vremena, da možemo koristiti
slobodne upravljačke programe? Da, ako je determinacija za posjedovanjem
slobode široko rasprostranjena.</p>
<p>
(bilješka iz 2008: ovaj problem se isto tako i proširuje na BIOS. Postoji
slobodni BIOS, <a href="http://www.libreboot.org/">LibreBoot</a>; problem je
nabavka specifikacija za strojeve tako da ih LibreBoot može podržavati.)</p>

<h3>Neslobodne biblioteke</h3>
<p>
Neslobodna biblioteka koja se vrti na slobodnim operativnim sustavima
djeluje kao zamka za developere slobodnog softvera. Primamljive značajke
biblioteke su mamac; ako koristite biblioteku, padate u zamku, zato jer vaš
program ne može korisno biti dio slobodnog operativnoga sustava. (Strogo
govoreći, možemo uključiti vaš program, ali neće se <em>pokrenuti</em> bez
biblioteke.) Još gore, ako program koji koristi vlasničku biblioteku postane
popularan, može namamiti druge nesumnjajuće programere u zamku.</p>
<p>
Prvi slučaj ovog problema su bili Motif alati, natrag u 80-ima. Iako tada
nisu postojali slobodni operativni sustavi, bilo je jasno koji problem će im
Motif uzrokovati kasnije. GNU Projekt je odgovorio na dva načina: pitajući
individualne projekte slobodnog softvera da podržavaju slobodne X alatne
blokove (<i>widgets</i>) kao i Motif, i raspitivajući se za nekoga tko bi
napisao slobodnu zamjenu za Motif. Posao je trajao mnogo godina; LessTif,
razvijen od strane Hungry Programmers, postao je dovoljno moćan da podržava
većinu Motif aplikacija tek u 1997.</p>
<p>
Između 1996. i 1998., druga neslobodna <abbr title="Graphical User
Interface">GUI</abbr> alatna biblioteka, zvana Qt, je bila korištena u
znatnoj kolekciji slobodnog softvera: <abbr title="K Desktop
Environment">KDE</abbr> desktop.</p>
<p>
Slobodni GNU/Linux sustavi nisu bili u mogućnosti koristiti KDE, zato jer
nismo mogli koristiti biblioteku. Međutim, neki komercijalni distributeri
GNU/Linux sustava koji nisu bili strogi da se drže slobodnog softvera,
dodali su KDE svojim sustavima&mdash;producirajući sustav sa više
sposobnosti, ali manje slobode. KDE grupa je aktivno ohrabrivala sve više
programera da koriste Qt, i milijuni novih &ldquo;Linux korisnika&rdquo;
nisu nikada bili izloženi ideji da ima nešto krivo u tome. Situacija se
činila mrgodnom.</p>
<p>
Zajednica slobodnog softvera je odgovorila na problem u dva načina: GNOME i
Harmony.</p>
<p>
GNOME, GNU Network Object Model Environment, je desktop projekt
GNU-a. Miguel de Icaza ga je započeo u 1997., i bio je razvijan sa podrškom
Red Hat Software-a, GNOME je krenuo obezbjediti slična desktop postrojenja,
ali ekskluzivno korištenjem slobodnog softvera. Ima i tehničke prednosti,
kao što su podrška za razne jezike, ne samo C++. Ali njegov glavni cilj je
bila sloboda: da se ne zahtijeva korištenje neslobodnog softvera.</p>
<p>
Harmony je kompatibilna zamjenska biblioteka, dizajnirana da omogući
pokretanje KDE softvera bez korištenja Qt-a.</p>
<p>
Studeni 1998, developeri Qt-a su proglasili promjenu licence koja će, kada
se provede, napraviti Qt slobodnim softverom. Ne postoji način da se bude
siguran, ali mislim da je to dijelom zbog čvrstog odgovora zajednice na
problem koji je Qt stvarao dok je bio neslobodan. (Nova licenca je nepogodna
i nepravedna, pa ostaje poželjno izbjegavati korištenje Qt-a.)</p>
<p>
[Naknadna bilješka: u rujnu 2000, Qt je ponovno objavljen pod GNU GPL-om,
što je suštinski riješilo taj problem.]</p>
<p>
Kako ćemo odgovoriti na slijedeću primamljivu neslobodnu biblioteku? Da li
će cijela zajednica shvatiti potrebu da se ne upadne u zamku? Ili će mnogi
od nas odustati od slobode zbog pogodnosti, i napraviti veliki problem? Naša
budućnost ovisi o našoj filozofiji.</p>

<h3>Softverski patenti</h3>
<p>
Najgora prijetnja sa kojom se suočavamo dolazi od softverskih patenata, koji
mogu staviti algoritme i značajke izvan dosega slobodnog softvera do
dvadeset godina. Patenti LZW algoritma za kompresiju su bili primijenjeni u
1983., i još uvijek ne možemo objaviti slobodni softver da producira prave
komprimirane <abbr title="Graphics Interchange Format">GIF</abbr>-ove. [Od
2009. oni su istekli.] U 1998., slobodan program za produkciju <abbr
title="MPEG-1 Audio Layer 3">MP3</abbr> kompriminiranog zvuka je izbačen iz
distribucije zbog prijetnje patentnom tužbom.
</p>
<p>
Postoje načini da se nosimo sa patentima: možemo tražiti dokaze da je patent
nevažeći, i možemo tražiti alternativne načine da napravimo posao. Ali svaka
od tih metoda radi samo ponekad; kada obje pobace, patent može prisiliti sav
slobodni softver da nema neke značajke koje korisnici žele. Što ćemo
napraviti kada se to dogodi?</p>
<p>
Oni među nama koji vrednuju slobodni softver zbog slobode će ostati svejedno
upotrebljavati slobodni softver. Uspjeti ćemo napraviti posao bez
patentiranih značajki. Ali oni koji vrednuju slobodni softver jer očekuju da
bude tehnički superioran će vjerojatno nazvati to neuspjehom kada patent
ograničava softver. Dakle, dok je korisno govoriti o praktičnoj efektivnosti
&ldquo;bazar&rdquo; modela razvoja, i o pouzdanosti i moći nekog slobodnog
softvera, ne smijemo se zaustaviti na tome. Moramo govoriti o slobodi i
principu.</p>

<h3>Slobodna dokumentacija</h3>
<p>
Najveći nedostatak naših slobodnih operativnih sustava nije u
softveru&mdash;nego u nedostatku dobrih slobodnih priručnika koje možemo
uključiti u naše sustave. Dokumentacija je suštinski dio svakog softverskog
paketa; kada važan paket slobodnog softvera ne dođe sa dobrim slobodnim
priručnikom, to je velik propust. Danas imamo mnoge takve praznine.</p>
<p>
Slobodna dokumentacija, kao i slobodni softver, je stvar slobode, a ne
cijene. Kriterij za slobodni priručnik je uglavnom isti kao i za slobodni
softver: stvar je u davanju svim korisnicima određene slobode. Ponovna
distribucija (uključujući i komercijalnu prodaju) mora biti dopuštena, na
mreži i na papiru, tako da priručnik može popratiti svaku kopiju programa.</p>
<p>
Dozvola za izmjenu je isto presudna. Kao općenito pravilo, ne vjerujem da je
bitno za ljude da imaju dozvolu da izmjenjuju članke i knjige svake
vrste. Na primjer, ne mislim da smo vi ili ja dužni dati dozvolu da se
izmjenjuju članci poput ovoga, koji opisuju naša djela i naša gledišta.</p>
<p>
Ali postoji partikularni razlog zašto je sloboda izmijene presudna za
dokumentaciju slobodnog softvera. Kada ljudi prakticiraju svoje pravo da
izmijene softver, i dodaju ili izmijene neke njegove značajke, ako su
savjesni oni će isto izmijeniti i priručnik&mdash;tako da mogu obezbjediti
točnu i upotrebljivu dokumentaciju sa izmijenjenim programom. Neslobodni
priručnik, koji ne dozvoljava programerima da budu savjesni i da dovrše
posao, ne dopunjuje potrebe naše zajednice.</p>
<p>
Neke određene granice na to kako se izmijene rade ne predstavljaju
problem. Na primjer, zahtjevi da se očuvaju originalna autorova bilješka o
autorskim pravima, distribucijska pravila, ili lista autora, su u redu. Isto
tako nije problem da se zahtijeva da izmijenjene verzije uključuju bilješku
da su bile izmijenjene, čak i da imaju cijele odjeljke koji mogu biti
izbrisani ili promijenjeni, sve dok se ti odjeljci drže ne-tehničkih
tema. Te vrste restrikcija nisu problem jer ne zaustavljaju savjesnog
programera da prilagodi priručnik tako da odgovara izmijenjenom
programu. Drugim riječima, ne zaustavljaju zajednicu oko slobodnog softvera
da dobije cijelu korist od priručnika.</p>
<p>
Međutim, mora biti moguće izmijeniti cijeli <em>tehnički</em> sadržaj
priručnika, i tada distribuirati rezultat na svim uobičajenim medijima, kroz
sve uobičajene kanale; u suprotnom, restrikcije ometaju zajednicu, priručnik
nije slobodan, i trebamo drugi priručnik.</p>
<p>
Da li će developeri slobodnog softvera imati svjesnost i determinaciju da
produciraju cijeli spektar slobodnih priručnika? Još jednom, naša budućnost
ovisi o filozofiji.</p>

<h3>Moramo govoriti o slobodi</h3>
<p>
Procjene danas su da postoji deset milijuna korisnika GNU/Linux sustava kao
što su Debian GNU/Linux i Red Hat &ldquo;Linux&rdquo;. Slobodni softver je
razvio takve praktične prednosti da se korisnici sjate na njega iz čisto
praktičnih razloga.</p>
<p>
Dobre posljedice toga su očite: više interesa za razvoj slobodnog softvera,
više klijenata za poslove slobodnog softvera, i više sposobnosti da se
ohrabre kompanije da razvijaju komercijalni slobodni softver umjesto
vlasničkih softverskih proizvoda.</p>
<p>
Ali interes za softver raste brže nego svjesnost filozofije na kojoj je
utemeljen, i to vodi u nevolju. Naša sposobnost da se suočimo sa izazovima i
prijetnjama opisanima iznad ovisi o volji da ostanemo čvrsto za slobodu. Da
bi osigurali da naša zajednica ima tu volju, moramo raširiti tu ideju među
novim korisnicima kako oni dolaze u našu zajednicu.</p>
<p>
Ali nismo uspješni u tome: napori da se privuku novi korisnici u našu
zajednicu daleko nadmašuju napore da ih podučimo pravima i dužnostima naše
zajednice. Moramo napraviti oboje, i moramo držati ta dva napora u
ravnoteži.</p>

<h3>&ldquo;Otvoreni izvorni kod&rdquo;</h3>
<p>
Podučavanje novih korisnika o slobodi je postalo teže u 1998, kada je dio
zajednice odlučio prestati koristiti termin &ldquo;slobodan softver&rdquo; i
reći &ldquo;softver otvorenog izvornog koda&rdquo; umjesto toga.</p>
<p>
Neki koji favoriziraju taj termin ciljali su da izbjegnu konfuziju
&ldquo;slobodnog&rdquo; sa &ldquo;besplatnog&rdquo;&mdash;valjani
cilj. Drugi, međutim, su ciljali da stave na stranu duh principa koji je
motivirao pokret slobodnog softvera i GNU projekt, i umjesto toga napraviti
priziv izvršnim i poslovnim korisnicima, mnogi od kojih drže ideologiju koja
stavlja profit iznad slobode, iznad zajednice, iznad principa. Tako,
retorika &ldquo;otvorenog izvornog koda&rdquo; fokusira na potencijal da se
napravi visoko kvalitetan, moćan softver, ali izbjegava ideje slobode,
zajednice i principa.</p>
<p>
&ldquo;Linux&rdquo; časopisi su jasan primjer toga&mdash;puni su oglasa za
vlasnički softver koji radi sa GNU/Linux-om. Kada se pojavi slijedeći Motif
ili Qt, da li će ti časopisi upozoriti programere da udalje od toga, ili će
raditi reklame za to?</p>
<p>
Podrška poslovnog dijela može pridonijeti zajednici na mnoge načine; sve
drugo jednako, korisno je. Ali dobivanje njihove podrške govoreći još manje
o slobodi i principu može biti katastrofalno; radi ranije spomenutu
neravnotežu između dosega prema novim korisnicima i edukaciji o pravima i
dužnostima još gorom.</p>
<p>
&ldquo;Slobodan softver&rdquo; i &ldquo;otvoreni izvorni kod&rdquo; opisuju
istu kategoriju softvera, više-manje, ali govore različite stvari o
softveru, i o vrijednostima. GNU projekt nastavlja koristiti termin
&ldquo;slobodan softver&rdquo;, da se izrazi ideja da je sloboda, ne samo
tehnologija, važna.</p>

<h3>Pokušajte!</h3>
<p>
Aforizam Yode (&ldquo;Ne postoji &lsquo;pokušaj&rsquo;&rdquo;) zvuči lijepo,
ali ne radi za mene. Napravio sam većinu svoga rada dok sam bio tjeskoban
oko toga da li ću moći napraviti posao, ako da, nesiguran da li će to biti
dovoljno da dosegnem cilj. Ali pokušao sam svejedno, jer nije bilo nikoga
osim mene između neprijatelja i mojeg grada. Iznenađujući sebe, ponekad sam
uspio.</p>
<p>
Ponekad nisam uspio; neki od mojih gradova su pali. Tada sam našao drugi
grad pod prijetnjom, i pripremio se za još jednu bitku. Vremenom, naučio sam
tražiti prijetnje i staviti sebe između njih i mojeg grada, prizivajući
druge hakere da dođu i da se pridruže.</p>
<p>
U današnje vrijeme, često nisam jedini. Olakšanje je i radost kada vidim puk
hakera kako kopaju da bi zadržali vod, i shvatim, ovaj grad možda
preživi&mdash;zasada. Ali opasnosti su sve veće svake godine, i sada je
Microsoft specifično naciljao našu zajednicu. Ne možemo uzeti budućnost
slobode zdravo za gotovo. Ne uzimajte je zdravo za gotovo! Ako želite
zadržati svoju slobodu, morati biti pripremljeni da je branite. </p>

<div class="translators-notes">

<!--TRANSLATORS: Use space (SPC) as msgstr if you don't have notes.-->
 </div>
</div>

<!-- for id="content", starts in the include above -->
<!--#include virtual="/server/footer.hr.html" -->
<div id="footer">
<div class="unprintable">

<p>Molim vas šaljite općenite FSF &amp; GNU upite na <a
href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>.  Postoje isto i <a
href="/contact/">drugi načini kontaktiranja</a> FSF-a. Prekinute poveznice i
drugi ispravci ili prijedlozi mogu biti poslani na <a
href="mailto:webmasters@gnu.org">&lt;webmasters@gnu.org&gt;</a>. </p>

<p>
<!-- TRANSLATORS: Ignore the original text in this paragraph,
        replace it with the translation of these two:

        We work hard and do our best to provide accurate, good quality
        translations.  However, we are not exempt from imperfection.
        Please send your comments and general suggestions in this regard
        to <a href="mailto:web-translators@gnu.org">

        &lt;web-translators@gnu.org&gt;</a>.</p>

        <p>For information on coordinating and submitting translations of
        our web pages, see <a
        href="/server/standards/README.translations.html">Translations
        README</a>. -->
Radimo naporno i dajemo sve od sebe da bi pružili točne, visoko kvalitetne
prijevode. Međutim, nismo oslobođeni od nesavršenosti. Molim vas šaljite
vaše komentare i općenite prijedloge u tom smislu na <a
href="mailto:web-translators@gnu.org">&lt;web-translators@gnu.org&gt;</a>.</p>
<p>Za informacije o koordiniranju i slanju prijevoda naših mrežnih stranica,
pogledajte <a href="/server/standards/README.translations.html">README za
prijevode</a>.</p>
</div>

<!-- Regarding copyright, in general, standalone pages (as opposed to
     files generated as part of manuals) on the GNU web server should
     be under CC BY-ND 4.0.  Please do NOT change or remove this
     without talking with the webmasters or licensing team first.
     Please make sure the copyright date is consistent with the
     document.  For web pages, it is ok to list just the latest year the
     document was modified, or published.
     If you wish to list earlier years, that is ok too.
     Either "2001, 2002, 2003" or "2001-2003" are ok for specifying
     years, as long as each year in the range is in fact a copyrightable
     year, i.e., a year in which the document was published (including
     being publicly visible on the web or in a revision control system).
     There is more detail about copyright years in the GNU Maintainers
     Information document, www.gnu.org/prep/maintain. -->
<p>Copyright &copy; 1998, 2001, 2002, 2005, 2006, 2007, 2008, 2010 Richard
Stallman</p>

<p>Ovo djelo je dano na korištenje pod licencom <a rel="license"
href="http://creativecommons.org/licenses/by-nd/4.0/deed.hr"> Creative
Commons Imenovanje-Bez prerada 4.0 međunarodna</a>.</p>

<!--#include virtual="/server/bottom-notes.hr.html" -->
<div class="translators-credits">

<!--TRANSLATORS: Use space (SPC) as msgstr if you don't want credits.-->
<b>Prijevod</b>: Marin Rameša, 2013.</div>

<p class="unprintable"><!-- timestamp start -->
Zadnji put promijenjeno:

$Date: 2020/07/04 08:32:33 $

<!-- timestamp end -->
</p>
</div>
</div>
<!-- for class="inner", starts in the banner include -->
</body>
</html>