یکی از مفاهیم جالب دنیای نرم افزار که میشه با اندکی اغماض به زندگی واقعی تعمیمش داد، مفهوم دو نوع نگرش push-based , pull-based به انواع event هایی هست که سمتمون میاد. این مفهوم رو اولین بار در دو نوع ابزار مانیتورینگ مختلف مشاهده کردم که ابزار Prometheus با گرافانا چجوری با روش pull-based میتونن کاملا مقیاسپذیر کار کنن.
ما هممون یه مصرفکننده هستیم از اطلاعات محیط و محصولاتی که دنبالمون میکنن. وقتی تعداد event ها بیشتر از حد معمول میشه، رویکرد pull-based عمل کردن میتونه گزینه مناسب تری باشه. به زبون ساده به دو نوع نگرش فاعلیت و مفعولیت برمیگرده. مثال ساده ش اینه که نوتیفیکیشن های گوشیمون هر سری ما رو push کنن و برامون مزاحمت ایجاد کنن (که به شدت ADHD-inducive میتونه باشه) یا اینکه نه: گوشیو بذاری روی حالت don't disturb یا اصلا نوتیفیکیشن ها رو خاموش کنی تا به موقعش هر وقت خودت نیاز داشتی، اونا رو از سورسشون pull کنی و بهشون توجه کنی. من یک بازه ای متوجه شدم که ساعت کار روزانهام با گوشی واقعا زیاده. راه حلی که در پیش گرفتم موارد زیر بود:
تنظیم مودهای فوکوس مختلف با توجه به محیط های مختلف در آیفون (که احتمالا مشابهش برای اندروید هم موجود هست). این کار کمک میکنه که مثلا اوقاتی که خونه هستید و میدونید پیام مهمی نمیاد، نوتیفیکیشن پیامک رو غیرفعال کنید یا مثلا در محیط کار، حتی جلوی تماس ها را بگیرید و در ساعات تمرکز بر روی حالت مزاحم نشوید بذاریم و از هر نوتیفیکیشنی که میتونه حواسمونو پرت کنه اجتناب کنیم
از چک کردن اسکرین تایم متوجه بشیم که کدوم اپلیکیشن ها بیشترین تقصیر رو به عهده دارن. من به تدریج طی سالیان گذشته در ابتدا از محیط توییتر و بعدش اینستاگرام خداحافظی کامل کردم و از گوشیم حذف کردم. بعدش فهمیدم که تلگرام حالا بیشترین مصرف رو داره. یه امکان جالبی که برای گوشی های آیفون وجود داره اینه که اپ رو از گوشی پاک نمیکنید ولی از منوی هوم اسکرین هاید میکنید. با این کار، اپلیکیشن جلوی چشم شما نیست. به بیان دیگه شما خودتون رو مجبور میکنید که هر وقت کار خاصی داشتید، با هزینه شناختی بیشتر، ابتدا اپلیکیشن رو به صورت دستی تایپ و جستجو کنید تا بتونید بازش کنید و دیگه جلوی چشم نیست. این باعث میشه که خیلی وقتا ناخودآگاه به سراغ باز کردن اپ نریم و به جاش گوشیو خاموش کنیم و به سایر کارها بپردازیم.
برآیند موارد بالا اینطور شد که ساعت کاری روزانه من با موبایلم از حدود ۵ - ۶ ساعت طی روز به حدود ۱ - ۲ ساعت رسیده که بخش خوبیش هم صرفا استفاده به عنوان مسیریاب یا کارهای اضطراری مثل تماس و سرچ و غیره شده و به جاش تایم فراغتی که از اختلاف این دو به دست آوردم رو خرج سایر کارها کردم و خیلی راضی و خوشحال ترم.
برگردیم به بحث اصلی. مزایا و معایب هر کدوم از روش های push , pull مشخصه. توی روش pull-based اگر شما دیر بجنبی شاید یه سری چیزها رو از دست بدی. ولی سوال فلسفی اینه که آیا واقعا چیزهایی هستن که اینقدر ارزش داشته باشن؟ به ندرت. عملا توی دنیای امروز که میانگین اهمیت نوتیفیکیشن در این حده که فلانی فلان پست تو رو لایک کرد، روش دوم بنظر میاد معقول تر و به صرفه تره مگر برای کارهای اضطرای مثل تماس یا دریافت پیامک از افراد خاص و غیره.
مزیت مهم حالت pull-based اینه که حداقل کنترل اعصاب و روان و وقت و انرژیت دست خودته، نه بقیه آدما و شرکت های بزرگ. یادمون نره که بزرگترین رسالت و منبع درآمد شرکتای بزرگ مثل متا و گوگل و X و غیره در حال حاضر خریدن توجه کاربره. واجبه که توی بازی جلب توجه بقیه گیر نیفتیم و گرنه عمرمون خیلی راحت و سریع بر باد رفته.