-
المساهمات
2852 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
38
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو Hassan Hedr
-
بحسب شكل وتوزيع لوحة المفاتيح ستجد المحرف "|" في مكان ما بجانب زر Enter، يجب ضغط زر Shift حتى تتمكن من كتابة المحرف، في حال كنت تستخدم حاسب شخصي عادي سيكون مكان المفتاح مشابه للتالي: في حال كنت تستخدم حاسوب ماك سيكون مشابه للتالي:
- 2 اجابة
-
- 1
-
-
الموقع يعمل حاليًا ولا مشاكل في الدخول إلى الحسابات، حاول التواصل مع مركز مساعدة مستقل والتعريف بنفسك وعنوان حسابك وشرح المشكلة وسيقومون بمساعدتك أو الشرح لك في حال كان هناك مشكلة في حسابك نفسه
-
لكل شخص ما يناسبه في طريقة الدراسة والتعلم، البعض يفضل فترات الدراسة الطويلة المتتابعة (كما حالتك) حيث تدخله في مرحلة التركيز العميق ويتعلم بشكل أفضل، البعض يفضل فترات أقصر مع فترات راحة بينها، لا تركز على حساب الساعات أو عدد الدروس بل ما يهم الأفكار الجديدة التي تعلمتها والأمثلة التي طبقتها بنجاح، راقب نتيجة دراستك كل يوم وعدل جدول أوقات الدراسة وإذا ناسبك الجدول الحالي ابق عليه واجعله روتينًا يمكنك الاستفادة من قراءة المقال التالي: لكل مجال فرصه ضمن سوق العمل، يمكنك اختيار ما يناسبك وتشعر بإمكانية تطوير مهاراتك ضمنه، لا حاجة للدخول في كافة المجالات لكن ذلك بالتأكيد سيزيد فرص عملك، الأهم من تعدد المهارات هو مدى اتقانها، فإتقان مجال واحد بشكل جيد يتيح لك العديد من الفرص، يمكنك التركيز بداية على مجال واحد (Back end مثلًا) وبعد دخولك سوق العمل ان احتجت لمهارة إضافية يمكنك البدء بتعلمها بالإضافة إلى المهارة الأولى وهكذا تكون قد اكتسبت المهارات المطلوبة بشكل فعلي ضمن سوق العمل يمكنك الاستفادة من قراءة المقالات التالية:
- 3 اجابة
-
- 1
-
-
يمكن إنشاء نموذج ServiceProccess يمتد من الصنف Pivot كالتالي: <?php namespace App\Models; use Illuminate\Database\Eloquent\Relations\Pivot; class ServiceProccess extends Pivot { // } وضمن النموذج تغير العلاقة لتصبح كالتالي: public function servicesProccess(){ return $this->belongsToMany(Service::class)->using(ServiceProccess::class); } ويمكنك نقل كل الشروط الخاصة بجدول الربط إلى النموذج الجديد والتعامل معه كأنه نموذج عادي حيث تقوم بالتحديث مباشرة عليه
- 3 اجابة
-
- 1
-
-
يمكن الاستفادة من التابع wherePivot عند تنفيذ التعديل لتحديد معرّف سجل جدول الربط المراد تحديثه فقط كالتالي: public function update(Request $request, USER $user) { $user->servicesProccess() ->wherePivot('id', $request->id) ->updateExistingPivot($request->id, ['state' => $request->step]); } في حالة جدول الربط أصبح كبيرًا ويحوي الكثير من المنطق وحقول البيانات، فيفضل هنا التفكير في تمثيله بنموذج خاص به ضمن التطبيق وإضافة توابع تسهل عمليات التحديث الخاصة تلك لجعل الشيفرة معبرة ومقروءة بشكل أفضل
- 3 اجابة
-
- 1
-
-
يرجى إرفاق الشيفرة ورسالة الخطأ بشكل نصي ضمن نص السؤال مع التنسيق بشكل مناسب حتى يتم مساعدتك
-
أولًا تأكد أن pip مثبت ضمن جهازك بشكل صحيح، بتنفيذ الأمر التالي يجب أن تظهر لك رقم الإصدار المثبت pip -V بعدها يمكنك تنفيذ أمر التثبيت التالي pip install tk سيتم تحميل وتثبيت المكتبة لديك، يمكنك الاستفادة من قراءة المقالات التالية لفهم طريقة عمل الوحدات Modules الخارجية والمضمنة وكيفية استيرادها
-
لاحظ أن العلاقة servicesProccess محصورة فقط بالسجلات ذات الحقل state بالقيم 1 أو 2 أو 3، فعملية التحديث التالية تتم بشكل صحيح لكن لا يوجد سجلات مطابقة لشرط تلك العلاقة لديك لذا أنت لا تلاحظ التحديث $user->servicesProccess()->updateExistingPivot($service->id , ['state' => 1]); ^^^^^^^^^^^^^^^^ بحسب متطلبات مشروعك إما أن تضيف الحالة 0 إلى قائمة الحالات للعلاقة السابقة كالتالي: public function servicesProccess(){ return $this->belongsToMany(Service::class)->withPivot('state', 'id')->wherePivotIn('state' , [0,1,2,3]); } ^ أو تقوم بتحديث state ضمن قاعدة البيانات يدويًا في حال كانت الحالة 0 خاطئة إلى أحد الحالات المسموحة (1 أو 2 أو 3)، أو تعدل عملية إدخال تلك السجلات حتى لا يتكرر الخطأ مستقبلًا
- 1 جواب
-
- 1
-
-
السبب لديك هو وجود قيمة كبيرة للحاشية العلوية margin-top للصنف section-1-img، حيث أن الحاوية الخلفية التي تملئ الشاشة يمكن أن تصبح أصغر من الحاشية المحددة مما يسبب مشكلة ظهور الخلفية البيضاء، يمكنك حل المشكلة إما بتحديد قيمة أصغر للحاشية مثلًا كالتالي: .section-1-img { ... margin-top: 40px; } أو بإخفاء العناصر التي تخرج عن مساحة الحاوية section-1 وذلك بإضافة الخاصية overflow كالتالي .section-1 { ... overflow: hidden; }
- 7 اجابة
-
- 1
-
-
السبب أنك في وضع محاكاة للأجهزة بقياسات متعددة، يمكنك الخروج من ذلك الوضع عبر الضغط على زر Toggle device toolbar على يسار أعلى لوحة المطور
- 7 اجابة
-
- 1
-
-
ضمن محرر الشيفرات VSCode يمكنك البحث عن إضافة CodeSnap وتثبيتها، ستمكنك من إخراج صور بنفس التنسيق لأجزاء من الشيفرة ضمن المحرر لديك كالتالي: فتح لوحة الأوامر عبر الضغط على Ctrl + Shift + P البحث عن CodeSnap تحديد الجزء من الشيفرة المراد تصويره والضغط على زر غالق الكاميرا ضمن نافذة المعاينة
-
في حال كنت تنوي التسجيل في أحد دورات الأكاديمية هنا فستكون كافية لك من كل النواحي التي ذكرتها، فهي ستبدأ معك من الصفر وتبدأ بالمفاهيم الأساسية للغات البرمجة بالترتيب، بعدها ستبدأ بتطبيق المشاريع الفعلية اعتمادا على ما تعلمته، بالنسبة لموسوعة حسوب هي مرجع فقط وليس للتعلم بشكل مباشر، أي ترجع إليها في حال احتجت القراءة عن كيفية استخدام تابع أو كلمة محجوزة ضمن اللغة فهي تحوي كل التفاصيل عن ذلك
- 9 اجابة
-
- 1
-
-
بما أنك مبتدئ فستواجه أفكار جديدة لتعلمها مثل المتغيرات والتوابع والحلقات والشروط وأنماط التصميم وبيئة العمل وغيرها الكثير، كل تلك الأفكار تعتبر مفاهيم برمجية يتوجب عليك فهمها وإتقانها عادة يتم البدء بلغة C لأنها منخفضة المستوى أي ستعرفك على كيف يعمل الحاسوب بشكل أكبر، لكن بما أن سؤالك متعلق بالتفكير المنطقي فاللغات عالية المستوى مثل Python ستكون أبسط وتفيدك بشكل مباشر لبدء تطبيق التفكير المنطقي لبناء البرامج نعم إلى حد ما، ++C أتت بعد C وأضافت عديد من المزايا التي لم تكن متوفرة في C، يمكنك البدء بإحداها لن تشعر بالفرق الكبير في البداية بما أنك تتعلم المبادئ
- 9 اجابة
-
- 1
-
-
في حال كان هدفك تعلم التفكير المنطقي يفضل البدء بلغة برمجة عالية المستوى أعلى من C و ++C، مثل لغة Python أو JavaScript فلا تركز فيها على المفاهيم منخفضة المستوى كإدارة الذاكرة بل التركيز على تطبيق المفاهيم البرمجية يوجد العديد منها يمكنك البحث عنها، دورات الأكاديمية هنا تركز على هذا الجانب بالذات وهو التطبيق العملي وفهم الأفكار الأساسية لا يهم العدد، ستشعر بعد تنفيذك لعدة مشاريع بازدياد مهارتك وفهمك وتطور مستواك مع الوقت بحسب تنوع تلك المشاريع والمشاكل المطروحة ضمنها نعم لن تحتاج لمهارة التصميم في عدة مجالات برمجية منها مثلًا تطوير النظم الخلفية Back-end فهنا لا علاقة لك أبدًا سوا ببرمجة تطبيقات ستعمل على الخادم فقط، ويمكنك أحيانًا توكيل جزئية التصميم لمصمم مختص سيرسل لك التصميم جاهزًا وأنت كمبرمج يمكنك تضمينه ضمن الشيفرة دون الحاجة للاهتمام بتفاصيل التصميم نفسه يمكنك الاستفادة بشكل كبير من المقال التالي:
- 9 اجابة
-
- 1
-
-
حاولي تنفيذ الخطوات التالية: فتح نافذة Run من قائمة Start، أو من لوحة المفاتيح بالضغط على Windows + R ندخل المسار التالي ونضغط ok %AppData%\NuGet ضمن المجلد الذي سيظهر نحذف الملف بالاسم "NuGet.Config" بعدها حاولي إغلاق وإعادة تشغيل Visual Studio والمحاولة مجددًا
- 3 اجابة
-
- 1
-
-
وصف المعماري الإنجليزي كريستوفر رين Christopher Wren مجال عمله ساخرًا بأنه "يسعى للخلود"، وفي هذا الهدف ما يلفت النظر، فعلى عكس الويب الذي يشعرك بأنه يركز على الأسبوع القادم فقط، تطمح هندسة العمارة دومًا نحو الخلود. يحدد أساس البناء أثره، والذي يحدد بدوره شكل هيكل المبنى، الذي يحدد المظهر الخارجي النهائي لواجهة البناء، وتكون كل مرحلة من مراحل تصميم البناء أكثر ثباتًا وأقل قابليةً للتغيير عن سابقتها، وستشكّل القرارات الإبداعية حرفيًّا المساحةً الفيزيائيّة للمبنى، وستحدد الطريقة التي سيتحرك بها البشر ضمن المبنى لعقود، وربما لقرون، لكن العمل على الويب أمر مختلف تمامًا، فعملنا محدد بسرعة زواله، وغالبًا ما يُحسّن أو يُستبدل في غضون سنة أو سنتين، وتُعد أبعاد النوافذ غير المتناسقة ودقّة الشاشات المختلفة وتفضيلات المستخدم والخطوط المثبتة على جهاز المستخدم من الأمور غير الملموسة التي نتفاوض حولها عند نشر أعمالنا، وقد أصبحنا عبر السنين أكثر براعةً في التعامل معها، لكن هذه الأمور تتغير بسرعة، فمثلًا تخطى التصفح عبر الجوّال أجهزة سطح المكتب منذ زمن، وأصبح للعديد من منصات الألعاب المشهورة دعم عبر متصفحات الويب، وصار تصميم الويب يستهدف شريحةً أوسع من أجهزة التحكم تتجاوز الفأرة ولوحة المفاتيح، منها متحكمات الألعاب وواجهات اللمس، وأصبحنا نتعامل مع عدد أكبر من الأجهزة وطرائق الإدخال والمتصفحات أكثر من أي وقت مضى. ازداد طلب الشركات وأصحاب الأعمال كثيرًا على أن يكون موقعك الإلكتروني مناسبًا لشاشات الهواتف، حيث باتت الشريحة الأكبر من الزبائن، وهذا الطلب مريح للمصممين كثيرًا، حيث يقسمون التصميم إلى جزأين، جزء لتصميم سطح المكتب وآخر لشاشات الهواتف، ويمكن للمطورين فصل تجربة المستخدم كل على حدة، فيمكن وضع تجربة استخدام الموقع على شاشات الهواتف في نطاق موقع منفصل، لكن هذا الحل غير عملي، لأننا سنضطر مثلًا لتطوير موقع منفصل مع تجربة استخدام مخصصة للشاشات متوسطة الحجم أيضًا، وأخرى لما بينهما، ولا يمكننا الالتزام بدعم كل تجربة مستخدم على حدة، ويجب أن نجد طريقةً أفضل للمطورين والمصممين للتأقلم مع تلك المشكلة. أساس مرن سنشرح على هذا المثال وهو تصميم لمجلة افتراضية، حيث يتكون التصميم من عمودين على شبكة مرنة مع عدة صور موزعة ضمنه، من مزايا الشبكة المرنة أنها قابلة للتأقلم مع التغيرات في المستقبل، حيث أن التصاميم المرنة لا تحدد عرض النوافذ، وتتأقلم بشكل جميل مع الأجهزة بالوضع الأفقي والعمودي. للصور الكبيرة أحجام كبيرة، ومع أن التصميم في المثال مرن لكنه لا يتجاوب مع تغيرات الدقة أو حجم إطار العرض. ولكن لا يوجد تصميم -سواء كان ثابتًا أو مرنًا- يتجاوب بسلاسة مع كل الحالات أكثر من الحالة الأساسية التي صمم لأجلها، فالتصميم في مثالنا يتجاوب مع تغير قياس نافذة المتصفح، لكنه يُظهر أخطاءً مع حجم النافذة الصغير، فعندما يُعرض في قياس أصغر من 800 × 600 بكسل، ستُقتطع الصورة التي خلف الشعار، بينما تُعدّل روابط التنقل قياسها بمرونة، أما الصور في الأسفل فتصبح صغيرةً وغير واضحة، ويبدو التصميم غير متجاوب ليس عند قياسات الشاشة الصغيرة فقط، بل أيضًا عند محاولة رؤية التصميم على الشاشات العريضة، حيث تكبر الصور لأحجام كبيرة جدًا، وتطغى على النص المحيط بها. إضافة التجاوب يطرح التصميم المعماري المتجاوب السؤال التالي: كيف يمكن للمساحة أن تتجاوب مع الأشخاص الموجودين داخلها؟ والجواب هو أن مهندسي العمارة تمكنوا من إنشاء قطع فنية مرنة يمكنها أن تكبر وتصغر وتنطوي عند مرور الأشخاص عبرها باستخدام الآلات والمواد القابلة للشد، كما ربطوا حساسات الحركة بنظام التحكم بالتكييف لتعديل حرارة الغرف والإضاءة فيها عند دخول الأشخاص إليها، كما تمكنت بعض الشركات من تطوير تقنية زجاج ذكي يمكنه تعديل شفافيته مثلًا حين يصبح المكان مزدحما ليعزل الرؤية، ويمنح مساحة حرية للأشخاص داخله. وصف مايكل فوكس Michael Fox ومايلز كيمب Miles Kemp في كتابهما "العمارة التفاعلية Interactive Architecture" هذا التصميم المتكيف على أنه "نظام متعدد الحلقات يدخل الشخص في حوار معه، وفيه تبادل مستمر وبنّاء للمعلومات"، وهذا وصف مختلف قليلًا لكنه قوي، فبدلًا من إنشاء مساحات ثابتةً غير متغيرة بتجربة ثابتة، يقترح الكاتبان إمكانية -بل ووجوب- وجود تأثير متبادل بين البنية وقاطنيها. يجب أن نستنتج من هذا الوصف طريقة إضافة التجاوب للويب، فبدلًا من ربط عدة تصاميم منفصلة عن بعضها البعض، يناسب كل منها جهازًا واحدًا من الأجهزة المتنوعة على الويب، يجب التعامل معها على أنها عدة أوجه لنفس التجربة. ويمكننا تصميم أفضل تجربة رؤية، مع تضمين تقنيات قياسية داخل التصميم لجعله أكثر مرونةً وتكيفًا مع الوسط المُصيّر ضمنه، باختصار يجب علينا التدرب على تصميم الويب المتجاوب. استعلام الوسائط أضيف نظام التعرف على عدة أنواع من الوسائط منذ إصدار CSS نسخة 2.1، فمثلًا إذا جربت سابقًا كتابة تنسيقات مخصصةً للطباعة فالنظام المألوف لديك هو: <link rel="stylesheet" type="text/css" href="core.css" media="screen" /> <link rel="stylesheet" type="text/css" href="print.css" media="print" /> أضيفت العديد من أنواع الوسائط المقبولة ضمن توصيف CSS لكتابة تنسيقات مناسبة لعدة أنواع من الوسائط، وصمم كل منها ليستهدف تصنيفًا معينًا من الأجهزة التي يمكنها العمل على الويب، لكن لم تتبع العديد من المتصفحات والأجهزة هذا التوصيف الجديد سابقًا، أو تضمنته مع نقص، أو تجاهلته كليًا. أنشأت W3C استعلامات الوسائط لتكون جزءًا من توصيف CSS3، تطويرًا على ما جاء في توصيف CSS السابق المتعلق بأنواع الوسائط، ويسمح لنا استعلام الوسائط باستهداف أصناف معينة من الأجهزة، بفحص الخصائص الفيزيائية للجهاز الذي يُصيّر تصميمنا، فمثلًا اشتهرت تقنية استخدام استعلامات الوسائط من طرف العميل مؤخرًا مع الانتشار الكبير لأجهزة الهواتف المحمولة، لإرسال ورقة تنسيق خاصة بها، ولتنفيذ ذلك يمكننا وضع استعلام ضمن الوسم link في قيمة الخاصية media، كالتالي: <link rel="stylesheet" type="text/css" media="screen and (max-device-width: 480px)" href="shetland.css" /> يتضمن الاستعلام السابق قسمين: نوع الوسط screen. الاستعلام ضمن قوسين، متضمنًا فحصًا للخاصية max-device-width لهذا الوسط، متبوعًا بالقيمة المستهدفة 480px. نسأل في الاستعلام السابق عن جهاز تكون دقته الأفقية max-device-width أصغر أو تساوي 480px، فإذا تحقق هذا الشرط، أي إذا كنا نشاهد التصميم على جهاز صغير -مثل جهاز الهاتف المحمول-، فسيُحمّل ملف التنسيق shetland.css، وإلا فسيتجاهل الوسم link كليًا. يعتمد المصممون أحيانًا على دقة الوسط الذي نصمم له التطبيق، وهنا يمكن استخدام إحدى مزايا المُضيف العديدة المتوفرة، ومنها دقة الشاشة، لاستهداف الوسط المطلوب، حيث يمكن توسيع الاستعلام وإضافة عدة مزايا مستهدفة عبر فصل قيم الخصائص المتعددة بالكلمة المفتاحية and: <link rel="stylesheet" type="text/css" media="screen and (max-device-width: 480px) and (resolution: 163dpi)" href="shetland.css" /> ولسنا مقيدين بإضافة الاستعلام ضمن الوسم link فقط، بل يمكننا إضافته ضمن تنسيقات CSS، إما جزءًا من القاعدة media@: @media screen and (max-device-width: 480px) { .column { float: none; } } أو جزءًا من القاعدة import@: @import url("shetland.css") screen and (max-device-width: 480px); ستكون النتيجة نفسها في كلا الحالتين، فإذا اجتاز الجهاز الاختبار ستطبق قواعد التنسيق المحددة على عناصر الصفحة ضمن الصفحة، ويمكن عدّ استعلام الوسائط تعليقًا شرطيًا، فبدلًا من أن يستهدف تصميمنا جهازًا محددًا بإصدار معين، يمكننا إصلاح المشاكل التي قد تواجه التصميم في مختلف القياسات والدقات المختلفة المغايرة للتصميم الأساسي. تصميم متكيف ومتجاوب لنركز الآن على الصور أساسًا للصفحة في مثالنا، حيث ستكون في التصميم الافتراضي كالتالي: .figure { float: left; margin: 0 3.317535545023696682% 1.5em 0; /* 21px / 633px */ width: 31.121642969984202211%; /* 197px / 633px */ }li#f-mycroft, li#f-winter { margin-right: 0; } اختصرنا التنسيقات المتعلقة بالخطوط هنا لنركز على التصميم، حيث يحدد قياس كل عنصر بتصنيف figure. بثلث العمود الحاوي له تقريبًا، مع إلغاء الحاشية اليمنى للعنصر في نهاية كل سطر، li#f-mycroft وli#f-winter، ويعمل التنسيق السابق كما نريد إلى أن يصبح قياس الشاشة أصغر أو أعرض من التصميم الأساسي، ويمكننا تطبيق تعديلات مرتبطة بدقة الشاشة باستخدام استعلامات الوسائط، ليتكيف التصميم أكثر، ويستجيب لتغير العرض. لنضع العناصر أولًا على خط واحد عندما يصبح قياس إطار العرض أصغر من قيمة معينة، ولتكن 600 بكسل، لذا سنضيف في نهاية ورقة التنسيق style sheet كتلةً من التنسيقات ضمن قاعدة media@ كالتالي: @media screen and (max-width: 600px) { .mast, .intro, .main, .footer { float: none; width: auto; } } يمكنك معاينة صفحة المثال بعد التعديلات السابقة، فإذا كنت تتصفح من جهاز سطح مكتب فيمكنك تصغير حجم النافذة إلى أقل من 600 بكسل، وستلاحظ أن القاعدة السابقة ستلغي الخاصية float لعناصر التصميم الرئيسية، مما يجعل تلك العناصر تصطف فوق بعضها في كتل عموديًا، وبهذا نكون قد عدلنا التصميم ليناسب الشاشات الصغيرة، ولكن بقي لدينا الصور، فهي لا تُغير حجمها بما يناسب القياس الجديد، لذا يمكننا إضافة تنسيقات جديدة لإصلاح ذلك: @media screen and (max-width: 400px) { .figure, li#f-mycroft { margin-right: 3.317535545023696682%; /* 21px / 633px */ width: 48.341232227488151658%; /* 306px / 633px */ } li#f-watson, li#f-moriarty { margin-right: 0; } } تُغير الصور حجمها في مثالنا بعد آخر إضافة لتتناسب مع أحجام الشاشات الصغيرة. الأرقام المئوية الطويلة السابقة هي لإعادة حساب القياس الجديد للأعمدة ضمن الشبكة المرنة في التصميم الجديد العمودي فقط، حيث انتقلنا من ثلاث أعمدة إلى عمودين، عندما يصبح عرض الشاشة أصغر من 400 بكسل، لتظهر الصور بمظهر أفضل. بنفس الطريقة السابقة يمكننا إصلاح التصميم للشاشات الكبيرة، ويمكننا وضع الصور على نفس السطر ضمن ستة أعمدة: @media screen and (min-width: 1300px) { .figure, li#f-mycroft { margin-right: 3.317535545023696682%; /* 21px / 633px */ width: 13.902053712480252764%; /* 88px / 633px */ } } أصبح مظهر الصور الآن جيدًا ضمن قياسات الشاشات كلها، حيث عدّلنا تنسيقها بحسب عرض النافذة ودقة الجهاز معًا. عندما حددنا قيمة عرض أكبر للخاصية min-width ضمن استعلام الوسائط السابق، تمكنا من إزاحة الصور لتكون على سطر واحد. ولا زال بإمكاننا فعل أمور أخرى بالإضافة إلى تغيير تصميم الصور، فيمكننا تحديد تصميم جديد مختلف لكل مجال دقة معين، مثلًا بجعل روابط التنقل بارزةً أكثر على الشاشات العريضة، أو نقل مكانها أعلى الشعار على الشاشات الصغيرة. ولا نستفيد من التصميم المتجاوب في جعل التصميم عموديًا على الشاشات الصغيرة فقط، بل لتحسين المظهر على مجال قياسات الشاشات كافةً. لا يقتصر التصميم المتجاوب على تغييرات التصميم فحسب، إذ تسمح لنا استعلامات الوسائط بإضافة تعديلات دقيقة جدًا عند تغير مقاسات الصفحات وشكلها، فيمكننا تكبير المساحة القابلة للضغط للروابط على الشاشات الصغيرة مثلًا، تماشيًا مع قانون فيتز على شاشات اللمس، كما يمكننا إخفاء وإظهار عناصر تساعد في عملية التنقل، وتعديل حجم الخطوط والمسافة بين سطور النصوص، لتحسين تجربة القراءة لمختلف الشاشات. في الختام الشبكات والصور المرنة واستعلامات الوسائط هي العناصر التقنية اللازمة لتصميم الويب المتجاوب، وهي تحتاج منا لطريقة تفكير مختلفة، فبدلًا من تقسيم المحتوى المتوافر لدينا إلى عدة تصاميم متعلقة بأجهزة محددة، يمكننا استخدام استعلامات الوسائط لنحسن عملنا تدريجيًا لعدة حالات مختلفة، ونحن هنا لا نلغي طريقة فصل المحتوى إن احتجنا إليها، فمثلًا قد يكون للمستخدم الزائر من جهاز هاتف محمول هدف معين، وهذا الهدف أقل مما يريده عندما يزور الموقع من جهاز حاسوب، هنا يمكن فصل محتوى كل من الموقعين على حدة، لتقديم مزايا مختلفة لكلا النوعين من الزوار، إلا أنه يجب أن لا تكون طريقة التفكير تلك طريقتنا الافتراضية عند التفكير في التصميم، فقد أصبحنا حاليًا مضطرين للتصميم لطيف واسع من التجارب، ويقدم لنا التصميم المتجاوب حلولًا نتقدم بها إلى الأمام، ويمكننا من التصميم "لحسنات الويب وسيئاته". ترجمة -وبتصرف- للمقال "Responsive Web Design" لصاحبه Ethan Marcotte. اقرأ أيضًا نماذج تصميم الويب المتجاوب الصور في تصميم صفحات الويب المتجاوب ما هو الفرق بين التصميم المتجاوب (Responsive Web Design) والتصميم المتلائم (Adaptive Web Design)
-
ابدأ بتصفح الخدمات ذات التقييم الجيد ولاحظ طريقة عرضها من ناحية وضوح الشرح عن الخدمة التي ستقدمها وتقديم أمثلة عنها، اهتم بمهاراتك واعرضها جيدًا وحين استلامك لعمل ما أتممه على أكمل وجه بما يرضي الزبون، وبعد الانتهاء من العمل اطلب تقييمًا على عملك مما يعزز فرصك اللاحقة في التعامل مع زبائن جدد، يمكنك الاستفادة من قراءة المقالات التالية ومقالات مدونة خمسات بشكل عام: 4 نصائح لعرض أفضل لخدمتك في رئيسية خمسات 10 نصائح لزيادة فرص بيع خدماتك على خمسات للمبتدئين: هذا ما تحتاجه كي تبدأ عملك الحر في خمسات نظرة بداخل “عقل” البائع المحترف
-
تتيح الأسواق العالمية إمكانية الوصول لعملاء جدد، وذلك بإعلام العملاء المحتملين عن خدمتك أو منتجك الجديد، ولا شك أن موقعك الإلكتروني مكان جيد لعرض خدماتك أو منتجاتك الجديدة خارج نطاقك الجغرافي للوصول للسوق العالمي، بالإضافة لتجاوز حاجز اللغات المتعددة واستهداف ثقافات جديدة، لنتعرف أولًا على معنى مصطلح التوطين localization. معنى التوطين يعرِّف قاموس كامبريدج التوطين Localization من الناحية التسويقية بأنه "عملية صناعة منتج أو خدمة ما لتكون أكثر ملائمةً لبلد معين أو منطقة معينة أو ما شابه"، بينما يُترجم مصطلح التوطين إلى "ترجمة شيء ما"، أو "عملية الترجمة من لغة لأخرى". يمكن الخلط بين التعريفين في الممارسة العملية، ومع أن للتوطين جوانبًا لغويةً وأخرى غير لغوية، إلا أن معظم عمليات الملاءمة الثقافية في سياق التوطين تنفَّذ عن طريق اللغة، ويمكن استخدامهما تبادليًا، فلن يبحث المترجم الجيد عن مكافئ مصطلح ما في اللغة التي يترجم إليها فقط، بل سيبحث بفعالية وسيحاول فهم اللغة التي يعملون عليها بدقة للوصول للترجمة الحقيقية، فمثلًا يمكن للمترجم أن يحوّل وحدات القياس والتاريخ من صيغة لأخرى -أو لا يحولها- بناءً على تقديره الشخصي، فقد يكون تحويل "451 فهرنهايت" إلى "233 سيليزيوس" مربكًا، إلا أن ترجمة دليل تقني تتطلب تحويلًا دقيقًا لواحدات القياس، وبالتالي فللمترجم حرية الخيار في ترجمة ما يراه مناسبًا أو الإبقاء عليه كما هو، وبينما يطلق البعض على هذه العملية مصطلح "التوطين" إلا أن عملية تحويل وحدات القياس كانت تعَد جزءًا من الترجمة، قبل أن يُستعمل مصطلح "التوطين" لتوصيف هذا النوع من العمل بفترة طويلة. قد يظهر الاختلاف بين مصطلحي التوطين والترجمة عند النظر للجوانب اللغوية وغير اللغوية على أنهما كائنان منفصلان، أما عند النظر لعملية ترجمة الرسالة التي يحملها المنتج أو الخدمة، والنظر للجانبين اللغوي وغير اللغوي على أنهما عنصران قابلان للترجمة فيمكن المبادلة بين كلا المصطلحين "الترجمة" و"التوطين" لأنهما سيدلان على نفس المعنى. في هذا المقال سنعد مصطلحي "الترجمة" و"التوطين" متكافئين ويمكن التبديل بينهما، وسنناقش كيفية استعمال الموقع الإلكتروني وسيلة تواصل للدخول إلى أسواق جديدة ذات ثقافات مختلفة. سبب استخدام التوطين التوطين الجيد قد يكون مكلفًا، لذا من المهم قبل البدء بتوطين موقعك الإلكتروني أن تطرح عدة أسئلة، هي: من هو الجمهور المستهدف؟ ما هي ثقافة هذا الجمهور؟ ما هي المشاكل المتوقعة خلال عملية التوطين؟ وسنجيب عن هذه الأسئلة تباعًا. الجمهور المستهدف بالتوطين الإجابة عن هذا السؤال من أهم الأولويات ضمن التخطيط لمشروع عملك، فلن نحتاج للتوطين في بعض المشاريع التي يكون للمجتمع فيها الثقافة نفسها، وكذلك عندما يتكلم اللغة نفسها، وللسوق المستهدف ذات المكان الجغرافي، مثل دار رعاية للأطفال أو مقهى محلي أو مطعم، ولكن في بعض الحالات يمكن للأفراد الذين يعيشون بذات المكان أن يتكلموا لغات مختلفةً، ففي المجتمع ثنائي اللغة يجب عليك التوجه بالحديث لمتحدثي كلا اللغتين تعبيرًا عن احترامهم، أما في المجتمع متعدد اللغات فيجب التوجه بالترجمة لمتحدثي اللغة المشتركة و/أو السائدة، مما يمنح الأفراد شعورًا بوجودهم، ويقدم انطباعًا إيجابيا عن علامتك التجارية. ويمكن في بعض الحالات أن تكون الترجمة مطلوبةً قانونيًا، فعلى سبيل المثال في مدينة كيبيك في كندا اللغة الفرنسية هي اللغة المحلية، لذا يجب أن يتضمن موقعك الإلكتروني نسخةً باللغة الفرنسية. إذا كان السوق المستهدف بخدماتك في بلد آخر ويتحدث لغةً أخرى، فلا خيار أمامك سوى توطين موقعك الإلكتروني، لكن إذا كان هذا الجمهور يتحدث نفس لغتك فيجب عندها النظر للجوانب الأخرى (الثقافية أو القانونية) لتقرر ضرورة الترجمة من عدمها. وعلى الرغم من وجود العديد من الفوائد للترجمة إلّا أنه لا يجب عليك دومًا تنفيذها في البداية، خاصةً إذا كانت ميزانية المشروع قليلةً، ويمكن صرفها في جوانب ضرورية أخرى، فمن الأفضل تأجيل الترجمة كليًّا على أن تُنفَّذ بطريقة سيئة، وتذكّر دائمًا أن الترجمة الرديئة مكلفة، وإذا طلب منك قانونيًا إطلاق موقعك ليكون ثنائي اللغة، ولم تملك الميزانية الكافية لذلك، فالأفضل أن تبحث عن إمكانية إعفائك من ذلك، فإن لم تستطع فحاول البحث عن دعم أو توظيف متطوعين إن أمكن، وإذا لم تكن مجبرًا قانونيًا على الترجمة، فلا مانع من استخدام لغتك في خدمتك أو منتجك، ويمكنك المحافظة على علاقتك مع الزبون والتركيز على الأمور المشتركة، وهي الاهتمام بالخدمة أو المنتج. فهم التعقيدات الثقافية واللغوية لنفرض أن لديك موقعًا لتعليم البرمجة، موجّهًا لمحترفي تقنيات المعلومات، وغالبهم من خريجي الجامعات، ووجدت فرصةً لتوسيع أعمالك باتجاه الهند مثلًا، في هذه الحالة لن يكون توطين موقعك ضروريًا، لأن معظم المبرمجين في الهند قادرون على فهم اللغة الإنجليزية بطلاقة، لذلك بدلًا من صرف ميزانية على الترجمة يمكنك توجيهها لتطوير منتج أو خدمة جديدة تخدم الجمهور الهندي، فإذا أردت إنشاء ورشة عمل أو معسكر تدريبي في الهند، يمكنك القيام بذلك بالتركيز على نقاط التشابه الموجودة مع الجمهور الهندي، ويمكن تطبيق نفس القاعدة على البلدان الأخرى التي تكون فيها اللغة الإنجليزية هي اللغة الأكثر استخدامًا من قبل محترفي تقنيات المعلومات، أما في بعض البلدان النامية التي يندر فيها استخدام اللغة الإنجليزية، يتحول بعض المبرمجين المتعلمين ذاتيًا إلى "قراصنة جيدين" لكسب المال، وقد تتعجب كيف تعلموا البرمجة على الرغم من معرفتهم القليلة باللغة الإنجليزية ؟! ولهذا تفسير سنوضحه. للمهارات اللغوية نوعان: مهارات منفعلة -وهي السماع والقراءة- ومهارات فاعلة -وهي التحدث والكتابة-، وغالبًا ما يتعلم الناس المهارات اللغوية المنفعلة أولًا، بينما يتعلمون المهارات الفاعلة لاحقًا، فأنت تتعلم التحدث عن طريق الاستماع، والكتابة عن طريق القراءة، وتمر بهذه العملية خلال مرحلة الطفولة، وعند تعلّمك للغة جديدة حينما تصبح بالغًا. وبما أن معظم محتويات دورات تقنيات المعلومات متوفرة مجانًا على الإنترنت باللغة الإنجليزية، يلجأ بعض المبرمجين إلى تعلم اللغة الإنجليزية بطريقة منفعلة خلال رحلة تعلمهم للبرمجة، فهم ليسوا طليقين باللغة الإنجليزية بالمعنى الحرفي، إلا أن ذلك لا ينفي قدرتهم على فهم اللغة، ومن الممكن ألّا يستطيعوا التحدث والكتابة بطلاقة، لكنهم قادرون على فهم النصوص التقنية. باختصار تنمو المهارات اللغوية المنفعلة والفاعلة بسرعات مختلفة، وتقودنا هذه الحقيقة إلى مجموعة جديدة من الجمهور المستهدف، وهم القادرون على فهم اللغة الإنجليزية لكن بطريقة منفعلة. إذا كان منتجك بصيغة نص مكتوب، فلن تكون الترجمة ضروريةً لاستهداف هذه الشريحة من الجمهور، أما إذا كان منتجك بصيغة مقطع صوتي أو عرض مرئي، فستحتاج لإضافة ترجمة مكتوبة، لأن متحدثي اللغة الانجليزية الأصليين يتحدثون بلهجات وسرعات مختلفة، كما أن إضافة الترجمة المكتوبة تساعد الأشخاص الذين يعانون من مشاكل سمعية، كما أنها قد تكون مطلوبةً بالتشريعات الإقليمية والمحلية لزيادة إمكانية الوصول، وهو أمر جيّد إذا أضفناه. قد يناقشنا البعض في أنه على الرغم من قدرة الأفراد على فهم اللغة الإنجليزية، إلا أنهم سيفهمون النص أفضل لو كان بلغتهم الأم، فإذا توفرت جميع البرامج المستخدمة أو المشار إليها بلغتهم الأم فلن يشكل ذلك عائقًا، ولكن لن يحدث ذلك على أرض الواقع غالبًا. يساعد التكامل اللغوي المبرمجين على العمل بسرعة، وهذا وحده يجب أن يتفوق على السهولة المفترضة التي تتيحها الترجمة. مشاكل تواجه عملية التوطين لنأخذ مثالًا عن إندونيسيا، حيث تتكلم غالبية الشركات الصغيرة والمتوسطة اللغة الإندونيسية، لأنها غالبًا تخدم السوق المحلي، وبالتالي من الحكمة أن تُستهدَف هذه الشركات الصغيرة والمتوسطة باللغة الإندونيسية. توجهت إحدى الشركات إلى توطين خدماتها في السوق الإندونيسي مستهدفةً الشركات الصغيرة والمتوسطة الحجم، التي يبلغ عددها حوالي 58 مليون شركة، ولم يكن لها منافسون كثر بادئ الأمر، وقد كانت خطة التوطين جيدةً عمومًا، على الرغم من احتوائها على بعض مشاكل التنفيذ، فقد تضمنت المادة التعليمية المراد توطينها العديد من الروابط الخارجية المزعجة، فمثلًا قد تصادف "مصطلحًا ذكيًا" أثناء قراءتك لمقالة تتضمن تعليمات لتنفيذ عمل ما، ولكي تفهم هذا المصطلح الذكي يتعين عليك الضغط على الرابط الخارجي، والذي يأخذك لصفحة مستقلة من المفترض أن تشرح هذا المفهوم، لكنك ستجد المزيد من "المصطلحات الذكية"، والتي تحتاج لروابط خارجية أخرى وهكذا، وفي هذه الحالة قد تنسى هدفك الرئيسي من قراءة المقالة الأولى. يعَد أصحاب المشاريع الصغيرة من أكثر الأشخاص انشغالًا، حيث يتعين عليهم تنفيذ جميع المهام بمفردهم، وبالتالي لا يريدون إضاعة وقتهم في قراءة مقالة تتضمن تعليمات تأخذهم هنا وهناك، لذا كان ينبغي تبسيط تلك التعليمات من الناحية اللغوية، أما من الناحية التصميمية فكان بالإمكان استخدام نوافذ منبثقة تحتوي على تعريف أو وصف مركّز ومختصر لذلك "المصطلح الذكي"، ومع أن استعمال النوافذ المنبثقة قد يكون أمرًا مشتتًا للانتباه، إلا أنها سهلة الاستخدام وستؤدي الوظيفة بطريقة أفضل من استخدام الروابط الخارجية، وإذا لم نستطع جعل محتوى النوافذ المنبثقة مركزًا ومختصرًا، فمن الأفضل كتابة فقرة مستقلة لشرح هذا المصطلح، عندها يمكننا بدء كل تعليمة بذكر تعاريف المصطلحات الخاصة، وكتابة هذه التعاريف في صفحة واحدة لتقليل الوقت المستغرق في الذهاب والعودة للصفحة المقصودة، ويمكن تطبيق هذا الحل عندما يكون التعريف طويلًا جدًا، وأكبر من أن يوضع في نافذة منبثقة عند المرور بالمؤشر عليه. كانت المشكلة في حالة هذه الشركة في اللغة الأصلية للمقال، والتي ترجمت بنجاح إلى اللغة المستهدفة -الإندونيسية في مثالنا- بفضل التوطين، وقد كان بالإمكان حل هذه المشكلة بدءًا من مستوى لغة المقال الأصلية، ولكن كان الوقت قد فات على خطوة كهذه. لا يمكن للتجنيس Transcreation أو "عملية تحويل مفهوم في لغة ما وإعادة صياغته كليًا في لغة أخرى" حل مثل تلك المشكلة، لأن الخلل هنا تقنيّ أكثر من كونه لغويًا، ويتوجب على المترجمين صياغة عملهم بما يتوافق مع البيئة، وعليهم الاحتفاظ بجميع الروابط، وترجمة جميع المحتويات ذات المصطلحات التخصصية. كان ينبغي على تلك الشركة توظيف كاتب محلي لإعادة كتابة المحتوى باللغة المستهدفة، ولكن لم يُتخذ هذا الإجراء لسبب أساسي، وهو أن هذه "المصطلحات الذكية" استعملت مثل كلمات مفتاحية، فتوجب الاحتفاظ بها رغم كرهنا لها. التحضير لمشروع توطين موقع إلكتروني لنفرض أنك أخذت كل شيء في الحسبان، فتعلمت عن جمهورك المستهدف، وكيف سيساهم منتجك في حل مشكلات هذا الجمهور، وتوافرت الميزانية اللازمة لذلك، ومن الطبيعي أن تحاول الوصول للجمهور فورًا وقبل منافسيك المحتملين، والآن يمكنك البدء بتنفيذ خطة التوطين لمشروعك. يجب أن نذكر بأن التوطين سينقل أي أخطاء من محتواك الأصلي إلى الصفحات المترجمة، لذلك يجب تنفيذ بعض الفحوصات قبل البدء بالترجمة، وسيكون إصلاح أي مشكلة موجودة قبل أن يبدأ المشروع أقل تكلفةً، ويجب أن تضمن هذه الفحوصات تقييم المواد المراد ترجمتها، لذا اطلب من شخص خارج فريق عملك أن يقرأ كامل النص ويبدي رأيه فيه، ومن الأفضل أن يكون شخصًا يمثّل الجمهور المستهدف، ثم أجرِ التصحيحات اللازمة، واستعمل أقل عدد ممكن من المصطلحات التخصصية، ودع القارئ يركز على مقالة واحدة دون مقاطعة. تفضل بعض الشركات تشكيل مصطلحات جديدة لصنع كلمات مفتاحية تقود الأشخاص إلى موقع الويب الخاص بالشركة، وقد يكون هذا الإجراء ذكيًا، حيث أنه يفيد في مواءمة المقال لمحركات البحث، إلّا أنك إذا أردت بناء علاقة مع جمهورك المستهدف فعليك توضيح رسالتك وجعلها قابلةً للفهم، ويجب أن يكون التواصل الواضح عوضًأ عن اختراع كلمات جديدة من أولوياتك، وقد يعني اتباعك لما سبق التضحية بالكلمات المفتاحية للحفاظ على وضوح المقال، لكنه يضمن معدل ارتداد أقل، بما أن الزوار سيبقون في موقعك لوقت أطول، وسيرتفع احتمال إكمال القرّاء لمقالاتك إلى نهايتها، طالما أنهم لا يصادفون الكثير من المصطلحات الصعبة والمعقدة. يمكنك البدء بمشروع التوطين عندما يصبح النص جاهزًا، إذ يمكنك توظيف مترجم على منصة مستقل أو خمسات لإنجاز العمل، أو يمكنك بناء فريق عمل خاص بك، ويمكنك توظيف محررين ومترجمين يعملون لحسابهم الخاص للعمل في مشروع ترجمة موقعك، ويمكن لهذا الحل أن يوفر التكلفة أو يزيدها أكثر من الاستعانة بوكالة ترجمة خبيرة استنادًا لعدة عوامل، وعليك التأكد من أن المترجمين الذين تعينهم مباشرةً أو عن طريق وكالة هم أصحاب خبرة، فإذا تحدث النص عن التسويق مثلًا فيجب أن يكون المترجمون خبراء في هذا المجال، للتأكد من فهمهم لمقصدك. يمكن لمعظم أدوات الترجمة المستخدمة حاليًا الحفاظ على تنسيق الجمل والروابط وشيفرة HTML، لذا لا تقلق من هذه النواحي، وركّز على الرسالة التي تريد إيصالها للجمهور المستهدف، وخذ الاعتبارات الثقافية بعين الاعتبار، وانتبه لأي سوء فهم قد يحدث بسبب ترجمتك، واستشر الفريق اللغويّ الخاص بك عن الجمل التي يمكن أن تسبب إشكاليةً عند ترجمتها، وانتقِ كلماتك بعناية، واختر التعابير المناسبة. إذا تمكنت من توطين الموقع فتأكّد أيضًا من تأمين خدمة دعم العملاء باللغة الملائمة للجمهور المستهدف، مما سيؤمن الرد السريع على العملاء، بدلًا من إضاعة الوقت في انتظار المترجم. يمكننا تلخيص ما سبق في الأمور التالية: لا تكن متسرعًا أثناء تنفيذ مشروع التوطين والترجمة، فهناك العديد من الأمور التي يجب أخذها في الحسبان قبل بدء التنفيذ، وستؤدي الخطة الجيدة لنتائج أفضل، وتساهم نوعية الترجمة الجيدة في ردم فجوة اللغة، إضافةً لبناء الثقة وتقوية صورة علامتك التجارية في ذهن الجمهور المستهدف. ترجمة -وبتصرف- للمقال ?Do You Need to Localize Your Website لصاحبه Putri Hapsari. اقرأ أيضًا ما هو السيو التقني Technical Seo وأهميته للموقع الإلكتروني كيفية عمل محركات البحث وترتيب جوجل لصفحات الموقع الإلكتروني النسخة الكاملة لكتاب فن الترجمة والتعريب
-
يمكنك إنشاء حساب على أحد منصات العمل الحر، كمنصة مستقل، والبحث باستمرار عن المشاريع التي يطلب أصحابها مترمجمين ويمكنك تقديم عرضك على تلك المشاريع، لا تنسى التعريف بنفسك ضمن حسابك وعرض مهاراتك وأعمالك السابقة إن وجد أو يمكنك إنشاء حساب على أحد منصات المشاريع المصغرة، كمنصة خمسات، وإضافة مشروع مصغر لترجمة بخصائص معينة وتسعيره وسيتواصل معك من يريد خدماتك يمكنك الاستفادة من قراءة المقالات التالية للدخول في سوق العمل الحر ومهنة الترجمة فيها بالتحديد:
-
عند اشتراكك بأي من الدورات المتوفرة ضمن الأكاديمية فإنك تحصل على دروس كل المسارات لتلك الدورة مدى الحياة، إضافة لحصولك على أول مسار فقط من كل الدورات الباقية، وذلك في حال أحببت الاطلاع عليها والتسجيل بإحداها للتخرج من الدورة لست مطالبًا سوى بمسارات الدورة الخاصة بك، المسارات المفتوحة الإضافية هي للاطلاع فقط، في حال كان لديك مشكلة أو استفسار يمكنك البحث والقراءة ضمن قاعدة المعرفة للحصول على معلومات عامة عن الدورات
- 1 جواب
-
- 1
-
-
حاول التوجه للمجلد ضمن المسار التالي: C:\Users\manha\AppData\Local\Temp واحذف جميع محتويات ذلك المجلد التي يمكن حذفها، ثم حاول مجددًا تشغيل ملف تنصيب Composer كمسؤول