سه سال و نیم قبل، سی تی او آژر – کلاود مایکروسافت – گفته بود که «یک چهارم ماشین های آژر لینوکس هستند». بعد توی سال ۲۰۱۷ مایکروسافت گفت که ۴۰٪ ماشین های مجازی ساخته شده روی آژر، لینوکس هستند. در ۲۰۱۸ اعلام شد که این عدد تقریبا نصف ماشین ها است و حالا ساشا لوین که توسعه دهنده کرنل لینوکس در مایکروسافت است، در درخواست خودش برای عضویت مایکروسافت در لیست سکیوریتی کرنل لینوکس، نوشته که «استفاده از لینوکس در کلاود ما از ویندوز بیشتر شده».
البته این کاملا قابل پیش بینی بود اما کماکان اتفاق افتادنش جالبه. لینوکس به هرحال اکثریت اینترنت رو میچرخونه و استفاده از سرور ویندوز هم همه این سالها در حال افول بوده.
معاون رییس اجرایی مایکروسافت اسکات گوتهری می گه که لینوکس هر ماه داره بالاتر میاد و برخی از سرویس های آژر اصولا با لینوکس درست شدن. اون می گه از ده سال قبل که ASP.NET بازمتن شد، فهمیدن که هر توسعه دهنده ای می تونه از بازمتن بهره ببره،نه به عنوان چیزی خوب که به عنوان موضوعی لازم. اون می گه این بحث کد نیست، بحث جامعه است. در نهایت هم اضافه می کنه که به اعتقادش الان مایکروسافت بزرگترین پشتیبان پروژه بازمتن در جهان است.
اخبار اوپن سورس از مایکروسافت زیاد به گوش میرسه و حالا هم کد ماشین حساب ویندوز رو روی گیت هاب گذاشته، اونم با مجوز MIT که حتی از مجوزهای بازی که تبلیغشون می کنیم هم بازتره. با اینم جوز شما حق دارین این سورس رو بردارین، تغییر بدین، ببندین و فایل اجرایی نهایی رو به اسم «ماشین حساب ملی» منتشر کنین و از نظر لایسنسی هیچ خلافی هم نکرده باشین.
رپوزیتوری ماشین حساب ویندوز، تاریخچه رو از ۲۰۱۹ داره و نکته جالبش اینه که از بقیه برنامه نویسها هم خواسته تا اگر کاری به نظرشون می رسه، روش انجام بدن و کامیت کنن. طراحی مدرن ماشین حساب (که یکی از اولین طراحیهای فلوئنت دیزاین بود) هم باعث نشده که کدبیس قدیمی حذف بشه و شما می تونین حتی کدهایی از ۱۹۹۵ هم توش ببینین. مثلا توابع انجام محاسبات همونهایی هستن که از اول بودن و از اعداد گویا (حاصل تقسیم دو عدد صحیح) استفاده میکنن. همچنین وقتی لازمه از سری تیلور استفاده میشه تا اعدادی که به شکل اعداد گویا قابل بیان نیستن، تقریب زده بشن. بررسی کد نشون می ده این انتخاب در اوایل (مثلا ۱۹۸۹) نبوده و اون موقع از اعداد با ممیز شناور استفاده میشده.
بخش جالب دیگه، صحبت در مورد آینده ماشین حساب ویندوز است که به نظر میرسه روی فلوئنت دیزاین میمونه اما تستهای بیشتری براش نوشته میشه و درخواستهای کاربران هم ممکنه توش به فیچر تبدیل بشه. اما راستش رو بخواین برای من جذابترین بخش ماجرا، صفحه ایشوها و پول ریکوئستها است. در این صفحات دیده میشه که واقعا آدمها درخواست فیچر می کنن و افرادی خارج از مایکروسافت مشکلاتی رو حل می کنن یا حتی فیچرهایی رو اضافه می کنن که واقعا هم داره به ماشین حساب ویندوز اضافه میشه.
این احتمالا هم تجربه خیلی خوبی از بازمتن کردن یک برنامه مایکروسافت است و هم فرصتی خیلی خوب برای کسانی که میخوان سورس یک برنامه حرفهای رو بخونن یا حتی بهش کامیت کنن و اینطوری اسمشون رو در تاریخ ویندوز و مایکروسافت ثبت کنن یا حتی احتمالا با درخشش طولانی مدتتر، فرصت کاری به دست بیارن.
آلمانی ها یه جشن به اسم اکتبرفست دارن که تو تبلیغات این شکلی است:
اما هکرها هم یه هکتبرفست (Hacktoberfest) دارن که شکلش می تونه از یه آدم توی خونه باشه تا یه پارتی صبح تا عصر دورهمی کامپیوتر به دست و پیتزا به دهن و لیوان در کنار. ایده هم به اینه که آدم ها عادت کنن در پروژههای اوپن سورس و آزاد مشارکت کنن. این برنامه توسط دیجیتال اوشن، گیت هاب و تویلیو اجرا میشه و خلاصه اش اینه:
بعد از ثبت نام در سایت هکتبرفست در طول ماه اکتبر ۵ تا پول ریکوئست به پروژههای دیگران در گیتهاب بفرستین و یکی از دریافت کنندههای ۵۰هزار تیشرت ایونت بشین؛ به همراه استیکرها و از همه مهمتر، سابقه ۵ تا پول ریکوئست
معلومه که اولین سوالهای خیلیها اینه که «نمی شه به خودمون/دوستمون پول ریکوئست بدیم؟» جواب اینه که احتمالا با کمی تقلب می شه ولی خب چه کاریه. مساله اصلی هکتبرفست اینه که آدمها رو درگیر پروژههای دیگران بکنه و یاد بگیریم مشارکت کنیم و کارهای مثبت بکنیم.
پس پیشنهادم اینه که برای پیشرفت خودمون توی این ماه، اگر احیانا گیت بلد نیستیم، یادش بگیریم و بعد در سایت هکتبرفست ثبت نام کنین و در نهایت توی گیت هاب به پنج تا پروژه در طول این ماه PR بزنیم و منتظر جایزه مون بمونیم. لازم نیست حتما پول ریکوئستهای ما قبول بشن ولی خب اسپم هم نباید باشن. اگر هم ریپویی دارین که دوست دارین بقیه توش مشارکت کنن می تونین با تگ Hacktoberfest اونو مشخص کنین.
اگر تازه کار هستین جاهایی مثل این و این می تونن جاهای خوبی برای پیدا کردن اولین مشارکت های شما باشن.
اینم بگم که اگر موفق شدین و تی شرت رو گرفتین عکستون رو برام بفرستین که در یک مطلب جدا بذارم. خودم واقعا نخواهم رسید به خاطر کارها و واقعا حیفه. امیدوارم سال بعد بتونم میزبان یه هکتوبرفست باشم (:
چقدر خوردو! آخه واقعا چرا باید به چیزی که خودش نمی رفته بگیم خودرو؟ فقط چون اسب نداشته؟ به هرحال.. الان شرکت جالب کاما.ای آی که هکری مشهور به اسم جورج شوتز راهش انداخته بود، کد و دیگر تجهیزات تبدیل ماشین به خودرو رو آزاد در اینترنت منتشر کرده. در واقع محصول این شرکت یک کیت ۹۹۹ دلاری بود که میتونستین با وصل کردنش به خودروهایی خاص، اون رو در حد تسلا خود راننده کنین. این کیت در تک کرانچ دیسراپت معرفی شد و بعد قانونگذاریها سراغش اومدن!
حرف قانونگذارها این بود که اگر کسی میخواد چنین محصولی رو بفروشه، باید اول از سازمان ایمنی راهها مجوز دریافت کنه. این هکرها که حوصله اینکار رو نداشتن، به سادگی بیخیال فروش محصول شدن و در تلاش برای تبدیل شدن به اندروید خودروهای خود راننده، محصولشون رو روی اینترنت گذاشتن.
کد ارائه شده به هر کسی اجازه میده بعد از پرینت کردن چند قطعه سه بعدی و نصب برنامه روی یک گوشی وان پلاس ۳ و استفاده از دوربین برای دیدن جاده، از طریق پورت بعضی ماشینهای هندا و آکورا یک ماشین داشته باشن که بتونه در حد اتوپایلوت در جاده برونه: یک جایگزین بازمتن و آزاد برای برنامه هایی که تسلا استفاده می کنه. سازمان ایمنی جاده ها هنوز در مورد این انتشار آزاد نظر نداده ولی حرفش اینه که اینکار برای جاده ها خطرناکه. طبق قانون کالیفرنیا خودرویی خودراننده وارد خیابان باشه، باید ۵ میلیون دلار بیمه داشته باشه.
خلاصه که فرصت برای ساخت خودروی خودراننده ملی هم فراهمه (: کافیه کدها رو دانلود کنن و یه گوشی و خودروی سازگار هم سفارش بدن و احتمالا خودرو به خوبی می تونه تو جاده های خلوتتر حرکت کنه. یه دوستم اخیرا یه فیلم از چنین کاری با چنین برنامه ای برام فرستاده بوده، در حد تست اصلا پیچیده به نظر نمی رسه اگر کمی ماشین باز باشین.
شلها مهم هستن. اونها دستورات رو از شما می گیرن و خروجیها رو به شما نشون میدن. معمولا سیاه هستن ولی می شه به هر رنگی درآوردشون. توی دنیا یکی از مشهورترین شلها، بش است و من همیشه از Bash استفاده کردم که همه جا سازگاری حفظ بشه. شلهای بهتر مثل ksh و غیره هم هستن ولی در نهایت بش برای من به خاطر اینکه همه جا حضور داشت، انتخاب اصلی بود. ولی دیگه نیست.
الان مدتی است که از zsh استفاده میکنم. خوبی اصلی زد اس اش برای من اینه که تا حد خیلی زیادی همون bash است با چند فیچر بهتر. مثلا توی تکمیل کردن دستورات با tab بسیار بهتر عمل می کنه می شه توش چیزها رو خلاصهتر نوشت. هیستوری توش راحتتر پیدا می شه و حتی میشه با تب، سوییچ ها رو دید. چیزی که بارها برای من توی بش پیش میامد این بود که دستور رو نصفه مینوشتم، میاومدم بیرون و سوییچ رو نگاه میکردم و بر میگشتم به دستور اما حالا به راحتی با زدن tab سوییچها دیده میشن.
این شل امکان تنظیمات زیادی داره ولی تقریبا بهترینشون برای شروع در پروژه ای به اسم oh my zsh جمع شده. برای اضافه کردن زیشل به سیستم و انتخاب اون به عنوان شل خودتون باید اول zsh رو نصب کنین، مثلا با یکی از دستورات زیر:
اشاره: متن پیش رو برگردان پستی است که Tom Preston-Werner در وبلاگش با عنوان Open Source (Almost) Everything منتشر کرده و به جهت اهمیت مطلبی که در آن بیان کرده، نظیر ترس کسبوکارها از منبع باز کردن محصولاتشان، مرور آن ضروری مینماید. او در این نوشته توضیح میدهد که چرا و چگونه بر ترس متنباز کردن نرمافزارهایشان غلبه کرده و به سمت ایجاد کسبوکاری بر مبنای نرمافزارهای متنباز حرکت کردند. این متن را امیرپوریا مهری ترجمه کرده و من در جادی.نت بازنشرش میکنم. شاید من در مورد جزییات یا حتی استفاده از عباراتی مثل «بازمتن» در مقابل «آزاد» نظرات متفاوتی داشته باشم ولی در کل خوندن این مطلب بسیار راهگشا است.
در اواخر سال ۲۰۰۷، من و کریس (Chris Wanstrath) شروع به کار بر روی گیتهاب کردیم، کار به دو قسمت تقسیم شد: کریس بر روی توسعهی برنامههای Rails متمرکز بود و من روی Grit کار میکردم که نخستین Git نوشته شده بر پایهی Ruby بود. پس از شش ماه توسعه، Grit به اندازهی کافی آماده بود تا قدرتبخش گیتهاب شود و سایت را به انتشار عمومی دربیاوریم. در همین حال ما با سوال جالبی مواجه شدیم:
بهتر است Grit را متنباز کنیم و یا این که کدهای آن را به صورت اختصاصی نگه داریم؟
اختصاصی نگه داشتن کدهای Grit در رقابت با سایتهای میزبان Gitکه برپایههای Ruby نوشته شدهاند، پرش بزرگی بود و میتوانست مزیت رقابتی ما باشد. اما متنباز کردن آن به این معنا بود که هزاران نفر در سراسر جهان میتوانند از آن برای ساختن ابزارهای Git مورد نظرشان استفاده کنند. در واقع با این کار یک اکوسیستم چالاک پیرامون Git تشکیل میشد.
پس از کمی بحث و چانهزنی تصمیم به متنباز کردن Grit گرفتیم. من جزییات مکالماتمان را به یاد ندارم اما آن تصمیم قریب به چهار سال پیش، ما را به سمتی هدایت کرد که فکر میکنم حالا یکی از مهمترین ارزشهای اصلی گروه ما است: متنباز کردن (تقریبا) همه چیز.
چرا متنباز کردن (تقریبا) همهچیز اینقدر هیجانانگیز است؟
اگر آن را به شیوهی درست انجام دهید، کدهای متنباز تبلیغ بزرگی برای خود و شرکتتان خواهد بود. در گیتهاب دوست داریم دربارهی کتابخانهها و سیستمهایی که کدهای آن را زدهایم و هنوز متنبستهاند، ولی تصمیم داریم آنها را متنباز کرده، بهطور عمومی بحث کنیم. این شگرد چندین مزیت در خود دارد. از جمله کمک میکند تا تععین کنیم چه چیزی را باید متنباز کرده و اهمیت آن برای ما چقدر است تا در اولویت کاری انتشار قرار دهیم. ما اخیرا Hubot، چتباتمان را منبع باز کردیم؛ تا شمار زیادی را خوشحال کنیم. در عرض دو روز ۵۰۰ نفر در گیتهاب به بررسی آن پرداختند و ۴۰۹ رای مثبت در وبسایت Hacker News نصیب این برنامه شد. این کار نزد مردم به حسننیت گیتهاب ترجمه میشود و موجب افزایش شمار طرافداران دوآتشته برای ما شد.
اگر کدهای شما به اندازهی کافی محبوب باشند تا موجب جذب همکاری توسعهدهندگانی خارج از شرکتتان شود؛ شما نیروی مضاعفی به وجود آوردهاید که کمکتان میکند کارهای بیشتری را سریعتر و ارزانتر از پیش به سرانجام برسانید. کاربران بیشتر به معنای آن است که کارهایتان توسط مشتریان بیشتری در حال استفاده و بررسی است که این خود به معنای قویتر شدن کدهایتان است. Resque کتابخانهی اختصاصی ما، توسط ۱۱۵ فرد مختلف از خارج از شرکت بهبود یافت و صدها پلاگین برای آن توسعه داده شد که به گسترش قابلیت های این کتابخانه کمک کرد. هر رفع اشکال و ویژگی جدیدی که اضافه میشوند، موجب صرفهجویی در وقت شما شده و از سرخوردگی احتمالی مشتریتان، به خاطر کمبود ویژگیها و یا باگهای فراوان، جلوگیری میکند.
افراد باهوش دوست دارند تا با افراد باهوش درگیر باشند. توسعهدهندگان باهوش نیز دوست دارند تا با کدهای هوشمندانه درگیر شوند. وقتی شما کدهای سودمندی را منبع باز میکنید، استعدادها را جذب خواهید کرد. هر بار که توسعهدهندهای با استعداد درگیر کدهای متنباز شدهی شما میشود، برنده شما اید. من در کنفرانسهای فناوری، گفتگوهای ارزشمندی دربارهی کدهای متنباز خودم داشتهام. برخی از این گفتگوها موجب جرقه خوردن ایدههای جدیدی شد که به طور مستقیم راهحلهای بهتری را در مواجهه با مشکلات پروژههایم پیش پا گذاشتند. در صنعتی با چنین طیف گستردهای از خلاقیت و بهرهوری در میان توسعهدهندگان، در مرکز توجه قرار گرفتن کدهایتان میتواند تفاوت بزرگی ایجاد کند.
اگر به دنبال استخدام هستید، بهترین مصاحبهی فنی ممکن، این است که اصلا صورت نگیرد؛ چرا که داوطلب پیش از این در یکی از پروژههای منبع باز شما دست برده است. هنگامی که برتری فنی در چنین مسیری تثبیت شود؛ تمام آنچه باقی میماند، بررسی این است که آیا فرد به فرهنگ شرکتتان میخورد یا نه و سپس مرحلهی متقاعد کردن او تا برایتان کار کند. اگر آنها دربارهی کدهای متنباز-ای که نوشتهاند مشتاق باشند؛ و شما از شمار شرکتهایی باشید که به کدهای تمیز اهمیت میدهد (که باید باشید) این فرایند (استخدام) باید ساده باشد. ما Vicent Martí را پس از اینکه کارهای درخشان او را روی کتابخانه ی libgit2 دیدیم، استخدام کردیم. پروژهای که در گیتهاب رهبریاش میکنیم تا قابلیتهای اصلی Git را بر روی کتابخانهی مستقل C ببریم. مصاحبه ی فنی نیاز نبود. Vicent مهارتهای اش را از طریق کدهای متنباز-اش به اثبات رسانیده بود.
هنگامی که شما این چنین استعدادهایی را از طریق مشارکتهایشان استخدام میکنید؛ اختصاص دادن وقت آنها به کار روی کدهای متنباز، راه عالی و موثری برای حفظ آن استعدادها است. بیایید با آن روبرو شویم، توسعهدهندگان بزرگ در این صورت میتوانند به درستی آن کاری را برای انجام دادن انتخاب کنند، که در آن عالی هستند. این همان توسعهدهندگانی هستند که ارزش کدنویسی به شیوهی متنباز را میدانند و میخواهند برای خودشان به این طریق مجموعهای از پروژهها ایجاد کنند تا بتوانند به دوستانشان نمایشاش دهند و در موقع لزوم برای ارایه به عنوان نمونه کار به کارفرمایان آتیشان ارایه کنند. درست است، یک پارادوکس! به این ترتیب برای خوشحال نگهداشتن یک توسعهدهندهی حرفهای، مجبورید کمکشان کنید تا برای کارفرمایان آیندهشان جذابتر به نظر برسند. اما مشکلی نیست. چرا که آنها دقیقا همان نوع توسعهدهندهگانی هستند که شما میخواهید برایتان کار کنند. بنابراین خونسرد باشید و اجازه دهید روی پروژههای متنباز کار کنند و در غیر این صورت آنها به جای دیگری خواهند رفت تا بتوانند آنگونه کار کنند که دوست دارند.
وقتی من پروژهی جدیدی را آغاز میکنم، فرضم بر این است که در نهایت این پروژه متنباز خواهد شد، حتی اگر بعید باشد. این طرز تفکر منجر به ماژولار کردن بیدردسر پروژهها میشود. اگر به این فکر کنید که چطور افرادی خارج از شرکت شما میتوانند از کدهای شما استفاده کنند؛ در این صورت بعید به نظر میرسد که به سراغ پیکربندیهای اختصاصی بروید. این کار به نوبهی خود موجب میشود تا کدهای تمیزتر و قابل نگهداریتر بنویسید. حتی کدهای داخلی شرکت باید طوری نوشته شوند که گویی قرارست متنباز شده و در اختیار همه قرار گیرند.
آیا تابهحال در یکی از شرکتهایی که برایش کار میکردید، کتابخانه یا ابزاری شگفتانگیز نوشتهاید که بعد از ترک آن شرکت و به استخدام جای دیگری درآمدن، بخواهید همان کد را بنویسید ولی با نداشتن آن کدها احساس تیره بختی کنید؟ من چنین تجربهای داشتهام و افتضاح است.
با انتشار عمومی کدها میتوانیم به شدت از چندبارهکاری جلوگیری کنیم. چندبارهکاری نکردن به معنی کار کردن فقط برای چیزهایی است که اهمیت دارند.
در نهایت، [متنباز کردن کدها] این بهترین کاریست که انجام میدهیم. تقریبا غیرممکن است که این روزها هرگونه کاری انجام دهیم و مستقیم و یا غیرمستقیم به اجرای مقادیر زیادی از کدهای متنباز اقدام نکنیم. اگر شما از اینترنت استفاده می کنید، در حال استفاده از کدهای متنباز هستید. این کدها بیانگر میلیونها انسان-ساعت زمان صرف شده توسط نیروهای انسانی برای نوشتن آنهاست که در نهایت به جامعهی بشری بازگردانده شده تا هرکسی بتواند از آن بهرهمند شود. همهی ما از مزایای نرمافزارهای متنباز بهره میبریم و من معتقدم که همهی ما از نظر از نظر اخلاقی موظفیم که به این جامعه (جامعهی نرمافزارهای متنباز) کمک کنیم. اگر جهان نرمافزار را اقیانوسی در نظر بگیریم، آن گاه متنباز به مثابهی جریانهای اقیانوسیست که کشتیها را به پیش میبرد.
خب، پس چه موقع نباید نرمافزارم را متنباز کنم؟
ساده است، هر چیزی را که نشاندهندهی ارزش اصلی کسبوکار شماست، نباید متنباز کنید. اینجا تعدادی نمونه میآورم از چیزهایی که متنباز نکردیم و دلیلاش را هم میگویم.
هستهی برنامهی اصلی مبتنی بر Rails گیتهاب (وقتی متنبسته است راحت میتوانید آنرا بفروشید)
برنامهی Jobs Sinatra (ساخته شد تا در گیتهاب دات کام ادغام شود)
این هم تعدادی نمونه از چیزهایی است که متنباز کردیم به همراه دلیل آن:
Grit (Git bindings همه منظوره، مفید برای ساختن ابزارها)
Ernie (BERT-RPC سرور همهمنظوره)
Resque (job processing همهمنظوره)
Jekyll (صفحه استاتیکساز همهمنظوره)
Gollum (ویکی اپ همهمنظوره)
Hubot (چتبات همهمنظوره)
Charlock_Holmes (character encoding detection همه منظوره)
Albino (syntax highlighting همهمنظوره)
Linguist (filetype detection همهمنظوره)
توجه کنید که هر چیزی را که متنبسته نگه داشتیم، ارزش کسبوکار (business value) خاص ما بود که میتواند با در دست رقبایمان قرار گرفتن، کسبوکارمان را به خطر بیاندازد. هر چیزی را که متنباز کردیم، ابزاری همهمنظوره است که میتواند توسط عموم مردم و شرکتها برای ساختن همه نوع چیزی استفاده شود.
مجوز درست حسابی کدام است؟
من مجوز MIT را ترجیح میدهم و تقریبا تمام چیزهایی که در گیتهاب متنباز کردیم با این مجوز منتشر شدند. من این مجوز را به چندین دلیل دوست دارم:
کوتاه است. هر کسی میتواند متن این مجوز را مطالعه کرده و بفهمد دقیقا چه میگوید بدون اینکه نیاز باشد با پرداخت حق مشاوره، وکلا را پولدارتر کند.
به اندازهی کافی از کدنویس حمایت میکند تا مطمئن باشم اگر کد به درستی کار نکرد، از من شکایت نمیشود.
هر کسی پیامدهای قانونی مجوز MIT را میفهمد. مجوزهای عجیب-و-غریب مثل WTFPL و Beer تظاهر میکنند که در میان مجوزهای آزاد بهترین هستند، اما کاملا در این هدف شکست خوردهاند. این مجوزهای حاشیهای بیش از حد مبهم و غیرقابل اجرا هستند تا برای استفاده در شرکتها قابل قبول باشند. در سوی دیگر، مجوز GPL بیش از اندازه محدود شده و متعصبانه است تا قابل استفاده برای عموم کارها باشد. من میخواهم همه بتوانند از کدهایم بهرهمند شوند، «همه». این چیزی است که از واژهی «باز» و «آزاد» تداعی میشود.
خب، حالا میپرسید چگونه آغاز کنم؟
ساده است. به جای مخازن بسته، شروع به استفاده از مخازن متنباز عمومی گیتهاب کنید و دربارهی نرمافزارهایی که نوشتهاید، از طریق وبلاگ، توییتر، سایت Hacker News و سایر رسانههای تاثیرگذار محلیتان تبلیغ کنید. سپس میتوانید عقب نشسته، استراحت کرده و از سهیم بودن در جنبشی بزرگ لذت ببرید.
سالهای سال است که تعداد توسعه دهندگان مستقل (فردی/بدون حقوق) لینوکس با کاهشی پایدار مواجه بوده. در ۲۰۱۲ این عدد ۱۴.۶ درصد بود، در ۲۰۱۳ برابر ۱۳.۶ درصد و در ۲۰۱۴ تعداد توسعه دهندگان مستقل به ۱۱.۸ رسید. اما حالا این عدد روی ۷.۷ درصد ایستاده. این سقوط دائمی دلایل متنوعی داره اما حتما منطقیترین دلیل سادهترین اونها است: توسعهدهندگان کرنل کم هستن و هر کسی که بتونه نشون بده کد نوشته شده توسط خودش می تونه به کرنل برسه، در پیدا کردن شغل هم مشکلی نخواهد داشت.
در گزارش این ماه به بیش از ۴۰۰ شرکت اشاره شده که با نوشتن کد برای کرنل سعی می کنن وضع خودشون در بازار رو بهتر کنن. شرکتهایی مثل اینتل، ردهت، سامسونگ، سوزه، گوگل، ای ام د، تگزاس اینسترومنتز، اوراکل، هواوی، فیسبوک، سیسکو و غیره.
در این دوره ۹ ورژن جدید کرنل منتشر شده و عدد اصلی ورژن از ۳ به ۴ تغییر کرده که نشون دهنده هیچ چیز خاصی هم نیست و فقط نشون دهنده این است که هر کرنل جدید تغییراتی داره که دیگه تفاوت خاصی بین عدد اصلی و عدد کوچیک رو لازم نمیکنه.
در صورتی که میخواین با لینوکس آشنا بشین از اینجا شروع کنین و اگر علاقمند هستین که توسعه کرنل رو شروع کنین، مطمئن بشین که لینوکس رو به خوبی بلدین، کتاب سیستمعامل رو بخونین و در برنامه نویسی سی بسیار خوب باشین و در نهایت درک کنین که کرنل لینوکس چه بخشهایی داره و این اجزا چطوری با هم کار میکنن که برای همه اینها کتابهای مستقل هست.
در اولین شماره از رادیوگیک در سال ۹۵، در پشتی رو برای ورود به سال جدید انتخاب می کنیم. از هکرها می گیم و دلایلی که مردم باید از دست دولت هاشون در امان باشن. در این شماره آخرین سنگر ما در مقابل کامپیوترها فروریخته!
Host Chris Anderson interviews Linus Torvalds at TED2016 – Dream, February 15-19, 2016, Vancouver Convention Center, Vancouver, Canada. Photo: Bret Hartman / TED
توروالدز و دعواش در مورد آزاد بودن یا نبودن و دلایل نرم افزار آزاد اعلام کردن لینوکس همیشه مورد بحث بوده [کمی توضیحات خودم]. حالا توی یک گفتگوی تد،توروالدز بحث رو بیشتر باز کرده. حالا در بیست و پنج سالگی لینوکس، اون می گه «من لینوکس رو شروع نکردم که یک پروژه جمعی بشه. من فقط برای خودم شروعش کردم. در نهایت برای من لذت بردن از برنامه نویسی مهم بود و لینوکس رو عمومی کردم بدون اینکه واقعا بخوام از فواید بازمتن بودن استفاده کنم. من فقط میخواستم نظرات مردم در مورد کارم برو ببینم و بشنوم». توروالدز این سال ها هم حاضر نشده لایسنس های آزادتر (از نظر فلسفی) رو بپذیره و روی همون جی پی ال ۲ مونده. اون توی همین مصاحبه می گه «آدم های دیگه رو چندان دوست ندارم اما آدم هایی که روی پروژه ام کار می کنن رو دوست دارم» و البته اضافه هم می کنه که «چیزی که در مورد باز متن دوست دارم اینه که اجازه می ده آدم ها با هم روی یک کد کار کنن؛ حتی وقتی که همدیگه رو دوست ندارم. و گاهی ما واقعا از همدیگه خوشمون نمی یاد».
وقتی از استارتاپ حرف میزنیم نباید فقط به دلیوری فکر کنیم! مثلا تفکر بچه های دیپ گرام که بخشی از وای کامبینیتور هستن این بود که اینترنت داره از یک دنیای متنی به یک دنیای صوتی تصویری تغییر شکل می ده و گوگل، بینگ و بقیه هنوز براش آماده نیستن.. اونها یک موتور جستجو درست کردن که به سرعت می تونه توی فایل های صوتی و تصویری رو نگاه کنه و الگوی کلمات رو بشناسه و صحبت های داخل صداها رو تشخیص بده. اینکار علاوه بر اینکه برای زیرنویس کردن قابل استفاده است، یک سرچ اینجینی روی نقل قول های شفاهی هم درست می کنه. سیستم بایک سیستم یادگیری عمیق (دیپ لرنینگ) کار می کنه [ کمی توضیحات خودم ]. این سیستم در حال حاضر رایگانه و اجازه می ده تا ۴۰ ساعت صدا و تصویر توش آپلود و ایندکس کنین و اگر از من می شنوین چیزی است که تو ایران کاملا بی معنی شده: دانش بنیان… البته کلیت این واژه بی معنیه چون هر چیزی مبتنی بر دانش است و در جهان هم به جای ساختن این اصطلاح ها، فضایی درست می کنن که این شرکت ها بتونن رشد کنن. تعجب نکنین اگر تو همین رادیو گیک گفتیم دیپ گرام فلان میلیون دلار توسط گوگل یا مایکروسافت یا فیسبوک خریداری شده.
هک لینوکس مینت و سرقت ۷۱هزار اکانت و کارگذاشتن بدافزار در ایزو
چی شد؟ همه خبر رو گفتم دیگه عملا (: لینوکس مینت یک توزیع بسیار محبوب لینوکس است. خبر می گه به خاطر اشتباه مدیر سیستم سروری که سایت لینوکس مینت روی اون قرار داره، هکرها تونستن داخلش بشن و مستقل از سرقت اطلاعات کاربران فروم، یک کار خیلی جالب بکنن: جابجا کردن فایل ایزوی لینوکس مینت با یک نسخه ایزو که یک درعقبی هم توش کار گذاشته شده! البته در عمل فقط لینک رو عوض کردن به ایزوی دستکاری شده ولی در نهایت فرق خاصی نمی کنه دیگه. نکته عجیب اینه ک هکر کل اطلاعات فروم رو به قیمت ۰.۱۹ سنت بیت کوین برای دانلود گذاشته یعنی از هر دانلود در این لحظه تقریبا ۸۵ گیرش می یاد. هکر به زد دی نت گفته که «من لنگ ۸۵ دلار بودم» و خب احتمالا در جای دیگه یک بات نت بزرگ با کلی کامپیوتر لینوکس مینت هم برای اجاره قرار داره. نکته اینه که چک کردن ام دی فایو بعد از دانلود می تونست کل این مشکل رو حل کنه.
علی هم برامون از مایکروسافت گفته که ظاهرا در هر شماره می گیم دیگه هر چیزی رو هم اوپن سورس کنه خبرش رو نمی گیم چون هر شماره همینه ولی هر شماره یک آسی رو اوپن سورس می کنه که ….
جادی جان باتوجه به اینکه من یه برنامهنویس داتنِتی هستم ( با گذشته PHP و Python و … ) یسری اخبار درباره مایکروسافت بود که به نظرم شاید بد نباشه یه نیم نگاهی بهش داشته باشی.
همونطوری که میدونی یا شاید شنیدی؛ مایکروسافت سال پیش Net framework رو بصورت اوپن سورس روی Github قرار داد، پروژهای که الان Contrubuterهای مختلفی خارج از مایکروسافت داره و به خوبی روی لینوکس، مک و ویندوز اجرا میشه و از همه مهمتر اینکه Net framework رو با لایسنس M.I.T منتشر کرد …
Visual Studio Code رو بصورت رایگان و متنباز و چند سکویی ارائه داد که خیلی خصوصیات خوب VIM، Sublime، ATOM , … داره.
توزیع لینوکس خودش رو برای سوییچ یا روتر ها تهیه کرد
جدیداً هم اعلام کرده که SQL Server برای لینوکس در حال تولید داره و تا میانههای 2017 ارائه میشه.
نمیدونم خبر داری یا نه؟ اما حدوداً 20 روز پیش خبر رسمی خرید شرکت Xamarin توسط مایکروسافت تایید شد. شاید بهترین خبر برای جامعه داتنت کارها و بقیه برنامهنویسها باشه، زامارین ابزار قوی برای توسعه چند سکویی برنامههای موبایل بصورت Native که نمونه مشابه نداره .
مشکل بزرگ زامارین این بود که خیلی گرون بود! با توجه به کارهای اخیر مایکروسافت احتمال خیلی زیاد بعید نیست که زامارین رو بصورت رایگان روی Visual Studio Community ( ویژوال استودیو رایگان مایکروسافت که در حد نسخه Professional هست ) ارائه بده که شاید بتونه بازار ضعیف برنامههای ویندوز فون رو پر کنه …
به حدی خرید زامارین برای مایکروسافت مهم بود که پروژه Astoria که پل اجرای برنامههای اندروید روی ویندوز 10 بود رو کنسل کرد.
زنده باد دات نت، زنده باد سی شارپ، زنده باد متن باز
در حوزه اندروید اکسپلویت استارگیت نشون داده شده؛ یعنی در واقع دوباره ظاهر شد و اینبار به هکرهای اجازه می ده با هدایت کردن کاربر به سمت یک صفحه آلوده تلفنش رو آلوده کنن. محقق های به اصطلاح اسراییلی نتایج کارشون رو کاملا به شکل پی دی اف منتشر کردن که اتفاقا اطلاعات بیشتر از حد معمولی هم می ده. اونها یک فیلم هم از شیوه کار منتشر کردن. استارگیت یک کتابخونه سی پلاس پلاس است که برای نمایش فایل های مالتی مدیا نوشته شده اما ظاهرا مشکلات زیادی داره. کافیه اول به قربانی بگین به سراغ صفحه ای بره که فایلی توش در حال پخشه. این فایل باعث کرش کردن مدیا سرور می شه. در مرحله دوم مدیا سرور بالا می یاد و دوباره صفحه رو لود می کنه و یک جاوااسکریپت به سرور خبر میده که دستگاه چیه و سرور هم یک فایل مدیای مخصوص اون رو تولید و تو صفحه لود می کنه که دوباره از استارگیت اطلاعات بیشتری می گیره و در کمتر از ده ثانیه تکرار مجددش باعث نصب بدافزار در گوشی هایی می شه که از اندروید ۲.۲ تا ۴ یا پنج یا ۵.۱ استفاده می کنن. اما این همه داستان نیست. اپل ها هم در امان نیستن و هکرهای پالو آلتو نوشن دادن که چطوری می تونن روی گوشی های اپل جیل برک نشده (و البته روی آی پدها) بدون اطلاع یا همکاری صاحبش بدافزار نصب کنن. این تکنیک که AceDeceiver نامگذاری شده با استفاده هوشمندانه از DRM (که همیشه به ضرر استفاده کننده اش است [کمی توضیح]) کلا مکانیزم امنیتی نصب نرم افزار آی او اس رو دور می زنه. تکنیک اصلی استفاده از FailPlay است که انتظار می ره مکانیزمی باشه برای جلوگیری از کپی کردن برنامه های خریداری شده از روی دستگاه به یک دستگاه دیگه ولی خب با یک حمله مرد میانی می شه دستگاه رو گول زد و برنامه ها رو جای دیگه کپی کرد یا حتی در نمونه اخیر برنامه رو روی گوشی منتقل کرد.
تنویر حسن ضحی یک محقق امنیتی بنگلادشی است که همین چهارشنبه غیب شد! ضحی روی موردی کار می کرد که توش هکرها ۸۱ میلیون دلار از بانک بنگلادش دزدیدن و به حساب های تقلبی توی فیلیپین منتقل کردن و غیب شدن. البته هدف اصلی ظاهرا سرقت یک میلیارد دلار بوده که به خاطر چند اشتباه تایپی تنها ۸۱ میلیون منتقل شده! ضحی می گه از چند هفته قبل بدافزارهایی روی کامپیوترهای بانک بنگلادش نصب شده بود و دلیل اصلی کشف نشدنش ضعف سواد مسوولین بانک مرکزی بنگلادش بوده. بعد از انتشار نوشته ها و صحبت های ضحی، مدیر بانک مرکزی و دو تا از معاونینش استعفا دادن و بعدش ضحی غیب شد و خانواده اش نگرانشن. نمی دونم چی در موردش گفت به جز اینکه کشورها باید روش هایی برای گزارش مشکلات و حمایت از گزارش کننده ها داشته باشن نه اینکه تنها تلاششون ساکت موندن همه در مقابل مشکلات باشه.
توی خبر قبل گفتم که دولت ها و شرکت ها باید هکرها رو تشویق به کارهای مثبت بکنن. گوگل یکی از این شرکت ها است که در برنامه های موسوم به باگ باونتی، از هکرهامی خواد که حفرههای امنتیی رو کشف کنن و اطلاع بدن و جوایز بزرگ بگیرن. باگ باونتی فعلی مربوط به هک ریموت کروم بوک است. اگر شما بتونین از طریق وب کروم بوک گوگل رو هک کنین این هک بعد از ریبوت دستگاه کار کنه، جایزه تون ۱۰۰ هزار دلار است. اگر علاقمند به دنیای هک هستین و فکر می کنین چیزی بلدین، این گوی و این میدون. البته باید بگم که پارسال جایزه ۵۰هزار دلار بوده و کسی نتونسته برنده اش بشه ولی به هرحال به تلاشش می ارزه چون حداقل میبینن که منطقا یک هکر باید چه چیزهایی بلد باشه.
در اعماق
و همچنین یادآوری می کنیم که از این شماره سایت دیجیتاتو یکی از تبلیغ دهنده های رادیوگیک است. سایتی که شعارش «زندگی با تکنولوژی» است و سعی اش معرفی تکنولوژی های جدید به آدم ها. دامینش رو که حتما بلدین digiato.com و خوشحالیم که از این طریق پیش قدم شده برای حمایت از رادیو گیک.
اطلاعیه سازمان ملی امنیت ترافیکی آمریکا: مواظب خودروهای هک شده باشین شاید این عنوان تا مدتی قبل ایده یک رمان علمی تخیلی بود اما حالا یک واقعیته. بولتن سازمان ملی امنیت ترافیکی آمریکا گفته که هرچند خیلی از هک ها منجر به مسائل امنیتی نخواهند شد اما مهمه که راننده ها و آدم ها به نشانه ها حساس باشن چون اگر یک هکر کنترل خودرویی در دست بگیره بسیار خطرناکه. بولتن می گه اینترنت چیزها داره کنترل خودروها رو در دست می گیره و تحقیقات زیادی مشکلات امنیتی ریموت توی خودروها رو نشون دادن از جمله ویدئویی که توش یک جیپ توسط هکر هک می شه یا مشکلات امنتیی جی ام و بی ام دبلیو که در هر دو مورد کمپانی ها به سرعت آپدیت دادن و مشکل دیده شده رو حل کردن. بولتن می گه مشکل امنیتی ممکنه هر جایی باشه، از سیستم بی سیم، بلوتوث، یو اس بی، وای فای یا حتی در یکی از اجزا که کمپانی های تردپارتی می سازن و این مشکلات می تونه به یک هکر امکان دسترسی به سیستم کنترل کننده خودرو و همچنین اطلاعات حرکت رو بده. همچنین یک خطر دیگه درست چیزی است که توی همین شماره در مورد لینوکس مینت گفتیم. هکرها ممکنه به سرورهای آپدیت خودروها دسترسی پیدا کنن و کد مخربی رو اونجا قرار بدن که ماشین روی خودش دانلود و نصب کنه. خوشبختانه قانونگذارهای آمریکایی اینقدر با شعور بودن که از نظر قانونی از اکتبر به بعد با تغییر قوانین مردم اجازه پیدا خواهند کرد نرم افزار خودروهاشون رو بررسی کنن و بدونن که توش چی می گذره تا از این طریق مشکلات بیشتری هم کشف و حل بشن.
دوستمون Emi یک لطیفه فرستاده که عملا خودش یک دراعماقه:
یه روز با ماشین زمانم ده سال جلوتر رفتم و از اولین آدمی ک دیدم پرسیدم
گوگل هنوز بهترین موتور جستجوی دنیاست؟
با صدای آروم لرزناکی بهم گفت : هیس! ممکنه صداتو بشنوه.
فن هویی اول به نظرش حرکت کامپیوتر عجیب می یاد. اما بعد فقط می گه «تا به حال چنین چیزی از یک آدم ندیده بودم. خیلی زیبا بود» و هی تکرار می کنه «زیبا، زیبا…». حرکت مورد بحث حرکت ۳۷م مسابقه دوم بین برنامه کامپیوتری آلفا گو است که در قسمت قبلی ازش شنیدیم و حریفش لی سدول که بهترین بازیکن گو در جهانه. لی سدول توی ۵ تا مسابقه ای که این هفته در طبقه چهارم یک هتل زیبا با کامیپوتر داد، ۴ بر ۱ بازنده شد. ظاهرا این حرکت اونقدر قشنگ و عجیب و غیر مرتبط (ظاهرا) با حرکت های قبل بوده که لی سدول مجبور شده ۱۵ دقیقه بهش فکر کن و آخرش هم بازی رو واگذار کنه. یادتون باشه در شماره قبل کمی در این مورد حرف زدیم [تکرار کوتاه و اینکه ده سال آینده قرار بود ماشین ها توی گو ما رو شکست بدن]. فن هویی به عنوان یکی از قهرمانان اروپا در دو سه هفته قبل یک مسابقه پنج دوره با آلفا گو انجام داد که توی هر پنج تا مسابقه شکست خورد – البته خوشبختانه ایشون بخشی از تیم مشاور آلفاگو هم هست و در نتیجه هر طرف که پیروز میشد، پیروز نهایی خود فن هویی بود. بازی اول این روند رو تقریبا ۶۰ میلیون چینی تماشا کردن و متعجب شدن که چطور یک کامپیوتر قهرمان جهان در بازی ۲۵۰۰ساله اوناه شکست می ده. گزارشگرها می گن احساس شکست و ناراحتی ای که به خیلی ازآدم ها دست داده طبیعی است و حتی الون ماسک و سم آلتمن هم اونو تجربه کردن. جایی که می بینیم از ماشین ها شکست می خوریم (توضیح خودم در مورد حافظه و خیلی جاهایی که عقبیم ولی نمی فهمیم). البته بخش جالب اینجاست که فن هویی خیلی هم نگران نیست. اون در طول پنج ماه گذشته بارها و بارها و بارها با ماشین بازی کرده و ازش شکست خورده ولی در بین انسان ها رتبه اش خیلی بهتر شده. در ابتدا اون رتبه ۶۳۳ جهان رو داشت اما حالا تقریبا ۳۰۰ است! ماشین ها هم می تونن باعث پیشرفت ما بشن و مشکل اصلی همونی است که هاوکینگیز بهش اشاره می کنه: سرمایه داری و شیوه استفاده از هوش مصنوعی.
و البته برای اینکه غمگین تموم نکنیم، از تظاهرات هامون می گیم تظاهرات درمقابل ساختمان کنسرسیوم ورلد واید وب علیه هالیوودی کردن وب از طریق اضافه کردن دی آر آم به اچ تی ام ال ۵.
ماجرا مثل همیشه از یکی از بهترین بنیادهای جهان یعنی fsf شروع شده. چند وقت پیش اخبار SOPA و PIPA خیلی روی بورس بود که عمل جمعی ساکنین وب جلوشون رو گرفت. حالا پیشنهاد جدید رسانه های عظیم و هالیوود اینه که به اچ تی ام ال پنج دی آر ام اضافه بشه. این در واقع تلاشی است برای اضافه کردن محدودیت به فرمت های آزاد وب و بستن دست آدم ها در استفاده از نرم افزارها یا اصولا در سطحی بالاتر کنترل کامپیوترشون. این پروپوزال که EME خونده می شه (Encrypted Media Extentions) صدمه ای است تقریبا غیرقابل جبران به آزادی وب. ممکنه ما که توی ایران نشستیم مفهوم «وب آزاد» اصولا برامون مسخره و خنده دار و دور ازدست باشه اما باید بدونیم مشکل چیه. مساله اینه که فعلا فرمت های وب برای همه قابل استفاده هستن و هر کسی با هر ابزاری به شیوه ای که دوست داره می تونه از وب استفاده کنه اما اضافه شدن دی آر ام به استانداردها درست مثل فلش و سیلورلایت که خوشبختانه هر دو در حال احتضارن ساکنین وب رو مجبور خواهد کرد فقط با یک برنامه خاص به اطلاعات دسترسی داشته باشن و عملا کامپیوترشون دیگه توی کنترل خودشون نباشه. این خیانتی است به ارزش های بنیادینی که وب روش بنا شده و در نهایت وب رو تبدیل می کنه به یک لوله کشی انحصاری که شرکت های بزرگ تعیین می کنن چه کسی می تونه چی رو در چه شرایطی روش مصرف کنه. برای من و شما هم لازمه اطلاعاتمون رو در مورد آزادی وب و بی طرفی شبکه بیشتر کنیم .. کسی چه می دونه، شاید یک روز ما هم از بحث سانسور توییتر و فیسبوک و مشکلات عمدی اچ تی تی پی اس های گوگل و بیت باکت و ریپوزیتوری هامون رسیدیم به بحث اینکه استانداردهای وب باید آزاد بمونن.
یه چیزی نگفته موند! دعوای اپل و اف بی آی [ خودم حرف بزنم بخصوص در مورد مفهوم در پشتی و ناامن شدن همه چیز باهاش + مرزهای جغرافیایی مبهم + جامعه آزاد ]
تبریک و تقبیح
تقبیحی داریم برای آپارت که فیلم منو و خاتمی رو حذف کرده.. [کمی توضیح و اینکه تقبیح آپارات نیست، تقبیح سانسورچی وقانونگذار است]. بی بی سی فارسی رو هم داریم در بخش تقبیح ها به خاطر یک مطلب خیلی ضعیف با عنوان «آیا تلفنهای هوشمند ما را شنود میکنند؟». مقاله یک ترجمه است از نوشته ای دیگه توی بی بی سی ولی این عنوان توی ایران منطقا باید شکل دیگه ای نوشته بشه و یک ترجمه صرف از خارج جوابگو نیست؛ در عین اینکه مقاله مثلا می گه عده ای یک برنامه نوشتن که با اجراش هر چی اطراف تلفن میگیم رو صفحه نمایش یک کامپیوتر دیده می شه، خب معلومه که می شه اینو نوشت. مثل اینه که بگیم «آیا تلفن من من را شنود می کند؟» و بعد یکی نشون بده که چطور اگر تلفن زنگ زد و جواب دادیمش… [ توضیحات خودم].
تبریک هم داریم برای پیتزا فروشی دومینو که یک پیتزای زنجیره ای بزرگ در جهانه که با کیوت ترین دستگاه ممکن قراره به شکل خودکار پیتزاها رو به خونه مردم بفرسته (و البته تسلیت به کسانی که شغلشون رو با اینکار از دست می دن.. توضیح در مورد هانی اکسپرس)
تبریکی هم داریم به خانم «نرگس ماوالوالا» که مسوولیت بزرگی در کشف امواج گرانشی که کلی در موردش خبر بود داشتیم… ایشون پاکستانی هستن، لزبین هستن، با پارتنرشون یک بچه دارن و توی یک خانواده زرتشتی به دنیا اومدن و حالا اسمشون کلی مشهوره چون نقشی بسیار مهم در کشف امواج گرانشی که یکی از بزرگترین کشفیات فیزیک اخیره داشتن. اینو یکی از دوستان با ایمیل ناشناس یادآوری کرد تا یادآور این باشه که پیش فرض های ذهنی مون رو دور بریزیم و بدونیم یک خانم لزبین زرتشتی زاده پاکستانی که با پارتنرش یک بچه هم داره، آدم مهمه دنیای فیزیک می تونه باشه و این کارها فقط مال بازیگرها نیست (:
نامه ها
از تماس شما و ابراز تمایل برای انتشار محتوای رادیوگیک روی شبکه ی توشه، سپاسگزاریم. ما از این هفته به طور ثابت و در بسته ی اَپ و تکنولوژیِ چهارشنبههای توشه، رادیوگیک هم میفرستیم و مخاطبانِ توشه محتوای سایت شما را دریافت خواهند کرد. توشه از ابتدای این هفته رسماً آغاز به کار کرد که خبر تصویری راه اندازی آن را میتوانید در ضمیمه ببینید.
خوشحال میشیم اگر رادیوگیک، مخاطبان خود را امکان جدید دریافت محتوا از طریق توشه هم باخبر کند.
آدرس ما در توییتر،تلگرام، فیسبوک و اینستاگرام:
– https://twitter.com/tooshehapp
– https://telegram.me/tooshehapp
– https://www.facebook.com/tooshehapp
– https://www.instagram.com/tooshehapp
موسیقی
موسیقی آخر به نام Mad World از Gary Jules
موسیقی های دیگه «شروین – خداحافظی»، «امیدحاجیلی، تردست» و «The Girl Without Hair».