دوره ویدئویی جدید: انجام یه پروژه فریلنسری به همراه شما، بیاین قدم به قدم از چیزی که بلدیم پول در بیاریم

نظریه فلسفی من اینه که یه شغل بیشتر نداشته باشم و ازش پول کافی زندگی‌ام رو در بیارم. در نتیجه نه اینفلوئنسر می شم نه مشاور (: ولی یه چیزی باعث شد حدود ۱ ماه قبل یه پروژه مستقل از کارم قبول کنم: ایده اینکه پروژه رو قبول کنم و قدم به قدمش رو ضبط کنم و باهاتون به اشتراک بذارم. ایده ام اینه که نشون بدم یه پروژه واقعی چطوری پیش می‌ره و چطوری می‌شه کار در دنیای واقعی تحویل داد.

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

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

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

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

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

در باب قرص قرمز و خشونت علیه مردان


هر دو سه ماه یکبار من یه ایمیل میگیرم با این ترکیب که «جادی فیلم قرص قرمز رو دیدی؟ نظرت چیه؟ چرا ازش نمی‌گی؟» (:

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

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

مساله اصلی فیلم «قرص قرمز» یا «Red Pill» خشونت علیه مردان است؛ هم در جنبه سیستماتیک و هم در جنبه فردی. مثلا می گه که در جنگ‌ها اکثریت قریب به اتفاق کشته شدگان مردها هستن. یا مثلا کارها سخت زیادی بر دوش مردانه. یا مردهایی هستن که با طلاق از بچه‌شون دور شدن و … گاهی دوستانی که تازه با مفهوم فمنیسم آشنا شدن و فهمیدن به زنان ظلم می‌شه با دیدن این فیلم یکهو یه ضربه جدید بهشون وارد می شه. چیزی شبیه به «به مردها که بیشتر ظلم می شه پس باید از مردها دفاع کنیم». اما آیا این استدلال درسته؟ بذارین به چند قسمت بشکنیمش. فیلم بخش های درستی داره شامل اینها:

  • گزاره مردها هم مشکلات زیادی دارن، خیلی زیاد کاملا درست است. به مردها هم ظلم سیستماتیک می‌شه (مثلا اجباری بودن سربازی یا فشارهای اجتماعی برای نشون ندادن احساسات یا ختنه اجباری (که البته با ختنه زنان خیلی فرق داره) یا مسوولیت تامین مالی و کلی چیز دیگه). در این شکی نیست.
  • گزاره مردها هم در معرض خشونت از طرف زنان هستند‌ هم کاملا درسته. شاید تعدادش کمتر باشه ولی شایع است و اتفاق می‌افته. در ماجرای اخیر، ظاهرا روی بدن جانی دپ آثار سوختگی بوده و حتی گفته می شه انگشتش صدمه جدی دیده یا همسرش تو تختش ریده بوده. بخش زیادی از فیلم ها به تعریف تجربه مردی است که تجربه بدی از ازدواج داره.
  • گزاره در بعضی موارد زن‌ها دست بالا رو دارن و قدرت و فشار اجتماعی حامی اون‌ها خیلی زیاده‌ هم درسته. مثلا توی همون ماجرای جانی دپ، وقتی زنش می گه «جانی به من زور می گه و خشونت می‌کنه» باعث می شه جانی دپ به مشکلات بسیار بیشتری بخوره و زن همدلی بیشتری کسب کنه تا وقتی جانی دپ می گه انگشتش قطع شده / صدمه جدی دیده! نمونه دیگه؟ ماجرای استعفای استالمن از بنیاد نرم افزارهای آزاد یا اتهام تجاوز توسط آسانژ یا همین عدم نمایش این فیلم در نتیجه فشار افکار عمومی تو بعضی سینماها که قرار بوده نمایش داده بشه و موارد مشابه که به خاطر ناهمنوایی با نظر عمومی جامعه در مورد حقوق زنان، فشاری غیرقابل تصور به یک مرد وارد شده. در واقع ماجرا مثل حساسیت به برده داری شده که گفتن کلمه N تقریبا ممنوعه. در حوزه زنان هم در بعضی کشورها و در بعضی موارد، کوچکترین ادعایی در مورد ناهمنوایی یک نفر با حقوق زنان یا دفاعش از چیزی که جامعه نمی‌پذیره، تبعات بسیار سنگین‌تری از اون چیزی داره که مثلا حرکت مشابه در برابر کارگران کارخونه داره (مثلا اگر بزوس به یک خانم پیشنهاد سکس داده بود احتمالا باید استعفا می داد ولی ندادن حق دستشویی به کل کارگران فقط یه خبره که رد می شه). الان برای خود کشورهایی مثل سوئد هم بحث «تجاوز» اینقدر پیچیده شده که مثلا ادعای تجاوز اینه که «از من نپرسید کاندوم می خوام یا نه» یا «وزنش رو بیشتر از حد معمول انداخت رو من» یا ادعای راحت اینکه فلانی پدر بچه منه با وجود انواع تکنولوژی های اثبات، دردسرهای بزرگی درست می‌کنه – گاهی هم نمی کنه.

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

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

اگر بخوام جمع بندی بکنم، مشکل اصلی فیلم قرص قرمز اینه که:

  1. دوگانه زن و مرد در برابر هم و در برابر قانون رو ادامه می ده در حالی که قانون خوب باید مستقل از جنسیت تعریف بشه (مثلا بگه انسان ها موقع طلاق فلان طور می شن یا هر فردی که سر کار می ره بهمان طور و …)
  2. اینکه در جایی نیازمند بهبود هستیم رو جوری تبلیغ می کنه که انگار اگر کسی از اون دفاع نکرده، مقصره. آدم ها فرصت محدودی دارن و علایق محدودی. استدلال مرسوم دوستان در کوبیدن هر کسی که حرف Y رو می زنه اینه که «پس چرا از X نگفتی؟» (: اگر من در مورد حق شهروندی و تحصیل بهایی ها در وبلاگ نوشتم، جوابش این نیست که «پس چرا از وضعیت ترکمن ها ننوشتی؟ پس قبول نیست!» بلکه اینه که هر کس هم فکر می کنه وضعیت ترکمن ها باید گفته بشه، باید بگه! اگر من ادعا کردم که حقوق مردها پایمال نشده و همه مردها زورگو و خبیثن، خودم خیلی خبیثم (: ولی اگر یکی رفت دم در یه سازمان دفاع از حقوق زنان و گفت «پس چرا از مردها دفاع نکردین» باید بهش گفت «خب برو دفاع کن، به نظر ما هم خیلی لازمه» (:

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

هک گوگل مپ با ۹۹ گوشی توی یه گاری دستی؛ ترافیک رو با خودتون اینطرف و اونطرف بکشین

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

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

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

مسیر تبدیل شدن به یک دانشمند داده / دیتاساینتیست

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

زبان برنامه نویسی مرتبط

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

لینوکس و ابزارهاش

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

اکسل

بله (: به شکل بامزه‌ای اکسل به تنهایی ممکنه کلی کلی از کارهای شما رو راه بندازه. بلد بودن حرفه ای اکسل تقریبا بهترین توصیه ای است که می شه به هر کسی که با کامپیوتر کار می کنه کرد. نمونه آزاد و متن باز اکسل مایکروسافت، calc از مجموعه libreoffice است که بسیاری از قابلیت ها رو داره و در جاهایی حتی بهتره – و در جاهایی بدتر. اکسل رو خوب بلد باشین که گاهی کل کاری که دیتاساینتیست‌ها می‌کنن، تو اکسل خلاصه می‌شه (: البته اکسلی هاشون!

ویژوالایزیشن

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

پایگاه‌های داده

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

آمار و ریاضی

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

یادگیری ماشین

موضوع داغ این روزها، یادگیری ماشین است. الگوریتم‌هایی که بعد از اجراشون حس می‌کنیم ماشین‌ها به شکل جادویی چیزی رو یاد گرفتن که ما به خوبی ازش سردرنمیاریم. برای درک مساله، خوبه حداقل این ده الگوریتم رو بلد باشین:‌ linear regression ،logistic regression ،SVM ،random forests ،Gradient Boosting ،PCA ،k-means ،collaborative filtering ،k-NN و ARIMA. در این بخش همچنین لازمه بفهمیم که چطوری باید پرفرمنس یه مدل رو سنجید، آپتییمایز کرد، کراس ولدیت کرد، توابع خطی و غیرخطی رو دونست و جبرخطی و حسابان رو بلد بود. البته لیست دونستی‌ها اینجا زیاده مثلا overfitting و شبکه‌های عصبی و درخت تصمیم و … و البته چیزهای بزرگی مثل هوش مصنوعی و تفسیر زبان طبیعی و … اگر در دنیای پایتون هستین دونستن کتابخونه‌هایی مثل نامپای، پایتورچ، سایکیتلرن، پانداز و تنسورفلو می‌تونه خط شروع خیلی خوبی به شما بده. کتاب پیشنهادی؟‌ یه نگاه به کار عملی با سایکیت لرن و تنسورفلو بندازین.

اما…

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

درست کردن اعتبار

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

حرف آخر

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

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

منبع اصلی این مطلب.

مرتبط

کنسرت جز ایرانی، یه تجربه بد دیگه از کنسرت در ایران

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

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

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

اما…

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

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

پاس چیه، چرا باید ازش استفاده کنیم و معرفی یه پاس برای تمرین و پروداکشن

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

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

این مشکل رو توی دنیا، پاس حل می کنه. همون PaaS یا Platform as a Service. پلتفرم اونجایی است که برنامه شما روش اجرا می شه و اگر یه VPS خریده باشین شامل کارهایی می شه مثل درست کردن شبکه اون سرویس، راه انداختن گیت روش، تنظیمات امنیتی، آپدیت کردن، ساختن یوزرها، دسترسی به دیتابیس و غیره و غیره. بعدها هم آپدیت کردنش، خالی کردن هاردش، ارتقاء سخت افزارش و غیره و اطمینان از اینکه بعد از این کارها همه چیز درست کار می کنه. حالا فرض کنین یه شرکت بیاد و این خدمات رو به شما بده و بگه شما کافیه فقط نگران دیتا و برنامه‌تون باشین و بقیه چیزها شامل راه اندازی سرورها، استورج، مجازی‌سازی، سیستم عامل، شبکه و … با اونهاست. این شرکت کلی کار شما رو ساده و امن می کنه. توی این سیستم یکسری سرویس مرسوم از پیش تنظیم شده هست که شما می تونین انتخابشون کنین. مثلا می تونین بگین یه دیتابیس پستگرس یا مای‌اسکوئل لازم دارین و اون به شما یوزر و پسورد و روش اتصالش رو می ده. یا ممکنه بگین نیاز به جایی دارین که بتونه پروژه جنگوی شما رو اجرا کنه یا اصولا در سطحی دیگه، یه کانتینر (مثلا داکر) بهش بدین و بگین سه تا ازش بالا باشه و اگر لازم شد تا ۷ تا هم از اون بیاره بالا. این می شه یه سرویس پاس. سرویسی که کلی از زحمات ما به عنوان مدیر سیستم رو کم می کنه و اجازه می ده روی بخش معماری و برنامه نویسی مون تمرکز کنیم. همچنین انتظار می ره از هر چیزی که خودمون سر هم کرده باشیم، امن تر و قابل توسعه تر باشه.

هر پاسی، معمولا برنامه های کامند لاین خودش رو داره که اجازه می ده بگین «برنامه های داخل این دایرکتوری رو با یه پلتفرم با فلان مقدار رم و سی پی یو بیار بالا». با تنظیمی مثل این:

kind: ExternalService
name: mywebsite
spec:
  image_pull_policy: Always
  port: 80
  source:
    context: .
    media_path: ''
    project_type: django
    python_version: '3.5'
    static_path: static
    wsgi: fandoghapp.wsgi
  env:
    - name: Mysql_Host
        value: db
    - name: Mysql_Password
        value: 123456
    - name: Mysql_User
        value: root
    - name: DB_Name
        value: myDatabaseName

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

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

این تبلیغه؟ (: بستگی داره به چی بگین تبلیغ. خودشون نمی دونن من دارم این رو می نویسم و نه فقط بهم پولی ندادن، که پول تک تک کارهایی که روشون کردم رو هم دادم و خواهم داد (: اما به این معنی تبلیغ/آگاهی است که : یه چیز خوب اونجاست که خوبه اگر لازم دارین استفاده اش کنین + یک مهارت مهم هست که خوبه یادش بگیرین. ولی خوب توی این دنیای مهمل این روزها، آدم از هر چی تعریف کنه حتما خواهد شنید: پول گرفته که می گه (: البته من ترجیح می دم پیش فرض این باشه چون واقعا تقریبا همه پول می گیرن که از هر چیزی که پول می ده، تعریف کنن (: به قول معروف «خیلی هاتون پرسیده بودین پس بکشین بالا» ((:

برای اینکه لینک گم نشه: این شما و این فندق و البته دوستان از پشت صحنه تذکر می دن که لیارا هم هست که من همین الان دارم تجربه اش کنم (:

سیستم عامل آزاد و متن بازی برای فردای فروپاشی

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

این آدم یه کار خیلی جالب کرده: شروع کرده از حالا یه سیستم عامل آزاد و متن باز درست کنه برای اون دوران و اسمش رو هم گذاشته Collapse OS. یه کرنل z80 و ترکیبی از برنامه‌ها، ابزارها و داکیومنت‌ها که بتونن سیستم‌عاملی رو درست کنن که:

۱. روی ماشین‌های حداقلی / میکروپروسسورها اجرا بشن
۲. بشه با حداقل پورت‌ها باهاشون ارتباط برقرار کرد (سریال، کیبرد و نمایشگر)
۳. بشه باهاشون فایل متنی ادیت کرد
۴. بشه سورس اسمبلی رو برای گستره وسیعی از MCU و CPUها کمپایل کرد
۵. بشه دیوایس‌های ذخیره سازی مثل SDها رو خوند
۶. و بشه با اینها، سیستم رو تکثیر کرد

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

در حال حاضر این پروژه می‌تونه باینریهای Z80 و AVR رو بسازه، خودش رو بازتولید کنه (یعنی با رم و دیسک کافی، می تونه خودش رو اسمبل کنه)، روی RC2014 ران بشه و کیبرد PS/2 رو بفهمه و یک شل داشته باشه که می تونه به مموری درخواست بده، IO استفاده کنه و کد داخل حافظه رو ران کنه. امکان خوندن حاظه اس دی و ادیتوری در سبک ed هم فراهمه. لازمه اضافه کنم که کرنل + شل کمتر از ۵ کیلوبایت است و اسمبلر هم حدود ۵کیلوبایت که کمتر از ۸ کیلوبایت رم برای اجرا لازم داره.

خلاصه؟ دوستمون معتقده در ۲۰۳۰، جهان شروع به فروپاشی می کنه و به جای سخنرانی صرف در این مورد، تصمیم گرفته از حالا سیستمی رو آماده کنه که ما بدون کامپیوترهای امروزی مون، روی همون میکروکنترلرهای ساده بتونیم بوت‌استرپ کنیم و کامپیوتر داشته باشیم (: جدیت و اینکه واقعا به چیزی که معتقده عمل کرده قابل تحسینه و معلومه که می شه از پروژه سیستم عامل روز فروپاشی‌اش چیزهایی یاد گرفت.

ربات مد در روزهای تلخ

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