
إذا كنت تعمل في مجال التصميم أو الرسم أو الرسوم المتحركة أو أي مجال إبداعي آخر، فستواجه عاجلاً أم آجلاً نفس المشكلة: إن البرامج الحاسوبية التي تستخدمها يومياً ليست مجرد "أدوات".بل هو نظام بيئي متكامل بقواعده وخصائصه الفريدة. إن فهم هذه الفروق الدقيقة قد يُحدث فرقًا كبيرًا بين المعاناة مع جهاز الكمبيوتر والشعور بأنه يُجري عليك معجزات.
بالإضافة إلى اختصارات لوحة المفاتيح وبعض الحيل العشوائية، هناك عالم كامل من التفاصيل حول أنظمة التشغيل والبرمجة وتصحيح الأخطاء وثقافة "التقنية" وطرق العمل يؤثر هذا على كيفية تصميم التطبيقات التي تستخدمها كمبدع وكيفية عملها. إن فهم هذا العالم من الداخل يساعدك على العمل بشكل أفضل مع فرق التطوير، وطلب أشياء واقعية... وابتكار أفكار أكثر قوة لأنك تعرف ما يمكن وما لا يمكن بناؤه.
يونكس، ماك، لينكس، ولماذا يُعدّ النظام أكثر أهمية مما يبدو
بالنسبة للعديد من المبدعين، فإن النقاش الكلاسيكي هو "ماك أم ويندوز للتصميم؟"لكن في عالم البرمجيات، غالباً ما يتجاوز النقاش ذلك إلى مستوى آخر: يونكس مقابل كل شيء آخر. يرث نظام macOS ومعظم توزيعات لينكس فلسفة يونكس، مما يجعلها منصات قوية للغاية لتطوير وأتمتة المهام التي تؤثر بدورها بشكل مباشر على الأدوات التي تستخدمها.
كثيراً ما يقول المبرمجون ذلك "نظام يونكس بأكمله أشبه ببيئة تطوير واحدة كبيرة"لأن كل شيء مصمم لربط أدوات صغيرة وقوية معًا من خلال سطر الأوامر: معالجة الصور، وأتمتة عمليات التصدير، وتشغيل برامج العرض، وإدارة الخوادم، أو تجميع التعليمات البرمجية دون الاعتماد على معالجات الرسوميات. لهذا السبب، صُممت العديد من حزم البرامج الإبداعية المتقدمة، ومحركات الألعاب، وأدوات التصميم ثلاثي الأبعاد مع مراعاة هذه الأنواع من البيئات.
في المقابل، تبدو الأمور أكثر وضوحًا وسهولة في الاستخدام في نظام ويندوز، ولكن تاريخياً، كان أقل "وداً" للتطوير العميق والعمل باستخدام سطر الأوامر.اليوم تقلصت الفجوة بشكل كبير (WSL، PowerShell، إلخ)، لكن ثقافة يونكس لا تزال تتغلغل في الكثير من البرامج التي تستخدمها دون أن تدرك ذلك.
لماذا أنت مهتم بهذا الأمر بصفتك مبدعًا؟ لأن غالباً ما تنشأ عمليات التشغيل الآلي والبرامج النصية والمكونات الإضافية التي توفر لك ساعات من العمل في عالم يونكس هذا.غالباً ما يؤدي العمل ضمن فرق أتقنت ذلك إلى سير عمل أكثر قوة واستقراراً، ويسهل توسيعه مع نمو المشروع.
البرمجة مزيج نادر: المنطق، والهندسة... والكثير من الإبداع
قد تبدو البرمجة من الخارج مجرد حسابات باردة، ولكن في الواقع إنه مزيج غريب من الرياضيات والهندسة والإبداع الجامحتمامًا كما تقوم بإنشاء رسم توضيحي أو لوحة قصصية، يقوم المطور بإنشاء أجزاء من المنطق بحيث يقوم البرنامج بتنفيذ ما تم تخيله بالضبط.
يتفق معظم المختصين على أن تُعد مهارات حل المشكلات والإبداع بنفس أهمية معرفة مليون لغة، إن لم تكن أكثر أهمية.بالنسبة لنفس الوظيفة، عادة ما تكون هناك طرق عديدة لتنفيذها، تمامًا كما توجد ألف طريقة لتصميم غلاف أو شعار؛ المفتاح هو إيجاد الحل الأكثر نظافة وأناقة وسهولة في الصيانة.
ولهذا السبب، تزداد أهمية أن تفهم الفرق الإبداعية ذلك يُعدّ الكود أيضاً تصميماً.هناك قرارات تتعلق بهندسة البرمجيات، وتدفقات البيانات، والهياكل الداخلية التي تؤثر بشكل كبير على ما يمكنك طلبه من تطبيق أو مكون إضافي أو موقع ويب دون تحويل المشروع إلى كائن فرانكشتاين غير قابل للصيانة.
نعم، البرمجة تُسبب الإدمان: يصف العديد من المطورين عملهم بأنه أفضل لغز منطقي موجود.لعبة حيث تقرر أنت القواعد والأجزاء، وهذا يتناسب تمامًا مع عقلية الشخص الذي يستمتع بإنشاء الأشياء من الصفر.
التجميع، وواجهة سطر الأوامر، وغيرها من "طقوس" البرمجة
إذا سبق لك أن سمعت أحدهم يقول "إنها قيد التجميع" ثم يختفي من على كرسيه ومعه فنجان قهوة، فاعلم أن ليس هذا عذراً دائماً، ولكنه عذر مثالي.عملية التجميع تعني ترجمة الكود المصدري إلى برنامج قابل للتنفيذ، وفي لغات مثل C++ أو في محركات الألعاب الكبيرة، يمكن أن تستغرق العملية عدة دقائق أو حتى ساعات.
يوما بعد يوم ، يُخصص وقت التجميع هذا للتنفس، ومراجعة المفاهيم، أو ببساطة لإعادة ضبط ذهنكفي البيئات الإبداعية، عندما تعمل مع محركات العرض أو عمليات بناء الألعاب الثقيلة، يحدث شيء مشابه: هناك فترات توقف في انتظار انتهاء الجهاز، وتستغل العديد من الفرق هذه الفترات لمناقشة الأفكار أو صقل التصاميم أو مراجعة المهام.
يرتبط بهذا الأمر سطر الأوامر، تلك الشاشة السوداء التي تبدو مخيفة في البداية، ولكن بمجرد إتقانها، يصبح الأمر أشبه بعصا سحريةما تفعله هناك في الواقع هو البرمجة المصغرة: فأنت تكتب تعليمات بلغة برمجة نصية (مثل Bash) لأتمتة الإجراءات التي ستكون مؤلمة في واجهة رسومية.
بالنسبة للمبدعين المتقدمين، فإن تعلم أربعة أشياء عن أجهزة الكمبيوتر الطرفية قد يكون ذا قيمة كبيرة: أعد تسمية آلاف الملفات، وحوّل التنسيقات دفعة واحدة، وشغّل برامج العرض، وانقل النسخ الاحتياطية، أو قم بمزامنة المشاريع. دون لمس الفأرة. إنها طريقة أخرى "للتحدث بلغة" الحاسوب والاقتراب أكثر من طريقة تفكير المبرمجين.
الجانب المظلم للبرمجة: الفواصل المنقوطة، والأخطاء البرمجية، وتصحيح الأخطاء الذي لا ينتهي
من أغرب غرائب البرمجيات أن الأشياء الصغيرة قادرة على تدمير الأشياء العملاقةيمكن أن يؤدي وضع فاصلة منقوطة في غير موضعها، أو قوس مفقود، أو قوس يغلق في المكان الخطأ إلى إفساد مئات الأسطر المصممة بعناية، تمامًا كما يمكن أن تؤدي طبقة مقفلة بشكل غير صحيح إلى تدمير ملف PSD كامل.
يقضي المطورون جزءاً كبيراً من يومهم في نمط عمل غير جذاب ولكنه ضروري للغاية: أخطاء تصحيح الأخطاءإن البحث عن الأخطاء يشبه البحث عن مخلوقات تختبئ في أماكن غريبة: فهي لا تتسبب دائمًا في تعطل البرنامج، وأحيانًا تؤدي فقط إلى ظهور أخطاء غريبة في أوقات محددة، أو تظهر مع بيانات معينة أو على أجهزة معينة.
في عالمك، يُترجم هذا إلى أشياء مثل أدوات لا تفشل إلا مع نوع واحد من الملفات، ورسوم متحركة تبدو جيدة على جهاز الكمبيوتر الخاص بك ولكنها تتعطل في بيئة الإنتاج، ومواقع ويب لا تتعطل إلا في متصفح معين....والتي، بشكل مفاجئ، عادة ما تكون الجزء المرئي من خلل أعمق بكثير في الكود.
للتغلب على هذا، يقوم معظم المبرمجين بتطوير ترسانة من تقنيات تصحيح الأخطاء: استخدم السجلات، وأدوات تصحيح الأخطاء الرسومية، ونقاط التوقف، وطباعة حالة المتغيرات....بل ويقدمون مكافآت داخلية لاكتشاف بعض الأخطاء البرمجية المراوغة. وهذا سبب آخر يجعل التغييرات "السريعة" نادراً ما تكون سريعة حقاً.
نعم، هناك جانب فكاهي. فالعديد من التعليقات في الكود تتحول إلى أعمال فنية صغيرة من السخرية. "// سحر. لا تلمسه."، "// سكران، أصلحه لاحقًا" أو "// اختراق لمتصفح إنترنت إكسبلورر (بافتراض أن إنترنت إكسبلورر متصفح)"تُعدّ روح الدعابة هذه جزءًا مهمًا من ثقافة المطورين.
الكسل، والأتمتة، والتحكم في الإصدارات: فضائل متنكرة
قد يبدو الأمر غريباً، لكنه قيد التطوير يُعتبر الكسل، عند فهمه بشكل صحيح، فضيلة مهنية.الفكرة بسيطة: إذا كان العمل متكررًا ويدويًا، فسيبحث الشخص الذكي عن طريقة لأتمتته حتى لا يضطر إلى القيام به مرة أخرى. هذا "الكسل" هو ما يدفع إلى استخدام البرامج النصية والإضافات والإجراءات الآلية ووحدات الماكرو التي تستخدمها يوميًا دون أن تعرف مصدرها.
في المشاريع الجادة، تعتمد هذه الفلسفة على عنصر أساسي آخر: التحكم في الإصدارات، مع اعتبار Git الملك المطلقبفضل Git، يمكن للفرق العمل على نفس المشروع دون أن تتداخل أعمال بعضها البعض، واختبار الأفكار المجنونة في فروع منفصلة، والتراجع عندما يتعطل نصف التطبيق، أو معرفة من قام بتعديل ماذا ومتى.
بالنسبة للمحترف المبدع الذي يتعاون مع المطورين، فإن فهم الأساسيات أمر ضروري. ما هو الالتزام، أو الفرع، أو الدمج؟ إنه يساعد كثيراً: فهو يسمح لك بتتبع تقدم التطوير، ومراقبة وقت إدخال تغيير يؤثر على تصميمك، وتنسيق وقت تثبيت الميزات الجديدة والتركيز على تحسين ما هو موجود بالفعل بشكل أفضل.
علاوة على ذلك، تنطبق ثقافة الأتمتة هذه أيضًا على المهام التي تبدو أقل "تقنية": نصوص النشر، وإنشاء الوثائق تلقائيًا، والاختبارات التي تُجرى تلقائيًا كل ليلة، وخطوط الأنابيب التي تُحوّل الأصول، وتضغط الصور، أو تُنشئ الإصدارات لأجهزة مختلفة دون تدخل بشري. كل هذا نابع من شخص رفض تكرار نفس العملية يدويًا مئة مرة.
التعليقات، والأسماء الواضحة، والهوس بكتابة التعليمات البرمجية القابلة للقراءة
تمامًا كما أن ملف التصميم الذي يحتوي على طبقات مُسماة بشكل جيد ومجموعات منظمة يحظى بتقدير كبير، يحتاج الكود إلى الترتيب والسياق والوسوم الجيدة.وإلا، فإنها ستصبح غابة لا يمكن اجتيازها، حتى بالنسبة للشخص الذي كتبها قبل بضعة أسابيع.

يولي المبرمجون الجيدون أهمية كبيرة لأمرين: أسماء وتعليقات ذات مغزى توفر سياقًا حقيقيًااستدعاء متغير userAge o totalCost هذا يقول أكثر بكثير مما هو عليه x o tempإن الإشارة إلى سبب اختيار خوارزمية معينة أو الحيلة المستخدمة أكثر فائدة بشكل لا نهائي من التعليق بـ "// أضف رقمين".
من الناحية العملية، يؤدي هذا إلى إنشاء نوع من "النص التقني" الداخلي للمشروع، والذي يمكن للمطورين الآخرين قراءته لفهمه. قرارات تصميم البرمجيات التي تقف وراء كل وحدةعندما يكون الكود مكتوبًا بشكل جيد، فإن أفضل تعليق يكون أحيانًا هو الكود نفسه، الذي يشرح نفسه بفضل تلك الأسماء المختارة بعناية.
يتناسب هذا الهوس بالوضوح تمامًا مع المفاهيم التي ربما تكون قد سمعت بها، مثل كتابة كود نظيف، أو إعادة هيكلة الكود، أو قاعدة "لا تكرر نفسك" (DRY).تشير كل هذه الفلسفة إلى نفس الشيء: أن يكون البرنامج سهل الفهم والتغيير والاختبار والتوسيع دون أن يتسبب في تعطل كل شيء.
الاختبار، وتطوير البرمجيات القائم على الاختبار، ولماذا لا يكفي "اجعله يعمل اليوم".
هناك جانب آخر أقل وضوحًا ولكنه أساسي في أي برنامج تستخدمه وهو النظام البيئي للاختبارات الذي يقف وراءتوجد اختبارات الوحدة، واختبارات التكامل، والاختبارات الآلية أو اليدوية تحديدًا لمنع تغيير صغير يضيف خيارًا طلبته من تعطيل 20 جزءًا آخر من النظام بصمت.
توجد منهجيات مثل TDD (التطوير الموجه بالاختبار) حيث أولاً، تُكتب الاختبارات، ثم يُكتب الكود الذي يجعلها تجتاز الاختبارات.قد يبدو الأمر غير بديهي، ولكنه يجبر المطور على التفكير منذ البداية في السلوك المطلوب، والحالات الشاذة، وكيفية التحقق من أن كل شيء يستمر في العمل بشكل صحيح بمرور الوقت.
بالنسبة للفرق الإبداعية، يترجم هذا إلى شيء ملموس للغاية: إن طلب "هذا التغيير الصغير فقط في الزر" أو "إضافة تأثير جديد" له تكلفة حقيقية من حيث الاختبار والتحقق.ليس الأمر أنهم لا يريدون مساعدتك؛ بل إن أي تعديل، مهما بدا صغيراً، على واجهة المستخدم، يمكن أن يكون له آثار جانبية، وعليهم التأكد من أن بقية التطبيق لا يتعطل.
بالإضافة إلى ذلك، تقوم العديد من الشركات بإنشاء مجموعات اختبار تعمل أثناء نوم الفريق أو في عطلة نهاية الأسبوع: يتم تجميع الكود، ويتم تشغيل مجموعة من الاختبارات، ثم تتم مراجعة النتائج.إذا حدث خطأ ما، فسيتم اكتشافه قبل وقت طويل من وصوله إلى المستخدمين النهائيين... وهذا يشمل المبدعين الذين يعتمدون على هذه الأدوات في الإنتاج.
الخوارزميات، وهياكل البيانات، والسرعة: المحرك الخفي لأدواتك
وراء كل عملية بحث عن ملف، وكل فلتر يتم تطبيقه في ثانية، أو كل لوحة تظل مرنة حتى مع وجود آلاف الطبقات، هناك شيء لا تراه: الخوارزميات وهياكل البيانات المختارة بنية خبيثةإن استخدام قائمة أو مكدس أو طابور أو قاموس (خريطة تجزئة) يحدث فرقًا كبيرًا في الأداء.
على سبيل المثال إذا كنت بحاجة إلى العثور على عناصر بسرعة، فإن القاموس أكثر كفاءة بكثير من القائمة الأساسية.يُمكّن هذا محرر النصوص من العثور على نمط أو رمز أو عنصر في أجزاء من الثانية، حتى في المشاريع الضخمة. وينطبق الأمر نفسه على كيفية تخزين وحدات البكسل والمتجهات والشبكات ثلاثية الأبعاد ومسارات الصوت.
عندما يكون تطبيق إبداعي بطيئًا، فليس ذلك دائمًا خطأ جهاز الكمبيوتر الخاص بك: أحيانًا تكمن المشكلة في قرارات تصميم البرمجيات التي اتُخذت قبل سنوات.أو في اختصارات سريعة تم اتخاذها "مؤقتاً" ثم بقيت إلى الأبد، وهو أمر شائع للأسف في العديد من المشاريع.

ولهذا السبب تصر العديد من أعمدة النصائح المهنية على تجنب التحسين المبكر، ولكن اختر الخوارزميات والهياكل المناسبة منذ البداية.تتيح هذه القاعدة المتينة إمكانية التوسع: المزيد من الطبقات، والمزيد من التأثيرات، والمزيد من المستخدمين، والمزيد من الأجهزة... دون أن يتعطل النظام.
ثقافة المبرمجين: نكات غريبة، نظام ثنائي، و"لا يوجد ملعقة"
إذا كنت تعمل مع مطورين، فستسمع عاجلاً أم آجلاً أشياء من هذا القبيل "هناك عشرة أنواع من الناس: أولئك الذين يفهمون النظام الثنائي وأولئك الذين لا يفهمونه."إنها نكتة كلاسيكية تستغل حقيقة أن العدد 10 في النظام الثنائي يُعادل 2 في النظام العشري. هذا النوع من الفكاهة التقنية جزء من ثقافة فرعية كاملة: الميمات، والمنتديات الفرعية على موقع ريديت، والإشارات إلى أفلام مثل ذا ماتريكس، وحرب النجوم، وستارشيب تروبرز...
العبارة الشهيرة "لا توجد ملعقة" كثيراً ما يُستخدم تشبيه فيلم "الماتريكس" لوصف ذلك الشعور برؤية ما وراء واجهة التطبيق وفهم كيفية بنائه من الداخل. عندما تتقن البرمجة، لا يقتصر الأمر على مجرد تصفح برنامج أو موقع ويب، بل تبدأ في تخيل مكوناته، وبنيته، وكيفية تواصل أجزائه، ومواضع الخلل المحتملة.
كما تتم مناقشة الأخطاء كما لو كانت مخلوقات فيلم "ستارشيب تروبرز": صغيرة الحجم، لكنها قادرة على إحداث فوضى عارمة.تخلق تلك اللغة المشتركة مجتمعاً؛ فالدعابة هي وسيلة للتعامل مع ضغط وجود أنظمة ضخمة تعتمد على التعليمات البرمجية الخاصة بك.
بالنسبة للمحترفين المبدعين، فإن التواصل مع تلك الثقافة يجعل العلاقة مع المبرمجين أكثر سلاسة: لفهم نكاته، وإشاراته، وغرائبه فهو يسهل التواصل بشكل كبير عند مناقشة المواعيد النهائية أو القيود التقنية أو التغييرات في اللحظة الأخيرة.
كيف يتعلم المبرمجون (فعلاً) وماذا يعني ذلك بالنسبة لك
ومن الحقائق الأخرى المثيرة للاهتمام أنه على الرغم من وجود شهادات جامعية، وبرامج تدريبية مكثفة، وبرامج ماجستير، يحدث معظم التعلم الحقيقي في البرمجة من خلال العملالأمر أشبه بمهنة منه بمادة جامعية: تتعلم من خلال الممارسة، وكسر الأشياء، وإصلاحها، وتكرار الدورة مرارًا وتكرارًا.
يتفق معظم المطورين على فكرة واحدة: لست بحاجة إلى حفظ كل شيءتوجد وثائق رسمية، ومنتديات، ومقالات، وكتب مثل "97 شيئًا يجب أن يعرفها كل مبرمج"، بالإضافة إلى الكثير من الموارد المتاحة عبر الإنترنت، مثل: دروس تعليمية حول لغات البرمجة باللغة الإسبانيةالشيء المهم هو معرفة كيفية البحث والاختيار وتطبيق تلك المعرفة على مشكلة معينة، تمامًا كما أنك لا تعرف جميع اختصارات برنامج فوتوشوب عن ظهر قلب، ولكنك تعرف أين تبحث عندما تحتاج إليها.
علاوة على ذلك، ينصح الجميع تقريباً بالتخصص في المجالات التالية: اختر مجالًا (الويب، أو تطبيقات الجوال، أو الخوادم الخلفية، أو البيانات، أو ألعاب الفيديو...) وتعمق فيه أكثر بدلاً من محاولة الإلمام بكل جوانب التكنولوجيا، يمكن أن يُلهمك هذا المنطق نفسه: إن فهم كيفية عمل البرامج في مجال إبداعك سيجعلك أكثر قوة بكثير من مجرد معرفة القليل عن كل شيء دون إتقان أي شيء.
ومن الأمور التي تتكرر أيضاً في العديد من الاستطلاعات الداخلية أهمية الموجه و"البرمجة الثنائية": برمجوا في أزواج، واسمحوا للآخرين بمراجعة الكود الخاص بكم، واطلبوا المساعدة، وتقبلوا النقد.تمامًا كما هو الحال عندما تشارك لوحة القصة أو لوحة الأفكار مع شخص آخر وتقبل التعليقات لتحسين العمل.
واقع العمل في مجال تطوير البرمجيات: الوحدة، والتركيز، وسماعات الرأس الضخمة
في الداخل، تتشابه الحياة اليومية لفريق تطوير البرمجيات مع العديد من جوانب الاستوديو الإبداعي: ساعات طويلة أمام الشاشة، وفترات تركيز طويلة، وعلاقة حب وكراهية مع مقاطعاتليس من غير المألوف رؤية نصف الفريق يرتدي سماعات رأس ضخمة لإلغاء الضوضاء، كما لو كانت خوذات عمل إلزامية.
تصبح الموسيقى أداة للإنتاجية: قوائم مرنة للتفكير المعماري، وشيء أكثر قوة للمهام الميكانيكية، وصمت تام لتصحيح الأخطاء المعقدة.سماعات الرأس ليست مجرد نزوة: إنها إشارة اجتماعية تعني "لا تقاطعني الآن، أنا في وضع التركيز"، تمامًا كما تستخدم بعض الاستوديوهات الأعلام أو الإشارات المادية الصغيرة على الطاولة.

وهناك جانب آخر أقل وضوحاً: قد يؤدي العمل لفترات طويلة بمفردك أمام جهاز الكمبيوتر إلى الشعور بالعزلة.يؤكد العديد من المخضرمين على ضرورة عدم السماح بمعاملة المرء كآلة، وعلى أهمية تنمية حياة خارج نطاق البرمجة: هوايات، علاقات، نشاط بدني، راحة. فالعقل الذي يصمم الحلول هو نفسه الذي يصمم واجهات المستخدم، وهو بحاجة إلى مساحة.
في الوقت نفسه، هناك شيء حقيقي للغاية يسمى إدمان البرمجةعندما تنغمس في شيء ما، يسهل عليك قضاء ليالٍ كاملة "لإنهاء هذه الوحدة الدراسية" وتنسى الأكل والنوم، بل وحتى النهوض من مكانك. وكما هو الحال مع أي شغف إبداعي، عليك أن تتعلم وضع حدود لتجنب الإرهاق.
العقلية، ومتلازمة المحتال، والمنافسة الصحية
معظم الأشخاص الذين يدخلون مجال البرمجة يأتون من خلفيات تقنية، ولكن هذا لا يعني أن الشخص الحاصل على خلفية في "العلوم الإنسانية" لا يمكن إعادة تأهيله.إن ما يقدره المحاربون القدامى أكثر من غيره ليس نوع شهادة الثانوية العامة، بل الاتساق، والقدرة على التعلم، والراحة في التفكير المنطقي.
يعاني معظم العاملين في هذا المجال من مشكلة شائعة الانتشار: متلازمة المحتالقد ينتابك شعور "أنا لا أعرف ما يكفي، سأُكشف، لستُ مؤهلاً لهذه المهمة" بغض النظر عن مستوى خبرتك. يستخدمه الكثيرون كحافز لمواصلة التعلم، طالما أنه لا يؤدي إلى قلق مُشلّ.
تُعدّ المنافسة جزءًا من المشهد أيضًا، ولكن في شكلها الصحي تكون أشبه بـ "التنافس" بين الزملاء لمعرفة من يُحسّن أداء الوحدة البرمجية بشكل أفضل أو من يكتب الكود الأكثر أناقة. الأمر ليس كالحرب لمعرفة من يدوس على من. إن تقدير مبرمج تُعجب به لعملك يشبه إلى حد كبير إعجاب شخص مبدع آخر برسوماتك أو مقاطع الفيديو الخاصة بك.
في هذا السياق، يُعدّ تعلّم تقبّل الملاحظات أمراً بالغ الأهمية: عندما تُمدح، لا تضل طريقك؛ وعندما تُنتقد، لا تستسلم.يتغير هذا القطاع بسرعة كبيرة لدرجة أنه ستكون هناك دائمًا تقنيات لا يمكنك التحكم بها وأشخاص يعرفون أكثر عن شيء محدد، والتعايش مع ذلك جزء من اللعبة.
الجزء الأكثر استهلاكًا للوقت: تصحيح الأخطاء، وإدارة الإحباط، وتحديد وقت التبديل
إذا نظرت فقط إلى النتائج النهائية، فقد تعتقد أن المطورين يقضون يومهم كله في كتابة ميزات جديدة، ولكن في الواقع يُقضى جزء كبير من الوقت في تصحيح الأخطاء وتعديل الأشياء الموجودة بالفعل.غالباً ما يعني المضي قدماً في أي مشروع اكتشاف الأخطاء الصغيرة التي تمنع بقية النظام من التقدم.
وهذا يسبب ذروات كبيرة من الإحباط: مشاكل يصعب اكتشافها، ومشاريع تفشل دون تفسير واضح، وعملاء يطالبون بمواعيد نهائية مستحيلة.يقول العديد من المهنيين إنهم مروا بلحظات أرادوا فيها ترك كل شيء وتغيير القطاعات، خاصة عند العمل على منتجات معقدة.
تبدو الاستراتيجيات التي يوصون بها مألوفة: المثابرة، والتحفيز الذاتي، والشعور بالفخر بإنجاز العمل على أكمل وجه، والشغف الصادق بالمهنة.كما هو الحال في أي مجال إبداعي يتطلب الكثير من الجهد، فإن هذا المزيج هو ما يجعلك تحاول مرة أخرى عندما لا ينجح شيء ما، وهو ما يميز أولئك الذين يبقون على السطح عن أولئك الذين يصبحون جيدين حقًا.
كما أن معدل دوران الموظفين أمر شائع إلى حد ما: يتلقى المرشحون الجيدون عروض عمل باستمرار.تشير العديد من النصائح هنا إلى أمر واحد: ابحث عن ثقافة شركة تتوافق مع قيمك، وتذكر أنك في المقابلة تُقيّم الشركة أيضاً. ستقضي ساعات طويلة في التفكير في مشاكلها؛ لذا فإن التوافق الشخصي الجيد والقيم المشتركة أهم بكثير مما قد يبدو في سيرتك الذاتية.
المقابلات الفنية، ودمج الفريق، والتواصل

في أوساط مطوري البرامج، تحظى المقابلات التقنية بشهرة واسعة... ولكنها في الوقت نفسه تتمتع بسمعة سيئة. ويعتقد العديد من المخضرمين أن إنها مبالغ فيها، والفشل في أحدها لا يدل على الكثير من إمكانياتك.عادة ما تقيس هذه الاختبارات مجموعة محددة من المهارات تحت الضغط، وليس قدرتك الفعلية على التعلم والتعاون وإكمال المشاريع بنجاح على المدى الطويل.
بدلا من ذلك، غالباً ما تُحدث المهارات الشخصية فرقاً كبيراً: معرفة كيفية التواصل، وطرح الأسئلة عندما لا يكون شيء ما مفهوماً، ودمج الملاحظات، والتعاون مع أشخاص من خلفيات مختلفة (مثلك، إذا كنت مبدعاً) والحفاظ على الهدوء في اللحظات المتوترة.
عند الانضمام إلى شركة، فإن أهم توصية لأي مبرمج مبتدئ هي لا تخف من طرح الأسئلة، ولكن افعل ذلك بتأنٍّ.حدد أوقاتًا محددة مع مرشدك لطرح أسئلتك، وتجنب المقاطعة إلا في حالات الضرورة القصوى، واحرص على تحضير أسئلتك جيدًا. وينطبق الأمر نفسه عند انضمامك إلى فريق تقني: فكلما كان تواصلك أوضح وأكثر تنظيمًا، كلما كان اندماجك أفضل.
في البيئات التي لا يتم فيها تعيين مرشد، فإن الإجراء الأكثر استحسانًا هو لكسب ثقة شخص ذي خبرة وبناء علاقة مهنية متينة مع ذلك الشخص. في نهاية المطاف، تعتمد المشاريع الكبيرة على جودة الكود والتصميم بقدر اعتمادها على جودة العلاقات بين أولئك الذين يقومون ببنائها.
في نهاية المطاف، يكمن سرّ سحر الأدوات التي تستخدمها كل يوم في مزيج بشري إلى حد كبير: الأشخاص الذين يتعلمون باستمرار، ويشعرون بالإحباط، ويتنافسون، ويتعاونون، ويضحكون على النكات الغريبة المتعلقة بالثنائيات، ويحولون الأفكار تدريجياً إلى برامج.عندما تفهم، بصفتك مبدعًا، هذه الفضولات وطرق العمل، يصبح من الأسهل بكثير التحدث بنفس اللغة، وطلب ما يمكن بناؤه بالفعل، والمشاركة في تلك العملية "السحرية" تقريبًا لجعل جهاز الكمبيوتر يقوم بالضبط بما تتخيله.
