مهمترین تصمیم زندگی از دید ریک راس نویسنده کتاب A Perfect Day for Boss Up:
How you choose to spend your time is your most important decision in life.
گزیده:
ندارد.
پیشگفتار:
چندی پیش به صورت اتفاقی با مفهومی آشنا شدم با نام The Twelve-Factor App یا برنامه ۱۲ عاملی. برای من جالب آمد و بعد از گفتگو و بررسی آن در جلسات هفتگی با چند تن از دوستانم، تصمیم گرفتم که روزی آن را ترجمه نمایم. در این بین موضوع را با دوست خوبم حمید آقای خاتمی مطرح کردم و ایشان استقبال کردند تا آن را ترجمه نمایند. قرار بر آن شد که ایشان مطالب را ترجمه نمایند و بازنگری نهایی نیز بر عهده من باشد. ضمن تشکر صمیمانه از ایشان، امیدوارم آموختن این موضوع برای شما هم مفید باشد.
گفتار:
۱- معرفی
در دنیای مدرن، نرم افزارها معمولا به صورت خدمت (سرویس) ارائه میشوند و با نامهای برنامهی تحت وب (web apps) یا «نرمافزار در قالب خدمت» (software-as-a-service) شناخته میشوند.
برنامه دوازه عاملی (twelve-factor app) روشی برای ساخت برنامههای «نرمافزار در قالب خدمت» است که دارای ویژگیهای زیر هستند:
روش دوازده عاملی را میتوان برای برنامههایی که با هر زبانی نوشته شدهاند و برنامههایی که از هر ترکیبی از خدمات (پایگاه داده، صف (queue)، حافظه پنهان (cache) و غیره) استفاده میکنند، اعمال کرد.
گزیده:
ارزش یک محصول به تعداد مشکلاتی است که میتواند حل کند تقسیم بر میزان پیچیدگی که کاربر برای استفاده از آن باید در ذهن خود نگه دارد. آیفون را با کنترل تلویزیون استاندارد مقایسه کنید: صفحه نمایش آیفون را میتوان برای کارهای متفاوتِ بیشماری استفاده کرد، اما برای کار با آن اطلاعات کمی را باید به خاطر سپرد. برای کار با کنترل تلویزیون باید یادتان بماند که هر دکمه چه کاری انجام میدهد. هر چقدر بخواهید از کنترل تلویزیون برای کارهای بیشتری استفاده کنید، باید دکمههای بیشتری را به خاطر بسپارید. ما میخواهیم آیفون بسازیم، نه کنترل تلویزیون.
– آدام ویگینز: ارزشهای شرکت Heroku (شرکت خدمات ابری)
مارکوس آئورلیوس خدمتکاری داشت که هر وقت به سمت میدان اصلی شهر رم میرفت پشت سرش راه میرفت و او را همراهی میکرد.
وظیفهی خدمتکار این بود که زمانی که مردم از مارکوس آئورلیوس تعریف و تمجید میکردند، در گوش او نجوا کند که «تو فقط یک انسانی»، «تو هم فقط یک انسانی».
از فیلم «شهروند مطیع قانون»
پانوشت:
مارکوس آئورلیوس از امپراتورگان بزرگ روم، فرمانروایی بود که فرمانروایی را دوست نداشت. او از کودکی علاقهمند بود که فیلسوف شود و همچنین او با مطالعه زندگی سقراط به وجد میآمد. راستی و شرف برای او از قدرت و ثروت مهمتر بودند. در هجده سالگی از عمرش عموی وی امپراتور آنتونیوس پیوس او را به ولیعهدی خود برگزید؛ و این شاهزادهٔ از دنیا بریده را وارد دنیایی کرد که آن را دوست نمیداشت.
گزیده:
خودت را در رویاهای داشتن چیزهایی که نداری، غرق نکن، اما موهبتهایی که دارا هستی را بشمار، و شکرگزارانه به خاطر داشته باش که چطور رؤیای داشتن شان را در سرت میپروراندی اگر آنها را نداشتی. مارکوس آئورلیوس
منبع:ویکی پدیا
یکی از نقشهای دوستداشتنی مجموعه کلاهقرمزی، فامیل دور است. او از اهالی دور است و ارادت ویژهای هم به درب دارد. حالا با اقتباس از فامیل دور، برنامهنویسی که از راه دور کار میکند (دور کار هستند) را برنامهنویس دور مینامم. در این نوشته چند نکتهای دربارهی برنامهنویسان دور را که از دوستان و اخبار یادگرفتهام، بازگو میکنم.
در گزارشی از مجلهی Communications of the ACM خواندم که «کمبود توسعهدهندگان نرمافزار» در راه هست و شرکتهای بزرگ فناوری اطلاعات با این چالش بزرگ باید دست و پنجه نرم کنند. مقاله را میتوانید اینجا بخوانید.
یکی از دوستان از قول یکی از همکاران هندیاش میگفت که شرکتهای نرمافزاری هندی با چالش کمبود برنامهنویس رو به رو شدند زیرا کووید باعث شده که برنامهنویسان هندی بتوانند قراردادهای بهتری با شرکتهای اروپایی و آمریکای شمالی منعقد کنند.
جایی در لینکدین خواندم که شرکتهای مالزیایی هم دچار این چالش شدند و خیلی از شرکتهای خارجی حتی با یک مصاحبه فنی نصفهنیمه برنامهنویسان را استخدام میکنند.
دوست دیگری که در یک شرکت کانادایی مشغول به کار هست تعریف میکرد که بعد از مدت کوتاهی که از استخدام همکاران برنامهنویس میگذرد، از روی لحن گفتار و میزان پاسخگویی آنها میتوان فهمید که آنها با شرکتهای دیگری در حال مذاکرهاند تا با قرارداد بالاتری کار فعلی را ترک کنند.
در جایی خواندم که شرکتهای بزرگ فناوری آمریکا پیشبینی میکنند بعد از باز شدن دفاتر و حضور پرسنل در شرکت، تعداد زیادی از نیروها را از دست بدهند، از این رو با سرعت هر چه تمامتر در حال جذب نیرو هستند.
به نظر میرسد کووید با همه نتایج فاجعهباری که به همراه داشت، دنیا را برای برنامهنویسان دورکار جای بهتری برای کسب درآمد و دسترسی به فرصتهای بهتر کرده است.
و آرزو میکنم در آینده به سرنوشت متخصصان صنعت نفت دچار نشویم که بعد از دورههای طلایی این صنعت، پیدا کردن شغل برایشان واقعا سخت و دشوار شده است!
پیشگفتار:
فکر نمیکنم شما با زبان برنامهنویسی «کربن» آشنایی داشته باشید. میخواهم داستان آشنایی خودم با زبان برنامهنویسی کربن را برای شما تعریف کنم.
داستان آشنایی:
یادش به خیر!
وقتی وارد دانشگاه شدم با عزیزی آشنا شدم به نام علی آقا. انسانی محجوب، آرام، باهوش، عاشق والیبال و از اهالی یکی از روستاهای نزدیک بیبالان. بعدها متوجه شدم که پدران ما از قدیم با هم دوست بودند ولی من افتخار آشنایی با علی آقا را تا آن زمان پیدا نکرده بود. علی آقا سال بالایی ما بود ولی همرشته نبودیم.
برای آموزش برنامهنویسی در آن زمان از زبان Pascal و C-Plus-Plus استفاده میشد. آن موقع اینترنتی وجود نداشت که بتوانید برنامهنویسی یاد بگیرید و پاسخ سوالهایتان را پیدا کنید. به ناچار مهمترین گزینههای یادگیری یک زبان برنامهنویسی، کتاب بود و دوستانتان.
من هم مانند بقیه همکلاسیها، هر از گاهی کتابی از کتابخانه یا دوستان امانت میگرفتم و چون از لپتاپ و کامپیوتر شخصی خبری نبود و تنها جایی که میتوانستیم برنامهنویسی کنیم سایت دانشکده بود، ناگزیر آن را از دانشگاه به خوابگاه میبردم و میآوردم. چون کتابهای برنامهنویسی معمولا قطور و سنگین بودند نمیتوانستم آنها را در کیف بگذارم و در نتیجه به دست گرفتن آنها یک امر کاملا عادی بود .
و در این نقل و انتقال حجم عظیم دانش برنامهنویسی بین دانشگاه و خوابگاه، گاهی علی آقا را هم تصادفی میدیدم و این مسیر را با هم میپیمودیم. و در این رفت و آمدهای مشترک بود که من با زبان جدیدی آشنا شدم. گفتگوی بین علی آقا و من که منجر به آشنایی من شد را در ادامه بخوانید.
علی آقا: شما چند واحد درس شیمی پاس میکنید؟
من: هیچی
علی آقا: پس این کتاب چیه که هی با خودت میبری دانشگاه.
من: این ترم برنامهنویسی دارم و این هم کتابشه.
علی آقا: من نمیفهمم. یعنی شما برای یادگیری برنامهنویسی باید یک کتاب دربارهی کربن بخونید؟
من با تعجب: کربن؟!
علی آقا جلد کتابی که دست من بود را نشان داد و ادامه داد: آره. اینهاش! اینجا نوشته کربن دو بار مثبت.
من تازه فهمیدم که موضوع چی هست و شروع کردم به خندیدن.
کتابی که دست من بود کتاب سی پلاسپلاس بود که به صورت «++C» نوشته میشود. روی جلد هم با حروف بزرگ نوشته شده بود «++C» و با حروف کوچک نوشته شده بود «Programming Language» که علی آقا همیشه عبارت «++C» را میدید.
علی آقا دانشجوی رشتهی مهندسی مواد بود و طبیعی بود که با زبان برنامهنویسی سی پلاسپلاس آشنایی نداشته باشد ولی تسلطش بر شیمی که بدیهی بود. «++C» به زبان علم شیمی به معنای «کربن دو بار مثبت» است. C نماد عنصر کربن است و کربن پلاسپلاس یعنی کربن دو بار مثبت. کربن دو بار مثبت هم یعنی کربنی که دو الکترون اضافهتر نسبت به کربن معمولی دارد.
پس از یک خندهی طولانی و عمیق، تازه به خود آمدم! وای! چقدر جالب! انسانها بر اساس پیشزمینهی خود چه برداشتهای کاملا درست و کاملا متفاوت از یک نماد میتوانند داشته باشند. خوب که فکر کردم به این نتیجه رسیدم که «زبان کربن دو بار مثبت» هم زبان جالبی است که من تا آن زمان از وجودش بیخبر بودم! سپاسگزارم علی آقا که من را با این زبان آشنا کردید و امیدوارم فهمیده باشم که:
هر کسی را سیرتی بنهادهام
هر کسی را اصطلاحی دادهام
ما زبان را ننگریم و قال را
ما روان را بنگریم و حال را
پسگفتار:
نکتهی مهم این نوشته برای من این بود که به بهانهی نوشتن این متن، به علی آقا پیام فرستادم و جویای حالش شدم و خواهش کردم یک بار دیگر خاطره را برای من تعریف کند. امیدوارم همیشه شاد و تندرست باشند علی آقای عزیز ما.
گزیده:
مهمتر از همهی دلایل، تفاوت دیدگاه فرصتی است برای یادگیری. تری ویلیام