خلاقیت در برنامه نویسی

برنامه نویسی در واقع یک حرفه عالی برای کسانی است که دارای خلاقیت در برنامه نویسی در علوم انسانی هستند - از جمله هنرمندان، موسیقی دانان، نویسندگان، وکلا و دانشمندان - زیرا به همه آن ویژگی ها نیاز دارد. شش ویژگی افراد خلاق را که آنها را به برنامه نویسان عالی تبدیل می کند، بررسی کنید.اختراعیکی از کاربران Quoraمی گوید: «[مهندسی نرم افزار] شاید خلاقانه ترین زمینه ای است که می توان تصور کرد. این فقط افکار شماست و صفحه‌ای در انتظار پر شدن با کد است. در آن صفحه شما می توانید هر چیزی را ایجاد کنید."به عبارت دیگر، نوشتن کد با آهنگسازی یا نوشتن قابل مقایسه است. توانایی ایجاد راه حل های زیبا (بله، زیبا!) ویژگی بارز یک توسعه دهنده بزرگ است.همانطور که اساف واینبرگ، رهبر نوآوری محصول توضیح می‌دهد، «هر بار که یک توسعه‌دهنده کد می‌نویسد، مسیری غیر قطعی را به سوی یک راه‌حل ناشناخته در پیش می‌گیرد - راه‌حلی منحصربه‌فرد که قبلاً هرگز ایجاد نشده است. اگر کار منحصر به فرد نبود، او نیازی به نوشتن آن نداشت، او به سادگی آن را کپی و پیست می کرد.»خلاقیت در برنامه نویسیاگر خلاق هستید، احتمالاً متوجه توانایی خود در ایجاد ارتباط بین چیزهای به ظاهر نامرتبط شده اید. باور کنید یا نه، این توانایی برای توسعه دهندگان فوق العاده ارزشمند است: شما می توانید از منابع نامحتمل الهام بگیرید و آن را در کار خود به کار ببرید.مشکوک؟ در این پست وبلاگ، توسعه‌دهنده نرم‌افزار، آلن اسکورکین، برخی از بینش‌های تصادفی خود و آنچه که به آن منتهی شده‌اند را به اشتراک می‌گذارد - مانند برنامه‌ای برای مدیریت همه گذرواژه‌هایش. توجه داشته باشید که Skorkinاین را در سال 2008 نوشت، در همان سالی که پلتفرم مدیریت رمز عبور LastPassتأسیس شد. (LastPassدر حال حاضر بیش از 10 میلیارد دلار ارزش دارد.)نکته این است که الهام گرفتن و خلاقیت در برنامه نویسی و تبدیل افکار خود به چیزی واقعی - تجربه ای که هر فرد خلاقی از نزدیک می داند - نیز جزء بزرگی از توسعه نرم افزار است.سازگاریاین روزها، اکثر تیم‌ها از اصول چابک توسعه نرم‌افزار پیروی می‌کنند – که اتفاقاً افراد خلاق کاملاً برای آن مناسب هستند.به هر حال، تیم های چابک بسیار انعطاف پذیر و تکراری هستند. آن‌ها در آهنگ‌های کاری کوتاه (به نام «دوی سرعت») کار می‌کنند، که در واقع بسیار شبیه به فوران‌های الهام‌بخشی هستند که بیشتر خلاق‌ها دریافت می‌کنند. اسپرینت ها معمولاً 30 روز طول می کشند و تمرکز زیادی روی یک یا دو هدف دارند. پس از پایان دوی سرعت، همه دور هم جمع می‌شوند، متوجه می‌شوند که آیا هنوز در مسیر درست هستند یا نه، و سپس تصمیم می‌گیرند که در طول سرعت بعدی به چه سمتی کار کنند.اگر سازگار نیستید، این روند احتمالاً بسیار ناراحت کننده خواهد بود. خوشبختانه، خلاقان در تعویض مداوم دنده ها و پاسخ به بازخوردها و اطلاعات جدید برتری دارند.مهارت های ارتباطی اگر از یک حرفه خلاق می‌آیید، احتمالاً تمرینات زیادی برای بیان افکار و ایده‌های خود دارید - و این شما را به عضوی ارزشمند در هر تیم فناوری مثل ایرانیان سایبر تبدیل می‌کند.به عنوان مثال، تصور کنید که باید به مشتری توضیح دهید که چرا درخواست او ایده خوبی نیست. اینکه بتوانید یک مفهوم پیچیده را درک کنید و آن را به زبانی ساده بیان کنید، شما را بسیار متقاعدتر می کند. در نتیجه، مشتری احتمالاً عقب نشینی نمی کند (یا به همان اندازه.)یا، شاید یکی از توسعه‌دهندگان از شما بخواهد که یک تصمیم برنامه‌نویسی بحث‌برانگیز که گرفته‌اید را توضیح دهید. اگر بتوانید به وضوح او را در استدلال خود راهنمایی کنید، از تعارض جلوگیری خواهید کرد.مهارت های نوشتاری نیز بسیار مهم است. برای مثال، بدون مستندات محکم برای کد شما، اضافه کردن یا به روز رسانی آن برای اعضای تیم شما (به غیر از هر کسی که در آینده روی کد کار می کند) سخت خواهد بود. این یکی از دلایلی است که بسیاری از برنامه‌نویسان وبلاگ‌های فنی فعالی را حفظ می‌کنند و چالش‌ها و راه‌حل‌های خود را با یک جامعه درگیر از برنامه‌نویس‌های همکار به اشتراک می‌گذارند. این نه تنها به یادگیری کمک می کند، بلکه به ایجاد مهارت های ارتباطی برای محیط کار مدرن و فراتر از آن کمک می کند.شورملاقات با یک فرد خلاق که با شغل خود مانند 9-5 رفتار می کند بسیار نادر است. بیشتر افراد خلاق خود را وارد کارشان می‌کنند و نه تنها از کاری که انجام می‌دهند لذت می‌برند، بلکه از خلاقیت در برنامه نویسی انرژی می‌گیرند.تمایل به غرق شدن در کارتان در برنامه نویسی بسیار ارزشمند است. بهترین توسعه دهندگان نرم افزار زمانی که به صورت فیزیکی در دفتر هستند فقط به کد خود فکر نمی کنند: آنها دائماً آن را در ذهن خود جابجا می کنند و راه هایی را برای بهتر و کارآمدتر کردن آن در نظر می گیرند.و البته، آنها از کاری که انجام می دهند هیجان زده هستند. اکثر برنامه نویسان روی هزاران پروژه جانبی و مخازن GitHubکار کرده اند، که نشان می دهد کدنویسی برای آنها بسیار بیشتر از یک راه برای کسب درآمد است.کنجکاوی و خلاقیت در برنامه نویسیکسانی که در حرفه های خلاق هستند معمولاً در بیل کنجکاوی دارند. همانطور که جوئل چان، دانشمند شناختی، توضیح داد: «خلاقیت نیازمند توجه است: هم برای تمرکز در کار عمیق و حفظ خود از طریق ضخیم و نازک برای به پایان رساندن کار خلاق، و هم برای جستجوی انعطاف‌پذیر در حافظه و محیط خود.سرنخ های حیاتی برای پازل."داشتن انگیزه برای یافتن راه های افزایش خلاقیت در برنامه نویسی یک ویژگی فوق العاده در یک برنامه نویس است: به شما کمک می کند حتی برای پیچیده ترین مشکلات راه حل هایی را مهندسی کنید. به علاوه، کنجکاوی شما را به یادگیری و کاوش سوق می دهد. تعداد زیادی اطلاعات و منابع برای مهندسان وجود دارد، از کتاب ها و پادکست ها گرفته تا جلسات و کنفرانس ها. در حالی که بدون استفاده از این دانش اضافی، قطعاً می‌توان یک توسعه‌دهنده خوب بود، افرادی که خیلی سریع‌تر پیشرفت می‌کنند.