LIBER(IG)A PROGRAMARO


Ĉi tiu artikolo temas pri komputiloj. La socia graveco de la komputada scienco kreskas ĉiutage, kaj oni jam postulas de ĉiu civitano minimumon de kono pri tiu afero, kiel ankaŭ pri la angla lingvo aŭ pri aŭtomobiloj. Tial, la grandaj movadoj en la komputada mondo influas niajn vivojn, kaj estas utile havi almenaŭ superrigardan scion pri ili.

Komputiloj naskiĝis en universitata medio. Iliaj uzuloj povis uzi ilin kiel ĉiun alian esplorilon: ĉiu parto estis alirebla, ĉiun funkciadan nuancon ili povis ŝanĝi por atingi la deziratan efikon. Tiu malfermita etoso kaŭzis ke eĉ uzi pasvortojn estis konsiderata malĝentile (pri tio, legu en la angla: La kampanjo de Richard Stallman por libera programaro, http://oreilly.com/openbook/freedom). Tiam komputilprogramoj estis ĝenerale vidataj kiel kuirartaj receptoj; ili estis kvazaŭ matematikaj metodoj, kiujn oni disdonas sen penso pri komerca interŝanĝo. (Kompreneble, mi parolas ĝenerale, pri vastaj konceptoj. La realo estas multe pli malsimpla.)

Kun la populareco de la komputiloj, la maniero uzi ilin ŝanĝiĝis ĉiom. "Personaj" komputiloj fariĝis normalaj varoj, kiel muzikludilo, kiun oni aĉetis por familia uzo. Ankaŭ la komputilajn programojn oni kutime aĉetis, kiam oni ne kopiis ilin (eksterleĝe).

La programojn transdonatajn kiel receptojn oni komencis nomi "liberaj" aŭ "liberigaj". La programojn vendatajn kaj aĉetatajn iuj nomis "komercaj" aû "profesiaj", kaj aliaj "ne-liberaj" aŭ "malliberaj" aŭ "malpermesaj"; tio dependas de intenco de parolanto.

Dum la sesdekaj kaj sepdekaj jaroj, multaj programoj "liberaj" estis distribuataj. Kelkaj el ili havis grandan kvaliton, kaj estis (kaj ankoraŭ estas) la referencprogramoj en sia kampo. Ekzemple, la programo Teĥo (TeX) plu estas la plej grava programo en teksta procezado por scienc-teĥnikaj dokumentoj (matematikaj, fizikaj, komputadaj...). Tamen, kiam oni intencis distribui aron de liberaj programoj, la subtilaj malsamaĵoj inter la diversaj permesiloj kaŭzis multajn problemojn al la distribuontoj. Iu "libera" permesilo postulis sendi poŝtkarton al la aŭtoro; alia postulis doni kelkan monon al iu bonfara asocio; alia malpermesis uzi ĝin por militaj aferoj; alia, por komunismaj aferoj; k.t.p., k.t.p. Estis multaj interpretoj de la vorto "libera".

En la okdekaj jaroj la difino de "libera" en komputado estis fiksita. Tio permesis sistematikan distribuon de "liberan programaron", kio kondukis al la ideo konstrui kompletan operaciumon liberan. De tiam, oni konsentis nomi libera programo tian programon kies permesilo permesas:

* Uzi la programon por ia ajn celo.
* Kopii la programon.
* Redistribui la programon, iel ajn (eĉ postulante monon).
* Modifi la programon.

La lasta kondiĉo postulas ke la uzulo povu redakti la "fontokodon" de la programo. Komputila programo estas konservata kiel kodo; kodo povas esti fontokodo aŭ celkodo. Programistoj skribas fontokodon; komputiloj rulas celkodon. Programoj kutime estas distribuataj (vendataj, elŝutataj...) en formo de celkodo. Sed, se oni volas modifi la konduton de programo, oni devas redakti la fontokodon. Fontokodo estas la sinsekvo de ordonoj, en lingvo komprenata de homo; ĝi estus kiel la priskribo de kuirarta recepto.

La diversaj permesiloj konverĝis preskaŭ ĉiuj kvazaŭ en du konkretajn:

* La Ĝenerala Publika Permesilo de GNU (http://www.esperanto.mv.ru/Cetero/gpl.html).
* La BSD/X11/MIT permesilon (http://eo.wikipedia.org/wiki/Permesiloj_de_BSD).

De nun, la unuan mi nomos la GPL kaj, la duan, la BSD.

La BSD permesas ke uzulo de la programo redistribuu ĝin preskaŭ sen kondiĉoj; nura kondiĉo estas, ke ŝli kundistribuu malgrandan tekston agnoskantan la originan aŭtoron. Ĝi similas al lasi la programon "en la publika loko", tio estas, la aŭtoro rezignas pri ĉiu rajto pri la verko. Tian permesilon uzas la operaciumo FreeBSD, la fenestrosistemo Xorg, la datumbazilo PostgreSQL, la lispo Racket, kaj multaj pli.

La GPL, kontraŭe, trudas unu specifan kondiĉon al uzulo: se ŝli redistribuas (kontraŭ mono aŭ ne) la programon (en ĝia origina formo aŭ modifitan) ŝli nepre ebligu al la novaj uzuloj akiri la fontokodon (originan aŭ modifitan) de la programo. Proksimume dirante, ĉiu programo farita uzante GPL-an fontokodon de alia, siavice ĝi ankaŭ estu distrubuata sub la GPL permesilo. Tian permesilon uzas la kerno Linukso, la oficeja OpenOffice, la navigilo/retumilo Firefox/Fajrovulpo...

Komparante, oni rimarkas ke se libera programo estas sub BSD, alia programo bazata sur tiu programo povas esti distribuata sub BSD, sub GPL, aŭ eĉ esti ne-libera. Tial iuj ofte diras ke GPL estas "viruseca" permesilo; apogantoj de GPL preferas diri ke ĝi estas formo de "kopilaso", ĉar anstataŭ "kopirajto" ĝi permesus estonta diskopiado al ĉiu. BSD estus "ne-kopilasa liberiga permesilo". "Kopirajto" en la angla lingvo diriĝas "copyright". En la angla, "right" signifas kaj "rajto" kaj "dekstra". La angla "copyleft" ŝajnas vortludo: "left" signifas "maldekstra" kaj ankaŭ "lasita"; la GNU-projekto malakceptas ĉi tiun interpretaĵon, sed mi opinias ĝin utila por esperantigi. En la hispana, oni kelkafoje parolas pri "derechos de autor" kaj "izquierdos de autor".

Por la fina uzulo, se programo estas sub BSD aŭ GPL principe ne gravas multe. Sed jes por programistoj, ĉar tio limigas kion ili rajtas fari pri la fontokodo. Kaj por sciemuloj, koni la diferencon inter la diversaj permesiloj povas klarigi la evoluon de diversaj komputadaj projektoj: ke de libera FreeBSD oni disvolvis malliberan kodon por Vindozo kaj Makintoŝo; ke iuj kompanioj devis liberigi sian aparatan pelilon, ĉar ili uzis kodon el Linukso (GPL); k.t.p.

Tamen, por fina uzulo gravas ke, uzante liberan programon, ŝli...

...Ne "ŝtelas" la laboron de iu verkisto/programisto; ŝli uzas laŭleĝe.

...Rajtas disdoni kopiojn al amikoj, konatoj, ktp. Ĉiel laŭleĝe.

...Povas modifi la fontokodon, por ke la programo agu laŭ ŝlia volo. Ekzemple, mi volas ke la programo parolu al mi en Esperanto (ĝiaj tekstoj estu en Esperanto).

...Povas senti sin pli sekura kiam uzi la komputilon. Ĉar la fontokodo de libera programo estas ĉiam publika, oni certas ke la kodo ne enhavas "spionan ordonon" kiu povus sendi delikatan informon al kompanio. Kaj se la kodo enhavus sekurecan eraron kiu ebligus la fiagon de iu viruso, ĝia publikeco faciligas ke oni tuj trovus la solvon al tia sekureca problemo. Mi uzas liberajn programojn ekde 1999 kaj mi neniam trovis sekurecan problemon, krom tiuj kaŭzataj de uzi pasvortojn kiel "12345". En la sekvaj sekcioj mi priskribos kelkajn liberajn programoj pri kiuj mi spertadis.

LINUKSO

Eble la plej konata libera programo. Multaj nomas ĝin "operaciumo", sed Linukso estas nur kerno, la parto de operaciumo kiu komunikiĝas kun aparatoj, kiu administras la bazajn servojn en komputilo, ktp. Kompletaj liberaj operaciumoj (kiel Ubuntu, Debian...) uzas kutime la kernon Linukso, la "uz-grundon" (kompililoj, bibliotekoj,redaktiloj...) de GNU, la fenestrosistemon Xorg kaj la labortablon GNOME, KDE aŭ XFCE. Do, Linukso estas grava parto de la operaciumo, sed fina uzulo preskaŭ neniam "tuŝos" ĝin rekte. Antaŭ kelkaj jaroj, oftis rekomendoj pri rekompili Linukson por funkciigi iun presilon, iun retkarton, iun kameraon... Nun, tiaj rekomendoj povas esti konsiderataj "por inicitaj uzuloj". Linukso-bazataj operaciumoj estas sufiĉe disvastigitaj por ke oni rajtu postuli en iu ajn komputilvendejo aparaton funkcianta "sur Linukso".

DEBIAN

Eble la plej kvalita teĥnike Linuksa "distribuaĵo", tio estas, kompleta operaciumo, kun multegaj utilaĵoj por administristoj, programistoj, uzuloj. Debian-projekto disvolvis "pakan sistemon" tre fortika kaj bone dizajnita, nomata APT. En Debian, por facile instali kaj agordi programojn, oni enpakigas ilin. Tio implicas ke la instalado en Debian estas radike malsama ol tiu en Vindozo. Vindoza uzulo serĉas programon en interreto; se ŝli trovas dosieron .EXE (aŭ pli moderne, .MSI) ŝli rulas ĝin por ke ĝi instaliĝu. Ekzemple, por instali la tekstoverkilo Abiword, oni trovu en retpaĝo http://abiword.org la dosieron abiword-setup-2.8.6.exe kaj rulu ĝin. Tamen, por instali Abiword en Debian, oni serĉu en APT (laŭ iu el la multaj kaj diversaj fasadoj: Aptitude, Synaptic...) iun pakon rilatan al Abiword; efektive, tiel oni trovas la pakon "abiword". Poste oni ordonu al APT ke instaliĝu "abiword".

Do, por instali ion facile en Vindozo, oni trovu .EXE-dosieron en interreto. Por instali ion facile en Debian, oni trovu rilatan pakon en APT. La avantaĝoj de APT-sistemo estas: ĝi certigas ke ĉiu bezonata dosiero estas instalita; ĝi helpas ke ĉiu sekuriga ĝisdatigo estas instalita; ĝi malebligas konfliktoj inter malsamaj programoj. La avantaĝoj de Vindoza sistemo estas: estas pli facile konstrui .EXE-dosieron ol APT-pakon, do estas pli da programoj kun .EXE-versio kaj sen APT-versio, ol inverse. Ĉiel ajn, Debian enhavas kelkdek mil pakojn, kaj inter ili estas la necesaj por plej multaj uzuloj.

UBUNTU

Debian intencas esti "universala operaciumo", do estas eble uzi Debianon per diversaj fenestrosistemoj, sur tre diversaj arĥitekturoj... Tamen, en popularigo de komputado, gravas unuformeco, tiel ke plej= multaj uzuloj povu interŝanĝi konon pri administrado, solvado de problemoj, k.t.p. Kelkaj projektoj intencis sukcesi kiel Debiana "tipa" sistemo; ekzemple Xandros (kiun oni trovas en kelkaj tekkomputiloj), Linspire, Morphix... Tamen nur Ubuntu atingis tiun celon, tiel ke nun Ubuntu estas multe pli konata ol sia patro, Debiano. Nun oni povas trovi en superbazaroj komputiloj kun Ubuntu antaŭinstalita. Tio estas granda sukceso por la liber-programara movado.

OPENOFFICE

Pli disvastigita ol Ubuntu estas la oficeja programaro OpenOffice. Ĝi enhavas kvar programoj, ĉiu kun gravega celo: verki tekstojn (oni dirus: simila al Word); kalkuli per tabelo (Excel); verki prezentaĵojn (PowerPoint); administri datumbazojn (Access). OpenOffice uzas dosierformatojn kiuj estas malfermitaj (OpenDocumento), malkiel Office de Microsoft. Malfermitaj formatoj oferas avantaĝojn similajn al tiuj de la libera programaro: la priskribo de la dosiera strukturo estas publika, do ĉiu programisto, ĉiu firmao, ĉiu ŝtato... povas iel kaj ĉiam atingi ĝian enhavon. Eble vi konas iun, kiu uzis malnovan programon (ekz. tekstoverkilon) kaj kiu nun ne povas malfermi siajn malnovajn dosierojn, ĉar la programo (kaj eble ĝia firmao) ne ekzistas kaj la formato de la dokumentoj restis sekreta.

FIREFOX

Eĉ pli disvastigita ol OpenOffice estas la navigilo retumilo krozilo k.t.p. Firefox. Kvankam ankoraŭ Internet Explorer estas la plej uzata, Firefox estas agnoskita kiel pli bone funkcianta kaj pli respektema pri la interretaj normoj. Tio estas, en interreto estas normoj laŭ kiuj ĉiu programo uzanta interreton devus funkcii. Tamen, kelkafoje, grandegaj firmaoj (tiaj ke plej multaj homoj uzas ilian programon: praktike monopolo) decidas ke siaj programoj agu kontraŭ iu normo; pro la monopola situacio, plej multaj uzuloj ne plendos. Malfermitaj kaj publikaj normoj estas grava afero, do oni klopodu ke ne nur firmaoj decidu pri ili.

EVOLUTION

Alia popularega programo por ĉiutaga laboro estas retpoŝta administrilo, kies plej konata ekzemplo estas Outlook. Ekzistas liberaj versioj: Evolution, apriora en Ubuntu, estas simila; Thunderbird, kiu funkcias ankaŭ en Vindozo, estas komforte uzebla ĉar ĝi estas parenco de Firefox.

EMAKSO

Ĝi estas teksta redaktilo kiu, pro esti virtuala maŝino de Lisp (iu potenca programlingvo), por ĝiaj uzuloj ĝi preskaŭ fariĝas kompleta operaciumo: ĝi enhavas kalkulilon, kalendaron, ludojn kiel Tetris... eĉ psikiatron (la faman ekzemplon de artefarita inteligento, Eliza). Por normala uzulo, ni diru ke ĝi estas tre komforta medio por redakti programojn komputilajn, kaj ke ĝi ebligas komfortan redaktadon sen la muso.

GIMP

Senutilas paroli nuntempe pri la programo Photoshop, tiom ofte menciata de la informiloj. Ni diru ke Gimp estas libera programo almenaŭ tiel kvalita kiel Photoshop. Ĝi pli bonas laŭ iuj trajtoj, kaj malbonas laŭ aliaj. Gimp estas unu emblema ŝipo de la liberprogramara mararmeo.

INKSCAPE

Estas du specoj de grafikaj aŭ bildaj dosieroj en komputado. La unua estas tiu de la dosieroj kies formato konservas bildojn kiel matricon de koloraj punktoj, eble kun ia travideco; tiajn dosierojn oni nomas bitmapoj aŭ pikselmapoj. La dua speco respondas al tiuj formatoj kiuj priskribas la bildon per geometriaj indikoj: estas kvadrato en iuj koordinatoj, cirklo en aliaj, jen litero A laŭ tiparo Helvetica, jen alia kvadrato...; tiajn oni nomas vektoraj. Vektorbilda dosiero kutime povas enhavi bitmapojn. Bitmapaj formatoj estas BMP, JPEG, PNG, GIF, TIFF... Vektoraj formatoj estas SVG, Postscript, PDF, Fig... Gimp ebligas redakti bitmapajn bildojn. Por krei kaj redakti vektorajn bildojn, oni povas uzi la liberajn programojn Xfig, kiu estas klasikaĵo kaj eble ne komforta por nuntempa normala uzulo, kaj Inkscape. Sendube, uzulo kutimita al programoj kiel Corel Draw, aprezus la modernan fasadon de Inkscape, kaj povus uzi ĝin por krei belajn bildojn.

SCRIBUS

Por skizi kaj redakti dokumentojn por presi, per tipa moderna interfaco, oni povas uzi la liberan programon Scribus, kiu generas PDF-dosierojn alte kvalitajn.

NVU

Ĝi utilas por skizi kaj redakti dokumentojn, ne por presi, sed por interreta publikigo. Ĝi estas komparebla al Frontpage, eble la plej populara programo por tiu celo.

TEĤO

Ĝi estas sistemo por fari dokumentojn presotajn. Tamen, ĝi ne havas grafikan fasadon (kvankam la projektojn LyX kaj TeXmacs oni povus konsideri tiajn); por doni ideon, mi diru ke ĝi similus al pretigi retpaĝon per rekta redaktado de la HTML-fontokodon. Tio havas avantaĝojn kaj malavantaĝojn. Teĥo estas la norma sistemo publikigi artikolojn en matematikaj kaj fizikaj sciencaj kampoj.

BILDOJ

Richard Stallman



Simbolo de programo Teĥo (TeX)



Logotipo de programo Teĥo (TeX)



Bestosimbolo de projekto GNU



Besta emblemo de programo Linukso (Linux)



Besta emblemo de projektoj FreeBSD



Emblemo de la fenestrosistemo Xorg



Emblemo de PostgreSQL



Emblemo de la lispa programadmedio Racket



Emblemo de OpenOffice



Emblemo de Fajrovulpo (Firefox)



Emblemo de operaciumo Debian



Tekstoverkilo Abiword: Ekzemplo de instali la pakojn kun esperantlingvaj tradukoj. Estas uzata itallingva Synaptic



Emblemo de operaciumo Ubuntu



Retpoŝtilo Evolution



Emblemo de retpoŝtilo Tondrobirdo (Thunderbird):



Ekzempla desegno per Xfig



Ekzempla seanco de laboro per Scribus



Emblemo de la retpaĝa redaktilo NVU



Ekzempla seanco de redaktado per LyX



Ekzemplo de uzo de Teĥa fasado TeXmacs



verkis: Carlos Enrique Carleos Artime