روز آزادی نرم‌افزار (Software Freedom Day) یک مراسم سالیانه ست که هر سال و در سومین شنبه ماه سپتامبر جشن گرفته می‌شود. SFD تلاشی است برای آموزش عمومی و با هدف افزایش آگاهی از نرم‌افزار آزاد و تشویق استفاده از آن.

این مراسم که اولین بار در سال ۲۰۰۴ جشن گرفته شد با حضور محدود تیم‌ها همراه بود. ۲۸ آگوست آن سال تنها ۱۲ تیم در این مراسم حضور داشتند. اما از آن تاریخ تا کنون شهرت و محبوبیت این مراسم سالانه افزایش پیدا کرد تا جایی که امروزه در بیش از ۱۰۰ شهر دنیا حدود ۳۰۰ مراسم برگزار می‌شود.

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

 

 

 آزادی و نرم افزار: رامین نجارباشی

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

 

 

پیاده سازی وب سرورهای فوق سریع: صادق داوطلب

یکی از مشکلات عمده در سیستم‌های تحت وب، امکان پاسخگویی به تعداد زیادی درخواست در ثانیه هست و این مشکل به شکل ذاتی ریشه در ساختار سیستم عامل دارد. در این ارائه می‌بینیم که چطور با استفاده از کیت توسعه‌ی نرم‌افزاری متن‌باز dpdk می‌توان این محدودیت سیستم عامل را کنار گذاشت تا به میلیون‌ها درخواست در ثانیه پاسخ دهیم.

 

 

علم و مهندسی: سمیر رحمانی

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

 

 

مهاجرت وب اپلیکیشن از php به go: فرود غفوری

مهاجرت یک سیستم در حال کار یک چالش عظیم برای شرکت‌های نرم‌افزاری محسوب می‌شود، تعویض تکنولوژی‌های قدیمی با ابزارهای نوین همیشه می‌تواند دردسرساز باشد، در این ارائه فرود به بیان تجربه‌ای موفق از مهاجرت صحبت می‌کند، باید ها و نبایدها و اینکه چطور یک سیستم از PHP به GO مهاجرت کرد بدون اینکه سیستم کلی برای لحظه‌ای متوقف شود.

در صورت تمایل می‌توانید مراسم را از یوتیوب و آپارات مشاهده نمایید.

آپارات:

 

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

روش توسعه به صورت اجایل (Agile) یکی از مهم ترین متدولوژی‌هایی است که در دهه های اخیر به علم مهندسی نرم افزار اضافه شده است. هرچند که همه بر سر جزئیات این روش توافق ندارند اما در هر صورت تاثیر مثبتی که استفاده از آن بر تیم‌های نرم‌افزاری داشته است قابل انکار نیست.

 

شباهت ویژگی‌های گیت لب با سیستم مدیریت اجایل (Agile)

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

نگاشت مشخصه‌های مدیریت نرم افزار اجایل به ویژگی‌های گیت‌لب

مشخصه‌های روش اجایل ویژگی‌های گیت‌لب
داستان مشتری Issues
وظایف (Tasks) لیست تسک‌ها
اپیک (Epic) اپیک‌ها
نقاط و حدس‌ها وزن‌
بک‌لاگ محصول لیست ایشوها و برچسب‌ها
اسپرینت (Sprint) نقاط milestone
چارت burndown چارت burndown
برد چابک برد ایشوها

 

یک تکرار چابک با استفاده از گیت‌لب

 

داستان کاربر – ایشوهای گیت‌لب

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

 

تسک‌ها – لیست تسک‌ها در گیت‌لب

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

 

اپیک‌ها – اپیک‌های گیت‌لب

از جهات دیگر، برخی متخصصان روش چابک از یک انتزاع برای داستان‌های کاربر (user story) استفاده می‌کنند که اغلب تحت عنوان epic شناخته می‌شوند که نشان‌دهنده جریانی بزرگ‌تر و متشکل از چندین ویژگی است. در گیت‌لب یک اپیک شامل عنوان و شرحی است که از خیلی جهات شبیه یک issue‌ است. اما به شما این اجازه را می‌دهد که چندین موضوع را به آن و به عنوان child‌ ضمیمه کنید تا این سلسله مراتب را نشان دهد.

ایشو در گیت لب

 

بک لاگ (Backlog) محصولات – لیست ایشوهای گیت‌لب و برچسب‌های اولویت

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

 

اسپرینت‌ها – مایل‌استون‌های گیت‌لب

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

ویژگی مایل استون‌های گیت لب از این مسئله پشتیبانی می‌کنند: برای هر کدام از نقاط عطف (milestones) یک تاریخ شروع و یک تاریخ پایان اختصاص دهید تا دوره زمانی اسپرینت شما ثبت شود. سپس تیم شما ایشوهای مختلف برای آن اسپرینت را ثبت کرده و آن‌ها را به مایل‌استون‌های مشخص تخصیص می‌دهد.

 

نقاط و تخمین‌ها – وزن ایشوهای گیت‌لب

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

 

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

 

برد اجایل – برد ایشوهای گیت‌لب

در طول هر اسپرینت، ایشوها در مراحل مختلفی جا به جا می‌شوند. بعضی از این مراحل شامل: آماده برای توسعه (ready for dev)، در حال توسعه (In dev)، In QA، In review و Done نام دارند. معمولا این‌ها ستون‌های برد در روش اجایل هستند. در گیت‌لب، برد ایشوها به شما این امکان را می‌دهد که مراحل مختلف یک پروژه را مشخص کنید و ایشوها را بین أن‌ها جابجا کنید. تیم نرم افزار میتواند برد گیت‌لب را براساس مایلستون () تنظیم کرده و در جلسات روزانه‌ی خود از نظر جریان کار، وضعیت اسپرینت را رصد کنند.

برد ایشوها در گیت لب

 

چارت burndown – چارت burndown گیت‌لب

تیم توسعه بایستی این امکان را داشته باشند که به صورت real-time از میزان پیشروی خود در برنامه با خبر باشند و میزان ریسک خود را هم‌زمان با پیشرفت پروژه اندازه بگیرند. گیت لب از چارت‌های burndown پشتیبانی می‌کند که به تیم‌ها این امکان را می‌دهد که هم‌زمان با پیشرفت کار آن را به صورت تصویرسازی شده ببینند.

در پایان اسپرینت، تیم توسعه ویژگی‌های پروژه را به صورت دمو به سهام‌داران نشان می‌دهد. در گیت‌لب این پروسه با استفاده از یک سری Review apps ساده‌سازی شده است که حتی کد پروژه ای که هنوز به مرحله تولید نرسیده و در محیط تست قرار دارد بتواند به صورت دمو نشان داده شود. Review apps و ویژگی‌های CI/Cd با استفاده از درخواست‌های merge یکپارچه می‌شوند. هم‌چنین از ابزارهای مشابه برای QA استفاده می‌شود تا کیفیت نرم افزار نیز حفظ شود. برای این اقدام نیز از تست اتومات توسط CI/Cd و یا تست دستی در محیط Review App استفاده می‌شود.

چارت burndown در اجایل

 

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

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

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

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

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

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

اگر از مک استفاده می‌کنید، بایستی اول از همه Xcode را نصب کرده و قبل از نصب و اجرای mvt، بایستی Python3 را نیز نصب کنید. راحت‌ترین راه برای نصب پایتون۳ استفاده از اپلیکیشنی است که Homebrew نام دارد که از طریق ترمینال نیز می‌توانید آن را نصب کنید. بعد از نصب این‌ها بایستی دستورات iOS را دنبال کنید. (Amnesty’s iOS instructions)

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

 

mvt-ios decrypt-backup -p PASSWORD -d decrypt ~/Desktop/bkp/orig

 

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

سپس، زمانی که به مرحله بعدی و زمانی که می‌خواهید دستور check-backup را اجرا کنید می‌رسید، دستور زیر را اضافه کنید:

-i ~/Downloads/pegasus.stix2

 

در قسمت آپشن‌ها دستور ما به شکل زیر انجام شد. (لطفا توجه داشته باشید که دستورهای به کار رفته در این آموزش،‌ صرفا برای آموزش است و در نتیجه کپی کردن آن‌ها به شما ارور خواهد داد.)

mvt-ios check-backup -o logs --iocs ~/Downloads/pegasus.stix2 ~/Desktop/bkp/decrypt

 

به عنوان یکی از نکات نهایی، به یاد داشته باشید که این گروه صرفا دستورات مربوط به نصب این ابزار بر روی مک و لینوکس را فراهم کرده است و اگر به دنبال این هستید که آن را بر روی ویندوز نیز اجرا کنید،‌ می‌توانید از (wsl) استفاده کرده و سپس از دستورالعمل‌های لینوکس استفاده کنید. برای استفاده از wsl بایستی یک توزیع از لینوکس را نصب و راه‌اندازی کنید.

بعد از اجرا کردن mvt، لیستی از هشدارها را خواهید دید که فایل و یا عملکردهای مشکوک را لیست می‌کنند. شایان ذکر است که هشدار لزوما به این معنی نیست که شما آلوده شده‌اید.

در کل داستان این ابزار جاسوسی (پگاسوس) احتمالا بسیاری از شما را در ارتباط به کار کردن با تلفن‌های همراه‌تان کمی محتاط‌تر از قبل کرده است.

امیدواریم این آموزش و اجرا کردن ابزاری که در رابطه با آن صحبت شد، کمی از ترس شما نسبت به پگاسوس بکاهد.

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

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

 

چطور مدرک بگیریم؟

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

CompTIA مدارک لینوکس پلاس خود را با توجه به پیشرفت افراد در طول دوره اعطا می‌کند. دارندگان گواهی باید نحوه اجرای پیکربندی سخت افزار، سیستم، امنیت، عیب یابی و اسکریپتینگ ساده و اتوماسیون را بدانند. امتحان آن نیز تا حدی سوالات تشریحی و بعد از آن نیز یک امتحان مبتنی بر عملکرد ست که در آن، دانش آموزان باید اشکالات چند سیستم لینوکسی را حل کنند. مدرک لینوکس پلاس ۳۳۸ دلار هزینه دارد و تا سه سال بعد از آن نیز اعتبار دارد. CompTIA رنج طیف گسترده‌ای از گزینه‌های آماده سازی را ارائه می‌دهد که شامل فلش کارت‌های آنلاین،‌ آموزش مجازی، آزمایشگاه‌های مجازی و غیره می‌شوند.

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

دو مدرک پیشرفته‌تر یعنی LFCS و LFCE، هر کدام ۳۰۰ دلار هزینه دارند ولی LFCA ۲۰۰ دلار هزینه دارد.

هر ۳ مدرک به مدت سه سال اعتبار دارند و بنیاد لینوکس نیز آپشن‌های امادگی زیادی را از آموزش الکترونیک تا کورس بوتکمپ و غیره برگزار می‌کند.

موسسه حرفه ای لینوکس نیز به مانند دو سازمان قبلی مدرک لینوکس ارائه می‌کند که هر کدام نشان دهنده سطح بالاتری از حرفه‌ای بودن در رابطه با سیستم عامل لینوکس هستند. در طی این دوره، مدرک LPIC-1 به شما آموزش‌هایی مرتبط با نگهداری و عیب یابی سیستم می‌دهد و در ادامه مدرک LPIC-2 به دانشجویان این قابلیت را می‌دهد که بتوانند شبکه های کوچک تا متوسط را نظارت کنند. بعد از آن نیز سه گواهی‌نامه جداگانه وجود دارند که تمرکز هر کدام بر روی محیط سازمانی لینوکس، امنیت سازمانی و مجازی سازی است. مدرک پایه این سازمان که به Linux Essentials معروف است، ۱۲۰ دلار هزینه داشته و بعد از آن LIPC-1 و LPIC-2، ۴۰۰ دلار هزینه دارند و هر کدام از سه مدرک LIPC-3 نیز ۲۰۰ دلار هزینه بر هستند. مدرک اول یعنی Linux Essentials مادام العمر بوده و بقیه مدارک تا پنج سال معتبر هستند.

 

آیا مدرک بالاتر به معنی درآمد بالاتر است؟

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

 

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

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

چطور عضو کلاب هوس شویم؟

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

وقتی بالاخره موفق به دریافت دعوت‌نامه و عضویت در کلاب‌هوس شوید،‌ موضوعات مورد علاقه خود را انتخاب کرده و هرچه بیشتر این موضوعات را دنبال کنید، تعداد روم‌های بیشتری برای بحث و تبادل نظر، برای شما نمایش داده خواهد شد. به گزارش رویترز، تقاضا برای عضویت در کلاب هاوس تا جایی پیش رفته است که در پلتفرم‌هایی مثل reddit، eBay و Craigslist، دعوت نامه‌ها به فروش می‌رسند. مبالغی از ۳۰ دلار تا ۲۰ هزار دلار! در چین نیز بازار داغ است و دعوت نامه‌ها از طریق علی‌بابا به فروش می‌رسند.

دانلود کلاب هاوس برای اندروید

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

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

نصب کلاب هاوس برای اندروید

 

زمانی که Red Hat (شرکت مادر لینوکس CentOS) اعلام کرد که به منظور توسعه لینوکس انترپرایز ردهت یا همان RHEL، تمرکز خود را از CentOS برمیدارد، کاربران CentOS دیگر مثل قبل خوشحال نبودند. ولی هم اکنون و به منظور تعهد به شرکت های متن باز، ردهت در حال معرفی یک نسخه رایگان از RHEL است.

در نتیجه اگر سازمان شما یا پروژه‌ای که بر روی آن کار می‌کنید، بر پایه open-source‌ است، می‌توانید یک سابسکریپشن RHEL دریافت کنید. ولی خانواده ردهت در نهایت چه راه حل‌هایی برای خانواده متن باز به همراه دارد؟ در حال حاضر این راه حل ها به این شکل است:

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

جیسون بروکس، مدیر برنامه پروژه ردهت توضیح می‌دهد:

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

ما اغلب هیچ هزینه‌ای بابت دسترسی به RHEL دریافت نمی‌کنیم، اما این پروسه به اندازه کافی به صورت رسمی، سازگار و شفاف نبوده و لذا باید به یک پروسه شفاف و قابل دسترس‌تر تبدیل شود. با اعلام این خبر که ما در پایان سال ۲۰۲۱ منابع‌مان را به CentOS Stream انتقال می‌دهیم، قصد داریم اطمینان حاصل کنیم که سازمان‌هایی که با پروژه های متن‌باز درگیر هستند، دسترسی کاملی به RHEL‌ دارند.

یک سازمان حداقل در حال حاضر از RHEL استقبال کرده است. مدیر اجرایی گنوم، نیل مکگورن در این باره می‌گوید:

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

اما سهم توزیع های مختلف در بازار سرورهای لینوکس چگونه است؟ ۳۱ درصد کل وبسایت ها در سطح اینترنت از لینوکس استفاده میکنند. در این بین سهم اوبونتو از همه بیشتر است. با ۴۵.۶ درصد اوبونتو بیشترین سهم از این بازار را به خود اختصاص داده است؛ دبیان با ۲۱.۷ درصد، سنت او اس با ۱۵.۵ درصد و در ادامه رد هت با ۱.۵ درصد در رتبه های بعدی قرار دارند.

اگر مشتاق هستید که بیشتر در رابطه با زیرساخت متن باز RHEL بدانید، می‌توانید به rosi-program@redhat.com پیام بدید و در این رابطه سوال کنید.

 

 

در روزهای گذشته، اپل از رویداد جدید خود با نام “ یه چیز دیگه” نام برد. این رویداد در تاریخ ۱۰ نوامبر یعنی ۶ روز دیگر برگزار خواهد شد و از جهات زیادی یک سنت شکنی خواهد بود. در واقع این اولین باری است که اپل لپتاپ هایی را معرفی می‌کند که با پردازنده ای معروف به  Arm-based ساخته شده اند. قرار است اپل این پردازنده‌ها را در مک ‌بوک های امسال استفاده کند. بر اساس گزارش ها اپل قصد دارد هفته آینده سه لپ تاپ جدید، یک مک بوک ایر ۱۳ اینچی و دو مدل مک بوک پرو ۱۳ و ۱۶ اینچی را معرفی کند که دیگر از پردازنده های اینتل استفاده نخواهند کرد.

مدیر عامل اپل در مورد پردازنده های arm-based   در جریان یک مصاحبه گفت که انتقال کامل این پردازنده‌ها به خط تولید اپل ممکن است تا ۲ سال به طول بیانجامد. در واقع این اظهار نظر به ما یک جدول زمان تقریبی در مورد این که چه زمانی سایر کامپیوترهای اپل از خط تولید کنار خواهند رفت می‌دهد.

اپل در حال بررسی این مورد است که آیا با اجازه دادن به توسعه دهندگان برای ایجاد و توسعه نرم افزار آیپد پرو بر روی مک بوک چه تاثیری بر اکوسیستم نرم افزاری مک بوک وارد می‌شود. تغییرات اساسی در مک های مبتنی بر Arm به این سری لپتاپ ها این توانایی را می‌دهد که نرم افزار iOS طراحی شده برای آیفون و آیپد را نیز بتوانند اجرا کنند. این تغییرات احتمالا در به روز رسانی آینده یعنی Big Sur‌ فراهم خواهند بود و در نتیجه ‌آن iPadOS، iOS و macOS را بیشتر از هر زمانی به همدیگر نزدیک می‌کند.

به روز رسانی سیستم عامل احتمالا هفته آینده در کنار  مک بوک‌های جدید از راه خواهد رسید.

در این مطلب یکی از مهم‌ترین نمونه‌های نقض یکپارچگی در سیستم‌های همتا‌به‌همتای توزیعی را معرفی می‌کنیم: مسئله‌ی خرج مجدد

 

تشبیه

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

مسئله خرج مجدد

یک سیستم همتا‌به‌همتا برای مدیریت مالکیت در بازار املاک و مستغلات را در نظر بگیرید. در چنین سیستمی، دفاترکلی که برای پیگیری اطلاعات مالکیت استفاده می‌شوند، بجای یک پایگاه‌داده‌ی مرکزی روی تک‌تک رایانه‌های اعضای سیستم نگهداری می‌شوند. از این رو، هر همتا نسخه‌ی خودش از دفترکل را نگهداری می‌کند. به محض انتقال مالکیت از یک فرد به فردی دیگر، همه‌ی دفاترکلِ سیستم باید بروزرسانی شوند تا دربرگیرنده‌ی آخرین نگارش از واقعیت باشند. با این وجود، انتقال اطلاعات بین همتاها و بروزرسانی تک‌تک دفاترکل نیاز به زمان دارد. تا زمانی که آخرین عضو سیستم، اطلاعات جدید را دریافت نکرده و دفترکلش را به روز نکرده باشد، سیستم به ثبات نرسیده است. بعضی از اعضای سیستم آخرین انتقالات مالکیت را دریافت می‌کنند، در صورتی که بقیه اعضا هنوز این اطلاعات را دریافت نکرده‌اند؛ این وضعیت که دفاترکلِ همه‌ی اعضا اطلاعات به‌روز‌شده را ندارند، آن‌ها را در معرض سو‌ءاستفاده‌ی اعضایی که اطلاعات کامل را دارند، قرار می‌دهد.
موقعیت پیش‌رو را تصور کنید. شخص شماره ۱ خانه‌ی خود را به شخص شماره ۲ می‌فروشد. انتقال مالکیت از شخص شماره ۱ به شخص شماره ۲، در دفترکل یکی از اعضای سیستم همتا‌به‌همتا ثبت می‌شود. این دفترکل، دیگر اعضا را در جریان این انتقال قرار می‌دهد؛ آن‌ها نیز ما‌بقی اعضا را در جریان قرار می‌دهند تا در نهایت، همه‌ی اعضا از انتقال مالکیت از شخص شماره ۱ به ۲ آگاه شوند. حال فرض کنید شخص شماره ۱ به‌سرعت به یک دفترکل دیگر مراجعه کند و یک انتقال مالکیت دیگر برای همان ملک ثبت کند، اما این بار از شخص شماره ۱ به شخص شماره ۳. اگر این دفترکل هنوز در جریان انتقال مالکیت از شخص شماره ۱ به ۲ قرار نگرفته باشد، انتقال مالکیتِ همان ملک از شخص شماره ۱ به ۳ را تایید کرده و آن را ثبت می‌کند. بنابراین شخص شماره ۱ توانسته از زمان‌بر بودنِ توزیع اطلاعاتِ مربوط به اولین فروشش، بهره‌برداری کند و خانه‌اش را دو‌مرتبه بفروشد. حال آنکه شخص شماره ۲ و ۳ نمی‌توانند همزمان مالک آن خانه باشند و فقط یکی از آن‌ها قرار است صاحب جدید و قانونی خانه باشد. از این رو، این وضعیت مسئله‌ی خرج مجدد نام گرفته است.

اصطلاح خرج مجدد

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

خرج مجدد به عنوان مشکل کپی برداری از کالاهای دیجیتال

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

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

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

خرج مجدد به عنوان نمونه ای از نقض یکپارچگی در سیستم های همتا به همتای توزیعی

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

حل مسئله خرج مجدد به عنوان مشکل کپی برداری از کالاهای دیجیتال

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

حل مسئله خرج مجدد به عنوان نمونه ای از نقض یکپارچگی در سیستم های همتا به همتای توزیعی

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

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

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

حال باید ببینیم بهترین راهی که یک ادمین انتخاب می‌کند چه خواهد بود؟

یکی از ابزارهایی که در این حوزه بسیار محبوب بوده Tshark نام دارد که جایگزینی به صورت command line برای Wireshark است؛ چرا که وقتی داریم با یک سرور اصطلاحا headless کار می‌کنیم، یک رابط کاربری گرافیکی به دردمان نخواهد خورد.

با Tshark میتوانید ترافیک پورت مورد نظر خود را ببینید و هم چنین پورت سرور لینوکسی خود را مانیتور کنید.

به چه چیزی احتیاج داریم؟

  • یک لینوکس سرور
  • یک یوزر با دسترسی sudo

 

چگونه Tshark را نصب کنیم؟

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

sudo apt-get install tshark -y

این تمام چیزی است که برای نصب احتیاج دارید.

چگونه رابط شبکه خود را پیدا کنیم؟

با استفاده از Tshark رابط شبکه شما در واقع به یک شماره متصل است. اگر فقط یک Interface دارید، موردی برای نگرانی نیست. با این حال اگر چند interface دارید بایستی بدانید که Tshark به کدام رابط listen میکند. برای این کار از دستور زیر استفاده کنید:

sudo tshark -D

این دستور همه ی Interface های شما را مانند تصویر زیر لیست میکند.

چگونه با استفاده از تی‌شارک listen کنیم؟

حالا که رابط را مشخص کرده ایم، میتوانیم به صورت real-time ترافیک را مشاهده کنیم. برای مثال برای listen کردن بر روی ens5، که سرور اصلی ما است، دستور زیر را تایپ میکنیم:

sudo tshark -i 6

در این جا یک لیست از خروجی پورت های مختلف را داریم :

اگر بخواهیم فقط به یک پورت خاص گوش دهیم نیز Tshark به ما کمک میکند. برای مثال بیایید فرض کنیم که میخواهید فقط ترافیک پورت 22 را بررسی کنیم. در این صورت دستور زیر را تایپ میکنیم:

sudo tshark -i 6 -f "tcp port 22"

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