summaryrefslogtreecommitdiff
path: root/talermerchantdemos/blog/articles/sq/javascript-trap.html
diff options
context:
space:
mode:
Diffstat (limited to 'talermerchantdemos/blog/articles/sq/javascript-trap.html')
-rw-r--r--talermerchantdemos/blog/articles/sq/javascript-trap.html339
1 files changed, 339 insertions, 0 deletions
diff --git a/talermerchantdemos/blog/articles/sq/javascript-trap.html b/talermerchantdemos/blog/articles/sq/javascript-trap.html
new file mode 100644
index 0000000..f17711f
--- /dev/null
+++ b/talermerchantdemos/blog/articles/sq/javascript-trap.html
@@ -0,0 +1,339 @@
+<!--#set var="ENGLISH_PAGE" value="/philosophy/javascript-trap.en.html" -->
+
+<!--#include virtual="/server/header.sq.html" -->
+<!-- Parent-Version: 1.96 -->
+<!-- This page is derived from /server/standards/boilerplate.html -->
+<!--#set var="TAGS" value="essays licensing traps" -->
+<!--#set var="DISABLE_TOP_ADDENDUM" value="yes" -->
+
+<!-- This file is automatically generated by GNUnited Nations! -->
+<title>Kurthi JavaScript - Projekti GNU - Free Software Foundation</title>
+
+<!--#include virtual="/philosophy/po/javascript-trap.translist" -->
+<!--#include virtual="/server/banner.sq.html" -->
+<!--#include virtual="/philosophy/ph-breadcrumb.sq.html" -->
+<!--GNUN: OUT-OF-DATE NOTICE-->
+<!--#include virtual="/server/top-addendum.sq.html" -->
+<div class="article reduced-width">
+<h2>Kurthi JavaScript</h2>
+
+<address class="byline">nga <a href="https://www.stallman.org/">Richard Stallman</a></address>
+
+<p><strong>Mund të jeni duke xhiruar programe jo të lirë në kompjuterin tuaj
+çdo ditë, pa e ditur - përmes shfletuesit tuaj.</strong></p>
+
+<!-- any links that used to point to the appendices should point to
+ free-your-javascript.html instead. -->
+<div class="announcement">
+<hr class="no-display" />
+<p>Webmasters: ka <a href="/software/librejs/free-your-javascript.html">disa
+rrugë</a> për të treguar licencën e programeve JavaScript në një sajt.</p>
+<hr class="no-display" />
+</div>
+
+<p>Ideja se <a href="/philosophy/free-software-even-more-important.html">
+cilido program jo i lirë keqtrajton përdoruesit e tij</a> është familjare
+për bashkësinë e software-it të lirë. Disa nga ne e mbrojnë lirinë tonë
+duke hedhur poshtë krejt programet jo të lira në kompjuterat tanë. Mjaft të
+tjerë e shohin të qenët jo të lirë si një goditje ndaj programit.</p>
+
+<p>Mjaft përdorues janë në dijeni se ky problem aplikohet te shtojcat që
+shfletuesi ofron të instalohet, ngaqë ato mund të jenë të lira ose jo të
+lira. Por shfletuesi xhiron programe të tjera jo të lira, për të cilat nuk
+ju pyesin, ose madje nuk ua tregojnë - programe të cilat i përmbajnë ose te
+të cilat lidhen faqe web. Këto programe në shumicën e rasteve janë të
+shkruar në JavaScript, por përdoren edhe gjuhë të tjera.</p>
+
+<p>JavaScript-i (i quajtur zyrtarisht ECMAScript, pro pak vetë e përdorin këtë
+emër) dikur përdorej për fru-fru të vockla në faqe web, bie fjala, për
+elementë të hijshëm, por jothelbësorë, lëvizjeje dhe shfaqjeje. Qe e
+pranueshme të konsideroheshin këto si zgjerime të thjeshta të gjuhës HTML,
+në vend se <em>software</em> i njëmendtë dhe të hidhej tej ajo punë.</p>
+
+<p>Disa sajte ende e përdorin JavaScript-in në këtë mënyrë, por shumë prej tyre
+e përdorin për programe të rëndësishme, që kryejnë punë të mëdha. Për
+shembull, Google Docs provon të instalojë në shfletuesin tuaj një program
+JavaScript që është gjysmë megabajt i madh, në një format të ngjeshur që
+mund ta quanim Obfuscript. Kjo formë e ngjeshur është krijuar nga kodi
+burim, duke fshirë hapësira ekstra që e bëjnë kodin të lexueshëm dhe
+shënimet shpjeguese, që e bëjnë të kuptueshëm, si dhe duke zëvendësuar te
+kodi çdo emër me kuptim me një emër arbitrar të shkurtër, që të mos mund të
+themi se ç’do të thotë.</p>
+
+<p>Pjesë e <a href="/philosophy/free-sw.html">kuptimit të software-it të
+lirë</a> është se përdoruesit kanë mundësi të hyjnë te kodi burim i
+programit (plani i tij). Kodi burim i një programi do të thotë forma e
+parapëlqyer për programuesit për ta ndryshuar - përfshi hapësira të
+dobishme, shënime shpjeguese dhe emra të kuptimtë. Kodi i ngjeshur është një
+zëvendësim i gabuar, i padobishëm i kodit burim; kodi i vërtetë burim i
+këtyre programeve nuk mund të kihet nga përdoruesit, që përdoruesit të mund
+ta kuptojnë; ndaj programet nuk janë të lirë.</p>
+
+<p>Përveç të qenit jo të lirë, mjaft prej këtyre programeve janë
+<em>malware</em>, ngaqë <a
+href="https://github.com/w3c/fingerprinting-guidance/issues/8">përgjojnë
+përdoruesin</a>. Edhe më të shpifur, disa sajte përdorin shërbime të cilat
+regjistrojnë <a
+href="https://freedom-to-tinker.com/2017/11/15/no-boundaries-exfiltration-of-personal-data-by-session-replay-scripts/">krejt
+veprimet e përdoruesit teksa shohin një faqe</a>. Këto shërbime gjoja “i
+redaktojnë” regjistrimet, për të përjashtuar të dhëna rezervat që sajti
+s’duhet t’i marrë. Por edhe nëse kjo bëhet si duhet, qëllimi i këtyre
+shërbimeve është t’u japin sajteve të tjera të dhëna personale që këta
+s’duhet t’i marrin.</p>
+
+<p>Zakonisht shfletuesit nuk ju thonë kur ngarkojnë programe JavaScript. Disa
+shfletues kanë një mënyrë për të çaktivizuar krejtësisht JavaScript-in, por
+edhe nëse jeni i ndërgjegjshëm për këtë pikë, do t’ju duhej mundim i madh
+për të identifikuar programe jo të lirë, jo trivialë dhe t’i bllokoni.
+Megjithatë, madje edhe në bashkësinë e software-it të lirë, shumica e
+përdoruesve nuk e dinë këtë problem; heshtja e shfletuesve priret ta fshehë.</p>
+
+<p>Për të qenë të qartë, gjuha JavaScript në vetvete s’është më e mirë a më e
+keqe për lirinë e përdoruesit, se sa cilado gjuhë tjetër. Është e mundur të
+hidhet në qarkullim një program JavaScript si <em>software</em> i lirë, duke
+dhënë kodin e tij burim nën një licencë software-i të lirë. Nëse programi
+është “self-contained” - funksionimi dhe qëllimi i tij janë të pavarur nga
+faqja prej nga erdh - kjo është në rregull; mund ta kopjoni në një kartelë
+në makinën tuaj, ta ndryshoni dhe ta hapni atë kartelë me një shfletues, për
+ta xhiruar. Madje është e mundur të paketohet për instalim mu si programet
+e tjerë të lirë dhe për ta përdorur me një urdhër shelli. Këto programe
+s’përfaqësojnë problem special moral të ndryshëm nga ato të programeve C.</p>
+
+<p>Problemi i kurthit JavaScript del kur programi JavaScript vjen tok me një
+faqe që vizitoni përdoruesi. Këto programe JavaScript janë shkruar për të
+funksionuar me një faqe apo sajt të caktuar dhe funksionimi i faqes apo
+sajtit varet prej tyre.</p>
+
+<p>Le të supozojmë se ju e kopjoni dhe ndryshoni kodin JavaScript të faqes.
+Mandej del një problem tjetër: edhe nëse mund të kihet burimi i programit,
+shfletuesit nuk ofrojnë ndonjë mënyrë për të xhiruar versionin e ndryshuar
+në vend të origjinalit, kur vizitohet faqja apo sajti. Efekti është i
+krahasueshëm me tivoizimin, edhe pse, në parim, jo dhe aq i zorshëm për t’u
+tejkaluar.</p>
+
+<p>JavaScript-i s’është gjuha e vetme që sajtet përdorin për programe dërguar
+përdoruesit. Flash-i mbulonte programim përmes një varianti të zgjeruar të
+JavaScript-it, por kjo i takon të kaluarës. Silverlight duket se krijon një
+problem të ngjashëm me Flash-i, vetëm se më keq, ngaqë Microsoft-i e përdor
+si platformë për kodekë jo të lirë. Një zëvendësim i lirë për
+Silverlight-in nuk bën punë për botën e programeve të lira, veç në ardhtë me
+kodekë zëvendësimi të lirë.</p>
+
+<p>Aplikacionthet Java xhirojnë gjithashtu në shfletues dhe nxjerrin probleme
+të ngjashme. Në përgjithësi, ky lloj problemi shtrohet për çfarëdo sistemi
+aplikacionthesh. Pasja e një mjedisi të lirë ekzekutimi vetëm se na shpie
+larg nga trajtimi i problemit.</p>
+
+<p>Teorikisht është e mundshme të programohet në HTML dhe CSS, por në praktikë
+kjo aftësi është e kufizuar dhe jo e leverdishme; thjesht për të arritur të
+bëjë diçka do punë mbresëlënëse. Programe të tillë duhet të jenë të lira,
+por CSS-ja s’është problem serioz për lirinë e përdoruesi, më 2019-n.</p>
+
+<p>Është zhvilluar një lëvizje e fuqishme që u bën thirrje sajteve të
+komunikojnë vetëm përmes formatesh dhe protokollesh që janë të lirë (ndonjë
+thotë “të hapët”); që do të thotë, dokumentimi i të cilave është i botuar
+dhe të cilat gjithkush është i lirë t’i vërë në përdorim. Por prania e
+programeve JavaScript në faqe web e bën të pamjaftueshëm këtë kriter. Gjuha
+JavaScript në vetvete, si një format, është e lirë dhe përdorimi i
+JavaScript-it në një sajt s’është medoemos gjë e keqe. Por, siç e kemi parë
+më sipër, mund të jetë e keqe - nëse programi JavaScript është jo i lirë.
+Kur sajti i transmeton një program përdoruesit, nuk mjafton që programi të
+jetë shkuar në një gjuhë të dokumentuar dhe jo të koklavitur; ai program
+duhet të jetë gjithashtu i lirë. “I kalon përdoruesit vetëm programe të
+lira” duhet të bëhet pjesë e kriterit për një sajt etik.</p>
+
+<p>Ngarkimi dhe xhirimi heshtazi i programeve jo të lira është një nga disa
+problemet e lindura me “aplikacionet web”. Termi “aplikacione web” qe
+konceptuar për të anashkaluar parjen e dallimit thelbësor mes software-i
+dhënë përdoruesit dhe software-i që xhiron në një shërbyes. Mund t’i
+referohet një programi klient të specializuar që xhiron në një shfletues;
+mund t’i referohet një software-i të specializuar shërbyesi; mund t’i
+referohet një programi klient të specializuar që funksionon krah për krah me
+software-in e specializuar të shërbyesit. Klienti dhe shërbyesi nxjerrin
+probleme të ndryshme etike, edhe nëse janë të integruar kaq ngushtë, saqë
+mund të thuhet se formojnë pjesë të një programi të vetëm. Ky artikull
+trajton vetëm problemin e software-it më anë të klientit. Problemin e
+shërbyesit e trajtojmë ndarazi prej tij.</p>
+
+<p>Nga ana praktike, si mund të trajtojmë problemin e programeve JavaScript jo
+trivialë, jo të lirë, në sajte? Hapi i parë është të shmanget xhirimi i tij.</p>
+
+<p>Ç’duam të themi me “jo trivial”? Është çështje që varet nga shkalla, pra
+është çështje e hartimit të një kriteri të thjeshtë që jep përfundime të
+mira, në vend se gjetje e përgjigjes së saktë.</p>
+<p>
+Kriteri ynë i tanishëm është të konsiderohet jo trivial një program
+JavaScript, nëse plotësohet cilido prej këtyre kushteve:</p>
+
+<ul>
+ <li>i referohen si një programth i jashtëm (nga një faqe tjetër).</li>
+
+ <li>deklaron një varg më të gjatë se 50 elementë.</li>
+
+ <li>përkufizon një njësi të emërtuar (funksion ose metodë) që kryen thirrje ndaj
+çfarëdo gjëje tjetër nga një primitiv.</li>
+
+ <li>përkufizon një njësi të emërtuar me më shumë se tre konstrukte kushtore dhe
+konstrukt qerthull.</li>
+
+ <li>kod jashtë përkufizimesh të emërtuara thërret çfarëdo hiq primitivë dhe
+funksione të përkufizuar më sipër te faqja.</li>
+
+ <li>kod jashtë përkufizimesh të emërtuara përmban më shumë se tre konstrukte
+kushtore dhe konstrukt qerthull, gjithsej.</li>
+
+ <li>kryen thirrje ndaj <b>eval</b>.</li>
+
+ <li>kryen thirrje Ajax.</li>
+
+ <li>përdor shkrim kllapash për përdorim vetish objektesh dinamikë, që duket si
+<b><em>objekt</em>[<em>veti</em>]</b>.</li>
+
+ <li>ndryshon DOM-in.</li>
+
+ <li>përdor konstrukte dinamike JavaScript që janë të vështirë për t’u analizuar
+pa interpretuar programin, ose ngarkohet tok me programthe që përdorin
+konstrukte të tillë. Në mënyrë specifike, duke përdorur çfarëdo konstrukti
+tjetër nga një varg literal me disa metoda (<b>Obj.write</b>,
+<b>Obj.createElement</b>, dhe të tjerë).</li>
+</ul>
+
+<p>Si e marrim vesh nëse kodi JavaScript është apo jo i lirë? Në një <a
+href="/licenses/javascript-labels.html">artikull më vete</a>, propozojmë një
+metodë me të cilën një program JavaScript jo trivial në një faqe web mund të
+deklarojë URL-në ku gjendet kodi burim dhe mund të deklarojë edhe licencën
+për të, duke përdorur komente të stilizuar.</p>
+
+<p>Së fundi, na duhet të ndryshojmë shfletues të lirë që të pikasin dhe
+bllokojnë JavaScript jo trivial dhe jo të lirë në faqe web. Programi <a
+href="/software/librejs/">LibreJS</a> pikas JavaScript jo të lirë, jo
+trivial në faqe që vizitoni dhe e bllokon. LibreJS-i përfshihet në IceCat
+dhe mund të kihet si shtesë për Firefox.</p>
+
+<p>Përdoruesit e shfletuesve kanë gjithashtu nevojë për një mjet të
+përshtatshëm për të specifikuar kod JavaScript për t’u përdorur <em>në
+vend</em> të JavaScript-it në një faqe të dhënë. (Kodi i dhënë mund të jetë
+zëvendësim tërësor, ose një version i ndryshuar i programit të lirë
+JavaScript në atë faqe.) Greasemonkey është afër të qenit i aftë për ta
+bërë këtë, por jo dhe aq, ngaqë nuk garanton të ndryshojë kodin JavaScript
+në një faqe, përpara se programi fillon të ekzekutohet. Përdorimi i një
+ndërmjetësi vendor bën punë, por është shumë i papërshtatshëm tani për të
+qenë një zgjidhje reale. Na duhet të ndërtojmë një zgjidhje që është e
+qëndrueshme dhe me leverdi, si dhe sajte për të ndarë me të tjerët
+ndryshimet. Projekti GNU do të donte të rekomandonte sajte që u
+përkushtohen vetëm ndryshimeve të lira.</p>
+
+<p>Këto veçori do t’i bëjnë të mundur një programi JavaScript të përfshirë në
+një faqe web të jetë i lirë në një kuptim real dhe praktik. JavaScript-i
+s’do të jetë më një pengesë e veçantë drejt lirisë tonë - jo më tepër se sa
+janë C-ja dhe Java. Do të jemi në gjendje të hedhim poshtë dhe madje të
+zëvendësojmë programe të lirë jo trivialë JavaScript, ashtu siç hedhim
+poshtë dhe zëvendësojmë paketa jo të lira që ofrohem për instalim në rrugën
+e zakonshme. Mandej mund të fillojë fushata jonë që sajte të çlirojnë
+JavaScript-in e tyre.</p>
+
+<p>Ndërkohë, ka një rast kur është e pranueshme të xhirohet një program
+JavaScript jo i lirë: për të dërguar një ankesë te operatorët e sajtit për
+t’u thënë se duhet të bëjnë të lirë ose ta heqin fare kodin JavaScript. Ju
+lutemi, mos ngurroni ta aktivizoni përkohësisht JavaScript-in për të bërë
+këtë - por mos harroni ta çaktivizoni më pas.</p>
+
+<!-- any links that used to point to the appendices should point to
+ free-your-javascript.html instead. -->
+<div class="announcement">
+<hr class="no-display" />
+<p>Webmasters: ka <a href="/software/librejs/free-your-javascript.html">disa
+rrugë</a> për të treguar licencën e programeve JavaScript në një sajt.</p>
+<hr class="no-display" />
+</div>
+
+<p><strong>Falënderime:</strong> Falënderoj <a
+href="/people/people.html#mattlee">Matt Lee-në</a> dhe <a
+href="http://ejohn.org">John Resig-un</a> për ndihmën e tyre në përkufizimin
+e kriterit tonë të propozuar, si dhe David Parunakian-in që më tërhoqi
+vëmendjen te problemi.</p>
+</div>
+
+<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.sq.html" -->
+<div id="footer" role="contentinfo">
+<div class="unprintable">
+
+<p>Ju lutemi, pyetjet dhe kërkesat e përgjithshme rreth FSF-së &amp; GNU-së
+dërgojini te <a href="mailto:gnu@gnu.org">&lt;gnu@gnu.org&gt;</a>. Ka
+gjithashtu <a href="/contact/">mënyra të tjera për t’u lidhur me</a>
+FSF-në. Njoftimet për lidhje të dëmtuara dhe ndreqje apo këshilla të tjera
+mund të dërgohen te <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 contributing translations of
+ our web pages, see <a
+ href="/server/standards/README.translations.html">Translations
+ README</a>. -->
+Përpiqemi fort dhe bëjmë sa mundemi për të ofruar përkthime me cilësi të
+mirë dhe të përpikta. Megjithatë, nuk jemi të përjashtuar nga
+papërsosmëritë. Ju lutemi, komentet dhe këshillat e përgjithshme lidhur me
+këtë dërgojini te <a
+href="mailto:web-translators@gnu.org">&lt;web-translators@gnu.org&gt;</a>.</p><p>Për
+të dhëna mbi bashkërendimin dhe parashtrimin e përkthimeve të faqeve tona
+web, shihni <a href="/server/standards/README.translations.html">README për
+përkthimet</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>Të drejta kopjimi &copy; 2009-2013, 2016-2019, 2021 Richard Stallman</p>
+
+<p>Kjo faqe mund të përdoret sipas një licence <a rel="license"
+href="http://creativecommons.org/licenses/by-nd/4.0/">Creative Commons
+Attribution-NoDerivatives 4.0 International License</a>.</p>
+
+<!--#include virtual="/server/bottom-notes.sq.html" -->
+<div class="translators-credits">
+
+<!--TRANSLATORS: Use space (SPC) as msgstr if you don't want credits.-->
+ </div>
+
+<p class="unprintable"><!-- timestamp start -->
+U përditësua më:
+
+$Date: 2021/12/01 23:30:29 $
+
+<!-- timestamp end -->
+</p>
+</div>
+</div>
+<!-- for class="inner", starts in the banner include -->
+</body>
+</html>