گاهی بزرگ‌ترین تغییرها در دنیای نرم‌افزار آزاد در کوچک‌ترین وصله‌ها پنهان است. این هفته وصله‌ای به هستهٔ لینوکس رسید که فقط یک خط را حذف می‌کرد؛ خطی که نام داریک وونگ (Darrick J. Wong) را در فهرست بازبین‌های کد IOmap نگه داشته بود. پشت همین یک خط، پایان فصلی ۲۳ساله از کار یکی از توسعه‌دهندگان باسابقهٔ هسته نهفته است.

یک خط، یک جمله

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

«After 14 years at Oracle and 23 years working on Linux, I've decided to step back for a while.»

«پس از ۱۴ سال در اوراکل و ۲۳ سال کار روی لینوکس، تصمیم گرفته‌ام مدتی کنار بکشم.»

این وصله را خود لینوس توروالدز امضا کرد و به گزارش فرونیکس، روز ۱۶ اکتبر در چرخهٔ توسعهٔ لینوکس ۷.۳ به مخزن اصلی هسته راه یافت. پس از این تغییر، کریستین براونر (Christian Brauner) به‌عنوان نگه‌دارندهٔ این بخش در فهرست باقی می‌ماند. IOmap آخرین حوزه‌ای بود که وونگ پس از کناره‌گیری از نگه‌داری XFS، به‌طور رسمی مسئولیتی در آن داشت.

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

نامه‌ای که سه سال پیش نوشته شد

در اوت ۲۰۲۳، وونگ پس از شش سال نگه‌داری سیستم‌فایل XFS، مجموعه‌وصله‌ای به فهرست پستی XFS فرستاد که با این جمله شروع می‌شد: «I do not choose to continue as maintainer» (دیگر نمی‌خواهم نگه‌دارنده بمانم). او نوشت که آخرین کارش در این نقش، مکتوب‌کردن تمام کارهایی است که در این شش سال انجام داده؛ چون به باور او، فشار روی نگه‌دارنده بیش از حد شده بود و تنها راه‌حل، تقسیم مسئولیت‌ها میان چند نفر بود. نامه‌اش را هم با طنزی تلخ به پایان برد: «This is an extraordinary way to destroy everything. Enjoy!» (این راهی خارق‌العاده برای نابود کردن همه‌چیز است. لذت ببرید!)

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

«I burned out years ago trying to juggle the roles senior developer, reviewer, tester, triager (crappily), release manager, and (at times) manager liaison.»

«سال‌ها پیش، وقتی می‌کوشیدم هم‌زمان نقش توسعه‌دهندهٔ ارشد، بازبین، آزمایشگر، دسته‌بندِ باگ‌ها (آن هم با کیفیتی افتضاح)، مدیر انتشار و گاهی رابط با مدیران را بازی کنم، فرسوده شدم.»

او نوشت که کار این یک زیرسیستم برای تیمی بیست‌نفره و تمام‌وقت کافی است، اما در عمل نیمی از این تعداد بارش را به دوش می‌کشند، و اعتراف کرد که فکر می‌کرد اگر کمی بیشتر دوام بیاورد، می‌تواند تمرکز پروژه را روی توسعهٔ بلندمدت و بهبود تجربهٔ کاربران نگه دارد: «I was wrong» (اشتباه می‌کردم). با این حال قول داد فعلاً به بازبینی وصله‌ها ادامه دهد و بکوشد کارهایی مانند fsck آنلاین، parent pointers و نوسازی حجم‌های بی‌درنگ (realtime volumes) را به هسته برساند.

وونگ در آن زمان چاندان بابو (Chandan Babu) از اوراکل را برای مدیریت انتشار XFS پیشنهاد داد و نقش‌هایی چون آزمون، دسته‌بندی باگ‌ها، مدیریت جامعه و نگه‌داری نسخه‌های LTS را «جایگاه‌های خالی» خواند. یک روز بعد هم برای رفع سوءتفاهم توضیح داد که فقط از نقش نگه‌دارنده کنار می‌رود و همچنان به‌عنوان توسعه‌دهندهٔ ارشد و بازبین برای XFS کار خواهد کرد.

کاری که دیده نمی‌شود

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

وونگ در نامهٔ ۲۰۲۳ خود روشن گفته بود که این بار برای یک نفر بیش از حد سنگین است. حالا، سه سال بعد، او حتی آخرین نقش رسمی‌اش را هم کنار گذاشته است.

سخن پایانی

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

منابع: گزارش فرونیکس، کامیت وونگ در مخزن هستهٔ لینوکس، گزارش فرونیکس از کناره‌گیری از XFS در ۲۰۲۳، نامهٔ وونگ در فهرست پستی XFS، اوت ۲۰۲۳ (بایگانی LWN)