استمرار قصة "مبرمج الوظيفي" .في الفناء كان 2001. السنة التي تم فيها إصدار أروع نظام تشغيل - Windows XP. عندما ظهر rsdn.ru. سنة ميلاد C # و .NET Framework. السنة الأولى من الألفية. وسنة من النمو الهائل في قدرات الحديد الجديدة: بنتيوم الرابع ، 256 ميغابايت من ذاكرة الوصول العشوائي.
بعد التخرج من الصف التاسع ، كان لدي حماس لا ينضب لمواصلة دراسة البرمجة. رؤية هذا ، قرر والدي نقل لي إلى الكلية لتخصص "البرمجة". لقد اعتقدوا أنه سيكون أفضل وعلّموني هناك. كلية الكلمة ، بالمناسبة ، لم تناسب هذه المؤسسة ، في ضواحي مدينة صناعية. كانت مدرسة تقنية عادية ، غير مميزة عن غيرها من المدارس الفنية ، التي لم تعلق تسمية بالكلمة العصرية "الكلية" على واجهتها.
حسنا اذن لم أجادل مع والدي ولم أتنازع على قرارهم. على أي حال ، كنت منخرطًا في التعليم الذاتي ، واعتقدت أنه في هذا المكان الجديد ، سأحصل على بعض المعرفة الإضافية.
في ذلك الصيف ، قبل التحاقي بالكلية ، بدأت في دراسة جميع التقنيات الممكنة التي تم نشرها في
مجلة هاكر . قرأت وأعدته إلى الثقوب. أعجبني بشكل خاص المقابلات مع المتسللين الحقيقيين ونصيحتهم.
جلس معظم المتسللين بارد على Linuha. ولكن "Mazdai" (ويندوز) كان للالعرجين. من قرأ المجلة ، يتذكر أسلوب المشاركات فيها. لذلك ، في عقلي الهش ، واجهت فكرتان فيما بينهما - لترك ويندوز أو أن تكون باردة والجلوس على لينكس بحتة.
ألقى كل إصدار جديد من مجلة Hacker سببًا جديدًا لتنسيق القرص وتثبيت إما Linux Red Hat 7 أو Windows Me. بالطبع ، لم يكن لدي أي متجه للتدريب ، وفعلت ما قرأته في المجلات أو على أقراص مدمجة مقرصنة مثل "أسرار القراصنة". تم أيضًا مسح تثبيت نظامي تشغيل بشكل متوازٍ ، بعد رمية جديدة بروح "Windows XP ويعرف أيضًا باسم ببغاء لربات البيوت. وإذا كنت تريد أن تفعل أشياء جادة ، فعليك أن تعمل من خلال وحدة التحكم Linux وأن تغلق عينيك. " بالطبع ، كنت أرغب في الانخراط في أنظمة القرصنة ، وفهم كيف تعمل الشبكة وتكون مجهول القدرة في ذلك الوقت.
تمت تهيئة القرص دون ندم ، وتم تثبيت نظام تشبه Unix عليه. نعم نعم بمجرد أن أقرأ مقابلة مع متسلل حقيقي يستخدم FreeBSD 4.3 فقط من وحدة التحكم. في الوقت نفسه ، تم سرد الخارقة من البنوك وأنظمة الدولة وراءه. لقد كان صاعقة برغي على الرأس ، ووضعت BSD OS 5 أضعاف النظام الرئيسي. كانت المشكلة أنه بعد التثبيت ، باستثناء وحدة التحكم العارية ، لم يكن هناك شيء هناك. حتى الصوت. ولوضع KDE2 وتشغيل الصوت ، كان عليك أن ترقص كثيرًا باستخدام الدف ، وإصلاح بعض التكوينات.
فري 4.3 - نظام التشغيل الأكثر هاكرعن الأدب
بمجرد حصولي على جهاز كمبيوتر ، بدأت في شراء كتب البرمجة. الأول كان دليلاً على Turbo Pascal 7.0. هذا ليس مفاجئًا ، لأن Pascal كنت أعرف بالفعل القليل من دورات البرمجة ، وكان من الممكن الاستمرار في التدريب بمفردي. كانت المشكلة أن المتسللين لا يكتبون في باسكال. ثم كانت لغة بيرل في الموضة ، أو ، بالنسبة للرجال الأكثر برودة ، كانت لغة C / C ++. على الأقل هذا ما كتبوه في المجلة. وأول كتاب يتم قراءته حتى النهاية كان C ، و Kernigan و Ritchie Programming Language. بالمناسبة ، لقد درست في لينكس
وتستخدم مجلس التعاون الخليجي ومحرر كيدي المدمج لكتابة التعليمات البرمجية.
بعد هذا الكتاب ، تم شراء موسوعة UNIX. كانت تزن 3 كيلوغرامات وطبع على A3 صفحات.
على الجانب الأمامي من الكتاب ، صورت شيطانًا كاريكاتوريًا مذعورًا على ارتفاعه الكامل ، ثم كلفته 125 هريفنيا في أوكرانيا (أي حوالي 25 دولارًا في عام 2001). لشراء كتاب ، طلبت قرضًا من صديق للمدرسة ، تمت إضافة الباقي من قِبل أولياء الأمور. بعد ذلك ، بدأت بحماس في دراسة أوامر Unix ومحرر vim و emac وهيكل نظام الملفات وداخل تكوين الملف. تم ابتلاع ما يقرب من 700 صفحة من الموسوعة وأصبحت على بعد خطوة واحدة من الحلم - أن أصبح باحثًا رائعًا.
UNIX Encyclopedia - أحد الكتب الأولى التي تمت قراءتهاكل الأموال التي أعطاني إياها الجد والجدة والآباء وأمضيتهم على الكتب. الكتاب التالي كان C ++ في 21 يومًا. كان العنوان جذابًا جدًا ، وبالتالي لم أنظر إلى كتب أخرى ذات جودة أعلى. على الرغم من ذلك ، تم نسخ جميع المصادر من الكتاب لمدة ثلاثة أسابيع تقريبًا ، وقد فهمت شيئًا ما في C ++. رغم أنني لم أعد أفهم ما كتب في هذه القوائم. ولكن كان هناك تقدم.
إذا سألني أي شخص عن الكتاب الذي أثر على حياتك المهنية أكثر من اللازم ، لكنت قد أجبت دون تردد - "فن البرمجة" - د. كنوت. كان وميض الدماغ. لا أستطيع أن أقول بالضبط كيف وقع هذا الكتاب بالضبط في يدي ، لكنه كان له تأثير أقوى على حياتي المهنية في المستقبل.
فن البرمجة - يجب أن تقرألقد اشتريت الكتب بشكل أساسي في سوق الراديو ، والذي كان يعمل فقط أيام الأحد. بعد أن أنقذت العشرات من الهريفنيا التالية لتناول الإفطار ، ذهبت لكتاب جديد على C ++ أو ربما بيرل. كان الخيار كبيرًا بدرجة كافية ، لكن لم يكن لديّ معلم ، لذلك تمت دراسة كل شيء على التوالي. طلبت من البائع أن يوصي لي شيئا للبرمجة. وبقدر ما أتذكر ، أخذ من الجرف "فن البرمجة. توم الأول. " كان الكتاب بوضوح قيد الاستخدام بالفعل. كانت زوايا الغطاء مثنية ، وكان هناك خدش كبير في الظهر ، في المكان الذي ترك فيه بيل غيتس تعليقه: "إذا قرأت هذا الكتاب ، فيجب أن ترسل لي بالتأكيد سيرة ذاتية". كنت أعرف عن Gates من المجلات ، واعتقدت أنه سيكون من الجيد إرسال السيرة الذاتية له ، على الرغم من أن جميع المتسللين تلقوه. كان الكتاب يستحق 72 غريفنا. (15 دولارًا) ، وسرعان ما هرعت إلى المنزل على الترام لدراسة مواد جديدة.
كيف الأشياء العميقة والأساسية قرأت ، بالطبع لم أستطع أن أفهم في 15. لكنه حاول بجد إكمال كل تمرين. بمجرد أن تمكنت من حل المشكلة بشكل صحيح مع معدل تعقيد 25 أو 30. كان هذا الفصل على الحث الرياضي. على الرغم من أنني لم أحب الرياضيات المدرسية وأمسكت بها بشكل سيء ، ولكن على حصيرة. تحليل كنوت - جلست لساعات.
المقبل ، ذهب الفصل الثاني على هياكل البيانات. لا تزال هذه الصور والصور للقوائم المرتبطة والأشجار الثنائية والمكدسات وقوائم الانتظار أمام عيني. على مدار 12 عامًا من مسيرتي المهنية في التطوير التجاري ، استخدمت معظم اللغات العامة.
هذه هي C / C ++ ، C # ، Java ، Python ، JavaScript ، Delphi. وبغض النظر عن الكيفية التي تسمى بها اللغة ، فإن مكتبتها القياسية لديها هياكل البيانات والخوارزميات التي وصفها دونالد نوث في كتابه المؤلف من ثلاثة مجلدات. لذلك ، لتعلم شيء جديد لا يستغرق الكثير من الوقت.
تم ابتلاع المجلد الأول بسرعة كافية. لقد قمت بنسخ الخوارزميات الواردة في كتاب Knuth إلى C. لم تنجح هذه الطريقة دائمًا ، ولكن كلما مارست أكثر ، كلما زاد الوضوح. كان الحماس ليس لعقد. بعد أن انتهيت من المجلد الأول ، لم أتردد في الجري وشراء الثاني والثالث. لقد وضعت جانبا الثاني في الوقت الحاضر ، ولكن للمرة الثالثة (الفرز والبحث) ، لقد اتخذت ذلك بدقة.
أتذكر جيدًا كيف قمت بتدوين دفتر ملاحظات كامل "تفسير" خوارزميات الفرز والبحث. كما هو الحال مع هياكل البيانات ، فإن البحث الثنائي والفرز السريع يتم تصوره في ذهني بسرعة البرق ، وتذكر كيف تبدو بشكل تخطيطي في المجلد الثالث من Knuth.
تم قراءة السوط في كل مكان. وحتى أثناء الذهاب إلى البحر ، وعدم امتلاك جهاز كمبيوتر قريب ، ما زلت أصف الخوارزميات في دفتر ملاحظات وأدير سلسلة من الأرقام من خلالها. ما زلت أتذكر كم من العذاب كلفني ذلك إتقان عملية الفرز الهرمي ، لكن الأمر كان يستحق ذلك.
الكتاب التالي الذي كان له تأثير قوي علي كتاب التنين. هي "المترجمون: المبادئ ، التقنيات ، الأدوات" - أ. أهو ، ر. سيتي. سبقه هربرت شيلد ، مع المهام المتقدمة في C ++. في هذه المرحلة ، تضافرت النقاط.
بفضل شيلدت ، تعلمت أن أكتب اللغويين والمترجمين الفوريين للغات. ثم ، كتاب التنين ، دفعني إلى كتابة مترجم C ++ الخاص بي.
كتاب التنينبحلول ذلك الوقت ، كان لدي مودم شبكي على الإنترنت ، وقضيت الكثير من الوقت على الموقع الأكثر شعبية للمبرمجين - rsdn.ru. سيطر C ++ هناك ، ويمكن لكل محترف الإجابة عن الأسئلة التي لم أتمكن من التعامل معها. هذا يؤلمني ، وأدركت أنني بعيد كل البعد عن هؤلاء الأعمام الملتحين ، لذلك أنا بحاجة إلى دراسة الجوانب الداخلية من إيجابيات وسلبيات. قادني هذا الدافع إلى أول مشروع جدي - مترجم C ++ الخاص بمعيار 1998. يمكنك العثور على مزيد من التاريخ ورموز المصدر
في هذا المنشور .
المدرسة أو التعليم الذاتي
ولكن العودة إلى الواقع وراء IDE. على الرغم من ذلك ، بحلول ذلك الوقت ، كنت أبتعد بشكل متزايد عن الحياة الواقعية وانغمس في الواقع الافتراضي ، إلا أن كل نفس العمر والمعايير المقبولة عمومًا أجبرتني على الذهاب إلى الكلية. كان ذلك تعذيبا حقيقيا. لم أفهم تمامًا ما كنت أفعله في هذه المؤسسة ولماذا كنت أستمع إلى هذه المعلومات. كانت هناك أولويات مختلفة تماما في رأسي. تعلم Visual Studio 6.0 ، مع محاولة WinApi و Delphi 6.
موقع رائع firststeps.ru ، والذي سمح للجميع بالسرور في الخطوات الصغيرة المتخذة ، رغم أنني لم أفهم الصورة العامة. على سبيل المثال ، في نفس التكنولوجيا MFC أو ActiveX.
ماذا عن الكلية؟ كان مضيعة للوقت. بشكل عام ، إذا لمست موضوع الدراسة ، فقد درست بشكل سيء. حتى الصف السادس كنت تلميذاً يكرم الدارسين ، وبعد ذلك حلقت الثلاثيات ، وفي الصف الثامن وحتى التاسع ، كنت أتخطى في الغالب الفصول الدراسية ، والتي لم أتلق أحزمة وهمية من والديّ.
لذلك ، بعد أن التحق بالجامعة ، كان هناك القليل من الحماس أيضًا.
- أين البرمجة؟ سألت نفسي سؤالا. لكنه لم يكن في النصف الأول من العام. ولكن كان هناك علوم الكمبيوتر مع MS-DOS و Office ، وكذلك الموضوعات العامة.
بالإضافة إلى كل شيء ، كان لدي شخصية تم سحبها ، وكنت متواضعة جدًا. هذه المجموعة المتنافرة الجديدة من الواضح أنها غير ذات مصداقية. وكان متبادل. لذلك ، كل أنواع السخرية لم تستغرق وقتًا طويلاً للانتظار. لقد تحملت لفترة طويلة ، حتى لم أتمكن من الوقوف وضرب أحد المخالفين في الوجه مباشرة في الفصول الدراسية. نعم ، لذلك طار بعيدا عن المكاتب. بفضل والدي - علمني القتال من الطفولة ، ورغبة شديدة ، يمكنني استخدام القوة البدنية. لكن هذا نادراً ما حدث ، لقد تحملت كثيرًا من السخرية في انتظار الحد الأقصى لنقطة الغليان.
بالمناسبة ، اتصل بي الجاني ، الذي فوجئ بشدة بما كان يحدث ، ولكنه ما زال يشعر بأنني متفوق ، في معركة العودة. بالفعل في القفار وراء المدرسة.
لم تكن هذه قبضة أطفال ، كما كان الحال في المدرسة. كان هناك ماش النبيلة ، مع أنوف مكسورة والكثير من الدماء. الرجل لم يكن كذلك من دزينة خجولة وكان يوزع بمهارة السنانير والكلاب الكبيرة. بقي الجميع على قيد الحياة ، ومنذ ذلك الحين لم يخربني أحد في هذه "الكلية للمبرمجين". لدي رغبة في الذهاب إلى هناك واختفت قريبًا تمامًا. لذلك ، توقفت عن الخوض في ذلك ، ولم يكن لي أي تهديدات من والدي. قبل بعض المعجزة ، اعتبروا وجودي في الكلية للصف العاشر من المدرسة ، وكان لي الحق في الذهاب إلى الحادي عشر.
كل شيء سيكون على ما يرام ، لكن الصف الحادي عشر لم يكن أفضل كلية. عدت إلى مدرستي الأم ، قابلت بعض الأصدقاء من معارفي الذين درستهم منذ الصف الأول وآمل أن يكون كل شيء على ما يرام في مكانهم الأصلي. لم يكن هناك سوى تحذير واحد: الرجال ، كانوا أشبه بقطاع الطرق من السلسلة أكثر من الأولاد الذين كنت معهم أصدقاء في الصفوف الدنيا. ذهب الجميع إلى كرسي هزاز ، لاكتساب كتلة العضلات. نظرت مثل الخيزران. نحيف ورقيق جدا. بالطبع ، مثل هذا الزميل الثور يمكن أن يلوي لي بقي واحد.
لذلك بدأ يحدث مع مرور الوقت. ثم لم يكن لمهاراتي القتالية أي تأثير. كانت بالفعل فئات مختلفة جدًا للوزن معي وبقية الأولاد في صفي الأصلي. أيضا ، جعلت ملامح تفكيري شعرت.
دون نشر أفكاري على الشجرة ، غادرت المدرسة أيضًا. حيث شعرت بالراحة أمام شاشة الكمبيوتر ، مع إغلاق باب غرفتي. كان الأمر منطقيًا ، وشعرت حدسيًا أنني كنت أفعل الشيء الصحيح. إن الذهاب إلى المدرسة هو ممارسة عديمة الفائدة ، وحتى السخرية الدائمة هناك ، والتي أصبحت كل يوم أكثر وأكثر تطوراً ... هذا يكفي بالنسبة لي.
بعد صراع آخر في الفصل ، معي في دور اللقب ، غادرت المدرسة ولم أذهب إلى هناك بعد الآن.
حوالي 3 أشهر كنت جالسًا في المنزل ، وأمضي وقت فراغ في دراسة C ++ / WinAPI / MFC و rsdn.ru.
في النهاية ، لم يستطع مدير المدرسة الوقوف عليه واتصل بالمنزل.
- "دينيس ، هل تفكر في الدراسة؟" أو سوف تغادر؟ تجعل عقلك. في طي النسيان ، لن يتركك أحد ". - قال المدير
- "سأرحل" - أجبت بثقة
ومرة أخرى ، نفس القصة. بقي لإنهاء دراستي لمدة نصف عام ، حتى التخرج. لا تتركني دون قشرة. ولوح والداي بي في وجهي وطلب مني أن أتفق مع المخرج بنفسي. جئت إلى مدير المدرسة. صرخت لي لأخلع قبعتي عندما أمشي. ثم سألت بصرامة - "ماذا تفعل معك؟" بصراحة ، أنا شخصياً لم أعرف ماذا أفعل. كنت سعيدًا جدًا بالحالة الراهنة للأشياء. وأخيرا أخذت الكلمة:
"لذلك ، دعونا نفعل هذا." سوف أتفق مع مدير مدرستنا المسائية وستذهب إلى هناك ".
- "نعم"
والمدرسة المسائية - كانت جنة حقيقية ، لأصحاب الأعمال الحرة مثلي. إذا كنت تريد الذهاب ، فأنت لا تريد الذهاب. كان هناك 45 شخصًا في الفصل ، 6-7 منهم ظهروا في الفصل. لست متأكداً مما إذا كان الجميع في القائمة على قيد الحياة ، وكانوا أيضًا مجانًا. لأنه فقط معي ، سرق زملاء الدراسة دراجة نارية لشخص آخر. لكن الحقيقة بقيت. يمكنني ضخ مهارات البرمجة بشكل غير محدود ، والذهاب إلى المدرسة عندما أحتاج إليها حقًا. في النهاية ، انتهيت من اجتياز الامتحانات النهائية. لم يطلب الكثير منهم ، وحتى حصلنا على شهادة التخرج. التخرج ، في حد ذاته ، هو حكاية منفصلة. أتذكر أن اللصوص زملاء الدراسة المحلية أخذ ساعتي مني. وبالكاد سمعت اسم عائلتي الأخير ، عند تقديم الشهادات - قمت بالتعقب بعد وثيقة وطاررت من المدرسة برصاصة حتى لا تتعثر في أي مشاكل أخرى.
كان قبل الصيف. مع دونالد كنوت تحت ذراعك على الشاطئ والبحر والشمس والقرار المشؤوم لكتابة مشروعك الكبير (مترجم).
الجزء 3. الجامعة >>