تمرکز روی کار تحصیل برنامه‌نویسی همروند و موازی

سفر به دشت ستارگان

۱- سفر به دشت ستارگان

به قول ‏⁧ جبران خلیل جبران،

سفر کن به هیچکس هم نگو
‏یک رابطه عاشقانه را زندگی کن
و به هیچکس هم نگو
‏شاد زندگی کن و به هیچکس هم نگو
‏آدم‌ها
‏چیزهای قشنگ را
‏خراب می‌کنند

شاید بعد از کتاب «هایزنبرگ احتمالا اینجا خوابید» کتاب‌هایی که به طور خاص مزش هنوز زیر ذهنمه! (یجور زیر زبونمه) کتاب‌های «کیمیاگر» و «سفر به دشت ستارگان» از پائولو کوئلیو باشن. ماجراجویی‌هایی یک شخص برای رسیدن به یک هدف. حتی هنوز هم آثاری از اون کتاب‌ها رو در ضمیر پنهانم کشف می‌کنم. احساس ماجراجویی رو با اون کتاب‌ها درک کردم (البته کتاب‌های ذبیح‌الله منصوری هم این جنبه من رو تقویت می‌کرد).

می‌شد که ساعت‌ها و ساعت‌ها در بیابان، کنار دریا قدم می‌زدم، جنگل‌‌ها و مسیرهای سخت رو تجربه می‌کردم، در دمای -۳۲ پیاده‌روی‌های طولانی می‌کردم، اما لزومی نداشت همه بدونن.

هر کسی از من می‌پرسید یکی از مهمترین جنبه‌های ذهنیت رو بگو، ماجراجویی حتما یک بخش مهم ازش بود.

کمی که گذشت، دیدم لزومی نداره برای ماجراجویی یا کشف هیجان، فقط در بیابان و جاهای خطرناک قدم بگذاری! می‌تونی جنبه تمرکز اون ماجراجویی‌ها رو در درونت رشد بدی. چی می‌شه اگر یک بازه بزرگ رو فقط کتاب می‌خوندی، حالا شده عدد هم براش بگذاری، مثلا بگی توی این تابستون ۳۰ هزار صفحه کتاب می‌خونم. قبول دارم بعد از مدتی شاید اون بازدهی رو نداشته باشه، اما ماجراجویی‌ها هم همینطورین، همش که مفید نیست! بقول «کلاریسا پنکولا استس» در کتاب «زنانی که با گرگ‌ها می‌دوند» (نقل دقیق از ترجمه «سیمیمن موحد» نشر پیکان):

فاش می‌گویم که من از آن عالمان ربانی نیستم که سر به بیابان می‌گذارند و فرزانه بازمی‌گردند، من معجون‌های زیادی را امتحان کرده‌ام و در هر محل خوابی برای فرشته‌ها طعمه گذاشته‌ام، اما اغلب به جای کسب خرد، بیماری‌های انگلی، ای‌کولای و اسهال عفونی گرفته‌ام، واییی! این است سرنوشت ساحره‌ای از طبقه متوسط با روده‌های حساس!

خلاصه اینکه می‌پذیرم، ماراتون کدزنی ۵۵ روزه، بیابان‌گردی‌های شبانه، وبلاگ نویسی ۶۰ روزه، سفرهای ده‌روزه بدون لپ‌تاپ، بدون گوشی زندگی کردن برای چند روز، فیلم بینی ۳۰ روزه و … (در سه نقطه خیلی رخدادها است) بخش‌های کم اهمیتی هم دارد، بخش‌های کم‌اثر (یا حتی با تاثیر منفی) هم دارد، اما مگر چه چیزی در این دنیا وجود دارد که خالص و تماما اثر باشد، بهترین‌کتاب‌ها به نوعی سراسر مقدمه هستند تا یک نکته را در ذهن شما فرو کنند. یکی از احمقانه‌ترین حرف‌ها و ادعاهایی که شنیدهام، کمال‌گرایی در یادگیری است.

خلاصه این که شما هم می‌توانید در خانه به دشت ستارگان سفر کنید. کافیست یاد بگیری برای چند روز در یک چیز واحد عمیق شوید و سایر چیزها را به دور بیندازید، آنقدر خیر و نیکی در این تمرکز بلندمدت هست که در هیچ نیست. جالب این است که سنت اعتکاف برای این بود که شما از خارج ببرید و تماما بر خلوص ذهنی و تفکر متمرکز شوید، اما سال‌هاست که آنقدر مراسم متعدد در آن گنجانده‌اند که بیشتر شبیه یک اردوی همگانی شده است.

خلاصه این که تلاش کنید آنقدر تلاش کنید و پیاله تمرکز و تک‌محوره بودن زمانی خودتون رو حفظ کنید، خود را پر کنید و سر بکشید، تا به جایی روید که شراب هم نمی‌تواند ببرد!:

 

پرکن پیاله را
که این آب آتشین
دیری است ره به حال خرابم نمی برد
این جام‌ها
که در پی هم می شود تهی
دریای آتش است که ریزم به کام خویش
گرداب می‌رباید و آبم نمی‌برد
من با سمند سرکش و جادویی شراب
تا بیکران عالم پندار رفته‌ام
تا دشت پر ستاره اندیشه‌های ژرف
تا مرز ناشناخته مرگ و زندگی
تا کوچه باغ خاطره‌های گریز پا
تا شهر یادها
دیگر شرابم جز تا کنار بستر خوابم نمی‌برد
پر کن پیاله را
هان
ای عقاب عشق
از اوج قله های مه‌آلوده دور دست
پرواز کن
به دشت غم‌انگیز عمر من
آنجا ببر مرا که شرابم نمی‌برد
آن بی ستاره‌ام که عقابم نمی‌برد
در راه زندگی
با این همه تلاش و تقلا و تشنگی
با این که ناله میکشم از دل
که آب
آب
دیگر فریب هم به سرابم نمی‌برد
پر کن پیاله را

فریدون مشیری

اگر می‌خواهید شعر فوق رو با صدای استاد شجریان گوش کنید می‌تونید ویدیوی زیر رو پلی کنید.

در این لینک، قسمت جام تهی، می‌تونید آلبوم رو تهیه کنید.

 

۲- موازی در مقابل همروندی!

Parallel vs concurent programming

آن‌هایی که با برنامه‌نویسی پیشرفته آشنایی دارند، می‌دانند که تفاوت برنامه‌های موازی و همروند چیست! بسته به برنامه وسخت‌افزار، چطور می‌توان با در نظر گرفتن زمان مناسب برای هر نخ (برنامه) بهینه‌سازی لازم را انجام داد.

بخواهم در یک مثال ساده برای شما بگویم تفاوت چیست،

فرض کنید یک چهار راه دارید که ماشین‌ها از آن عبور می‌کنند. قاعدتا باید با استفاده از چیزی مثل چراغ راهنما نظم بین کارها را رعایت کرد. اگر حجم ترافیک پشت هر چراغ کم باشد، شما سعی می‌کنید به هر مسر زمان کوتاهی (مثلا ۱۰ ثانیه) را نسبت دهید تا افراد زیاد پشت چراغ نمانند.

اما اگر ترافیک زیاد باشد و شما مثلا به هر بخش ۱۰ ثانیه مهلت دهید، تا اومده اون بخشی که چراغ براش سبز شده حرکت کنه و ماشین‌های اون سمت شتاب بگیرن، وقتشون تموم شده و باید وایستن. در چنین مواردی به هر بخش، یک زمان زیادتری می‌دن (مثلا ۵۰ تا ۱۰۰ ثانیه).

پس در چراغ‌های راهنمای هوشمند، زمانی که ترافیک کمه زمان کمی نسبت داده می‌شه و اگر حجم ماشین‌های پشت چراغ زیاد بود زمان زیادتری رو بهش نسبت می‌دن.

مثال بالا برای برنامه‌نویسی همروند (concurrent)  بود، زمانی که می‌خواستید از یک منبع مشترک (چهارراه) برای چندین کاربر استفاده کنید.

برنامه‌نویسی موازی (parallel) مثل یک اتوبان یا جاده چندبانده است، همزمان چندین ماشین در یک مسیر حرکت می‌کنند.

با توجه به محدودیتی که در ذهنمون داریم، ما باید روی مدل همروند کار کنیم. به این صورت که انجام همزمان چند کار رو به حداقل برسونیم (موازی‌کاری) در هر لحظه تمرکزمون رو روی یک کار بگذاریم و بر اساس این که اون کار چقدر بزرگ ومهمه، بخش‌های بزرگی رو بهش نسبت بدیم و انجام سایر کارها رو فدای این کار بکنیم.

با توضیحات بالا:

شاید 

به نفعتون باشه که فدا کردن رو یاد بگیرید، یا حداقل هنر به تاخیر انداختن خوبی داشته باشید، به شرطی که تا اونجایی که می‌شه روی کارهای ضروری زندگیتون متمرکز بشید و از کارهای فرعی و فوری دوری کنید.

به همین دلیله که گاهی جواب دادن یک ایمیل ساده برای من ممکنه یک هفته وقت ببره، چون برای دوره‌هایی تمام تمرکزم رو روی یک کار ضروری می‌گذارم و سایر کارها رو فدا می‌کنم. حالا اون‌هایی که من رو می‌شناسن می‌دونن که من دیر پاسخ دادن به ایمیل، تلفن یا … به معنی کم اهمیت دونستن اون‌ها نیست، بلکه در حال تمرکز هستم. البته که این کار سخت هست و نمی‌شه خیلی باهاش شوخی کرد.

در مصاحبه‌ای از «پال هالموس» (یکی از بزرگ‌ترین ریاضی‌دانان معاصر که 12 سال پیش هم فوت شدند) پرسیدند یکی از سخت‌ترین کارهایی که توی زندگی کردی چی بود؟ اون گفت (این رو دهان به دهان شنیدم و سندی براش ندارم):

یکی از سخت‌ترین بخش‌های زندگی من زمانی بود که می‌خواستم به همسرم بهمونم وقتی روی مبل دراز کشیدم و چشمام رو بستم، دارم یکی از سخت‌ترین کارهای دنیا رو انجام می‌دم (حل کردن مسائل ریاضی در ذهن)!

من برای خیلی‌ها توضیح می‌دم که اوج لذت شما از یک طبیعت، بعد از موندن شما (به اندازه کافی) در اونه، اوج لذت در برنامه‌نویسی، تسلط و کد زنی شبانه‌روزیه، اوج لذت کتاب‌خوانی، متمرکز خوندن و غرق شدن در اونه….اگر شما جلوی تمرکز خودتون رو در یک حوزه می‌گیرید (درس خوندن، مطالعه، ورزش و …)،  علتش اینه به اندازه کافی در اون حوزه عمیق نشدید و مهارت کسب نکردید.

 

۳- زمان سوییچ

برگردیم به همون مثال سوییچ، دیدیم که یک زمان و انرژی زیادی در سوییچ‌ها به خاطر شتاب‌گیری و زمان لازم برای طی شدن بین حرکت‌ها در چهارراه‌ها نیاز بود.

خیلی‌ها از من می‌پرسن که چرا با کار کردن در حین تحصیل مخالفم. من حرفم اینه که تمرکز لازم در درس رو از دست می‌دید و در هیچ کدوم موفق نمی‌شید، از هیچ کدوم لذت نمی‌برید و در نهایت به خاطر ضعفتون، یک آدم دروغگو و فریبکار می‌‌شید! کلی انرژی لازمه تا از کار به درس و از درس به کار برید. بدترین کار ممکن هم کار کردن ساعتیه! چون شما برای این که از کار به درس وسییچ بزنید، یک زمان و انرژی لازم دارید (بین ۵ ساعت تا ۳ روز)، حالا وقتی می‌خواهید زمان بابت این سوییچ بگذارید، با خودتون می‌گید، چرا این وقت رو تلف کنم، ۵ ساعت خودش کلی پول می‌شه، این جوری می‌شه که سوییچ کامل شما به درس هیچ وقت رخ نمی‌ده.

مخصوصا اگر بخواهید یک تحقیقعمیق داشته باشید، سه روز طول می‌کشه تا از کار پاک بشید! به نوعی تحصیل، مطالعه، ارتقا مهارت، یک نوع پرهیزگاری و زهدی می‌خواد که اگر آلوده به فضای جذاب کار بشید، همش رو از دستن می‌دید.

 

4 دیدگاه برای «سفر به دشت ستارگان»

  1. سلام و ممنون به خاطر این متن زیبا.
    فقط یه سوال برام پیش اومده که در حوزه های مختلف هم با اون روبه‌رو شده‌ام.
    در این دو خط آخر شما گفته اید که سه روز طول می‌کشد.
    این سه روز پشتوانه علمی دارد یا نه یک تجربه شخصی است.
    چون مدتی پیش یکی از دوستانم وابسته یک معشوق بود و از او جدا شده بود و از مدت جدایی آنها یکسالی می‌گذشت. او دائما با خودش میگفت که از هر رابطه‌ای که جدا شده است ، مدت زمانی معادل سی برابر آن زمانی را که صرف او کرده است ، باید بگذراند تا او از ذهنش پاک شود.
    این‌ها برای من خنده‌دار بود و به نوعی با تمرکز بر روی اهداف زندگی در تضاد است.
    البته حدود 60 درصد مطالعات من را روانشناسی ( در حوزه‌ها و شاخه‌های مختلف‌اش ) در برمیگیرد و با این پشتوانه این نظرم را بیان کردم.

    1. مسلما به افراد بستگی داره، به توانایی‌های شخصی و حجم تمرکز مورد نیاز هم مربوطه. گاهی اوقات یک اعدادی مطرح می‌شه که در هر صورت می‌شه توشون شک و شبهه ایجاد کرد. اما بهتره یک مقداری داشته باشن تا یک تصوری از میزان زمان داشته باشه.
      این که من بتونم بگم، حرف دوستتون پایه علمی نداره خیلی سخته، اما احتمالا دور از حقیقته! منظورم اینه که بسته به نوع تمرکز شما در زندگی بعدی، این عدد می‌تونه به شدت کم یا زیاد بشه! مثلا فرض کنید شما بعد از قطع رابطه بیکارید و وقت دارید به همه چیز فکر کنید، یا این که اونقدر مشغولید که حتی نمی‌تونید به معشوق فعلی‌تون هم فکر کنید.
      سوییچ کردن در هر صورت هزینه‌بر است. اما من گاهی تا سه روز طول کشیده تا بتوانم در موضوع جدید متمرکز شوم (تهیه مقدمات، آماده‌سازی ذهن برای انجام کار جدید، یادآوری موضوعات مرتبط و …)

  2. من فکر میکردم،شما با کارکردن حین تحصیل موافقی! چون قبلا هم گفته بودی ازدبیرستان کارمیکردی. این مدل رو برای تمام مقاطع میدونید یا فقط لیسانس؟ واگه کسی بخواد بعدلیسانس بره سرکار، اگه بعدازچندسال بخواد بخونه شما توصیه ات اینه اون شغل رورها کنه؟ (البته من باتوجه به رشته خودم گفتم ،مث وکالت و سردفتری و…).
    بعداینا کارنکردن منجر نمیشه مثلا بعد از۱۵سال که اومدیم توکار وحشی بشیم؟ به این دلیل میگم که من کسایی رو دیدم که توهمون پرهیزکاری بودند ولی الان که تو کار هستند، خیلی پرهیزکار نیستند! و اونایی که قبلا هم کار میکردند، اگرچه اندازه این دوستان افتخارات نداشتند ولی تو بازار باهات کار می‌کنند.

    1. جعفر عزیز
      مخالف نیستم! من می‌گم هدف چیه؟ اگه کارت مشخصه،‌ می‌دونی دقیقا می‌خوای چکاره بشی، ریسکش رو می‌پذیری که در مسیر اشتباه بیفتی؟ ریسکش رو می‌پذیری که خودت رو به لایه پایین هرم مازلو محدود کنی، من موردی نمی‌بینم.
      بعد بحث کارآموزی با کار کردن فرق داره.
      این که تابستون بری یا در یک ترم مشخص در کلاس‌ها بری سر کار، من مشکل زیادی توش نمی‌بینم، اگرچه همین هم مشکلات و ریسک‌های خودش رو داره.
      بگذار در بخش‌هایی بیشتر بازش کنم.

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *