يفضل عدد كبير من رعاة ConveyThis ترجمة جميع عناوين URL الخاصة بمواقع الويب الخاصة بهم بشكل صحيح، وهو ما قد يكون مهمة شاقة، وخاصة بالنسبة للمواقع الكبيرة المترجمة إلى عدة لغات.
أظهرت ملاحظات المستخدمين أن بعض العملاء وجدوا أن بدء مشروعات الترجمة الأولية لمواقعهم الإلكترونية محيرًا إلى حد ما. غالبًا ما تساءلوا لماذا يمكنهم فقط عرض عنوان URL للصفحة الرئيسية في قائمة الترجمة ، وكيفية إنشاء ترجمات لمحتواهم.
هذا يشير إلى مجال محتمل للتحسين. لقد رأينا فرصة لتسهيل عملية إعداد أكثر سلاسة وإدارة مشروع أكثر كفاءة. ومع ذلك ، فقد افتقرنا إلى حل ملموس في تلك اللحظة.
كانت النتيجة، كما قد تتخيل، طرح ميزة إدارة عناوين URL. تُمكّن هذه الميزة المستخدمين من مسح عناوين URL الخاصة بمواقعهم الإلكترونية وإنشاء محتواهم المُترجم عبر لوحة تحكم ConveyThis بسرعة وفعالية.
في الآونة الأخيرة ، تم نقل هذه الميزة من قائمة الترجمة إلى صفحة إدارة ترجمة تعتمد على عناوين URL جديدة وأكثر قابلية للتكيف وقوية. الآن ، نعتقد أن الوقت قد حان للكشف عن القصة وراء إنشاء هذه الميزة.
أتاح لي بدء الإغلاق في عام 2020 بسبب الوباء الفرصة لتعلم لغة البرمجة Golang التي تم تهميشها بسبب ضيق الوقت.
تم تطويره بواسطة Google أو Golang أو Go وقد اكتسب شعبية في السنوات الأخيرة. تم تصميم Golang ، وهي لغة برمجة مجمعة بشكل ثابت ، لتمكين المطورين من صياغة تعليمات برمجية فعالة وموثوقة ومتزامنة. تدعم بساطته كتابة وصيانة برامج مكثفة ومعقدة دون التضحية بالسرعة.
أثناء تفكيري في مشروع جانبي محتمل للتعرف على لغة Golang، خطرت ببالي أداة زحف ويب. استوفت هذه الأداة المعايير المذكورة، وربما قدمت حلاً لمستخدمي ConveyThis. أداة الزحف على الويب، أو "البوت"، هي برنامج يزور موقعًا إلكترونيًا لاستخراج البيانات.
بالنسبة لـ ConveyThis، كان هدفنا تطوير أداة تُمكّن المستخدمين من مسح مواقعهم واسترجاع جميع عناوين URL. بالإضافة إلى ذلك، أردنا تبسيط عملية إنشاء الترجمات. حاليًا، يجب على المستخدمين زيارة مواقعهم بلغة مُترجمة لإنشاء الترجمات، وهي مهمة تُصبح مُرهقة للمواقع الكبيرة متعددة اللغات.
على الرغم من أن النموذج الأولي كان بسيطًا - برنامجًا يأخذ عنوان URL كمدخل ويبدأ بفحص الموقع - إلا أنه كان سريعًا وفعالًا. أدرك أليكس، كبير مسؤولي التكنولوجيا في ConveyThis، إمكانات هذا الحل، ووافق على إجراء البحث والتطوير لتحسين المفهوم ودراسة كيفية استضافة خدمة الإنتاج المستقبلية.
في عملية إنهاء روبوت زاحف الويب ، وجدنا أنفسنا نصارع الفروق الدقيقة في أنظمة إدارة المحتوى والتكاملات المختلفة. ثم ظهر السؤال - كيف يمكننا تقديم الروبوت إلى مستخدمينا بشكل أفضل؟
في البداية ، أخذنا في الاعتبار الطريقة المجربة والمختبرة لاستخدام AWS مع واجهة خادم الويب. ومع ذلك ، ظهرت العديد من القضايا المحتملة. كان لدينا عدم يقين بشأن تحميل الخادم ، والاستخدام المتزامن من قبل مستخدمين متعددين ، وافتقارنا إلى الخبرة في استضافة برنامج Go.
دفعنا هذا إلى التفكير في سيناريو استضافة بدون خادم. قدّم هذا السيناريو مزايا مثل إدارة البنية التحتية من قِبل المزوّد وقابلية التوسع المتأصلة، مما جعله حلاً مثاليًا لـ ConveyThis. هذا يعني أننا لم نكن بحاجة للقلق بشأن سعة الخادم، إذ سيعمل كل طلب في حاوية معزولة خاصة به.
ومع ذلك ، في عام 2020 ، جاءت الحوسبة بدون خادم بحد 5 دقائق. ثبت أن هذا يمثل مشكلة لبرنامج الروبوت الخاص بنا والذي قد يكون مطلوبًا للزحف إلى مواقع التجارة الإلكترونية الكبيرة التي تحتوي على العديد من الصفحات. لحسن الحظ ، في أوائل عام 2020 ، مددت AWS الحد إلى 15 دقيقة ، على الرغم من أن تمكين هذه الميزة أثبت أنه مهمة صعبة. في النهاية ، وجدنا الحل من خلال تشغيل رمز بدون خادم باستخدام SQS - خدمة انتظار رسائل AWS.
عندما حللنا معضلة الاستضافة ، كان لدينا عقبة أخرى يجب التغلب عليها. لدينا الآن روبوت وظيفي ، تمت استضافته بطريقة فعالة وقابلة للتطوير. كانت المهمة المتبقية هي نقل البيانات التي تم إنشاؤها بواسطة الروبوت إلى مستخدمينا.
سعيًا لتحقيق أقصى قدر من التفاعل، قررتُ توفير تواصل فوري بين البوت ولوحة تحكم ConveyThis. مع أن التواصل الفوري ليس شرطًا أساسيًا لهذه الميزة، إلا أنني أردتُ أن يتلقى مستخدمونا ملاحظات فورية بمجرد بدء عمل البوت.
لتحقيق ذلك ، قمنا بتطوير خادم ويب Node.js بسيط ، مستضاف على مثيل AWS EC2. يتطلب هذا بعض التعديلات على الروبوت للاتصال بخادم websocket وأتمتة النشر. بعد اختبار شامل ، كنا على استعداد للانتقال إلى الإنتاج.
ما بدأ كمشروع جانبي وجد مكانه في نهاية المطاف في لوحة القيادة. من خلال التحديات ، اكتسبت المعرفة في Go وصقلت مهاراتي في بيئة AWS. لقد وجدت أن Go مفيد بشكل خاص لمهام الشبكات ، والبرمجة التعاونية ، والحوسبة بدون خادم ، نظرًا لانخفاض حجم الذاكرة.
لدينا خطط مستقبلية مع ازدياد فرص البوت. نهدف إلى إعادة تصميم أداة حساب الكلمات لدينا لتحسين كفاءتها، وربما استخدامها لتسخين ذاكرة التخزين المؤقت. آمل أن تكونوا قد استمتعتم بهذه اللمحة الخاطفة عن عالم ConveyThis التقني بقدر ما استمتعتُ بمشاركتها.
الترجمة هي أكثر بكثير من مجرد معرفة اللغات، فهي عملية معقدة.
من خلال اتباع نصائحنا واستخدام ConveyThis ، ستجد صفحاتك المترجمة صدى لدى جمهورك، وستشعر وكأنها تنتمي إلى اللغة المستهدفة.
مع أن الأمر يتطلب جهدًا، إلا أن النتيجة مُرضية. إذا كنت تترجم موقعًا إلكترونيًا، فإن ConveyThis يُمكن أن يوفر عليك ساعات من العمل باستخدام الترجمة الآلية.
جرب ConveyThis مجانًا لمدة 3 أيام!