«(تقریبا) همه چیز را بازمتن کنید» مقاله‌ای خوب از تام پرستون-ورنر

اشاره: متن پیش رو برگردان پستی است که Tom Preston-Werner در وبلاگش با عنوان Open Source (Almost) Everything منتشر کرده و به جهت اهمیت مطلبی که در آن بیان کرده، نظیر ترس کسب‌وکارها از منبع باز کردن محصولات‌شان، مرور آن ضروری می‌نماید. او در این نوشته توضیح می‌دهد که چرا و چگونه بر ترس متن‌باز کردن نرم‌افزارهای‌شان غلبه کرده و به سمت ایجاد کسب‌وکاری بر مبنای نرم‌افزارهای متن‌باز حرکت کردند. این متن را امیرپوریا مهری ترجمه کرده و من در جادی.نت بازنشرش می‌کنم. شاید من در مورد جزییات یا حتی استفاده از عباراتی مثل «بازمتن» در مقابل «آزاد» نظرات متفاوتی داشته باشم ولی در کل خوندن این مطلب بسیار راهگشا است.


tom

در اواخر سال ۲۰۰۷، من و کریس (Chris Wanstrath) شروع به کار بر روی گیت‌هاب کردیم، کار به دو قسمت تقسیم شد: کریس بر روی توسعه‌ی برنامه‌های Rails متمرکز بود و من روی Grit کار می‌کردم که نخستین Git‌ نوشته شده بر پایه‌ی Ruby بود. پس از شش ماه توسعه، Grit به اندازه‌ی کافی آماده بود تا قدرت‌بخش گیت‌هاب شود و سایت را به انتشار عمومی دربیاوریم. در همین حال ما با سوال جالبی مواجه شدیم:

بهتر است Grit را متن‌باز کنیم و یا این که کدهای آن را به صورت اختصاصی نگه داریم؟

اختصاصی نگه داشتن کدهای Grit در رقابت با سایت‌های میزبان Git‌که برپایه‌های Ruby نوشته شده‌اند، پرش بزرگی بود و می‌توانست مزیت رقابتی ما باشد. اما متن‌باز کردن آن به این معنا بود که هزاران نفر در سراسر جهان می‌توانند از آن برای ساختن ابزارهای Git مورد نظرشان استفاده کنند. در واقع با این کار یک اکوسیستم چالاک پیرامون Git تشکیل می‌شد.

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

چرا متن‌باز کردن (تقریبا) همه‌چیز این‌قدر هیجان‌انگیز است؟

اگر آن را به شیوه‌ی درست انجام دهید، کدهای متن‌باز تبلیغ بزرگی برای خود و شرکت‌تان خواهد بود. در گیت‌هاب دوست داریم درباره‌ی کتابخانه‌ها و سیستم‌هایی که کدهای آن را زده‌ایم و هنوز متن‌بسته‌اند، ولی تصمیم داریم آنها را متن‌باز کرده، به‌طور عمومی بحث کنیم. این شگرد چندین مزیت در خود دارد. از جمله کمک می‌کند تا تععین کنیم چه چیزی را باید متن‌باز کرده و اهمیت آن برای ما چقدر است تا در اولویت کاری انتشار قرار دهیم. ما اخیرا Hubot، چت‌بات‌مان را منبع باز کردیم؛ تا شمار زیادی را خوشحال کنیم. در عرض دو روز ۵۰۰ نفر در گیت‌هاب به بررسی آن پرداختند و ۴۰۹ رای مثبت در وب‌سایت Hacker News نصیب این برنامه شد. این کار نزد مردم به حسن‌نیت گیت‌هاب ترجمه می‌شود و موجب افزایش شمار طرافداران دو‌آتشته برای ما شد.

اگر کدهای شما به اندازه‌ی کافی محبوب باشند تا موجب جذب همکاری توسعه‌دهندگانی خارج از شرکت‌تان شود؛ شما نیروی مضاعفی به وجود آورده‌اید که کمک‌تان می‌کند کارهای بیشتری را سریع‌تر و ارزان‌تر از پیش به سرانجام برسانید. کاربران بیشتر به معنای آن است که کارهایتان توسط مشتریان بیشتری در حال استفاده و بررسی است که این خود به معنای قوی‌تر شدن کدهای‌تان است. Resque کتابخانه‌ی اختصاصی ما، توسط ۱۱۵ فرد مختلف از خارج از شرکت بهبود یافت و صدها پلاگین برای آن توسعه داده شد که به گسترش قابلیت های این کتابخانه کمک کرد. هر رفع اشکال و ویژگی جدیدی که اضافه می‌شوند، موجب صرفه‌جویی در وقت شما شده و از سرخوردگی احتمالی مشتری‌تان، به خاطر کمبود ویژگی‌ها و یا باگ‌های فراوان، جلوگیری می‌کند.

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

اگر به دنبال استخدام هستید، بهترین مصاحبه‌ی فنی ممکن، این است که اصلا صورت نگیرد؛ چرا که داوطلب پیش از این در یکی از پرو‌ژه‌های منبع باز شما دست برده است. هنگامی که برتری فنی در چنین مسیری تثبیت شود؛ تمام آنچه باقی می‌ماند، بررسی این است که آیا فرد به فرهنگ شرکت‌تان می‌خورد یا نه و سپس مرحله‌ی متقاعد کردن او تا برای‌تان کار کند. اگر آنها درباره‌ی کدهای متن‌باز-ای که نوشته‌اند مشتاق باشند؛ و شما از شمار شرکت‌هایی باشید که به کدهای تمیز اهمیت می‌دهد (که باید باشید) این فرایند (استخدام) باید ساده باشد. ما Vicent Martí را پس از این‌که کارهای درخشان او را روی کتابخانه ی libgit2 دیدیم، استخدام کردیم. پروژه‌ای که در گیت‌هاب رهبری‌اش می‌کنیم تا قابلیت‌های اصلی Git‌ را بر روی کتابخانه‌ی مستقل C ببریم. مصاحبه ی فنی نیاز نبود. Vicent مهارت‌های اش را از طریق کدهای متن‌باز-اش به اثبات رسانیده بود.

هنگامی که شما این چنین استعدادهایی را از طریق مشارکت‌های‌شان استخدام می‌کنید؛ اختصاص دادن وقت آنها به کار روی کدهای متن‌باز، راه عالی و موثری برای حفظ آن استعدادها است. بیایید با آن روبرو شویم، توسعه‌دهندگان بزرگ در این صورت می‌توانند به درستی آن کاری را برای انجام دادن انتخاب کنند، که در آن عالی هستند. این همان توسعه‌دهندگانی هستند که ارزش کدنویسی به شیوه‌ی متن‌باز را می‌دانند و می‌خواهند برای خودشان به این طریق مجموعه‌ای از پروژه‌ها ایجاد کنند تا بتوانند به دوستان‌شان نمایش‌اش دهند و در موقع لزوم برای ارایه به عنوان نمونه کار به کارفرمایان آتی‌شان ارایه کنند. درست است، یک پارادوکس! به این ترتیب برای خوشحال نگه‌داشتن یک توسعه‌دهنده‌ی حرفه‌ای، مجبورید کمک‌شان کنید تا برای کارفرمایان آینده‌شان جذاب‌تر به نظر برسند. اما مشکلی نیست. چرا که آنها دقیقا همان نوع توسعه‌دهنده‌گانی هستند که شما می‌خواهید برای‌تان کار کنند. بنابراین خونسرد باشید و اجازه دهید روی پروژه‌های متن‌باز کار کنند و در غیر این صورت آنها به جای دیگری خواهند رفت تا بتوانند آن‌گونه کار کنند که دوست دارند.

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

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

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

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

خب، پس چه موقع نباید نرم‌افزارم را متن‌باز کنم؟

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

  • هسته‌ی برنامه‌ی اصلی مبتنی بر 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 و سایر رسانه‌های تاثیرگذار محلی‌تان تبلیغ کنید. سپس می‌توانید عقب نشسته، استراحت کرده و از سهیم بودن در جنبشی بزرگ لذت ببرید.

امیدی برای معلولین: پای مصنوعی اوپن سورس و قابل پرینت سه بعدی

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

3ddrako_foot1

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

دیوید در ابتدای کار سعی کرده بود پایی مشابه پای انسان بسازه ولی مکانیزم برای پرینترهای سه بعدی فعلی خیلی پیچیده بود و به همین خاطر به سمت طرح سم بز رفت که ببینه کف پا چطوری در محیط های ناهموار می تونه استواری اش رو حفظ کنه. نسخه بعدی بر اساس قدهای متفاوت طراحی شد و امید می ره نقشه های منتشر شده در فری کد کم کم بهتر بشن تا این پای آزاد بتونه با پروتزهای تجاری رقیب بشه.

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

انتخاب توزیع گنو/لینوکس مناسب سرور

create_distro

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

لینوکس تنوع داره دقیقا به این خاطر که آدم ها و نیازهاشون تنوع دارن. هر کس ممکنه از چیزی خوشش بیاد و چیزی براش بهتر باشه. جواب نهایی در این مورد وجود نداره!

خب قبول! ولی اکثریت نیازهای ما با چه چیزی جواب داده خواهد شد؟

اولین سوال: دب یا آر پی ام

اولین نکته در انتخاب یک توزیع برای سرور اینه که شما می خواین از مدیر بسته های دبیانی (فایل های deb و دستورات apt) استفاده کنین یا ردهتی (فایل های rpm و مدیر بسته های yum یا dnf). این تا حد زیادی یک سلیقه و تجربه شخصی است. اکثر ما روی دسکتاپ با توزیع‌های مبتنی بر دبیان (مثلا اوبونتو یا مینت) شروع می کنیم و در نتیجه روی سرور هم اونها برامون راحتتر هستن. در مقابل شرکت های بزرگی مثل اوراکل و ردهت و سوزه توزیع سرور خودشون رو مبتنی بر rpm عرضه می کنن و اگر وارد دنیای حرفه ای بشین، بیشترین چیزی که می بینین اینها هستن. این انتخاب بین rpm و deb قدم اول شما برای رسیدن به توزیع مورد نظر است و تفاوت عجیبی هم با هم ندارن. البته من شخصا در کارهای شخصی (مثلا وب سرور خودم) سیستم های مبتنی بر دبیان رو ترجیح می دم و در سیستم های تجاری اداری (مثلا بانک یا مخابرات) سیستم های rpm رو.

دبیانی‌ها

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

آر پی امی‌ها

مطمئنا رقیب بلامنازع دنیای rpm برای سرورها، ردهت و لینوکس rhel است ولی ردهت یک شرکت تجاری و آمریکاییه که نصب کردن و ساپورت و آپدیت صحیحش نیاز به اشتراک و غیره داره. من اگر بخوام روی یک سرور کار کنم که بعدا قراره تحویل کس دیگه ای بشه – بخصوص در حوزه صنایع و تجارت های بزرگ مثل بانک و مخابرات – حتما انتخابم نمونه آزادتر ردهت یعنی سنت او اس است. در حال حاضر سنت او اس ۷ آخرین و مرسوم‌ترین نسخه است.

بقیه لینوکس‌ها

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

آرچ؟!

نصب آرچ سخت نیست ولی نیاز به کمی انگلیسی دونستن، حوصله و پهنای باند داره و به همین دلیل برای بعضی ها دور از دسترس به نظر می رسه. اسمش هم جور جالبی توی دهن میچرخه و در نتیجه وقتی کسی می شنوه یکی دیگه با آرچ کار می کنه معمولا احساس رعب می کنه؛ چیزی که می تونیم اسمش رو بذاریم وهم آرچی! این وهم مثل هر ترس دیگه در انسان‌ها باعث یک کشش و علاقه هم می شه و در نتیجه گاهی آدم ها در مقال چیزی که ازش می ترسن / می ترسیدن اونقدر خاشع می شن که می گن حتی دوستش دارن و به پرستش و اظهار ارادت های های بیجا هم می رسن. مثلا در دنیای گنو/لینوکسی این داستان، آرچ رو روی سرور نصب می کنن!

یکی از بهترین نقاط قوت آرچ در دسکتاپ، یکی از اصلی ترین نقطه ضعف های اون روی سرور است: غلطان بودن. غلطان بودن؛

  1. غلطان بودن باعث می شه سیستم خطرناک‌تر آپدیت بشه. نمی گم آرچ غیرپایدار است ولی اصولا از یک سیستم غلطان نمی شه انتظار پایداری صد در صد داشت چون به هرحال بسته ها با سرعت به آخرین نسخه ها آپدیت می شن و خطر همیشه در کمینه!
  2. غلطان بودن باعث می شه شما مطمئن نباشین که سیستم روی چه نسخه ای از هر لایبری یا نرم افزار ایستاده. اگر من دبیان پایدار نصب می کنم می دونم که پی اچ پی من روی فلان نسخه است و تغییر هم نمی کنه ولی در یک سیستم غلطان در هر مورد باید با دست مشخص بشه که می خوایم فلان بسته در فلان نسخه باشه. این روی سرور خطرناکه چون ممکنه سازگاری نرم افزارها یا نیازهای زیرساختی اونها به نسخه های خاص رو به هم بزنه.

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

بی اس دی چی؟

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

نکته جایزه!

حالا که تا اینجا اومدین و نتیجه رو دیدین که به شکل عمومی دبیان استیبل، اوبونتو سرور LTS و سنت او اس گزینه های مرسوم برای نصب روی سرورها هستن، این رو هم اضافه کنم که بسیار از نرم افزارها و شرکت های تجاری مهم، لینوکس خودشون با تنظیمات ریز و دقیق خودشون رو به شما تحمیل می کنن. مثلا اگر برنامه انتقال اسمس رو از فلان شرکت لهستانی بخرین حتما به شما می گه که این برنامه باید روی سنت او اس ۶ و مای اسکوئل ۴ اجرا بشه چون اونجا تست و بررسی شده. معمولا در کارهای حرفه ای اینطوری نیست که شما یک سیستم عامل رو کاملا مستقل از برنامه های روش انتخاب و نگهداری کنین. من توی آفریقا با زیمنس کار می کردم و تقریبا همه سرورها، گنو/لینوکس سوزه بودن؛ چرا؟ چون آلمانی است و شریک استراتژیک شرکت زیمنس (:

چطور اینترنت، نرم افزار آزاد و گیت (روزی) دولت‌ها را تغییر خواهد داد

بسیاری از تکنولوژی‌های جدید و بخصوص مرتبط با مخابرات که ظاهر شدن مدعی بودن که تغییراتی بزرگ در صلح و آزادی – یعنی در کنترل دولت ها – به وجود می‌یارن. تلفن مدعی بود که باعث می شه مردم بتونن با هم حرف بزنن، همین ادعا توسط چاپ و غیره هم مطرح شد. اما فقط در این دوره است که ما git رو داریم! این ادعای کسی است که مذاکره و مباحثات رو در اینترنت بررسی می‌کنه.

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

با تشکر از عباس عزیز که لینک ویدئو رو برام فرستاد و تشکر از دوستی که نمی‌شناسمش ولی زیرنویس فارسی رو اضافه کرده.

چرا آزادی بخش مهمی از آینده وب است؛ فیلم سخنرانی

دوستان خوب همایش آینده وب کار مهمی کردن و همه فیلم‌های همایش رو اینجا آپلود کردن منم فیلم خودم رو در کانال خودم منتشر کردم. شاید براتون جالب باشه.

روز خوبی بود و تشکر از شما که اومدین و برگزار کننده ها و لینک یوتیوب سخنرانی در مورد آینده وب هم اینجاست

حوالی مشهد هستین؟ همایشن مشهد کانکت رو از دست ندین

mashhad_connect

همایش مشهد کانکت، یک همایش یک روزه برای گیک‌ها، برنامه‌نویس‌ها و علاقمندان تکنولوژی و اینترنت است که روز جمعه ۲۴ مهر برگزار می‌شه. توش خوش بگذرونین.

فیلم ارائه من (آیا ما حرفه ای هستیم) در همایش پی اچ پی ۲۰۱۵ و چند نکته در مورد همایش

حتما یادتون هست که مدتی قبل همایش پی اچ پی ایران ۱۳۹۴ برگزار شد. یک همایش منظم و مرتب که اکثر آدم ها از کلیتش راضی برگشتن. در این همایش من سخنرانی‌ای داشتم در این مورد که «آیا شما حرفه ای هستید؟» که در سایت سکان آکادمی می‌تونین گزارشش رو بخونین و از یوتیوب هم می‌تونین فیلمش رو ببینین:

اما علاوه بر فیلم به نظرم گفتن چند نکته در مورد همایش جذابه:

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

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

رادیو گیک شماره ۵۴ – میره به حجله شادوماد

در شماره ۵۴ رادیو گیک، دور تا دور جهان رو می گردیم! از فرانسه و آمریکا در بخش اخبار می گذریم و به ایران می یام تا در مورد مذاکرات بگیم و پیشنهادهایی برای اینکه چطوری حکومت می تونه تا حدی باعث پیشرفت استارتاپ ها و شرکت های کوچیک بشه. بودن حسن روحانی در این شماره باعث نمی شه در مورد مدل موی عروس و لباس های کودکستان گپ نزنیم! در بخش آخر با یکی از بهترین متخصصین امنیت در جهان مرور می کنیم که «چرا رمزگذاری می کنیم؟»؛ جوابش خلاصه اش اینه: چون به نفع جامعه است.

مشترک رادیو گیک بشین


آر اس اس رادیو گیک

اپلیکیشن اندروید رادیو گیک

رادیو گیک در آیتونز

رادیو گیک در ساوند کلاود

اپلیکیشن iOS

اخبار

ویزای کار در آمریکا و مشکل آموزش کار توسط آمریکایی‌ها به مهاجران
کاخ سفید

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

دولت فرانسه و حمایت از ODF و رد کردن فرمت مایکروسافت
کلیت خبر که توضیح بیشتری از تیتر لازم نداره. توضیح اهمیت بحث. رد شدن فرمت داکیومنت مایکروسافت علی رغم اینکه ایزو گرفته بود و البته ایزو گرفتن فرمت ODF. اهمیت مالکیت بر محتوای داکیومنت ها و در قدم آخر آزاد بودنش برای کسانی که مالیات تولیدشون رو دادن.

در اعماق

خبری که شاید نشنیده باشین: مذاکرات تموم شد

نظرات خودم. بحث مهمل اینکه موفق می شه یا نه. موفقیت داخلی برای هر دو طرف. نشونه ای از جهت حرکت که حتی اگر خودش مهم نباشه حرکت و جهتش مهمه. علاقمندی همه به توافق – پیروز نشدیم و شکست هم نخوردیم حرف زدیم کنار اومدیم. آینده و ارتباط احتمالی با جهان.
و حالا که حرف دولته بحث قانون دسترسی آزاد به اطلاعات رو هم بگم که به شکل بی سر و صدایی به عنوان یک ابلاغیه از طرف دولت اعلام شده و حرکت بسیار خوبی است.. بحث استارتاپ ها حضور دولت در همه جا و حق دسترسی به اطلاعاتی که با پول من درست می شه. بحث رقابت رو هم بکنم.

اوراکل و ورودی دیرهنگام به ابر موبایلی
اوراکل

ظاهرا وقتی همه مشغول اینترنت چیزها بودن، اوراکل درگیر خریدن شرکت های دیگه بوده و حالا تازه داره سعی می کنه به بقیه برسه و در ایونت آنلاین ۵ ساعته اش کلی چیز معرفی کرده: سرویس های ابری ۲۴ ساعته (اسمش منو یاد زمانی می ندازه که زیر خبرنامه ها می نوشتن «عضو خبرنامه رایگان ما بشین» یا «سایت ما ۲۴ ساعته قابل دسترسی است»). این سرویس IaaS، Pass, Saas و غیره رو به هم پیوند می ده و مدعی است که RDBMS و NoSQL و بیگ دیتا و سرویس های پروسس و اتصال داده هم داره! اما بخش متفاوت با دیگران Mobile Backend as a Service است. MBaaS. در این سیستم تلاش شده شما به عنوان توسعه دهنده موبایل با حجم بزرگی API سر و کار داشته باشین و به جای سر و کله زدن با اینفرااستراکچر، ای پی آی ها رو صدا بزنین. اکثر شرکتهای مبتنی بر MBaaS قبلی توسط شرکت های غول خریداری شدن و الان اوراکل نشون داده که اینبار به جای خرید می خواد بره سراغ ساختن. این پلتفرم همین الان امکانات مدیریت کاربران، پوش نوتیفیکیشن، ذخیره سازی آبجکت ها، دسترسی آفلاین، تحلیل، انواع دیتابیس رو داره و حتی می شه APIهای تردپارتی رو بهش وصل کرد و اس دی کی مناسب برای کوردوا، آی او اس و اندروید رو هم داده. [کمی بحث در مورد مدل توسعه موبایل]

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

تبریک و تقبیح

گوشی کمودور

تبریک می گیم به شرکت عالی کمودور که به بازار برگشته، با یک گوشی بامزه و خوب اندرویدی. کمی توضیح در مورد نوستالژی و شبیه سازهای روی این گوشی

و تبریکی هم داریم به انگلیسی ها که یک دایناسور کامل با بافت غیراستخوانی فسیل شده پیدا کردن که اتفاق بزرگی است.

و تسلیت به گوگل به خاطر گم کردن یکی از هاردورهای شبکه اش! [ماجرا رو بگم]

نامه ها

بخش آخر

چرا رمزگذاری می کنیم

ترجمه مقاله Why We Encrypt از بروس اشنیر

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

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

رمزگذاری زمانی بهترین نتیجه را می دهد که همیشه حاضر و خودکار باشد. دو شکل رمزگذاری که ما همیشه در حال استفاده از آن هستیم – آدرس های https و لینک بین گوشی همراه و دکل‌های مخابراتی – کارکردی فوق العاده دارند چون همیشه حاضرند و به شکل خودکار انجام می‌شوند؛ حتی بدون اینکه متوجه حضورشان باشیم.

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

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

مهم است فراموش نکنیم که رمزگذاری به شکلی جادویی تضمین کننده امنیت نیست. روش‌های زیادی برای خنثی کردن رمزگذاری موجود است و معمولا هم درباره آن‌ها در خبرها می‌خوانیم. رمزگذاری از کامپیوتر یا تلفن شما در مقابل هک شدن حفاظت نمی‌کند و نمی‌تواند متادیتای شما را مخفی کند – برای مثال آدرس ایمیل باید بدون رمز باشد تا بتوان ایمیل را به مقصد رساند.

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

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

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

اصل این مقاله ابتدا در Securing Safe Space Online منتشر شده.

موسیقی

شهر کهنه، مرد کهنه، درد نو