🔥 هو أنا ليه أتعلم Data Structures & Algorithms؟
خلّيني أقولك الحقيقة بصراحة…
لو إنت مش فاهم داتا استركشر والجوريزم كويس،
فإنت غالبًا بتكتب كود… مش بتفهمه
🏠 تخيل معايا إنك بتبني بيت…
البرمجة = طوب + أسمنت + حديد
لكن Data Structures & Algorithms = الخطة الهندسية 💡
❌ من غيرها؟
هتبني… بس:
ببطء
بتكلفة أعلى
وممكن يقع فوق دماغك 😅
⚠️ نفس الكلام في البرمجة:
تقدر تكتب كود “شغال”…
بس:
بطيء 🐢
معقد 🤯
بيستهلك Memory كتير 💾
🚀 لكن لما تفهم داتا استركشر والجوريزم صح:
✔️ تحل نفس المشكلة بأكتر من طريقة
✔️ تختار أسرع حل مش أول حل
✔️ تكتب كود scalable (يستحمل داتا كبيرة)
✔️ تبقى فاهم إنت بتعمل إيه… مش ماشي بالبركة
⏳ وده بيربطك مباشرة بـ:
Time & Space Complexity
💡 لأنك مش بتكتب كود “يشتغل وخلاص”
إنت بتكتب كود:
سريع ⚡️
ذكي 🧠
بيستخدم الموارد صح
🔥 وده كمان… أهم مما تتخيل:
بيخليك تعدي أي Technical Interview بسهولة
بيفرق بين Junior و Senior بجد
بيخليك تحل مشاكل حقيقية مش بس Tasks
بيفتحلك أبواب في مجالات زي:
AI – Backend – Competitive Programming
🎯 الخلاصة:
البرمجة من غير داتا استركشر والجوريزم =
عامل معاه أدوات… بس مش عارف يبني بيها صح
لكن مع داتا استركشر والجوريزم =
مهندس فاهم بيبني بأقل تكلفة وأعلى كفاءة 💪 وده المطلوب ف السوق
💬 سؤال ليك:
إيه أصعب حاجة قابلتك في Data Structures لحد دلوقتي؟ Stack؟ Queue؟ ولا Algorithms؟ 🤔
خلّيني أقولك الحقيقة بصراحة…
لو إنت مش فاهم داتا استركشر والجوريزم كويس،
فإنت غالبًا بتكتب كود… مش بتفهمه
🏠 تخيل معايا إنك بتبني بيت…
البرمجة = طوب + أسمنت + حديد
لكن Data Structures & Algorithms = الخطة الهندسية 💡
❌ من غيرها؟
هتبني… بس:
ببطء
بتكلفة أعلى
وممكن يقع فوق دماغك 😅
⚠️ نفس الكلام في البرمجة:
تقدر تكتب كود “شغال”…
بس:
بطيء 🐢
معقد 🤯
بيستهلك Memory كتير 💾
🚀 لكن لما تفهم داتا استركشر والجوريزم صح:
✔️ تحل نفس المشكلة بأكتر من طريقة
✔️ تختار أسرع حل مش أول حل
✔️ تكتب كود scalable (يستحمل داتا كبيرة)
✔️ تبقى فاهم إنت بتعمل إيه… مش ماشي بالبركة
⏳ وده بيربطك مباشرة بـ:
Time & Space Complexity
💡 لأنك مش بتكتب كود “يشتغل وخلاص”
إنت بتكتب كود:
سريع ⚡️
ذكي 🧠
بيستخدم الموارد صح
🔥 وده كمان… أهم مما تتخيل:
بيخليك تعدي أي Technical Interview بسهولة
بيفرق بين Junior و Senior بجد
بيخليك تحل مشاكل حقيقية مش بس Tasks
بيفتحلك أبواب في مجالات زي:
AI – Backend – Competitive Programming
🎯 الخلاصة:
البرمجة من غير داتا استركشر والجوريزم =
عامل معاه أدوات… بس مش عارف يبني بيها صح
لكن مع داتا استركشر والجوريزم =
مهندس فاهم بيبني بأقل تكلفة وأعلى كفاءة 💪 وده المطلوب ف السوق
💬 سؤال ليك:
إيه أصعب حاجة قابلتك في Data Structures لحد دلوقتي؟ Stack؟ Queue؟ ولا Algorithms؟ 🤔
❤2
سؤال اليوم
"كيف يمكنك دعم إخوانك الأسرى بحسب خبرتك وموقعك؟"
إجابتك تُهِمُنا.
"كيف يمكنك دعم إخوانك الأسرى بحسب خبرتك وموقعك؟"
إجابتك تُهِمُنا.
👍3
في التعليم، لا يوجد شيء اسمه "كم أنهيت"،
بل يوجد شيء واحد فقط: "كم استفدت".
قد تُنهي عشرات الكورسات دون أن تتغير،
وقد تحصل على شهادات دون ان تفهم
وقد تتعلم فكرة واحدة فتغيّر مسارك بالكامل.
العبرة ليست بالكم… بل بالأثر.
بل يوجد شيء واحد فقط: "كم استفدت".
قد تُنهي عشرات الكورسات دون أن تتغير،
وقد تحصل على شهادات دون ان تفهم
وقد تتعلم فكرة واحدة فتغيّر مسارك بالكامل.
العبرة ليست بالكم… بل بالأثر.
❤5👏1
سؤال في العمق !
- لدينا مهمة عمل منصة لتحليل الخوارزميات بحيث يدخل المستخدم خوارزمية بلغة برمجة ويقوم النظام بتحليلها واكتشاف التعقيد والمساحة التي تستهلكها الخوارزمية - ان امكن - (complexity and Space)
- اكتب خطوات خوارزمية تقوم بتحليل واكتشاف الBig O لكود برمجي ؟
- لدينا مهمة عمل منصة لتحليل الخوارزميات بحيث يدخل المستخدم خوارزمية بلغة برمجة ويقوم النظام بتحليلها واكتشاف التعقيد والمساحة التي تستهلكها الخوارزمية - ان امكن - (complexity and Space)
- اكتب خطوات خوارزمية تقوم بتحليل واكتشاف الBig O لكود برمجي ؟
Forwarded from مصعب خنيجر | Musab Khunaijir
بدون حرارة النار ما حتعرف برودة المويه
بدون القديم ما حتعرف قيمة الجديد
و بدون الـ bad/spaghetti code نا حتعرف الـ clean code
المهم انك ما تستعجل و تاخد المواضيع واحدة واحدة
و استمتع بي كل مرحلة و اديها حقها عشان في الآخر لما يشوفك فاهم و شاطر .. ببساطة بترد:
ما كسلت و كملت و كل مرحلة اخدت حقها بعد توفيق ربنا
#خنيجر #كارير
بدون القديم ما حتعرف قيمة الجديد
و بدون الـ bad/spaghetti code نا حتعرف الـ clean code
المهم انك ما تستعجل و تاخد المواضيع واحدة واحدة
و استمتع بي كل مرحلة و اديها حقها عشان في الآخر لما يشوفك فاهم و شاطر .. ببساطة بترد:
ما كسلت و كملت و كل مرحلة اخدت حقها بعد توفيق ربنا
#خنيجر #كارير
سوال اليوم: انت كمبرمج باك اند ماهي الendpoint التي يجب ان توفرها لعملية الauthntecation ?
Problem solving
سوال اليوم: انت كمبرمج باك اند ماهي الendpoint التي يجب ان توفرها لعملية الauthntecation ?
auth/signup
auth/login
auth/rest-password
auth/verfy-code
auth/change-password
auth/login
auth/rest-password
auth/verfy-code
auth/change-password
سؤال اليوم
بما انه انتشرت في الآونة الاخيرة رساىل سبام مزعجة (سكليف واعذار طبية), ماهي الخوارزميات التي يمكننا وضعها في بوت لحل هذه المشكلة ؟
بما انه انتشرت في الآونة الاخيرة رساىل سبام مزعجة (سكليف واعذار طبية), ماهي الخوارزميات التي يمكننا وضعها في بوت لحل هذه المشكلة ؟
ماذا تعلمت من خريطة ProgrammingAdvices.com كورس 3:
Enum يفرق معك أكثر مما تتوقع
الصراحة من الدروس اللي شكلها بسيط لكن فعلياً يفرق في نظافة الكود بشكل كبير
بالبداية كنت أتعامل مع الأرقام مباشرة
0 يعني شيء 1 يعني شيء 2 يعني شيء
المشكلة؟
بعد فترة تجي تقرأ الكود وتلقى شرط مثل: if (x == 2)
وتقعد تقول: وش يعني 2 هنا؟ وليش اخترته؟
وتبدأ رحلة البحث داخل الملفات ويمكن حتى تغيّر شي وانت ما تدري وش أثره
Enum يفرق معك أكثر مما تتوقع
الصراحة من الدروس اللي شكلها بسيط لكن فعلياً يفرق في نظافة الكود بشكل كبير
بالبداية كنت أتعامل مع الأرقام مباشرة
0 يعني شيء 1 يعني شيء 2 يعني شيء
المشكلة؟
بعد فترة تجي تقرأ الكود وتلقى شرط مثل: if (x == 2)
وتقعد تقول: وش يعني 2 هنا؟ وليش اخترته؟
وتبدأ رحلة البحث داخل الملفات ويمكن حتى تغيّر شي وانت ما تدري وش أثره
هنا يجي دور الـ Enum
فكرته بسيطة: بدل ما تستخدم أرقام تستخدم أسماء واضحة تعبر عن المعنى
يعني بدل:
0 = شمال
1 = جنوب
تكتب:
North
South
كذا الكود يصير مفهوم بدون ما تكتب شرح وهذا اللي يسمونه self documented
ومن أكثر الأشياء اللي فرق معي فعلاً:
- وانت تكتب يطلع لك قائمة جاهزة بالخيارات
- ما تغلط في الكتابة وما تحتاج تحفظ القيم
- ولما تستخدمه في الشروط تقارن باسم مفهوم بدل رقم مبهم
وبرضه ميزة حلوة: الـ Enum يعطي كل عنصر رقم تلقائياً يبدأ من 0
ولو احتجت تقدر تحدد الأرقام بنفسك
مثلاً تعطي قيمة 100 لشيء معين و300 لشيء ثاني
استخداماته كثيرة: الاتجاهات، أيام الأسبوع، الحالات، الألوان، أو أي شيء خياراته محددة
بس انتبه لنقطة مهمة جداً: Enum يعتبر read only
يعني القيم ثابتة وما تقدر تغيرها وقت التشغيل
لو ما فهمت هذي النقطة بتتعب وانت تستخدمه
الخلاصة: Enum مو بس اختصار هو طريقة تخلي كودك مفهوم من نفسه
فكرته بسيطة: بدل ما تستخدم أرقام تستخدم أسماء واضحة تعبر عن المعنى
يعني بدل:
0 = شمال
1 = جنوب
تكتب:
North
South
كذا الكود يصير مفهوم بدون ما تكتب شرح وهذا اللي يسمونه self documented
ومن أكثر الأشياء اللي فرق معي فعلاً:
- وانت تكتب يطلع لك قائمة جاهزة بالخيارات
- ما تغلط في الكتابة وما تحتاج تحفظ القيم
- ولما تستخدمه في الشروط تقارن باسم مفهوم بدل رقم مبهم
وبرضه ميزة حلوة: الـ Enum يعطي كل عنصر رقم تلقائياً يبدأ من 0
ولو احتجت تقدر تحدد الأرقام بنفسك
مثلاً تعطي قيمة 100 لشيء معين و300 لشيء ثاني
استخداماته كثيرة: الاتجاهات، أيام الأسبوع، الحالات، الألوان، أو أي شيء خياراته محددة
بس انتبه لنقطة مهمة جداً: Enum يعتبر read only
يعني القيم ثابتة وما تقدر تغيرها وقت التشغيل
لو ما فهمت هذي النقطة بتتعب وانت تستخدمه
الخلاصة: Enum مو بس اختصار هو طريقة تخلي كودك مفهوم من نفسه
❤2
منهجية التعامل الذكي مع الذكاء الاصطناعي (AI):
1. ابدأ بالمحاولة الذاتية (Try)
حاول حل المشكلة بنفسك لمدة 15 دقيقة أولًا لبناء فهم حقيقي.
2. تقبّل الفشل كجزء من التعلم (Fail)
الفشل هنا خطوة طبيعية تساعدك على اكتشاف نقاط الضعف.
3. اطلب المساعدة من الذكاء الاصطناعي (Ask AI)
استخدمه لطرح الأسئلة، توضيح الأفكار، أو تصحيح المسار.
4. أعد المحاولة وطبّق ما تعلمته (Retry)
ارجع للمشكلة وجرّب مرة أخرى مستفيدًا من المساعدة.
الخلاصة:
تعامل مع الذكاء الاصطناعي كشريك تفكير يساعدك على الفهم والتطوير، وليس كأداة تختصر عليك التفكير.
1. ابدأ بالمحاولة الذاتية (Try)
حاول حل المشكلة بنفسك لمدة 15 دقيقة أولًا لبناء فهم حقيقي.
2. تقبّل الفشل كجزء من التعلم (Fail)
الفشل هنا خطوة طبيعية تساعدك على اكتشاف نقاط الضعف.
3. اطلب المساعدة من الذكاء الاصطناعي (Ask AI)
استخدمه لطرح الأسئلة، توضيح الأفكار، أو تصحيح المسار.
4. أعد المحاولة وطبّق ما تعلمته (Retry)
ارجع للمشكلة وجرّب مرة أخرى مستفيدًا من المساعدة.
الخلاصة:
تعامل مع الذكاء الاصطناعي كشريك تفكير يساعدك على الفهم والتطوير، وليس كأداة تختصر عليك التفكير.
❤2
vالسلام عليكم ،
لي فترة طويلة بستخدم نظام Linux داخل بيئات وهمية (VMware)، والسبب ببساطة كان الخوف.. الخوف من فقدان ملفاتي على Windows أو حدوث خطأ أثناء التثبيت. لكن اليوم، قررت كسر الحاجز ده وتثبيت Ubuntu كنظام أساسي بجانب ويندوز (Dual Boot).
كمبرمج ومهتم بمجالات الـ Cloud, Servers, AWS، أدركت أنو الخطوة دي ما مجرد "رفاهية"، بل حاجة ضرورية. التعامل مع لينكس يجعلك تفهم تفاصيل تقنية دقيقة كانت مخفية عنك؛ الشعور فعلياً يشبه "الخروج من السجن إلى الحرية".
لي لينكس هو الخيار الأول ؟
الحرية المطلقة: نظام مفتوح المصدر (Open Source) يعطيك التحكم الكامل في كل تفصيلة.
الأداء المثالي: إذا كان لديك جهاز بمواصفات متواضعة، لينكس سيعيد له الحياة ويستغل كل خلية في المعالج.
لغة السيرفرات: الغالبية العظمى من سيرفرات الويب والـ Cloud مدعومة بالكامل بنواة لينكس، فالتدرب عليه هو تدريب على بيئة العمل الحقيقية.
سعيد جداً بهذه الخطوة، وبدأت بالفعل ألمس سلاسة التعامل ومنطقية النظام في إدارة الموارد. نصيحة لكل زميل مبرمج: لا تكتفِ بالـ VM، جرب التجربة الكاملة، فالطريق إلى الـ Cloud يبدأ من الـ Terminal
لي فترة طويلة بستخدم نظام Linux داخل بيئات وهمية (VMware)، والسبب ببساطة كان الخوف.. الخوف من فقدان ملفاتي على Windows أو حدوث خطأ أثناء التثبيت. لكن اليوم، قررت كسر الحاجز ده وتثبيت Ubuntu كنظام أساسي بجانب ويندوز (Dual Boot).
كمبرمج ومهتم بمجالات الـ Cloud, Servers, AWS، أدركت أنو الخطوة دي ما مجرد "رفاهية"، بل حاجة ضرورية. التعامل مع لينكس يجعلك تفهم تفاصيل تقنية دقيقة كانت مخفية عنك؛ الشعور فعلياً يشبه "الخروج من السجن إلى الحرية".
لي لينكس هو الخيار الأول ؟
الحرية المطلقة: نظام مفتوح المصدر (Open Source) يعطيك التحكم الكامل في كل تفصيلة.
الأداء المثالي: إذا كان لديك جهاز بمواصفات متواضعة، لينكس سيعيد له الحياة ويستغل كل خلية في المعالج.
لغة السيرفرات: الغالبية العظمى من سيرفرات الويب والـ Cloud مدعومة بالكامل بنواة لينكس، فالتدرب عليه هو تدريب على بيئة العمل الحقيقية.
سعيد جداً بهذه الخطوة، وبدأت بالفعل ألمس سلاسة التعامل ومنطقية النظام في إدارة الموارد. نصيحة لكل زميل مبرمج: لا تكتفِ بالـ VM، جرب التجربة الكاملة، فالطريق إلى الـ Cloud يبدأ من الـ Terminal