Numeroși utilizatori ConveyThis preferă ca toate adresele URL ale site-urilor lor web să fie traduse corect, ceea ce poate fi o sarcină dificilă, în special pentru site-urile extinse traduse în mai multe limbi.
Feedbackul utilizatorilor a arătat că unii clienți au considerat începutul proiectelor inițiale de traducere a site-urilor web oarecum dezorientat. Ei s-au întrebat adesea de ce pot vedea numai adresa URL a paginii de pornire în lista de traduceri și cum să creeze traduceri ale conținutului lor.
Acest lucru a indicat o zonă potențială de îmbunătățire. Am văzut o oportunitate de a facilita un proces de integrare mai ușor și un management de proiect mai eficient. Totuși, ne-a lipsit o soluție concretă în acel moment.
Rezultatul, așa cum probabil ați ghicit, a fost introducerea funcției de gestionare a URL-urilor. Aceasta permite utilizatorilor să scaneze adresele URL ale site-urilor lor web și să genereze conținut tradus prin intermediul tabloului de bord ConveyThis , rapid și eficient.
Recent, această funcție a fost mutată din Lista de traduceri într-o pagină nouă, mai adaptabilă și mai puternică de gestionare a traducerilor bazată pe URL. Acum, credem că este timpul să dezvăluim povestea din spatele începutului acestei funcții.
Debutul blocării din 2020 din cauza pandemiei mi-a oferit șansa de a învăța în sfârșit limbajul de programare Golang, care a fost exclus din cauza constrângerilor de timp.
Dezvoltat de Google, Golang sau Go a câștigat popularitate în ultimii ani. Un limbaj de programare compilat static, Golang a fost conceput pentru a permite dezvoltatorilor să creeze cod eficient, fiabil și simultan. Simplitatea sa sprijină scrierea și întreținerea de programe extinse și complicate fără a sacrifica viteza.
În timp ce mă gândeam la un posibil proiect secundar pentru a mă familiariza cu Golang, mi-a venit în minte un crawler web. Acesta îndeplinea criteriile menționate și oferea potențial o soluție pentru utilizatorii ConveyThis. Un crawler web sau „bot” este un program care vizitează un site web pentru a extrage date.
Pentru ConveyThis, scopul nostru a fost să dezvoltăm un instrument prin care utilizatorii să își poată scana site-ul și să recupereze toate adresele URL. În plus, am vrut să simplificăm procesul de generare a traducerilor. În prezent, utilizatorii trebuie să își viziteze site-ul web într-o limbă tradusă pentru a le genera, o sarcină care devine descurajantă pentru site-urile mari, multilingve.
Deși prototipul inițial a fost simplu – un program care primește o adresă URL ca intrare și începe să parcurgă site-ul cu crawlere – a fost rapid și eficient. Alex, CTO-ul ConveyThis, a văzut potențialul acestei soluții și a dat undă verde cercetării și dezvoltării pentru a rafina conceptul și a reflecta la modul de găzduire a viitorului serviciu de producție.
În procesul de finalizare a robotului web crawler, ne-am trezit confruntându-ne cu nuanțele diferitelor CMS și integrări. Atunci a apărut întrebarea – cum putem prezenta cel mai bine utilizatorilor noștri bot-ul?
Inițial, am luat în considerare abordarea încercată și testată de utilizare a AWS cu o interfață de server web. Cu toate acestea, au apărut mai multe probleme potențiale. Aveam incertitudine cu privire la încărcarea serverului, utilizarea simultană de către mai mulți utilizatori și lipsa noastră de experiență cu găzduirea programului Go.
Acest lucru ne-a determinat să luăm în considerare un scenariu de găzduire fără server. Acesta oferea beneficii precum gestionarea infrastructurii de către furnizor și scalabilitatea inerentă, ceea ce îl făcea o soluție ideală pentru ConveyThis. Aceasta însemna că nu trebuia să ne facem griji cu privire la capacitatea serverului, deoarece fiecare solicitare ar opera în propriul container izolat.
Cu toate acestea, în 2020, calcularea fără server a venit cu o limită de 5 minute. Aceasta s-a dovedit o problemă pentru botul nostru, care ar putea fi necesar să acceseze cu crawlere site-uri mari de comerț electronic cu numeroase pagini. Din fericire, la începutul lui 2020, AWS a extins limita la 15 minute, deși activarea acestei funcții s-a dovedit a fi o sarcină dificilă. În cele din urmă, am găsit soluția prin declanșarea codului fără server cu SQS – serviciul de așteptare a mesajelor AWS.
Pe măsură ce am rezolvat dilema găzduirii, mai aveam de depășit un alt obstacol. Aveam acum un bot funcțional, găzduit într-o manieră eficientă, scalabilă. Sarcina rămasă a fost să transmitem utilizatorilor noștri datele generate de bot.
Urmărind o interactivitate maximă, am decis să creez o comunicare în timp real între bot și tabloul de bord ConveyThis. Deși comunicarea în timp real nu este o cerință pentru o astfel de funcție, am vrut ca utilizatorii noștri să primească feedback imediat ce botul începe să funcționeze.
Pentru a realiza acest lucru, am dezvoltat un server websocket Node.js simplu, găzduit pe o instanță AWS EC2. Acest lucru a necesitat câteva modificări ale botului pentru comunicarea cu serverul websocket și automatizarea implementării. După teste amănunțite, eram gata să trecem la producție.
Ceea ce a început ca un proiect secundar și-a găsit în cele din urmă locul în tabloul de bord. Prin provocări, am acumulat cunoștințe în Go și mi-am perfecționat abilitățile în mediul AWS. Am găsit Go deosebit de benefic pentru sarcinile de rețea, programarea în cooperare și calculul fără server, având în vedere amprenta sa redusă de memorie.
Avem planuri de viitor, deoarece botul aduce noi oportunități. Ne propunem să rescriem instrumentul nostru de numărare a cuvintelor pentru o eficiență mai bună și, eventual, să îl folosim pentru încălzirea memoriei cache. Sper că v-a plăcut această avanpremieră în lumea tehnologiei ConveyThis la fel de mult cum mi-a plăcut mie să o împărtășesc.
Traducerea, mult mai mult decât cunoașterea limbilor străine, este un proces complex.
Urmând sfaturile noastre și folosind ConveyThis , paginile traduse vor rezona cu publicul tău, simțindu-le ca fiind native ale limbii țintă.
Deși necesită efort, rezultatul este recompensator. Dacă traduceți un site web, ConveyThis vă poate economisi ore întregi cu traducerea automată.
Încearcă ConveyThis gratuit timp de 3 zile!