در دنیای امروز که ابزارهایی مانند Copilot و ChatGPT میتوانند در چند ثانیه قطعهکدهای پیچیده تولید کنند شاید این سوال پیش بیاید که آیا هنوز به "تفکر عمیق" در برنامهنویسی نیاز داریم؟

برخی به سوال فوق پاسخ منفی میدهند اما برخی معتقدند تکیه بیش از حد به ابزارهایی که پاسخ آماده میدهند، "فرآیند تفکر" را نابود میکند. برای یک برنامهنویس یا توسعهدهنده نرم افزار، فرآیند تفکر یعنی همان کلنجار رفتنهای طولانی، خستگی و حتی ناامیدی برای درک یک باگ یا طراحی یک معماری پیچیده؛ یعنی همان چیزی که نظم و شخصیت حرفهای او را میسازد.
برخلاف تصور، ابزارهای قدرتمند امروزی نیاز به فکر کردن را از بین نبردهاند، بلکه آن را مهمتر کردهاند. ما باید بتوانیم آنچه را که ماشین تولید میکند، تفسیر و نقد کنیم. بدون تخصص فنی و توانایی تفکر انتقادی، به راحتی توسط خروجیهای اشتباه یا ناقص، فریب خواهیم خورد. در واقع هوش مصنوعی باعث شده است که مهارتهای تشخیص دروغ و تفکر شفاف ارزشمندتر از همیشه شوند.
در ادامه اصولی برای رسیدن به تفکر انتقادی در دنیای برنامهنویسی پیشنهاد شده است:
1. بازگشت به اصول اولیه: بسیاری از برنامهنویسان به کپی کردن راه حلها از اینترنت و سپردن کامل کار به هوش مصنوعی بسنده میکنند. اما متفکر واقعی کسی است که به جای اینکه یک کتابخانه جدید را به پروژه اضافه کند از خود بپرسد: "این کد واقعا چطور کار میکند؟". شکستن مسائل پیچیده به اجزای سازنده اصلی و بازسازی آنها، مهارتی است که یک برنامهنویس معمولی را از یک مهندس نرمافزار متمایز میکند.
2. تفکر مجدد: افکار ما و به خصوص خروجیهای اولیه هوش مصنوعی اغلب اشتباه هستند. باید یاد بگیریم در برخی مواقع سرعت خود را کم کرده و بازنگری کنیم، به خصوص زمانی که کاملا از درستی یک راهحل مطمئن هستیم.
3. عمیق شدن: برای درک واقعی یک تکنولوژی باید در آن غرق شد. یک مهندس نرمافزار باید بتواند یک رشته کنجکاوی را تا رسیدن به "هسته اصلی" موضوع دنبال کند. یک اصطلاح وجود دارد که میگوید: "ورودی زباله، خروجی زباله تولید میکند." اگر ذهن را با اطلاعات سطحی و پراکنده پر کنیم، نباید انتظار خروجیهای درخشان داشته باشیم.
4. نوشتن: در برنامهنویسی، نوشتن مستندات یا بلاگهای فنی فقط برای دیگران نیست؛ بلکه فرآیندی است برای صیقل دادن فکر خودمان. نوشتن و بازنگری در کد، راهی است برای پیدا کردن حفرههای منطقی. تنها یک ساده لوح به اولین ایده یا اولین کدی که می نویسد اعتماد میکند.
5. حذف ایگو: بزرگترین دشمن یادگیری، "غرور" است؛ چرا که غیرممکن است چیزی را که فکر میکنیم از قبل میدانیم، یاد بگیریم. با رشد دانش ما، ساحل نادانیمان نیز بزرگتر میشود. به عنوان یک مهندس نرمافزار باید بتوانیم "فنجان ذهن" خود را خالی نگه داریم تا پذیرای فناوریها و متدولوژیهای جدید باشیم.
در نهایت، برنامهنویسی بیش از آنکه دانش نوشتن دستورات باشد، هنر حل مسئله است. در عصر ماشین ارزشمندترین دارایی ما کدی نیست که مینویسیم، بلکه توانایی ما در شفاف فکر کردن، پرسیدن سوالات درست و نترسیدن از مسیرهای دشوار یادگیری است.