جانب علمي
ما تريد أن تكون عندما تكبر؟ رائد فضاء....لا! لا! أريد أن أكون مخترعاً!
ماذا كان يعمل عبقرينو بالضبط؟ في القصص كان عمله أشبه بمخترع freelancer يأتيه الزبون ليخترع له حزام الطيران أو سائل نمو النباتات السريع ثم يأخذ أجره. ظننتها وظيفة حقيقية منتشرة. ربما ستكون كذلك يوماً.
بعدها تعلمت البرمجة وصارت اهتمامي الأساسي. لم أكن أدري وقتها أن البرمجة هي اختراع لكن بطريقة أخرى. ثم دخلت الجامعة وصرت أتساءل: ما مجال البرمجة الذي أفضلة؟
جربت برمجة الألعاب. قرأت في الرياضيات. نصحني أستاذ لي بالقراءة في الArtificial intelligence، قرأت فيه من كتاب، ثم مللته وقرأت من كتاب آخر. كان ذلك الكتاب الآخر فيه مقدمة للغة Lisp...شدتني اللغة ربما أكثر من الAI نفسه.
بعدها قرأت عن لغة Haskell. وبدأت افهم أنه هناك عالم أكبر بكثير من الC والJava وما شابه. مجالي المفضل هو...لغات البرمجة!
(من فضلكم: لا يقولن أحد أن مجالي هو الcompilers! هناك فرق بين compilers وبين programming language theory).
جانب عملي
بعد التخرج صار السؤال: ماذا أريد أن أفعل؟ قبلت وظيفة المعيد. بعدها بسنين تركتها. قبل أن أدخل في وظيفة أخرى كان لابد أن أقف وقفة مع نفسي: ماذا أريد بالضبط؟ ما الذي جعلني اختار تلك الوظيفة؟ (لابد من سبب منطقي)، وما الذي جعلني أتركها؟ ما هدفي؟
بعد التأمل خرجت بالاستنتاج الآتي: أنا أريد بيئة أخترع فيها. ظننت أن الماجستير وماشابه سيوفر تلك البيئة لكني فشلت في ذلك. إذاً فليكن سؤالي عند التقدم لأية وظيفة هو "هل ستقدم لي، عاجلاً أو آجلاً، بيئة للاختراع؟".
في النهاية قررت أن أبني تلك البيئة لنفسي: شركة وظيفتها تحويل الcomputer science إلى أرباح، شركة ما هي إلا حجة للمخترعين كي يخترعوا.
(مازال السعي لتلك الشركة مستمراً.)
في تلك الأثناء صرت أقرأ كثيراً جداً. تاريخ، لغة، القليل من علم اجتماع...صارت هناك فكرة تتشكل في ذهني عن الأمة الإسلامية واوروبا والمستوى الفكري. صرت يوماً بعد يوم أفكر في النهضة وكيفية المشاركة في دفعها للأمام.
شيء آخر: بعد تركي للكلية وجدت طالباً يقول لي أنه يريدني أن القي بعض المحاضرات عن الLisp.
قلت له: لكني لم أعد معيداً رسمياً.
قال: لا بأس، سوف نأخذ إذناً من الكلية ونعطيك إطاراً تقدم فيه الندوات.
هنا اكتشفت شيئاً جديداً؛ أنني لا أحتاج أن أكون عضو هيئة تدريس لأقدم علماً لمن يريده!
منذ ذلك الحين قدمت ندوات عن ال
في 2010 حدث شيء جديد: بدأت أقابل أطفالاً في عائلتنا لم أكن قد رأيتهم من قبل (كنت منعزلاً نوعاً ما) وأطفال لمعارف.اكتشفت معلومة جديدة: إن الطفل لهو شيء مذهل.
هل تظن أن اللعب مع الأطفال شيء سهل؟ هذه عينة مما كنت أفعله معهم:
وهنا كنت قد كونت فكرة لا بأس بها عما أريد لنفسي من الدنيا:
وفي يوم كنت أقرأ كتاباً عن الثقوب السوداء. كتاب ظريف جداً يجمع بين المعلومات نفسها وبين بيئة البحث العلمي التي أدت لاكتشاف هذه المعلومات. قرأت فيه عن Oppenheimer وكيف كان يجتمع بطلاب البحث في الجامعة التي كان يدرّس فيها، ويتناقشون "دردشة" علمية عن الفيزياء والكونيات، ثم إذا رأى اهتمام طالب معين بموضوع معين عرض عليه نقطة في ذلك المجال ليشرف عليه فيها.
هذا هو الهدف الناقص!!
لنعدّل الخطة إذاً:
ما أريد لنفسي من الدنيا:
جانب فلسفي
حتى الآن الأمور مستقرة. قد عرفت أخيراً ماذا أريد بالضبط من الدنيا. لكن في الأيام الحالية هناك شيء أفكر فيه: هذه الأهداف "حقيقية" أكثر من اللازم. الجانب الفلسفي عندي يريد مجموعة من المباديء التي توحّد بين كل الأهداف. ما الذي يربط بين النهضة والأطفال والبرمجة و...و...؟
شيئاً فشيئاً أحاول التوصل لإجابة هذا السؤال:
لو أردت عدداً أكبر من الكلمات:
ما تريد أن تكون عندما تكبر؟ رائد فضاء....لا! لا! أريد أن أكون مخترعاً!
ماذا كان يعمل عبقرينو بالضبط؟ في القصص كان عمله أشبه بمخترع freelancer يأتيه الزبون ليخترع له حزام الطيران أو سائل نمو النباتات السريع ثم يأخذ أجره. ظننتها وظيفة حقيقية منتشرة. ربما ستكون كذلك يوماً.
بعدها تعلمت البرمجة وصارت اهتمامي الأساسي. لم أكن أدري وقتها أن البرمجة هي اختراع لكن بطريقة أخرى. ثم دخلت الجامعة وصرت أتساءل: ما مجال البرمجة الذي أفضلة؟
جربت برمجة الألعاب. قرأت في الرياضيات. نصحني أستاذ لي بالقراءة في الArtificial intelligence، قرأت فيه من كتاب، ثم مللته وقرأت من كتاب آخر. كان ذلك الكتاب الآخر فيه مقدمة للغة Lisp...شدتني اللغة ربما أكثر من الAI نفسه.
بعدها قرأت عن لغة Haskell. وبدأت افهم أنه هناك عالم أكبر بكثير من الC والJava وما شابه. مجالي المفضل هو...لغات البرمجة!
(من فضلكم: لا يقولن أحد أن مجالي هو الcompilers! هناك فرق بين compilers وبين programming language theory).
جانب عملي
بعد التخرج صار السؤال: ماذا أريد أن أفعل؟ قبلت وظيفة المعيد. بعدها بسنين تركتها. قبل أن أدخل في وظيفة أخرى كان لابد أن أقف وقفة مع نفسي: ماذا أريد بالضبط؟ ما الذي جعلني اختار تلك الوظيفة؟ (لابد من سبب منطقي)، وما الذي جعلني أتركها؟ ما هدفي؟
بعد التأمل خرجت بالاستنتاج الآتي: أنا أريد بيئة أخترع فيها. ظننت أن الماجستير وماشابه سيوفر تلك البيئة لكني فشلت في ذلك. إذاً فليكن سؤالي عند التقدم لأية وظيفة هو "هل ستقدم لي، عاجلاً أو آجلاً، بيئة للاختراع؟".
في النهاية قررت أن أبني تلك البيئة لنفسي: شركة وظيفتها تحويل الcomputer science إلى أرباح، شركة ما هي إلا حجة للمخترعين كي يخترعوا.
(مازال السعي لتلك الشركة مستمراً.)
في تلك الأثناء صرت أقرأ كثيراً جداً. تاريخ، لغة، القليل من علم اجتماع...صارت هناك فكرة تتشكل في ذهني عن الأمة الإسلامية واوروبا والمستوى الفكري. صرت يوماً بعد يوم أفكر في النهضة وكيفية المشاركة في دفعها للأمام.
شيء آخر: بعد تركي للكلية وجدت طالباً يقول لي أنه يريدني أن القي بعض المحاضرات عن الLisp.
قلت له: لكني لم أعد معيداً رسمياً.
قال: لا بأس، سوف نأخذ إذناً من الكلية ونعطيك إطاراً تقدم فيه الندوات.
هنا اكتشفت شيئاً جديداً؛ أنني لا أحتاج أن أكون عضو هيئة تدريس لأقدم علماً لمن يريده!
منذ ذلك الحين قدمت ندوات عن ال
- Lisp
- Languages and interpreters
- Ruby
- Erlang
- #C
- دور كلية الحاسبات العلمي
- مجلسي علم
في 2010 حدث شيء جديد: بدأت أقابل أطفالاً في عائلتنا لم أكن قد رأيتهم من قبل (كنت منعزلاً نوعاً ما) وأطفال لمعارف.اكتشفت معلومة جديدة: إن الطفل لهو شيء مذهل.
هل تظن أن اللعب مع الأطفال شيء سهل؟ هذه عينة مما كنت أفعله معهم:
- رسم قصص مصورة
- تأليف شعر
- كتابة رسائل بالشفرة وإعطائها له ليحلها
- تجارب علمية
- محاولات لتعليمهم البرمجة
وهنا كنت قد كونت فكرة لا بأس بها عما أريد لنفسي من الدنيا:
- ورشة عمل أخترع فيها
- اطفال لي ألعب معهم
- خطة لدفع النهضة تركز على المستوى الفكري للمجتمع والعلم المستشري.
وفي يوم كنت أقرأ كتاباً عن الثقوب السوداء. كتاب ظريف جداً يجمع بين المعلومات نفسها وبين بيئة البحث العلمي التي أدت لاكتشاف هذه المعلومات. قرأت فيه عن Oppenheimer وكيف كان يجتمع بطلاب البحث في الجامعة التي كان يدرّس فيها، ويتناقشون "دردشة" علمية عن الفيزياء والكونيات، ثم إذا رأى اهتمام طالب معين بموضوع معين عرض عليه نقطة في ذلك المجال ليشرف عليه فيها.
هذا هو الهدف الناقص!!
لنعدّل الخطة إذاً:
ما أريد لنفسي من الدنيا:
- ورشة عمل أخترع فيها
- طلبة علم اتعاون معهم
- اطفال لي ألعب معهم
- خطة لدفع النهضة تركز على المستوى الفكري للمجتمع والعلم المستشري.
جانب فلسفي
حتى الآن الأمور مستقرة. قد عرفت أخيراً ماذا أريد بالضبط من الدنيا. لكن في الأيام الحالية هناك شيء أفكر فيه: هذه الأهداف "حقيقية" أكثر من اللازم. الجانب الفلسفي عندي يريد مجموعة من المباديء التي توحّد بين كل الأهداف. ما الذي يربط بين النهضة والأطفال والبرمجة و...و...؟
شيئاً فشيئاً أحاول التوصل لإجابة هذا السؤال:
- لكي تخترع لابد (1) أن تفهم قوانين الطبيعة ثم (2) تفكر كيف تطوع تلك القوانين لتحقيق أهداف بطرق جديدة.
- لكي تبرمج لابد أن تفهم الsyntax/semantics الخاصة بلغة البرمجة ثم تصنع بها شيئا جديدا.
- لكي تلعب مع الطفل [بطريقتي] لابد (1) أن تكون مثقفا و (2) أن تفكر في طرق لشرح ما تعلم بطريقة تناسب سن الطفل.
- لكي تسعى للمشاركة في إحداث نهضة عليك أن تفهم كيف يتغير المجتمع وكيف تنتشر الأفكار، ثم تخطط لنشر الأفكار التي تراها صحيحة.
- كل هذه الأشياء مرتبطة ببعضها: اهتمامي باللغة العربية ينعكس على البرمجة ينعكس على الأطفال ينعكس على النهضة.
Explore. Understand. Invent
لو أردت عدداً أكبر من الكلمات:
Search, understand, create. Try to do things no one did before you.
Whether it's programming, a business, or society.
Whether it's programming, a business, or society.
هذا يفسر أشياء كثيرة؛ أليس كذلك؟ هل تذكر اقتراحاتي لتطوير الACM؟ كنت أقول أننا نحتاج إلى "Creation, Diversity, Depth". الآن انظر:
Search / Understand / Create <==> Diversity/ Depth / Creation
ماذا عن فكرة مركز التفكير الحوسبي؟ هدف إنشاء المركز جزئين: (1) البحث عن طريقة متطورة لتعليم البرمجة/علوم الحاسب (2) اقتراح هذه الطريقة للمدارس والمؤسسات التعليمية. أي نفس فكرة الفهم ثم التطبيق.
ماذا عن فكرة مركز التفكير الحوسبي؟ هدف إنشاء المركز جزئين: (1) البحث عن طريقة متطورة لتعليم البرمجة/علوم الحاسب (2) اقتراح هذه الطريقة للمدارس والمؤسسات التعليمية. أي نفس فكرة الفهم ثم التطبيق.
إن استكشاف الإنسان لنفسه لشيء صعب حقاً...
(هل تشعر أن هذه التدوينة علمية أكثر من اللازم؟ استرخ قليلاً هنا)
(هل تشعر أن هذه التدوينة علمية أكثر من اللازم؟ استرخ قليلاً هنا)