بچهها یه لحظه فکر کنید. اگه از مدیرعامل خفن تلگرام، پاول دورف، بپرسن: «یه جوون امروزی باید چی یاد بگیره؟» شما چی جواب میدین؟ من خودم اولین چیزی که به ذهنم میاد «کدنویسی» یا «هوش مصنوعی» و از اینجور چیزاست.
توجه: ویدیو این پست رو تو یوتوب هم گذاشتم(با فیلتر شکن تماشا کنید)
ولی جواب آقای دورف یه چیز دیگهست! یه جوابی که اولش آدم تعجب میکنه ولی بعدش میگه «دمش گرم، زد وسط خال!». اون صاف میره سر اصل مطلب، یعنی ریشه و پایهی همهی این مهارتها. بذارید حرف کاملش رو بهتون بگم:
«اگه دانشآموز یا دانشجو هستی و نمیدونی روی چی تمرکز کنی، برو سراغ ریاضی. ریاضی یادت میده که بیرحمانه به مغز خودت تکیه کنی، منطقی فکر کنی، مسئلههای گنده رو به تیکههای کوچیکتر بشکنی و قدم به قدم حلشون کنی. این خفنترین مهارتیه که برای ساختن یه شرکت یا مدیریت یه پروژه لازمش داری.»
وقتی یه غول تکنولوژی مثل اون همچین حرفی میزنه، آدم باید یه کم مکث کنه. چرا نگفت برنامهنویسی؟ چرا یهو پرید وسط گفت ریاضی؟ جوابش توی یه کلمه باحال و شاید یکم سخت خلاصه میشه: تفکر الگوریتمی.
تو این پست میخوایم با هم ببینیم این «تفکر الگوریتمی» که میگن چی هست اصلاً، چرا از بلد بودن پایتون و جاوااسکریپت مهمتره و چطوری میتونیم این عضلهی مغزمون رو قوی کنیم.
صبر کن ببینم… یعنی باید ریاضیدان بشیم؟
نه، نه، اصلاً! قبل از هر چیزی، بیاین یه تصور غلط و خیلی بزرگ رو بترکونیم. وقتی دورف میگه «ریاضی»، منظورش این نیست که باید فرمول انتگرال و مثلثات رو از بر باشی تا بتونی یه اپلیکیشن خفن بسازی. این فکر یکی از بزرگترین ترسهاییه که نمیذاره خیلیها سمت برنامهنویسی بیان.
واقعیتش اینه که ۹۵ درصد برنامهنویسها تو کارای روزانهشون اصلاً با ریاضیات پیچیده سر و کار ندارن. منظور دورف، اون «طرز فکر» پشت ریاضیاته، نه خود فرمولهاش.
فکر کن ریاضی یه باشگاه بدنسازی برای مغزه! تو باشگاه وزنه میزنی که عضله بسازی، نه اینکه بعداً تو خیابون بخوای ماشین بلند کنی! اون عضله قوی تو هر کاری به دردت میخوره. ریاضی هم دقیقاً همین بلا رو سر مغزت میاره. «تفکر الگوریتمی» همون عضلهی خفنیه که با این ورزش ساخته میشه.
تفکر الگوریتمی دیگه چه صیغهایه؟ (قول میدم ساده بگم!)
اگه بخوام خیلی خودمونی بگم، تفکر الگوریتمی یعنی بلد باشی یه مشکل گنده، پیچیده و نامفهوم رو برداری و تبدیلش کنی به یه لیست از کارهای کوچیک، مشخص و پشت سر هم. خیلی سادهاش میشه: «نوشتن دستور پخت برای حل یه مشکل.»
فکر کن میخوای قورمهسبزی درست کنی. که نمیشه همینجوری زل بزنی به سبزی و لوبیا و بگی خب، درست شو دیگه! باید یه دستور پخت داشته باشی:
۱. اول پیازا رو ریز کن. ۲. بعد بندازشون تو روغن تفت بخورن. ۳. گوشت رو اضافه کن… و همینجوری برو تا آخر.
این دستور پخت، خودش یه الگوریتمه! تفکر الگوریتمی یعنی تو بتونی برای هر مشکلی، از ساختن یه سایت بگیر تا برنامهریزی برای مسافرت شمال، یه همچین دستور پختی بنویسی. این طرز فکر خفن، چهارتا پایه اصلی داره:
۱. تیکهتیکه کردن (تجزیه): یعنی یه فیل رو به لقمههای کوچیک تقسیم کنی. مثلاً به جای اینکه بگی «میخوام سایت فروشگاهی بسازم»، بگی «اول صفحهی اصلی رو طراحی میکنم، بعد سبد خرید رو میسازم، بعد…»
۲. الگویابی (تشخیص الگو): یعنی ببینی کجای کار داره تکرار میشه. (مثلاً: «عه! این باکسی که برای نمایش محصول تو صفحهی اصلی ساختم، شبیه همونیه که تو صفحهی جستجو هم لازم دارم.»)
۳. بیخیال جزئیات شدن (انتزاع): یعنی بچسبی به اصل مطلب و حاشیهها رو ول کنی. (مثلاً: «وقتی دارم دکمهی “خرید” رو درست میکنم، فعلاً مهم نیست رنگ بالای سایت آبی باشه یا قرمز. فقط باید دکمه کار کنه.»)
۴. نقشه راه کشیدن (طراحی الگوریتم): یعنی این تیکههای کوچیک رو مثل پازل، درست و منطقی بچینی کنار هم تا مشکل حل بشه. (اینم همون نوشتن دستور پخت نهاییه.)
این چهارتا مهارت، دقیقاً همون چیزاییه که دورف گفت و پایهی اصلی «مهارت حل مسئله» هستن.
چرا این مهارت از بلد بودن یه زبان برنامهنویسی مهمتره؟
اینجاست که قضیه جالب میشه. خیلیها فکر میکنن برنامهنویس شدن یعنی سریع بپری یه دوره پایتون ثبتنام کنی. این اشتباهه!
زبان برنامهنویسی فقط یه «ابزاره». تفکر الگوریتمی خود «مهارته».
فرض کن میخوای یه میز چوبی بسازی. زبانهای برنامهنویسی مثل اره و چکش و پیچگوشتی تو هستن. ولی اگه ندونی یه میز چجوری ساخته میشه، بهترین ارهی دنیا هم دستت باشه، تهش یه تیکه چوب به دردنخور میسازی.
اما یه نجار ماهر (کسی که تفکر الگوریتمی بلده)، حتی با دو تا ابزار ساده هم یه میز عالی میسازه و خیلی سریع هم یاد میگیره با اره برقی جدید کار کنه.
زبانهای برنامهنویسی میان و میرن. یه روزی PHP خدایی میکرد، امروز پایتون و Go رو بورسَن، ده سال دیگه هم یه چیز جدید میاد. اما این طرز فکر و مهارت حل مسئله، یه چیزیه که تاریخ انقضا نداره و همیشه و همهجا به کارت میاد.
خب، چطوری این عضله مغزمون رو قوی کنیم؟ (بدون انتگرال!)
خبر خوب اینه که لازم نیست کتابای ریاضی دبیرستان رو دوباره بخونی. با چندتا کار باحال و روزمره میتونی این عضله رو حسابی ورزش بدی:
- پازل بازی کن! جدی میگم! شطرنج، سودوکو، مکعب روبیک، یا حتی این بازیهای فکری تو موبایل، همشون تمرینهای عالی برای مغزن. مجبورت میکنن یه مشکل رو تیکهتیکه کنی و چند قدم جلوتر رو ببینی.
- قبل از کد زدن، فارسی بنویس! وقتی میخوای یه برنامه بنویسی، سریع نپر پای کد. اول رو کاغذ یا تو نوت پد، مراحل کارت رو به زبون سادهی خودمون بنویس. اینجوری مجبوری اول فکر کنی، بعد کد بزنی.
- یه چیز سخت رو به مامانت توضیح بده! سعی کن یه موضوع پیچیده (مثلاً اینترنت چطوری کار میکنه) رو جوری برای یه فرد غیرفنی توضیح بدی که کامل بفهمه. این کار مجبورت میکنه مسئله رو بشکنی و سادهسازی کنی.
- کارهای روزمره رو الگوریتمی کن: حتی برای برنامهریزی آخر هفتهات، یه لیست مرحله به مرحله بنویس. این کار مغزت رو عادت میده که منظم و ساختاریافته فکر کنه.
- یه سر به سایتهای چالشی بزن: سایتهایی مثل LeetCode یا Codewars پر از مسئلههای کوچیک و بزرگ الگوریتمی هستن. حتی اگه اولش سخت باشه، روزی یه مسئله ساده حل کردن، در درازمدت معجزه میکنه.
حرف آخر
توصیهی پاول دورف مثل یه چراغ قوه تو یه اتاق تاریکه. تو دنیایی که همه دنبال یادگرفتن ابزارهای جدید و اسمهای عجیب غریبن، اون بهمون یادآوری میکنه که بچسبیم به اصول اولیه.
این طرز فکر فقط برای ساختن تلگرام و گوگل نیست؛ تو مدیریت پول، برنامهریزی برای آینده، حل کردن مشکلات روزمره و گرفتن تصمیمهای بهتر هم به کارت میاد. یه جورایی یه ابرقدرت برای مغزته که یادت میده به جای غرق شدن تو مشکلات، روی موجهاشون سوار بشی و راه حل پیدا کنی.
پس دفعهی بعد که یه مشکل بزرگ جلوت دیدی، نترس! کلاه کارآگاهیت رو بذار سرت و شروع کن به تیکهتیکه کردنش. تو فقط داری یه مشکل رو حل نمیکنی؛ داری مهمترین مهارت دنیا رو تمرین میکنی!
حالا نوبت شماست! شما برای اینکه مغزتون رو ورزش بدین و بهتر فکر کنین چی کار میکنین؟ تو کامنتها بهم بگید!

