-
المساهمات
20412 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
495
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو Mustafa Suleiman
-
حاليًا أعتقد أنك تمتلك خبرة 6 أشهر في MERN Stack، بالتالي تجاوزت مرحلة الأساسيات CRUD, Authentication, Simple State، وتطبيق الـ Social Media يعتبر معيار للمستوى المتوسط Mid level، لأنه يجمع بين العلاقات Relational Data والـ Real-time البسيط. ولكنك ما زلت في مستوى Junior لذا تحتاج لمشاريع تجعلك تتقن الأدوات وتفهم الـ Best Practices قبل القفز لمنطق الـ Business المعقد، ولا أعتقد أنك جاهز للإنتقال لمستوى Mid-Level فهو بحاجة إلى خبرة 3 سنوات أو سنتين حسب الفروقات والخبرة الفردية. فالانتقال لـ Mid-Level يحتاج وقت وممارسة وتعرض لمشاكل حقيقية على مشاريع حقيقية أو قريبة من الواقع العملي، و 6 أشهر لا تزال فترة تأسيس، أي الهدف الآن ليس أن تقفز لمستوى Mid-Level، بل أن تكون جونيور قوي، فالشركات عندما توظف Junior، لا تتوقع منه بناء نظام معقد، بل أن يكتب كود نظيف، ويفهم كيف يربط الواجهة بالخلفية بشكل صحيح، ويستطيع حل المشاكل اليومية. حاول بناء متجر إلكتروني متخصص ليس مثل أمازون، بل متجر لبيع شيء واحد مثلاً متجر أحذية رياضية أو كتب، لعرض منتجات، إضافتها للسلة، وإتمام طلب وهمي، وعرض 10 منتجات في الصفحة، وتصفيتها حسب السعر أو الماركة، وقم بعمل Form Validation، مع التفكير في ماذا يظهر المستخدم والبيانات يتم تحميلها؟ أي Spinner، وماذا يظهر لو انقطع النت؟ Error Message، فالمبتدئ يترك الشاشة بيضاء، والمحترف يضع Skeleton Loader. ويجب بناء Admin Panel لوحة تحكم بسيطة للـ Admin لإضافة المنتجات ورفع الصور أي تعامل مع Multer وCloudinary.
-
يوجد الكثير من المكتبات المتخصصة في الـ Animations، لذا لتجنب تشتيتك، ما تحتاجه في الواقع العملي هو تعلم أساسيات CSS ثم تعلم المفاهيم المتقدمة الخاصة بالـ Animations في CSS. ثم انتقل لتعلم تلك المكتبات وليس العكس، لكن قبل تثبيت أي مكتبة، يجب أن تسأل نفسك ما هو مدى تعقيد التأثيرات التي أريدها؟ في حال كانت بسيطة إذن لا حاجة لمكتبات خارجية، لديك Tailwind و Bootstrap يوفران كلاسات Transitions. بمعنى للأزرار يوجد Hover effects، وللقوائم المنسدلة البسيطة، فلا داعي لتثبيت مكتبة كاملة لو تريد فقط أن يتغير لون الزر بنعومة استخدم كلاسات مثل transition-all duration-300 ease-in-out. بينما للتأثيرات المتقدمة أكثر لتصميم الواجهة الأمامية لمشاريع React أو Next.js، فالمكتبة المُعتمدة حاليًا هي Framer Motion، لكونها تعتمد على الـ Components وتتعامل بسلاسة مع الـ State ودورة حياة المكونات. كذلك تستطيع استخدام كلاسات Tailwind داخلها بسهولة عبر className، وتدعم التحريك البسيط والتحريك المعقد والإيماءات وحتى الـ Scroll Animations. أما لو المشروع يتطلب تحريكات معقدة جدًا، أو يعتمد بشكل مكثف على حركة العناصر عند التمرير لدرجة أنّ Framer Motion لا تستطيع التعامل معها بدقة، فاستخدم مكتبة GSAP. وللعلم أيضًا لو تريد صور متحركة جاهزة مثل فكتور يتحرك؟ استخدم Lottie حيث تعرض ملفات JSON المصدرة من After Effects.
-
هناك أمور تؤدي إلى ذلك وهي حفظ كل الخصائص بدون استيعاب ما يجب فعله هو استيعاب المفاهيم الأساسية، كذلك نسخ كود بدون فهم بل قم بالتجربة وأخطئ لا مشكلة، كذلك تعلم كل شيء مرة واحدةركز تجنبه تمامًا، ركز أولاً على Flexbox وتعمق به. ولن تتقن CSS بالحفظ، بل عن طريق الاستيعاب والممارسة، وحتى من لديه خبرة سنوات يبحث في جوجل عن خصائص CSS يوميًا لا مشكلة. في البداية تحتاج إلى استيعاب مفهوم Box Model وكيف تؤثر خواص margin وborder وpadding على حجم الـ content داخل العناصر، وماذا يحدث عند تعيين قيمة border-box إلى خاصية box-sizing. ثم دراسة أساسيات Flexbox وتعمق به ولا تنتقل إلى Grid إلا بعدما تشعر بأريحية في التعامل مع Flexbox، قم بتنفيذ التحديات التالية: https://flexboxfroggy.com/ ثم قم بتطبيق ما تعلمته على تصميم بسيط وزد في درجة التعقيد بعد ذلك. ثم انتقل لتعلم أساسيات Positioning من خلال خواص absolute وrelative وخلافه وممارسة الأمر عمليًا لاستيعاب الفرق. ثم تعلم الفرق بين الوحدات px, %, em, rem, vh, vw ومتى نستخدم كل منهم. ثم تعلم Grid وتنفيذ التمارين التالية: https://cssgridgarden.com/ ولا تشغل بالك بالتجاوبية في الوقت الحالي، وقم بتنفيذ نماذج بسيطة ثم تصاميم كاملة وأنصحك بتنفيذ التحديات على موقع Frontend mentor مع تحديد التمارين الخاصة بالمستوى المبتدئ newbie ثم junior ثم تستطيع زيادة الصعوبة فيما بعد إلى intermediate، وإليك التمارين مباشرًة: https://www.frontendmentor.io/challenges?difficulty=1&type=free%2Cfree-plus ثم التمارين التالية: وبعد ذلك تعلم عن كيفية تصميم الموقع بشكل تجاوبي Responsive Design عن طريق @media
-
في البداية ستحتاج إلى تعلم أساسيات الرياضيات، وتستطيع دراسة دورة الذكاء الاصطناعي بدونها، لكن ستواجه صعوبة في استيعاب الخوارزميات والأمور النظرية وما يحدث في الخلفية، وفيما بعد ستعود لنقطة الصفر لدراسة أساسيات الرياضيات لا مفر. أرجو التوجه لليوتيوب ودراسة الأساسيات وتستطيع دراسة الدورة بدونها لا مشكلة، لكن ستواجه صعوبة في استيعاب المفاهيم وما يحدث في الخلفية، لكن الأساسيات فقط، فالتعمق سيستغرق وقت وستفقد الحماس والدافع، والكثير من المفاهيم الرياضية لن تحتاجها فعليًا. لذا في البداية خصص شهر لدراسة الرياضيات، ودراسة التالي: ابدء بالجبر الخطي ودراسة المصفوفات، العمليات الأساسية، الضرب النقطي. ثم التفاضل ودراسة المشتقات، قاعدة السلسلة، التدرج. ثم الإحصاء ودراسة المتوسط، الانحراف المعياري، التوزيعات الأساسية بعد ذلك كلما واجهتك مفاهيم رياضية، توقف وادرسها. ستجد تفصيل هنا: بعد ذلك قم بدراسة المسار الأول من دورة بايثون بالأكاديمية، فهو مجاني لك وكذلك المسارات الأولى من جميع الدورات الغير مشترك بها بالأكاديمية، لذا تستطيع دراسة أساسيات بايثون بشكل تفصيلي أكثر من خلال المسار الأول من دورة بايثون. ثم العودة لدورة الذكاء الاصطناعي دراسة الدورة بالترتيب، وفي حال واجهت صعوبة عند دراسة مسار تطبيقات عملية باستخدام المحوّلات Transformers، فأرجو قراءة التالي:
-
التخصص الذي تريده غير واضح، هل تريد التخصص في مجال الذكاء الاصطناعي أم مجال تطوير الويب؟ فالمسار التعليمي لكلاهما مختلف تمامًا، دورة جافاسكريبت لن تفيدك في حال أردت الخصص في مجال الذكاء الاصطناعي، الدورة المناسبة والمُكملة هي دورة بايثون بأكاديمية حسوب. وللعلم المسار الأول من دورة بايثون مجاني لك وكذلك المسارات الأولى من جميع الدورات الغير مشترك بها بالأكاديمية، لذا تستطيع دراسة أساسيات بايثون بشكل تفصيلي أكثر من خلال المسار الأول من دورة بايثون. الطلب على مشاريع الذكاء الاصطناعي ارتفع بشكل كبير على منصات العمل الحر مثل مستقل بنمو 56%، وفي الشركات في الخليج فرواتب المجال ضمن الأعلى عربيًا، حيث في السعودية والإمارات يبدأ المبتدئ براتب يتراوح بين 15,000 و22,000 ريال/درهم شهريًا، بينما يتقاضى نظيره في مصر ما بين 25,000 و35,000 جنيه شهريًا، مع فرص كبيرة لمضاعفة الدخل عبر العمل عن بعد لشركات أجنبية. وبالنسبة للتخصصات، فقم بمشاهدة التالي:
-
ستحتاج إلى دراسة أساسيات الرياضيات من أجل استيعاب الشرح بشكل أفضل، أرجو التوجه لليوتيوب ودراسة الأساسيات وتستطيع دراسة الدورة بدونها لا مشكلة، لكن ستواجه صعوبة في استيعاب المفاهيم وما يحدث في الخلفية، لكن الأساسيات فقط، فالتعمق سيستغرق وقت وستفقد الحماس والدافع، والكثير من المفاهيم الرياضية لن تحتاجها فعليًا. لذا في البداية خصص شهر لدراسة الرياضيات، ودراسة التالي: ابدء بالجبر الخطي ودراسة المصفوفات، العمليات الأساسية، الضرب النقطي. ثم التفاضل ودراسة المشتقات، قاعدة السلسلة، التدرج. ثم الإحصاء ودراسة المتوسط، الانحراف المعياري، التوزيعات الأساسية بعد ذلك كلما واجهتك مفاهيم رياضية، توقف وادرسها. ستجد تفصيل هنا:
-
كمطور واجهات أمامية فأنت لست مجرد منفذ للتصميم، بل شريك أساسي في صناعة التجربة، بمعنى المطور المحترف هو الذي يفهم لماذا نضع الزر هنا، أو لماذا يجب أن تظهر الصورة بهذا الشكل، وليس التنفيذ بشكل أعمى. وتجربة المستخدم تعني كيف يشعر المستخدم أثناء تصفحه للموقع؟ هل هو تائه؟ هل هو محبط؟ أم أن الأمور تجري بسلاسة؟ وللتسهيل إليك قائمة بأمور عملية عامة تستطيع برمجتها وتطبيقها لتحسين التجربة: زر الصعود للأعلى Scroll to Top كما ذكرت أنت، ذلك مثال ممتاز، ففي الصفحات الطويلة، يوفر على المستخدم عناء التمرير العكسي الطويل. فتات الخبز Breadcrumbs بمعنى روابط التوجيه الرئيسية > المنتجات > إلكترونيات تساعد المستخدم معرفة مكانه والعودة خطوة للخلف بسهولة. القائمة الثابتة Sticky Header، أي عند النزول للأسفل، بقاء القائمة العلوية ظاهرة يسهل التنقل دون الحاجة للصعود لأعلى الصفحة. التحميل الكسول Lazy Loading فلا تقم بتحميل كل الصور في الصفحة دفعة واحدة بل اجعل الصور تظهر فقط عندما يصل المستخدم إليها وذاك يسرع الموقع، والسرعة هي جزء أساسي من UX. تحسين معرض الصور Lightbox عند النقر على صورة منتج، يجب أن تفتح في نافذة منبثقة Modal مع خلفية معتمة وإمكانية التكبير والتنقل بين الصور بأسهم لوحة المفاتيح. Skeleton Screens بدلاً من عرض شاشة بيضاء أو دائرة تدور أثناء تحميل البيانات، اعرض هيكل رمادي يشبه شكل المحتوى القادم مثل فيسبوك ويوتيوب، الأمر الذي يخدع الدماغ بأن الموقع أسرع. وأمور أخرى مثل Real-time Validation، Button Feedback، Auto-focus وTouch Target تستطيع البحث عنهم. وبخصوص الـ UI فهي ليست فقط عبارة عن ألوان جميلة، بل اللغة البصرية التي توجه المستخدم، وأهم مفاهيم UI يجب أن تراعيها في الكود هي: التسلسل الهرمي البصري Visual Hierarchy المساحات البيضاء Whitespace وNegative Space التناسق Consistency وعندما يطلب العميل تحسين UX/UI، فهو لا يريد منك إعادة تصميم اللوجو، بل يريد منك كمطور واجهات أن يكون الموقع متجاوب مع الجوال، أن تكون التفاعلات Animations ناعمة وغير مزعجة، أن يكون الموقع سريع، وأن تكون النصوص مقروءة بوضوح أي تباين الألوان.
- 2 اجابة
-
- 1
-
-
شكرًا على إهتمامك إبراهيم، ونعتذر لك عن أي إزعاج أثناء تواجدك بالأكاديمية، ومكتبة React من الأساسيات الواجب إتقانها بالفعل، فما بعدها قائم عليها من إطار Next.js و React Native وخلافه. وكل فترة يتم تحديث محتوى الدورات، وهناك الكثير من المسارات تم تحديثها بالفعل، وتستطيع المتابعة من هنا: آخِرالتحديثات في الوقت الحالي أرجو الاستفسار أسفل الدروس عند مواجهة صعوبة في الاستيعاب وسيتم شرح الأمر بشكل تفصيلي لك. وعامًة في عالم البرمجة، لا يوجد كورس واحد كافٍ، وستحتاج دائمًا إلى التعمق والبحث، فلو يوجد شرح لجزئية معينة مثل Hooks أو Redux غير واضح، فقم بالبحث عن شرح لنفس العنوان في مكان آخر، ثم عد للأكاديمية للتطبيق.
-
البعض يُفضل كتابة مُلخصات لكل شيء، لكن لا أنصحك بذلك، اكتفي فقط بكتابة ملاحظات ومُلخصات ورسومات للأمور النظرية أو معلومة معينة تريد الإحتفاظ بها للعودة إليها للمراجعة. بينما البرمجة نفسها اكتفي بالتطبيق العملي فهو الأهم وبدونه فلا معنى للمُلخصات النظرية مهما كتبت، ببساطة لن تستطيع قيادة سيارة بمشاهدة فيديو صحيح؟ وليس المطلوب منك أن تعلم كل شيء عن كل شيء، وجميع من في مجال البرمجة لا يحفظ كل شيء عن ظهر قلب، بمعنى مثلاً تعلمت دالة معينة تقوم بوظيفة معينة في اللغة البرمجية أو إطار العمل، فكل ما تحتاجه هو معرفة المعاملات الأساسية التي تجعل الدالة تعمل، ومعاملين أو ثلاثة للتحسين، وباقي المعاملات وُضعت لحالات نادرة أو متقدمة، ولن تحتاجها إلا مرة كل سنة، وحينها ستبحث عنها. لذا في البداية المطلوب فهم الفكرة العامة أي ماذا تفعل الدالة؟ وماذا تحتاج لتعمل؟ كذلك لست مضطر للتوجه لصفحات الإنترنت في كل مرة، فالبيئة التي تعمل بها مثل vscode توفر لك تكملة تلقائية، عند كتابة اسم الدالة ضع مؤشر الماوس داخل القوسين واضغط على زر CTRL + Space في لوحة المفاتيح وستظهر لك نافذة صغيرة فيها كل المعاملات المتاحة.
- 3 اجابة
-
- 1
-
-
بالطبع لا، العملية معقدة تجمع بين التشفير، الرياضيات، ونظام قواعد البيانات، وذلك للوصول إلى ثلاثة أمور وهم عشوائية تامة بحيث لا يمكن لأحد تخمين الرقم التالي، التفرد لعدم تكرار نفس الرقم مرتين والأمان لحماية الأرقام من السرقة قبل طباعتها أو بيعها. فالشركات لا تستخدم الأرقام المتتالية مثل 1000، 1001، 1002 لأن ذلك يسهل عملية التخمين، وتعتمد على خوارزميات لتوليد أرقام عشوائية معقدة جداً CSPRNG - Cryptographically Secure Pseudo-Random Number Generator. ويتم توليد سلسلة طويلة من الأرقام ما بين 14 أو 15 أو 16 رقم وهي عشوائية ولا تتبع نمط معين. وقبل إرسال الأرقام لمصانع الطباعة، يتم تشفيرها وتحويل الأرقام إلى رموز مشفرة لا يمكن قراءتها إلا من قبل الآلة الخاصة التي ستطبع البطاقات أو الأنظمة التي سترسلها رسائل نصية. وذلك يمنع الموظفين في شركات الطباعة من معرفة الأرقام أو سرقتها. حتى بعد طباعة البطاقة، أحيانًا لا تكون فعالة، إلا عند تفعيلها فقط عند بيعها في نقطة البيع أو عند تسليمها للوكيل، ليتم ربطها بالنظام المالي.
-
مجهود جيد، لكن يجب التركيز أولاً على الأساسيات، أي التعمق في HTML, CSS, JS وبناء مشاريع من خلالهم فقط بدون استخدام أي إطار أو تقنية مثل بوتستراب. وبعد ذلك تستطيع استخدام التقنيات في مشاريعك ومنها بوتستراب لتسريع عملية التطوير، ثم تعلم React.js ولكن بعد الوصول لمستوى متوسط في جافاسكريبت أي مستوى جيد من الاستيعاب للغة البرمجية وليس سطحي. ابحث على اليوتيوب عن مشروع جافاسكريبت بسيط مثلاً وحاول تنفيذه ولا مشكلة في رؤية الشرح والتعلم. ثم انتقل لتعلم React.js من خلال الدورة، وستحتاج إلى التعمق أكثر في React من خلال مصادر أخرى، ابحث أيضًا على يوتيوب عن مشروع React.js بسيط وقم بتنفيذه بجانب المشروع الذي ستقوم به بالدورة. الفكرة هي التركيز على الأساسيات قدر الإمكان وتجنب التسرع في التنقل بين التقنيات، فـ React.js هي الأساس للإطار الذي ستدرسه بعد ذلك وهو Next.js
- 7 اجابة
-
- 1
-
-
ندرس تحليل البيانات Data Analysis مُبكرًا لأننا سنحتاج ذلك في المسارات التالية، ولن نحتاج دراسة قواعد البيانات والـ APIs مُبكرًا، لذا الترتيب مناسب لمنهج الدورة. فلا يمكنك بناء أي موديل ذكاء اصطناعي بدون أن تعرف كيف تنظف البيانات وتعالجه، فذلك هو الأساس. ومجال الـ Computer Vision الحديث يعتمد بنسبة 90% على تقنيات الـ Deep Learning، والـ Deep Learning هو فرع متطور من الـ Machine Learning. لذا تستطيع دراسة الدورة بنفس الترتيب لترى النتيجة أي التطبيق العملي أولاً، مثل اكتشاف الأشياء باستخدام YOLO في البداية لتشعر بقوة المجال، ثم العودة للخلف لنشرح الأساسيات أي الرياضيات والخوارزميات في مسار ML و DL. أو الترتيب التالي لو أردت تعلم الأساسيات ثم التطبيق العملي: Machine Learning Deep Learning Computer Vision ولا مشكلة في تدريس الأساسيات النظرية أولاً أي التعلم العميق والشبكات العصبية، ثم الانتقال إلى البنى المتقدمة المبنية عليها كالـ Transformers. لكن الفكرة من إعادة الترتيب هو إتباع منهجية حديثة وهي من الأعلى إلى الأسفل أو التطبيق أولاً، وذلك بدلاً من المنهجية التقليدية من الأسفل إلى الأعلى أو النظرية أولاً. وذلك لتعلم كيفية قيادة السيارة وتحقيق بها نتائج ملموسة تطبيقات المحولات، ثم بعد أن يدرك الطلبة أهميتها وقوتها، سيتعلمون كيف يعمل محركها الداخلي أي التعلم العميق. بمعنى المحولات هي نوع من الشبكات العصبية، لكن استخدامها كأداة لا يتطلب بالضرورة فهم كل تفاصيلها النظرية المعقدة مسبقًا، تمامًا كما أنك تستخدم هاتفك الذكي كل يوم دون الحاجة لمعرفة تصميم أشباه الموصلات في معالجه. لذا الترتيب الجديد غرضه، تعليمك المهارات التطبيقية الأكثر طلبًا أولاً، وإبقائك متحفزة عبر بناء مشاريع حقيقية مبكرًا، وتأهيلك بشكل عملي لفهم النظرية لاحقًا بشكل أسهل وأكثر جدوى.
-
مواصفات الحاسوب منخفضة، لذا ستحتاج إلى تثبيت نظام Kali Linux بشكل منفصل على حاسوبك بجانب الويندوز.
-
بسبب بيئة AttackBox وهي البيئة الافتراضية داخل المتصفح والتي تعتمد على بث الفيديو إليك، بمعنى تتصل بحاسوب عن بُعد وبه نظام أبونتو كالتالي: وذلك يستهلك موارد الشبكة ويسبب بطئ، في حال الإنترنت لديك غير جيد أي السرعة بطيئة، أو في حال مواصفات الحاسوب منخفضة، وأحيانًا يكون السيرفر الذي تم تعيينه لك مزدحم، فقم بتجربة إغلاق الـ Machine والانتظار دقيقة ثم تشغيلها مرة أخرى للحصول على سيرفر جديد. أو بدلاً من استخدام الـ AttackBox، قم بتثبيت وتشغيل نظام Kali Linux على حاسوبك أنت واربطه بسيرفرات TryHackMe، لكن قبل شرح الخطوات، ما هي مواصفات حاسوبك؟ للتأكد من أنها تناسب تثبيت ثانوي بجانب ويندوز عن طريق مشغل أنظمة وهمية مثل VirtualBox أو VMware. ابحث عن system information في شريط البحث في الويندوز وتفقد المواصفات.
- 3 اجابة
-
- 1
-
-
لا مشكلة تستطيعي المتابعة من خلال الإصدار الأحدث، لكن الأفضل المتابعة بنفس إصدار بايثون المستخدم في الشرح لتجنب تعارض الإصدار مع إصدارات المكتبات المستخدمة بالدورة، وتستطيعي تثبيت 3.11 من هنا: https://www.python.org/ftp/python/3.11.6/python-3.11.6-amd64.exe وفيما بعد ستجدين أسفل فيديو الدرس في نهاية الصفحة صندوق تعليقات كما هنا، أرجو طرح الأسئلة أسفل الدرس وليس هنا في قسم أسئلة البرمجة حيث نطرح الأسئلة العامة الغير متعلقة بمحتوى الدورة أو الدرس، وذلك لمساعدتك بشكل أفضل.
-
في البداية الحفظ والاستيعاب مهمان، فمثلاً يجب حفظ كيف تقوم بكتابة حلقة تكرارية for وتستوعب آلية عملها وكيف نستخدمها، ولا مشكلة بعد ذلك لو نسيت بعض الأمور، وسيتثبت لديك ما تستخدمه بكثرة في المشاريع وتستطيع البحث عن بقية الأمور لأنك مستوعب لها. هناك فارق كبير بين أنك نسيت المعلومة مثل طريقة كتابة الـ syntax أو اسم دالة معينة مثلاً، وبين أنك لا تستطيع التنفيذ والتطبيق العملي وغير متذكر للخواص والدوال وإمكانيات اللغة البرمجية. فالجميع ينسى لا مشكلة في ذلك، الفكرة هي أنك مستوعب وقادر على التنفيذ فور البحث عما تريده حيث أنك متذكر أن هناك أمر معين في اللغة أو الإطار يقوم بذلك وهكذا. إذن النقطة الأهم هي الاستيعاب، فتطبيق بدون استيعاب يعني أنك لم تقم بالتطبيق من الأساس، في بداية التعلم الحفظ والاستيعاب مهمين لكن الأهم هو الأخير، فبدونه لا فائدة من الأول. لذا عند التطبيق اسأل نفسك، هل أنا متفهم لما أقوم به أم أنا اكتب خلف الشرح ليس أكثر؟ هل عند إيقاف الدرس ومحاولة تطبيق ما جاء به من البداية بمفردك ستتمكن من ذلك؟ وفي الحقيقة التطبيق مع الشرح ليس مفيد كثيرًا فيجب إيقاف الدرس ثم تطبيق ما جاء به بمفردك، ولو كان التنفيذ طويل قسمه إلى أجزاء، وليس نقل الكود من الدرس. وكل شخص له أسلوب يُناسبه في الدراسة، لكن المهم هو تجنب المشاهدة السلبية وتخصيص وقت أكبر للتطبيق العملي، فالبرمجة عبارة عن تفكير منطقي لحل مشكلة ثم تنفيذ ذلك من خلال كتابة الكود. بالنسبة لطريقة الدراسة البعض يُفضل كتابة مُلخصات لكل شيء، لكن لا أنصحك بذلك، اكتفي فقط بكتابة ملاحظات ومُلخصات ورسومات للأمور النظرية أو معلومة معينة تريد الإحتفاظ بها للعودة إليها للمراجعة. بينما البرمجة نفسها اكتفي بالتطبيق العملي فهو الأهم وبدونه فلا معنى للمُلخصات النظرية مهما كتبت، ببساطة لن تستطيع قيادة سيارة بمشاهدة فيديو صحيح؟ وحاول تجنب الإنقطاعات المتكررة خاصًة في البداية، حاول الدراسة بإنتظام بحد أدنى ساعتين يوميًا أو شبه يومي. ستجد تفصيل هنا:
- 3 اجابة
-
- 1
-
-
بدون الخوض في تفاصيل من شأنها إحباطك، مسألة الرزق أمر ثابت وغير قابل للشك بالنسبة للجميع، لذا كل ما عليك هو السعي، في حال ليس لديك شيء آخر تفعله غير البرمجة، فلا تشتت نفسك وركز تفكيرك على التعلم ولا تشغل بالك بأي أمر آخر. سبب ازدحام تخصص الواجهة الأمامية بنسبة كبيرة هو سهولة البدء من خلاله، بسبب السهولة النسبية في تعلم HTML, CSS, JS ولا أقصد احترافهم فذلك أمر آخر. بينما مجال مثل الواجهة الخلفية أو مجال تطوير تطبيقات الهاتف ليس بتلك السهولة، وذلك ما أنصحك به في الوقت الحالي والإختيار عائد لك، لكن في البداية ستحتاج إلى أن تكون Full-stack أي قادر على تنفيذ المشروع بشكل كامل بنفسك لزيادة فرص قبولك. أيضًا هناك مجالات أخرى كالذكاء الاصطناعي، الأمن السيبراني والحوسبة السحابية.
- 3 اجابة
-
- 1
-
-
ما الغرض من تعلم الواجهة الخلفية؟ هل لتنفيذ مشروع خاص بكِ أم لدخول سوق العمل؟ في حال لدخول سوق العمل فيجب إجراء بحث واستكشاف اللغات والتقنيات المطلوبة في سوق العمل في بلدك بالنسبة لوظيفة مطور واجهة خلفية ثم تعلم المطلوب وليس البدء في تعلم لغة مثل بايثون دون إجراء بحث. وعامًة الواجهة الخلفية ليس لها علاقة بالواجهة الأمامية، تستطيعين تعلم أحدهم دونّ الآخر، لكن سوق العمل يتطلب أن تتعلمي كلاهما أي مطور Full-stack. ولو أردتي التعلم من خلال لغة بايثون، فالواجهة الخلفية تتم من خلال إطار جانغو بالنسبة للمشاريع المتوسطة والكبيرة، وإطار فلاسك أو fast API للمشاريع الصغيرة.
-
أنت حاليًا في مرحلة انتقالية مهمة لأنك تجاوزت الأساسيات وتدخل في بناء الأنظمة، ومشروع Social Media صعب وليس برمجياً فقط، بل معماريًا بسبب العلاقات المعقدة في قاعدة البيانات وكذلك الخوارزمية اللازمة لمنطق صفحة الـ News Feed. ابدأ من خلال مشروع نظام تتبع طلبات مطعم يحاكي أنظمة مثل Uber Eats أو طلبات المطاعم الداخلية. المطلوب واجهة للعميل للطلب، واجهة للمطبخ وواجهة للكاشير، وهو أسهل من مشروع Social Media لأنّ دورة حياة البيانات محددة (طلب ثم قيد التحضير ثم جاهز ثم تم التسليم). وبالنسبة للـ Real-Time فهنا التحدي، المطلوب عندما يطلب العميل، يجب أن يظهر الطلب في شاشة المطبخ فورًا بصوت تنبيه، ثم عند تغيير الطباخ الحالة لجاهز، يظهر إشعار عند العميل في الحال. وسيتعين عليك التفكير في إدارة الأدوار والصلاحيات أي كيف تمنع العميل من رؤية شاشة المطبخ؟ وإليك مصطلحات للبحث عنها كمساعدة، Role-Based Access Control (RBAC), Live Notifications, Sound Handling in React.
-
عليك بالجمع بين النوعين من خلال تخصيص Serial Integer ليكون Primary Key الداخلي مع إنشاء حقل إضافي من نوع UUID للاستخدام في الروابط الخارجية URLs،لتحسين أداء العمليات المتعلقة بالفهرسة وسرعة الربط بين الجداول Joins، وبذلك يتميز فيه الرقم المتسلسل بكونه يشغل مساحة تخزينية أقل داخل الذاكرة مقارنة بالمعرفات الطويلة، وتوفير طبقة أمنية تحمي البيانات من هجمات التخمين التي قد تحدث في حال كانت المعرفات متسلسلة في الواجهة العامة. أي دالة تستقبل UUID من طلب الـ HTTP ثم تقوم بالاستعلام عن السجل المرتبط به، والذي يمكن تحسينه من خلال عمل Caching للمفتاح المتسلسل المقابل لذلك الـ UUID لتقليل ضغط الاستعلامات المتكررة. أيضًا ستتمكن من تغيير المعرفات العامة مستقبلاً دون التأثير على العلاقات الداخلية بين الجداول. وللعلم هناك إصدار جديد UUID v7 يجمع بين الزمن Timestampوبين العشوائية، أي متسلسلاً بطبعه، ولو استخدمت ذلك الإصدار فتستطيع الإعتماد عليه كـ Primary Key وحيد مباشرة دون الحاجة لـ Serial ID، لأنه يحل مشكلة بطء الفهرسة التي كانت موجودة في UUID v4 القديم.
- 3 اجابة
-
- 1
-
-
طبيعة تخصص ميكاترونكس تتطلب تكامل دقيق بين المكونات المادية والأنظمة البرمجية الذكية، لذا الأفضل دراسة مسار Electrical Engineering لأنّ الهندسة الكهربائية ستوفر لكِ الأساس الفيزيائي والرياضي العميق لفهم الدوائر الإلكترونية وأنظمة التحكم الآلي Automatic Control والتي تمثل أساس أي نظام ميكانيكي متحرك، وستتمكنين من استيعاب مفاهيم الإشارات والأنظمة وتصميم المعالجات الدقيقة Embedded Systems بشكل يصعب تعويضه لاحقًا في الماجستير في حال كان التخصص الأساسي برمجي بحت. ثم تأتي مرحلة الماجستير فيما بعد في الذكاء الاصطناعي لتعلم مهارات تحليل البيانات وبناء شبكات عصبية وتطوير خوارزميات التعلم الآلي وبذلك تمتلكين القدرة على تصميم الآلة وأيضًا منحها الذكاء الكافي للعمل بشكل مستقل، فالمهندس الذي يفهم خصائص الحساسات والمشغلات الميكانيكية يكون أقدر على توظيف خوارزميات الذكاء الاصطناعي لتحقيق استجابة دقيقة وسريعة في البيئة الفيزيائية المحيطة.
- 2 اجابة
-
- 1
-
-
الأمر ليس بتلك السهولة، يوجد مجتمع قائم بالفعل للمطورين في مختلف منصات التواصل الإجتماعي مثل منصة x.com أي تويتر سابقًا، لكن التركيز الخاص بالمنصة ليس مُنصب على المطورين فقط بل هي منصة تواصل عامة. لذا مشروعك جيد بشرط التخصيص والتركيز على الإحتياج الأهم، أي لا تجعل الدردشة هي المنتج الأساسي، بل اجعل تقييم المشاريع هو الأساس لجذب المستخدمين الباحثين عن تطوير مهاراتهم. وقم بتطوير أدوات مجانية لفحص الكود وتوفير تقييم لجذب الزيارات قبل تكوين المجتمع. وتجنب مشكلة الغرف الفارغة والتي تعطي إنطباع سئ عبر جدولة فعاليات دردشة حية خلال ساعات ذروة وربط النقاشات مباشرة بسياق الكود. وابنِ نظام سمعة مهنية يمنح المطورين شارات ونقاط بناءًا على جودة مساعدتهم للآخرين، لخلق بيئة تكافلية. وفيما بعد اعتمد على نماذج مثل المراجعات المدفوعة من الخبراء وبيع بيانات التوظيف للشركات، بدلاً من الاعتماد على الإعلانات فقط.
-
نعتذر لك عن أي إنزعاج واجهته أثناء تواجدك بالأكاديمية، بخصوص مُشغل الفيديو فقد تم ذكر أنه يتم العمل على مُشغل مُخصص بالفعل مع ميزات أفضل. وبخصوص متابعة تقدمك بالدورة، ففي الوقت الحالي تستطيع استخدام قالب notion التالي من أجل تنظيم ومتابعة تقدمك الدراسي بالدورات: Course Planner, Schedule & Learning Progress ستقوم بتعديل أسماءء الـ topics بأسماء المسارات الخاصة بالدورة هنا، ثم إضافة الدروس وعند الإنتهاء من درس تُحدده كمُنتهي. أو تستطيع استخدام google keep أو Todoist لتنفيذ نفس الأمر.
-
من حيث جودة التصميم فالموقع جيد جدًا، بالنسبة للأداء، فهناك مشكلة في حجم الصور، وبالأخص في قسم المشاريع، حجم الصور كبير، لذا عليك تعديل الصيغة لجميع الوصور إلى WebP. كذلك يوجد مشكلة في التنقل بين الصفحات، قم بالتوجه إلى أي صفحة ولتكن صفحة المشاريع ثم تنفيذ تحديث للصفحة سيظهر لك خطأ Page Not Found. وللتوضيح عند التتنقل داخل الموقع بالضغط على الأزرار، تتولى مكتبة React Router عملية التنقل دون تحميل الصفحة من الخادم، بالضغط على زر تحديث وأنت في صفحة /about مثلاً، يقوم المتصفح بطلب ملف اسمه about من سيرفر Netlify، ولكن الملف غير موجود فعليًا لأن موقعك كله عبارة عن ملف index.html واحد، فيظهر خطأ 404. لذا في مجلد public داخل المشروع أنشئ ملف جديد باسم: _redirects ويجب أن يبدأ الاسم بـ Underscore بدون أي صيغة، أي ليس .txt أو .html، فقط redirects_ وافتح الملف واكتب فيه السطر التالي فقط: /* /index.html 200 والحل السابق متعلق باستضافة Netlify، لكن الاستضافات الأخرى لها حل مختلف، بمعنى استضافات shared hosting مثل GoDaddy وخلافه تعتمد على خادم Apache، وهنا يجب إنشاء ملف باسم htaccess. داخل المجلد الذي يحتوي على ملفات الموقع وهو public_html، وضع به الكود التالي: <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.html$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.html [L] </IfModule>
- 1 جواب
-
- 1
-
-
شكرًا على إهتمامك، يتم تحديث محتوى دورة الذكاء الاصطناعي بشكل مُكثف كل فترة بسبب التغييرات التي تحدث بشكل متسارع في ذلك المجال، في الوقت الحالي تستطيع تنفيذ ما تريد من خلال مكتبة unsloth، ابحث على اليوتيوب عن Fine Tune DeepSeek R1 ونفس الأمر للنماذج الأخرى ما عدا Gemini فالأمر يتم من خلال Google AI Studio كما في openai ، ابحث عن Fine tuning Gemini with Google AI Studio
- 1 جواب
-
- 1
-
