لینوکس امروز

نوشته پشتیبان هوشمند

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

کارخانه‌ای بی‌کارخانه

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

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

روی دیگر سکه

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

در ۱۶ سپتامبر ۲۰۱۸، اتفاقی غیرمنتظره افتاد. توروالدز در اعلام انتشار یک نسخهٔ آزمایشی، پیامی شخصی نوشت. او گفت که اعضای جامعه در همان هفته با او دربارهٔ ناتوانی‌اش در درک احساسات دیگران روبه‌رو شده‌اند و نوشت: «حمله‌های سبک‌سرانهٔ من در رایانامه‌ها هم غیرحرفه‌ای بوده و هم ناروا». او از کسانی که رفتارش آزرده و شاید از پروژه دور کرده بود عذرخواهی کرد و اعلام کرد مدتی کنار می‌رود تا کمک بگیرد و رفتارش را اصلاح کند. گرگ کروا-هارتمن، یکی از نگه‌دارندگان باسابقه، تکمیل آن نسخه را بر عهده گرفت.

هم‌زمان، پروژه سند قدیمی‌اش را که «آیین‌نامهٔ اختلاف» نام داشت کنار گذاشت و آیین‌نامهٔ رفتاری تازه‌ای بر پایهٔ یک الگوی شناخته‌شده به نام پیمان مشارکت‌کنندگان پذیرفت. توروالدز در همان پیام تأکید کرد که این کناره‌گیری از سر فرسودگی نیست و همچنان می‌خواهد پروژه را ادامه دهد.

نقطهٔ عطف

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

درسی برای کسب‌وکارها

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

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

سوم، قواعد رفتاری را مکتوب کنید. انتظارات نانوشته، برای تازه‌واردان نامرئی است؛ سند روشن، معیاری مشترک می‌سازد.

مجموعهٔ بعدی: توروالدز در همان پیام سال ۲۰۱۸ یادآوری کرد که یک بار دیگر هم مدتی از کار هسته فاصله گرفته بود: زمانی که «باید ابزار کوچکی به نام گیت می‌نوشت». داستان آن ابزار، از یک قطع رابطهٔ ناگهانی در ۲۰۰۵ آغاز می‌شود.

منابع / Sources

  • "Kernel overview", Android Open Source Project, source.android.com, n.d. — https://source.android.com/docs/core/architecture/kernel
  • "Linux 4.19-rc4 released, an apology, and a maintainership note", LWN.net (Torvalds' LKML post), 2018-09-16 — https://lwn.net/Articles/764901/
  • "Code of Conduct: Let's revamp it. (commit 8a104f8)", torvalds/linux on GitHub, 2018-09-15 — https://github.com/torvalds/linux/commit/8a104f8b5867c682d994ffa7a74093c54469c11f
  • "Code, conflict, and conduct", LWN.net, Jonathan Corbet, 2018-09-18 — https://lwn.net/Articles/765108/

در حال اتصال مجدد

اتصال به سرور قطع شد. در حال پیوستن دوباره.

در حال اتصال مجدد

تلاش قبلی ناموفق بود. کمی بعد دوباره تلاش می‌شود.

0s · 1 / 30

اتصال مجدد انجام نشد

صفحه را دوباره بارگذاری کنید یا اتصال را دوباره امتحان کنید.

نشست پایان یافت

این نشست دیگر در دسترس نیست. برای ادامه صفحه را دوباره بارگذاری کنید.

نشست متوقف شد

سرور این نشست را متوقف کرد. برای ادامه، ادامه را انتخاب کنید.

ادامه نشست انجام نشد

صفحه را دوباره بارگذاری کنید یا ادامه را دوباره امتحان کنید.