چطور کد نویسِ متفکرِ خلاق باشیم؟

افزایش خلاقیت در کد نویسیاگر تصور شما این است که برنامه نویسان فقط باید کد نویسی بلد باشند؛ در اشتباهید. برنامه نویسی ابدا به معنی دنبال کردن دستورالعمل‌ها نیست. برنامه نویسی بدون داشتن تفکر خلاق یا Creativity غیر ممکن است.برنامه نویسان باید ذهن خلاق و به شدت نوآوری داشته باشند. روزانه ده‌ها موقعیت و نیاز برای آن‌ها پیش می‌آید که قبلا هرگز هیچ کس به آن‌ها برنخورده است. بنابراین هیچ مستندی برای آن وجود ندارد تا برنامه نویس بر اساس آن پیش برود.وقتی یک برنامه نویس با موضوع تازه‌ای روبه رو می‌شود دو راه پیش روی اوست. راه اول این است که برای پیدا کردن بهترین راه حل شروع به تحقیق و پژوهش کند. در روند این پژوهش او درخواهد یافت که آیا قبلا کسی با این چالش روبه رو بوده و را‌ه حل عملی برای آن یافته است یا خیر؟!اما راه دوم این است که برنامه نویس با تکیه بر تفکر خلاقانه و قدرت حل مسئله‎‌ای که دارد، خودش یک راه حل برای چالش پیش رو بیابد.حتی اگر در مسیر اول برنامه نویس برای حل مشکل خود راه حلی هم بیابید که قبلا توسط فرد یا تیم دیگری عملیاتی شده، باز هم باید مطمئن شود که آیا این راه حل با مشکل او به اندازه کافی همخوانی دارد یا خیر؟جالب است بدانید که در شرکت‌های بسیار بزرگی که در حوزه برنامه نویسی کار می‌کنند، اسکرام مسترها یا مدیران پروژه که وظیفه محول کردن مسئولیت‌های کاری را به اعضای تیم برعهده دارند، به برنامه نویسان اجازه نمی‌دهند از روش اول برای کار خود استفاده کنند. این گروه از افراد اعتقاد دارند که فکر هر انسان قادر است برای هر موضوع راه حل متفاوتی بیابد. این مسئله ابدا شبیه به اختراع دوباره چرخ نیست. بلکه به معنی استفاده حداکثری از قدرت خلاقیت برنامه نویس و حذف عوامل وابستگی اوست. به این ترتیب شاید واقعا پس از خرج خلاقیت، چرخ بهتر و هوشمندانه‌تری اختراع شود.برنامه نویسی خلاقانهحالا اگر شما یک اسکرام مستر، متخصص دواپس یا برنامه نویس هستید و می‌خواهید میزان خلاقیت خود یا اعضای تیمتان را افزایش دهید، ادامه این مطلب را بخوانید تا به شما بگوییم چطور می‌توانید قدرت خلاقیت را در خودتان یا برنامه نویسان تیم بالا ببرید.نکته! اگر نمی‌دانید اسکرام مستر کیست؟ می‌توانید مطلب راه راست اسکرام مستر شدن را در وبلاگ ویرگول یگانه مطالعه کنید. البته مطلب دیگری هم درباره متخصص دواپس با عنوان 7 مرحله برای تبدیل شدن به متخصص دواپس (DevOps) داریم که خواندن آن هم خالی از لطف نیست.چطور برنامه نویس خلاق‌تری باشیم؟خلاقیت در کد زنی1- به این فکر کنید که چطور می‌توان ایده‌ها را عملیاتی کرداگر ایده‌ای به ذهن شما خطور کرد یک فهرست از سوالاتی بسازید که در مورد نحوه استفاده از آن ایده حرف می‌زنند. کار بعدی این است که یک جلسه طوفان فکری راه بیندازید و در آن در مورد این حرف بزنید که این ایده چقدر مفید است؟ و کجاها می‌توانید از آن استفاده کنید.این موضوع را فراموش کنید که این ایده باید همین امروز عملیاتی شود یا برگزاری جلسه طوفان فکری(حتی تک نفره) باید نتیجه ملموسی داشته باشد. شاید این ایده اصلا با پروژه‌هایی که همین امروز در دست دارید هیچ تناسب و ربطی نداشته باشد. اما فکر کردن به ایده های جدید و تلاش برای پیدا کردن راه حل عملیاتی برای آن قدرت خلاقیت شما را بالا می‌برد.2- برای یک مشکل حداقل 3 راه حل متفاوت پیدا کنیدبپذیرید که برای حل یک مشکل می‌تواند بینهایت راه حل وجود داشته باشد. گاهی اوقات این راه حل‌ها خیلی هم احمقانه و غیر ممکن هستند. اما به هر حال به ذهن یک نفر خطور کرده‌اند؛ بنابراین پیدا کردن راه حل‌های مختلف را تمرین کنید. شما به عنوان یک برنامه نویس یا کسی که مسئول ارائه راه حل‌های خلاقانه است باید بتوانید از چندین جنبه (حتی جنبه‌های مسخره) به یک موضوع فکر کنید.برای نهادینه کردن این شیوه از اندیشیدن کافی است غذاهای متفاوت بپزید و بخورید، هر روز از یک مسیر متفاوت به سر کار بروید. فیلم‌هایی را تماشا کنید که اصلا در ژانر مورد علاقه شما نیستند و کتاب‌هایی را بخوانید که اصلا از روی جلدشان نمی‌توان تشخیص داد که چه موضوعی دارند و حتما با کودکان بیشتر معاشرت کنید.3- تمام تجربیات کد نویسی خود را به خاطر بسپاریدهر بار که نیاز به حل یک مشکل تازه دارید، سعی کنید به یاد بیاورید که دفعه قبل چطور چنین مشکلی را حل کردید. البته شما همیشه با مشکلات مختلفی روبرو می‌شوید. اما ممکن است بسیاری از این چالش‌ها شباهت هایی با هم داشته باشند. تمام تجربه‌ها ارزشمند هستند زیرا منجر به دستیابی به دانش جدید می‌شوند.4- برای حل چالش‌های جدید به خودتان فرصت دهیداین خیلی طبیعی است که شما گاهی یک مشکل را در عرض 10 دقیه حل کنید و برای حل مسئله دیگری نیاز به حداقل 7 روز کاری داشته باشید. هیچ نویسنده یا هنرمندی نمی‌تواند یک شاهکار بی نظیر را در شرایطی که تحت فشار است، خلق کند. شما هم در پیدا کردن راه‌حل‌های جدید درست مثل هنرمندانی هستید که باید به اندازه کافی زمان برای حل مشکل خود داشته باشید.اگر خیلی تحت فشار بودید، به اندازه کافی از مشکل فاصله بگیرید. به قدر کفایت استراحت کنید. تا جائیکه لازم است توجه خود را معطوف به مشکل دیگری کنید تا بالاخره راه حل‌های خلاقانه به سمت ذهن شما سرازیر شوند.5- تفکر انتقادی را یاد بگیریدفقط به خلاقانه فکرکردن اکتفا نکنید. گاهی لازم است تفکر انتقادی داشته باشید. لازم است هر بخش از اطلاعات را تجزیه و تحلیل کنید. این به شما کمک می‌کند تا انتقادی فکر کنید.6- وحشت نکنیداز روبه رو شدن با مشکلات جدید نترسید. البته شما در ترسیدن تنها نیستید. هر بار که کسی با یک مشکل جدید روبه رو می‌شود اولین حسی که به او دست می‌دهد، وحشت است. اما فکر نکنید که این بدترین اتفاقی است که برای شما رخ داده یا این دشوارترین چالشی است که قرار است با کدنویسی آن را حل کنید همیشه چالش‌های جدید و سخت‌تر در راه هستند.طبیعی است که وقتی از منطقه امن خود خارج می‌شوید همه چیز کمی ترسناک‌ باشد. اما از این دایره محدود بیرون بزنید تا ایده‌های خلاقانه به سمت شما سرازیر شوند.به یاد داشته باشید که اگر شما این چالش را حل نکنید، حتما کسی پیدا خواهد شد که آن را حل کند. پس چه بهتر که صاحب این ایده جذاب که قرار است به افراد دیگری به جز خودتان سود برساند، شما باشید.