حمزة عباد

7 نقاط السمعة
289 مشاهدات المحتوى
عضو منذ
حدث معي شيء مشابه (لكن أقل حدة)، حين اختفى أحد أصحاب المشاريع الذين كان من المفروض أن أعمل له شيئا مقابل 30 دولار (وكان مبلغا زهيدا جدا لأنه كان أول عميل، وفعلت ذلك فقط من أجل التقييم). فجأة اختفى العميل عند نهاية المشروع وبقيت أراسل الإدارة لمدة شهر، وفي كل مرة يقولون انتظر فلقد نبهنا العميل. إلى أن وصل الأمر إلى قرابة شهر كي مرروا المشكلة إلى الفريق الإداري. ثم بعد أيام يأتيني تقييمهم بأن العمل يساوي فقط 20 دولارا!
كما شرحت في الرد السابق، هذا يعتمد على الهدف من العمل و المشروع و البيئة المستهدفة وغير ذلك. لا يمكن القول أن هناك لغة تصلح لكل شيء ولغة لا تصلح لأي شيئ. شخصيا لم أدرس PHP (أو ربما درستها قليلا ولم تعجبني في السابق فتركتها ولم أعد إليها)، واستمررت بالعمل بلغة Python لأنني كنت أعمل على برمجة أدوات الأتمتة ومعالجة النصوص والذكاء الاصطناعي، وهنا Python هو أحسن خيار. تعلمت أيضا JavaScript في البداية لكن بدون أي أطر عمل. ولكن حاليا،
لا أستطيع أن أحدد ما هي "أفضل" لغة برمجة مفتوحة المصدر، لأن هذا يعتمد على المطلوب القيام به أو الشروط التي يجب استيفاؤها في الموقع. فمثلا، كثير من أطر العمل الشهيرة المتعلقة بإدارة المحتوى مثل Wordpress و Drupal وأخرى خاصة بالمتاجر الإلكترونية مثل WooCommerce و Magento، فهذه مكتوبة بلغة PHP ويجب استخدام هذه اللغة لاستعمالها. كما أن الاستضافات التي تدعم تشغيل المواقع مجانا أو بسعر زهيد يدعم أغلبها PHP. لكن إذا كان الواحد يريد مثلا استغلال قدرات الذكاء الاصطناعي المختلفة،
لا يمكن قول ذلك. كونه مفتوح المصدر لا يعني أنه غير مدعوم. كثير من المشاريع المفتوحة المصدر تنافس المنتجات التجارية بل أحيانا تتفوق عليها. فعلى سبيل المثال، لغة Python مفتوحة المصدر ومجانية بالكامل وهي متفوقة كثيرا على لغة Matlab التجارية في البحث العلمي، مع أن Python لم تكن موجهة للبحث العلمي أصلا. أيضا برنامج Blender لديه من المزايا ما يكافئ وأحيانا يتفوق على البرامج التجارية المنافسة التي سعر النسخة الواحدة منها آلاف الدولارات. وتوجد الكثير من الأمثلة من هذا القبيل.
في الواقع، Java ليست لغة مملوكة لأحد، بل في الواقع هي لغة مفتوحة المصدر. تم تطوير Java في البداية عن طريق شركة Sun Microsystems، ولكن هذه الشركة انتهت تقريبا بعدما اشترتها Oracle منذ سنوات. لذلك، فكل المنتجات التي طورتها Sun (أو ما تبقى منها على الأقل) صارت من مسؤولية Oracle. نظرا لأن Sun جعلت Java مفتوحة المصدر، فهذا جعل شركات وجماعات أخرى غير Oracle يمكنها استخدام Java. لذلك، Google استخدمت Java لإنشاء تطبيقات نظام Android. والمطورون الذي كانوا ضد استيلاء
مبروك عليك هذا العميل. لم ألتق بعد بعميل يطلب مني أن أزيد السعر، فضلا أن يجعلني شريكا في العمل!
لغة Python هي لغة متعددة الاستعمالات وليست موجهة إلى مجال محدد، بينما لغة PHP منذ إنشائها وهي موجهة تحديدا لإنشاء صفحات الويب (حتى اسم اللغة PHP يعني Personal Home Pages). لذلك، المقارنة بين انتشار هاتين اللغتين في مجال الويب سوف يعطي أفضلية لـPHP لأن هذا هو عملها. لكن لو قارناهما في مجالات تعلم الآلة والتعلم العميق، أو معالجة النصوص، أو تطبيقات سطر الأوامر، أو حتى في مجال تطبيقات سطح المكتب، أو غير ذلك من المجالات المختلفة عن تطوير الويب، فهنا
نصيحة من شخص سار في نفس طريقك وعمل على عدة مشاريع منذ صغره لكن لم يكملها بسبب تقلبات الظروف والمسؤوليات: من شبه المستحيل أن تجد شخصا يقبل بالعمل معك من دون مقابل. لقد جربت هذا مع أصدقاء لي في الدراسة وقد توقفوا رغم الموافقة الابتدائية التي أظهروها لي. وهذا ليس في المشاريع التي لم تبدأ بعد، بل في المشاريع التي قطعت فيها شوطا كبيرا. والسبب أنه لا يوجد شخص في العالم يؤمن بفكرتك كما تؤمن بها أنت. بل أنت بنفسك
من خلال الموقع الرسمي للغة Kotlin يمكننا أنها لغة متعددة المنصات وليست فقط لتطبيقات الجوال. اللغة اشتهرت لأنها كانت موجهة لنظام Android أكثر، وحاليا هي اللغة التي يستحسن كتابة تطبيقات Android بها، وليس لغة Java، وهذا بحسب توصيات Google نفسها التي طورت نظام Android. بالفعل اللغة بسيطة والكتابة فيها قليلة. كما فالهدف الأول للغة Kotlin كان هو تطوير تطبيقات Android، لكن في الواقع، لغة Kotlin تعمل في كل الأماكن التي تعمل فيها Java، كما أن Kotlin تستطيع إنشاء تطبيقات أصلية
استخدامها من طرف الحكومات وفي المشاريع الكبيرة لا يعني أنه لا يمكن استخدامها في مشاريع التخرج. لا يوجد أي تعارض بين هذين الأمرين. وبالمناسبة، أغلب المواقع الحكومية (على الأقل في بلدي) رديئة جدا من ناحية التصميم والبرمجة وتحوي الكثير من الأخطاء مقارنة بالمواقع الخاصة، حتى أن من يدخل إليها يظن أن تم إنشاؤها في التسعينات! لذلك فكونها حكومية لا يعني بالضرورة أنها معقّدة. اختيار لغة برمجة معينة في بناء موقع إلكتروني يعتمد بالأساس على خبرتك في تلك اللغة. لذلك، إذا
أعتذر على التطفّل، لكن هل لديكم نصائح بخصوص العائد المادي؟ لأنّ أسوء شيء لي حاليا في العمل الحر هو العمل المادي. أنا كمبرمج أجد نفسي أحيانا أعمل على مشروع لمدّة شهر مقابل 220 دولار مثلا، ولا أستلم منها سوى 80%، أي 176 دولار بسبب عمولات مستقل وخمسات المرتفعة. هذا شيء بخس جدا مقارنة بالعمل التقليدي في شركة. علما أن تحديد السعر يتم قبل بداية العمل، وهذا مختلف عن العمل في شركة حيث يتم دفع راتب ثابت في نهاية الشهر.
الواجهة الأمامية (front-end) ليست أداة ولا لغة برمجة ولا أي شيء مشابه، لذلك لا يمكننا أن نقول أن "الفرونت اند يقوم بعمل مواقع"، بل الصحيح هو أن نسأل، ما معنى الواجهة الأمامية (الفرونت اند) في الموقع؟ الجواب هو: الواجهة الأمامية هو الجانب الذي يمكنك رؤيته في الموقع. هذا يتضمّن الكتابة، الألوان، تنسيق الخط، التصميم العام، الصور، الأزرار، وكل شيء آخر يظهر للمستخدم. بينما المفهوم المقابل هو الواجهة الخلفية (backend) وهو الجزء الذي يقوم بالعمليّات التي لا يرى تفاصيلها المستخدم، فهو
صاحب المشروع هذا مهرج. لن أقبل بإنجاز مشروع كهذا بأقل من 2500 دولار. هذا الرجل يريد فريق عمل في شخص واحد!
الاختيار عندي ببساطة هو: أي موقع يعتمد على قاعدة بيانات حقيقية = Django. أي موقع لا يحتاج إلى قاعدة بيانات = Flask. استخدمت كلا من الإطارين في مشاريعي، وهذه هي القاعدة التقريبية التي مشيت عليها. المشاريع التي تحدّثت عنها هي مشاريع حقيقية عملت عليها كمستقل.
إذا كان المقصود هو خدمات خمسات، فهذا يعتمد على حاجة الناس لتلك الخدمة. أنا وضعت 5 خدمات عليه، فقط 1 أو 2 هما اللتان تأتيان بالمشترين، أمّا غيرها فكأنها غير موجودة على الموقع! وعندما أقول أنّ تلك الخدمة تأتي بالمشترين، فأنا لا أحتاج إلى تسويقها مطلقا، بل كلّ يوم يأتيني استفسارات عليها، طبعا كثير من الاستفسارات تكون طلبات لا أستطيع توفيتها، وكثير منها أيضا يكونون أشخاصا يتناقشون معك طويلا ثمّ في النهاية يهربون بمجرّد سماع السعر! الخدمة التي تأتيني بالمشترين
مرحبا، إذا لم تكن لديك خلفيّة جيّدة في البرمجة، فلا أنصح بالقفز مباشرة إلى Web 3، لأنّه في البداية سيكون شيئا في غاية التعقيد، حتى على المبرمجين العاديين (أنا لدي خبرة لأكثر من 12 سنة في البرمجة ومع ذلك شعرت بتعقيد Web 3!)، لأنّه يستخدم مبادئ مخالفة للطريقة الأبسط أو الأسرع، لأنّ التركيز هنا على اللامركزية والأمان والخصوصيّة، بدل أن يكون التركيز على الأداء والسهولة. لذلك، فقبل الوصول إلى Web 3، يجب أوّلا المرور على Web 2 و Web 1.
إذا كان المطلوب هو إلغاء تفعيل هذه الدالّة بعد تحقق شرط معيّن في وقت لاحق، بحيث لا يكون هذا الشرط متحققا في البداية، فهنا أنت في حاجة إلى استدعاء removeEventListener لإلغاء استدعاء تلك الدالّة عند تحقق ذلك الشرط. التابع removeEventListener يتم تطبيقه على نفس عنصر HTML DOM الذي تم تطبيق addEventListener عليه (في حالتك يسمى cartSearcher) و تستقبل وسيطين: الدالّة التي يجب تعطيلها، واسم الحدث الذي يجب تعطيلها منه. لذلك، قبل هذا تحتاج إلى إخراج تعريف الدالّة من addEventListener وإعطائها
أنا جديد نسبيا في العمل الحر وعلى موقع مستقل، وقد بدأت منذ شهور قليلة وتم قبولي من طرف 4 أشخاص في مشاريع إلى حد الآن، بعضها مكتمل وبعضها لا يزال جاريا. أريد أن أقول أن أهم شيء يلفت العميل هو أن تعرض له عملا سابقا يشبه ما يطلبه في مشروعه. لذلك يجب التركيز على المشاريع التي عندك أعمال مشابهة لها، وعند إرسال العرض يجب تضمين صور أو ملفات تثبت ذلك العمل السابق. بهذه الطريقة يمكن أن تجذب انتباه العميل، وليس
كقاعدة عامة: إذا كنت تستخدم لغتي برمجة في نفس المشروع، خاصة في مجال الويب، فلا حل أفضل من ربطهما باستخدام API. هذا هو الحل الصحيح والذي يعمل دائما، خلافا للحلول المحدودة الأخرى. أما بالنسبة لـPyScript، فهو مكتبة لكتابة كود Python داخل HTML، وهي في الأصل تعتمد على Pyodide، والتي بدورها تقوم بترجمة كود Python إلى WebAssembly (WASM) ليعمل على المتصفّحات، لذلك، فستكون محدودا بقدرات المتصفح، وقبل ذلك قدرات Pyodide، لذلك لا تتوقع أن تكون قادرا على تثبيت أي نوع من
أنا مبرمج مستقل وكنت أريد معرفة هذا الأمر لأنه يبدو أنه بالفعل يختصر الوقت والجهد كثيرا، لكن لأني منشغل حاليا بالطلبات فغاب عن ذهني هذا الموضوع. إذا كنت تنوي البدء فيه فأنا أشجّعك، علّي أجد مصدرا منك أعود إليه لفهم هذه الفكرة والاستفادة منها.
سؤال من فضلك: كيف يتم حساب وقت العمل بالساعات؟ لأني كمبرمج بسنوات خبرة طويلة لا أفهم كيف تتم هذه الأمور، بل لا أزال غير قادر على تسعير عملي بدقّة. هل يعتبر وقت العمل هو الوقت الذي أقوم فيه بالضغط على لوحة المفاتيح وتحريك الفأرة؟ أم هو الوقت الذي أكون فيه موجودا داخل محرر الكود، أم ماذا؟
إضافة مساق للتعلّم العميق وتدريس Tensorflow هو أمر ممتاز بالفعل. بالتوفيق لكم ولكل الطلبة.