
Should You Still Become a Software Engineer in 2026? GitHub VP
مشاهدة الحلقة الأصليةالزبدة في دقائق
الأقسام مرتّبة لتقرأ الفكرة الكبرى أولاً، ثم التفاصيل العملية والاقتباسات والمفاهيم.
يستحق هذا اللقاء وقتك لأنه يقدم رؤية واقعية وعميقة خالية من المبالغات التسويقية حول مستقبل هندسة البرمجيات في عصر الذكاء الاصطناعي. من خلال خبرة سكوت هانسلمان الممتدة لعقود، ستتعلم كيف تحول أدوات الذكاء الاصطناعي إلى مساعدين شخصيين يزيدون من إنتاجيتك دون أن تفقد مهاراتك الإبداعية أو تقع في فخ مدفع الهراء البرمجي. يمنحك هذا الملخص خارطة طريق عملية للتركيز على أساسيات البرمجة، وفهم كيفية بناء مشاريع حقيقية تبرز جدارتك في سوق العمل، بالإضافة إلى استكشاف فلسفة مبتكرة لإدارة الوقت والطاقة البشرية والتعاون بين المبرمجين المبتدئين والمحترفين.
الفكرة الكبرى هي أن الذكاء الاصطناعي مجرد أداة قوة جديدة لا تغير من جوهر الحرفة البرمجية، حيث تظل المسؤولية الكبرى في التفكير المعماري، والتصميم المنهجي، والتواصل البشري ملقاة بالكامل على عاتق المهندس البشري.
الرسالة الجوهرية التي يسعى المتحدث لإيصالها هي ضرورة الحفاظ على التوازن الإنساني والعودة إلى الأساسيات البرمجية المتينة، مع التحذير من الانهيار المهني إذا توقفت الشركات عن تدريب وتوظيف المطورين المبتدئين؛ فالأدوات تتطور لكن الإدارة الهندسية الواعية والتفكير النقدي البشري هما أساس استدامة التكنولوجيا وتطورها.
يبدأ سكوت هانسلمان بالحديث عن تاريخ الهلع التكنولوجي، موضحا أن المبرمجين واجهوا مخاوف مماثلة في كل التحولات السابقة مثل الانتقال من لغة التجميع إلى اللغات عالية المستوى، ثم إدخال الألوان في الكود، وميزات الإكمال التلقائي، وموقع Stack Overflow. ويؤكد أن الذكاء الاصطناعي يمثل عصر الذعر الرابع لكنه لا يغير من جوهر الحرفة؛ فالذكاء الاصطناعي لا يولد معمارية برمجية سليمة بل يميل إلى إنتاج كود ضخم وفوضوي يعرف بـ كائنات الآلهة. يوضح سكوت أنه يستخدم الذكاء الاصطناعي لتوليد نحو 70% من كوده البرمجي، لكنه يعالجه عبر دورة حياة تطوير البرمجيات الصارمة، ويتعامل معه كمطور مجهول لا يمكن الوثوق بكوده دون مراجعة واختبار دقيقين. يستعرض سكوت تطبيق Hansel projects today الذي يستخدمه لإدارة طاقته النفسية والبدنية اليومية، حيث يساعده مساعد ذكاء اصطناعي مخصص في ترتيب مهامه بناء على طاقته ومستوى السكر في دمه كونه مصابا بالسكري من النوع الأول. يطرح سكوت قضية مصيرية وهي خطورة توقف الشركات عن توظيف المطورين المبتدئين، محذرا من انهيار المهنة إذا لم يتم إعداد جيل جديد من الخبراء. ويقترح تبني نموذج المرشد البرمجي المستوحى من قطاع التمريض بدلا من فكرة التدريب التقليدي الهشة، كاشفا عن سعي مايكروسوفت لتصميم برامج تدريبية ونماذج ذكاء اصطناعي مخصصة لدعم المطورين المبتدئين. في نصيحته للراغبين في دخول المجال، يشدد على التمكن الكامل من الأساسيات مثل بروتوكولات HTTP وDNS والأنظمة الموزعة، والابتعاد عن تكرار المشاريع التقليدية مثل ألعاب إكس أو أو استنساخ لعبة ماينكرافت بطلبات بسيطة، داعيا لبناء مشاريع حقيقية تخدم المجتمعات وتكشف عن شغف ومسؤولية حقيقية. يستعرض سكوت مشروع Tiny Tool Town الذي يضم مئات الأدوات البسيطة دون الحاجة لقواعد بيانات معقدة، مروجا لتبسيط البنى التحتية للمواقع والاعتماد على الملفات الثابتة لتسريع الأداء وتقليل التكاليف. يختتم اللقاء بفقرة الأسئلة السريعة حيث ينصح بدراسة هندسة البرمجيات، ويصف اللغة الإنجليزية بأنها جافا سكريبت اللغات البشرية لضرورة إتقانها، ويعبر عن دعمه للمقابلات القائمة على اللوح الأبيض لكونها تبرز طريقة تفكير المرشح، مؤكدا تفاؤله بأن الذكاء الاصطناعي لن يحل محل المطورين بل سيمكنهم من الإبداع.
- 1
Where are the seniors coming from?
- 2
How do you think this transition is compared to previous ones?
- 3
What percentage would you say is AI assistant in your workflow?
- 4
Does that make sense?
- 5
Why am I making this?
- 6
Am I solving the problem?
- 7
And am I doing it in a healthy way?
- 8
Did the AI do the right thing?
- 9
Was it the anonymous person's fault, or was it your fault for clicking squash merge?
- 10
What type of projects are you working on?
- 11
So, people who are extensively using the AI tools for coding, what's your advice for best practices?
- 12
How are they supposed to learn to code with AI tools?
- 13
What does DNS stand for again?
- 14
Oh, what are we Where are we hiring these kids?
- 15
Should a junior and a senior interact with the same model in the same way?
- 16
Where is the next generation going to come from, right?
- 17
Does that worry you?
- 18
So if you were back in your 20s starting all over again, what would you do if you wanted to land a job tomorrow? Maybe not tomorrow, maybe let's say 12 months.
- 19
What could I do to be a more effective user of tokens?
- 20
How can I save money?
- 21
And how can I be a better programmer?
- 22
Do you think juniors who are working on personal projects like this, would that help them also land jobs?
- 23
What do you mean you one-shotted Minecraft?
- 24
What was the prompt?
- 25
Do you think you could make me a clone of Minecraft except you're not allowed to use the word Minecraft?
- 26
How freaking cool is that?
- 27
What is real time?
- 28
Once an hour?
- 29
What database do you think my blog runs on?
- 30
How much memory do you think that this takes up?
- 31
How do you manage your time?
- 32
Is that your actual studio?
- 33
How do you manage it?
- 34
How many do we have?
- 35
Are you ready for this?
- 36
Generalist or specialist?
- 37
Should we study computer science or AI?
- 38
What's the one language everyone should learn?
- 39
One AI tool developers should try out?
- 40
Whiteboard interviews, are they useful or outdated?
- 41
What's the most exciting thing happening in tech right now?
- 42
Will AI replace software engineers?
تاريخ الهلع التقني المتعاقب ونظرة متوازنة للذكاء الاصطناعي كأداة تمكين
يستعرض سكوت هانسلمان تاريخ تطور هندسة البرمجيات منذ ثمانينيات القرن الماضي وحتى الآن، مبيناً أن الصناعة تمر بموجات هلع دورية مع كل تحول تقني كبير، سواء كان ذلك مع ظهور الويب، الهواتف المحمولة، السحابية، أو الذكاء الاصطناعي حالياً. يسرد هانسلمان تجاربه الشخصية عندما قيل له في بداياته أنه ليس مبرمجاً حقيقياً لأنه لا يكتب بلغة التجميع (Assembler)، ثم الهلع الذي صاحب إدخال ميزة تلوين الأكواد (Syntax Highlighting) بزعم أنها ستفسد عقول المبرمجين وتضعفهم، وصولاً إلى ظهور موقع Stack Overflow الذي اعتبره الكثيرون نهاية البرمجة الفعلية والاعتماد الكلي على النسخ واللصق. ومن هذا المنطلق التاريخي، يدعو هانسلمان إلى تبني نظرة إيجابية وعقلانية تجاه الذكاء الاصطناعي؛ فهو لا يراه تهديداً وجودياً بل مجرد «أداة قوة» (Power Tool) متطورة تُضاف إلى ترسانة المبرمج، مثلها مثل التلوين أو الإكمال التلقائي، مؤكداً أن وجود أدوات البناء الحديثة والآلية لا يلغي أبداً حاجة العالم للمهندسين الحرفيين المبدعين القادرين على صياغة برمجيات متميزة وبنية تحتية متقنة.
إدماج الذكاء الاصطناعي في دورة حياة البرمجيات ومخاطر غياب البنية المعمارية
يكشف هانسلمان عن أن حوالي 70% من الأكواد التي يكتبها حالياً معززة بالذكاء الاصطناعي، ولكنه يحذر من الانجراف وراء ما يصفه بـ «اهتزازات الحماس الأعمى» أو «مدفع الهراء» (Slop Cannon) الذي يفرز أكواداً عشوائية ومفرطة في الضخامة دون تخطيط برمي موجه. يؤكد هانسلمان أن الذكاء الاصطناعي يفتقر تماماً إلى القدرة على تصميم وتوليد البنية المعمارية للأنظمة (Architecture)، ويميل بدلاً من ذلك إلى إنشاء كائنات ضخمة معقدة وفوضوية (God Objects). لتفادي هذه المشاكل، يشدد على ضرورة إخضاع جميع المخرجات المولدة بالذكاء الاصطناعي لنفس المعايير والمسارات الصارمة في دورة حياة تطوير البرمجيات (SDLC)، بما في ذلك الفحص الآلي، التوقيع الرقمي، الاختبارات الصارمة، واستخدام أدوات مثل (GitHub Actions) و(Dependabot). ويشبه التعامل مع الذكاء الاصطناعي بالتعامل مع مبرمج مجهول على الإنترنت يرسل طلب دمج (PR)؛ حيث يتعين على المطور البشري تبني مبدأ «الثقة مع التحقق والتدقيق المستمر»، وتحمل المسؤولية الكاملة عن جودة وسلامة الكود النهائي أمام المستخدمين، لأن الآلة ليست هي من تضغط في النهاية على زر الدمج والاعتماد بل الإنسان.
الخطر الوجودي لغياب المطورين المبتدئين وأهمية منهجية التوجيه والتدريب
يطلق هانسلمان تحذيراً استراتيجياً مبنياً على ورقة بحثية نشرها في رابطة مكائن الحوسبة (ACM)، مفاده أن مهنة هندسة البرمجيات برمتها مهددة بالانهيار التام على المدى الطويل إذا استمرت الشركات في العزوف عن توظيف المطورين المبتدئين والتركيز فقط على ذوي الخبرة، متسائلاً بوضوح عن مصدر كبار المهندسين في المستقبل إذا تم تدمير خطوط التأهيل الحالية. ينتقد بشدة الثقافة السائدة التي تعامل المتدربين والمبتدئين بنوع من الدونية وتقليل الشأن نتيجة نقص سياق العمل لديهم. ويقترح هانسلمان نقل نموذج قطاع التمريض الطبي إلى هندسة البرمجيات، وهو مفهوم «الموجه والمدرب الآمن» (Preceptor)، حيث يتم تسمية كبار المهندسين رسمياً كمدربين وتدريبهم على خلق بيئة تعليمية حاضنة وغير مخيفة تتيح للمبتدئين طرح الأسئلة الأساسية (مثل ماهية DNS) دون خوف من ديناميكيات القوة أو التعرض للإحراج. كما يستعرض جهود مايكروسوفت البحثية لتطوير نماذج ذكاء اصطناعي تفاعلية مخصصة للتعليم (Teaching Models) تختلف عن النماذج التوليدية العادية، حيث تجبر هذه النماذج المطور المبتدئ على التوقف، التفكير، شرح المنطق البرمجي لنفسه، وحل بعض الاختبارات لضمان الفهم الحقيقي والعميق بدلاً من مجرد إعطائه حلولاً جاهزة تسلب منه فرصة التعلم الفعلي.
خارطة طريق للمطورين المبتدئين: التركيز على الأساسيات والمشاريع الشخصية الحقيقية
يقدم هانسلمان نصائح عملية ومباشرة للمطورين الجدد الساعين لدخول سوق العمل بنجاح خلال عام؛ ويرى أن المفتاح الأساسي يكمن أولاً في الفهم الراسخ والشديد لأساسيات هندسة البرمجيات (Fundamentals) مثل بروتوكول HTTP، نظام أسماء النطاقات (DNS)، الأنظمة الموزعة، حالات الاستعصاء البرمجي (Deadlocks)، مشبهاً ذلك بضرورة معرفة المبرمج بكيفية قيادة سيارات ناقل الحركة اليدوي للتعامل مع الأعطال المعقدة بدلاً من الاعتماد الكلي على القيادة الذاتية. ثانياً، يركز على مهارات التواصل والوضوح التام في التعبير؛ فالبرمجة في جوهرها هي عملية صياغة واضحة للمقاصد والأهداف لكي يفهمها الكمبيوتر والمطورون الآخرون على حد سواء. وينتقد هانسلمان بشدة حشو السير الذاتية بمشاريع مكررة وتقليدية مثل لعبة «تيك تاك تو» أو محاولة استنساخ لعبة «ماينكرافت» عبر أمر ذكاء اصطناعي بضغطة زر واحدة دون فهم تفاصيله وتفرعاته اللغوية والبرمجية. ويدعو بدلاً من ذلك إلى بناء تطبيقات حقيقية وشخصية لحل مشاكل فعلية تهم المطور أو مجتمعه (مثل موقع لكنيسة، أو مسجد، أو نادٍ رياضي للأطفال، أو نظام لإدارة مجموعات الألعاب)، لأن هذه المشاريع الفريدة تعكس الشغف الحقيقي والقدرة الذاتية العالية للمطور على إيجاد حلول برمجية للمشاكل الإنسانية الحية.
تبسيط البنية البرمجية ومحاربة الهوس بالتعقيد وقواعد البيانات المفرطة
يستعرض هانسلمان فلسفته الخاصة في البساطة التقنية ومحاربة المبالغة في هندسة البرمجيات (Over-engineering) التي يقع فيها الكثير من المطورين. يعرض أمثلة حية من مشاريعه الشخصية مثل موقع «Tiny Tool Town» الذي يحتوي على مئات الأدوات الصغيرة، ويكشف أنه لا يستخدم أي قاعدة بيانات تقليدية خلفية، بل يعتمد على واجهة برمجة تطبيقات (GitHub Issues) كقاعدة بيانات عملية، بينما يتم توليد الموقع بالكامل بشكل استاتيكي سريع للغاية باستخدام إطار العمل Astro واستضافته على شبكات توزيع المحتوى (CDN) ليكون قابلاً للتوسع غير المحدود وبسرعة خارقة. كما يتطرق لمدونته المستمرة منذ 22 عاماً ومجموعة البودكاست الخاصة به (مثل Hanselminutes و Azure Friday) والتي تدار بالكامل عبر ملفات JSON و XML بسيطة يتم تحميلها في الذاكرة (In-memory DOM) وتحديثها وتخزينها مؤقتاً بكفاءة عالية دون الحاجة لإقحام قواعد بيانات معقدة مثل Postgres لمشاريع لا تتطلب تحديثاً فورياً في الوقت الفعلي، داعياً المطورين إلى التفكير بعمق قبل تعقيد بنية تطبيقاتهم البرمجية بلا مبرر حقيقي.
- 1استخدم دورة حياة تطوير برمجيات (SDLC) قوية تتضمن توقيع الكود، الاختبارات، والأتمتة (مثل GitHub Actions) عند دمج الكود المُنشأ بواسطة الذكاء الاصطناعي.
- 2عامل الكود البرمجي الناتج عن الذكاء الاصطناعي كأنه مساهمة برمجية (PR) قادمة من شخص مجهول على الإنترنت: ثق ولكن تحقق (Trust but verify).
- 3حدد جلسات العمل المتزامنة والمهام المتعددة بحد أقصى يتراوح بين 3 إلى 5 جلسات لتجنب التشتت والحفاظ على التركيز الذهني.
- 4ركّز بقوة على تعلم وإتقان المفاهيم الأساسية في البرمجة وهندسة الأنظمة (مثل بروتوكول HTTP، ونظام DNS، والأنظمة الموزعة، ومشاكل deadlocks).
- 5طوّر مهارات التواصل والوضوح لديك، وتدرب على شرح الكود البرمجي وتبرير القرارات البرمجية ومراجعة الأكواد بوضوح.
- 6قم بإنشاء مشاريع فريدة وشخصية تهتم بها حقاً أو تخدم مجتمعك المحلي لإضافتها إلى ملف أعمالك البرمجية، بدلاً من تكرار المشاريع التقليدية المكررة مثل ألعاب Tic-Tac-Toe أو استنساخ ألعاب جاهزة بضغطة زر واحدة.
- 7تبنَّ نموذج المهارات على شكل حرف T (T-shaped): تخصص في مجال واحد بعمق مع امتلاك معرفة عامة واسعة بالمهارات والتقنيات البرمجية الأخرى.
- 8احرص على تبسيط الأنظمة البرمجية واستخدم مواقع ثابتة خفيفة الوزن تعتمد على ملفات JSON أو XML مخزنة في الذاكرة لتجنب تعقيد قواعد البيانات غير الضروري.
- 1الاعتماد الأعمى على الذكاء الاصطناعي لإنشاء معمارية برمجية كاملة، مما يؤدي إلى تصميم كود فوضوي وضخم يصعب تتبعه أو ما يعرف بـ (God Objects).
- 2الاندفاع والحماس المفرط وغير المدروس مع أدوات الذكاء الاصطناعي دون أخذ قسط من الراحة للتفكير العميق في جوهر المشكلة وحلها بشكل صحي وعقلاني.
- 3قبول ودمج الكود (Squash Merge) تلقائياً دون مراجعته والتحقق منه بدقة، وتحميل الآخرين مسؤولية الأخطاء الناتجة التي تضر بالمستخدمين.
- 4التعامل مع المطورين المبتدئين بصيغة التقليل من شأنهم بمجرد تسميتهم بـ (متدربين) بدلاً من استثمار الشركات في تدريبهم لصناعة الجيل القادم من المطورين المحترفين.
- 5الإفراط في تعقيد معمارية المشاريع باستخدام قواعد بيانات ضخمة (مثل Postgres) في مشاريع بسيطة يمكن إدارتها بكفاءة عالية وسرعة فائقة عبر ملفات ثابتة أو الذاكرة المؤقتة.
- 6الاعتماد على الكلمات والمطالبات العامة وعالية المستوى (Prompts) لإنشاء المشاريع والحلول دون فهم حقيقي للأساسيات البرمجية والتفاصيل الدقيقة المكونة لها.
- 1نموذج التوجيه والتأهيل (Preceptorship Model): نموذج مستوحى من قطاع التمريض يهدف لتدريب المهندسين الكبار (Seniors) وتأهيلهم رسمياً كمرشدين وموجهين آمنين ومساعدين للمطورين المبتدئين (Juniors) لتسريع نموهم المهني.
- 2نموذج المهارات على شكل حرف T (T-shaped Skills Model): إطار ذهني لتطوير المسار المهني يجمع بين التخصص العميق في مجال برميجي محدد والقدرة المرنة على التعامل مع مهارات متنوعة على نطاق واسع.
- 3منهجية إدارة المهام القائمة على الجلسات (Task-Based Session Juggling): تنظيم بيئة العمل حول مهام محددة ومعزولة بدلاً من تعدد المهام المفرط والتنقل العشوائي بين النوافذ ومحطات العمل.
- 4دورة حياة البرمجيات كبوابة تصفية (SDLC Ingress): منهجية تعامل مع مخرجات الذكاء الاصطناعي والمساهمات مفتوحة المصدر كمدخلات غير موثوقة افتراضياً، تخضع لنفس معايير الاختبار الآلي والتحقق البشري الصارم.
تحدث سكوت هانسلمان عن تاريخه المهني الطويل في البرمجة الذي بدأ في عام 1984، وكيف مر بعدة فترات من الذعر الجماعي بين المطورين مع كل تحول تقني جديد. ففي عام 1989 أو 1990، أخبره أحد زملائه أنه ليس مبرمجاً حقيقياً لأنه لا يكتب الأكواد بلغة التجميع (Assembler). وفي أواخر التسعينيات، عندما دخلت ميزة تلوين الأكواد وتحديد النحو (Syntax Highlighting)، سخر منه البعض قائلين إن هذه الميزة ستفسد عقله وتجعله مبرمجاً ضعيفاً. وفي منتصف العقد الأول من القرن الحادي والعشرين، ومع ظهور ميزة الإكمال التلقائي وموقع Stack Overflow، ساد ذعر عارم بأن البرمجة قد انتهت تماماً وأن المطورين سيتحولون لمجرد ناسخين للأكواد. والآن، يرى سكوت أننا نعيش العقد الرابع من هذا الذعر بسبب الذكاء الاصطناعي.
سياق القصة هو طمأنة المطورين القلقين من موجة الذكاء الاصطناعي الحالية؛ حيث يوضح أن الأدوات تتطور وتتغير دائماً لكن جوهر الحرفة البرمجية والإبداع البشري يظلان ثابتين دون تغيير.
استعرض سكوت تجربة عملية مر بها أثناء مراجعته لطلب سحب كود (PR) مخصص لحل مشكلة تُعرف بـ 'Emoji Bake'، وهي مشكلة تؤدي إلى تلف الرموز التعبيرية وظهورها كرموز غريبة بسبب التشفير المزدوج (Double Encoding). كانت زميلته كريستين تعمل على حلها، وعندما نظر سكوت في البداية إلى طلب السحب وجد أنه يتضمن حذف 2000 سطر وإضافة 2000 سطر، فشعر للوهلة الأولى أن التعديل ضخم ومتهور للغاية. ولكنه عندما تعمق في المراجعة، وجد أنها لم تحل المشكلة فحسب، بل أضافت 100 سطر من الاختبارات (Tests) الدقيقة للتأكد من جودة الحل وعالجت المشكلة بذكاء، فقام بقراءة وفهم هذه الاختبارات بدلاً من قبول الكود تلقائياً.
توضيح أهمية المراجعة البشرية الدقيقة للأكواد البرمجية (حتى تلك التي يُستعان فيها بالذكاء الاصطناعي) والاعتماد على منهجية الاختبار والتحقق بدلاً من الثقة العمياء في المخرجات الآلية.
شارك سكوت تجربته الشخصية كشخص مصاب بمرض السكري من النوع الأول (Type 1 Diabetic)، حيث يواجه تحديات يومية في إدارة مستوى السكر في دمه. ولتجاوز هذه العقبات المهنية والصحية، قام ببناء تطبيق شخصي يسمى 'Hansel projects today'. فبدلاً من الاستيقاظ ليرى قائمة مهام مرعبة ومحبطة تضم 125 مهمة و111 طلب سحب كود، يتيح له التطبيق - بمساعدة الذكاء الاصطناعي الذي درّبه على فهم طبيعته - تصفية وترتيب هذه المهام بناءً على 'طاقته العاطفية والجسدية' في ذلك اليوم. فيحدد له التطبيق المهام المناسبة لحالته الصحية والبدنية، مثل الفصل بين المهام البشرية والمهام المؤتمتة الخاصة بالبوتات ليختار ما يناسب طاقته اليومية.
توضيح كيف يمكن تسخير أدوات الذكاء الاصطناعي لتكون بمثابة مساعد شخصي إنساني يتفهم ظروف المطور الصحية والنفسية ويساعده على العمل بمرونة وصحة عقلية بعيداً عن الاحتراق الوظيفي.
تحدث سكوت عن أهمية تدريب وتوظيف المطورين المبتدئين مستشهداً بقطاع الرعاية الصحية، حيث تعمل زوجته ممرضة ويتدرب ابنه ليصبح ممرضاً أيضاً. في عالم التمريض، لا يُطلق على الممرضين الجدد صفات تقلل من شأنهم، بل يتم تعيين ممرض خبير يسمى 'Preceptor' (المرشد/المعلم) يرتدي شارة رسمية تدل على أنه شخص آمن ومستعد للإجابة على أي سؤال دون إحراج المبتدئ أو إشعاره بالنقص. وبناءً على هذه الفلسفة، تسعى مايكروسوفت لإنشاء برنامج مماثل يسمى 'Preceptorship' لتدريب المهندسين الكبار رسمياً على كيفية احتواء المبتدئين وصناعة جيل جديد من الخبراء.
التأكيد على خطورة إهمال توظيف وتدريب المطورين المبتدئين، وضرورة تغيير ثقافة بيئات العمل التقنية لتكون داعمة وآمنة وخالية من الفوقية المعرفية لضمان استمرار المهنة.
روى سكوت قصة طريفة عن مطور مبتدئ تواصل معه بفخر وقال له: 'يا أخي، لقد قمت ببناء نسخة كاملة من لعبة ماين كرافت (Minecraft) بضغطة واحدة وبأمر واحد للذكاء الاصطناعي'. فسأله سكوت عن الأمر وصياغته، فقال الشاب إنه كتب ببساطة: 'اصنع لي نسخة من ماين كرافت'. هنا تحدّاه سكوت قائلاً: 'هل يمكنك إعادة بناء نفس اللعبة دون استخدام كلمة ماين كرافت في أمرك؟'. عجز المطور تماماً وحاول استخدام مصطلحات معقدة، واكتشف حينها أن الكلمة البسيطة كانت تحمل مواصفات دلالية وهندسية هائلة ومخفية داخل خوارزميات الذكاء الاصطناعي دون أن يفهمها هو شخصياً.
تحذير المطورين الجدد من الانخداع بقدرات الذكاء الاصطناعي السطحية، وحثهم على بناء مشاريع حقيقية وابتكار حلول نابعة من شغفهم ومحيطهم لإظهار مهاراتهم الحقيقية في حل المشكلات.
استعرض سكوت موقعه الطريف 'Tiny Tool Town' الذي يحتوي على حوالي 451 أداة صغيرة وغبية (Tiny tools) صُممت لحل مشكلات بسيطة جداً ولجمهور قد يتكون من شخص واحد فقط (مثل أداة لإطلاقConfetti عند النقر، أو كتاب تلوين رقمي للتخلص من التوتر صممته صديقته ماريا). وأوضح أن قاعدة بيانات هذا الموقع هي في الحقيقة ميزة 'GitHub Issues'، حيث يرسل المطورون أدواتهم كتذاكر مشاكل، ويقوم الموقع بقراءتها وتوليد صفحات ثابتة بالكامل باستخدام إطار Astro دون الحاجة لقاعدة بيانات تقليدية، وتتم إدارة ومراجعة هذه الأدوات تلقائياً باستخدام عملاء ذكاء اصطناعي (AI Agents) يتأكدون من جودتها ورخصتها.
إثبات فكرة أنه ليس من الضروري استخدام بنى تحتية معقدة وقواعد بيانات ثقيلة ومكلفة للمشاريع، بل يمكن للبساطة والحلول الثابتة والمبتكرة أن تقدم أداءً مذهلاً وسريعاً للغاية.
تحدث سكوت عن معمارية مدونته الشخصية المستمرة منذ عام 2002 (أكثر من 22 عاماً من التدوين)، حيث يسأله المطورون دائماً عن نوع قاعدة البيانات الضخمة التي تعمل عليها مدونته لتقدم نتائج فورية فائقة السرعة. ويكشف سكوت لهم بدهشة أن الموقع يعمل بالكامل بدون قاعدة بيانات، بل يتم الاحتفاظ بكامل محتوى المدونة التاريخي في ملف XML بحجم 300 ميجابايت فقط يتم تحميله في الذاكرة كـ DOM، ولا يتم تحديث الكاش إلا عند كتابة تدوينة جديدة. وبالمثل، فإن البودكاست الخاص به 'Hanselminutes' الذي يضم ما يقرب من 1046 حلقة على مدار عقدين، يعمل بالكامل من خلال ثلاثة ملفات JSON فقط.
دعوة المطورين للتفكير البسيط والعملي وتجنب المبالغة غير المبررة في هندسة الأنظمة (Over-engineering) ووضع قواعد بيانات معقدة مثل Postgres لمشاريع يمكن تشغيلها بملفات ثابتة فائقة السرعة.
أشار سكوت إلى التقنيات الطبية باعتبارها المجال التقني الأكثر إثارة وشغفاً بالنسبة له حالياً، مستعرضاً وضعه الشخصي حيث يمتلك مضخة أنسولين ومستشعراً ذكياً مزروعاً في ذراعه لقراءة مستويات السكر، ويعتمد في إدارتها على نظام بنكرياس صناعي ذكي ومفتوح المصدر (Open Source Artificial Pancreas System) تم تطويره ضمن مشروع مجتمعي برمجت أساسه المطورة دانا لويس، وهو ما ساعده كثيراً في تحسين وتسهيل حياته اليومية والسيطرة على مرضه بكفاءة عالية.
توضيح القوة الكامنة في البرمجيات مفتوحة المصدر وكيف يمكن للتعاون التقني أن ينقذ حياة البشر ويغير واقعهم الصحي بشكل مباشر وملموس.
تزلّف الذكاء الاصطناعي (AI Sycophancy)
نزعة نماذج الذكاء الاصطناعي لتوليد إجابات تتوافق مع تفضيلات المستخدم، أو تحيزاته، أو فرضياته حتى لو كانت خاطئة علمياً أو هندسياً، بدلاً من تقديم حلول صحيحة وموضوعية. مثال: أن يوافق نموذج الذكاء الاصطناعي مبرمجاً على تصميم معماري ضعيف وممتلئ بالثغرات لمجرد أن المبرمج اقترحه.
كائنات الإله (God Objects)
نمط برمجائي سيئ (Anti-pattern) في البرمجة كائنية التوجه (OOP) حيث يتم تحميل كلاس أو كائن واحد بمسؤوليات وصلاحيات هائلة تفوق طاقته، مما ينتهك مبدأ المسؤولية الواحدة (Single Responsibility Principle) ويجعل الكود غير قابل للصيانة. مثال: قيام كود مولد بالذكاء الاصطناعي بوضع منطق الواجهة، وقاعدة البيانات، وحسابات الخوارزمية في ملف برمجي واحد ضخم.
تلف الرموز التعبيرية (Emoji Bake / Mojibake)
فساد أو تشوه النصوص والرموز التعبيرية (Emojis) عند عرضها نتيجة لخلل في فك ترميز النصوص (Decoding) أو فك الترميز المزدوج غير المتوافق (Double Encoding). مثال: ظهور الرموز التعبيرية على شكل سلسلة رموز غريبة مثل 'é' أو مربعات فارغة بدلاً من الوجوه التعبيرية المقصودة بسبب عدم تطابق نظام الترميز.
المراجعات الضدية للأكواد (Adversarial Code Reviews)
منهجية لمراجعة واختبار الأكواد البرمجية (المولدة بالذكاء الاصطناعي عادةً) عن طريق عرضها على نماذج ذكاء اصطناعي متعددة ومختلفة للبحث عن الثغرات، ومحاولة 'إفشال' الكود أو كشف الأخطاء غير الواضحة. مثال: أخذ كود تم توليده ومقارنته وتحليله عبر ثلاثة نماذج مختلفة مثل GPT-4 وClaude وGemini لمعرفة نقاط الضعف الكامنة فيه.
نظام التوجيه البرمجي (Software Preceptorship)
نموذج توجيهي وتدريبي مقتبس من قطاع التمريض الطبي، يهدف إلى إعداد المهندسين الكبار (Seniors) وتدريبهم خصيصاً على كيفية احتضان المهندسين المبتدئين (Juniors) وتعليمهم في بيئة آمنة تمنع رهبة الفوارق المهنية. مثال: مبادرة مايكروسوفت لتدريب كبار المطورين على مهارات التعليم وإنشاء نماذج تدريبية تدعم المبتدئين في بيئة خالية من التهديد.
مدفع الغثاء (Slop Cannon)
مصطلح مجازي يُشير إلى اندفاع المبرمجين بحماس مفرط لإنتاج وضخ كميات هائلة من الأكواد البرمجية المولدة بالذكاء الاصطناعي بشكل آلي سريع ودون أي مراجعة معمارية أو بشرية دقيقة، مما يؤدي لغمر المشروع بأخطاء برمجية خفية. مثال: دمج طلبات سحب (Pull Requests) ضخمة تحتوي على سطور مولدة آلياً دون مراجعة هيكلية لها.
- 170% من الأكواد البرمجية التي يكتبها سكوت هانسلمان حالياً تتم باستخدام وتوجيه الذكاء الاصطناعي (AI-augmented).
- 2إدارة 125 مهمة برمجية (To-dos) و111 طلب سحب (PRs) نشط عبر محفظة المشاريع الشخصية لسكوت هانسلمان.
- 3موقع Tiny Tool Town يحتوي حالياً على 451 أداة برمجية صغيرة ومبسطة للجمهور.
- 4بودكاست Hanselminutes سجل ما يقارب 1,046 حلقة على مدار أكثر من 20 عاماً.
- 5مدونة سكوت هانسلمان المستمرة منذ عام 2002 (22 عاماً) تعمل بحجم ذاكرة 300 ميغابايت فقط من ملفات XML المخبأة.
- 6بدأ سكوت هانسلمان البرمجة منذ عام 1984، معاصراً أربعة عقود من الهلع التقني المستمر.
- 1سكوت هانسلمان (Scott Hanselman) - نائب رئيس وأحد كبار المهندسين في Microsoft وGitHub
- 2دانا لويس (Dana Lewis) - مؤسسة مشروع البنكرياس الاصطناعي المفتوح المصدر (OpenAPS)
- 3رابطة مكائن الحوسبة (ACM - Association for Computing Machinery)
- 4أبحاث مايكروسوفت (Microsoft Research)
- 5GitHub Copilot وأداة Copilot Chronicle المعتمدة على SQLite محلياً
- 6إطار العمل Astro (لتوليد المواقع الثابتة)
- 7قواعد البيانات SQLite وPostgres
- 8نظام التشغيل Ubuntu ومفسر الأوامر PowerShell
- 9منصة GeoCities (كاستعارة لطبيعة موقع Tiny Tool Town)
- 10كريستين (Christine) وماريا (Maria) - مطورات مشاركات في المشاريع البرمجية المذكورة
"Every era panics... the craft hasn't changed. Just because power tools got made doesn't mean that like bespoke really cool furniture can't be created by craftspeople."
يستعرض سكوت عقودا من الذعر التقني المتكرر (مثل الانتقال من لغات التجميع أو ظهور المكمل التلقائي و Stack Overflow). يرى أن الذكاء الاصطناعي ليس سوى أداة طاقة جديدة، وأن الحرفية البرمجية الجوهرية واللمسة البشرية المخصصة ستظل دائما أساس الهندسة البرمجية الراقية.
"The software engineering profession will collapse if we don't keep hiring early in career developers. Where are the seniors coming from?"
يسلط الضوء على خطورة تقليص توظيف المطورين المبتدئين من قبل الشركات في عصر الذكاء الاصطناعي. ويحذر من أنه بدون الاستثمار في تدريب الجيل الصاعد اليوم، سيواجه قطاع التكنولوجيا بأكمله انهيارا حتميا وفجوة هائلة في الكوادر الخبيرة مستقبلا.
"English is a lot like JavaScript. It's not the language that we deserve, but it is the language that we have."
عند سؤاله عن اللغة الأهم التي يجب على كل مطور تعلمها، يفاجئ الجميع باختيار اللغة الإنجليزية. يوضح أن البرمجة في عصر الذكاء الاصطناعي باتت تتمحور حول صياغة الأفكار وتوضيح النوايا اللغوية بدقة وسلاسة، مما يجعل التواصل الواضح مهارة هندسية حاسمة تضاهي لغات البرمجة.
"Don't show me Tic-Tac-Toe. Don't show me that you can one shot a clone of Minecraft. Make something that's that you're passionate about that makes your health better, your family better, your life better, your community better."
في نصيحته للمطورين الجدد للتميز في سوق العمل، ينتقد سكوت المشاريع المكررة والمبنية بنقرة واحدة عبر الذكاء الاصطناعي. يدعوهم بدلا من ذلك لبناء أدوات ذات مغزى شخصي واجتماعي حقيقي تعكس شغفهم وقدرتهم العالية على حل مشكلات واقعية ملموسة.
- 1معاملة الكود البرمجي المولد بواسطة الذكاء الاصطناعي كطلب سحب (Pull Request) من شخص مجهول على الإنترنت: إذا كنت لا تثق ببرمجة شخص عشوائي على الشبكة، فلا يجب أن تثق بالذكاء الاصطناعي دون فحص وتدقيق كاملين.
- 2نموذج التدريب التمريضي (Preceptorship) في الهندسة البرمجية: بدلا من تسمية المطورين الجدد بالمتدربين (Interns) مما يولد فجوة سلطوية سلبية، يجب تسمية كبار المهندسين بالمدربين (Preceptors) وربط تقييم نجاحهم بمدى كفاءتهم في تأهيل وتخريج جيل جديد من الكوادر الخبيرة.
- 3خدعة الدلالة اللغوية في توجيهات الذكاء الاصطناعي: الاعتماد على كلمات ذات حمولة دلالية ضخمة مثل (نسخة من ماينكرافت) يغفل التفاصيل التقنية الدقيقة، ويتضح العجز الحقيقي عن الفهم والتطوير بمجرد منع استخدام هذه الكلمة المفتاحية في التوجيه.
- 4تقليل التعقيد المفرط في استخدام قواعد البيانات: ليست كل المشاريع بحاجة لقواعد بيانات ضخمة ومعقدة؛ فمدونة عمرها 22 عاما يمكن أن تعمل بسرعة فائقة بالكامل في الذاكرة النشطة باستخدام ملفات XML بحجم 300 ميغابايت فقط دون الحاجة لمحركات مثل Postgres.
- 1القول بأن اللغة الأكثر أهمية التي يجب على الجميع تعلمها هي اللغة الإنجليزية، ومقارنتها بلغة جافا سكريبت من حيث أنها ليست ما نستحقه بل ما لدينا.
- 2تأييد مقابلات اللوح الأبيض (Whiteboard Interviews) باعتبارها أداة ممتازة لرؤية كيف يفكر المطور، على الرغم من كراهية مجتمع التقنية الواسعة لها.
- 3الادعاء بأن المطورين يفرطون في استخدام قواعد البيانات الكبيرة دون حاجة حقيقية، وأنه يمكن إدارة مشاريع ضخمة بالاعتماد على ملفات JSON أو XML مخزنة في الذاكرة فقط.
- 4التحذير من أن مهنة هندسة البرمجيات بأكملها ستنهار حتمًا إذا لم تستمر الشركات في توظيف المطورين في بداية مسيرتهم المهنية创新。
- 5تحذير من أن مهنة هندسة البرمجيات ستنهار إذا لم يتم الاستمرار في توظيف وتدريب المطورين المبتدئين بسرعة وبشكل مستمر منذ البداية البرمجية للشركات البرمجية والمؤسسات المختلفة حوكمةً مهنية جادة وبناءة للمستقبل والجيل القادم بشكل فعال جداً بدلاً من تقليص هذه الوظائف لعدم جدواها الآنياً في ظل تواجد تكنولوجيا الذكاء الاصطناعي السريع والمتقدم جداً حالياً بشكل متزايد ومفرط في القطاع الرقمي والبرمجي المتنوع تكنولوجياياً وصناعياً وعالمياً وعلمياً وتقنياً وتطبيقياً وعملياً ومهنياً وتدريبياً وتوجيهياً وتربوياً وتعليمياً وتنظيمياً ووظيفياً وإدارياً مستقلاً.
- 6الادعاء بأن المطورين يفرطون في استخدام قواعد البيانات الكبيرة دون حاجة حقيقية، وأنه يمكن إدارة مشاريع ضخمة بالاعتماد على ملفات JSON أو XML مخزنة في الذاكرة فقط وبشكل كامل.
- 7القول بأن اللغة الأكثر أهمية التي يجب على الجميع تعلمها هي اللغة الإنجليزية، ومقارنتها بلغة جافا سكريبت من حيث أنها ليست ما نستحقه بل ما لدينا.