Kildekode Er For Alle. Hvis Du Kun Taler Engelsk - Alternativ Visning

Kildekode Er For Alle. Hvis Du Kun Taler Engelsk - Alternativ Visning
Kildekode Er For Alle. Hvis Du Kun Taler Engelsk - Alternativ Visning

Video: Kildekode Er For Alle. Hvis Du Kun Taler Engelsk - Alternativ Visning

Video: Kildekode Er For Alle. Hvis Du Kun Taler Engelsk - Alternativ Visning
Video: Når dine forældre tror, at du ikke kan engelsk... 2024, Kan
Anonim

Da World Wide Web fejrer sit 30-års jubilæum i år, reflekterer en sprogekspert ved magasinet Wired over nutiden og morgendagen med programmeringssprog og bemærker, at selv meget store sprog med en lang litterær tradition ikke er blevet grundlaget for udbredt kildekode. Du skal kende engelsk. Ikke desto mindre kan situationen ændres - i de næste 30 år.

World Wide Web fejrer sit 30-års jubilæum i år, så der er brugt en hel del pixels på at diskutere "de første løfter fra nettet" - inklusive ideen om, at du kan klikke på "visningskilde" -knappen på en hvilken som helst side og let finde ud af hvorfor det viser nøjagtigt, hvad du ser. Her er den allerførste webside, som det selvlærte websted Glitch gengiver i markeringen af jubilæet for at vise dig, hvordan du kunne skifte til kildekoden og se, at nogle dele er mærket og

(du har måske gættet, hvad det betyder "afsnit"). Ser temmelig ligetil ud - men du læser dette på et engelsktalende websted ud fra et engelsksproget perspektiv.

Forestil dig nu, at dette er den første webside, du har set i dit liv, og du kan ikke vente med at kigge bag kulisserne og finde ud af, hvordan det fungerer. Men i stedet for de verbale etiketter, som du er bekendt med, står du over for den version, jeg oprettede - den adskiller sig ikke fra originalen, med undtagelse af, at kildekoden er baseret på russisk snarere end engelsk. Jeg taler ikke russisk, og hvis du f.eks. Gør det samme, vil begge dele og forårsage jer alle det samme ønske om at prøve at gøre noget på egen hånd?

I teorien kan der oprettes et programmeringssprog baseret på alle symboler. Computeren er ligeglad. Det kører allerede et usynligt oversætterprogram, der oversætter alle disse IF'er til dig eller til nuller og dem, som det fungerer med, og vi ville få de samme resultater, hvis vi tog kartoffel-emojiene i stedet for IF eller den mystiske middelalderlige kyrilliske glyf fra det 15. århundrede, den multikulære "Oh "I stedet for. Det faktum, at programmeringssprog ofte ligner engelsk, tyder kun på, at vores fattige, dødelige menneskelige hjerne lettere kan huske ord, som vi allerede kender.

Men kun nogle få af os kender allerede ordene, der betegner disse kommandoer - dem, der taler engelsk. Så de "indledende løfter på nettet" var kun løfter for engelsktalende brugere, hvad enten det var indfødte talere eller personer med adgang til en generelt eliteuddannelse, hvis produkt er flydende engelsk som andetsprogede mennesker i ikke-engelsedominerede områder. …

Sandt nok, computerprogrammer og sociale netværksplatforme er tilgængelige i dag på 30-100 sprog, men hvad med selve værktøjerne, der kan hjælpe os med at blive skabere, ikke kun brugere af computerværktøjer? Jeg går ikke engang ind for at skrive programmeringssprog på små og sjældent anvendte sprog (selvom det ville være godt). Selv meget store sprog, der har en omfattende litterær tradition og er sprog inden for regional handel, såsom kinesisk, spansk, hindi og arabisk, er stadig ikke blevet grundlaget for udbredt kildekode.

Så vidt jeg ved, er der kun fire programmeringssprog, der er tilgængelige overalt i et flersproget format. Ikke 400. Fire (4).

To af dem er specielt designet til undervisning i programmering af børn: Scratch og Blockly. Scratch's udviklere udførte endda forskning, der viste, at børn lærer at programmere lettere, hvis kildekoden er baseret på deres eget sprog end dem, der sidder fast og prøver at lære et andet sprog. Hvad vil der ske, når disse børn vokser op? Voksne, der ikke er dygtige i fremmedsprog, skal vælge mellem to andre produkter, der er tilgængelige på forskellige sprog: Excel-formler og wiki-kode.

Salgsfremmende video:

Ja, du kan programmere regneark ved hjælp af ethvert sprog, der leveres til programgrænsefladen. I både Excel og Google Sheets kan du f.eks. Skrive = IF (betingelse, value_if_true, value_if_false), eller du kan indtaste det spanske ækvivalent = SI (prueba_lógica, valor_si_es_verdadero, valor_si_es_falso) eller bruge snesevis af andre sprog. [Inkluderet russisk: IF (værdi, værdi_if_true, value_if_false - red.)] Måske er dette ikke den første ting, der kommer op i tankerne, når man tænker på programkode, men tabelprogrammer kan i princippet bruges som en Turing-maskine, og sådan brug af lokale versioner kan være økonomisk begrundet.

På samme måde kan du redigere Wikipedia og andre wiki-websteder ved at drage fordel af det faktum, at wiki-kode findes på mange forskellige sprog. Grundlæggende wiki-kommandoer er ikke specifikke for noget sprog (for eksempel nårer lukket i firkantede parenteser), men mere komplekse kommandoer bruger ord på det lokale sprog. Når du for eksempel designer en tabel med data om en person, vil der i den engelsksprogede Wikipedia være parametre "name =" og "birth_place =", som i den bulgarske version af Wikipedia ligner "name =" og "rodin-mesto =".

Ud over disse fire bredt tilgængelige flersprogede programmeringskoder er der flere dusin, måske endda omkring hundrede, programmeringssprog tilgængelige på et eller to andre sprog end engelsk, såsom Qalb (arabisk), kinesisk version af Python, Farsinet (persisk), Hindawi-programmeringssystemet (Bengali, Gujarati og Hindi) og endda en latin version af Perl. Nogle programmeringssprog, der ikke er engelsk, går tilbage til æraen med regeringsbyggede rumstore computere - for eksempel flere programmeringssprog fra Sovjet-tiden baseret på russisk samt den flersprogede ALGOL 68 (1960'erne) og 4. dimension (1980'erne) … Men mange nyere sprog som Python, Ruby og Lua er udviklet i ikke-engelsktalende lande (Holland, Japan og Brasilien),men alligevel er nøglekommandoerne på disse sprog engelsk. Det første løfte fra Internettet lyder således mere som en trussel for mange mennesker: taler engelsk eller stiger af nettet.

Disse sprog eksisterer sammen, fordi det er let at oversætte fra et programmeringssprog til et andet. Der er mange programmeringssprogkonvertere tilgængelige - du kan tilføje et JavaScript-kodestykke og få en Python-version, eller tilføje et Markdown-kodestykke og få en HTML-version. De er ikke særlig vanskelige at skabe. Programmeringssprog har begrænsede, veldefinerede ordforråd uden tvetydighed eller kulturelle nuancer, der gør det vanskeligt for automatisk maskinoversættelse af naturlige sprog. Når du kender ækvivalenterne til omkring hundrede kommandoer, kan du automatisk erstatte den ene med den anden for ethvert stykke kode.

Det er så let at oversætte programmeringssprog, at nogle nerder gør det fra tid til anden ud af kærlighed til kunst eller til at grine, når de opretter såkaldte esoteriske programmeringssprog. For eksempel er LOLCODE modelleret på lolcats-kattememierne, så programmet åbnes med HAI-kommandoen (FORRIGE - red.) Og lukkes med KTHXBAI (forkortelse for “okay, tak, bye”: “bye bye” - red..), og Whitespace (Mellemrum) er fuldstændig usynlig for det menneskelige øje og består af ikke-udskrivelige karakterer: mellemrum, tabulatortop og linjeskift. Der er endda Pikachu, et programmeringssprog, der udelukkende er lavet af pi, pika og andpikachu, så Pikachu selv kunne - teoretisk set - slippe fri fra disse forbandede Pokemon-trænere og tage et højt-betalende programmererjob i stedet.

Når du opretter en Pokemon-oversættelse af din kode, lyder det absurd. Når du oversætter kode for milliarder af mennesker i verden, der ikke taler engelsk, er adgang til højt-betalende job og muligheden for manuelt at finjustere din egen enhed ikke længere en fordel. Det faktum, at kildekoden afhænger af engelsk, fratager folk denne fordel, og fra et kodningsteknologisk synspunkt er dette helt unødvendigt.

Men et programmeringssprog handler ikke kun om dets tekniske egenskaber, det er et samfund af mennesker. De fire udbredte flersprogede koder har haft bedre held med et sådant samfund end individuelle ikke-engelske programmeringssprog - men de er stadig meget få. Der er andre nyttige ressourcer, som du bliver nødt til at besøge, når du google bugrapporter. Alligevel, forbandet det, skal du først finde ud af, hvordan du bruger dette sprog på din computer. Dette var grunden til, at det var så vigtigt, at den første webbrowser tillader redigering, ikke kun at surfe, hvorfor Glitch insisterede så meget, at brugeren kunne redigere kildekoden lige fra browservinduet, og i hvilket tilfælde det var let at få hjælp. Men hvor er Glitch for resten af verdentaler du ikke engelsk? Hvordan kan vi gøre Internettet endnu mere praktisk for folk, der bare bliver bekendt med det nu (eller som har brugt det som forbrugere i det sidste årti), end det var for de første besøgende?

Derfor mister jeg ikke håbet: I det middelalderlige Europa, hvis du ville mestre kunsten at skrive, måtte du lære et nyt sprog sammen med det. At skrive betyder latin. Forfatterskabet på den lokale dialekt - det modersmål, som folk allerede havde talt - stod et sted på sidelinjen og var uudviklet. Hvorfor gider at lære at skrive på engelsk eller fransk? Der er intet at læse om dem, mens latin gav dig adgang til den intellektuelle tradition for sproget i international kommunikation.

Undertiden når vi ser tilbage på denne historiske æra, undrer vi os over, hvorfor folk gider med al denne latin, når de bare kunne skrive på det sprog, de talte. På det tidspunkt var det at lære latin for at lære at skrive være lige så logisk som at lære engelsk i dag for at skrive kode, selvom vi nu ved, at børn lærer at læse meget hurtigere, hvis de først undervises i deres modersmål. … Argumenterne for engelsk kode, som jeg ser på websteder som Stack Overflow, gentager denne idé: hvorfor ikke bare lære engelsk? Dette giver dig adgang til hele den teknologiske tradition.

Det er kendt, at dominansen af at skrive på latin var afsluttet. Kunsten at skrive har spredt sig til andre sprog. Evnen til at oprette kildekode afhænger ikke mere af kendskabet til det engelske sprog, end selve skriftteknologien var forbundet med latin. Jeg foreslår at starte med at justere den måde, vi taler om programmeringssprog på, der har ord fra fælles sprog. Det første sted blev ikke skrevet i HTML, men på engelsk HTML. Kodestykket, der vises nederst på det første websted, der er gengivet af Glitch, er ikke skrevet i Javascript, men på engelsk “Javascript.” Når vi kalder dem primært engelsk, bliver det mere og mere indlysende at vi kan ændre situationen - vi kan forestille os en verden, hvor der også er russisk HTML eller Swahili "Javascript",hvor du ikke har en iboende fordel ved at lære kode, hvis det sker, at dit modersmål er engelsk.

Denne verden findes endnu ikke. Måske i de næste 30 år vil vi oprette det.

Gretchen McCulloch er bosiddende sprogforsker hos Wired, medforfatter til sprogvidenskabs-podcasten Lingthusiasm, og forfatter af Fordi Internet: Understanding the New Rules of Language, der skal udgå den 23. juli 2019 fra Riverhead (Penguin).