اذهب إلى المحتوى

Mustafa Suleiman

الأعضاء
  • المساهمات

    8941
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    272

كل منشورات العضو Mustafa Suleiman

  1. المشكلة لديك هي في محاولة عرض كائن التاريخ كما هو بالشكل التالي في مكون Note: <small>{date}</small> لاحظ أنك تقوم بتمرير كائن new Date() ولا يمكن عمل render للكائن بدون تحويله إلى تاريخ نصي، وذلك ممكن من خلال دالة toDateString، كالتالي: <small>{date.toDateString()}</small>
  2. سأكون صريحًا معك، مجال تعلم الآلة بحاجة إلى الأقل عامان من الدراسة وليس مجرد استخدام نماذج جاهزة عن طريق الـ API، بل ستحتاج إلى العودة الأساسيات ودراسة الرياضيات وذلك ستجده هنا: وأنت كمبتدأ لست بحاجة إلى معرفة كيف تم اشتقاق تلك الخوارزميات وكيف تم بنائها، كل ما تحتاجه هو أساسيات الرياضيات وهي الجبر الخطي والتفاضل والتكامل ولإحتمالات والتحليل الرياضي. وليس من الضروري أن يكون مستواك مرتفع في الرياضيات لتعلم الذكاء الاصطناعي بل يكفي تعلم الأساسيات ثم الاستزادة فيما بعد، وبالطبع كلما ارتفع مستواك في الرياضيات تطور مستواك وقدرتك على التعلم في مجال الذكاء الاصطناعي. ثم تعلم لغة بايثون والمكتبات الهامة في ذلك المجال مثل numpy و pandas وتعلم لغة SQL ثم تعلم الخوارزميات وهياكل البيانات، ثم تعلم تحليل البيانات ، ثم التعملق العميق والـ Transformers. ستجد هنا خريطة طريق جيدة: https://roadmap.sh/ai-data-scientist
  3. بالطبع ذلك مطلوب في مواقع العمل الحر، حيث المطلوب تنفيذ المهام بواقع خبرة سابقة أو على الأقل الإلمام بنسبة 70%، لكن إذا أردت العمل في شركة فستجد وظائف معروضة لمستوى Junior ابحث عن ذلك، لكن يجب وجود معرض أعمال جيد وبمستوى مرتفع نسبيًا يظهر مستوى مهارات ليست بسيطة. فمثلاً لمجال الواجهة الخلفية، لا يكفي أن تتعلم Node.js وexpress.js وبناء مشروع من خلالهم فقط، بل هناك مهارات أخرى ستجدها في وصف الوظيفة ابحث عن back-end developer على مواقع مثل LinkedIn و indeed و Bayt. والخبرة تأتي من تنفيذ مشاريع أقرب إلى المطلوب في الواقع مثل المشاريع التي يتم عرضها على مستقل مثلاً، ثم تطوير مهاراتك لتنفيذ مشاريع أعقد وستكتشف ذلك أثناء عملك على المشاريع حيث ستحتاج إلى البحث وتعلم أمرًا ما لتستطيع تنفيذ ما تريد.
  4. عليك حذف مجلد node_modules ثم تثبيت الحزم بنفس الإصدارات التي تم تطوير المشروع بها لكي لا يحدث تعارض وذلك من خلال الأمر: npm ci حيث يتم الإعتماد على ملف package-lock.json من خلال ذلك الأمر، وسيتم التثبيت بدون مشكلة. بعد ذلك عليك تثبيت الحزم الأخرى بواسطة composer من خلال الأمر: composer install ثم تعديل اسم ملف .env.example إلى .env ثم تنفيذ الأمر التالي: php artisan key:generate ثم تنفيذ أمر npm run dev ثم إنشاء قاعدة بيانات باسم instagram_clone كما في ملف .env ثم تنفيذ أمر التهجير: php artisan migrate:fresh --seed ثم تشغيل المشروع
  5. ستجد على اليوتيوب شروحات بالعربية بالفعل، ابحث عن " شرح SQLAlchemy "، ويوجد بالأكاديمية مقالات تشرح الأمر:
  6. المشكلة غير واضحة بعض الشيء، تقصد أنك لم تتمكن من نشر المشروع على github pages؟ ستحتاج إلى الذهاب إلى إعدادات المستودع Settings ثم ستجد تبويب باسم pages قم بالضغط عليه ثم اختر الفرع الذي به المشروع بالمستودع وغالبًا هو root كالتالي: بعد ذلك اضغط على save ثم انتظر قليلاً وسيتم النشر وسيظهر لك رابط في المستودع أو في صفحة pages في الإعدادات. وستجد شرح هنا بالفيديو:
  7. ما هو المستوى الذي وصلت إليه، أي ما هي التقنيات التي تعلمتها من البداية وحتى الآن مع ذكر اللغات التي تعلمتها فهي الأساس وليس التقنيات، ثم ما المشاريع التي قمت بها وما هو المسار البرمجي الذي تنوي التخصص به؟
  8. دخولاً في لُب الموضوع، لن يساعدك أحد ما لم تساعد نفسك، تلك قاعدة تذكرها دائمًا، إذا انتظرت الوقت الذي ستصبح به جاهز 100% نفسيًا وماديًا وإمتلاك الوقت فلن تحقق ما تريد ببساطة. عليك الإنعزال تمامًا عن أي مصدر للدوبامين السريع مثل السوشيال ميديا والمقاطع القصيرة مثل التيك توك فهي تؤثر على عقلك ولن تساعدك وتقلل من تركيزك وتضيع وقتك. وتذكر أنك لو بدأت منذ عام لكنت وصلت لما تريد بنسبة كبيرة وقطعت شوطًا بدلاً من إنتظار طوق النجاة الذي لن يصل إليك من السماء بدون مجهود وتضحية، تريد تنفيذ أمرًا ما إذن ابدء الآن وبأي إمكانيات لديك، ليس كافية؟ هل لديك حل آخر؟ إذن ذلك أفضل من لا شيء، صحيح؟ ستجد تعب ومشقة وملل بلا شك لا تنتظر جرعات سريعة من الدوبامين، لا يوجد شيء في تلك الحياة ذو قيمة يمكن تحقيقة بسرعة وسهولة.
  9. ستجد أسفل فيديو الدرس في نهاية الصفحة صندوق تعليقات كما هنا، أرجو طرح الأسئلة أسفل الدرس وليس هنا في قسم الأسئلة البرمجة حيث نطرح الأسئلة العامة الغير متعلقة بمحتوى الدورة أو الدرس وذلك لمساعدتك بشكل أفضل.
  10. لاحظ أنك في نظام ويندوز وتحاول تنفيذ أمر تثبيت حزمة خاص بنظام لينكس، أيضًا تقوم بتنفيذ الأمر داخل مترجم بايثون وذلك غير صحيح. ما الذي تريد تنفيذه؟
  11. تستطيع تنفيذ الأمر بأكثر من منطق، والأسهل من خلال حلقة تكرار for بحيث يتم التكرار على المصفوفة وفحص الأرقام بناءًا على شرط معين وهو باقي القسمة، حيث أنّ الأعداد الزوجية باقي القسمة على 2 هو صفر بينما الأعداد الفردية ليس صفر. numbers = [1, 4, 2, 3, 7, 12, 16, 23, 24] even_numbers = [] for number in numbers: if number % 2 == 0: even_numbers.append(number) print("الأعداد الزوجية:", even_numbers) odd_numbers = [] for number in numbers: if number % 2 != 0: odd_numbers.append(number) print("الأعداد الفردية:", odd_numbers)
  12. جميع المشاريع العملية التي تم تنفيذها بالدورة مطلوبة منك، وحتى التطبيقات البسيطة قم بتجميعها في مجلد واحد ثم رفعها في مستودع منفصل في حال تم سؤالك عنها. والمشاريع الكاملة يتم رفعها بمستودع GitHub خاص بها أي مستودع لكل مشروع، وذلك على حسابك في GitHub. ثم التحدث لمركز المساعدة وإخبارهم بأنك تريد التقدم للإختبار، لكن يجب إنهاء 4 مسارات على الأقل ومن الأفضل إنهاء كامل الدورة.
  13. المطلوب منك هو تنفيذ المشاريع التي تم تنفيذها بالدورة ثم رفعها على مستودع GitHub وسيتم سؤالك في مدى استيعابك لم تم شرحه بالدورة، واسناد مشروع إليك لتقوم بتنفيذه بمفردك من أجل التخرج. إذا أردت التأكد، من الأفضل إعادة تنفيذ المشاريع مرة أخرى بمفردك، ففي المرة الأولى لن تستوعب ما تم بصورة كاملة وعند التنفيذ بمفردك ستجد أنك بحاجة إلى مراجعة بعض الأمور.
  14. بالطبع الأمر عرضة للإختراق، لكن ليس من خلال كود لغة بايثون نفسه حيث يتم مراجعة الكود الخاص باللغات البرمجية بدقة، لكن في بعض الأحيان هناك ثغرات في الكود غير مقصودة يتم استغلالها. أيضًا في المكتبات والإطارات مفتوحة المصدر، في حال كان يتم الإعتماد عليها في مشروعك فأنت عرضة للإختراق بلا شك ولكن بنسبة ضئيلة. ففي عام 2014، تم اختراق مكتبة Heartbleed OpenSSL، وهي مكتبة مفتوحة المصدر تُستخدم لتوفير التشفير لخدمات الويب، وأدى الاختراق إلى تعرض بيانات ملايين الأشخاص للخطر. وفي 2017، تم اختراق مكتبة Equifax Log4j، وهي مكتبة تُستخدم لتسجيل الأحداث في تطبيقات Java. وفي شهر مارس 2024، ثغرة CVE-2024-20383 في مكتبة Exim مفتوحة المصدر لنقل البريد الإلكتروني. سمحت هذه الثغرة للمهاجمين بتنفيذ التعليمات البرمجية عن بُعد على خوادم البريد الإلكتروني المصابة. وغيرهم من الثغرات والإختراقات التي تحدث بشكل متكرر، لذا لا يوجد شيء آمن بنسبة 100% على الإنترنت.
  15. لحذف Test WhatsApp Business Account توجه إلى لوحة التحكم App Dashboard ثم اختر WhatsApp Product ثم Configuration ثم قم بالحذف من الخيار أسفل الصفحة.
  16. الطبقة السوداء هي طبقة من الايبوكسي لحماية الشريحة وأيضًا لتشتيت الحرارة، وأسفلها يوجد شريحة مضمنة embedded chip وتلك الشريحة متصلة باللوحة عن طريق سلوك دقيقة جدًا، ولا تستطيع التعديل عليها، حيث يتم تركيبها لمرة واحدة وعند إزالتها لن تتمكن من تركيبها مرة أخرى حيث يتم ذلك من خلال الشركة المُصنعة. إليك صورة شفافة للشريحة: وبخصوص البرمجة ابحث عن embedded systems، ويتم برمجتها من خلال لغة برمجة مثل C أو ++C أو Python، وتتكون تلك الأنظمة من جزئين Hardware و Software وفي كثير من الأحيان يتم إستعمال لوحات جاهزة مثل راسبيري باي أو أردينو في عمل هذه الأنظمة ويتم التحكم في هذه اللوحات من خلال لغات البرمجة التي أشرت إليها سابقًا.
  17. ما المشكلة التي تواجهك أثناء عملية الـ deploy
  18. يوجد مشكلة في التنقل بين الصفحات في تطبيقك، وغالبًا ما تحدث بسبب تغيير مسار الصفحة بطريقة غير متوقعة من قبل Flutter. هل تستخدم Navigator.pushNamed() مع اسم صفحة غير موجود في التطبيق؟ أيضًا استخدام Navigator.pop() دون دفع الصفحة الحالية حيث يجب دفع الصفحة الحالية قبل محاولة إخراجها. أو استخدام Navigator.pushReplacement() مع مسار خاطئ، فيجب أن يكون المسار صحيح. وحاول تجربة الحل التالي: Future.delayed(Duration.zero, () { Navigator.pop(context) });
  19. ما المشكلة بالكود، فالكود المشار إليه لا يوجد به مشكلة، وأيضًا لا تحتاج إلى استخدام prefixes بالنسبة لخاصية Box-sizing فهي مدعومة بنسبة 98.5% من قبل جميع إصدارات المتصفحات، لذا نستخدم التالي فقط: * { box-sizing: border-box; } وهل قمت بربط ملف التنسيقات بملف HTML؟
  20. الأفضل لك هو رفع الواجهة الأمامية والخلفية على Vercel فهي الأفضل بالنسبة لمشاريع React و Next.js وبالطبع Node.js. ستجد هنا تفصيل عن ذلك: وللتفصيل أكثر خصوصًا أنها المرة الأولى لك، ستحتاج إلى توضيح بالفيديو ابحث على اليوتيوب عن " رفع مشروع next.js على vercel" أو deploy next.js on vercel وتستطيع تغيير next.js باسم التقنية التي تستخدمها أثناء البحث.
  21. يجب أن يكون لديك دراية بالمشاكل التي تحاول حلها، ولا أقصد أن تصبح طبيب، بل فهم المشكلة واستيعابها ومن الأفضل وجود شخص مختص لإرشادك في المجال الطبي وتفقد صحة المعلومات الناتجة. لكن ذلك ليس ضروري، يمكنك تدريبه على بيانات ذات موثوقية ودقة وعرض المعلومات للمستخدمين لكن فعاليتها ودقتها لن تكون مثل التي تم الإشراف عليها من قبل مختص.
  22. يجب كتابة البريد الإلكتروني (جوجل ميل مثلاً) الخاص بحساب باي بال. لكن قبل ذلك عليكِ التحدث مع الدعم الفني الخاص بباي بال، فمن المفترض لتفعيل حسابك عن طريق حسابك البنكي سيتم إرسال مدفوعات بسيطة مثل 0.01 وهكذا عليك إدخالها بالضبط لتفعيل حسابك.
  23. لا مشكلة طالما أن الحساب هو دولاري، سيتم تحويل الدولار عليه والسحب منه بالدولار.
  24. إن كان الدرس طويلاً أي نصف ساعة مثلاً قم بتقسيمه إلى أجزاء ثم التوقف والتطبيق بمفردك، والمراجعة إن احتجت ذلك في حال نسيت بعض الأمور. وإن كانت الدروس قصيرة فيمكنك مشاهدة 4 دروس مثلاً ثم التوقف والتطبيق بمفردك، والمراجعة أيضًا إن احتحجت، وعدد الدروس تستطيع تحديده بما يتناسب معك فلو كنت تريد التطبيق بعد كل درس فلا مشكلة. المهم هو التطبيق بمفردك، حتى لو طبقت مع المدرب خطوة بخطوة عليك إعادة الأمر بمفردك لكي تحقق أكبر استفادة. وليس شرطًا عليك كتابة نفس الكود، طالما أنك استوعبت ما يتم شرحه، تستطيع تنفيذ ما تريد بطريقتك أنت، مثلاً لو كنت تريد كتابة جزء معين من الكود بأسلوبك أنت فلا مشكلة، أو تريد تنفيذ مشروع آخر غير الذي تم شرحه بالدورة لا مشكلة طالما أنك استوعبت، المهم هو التطبيق على ما تعلمته وتسليم المشاريع المطلوبة منك فلكل دورة عدد مشاريع معينة على لغات وإطارات محددة. وكتابة الكود بناءًا على ما استوعبته أنت هي الطريقة الصحيحة لتعلم البرمجة، وليس كتابة الكود بشكل حرفي، عليك الاستيعاب ثم تطبيق المنطق البرمجي الخاص بك، وقارنه بما تم شرحه وربما تأتي بطريقة أفضل وأكثر تعقيدًا.
×
×
  • أضف...