Pirmkods Ir Paredzēts Visiem. Ja Jūs Runājat Tikai Angliski - Alternatīvs Skats

Pirmkods Ir Paredzēts Visiem. Ja Jūs Runājat Tikai Angliski - Alternatīvs Skats
Pirmkods Ir Paredzēts Visiem. Ja Jūs Runājat Tikai Angliski - Alternatīvs Skats

Video: Pirmkods Ir Paredzēts Visiem. Ja Jūs Runājat Tikai Angliski - Alternatīvs Skats

Video: Pirmkods Ir Paredzēts Visiem. Ja Jūs Runājat Tikai Angliski - Alternatīvs Skats
Video: Week 7 2024, Maijs
Anonim

Tā kā globālais tīmeklis šogad svin savu 30. gadadienu, žurnāla Wired valodniecības eksperts pārdomā programmēšanas valodu tagadni un rītdienu, atzīmējot, ka pat ļoti lielas valodas ar senām literārām tradīcijām nav kļuvušas par pamatu plaši izplatītam avota kodam. Jums jāzina angļu valoda. Neskatoties uz to, situāciju var mainīt - nākamajos 30 gados.

World Wide Web šogad svin savu 30. gadadienu, tāpēc diezgan daudz pikseļu ir iztērēti, strīdoties par "sākotnējiem tīmekļa solījumiem" - ieskaitot ideju, ka jūs varat noklikšķināt uz pogas "Skatīt avotu" jebkurā lapā un viegli izdomāt, kāpēc tas parāda tieši to, ko redzat. Šī ir pati pirmā vietne, kuru pašmācības vietnē Glitch reproducēja jubilejas svinībās, lai parādītu, kā jūs varētu pāriet uz avota kodu un redzēt, ka dažas daļas ir marķētas un

(jūs, iespējams, uzminējāt, ko tas nozīmē “rindkopa”). Izskatās diezgan vienkārši, bet jūs to lasāt angliski runājošā vietnē no dzimtā angļu valodas runātāja viedokļa.

Tagad iedomājieties, ka šī ir pirmā tīmekļa lapa, ko esat redzējis savā dzīvē, un jūs nevarat gaidīt palūrēt aiz ainas un uzzināt, kā tā darbojas. Bet jums pazīstamo verbālo etiķešu vietā jūs saskaraties ar manu izveidoto versiju - tā neatšķiras no oriģināla, izņemot to, ka avota kods ir pamatots ar krievu, nevis angļu valodu. Es nerunāju krieviski, un, ja jūs, piemēram, darīsit to pašu, vai jūs abi vēlēsities mēģināt kaut ko darīt pats, un tas izraisīs jums visu to pašu?

Teorētiski programmēšanas valodu var izveidot, pamatojoties uz jebkuriem simboliem. Datoram vienalga. Tas jau vada neredzamu tulkotāju programmu, kas tulko visus šos jūsu IF vai nullēs, un ar tiem, ar kuriem tā darbojas, un mēs iegūtu tādus pašus rezultātus, ja IF vietā izmantotu kartupeļu emocijzīmes vai 15. gadsimta noslēpumaino viduslaiku kirilicas glifu, multiokulāro “Ak Tā vietā. Fakts, ka programmēšanas valodas bieži atgādina angļu valodu, tikai liek domāt, ka mūsu nabadzīgo, mirstīgo cilvēku smadzenes var vieglāk atcerēties vārdus, kurus mēs jau zinām.

Bet tikai daži no mums jau zina vārdus, kas apzīmē šīs komandas - tie, kas runā angliski. Tātad "tīmekļa sākotnējie solījumi" bija tikai solījumi angliski runājošiem lietotājiem, neatkarīgi no tā, vai tie ir dzimtā valoda vai cilvēki ar piekļuvi vispārējai elites izglītībai, kuras produkts ir brīva angļu valoda kā otrās valodas cilvēki apgabalos, kas nav angļu valoda. …

Tiesa, datorprogrammas un sociālo tīklu platformas mūsdienās ir pieejamas 30–100 valodās, bet kā ir ar pašiem rīkiem, kas var mums palīdzēt kļūt par radītājiem, ne tikai par skaitļošanas rīku lietotājiem? Es pat neatbalstu programmēšanas valodu rakstīšanu mazās un reti lietotās valodās (lai gan tas būtu lieliski). Pat ļoti lielas valodas, kurām ir plašas literārās tradīcijas un ir reģionālās tirdzniecības valodas, piemēram, ķīniešu, spāņu, hindi un arābu, joprojām nav kļuvušas par pamatu plaši izplatītam avota kodam.

Cik es zinu, visur ir pieejamas tikai četras programmēšanas valodas daudzvalodu formātā. Ne 400. Četri (4).

Divas no tām ir īpaši izstrādātas, lai mācītu bērniem programmēšanu: Scratch un Blockly. Scratch izstrādātāji pat veica pētījumu, kas parādīja, ka bērni iemācās programmēt vieglāk, ja avota kods balstās uz viņu pašu valodu, nekā tie, kuri iestrēgst, mēģinot iemācīties citu valodu. Kas notiks, kad šie bērni izaugs? Pieaugušajiem, kuri neprot svešvalodas, būs jāizvēlas no diviem citiem produktiem, kas pieejami dažādās valodās: Excel formulas un wiki kods.

Reklāmas video:

Jā, izklājlapas var programmēt, izmantojot jebkuru valodu, kas paredzēta programmas saskarnei. Gan Excel, gan Google izklājlapās varat rakstīt, piemēram, = IF (nosacījums, vērtība_if_true, value_if_false), vai arī varat ievadīt spāņu valodas ekvivalentu = SI (prueba_lógica, valor_si_es_verdadero, valor_si_es_falso) vai izmantot desmitiem citu valodu. [Ieskaitot krievu valodu: IF (value, value_if_true, value_if_false - ed.)] Varbūt šī nav pirmā lieta, kas nāk prātā, domājot par programmas kodu, taču tabulārās programmas principā var izmantot kā Turing mašīnu, un šāda vietējo versiju izmantošana var būt ekonomiski pamatota.

Tāpat jūs varat rediģēt Wikipedia un citas wiki vietnes, izmantojot faktu, ka wiki kods pastāv daudzās dažādās valodās. Wiki pamatkomandas nav raksturīgas nevienai valodai (piemēram, jair pievienota kvadrātiekavās), bet sarežģītākās komandās tiek izmantoti vārdi vietējā valodā. Piemēram, izstrādājot datu tabulu par personu, angļu valodas Vikipēdijā būs parametri "name =" un "birth_place =", kas Wikipedia bulgāru versijā izskatās kā "name =" un "rodin-mesto =".

Papildus šiem četriem plaši pieejamajiem daudzvalodu programmēšanas kodiem ir vairāki desmiti, varbūt pat ap simts, programmēšanas valodu, kas ir pieejamas vienā vai divās valodās, izņemot angļu valodu, piemēram, Qalb (arābu valodā), Python ķīniešu versija, Farsinet (persiešu)), Hindawi programmēšanas sistēma (bengāļu, gudžarati un hindi) un pat Perlas latīņu versija. Dažas programmēšanas valodas, kas nav angļu valodas, meklējamas valdības veidotu istabas lieluma datoru laikmetā - piemēram, vairākas padomju laika programmēšanas valodas, kuru pamatā ir krievu valoda, kā arī daudzvalodu ALGOL 68 (1960. gadi) un 4. dimensija (1980. gadi). … Bet daudzas jaunākas valodas, piemēram, Python, Ruby un Lua, ir izstrādātas valstīs, kurās nerunā angliski (Nīderlande, Japāna un Brazīlija),taču visu šo valodu galvenās komandas ir angļu. Sākotnējais interneta solījums tādējādi vairāk izklausās kā drauds daudziem cilvēkiem: runājiet angliski vai izejiet no tīmekļa.

Šīs valodas pastāv līdzās, jo ir viegli tulkot no vienas programmēšanas valodas citā. Ir pieejami daudzi programmēšanas valodas pārveidotāji - varat pievienot JavaScript fragmentu un iegūt Python versiju, vai arī pievienot Markdown fragmentu un iegūt HTML versiju. Tos nav īpaši grūti izveidot. Programmēšanas valodām ir ierobežotas, precīzi definētas vārdnīcas, kurās trūkst divdomības vai kultūras nianses, kas apgrūtina dabisko valodu automātisku mašīntulkošanu. Zinot apmēram simts komandu ekvivalentus, jūs varat automātiski aizstāt viens ar otru jebkuru koda daļu.

Ir tik viegli tulkot programmēšanas valodas, ka daži nerds to laiku pa laikam dara no mākslas mīlestības vai smieties, izveidojot tā saucamās ezotēriskās programmēšanas valodas. Piemēram, LOLCODE ir veidots pēc Lolcats kaķu mēēm, tāpēc programmu atver ar komandu HAI (PREVIOUS - red.) Un aizver ar KTHXBAI (saīsinājums “labi, paldies, bye”: “bye bye” - ed..), un atstarpe (atstarpe) ir pilnīgi neredzama cilvēka acij un sastāv no neizdrukāmām rakstzīmēm: atstarpes, tabulas pieturas un līnijas padeves. Ir pat Pikachu, programmēšanas valoda, kas pilnībā sastāv no pi, pika un andpikachu, tāpēc pats Pikachu varēja - teorētiski - atbrīvoties no tiem sasodītajiem Pokemon pasniedzējiem un tā vietā veikt labi apmaksātu programmētāja darbu.

Kad jūs izveidojat Pokemon koda tulkojumu, tas izklausās absurdi. Tulkojot kodu miljardiem pasaules cilvēku, kas nerunā angliski, piekļuve augsti apmaksātiem darbiem un iespēja manuāli pielāgot savu ierīci vairs nav priekšrocība. Fakts, ka avota kods ir atkarīgs no angļu valodas, liedz cilvēkiem šīs priekšrocības, un no kodēšanas tehnoloģijas viedokļa tas ir pilnīgi nevajadzīgi.

Bet programmēšanas valoda nav tikai tās tehniskās īpašības, tā ir cilvēku kopiena. Četriem plaši izplatītajiem daudzvalodu kodiem ir bijusi labāka veiksme šādā kopienā nekā atsevišķām programmēšanas valodām, kas nav angļu valodas, taču to joprojām ir ļoti maz. Ir arī citi noderīgi resursi, kas jums būs jāapmeklē, kad google ziņojumus par kļūdām. Jebkurā gadījumā, sasodīti, vispirms ir jāizdomā, kā šo valodu izmantot datorā. Tāpēc bija tik svarīgi, ka pirmais tīmekļa pārlūks ļāva rediģēt, nevis tikai pārlūkot, tāpēc Glitch uzstāja tik daudz, lai lietotājs varētu rediģēt avota kodu tieši no pārlūka loga, un tādā gadījumā bija viegli saņemt palīdzību. Bet kur ir glitch pārējai pasauleinerunā angliski? Kā mēs varam padarīt internetu vēl ērtāku cilvēkiem, kuri to tikai tagad uzzina (vai kuri pēdējo desmit gadu laikā to ir izmantojuši kā patērētājus), nekā tas bija tā pirmajiem apmeklētājiem?

Tāpēc es nezaudēju cerību: viduslaiku Eiropā, ja gribējāt apgūt rakstīšanas mākslu, jums kopā ar to bija jāiemācās arī jauna valoda. Rakstīšana nozīmē latīņu valodu. Rakstīšana vietējā dialektā - dzimtajā valodā, kuru cilvēki jau bija runājuši - stāvēja kaut kur malā un nebija pietiekami attīstīta. Kāpēc uztraukties mācīties rakstīt angļu vai franču valodā? Tajos nav ko lasīt, savukārt latīņu valoda jums ļāva piekļūt starptautiskās saziņas valodas intelektuālajām tradīcijām.

Dažreiz, atskatoties uz šo vēsturisko laikmetu, mēs domājam, kāpēc cilvēki uztraucas par visu šo latīņu valodu, kad viņi varēja vienkārši rakstīt valodā, kurā viņi runāja. Tolaik latīņu valodas apguve, lai iemācītos rakstīt, bija tikpat loģiska kā angļu valodas apgūšana šodien, lai rakstītu kodu, kaut arī tagad mēs zinām, ka bērni daudz ātrāk iemācās lasīt, ja viņiem vispirms māca dzimtajā valodā. … Argumenti par angļu kodu, ko es redzu tādās vietnēs kā Stack Overflow, atkārto šo ideju: kāpēc gan ne tikai iemācīties angļu valodu? Tas ļauj piekļūt visai tehnoloģiskajai tradīcijai.

Ir zināms, ka dominēšana rakstībā latīņu valodā ir beigusies. Rakstīšanas māksla ir izplatījusies citās valodās. Iespēja izveidot pirmkodu vairs nav atkarīga no angļu valodas zināšanām, jo pati rakstīšanas tehnoloģija tika saistīta ar latīņu valodu. Es iesaku sākt ar pielāgošanu tam, kā mēs runājam par programmēšanas valodām, kurās ir vārdi no kopējām valodām. Pirmā vietne nebija rakstīta HTML, bet gan angļu valodā HTML. Kods, kas parādās pirmās Glitch atveidotās vietnes apakšā, nav rakstīts Javascript, bet gan Javascript angļu valodā. Kad mēs tos galvenokārt saucam par angļu valodu, tas kļūst arvien acīmredzamāks ka mēs varam mainīt situāciju - mēs varam iedomāties pasauli, kurā ir arī krievu HTML vai svahili "Javascript",kur jums nav raksturīgas priekšrocības koda apgūšanā, ja gadās, ka jūsu dzimtā valoda ir angļu.

Šī pasaule vēl neeksistē. Varbūt nākamo 30 gadu laikā mēs to izveidosim.

Grētens Makkulloks ir Wired rezidents valodnieks, valodniecības apraides Lingthusiasm līdzautors un vietnes Internet: Izpratne par jaunajiem valodas noteikumiem autors, kas iznāks 2019. gada 23. jūlijā. no Riverhead (Penguin).