جومویی هستید یا فومویی؟

  • یوسف مهرداد بی‌بالان

بخش زیادی از یادگیری‌هایم درباره‌ی زندگی اجتماعی در جستجوی یادگیری‌های تخصصی نرم‌افزار به دست آمده است. یکی از آخرین یادگیری‌هایم این است که با خود بیندیشم که به کدام دو نگرش و رویکرد در زندگی نزدیک‌ترم یا شاید بهتر باشد عادت کرده‌ام: جومویی یا فومویی!
احتمالا شما هم مانند من نام این دو مکتب را نشنیده باشید. من آن را از سایت ۳۷ سیگنال خواندم و یادگرفتم .

مکتب فومو (FOMO):
فومو یا “ترس از دست دادن” (Fear of Missing Out.)، نگرشی است که شما به صورت پیوسته برای به روز بودن درباره‌ی پدیده‌ها و رخدادهای اجتماعی احساس نیاز می‌کنید و خود را ملزم می‌دانید که لحظه لحظه از رخدادهای اجتماعی، اخبار و روندهای محبوب مطلع گردید.

مکتب جومو (JOMO).
ایده پشت جومو یا”لذت از دست دادن” (Joy of Missing Out) این است که به جای اینکه دائماً احساس نیاز به به روز بودن داشته باشید، شادی را در پذیرفتن لحظات تنهایی، آرامش و چیزهایی که واقعاً برایتان مهم هستند، بیابید. زندگی وقتی بهتر می‌شود که چیزهای بی‌اهمیت را از دست بدهید.

گزیده:

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

مفاهیم نیازمندی‌های نرم‌افزار

  • یوسف مهرداد بی‌بالان

پیش‌گفتار-خاطره:
یادم می‌آید دعوت شده بودم به جلسه‌ی دوستانه‌ای در یکی از شرکت‌ها که هدف آن بهبود تحلیل در آن شرکت بود. یکی از دوستان به من گفت که ما طی بررسی‌هایی که انجام دادیم به این نتیجه رسیده‌ایم که باید این سه کار رو در شرکت انجام بدیم. بعد هم سه راهکارشون رو برای من توضیح داد. راهکارشان به نظرم درست می‌آمد.

چون فضا دوستانه بود به شوخی گفتم می‌دونید یکی از درس‌های مهمی که به تحلیل‌گران یاد می‌دهند چی هست؟
بعد ادامه دادم:‌
بین نیاز بیان‌شده‌ی کاربر و نیاز واقعی وی تفاوت قائل بشید ???? چیزی که کاربر می‌گه نیاز بیان‌شده است و چیزی که باید دنبالش بگردید نیاز واقعی. خیلی از مواقع این دو تا یکی نیستند.

بعد با شوخی پرسیدم: می‌دونید درس مهم بعدی که به تحلیل‌گران یاد می‌دهند چی هست؟
و دوباره ادامه دادم:
مشتری مساله‌ای رو توی ذهن‌اش داره، اون رو با دانش و تجربه خودش از سیستم حل می‌کنه، پیش نیازها و الزامات حل‌اش رو به عنوان مساله به شما اعلام می‌کنه ????. هر چه شناخت و تجربه کاربر از سیستم بیشتر باشه، احتمال بروز این الگو بیشتره.

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

گفتار:
شکل زیر نمایش به‌روز و جامعی است از مفاهیم نیازمندی‌های نرم‌افزار از کتاب جدید Essentials of Software Requirements از Karl Wiegers و Candase Hokanson. کارل ویگرز فرد شناخته‌شده‌ای در حوزه‌ی تحلیل نیازمندی‌هاست. از نظر من، این کتاب پیشنهاد مناسبی است برای افزایش دانش در زمینه‌ی تحلیل نرم‌افزار.

مرجع عکس:‌ www.informit.com
گزیده:
نیازمندی‌های کسب‌وکار (business requirements) باید توسط کسی بیان شود که پاسخ‌گوی نهایی ارزش ایجاد‌شده‌ی محصول برای کسب‌وکار است. نیازمندی‌های کاربر (user requirements) هم باید توسط افرادی بیان شود که دکمه‌ها را فشار می دهند، صفحه را لمس می کنند یا خروجی‌ها را دریافت می‌کنند [یا با سیستم کار می‌کنند یا از خروجی آن استفاده می‌کنند].
کارل ویگرز

بمبوله: بردهای هرز

  • یوسف مهرداد بی‌بالان

دوست نازنینی این ویدیو رو برای من فرستاده و این پیام را نیز پیوست آن کرده است:
«به این موضوع فکر کردم که خوب است بسته شادی بفرستم! اما به نظرم رسید این داستان ممکن است زمانی به کار آموزش و تعلیم بیاید.»


لینک ویدیو: تلوبیون

دوست نازنین درست می‌گفت! اولین شاگرد این «کار آموزش و تعلیم» خودم بودم!

سپاسگزارم علی آقای م.

گزیده: ندارد

قانون ۸-۸-۸

  • یوسف مهرداد بی‌بالان

۸-۸-۸
8 ساعت کار، 8 ساعت زندگی، 8 ساعت خواب.

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

8/8/8
8 hours for work, 8 hours for life, 8 hours of sleep. That’s a fair formula. It’s not work/life balance — it’s work/life/sleep balance. A lack of sleep isn’t a badge of honor, it’s a mark of stupidity — literally.

مرجع:‌ 37signals.com

با تشکر از دوست عزیزم، مسعود خ.

دنبال چه می‌گردی! (طراحی)

  • یوسف مهرداد بی‌بالان

سخنران در ابتدای سخنرانی‌اش گفت: یکی از کارهای من انجام مصاحبه‌ی فنی است. کاری که خیلی دوست دارم. …. و یکی از پرسش‌های مورد علاقه‌ام در جلسه‌ی مصاحبه این است: در یک طراحی خوب، شما دنبال چه می‌گردید؟ [شما چه ویژگی‌ها و معیارهایی را هنگام ارزیابی و سنجش کیفیت یک طراحی مد نظر قرار می‌دهید؟]

سپس از شرکت‌کنندگان خواست که به این پرسش پاسخ دهند و آنها پاسخ دادند:
– آزمون
– فهمیدن آسان
– یکپارچگی و یک‌دستی
– انگیزه (دلایل طراحی)
– ساده بودن
– اعتمادپذیری
– کامل بودن
– آسان یادگرفتن

و بعد ادامه داد:
ما موضوعات و ایده‌های بسیار خوبی داریم مانند SOLID وDRY وDesign by Contract وSmall Methods و … که کمک می‌کنند تا خوب طراحی کنیم. اما من دنبال یک موضوع پایه‌ای‌تر و بنیادی‌تر در طراحی نرم‌افزار هستم.
و بعد ادامه داد …

حالا این پرسش را از خود بپرسیم و به آن فکر کنیم: طراحی خوب از نظر ما چگونه است؟ و توجه داشته باشیم که پاسخ ما باید پایه‌ای و بنیادی باشد!

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

گزیده:
آیا شما هم از این نوع چابکی که کلا در مورد پذیرش و پیروی از یک‌سری واژگان مدشده، رسوم و تشریفات،‌ و پوسترهای انگیزشی است خسته شده‌اید؟
جیم وایریک (Jim Weirich)

تی‌دی‌دی (TDD) عامل چنددستگی در جامعه‌ی برنامه‌نویسان

  • یوسف مهرداد بی‌بالان

در نوشته‌ای در لینکدین، نویسنده با اشاره به TDD نوشته بود که:
تی‌دی‌دی (TDD) به صورت جدی، جامعه‌ی برنامه‌نویسی را دچار دودستگی کرده است. گروهی عاشق آن هستند و گروهی هم از آن متنفرند.

کنت بک(Kent Beck) طی یادداشتی، نظرش را در این مورد بیان کرد که برای من بسیار آموزنده بود.
او در پاسخ نوشت:
به نظر من این TDD نیست که جامعه‌ برنامه‌نویسان را به دو دسته تقسیم می‌کند. بلکه عامل چنددستگی پاسخ به این پرسش است که «آیا برنامه‌نویسان مسئول کیفیت کار خود هستند یا خیر؟ وقتی برنامه‌نویسی می‌گوید کار تمام شد آیا واقعا کار تمام شده یا نه.»

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

گزیده:
یافتن خطا در کد به اندازه کافی دشوار است. اما وقتی دشوارتر می‌شود که فکر می کنید کدتان بدون خطاست.
استیو مک کانل، نویسنده، کد کامل

خوشنویسی کد (۱)‌

  • یوسف مهرداد بی‌بالان

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

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

بعدها به پیشنهاد همسرم در کلاس خوشنویسی با خودکار شرکت کردیم. خیلی آموزنده بود. فرصت با هم بودن (با آن همه مشغله‌ی کاری) در کنار آموزش درست خوشنویسی خاطره خوبی از آن کلاس برایم به یادگار گذاشته. آرزو می‌کردم موقعی که کم سن و سال‌تر بودم فرصت شرکت در چنین کلاسی را پیدا می‌کردم.

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

هر چند در دنیای مدرن امروزی، دیگر نیازی به نوشتن با خودکار نیست ولی آن نیم‌چه مهارت خوشنویسی هم به دلیل «تمرین» نکردن از دست رفت. با این وجود هم‌چنان با دیدن خط زیبا به هیجان می‌آیم و مانند یک اثر هنری مشغول ورانداز کردن آن می‌شوم.

وقتی بر می‌گردم و به گذشته نگاه می‌کنم، تجربه‌ی یادگیری خوشنویسی‌ام را می‌توانم این‌گونه بیان کنم :
– انگیزه‌‌ی یادگیری من در کنار این که خط زیبا را دوست داشتم، این بود که دلم نمی‌خواست خطم «خرچنگ و قورباغه‌ای» باشد.
– دیدن دست‌خط‌های زیبا و تلاش برای رونویسی و کپی برداری از آنها در یادگیری من بسیار موثر بود و در مورد من جواب می‌داد.
– وقتی خط زیبا می‌بینم با وجودی که نمی‌توانم آن‌گونه بنویسم، می‌فهمم که «زیبا» است، هیجان‌زده می‌شوم، مسحورم می‌کند.

حالا علاقه‌ام به خوشنویسی به گونه‌ای دیگر در من تبلور پیدا کرده است: علاقه به خوشنویسی کد!
این نوشته مقدمه‌ای است برای نوشتن برخی از تجربه‌هایم برای خوشنویسی در دنیای برنامه‌نویسی. امیدوارم در نوشته‌های بعدی از این پنجره به برنامه‌نویسی نگاه کنم و تجربه‌ام را بنویسم. چه خوب می‌شد که می‌توانستم از تجربه‌ی شما هم با خبر شوم.

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

برای خروج از جستجو کلید ESC را بفشارید