پایتون دو و سه در آناکوندا

۱. موقع نصب آناکوندا دو تا گزینه هست: آناکوندا برای پایتون ۲ و آناکوندا برای پایتون ۳. من خودم با پایتون سه بیشتر سر و کار دارم اما گاهی ممکنه پیش بیاد که آدم به پایتون ۲ هم نیاز داشته باشه‌(پیش اومد دیروز). نصب دوباره‌ی اناکوندا کار جالبی نبود برام. کمی گشتم و به این راه حل رسیدم:

conda create -n py36 python=3.6 anaconda

با این دستور می‌شه یه محیط مجازی (virtual environment) جدا ساخت و نسخه‌ی پایتون دلخواه رو توش نصب کرد. py36 اسم این محیط مجازیه و می‌تونه هر اسمی باشه(احتمالن باید یکسری قواعد اسم گزاری توش رعایت شه، مثلن با عدد شروع نشه و توش فاصله نباشه و…). python=3.6 مشخص می‌کنه که از چه ورژنی از پایتون توی این محیط مجازی قراره استفاده بشه. می‌تونه مثلن ۲.۷ باشه این مقدار‌(چیزی که من نیاز داشتم.)
برای استفاده از این محیط مجازی هم کافیه عبارت زیر رو توی ترمینال بزنید:

source activate py36

 

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

 

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

بهترین زبان برنامه نویسی برای شروع

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

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

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

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

۵. مطالب بعدی حدس می زنم یکی انتخاب فیلد مناسب باشه‌(وب یا موبایل یا چیز دیگه؟) و شاید درمورد انتخاب زبان مناسب برای هر فیلد بنویسم.‌(همه کار رو با یه زبان نمی شه کرد.) همینطور درمورد چیزای دیگه ای که یه برنامه نویس باید بدونه(گیت، دیتابیس و هزار چیز احتمالی دیگه). امیدوارم خوب دربیاد از گل و مفید باشه.

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

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

۲. گزینه زیاده اما چیزی که به تازه کارها توصیه می‌شه معمولن یکی از ایناس: اوبونتو، مینت، فدورا. یکی از این سه تا رو انتخاب کنید و تمام. پیشنهاد شخصی من: اوبونتو. یکی از این سه تا رو انتخاب کنید وتمام.

اوبونتو ۱۷.۱۰

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

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

امنیت و جنگو

۱. از زبان برنامه نویسی پایتون نوشته بودم و اینکه چرا دوستش دارم. یکی از دلایلی که پایتون رو دوست دارم اینه که توی شاخه‌های مختلفی کاربرد داره، یکیش توسعه وب. فریمورک جنگو یکی از فریم‌ورک‌های معروف پایتونیه که سایتای معروفی مثل اینستاگرم و پینترست هم ازش استفاده می‌کنن.

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

امنیت وب - پایتون و جنگو - پایکان

۳. پایکان یه اجتماع سالانه(!) س که هر سال برگزار می‌شه و برنامه‌نویس‌ها و علاقه‌مندهای پایتونی رو دور هم جمع می‌کنه. توی پایکان ۲۰۱۷ ارائه‌ی خیلی خوبی دیدم به اسم آشنایی با توسعه‌‌ی وب امن با پایتون و جنگو. توی این ارائه‌ي سه ساعته،‌ آقایی به نام  جیمز بنت درمورد نکات و تهدیدات امنیتی رایج و حتی غیر رایج حرف می‌زنه و یک سری راه حل هم (خیلی مختصر) ارائه می‌ده. البته که اینجا بیشتر تمرکز روی جنگو هست، اما به نظرم برای هر دولوپری با هر زبان برنامه‌نویسی‌ای، دونستن این مطالب( حد اقل خود تهدید‌ها) می‌تونه مفید باشه. برنامه نویس خوب شدن کار سختیه. نه که جادویی در کار باشه. لازمه‌ش اینه که از کنار هیچ چیز ساده رد نشه آدم. در کنار این ویدیو که درباره یه موضوع خاصه، کتاب 97 چیز که هر برنامه نویس باید بدونه هم می‌تونه برای هربرنامه‌نویسی مفید باشه.

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

 

 

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

بیت کوین – پایان پولی که می‌شناسیم

۱. بیت‌کوین چند ماهه که سر همه‌ی زبوناس. همه ازش حرف می‌زنن. چیه؟ یه ارز دیجیتال. پولی که به‌صورت فیزیکی، کاغذی، دردسترس نیست. یا از طرفی، پولی که پشتوانه‌ی دولتی نداره. پولی که هویت ندارن صاحباش و… . کلی چیز دیگه درمورد بیت کوین هست. اما چرا بیت کوین مهمه؟ چیه که باعث می‌شه قیمتش تا ۲۰۰۰۰ دلار هم بالا بره؟

بیت کوین پایان پولی که می شناسیم

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

تایپ ده انگشتی برنامه نویس حرفه ای

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

تایپ ده انگشتی برای برنامه نویس

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

۳. برای یادگرفتن تایپ انگشتی کافیه یه متن ۲۰۰ کلمه‌ای رو بنویسید تا جای دکمه‌ها حفظتون بشه. یکی دو هفته هم اگر خودتون رو ملزم به ده انگشتی تایپ کردن کنید، بعد از اون حتی تصور استفاده از کمتر از ۹ انگشت برای تایپ کردن،‌ غیر ممکن می‌شه. سایتای زیادی هم برای یادگرفتن تایپ ده انگشتی هستن. فقط کافیه به انگلیسی گوگل کنید: Ten finger typing. یا مثلن به عنوان نمونه یه نگاهی به تایپینگ آکادمی بندازید که حروف کیبورد رو دونه دونه براتون میاره برای تایپ تا حفظ شدن جای حروف هم براتون راحت تر بشه. یه سایت دیگه هم هست به اسم تایپینگ با دومین خیلی بجای آی‌او که تایپ کردن رو مخصوص برنامه نویس ها یاد می‌ده و تمرین‌های باحالی هم برای کمک کردن به سریع شدن تایپ کردن داره.

 

۹۷ چیزی که هر برنامه نویس باید بداند

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

۹۷ چیزی که هر برنامه نویس باید بداند

۲. این جا تعدادی از تیتر ها رو می ذارم که شاید جذاب تر کنه خوندن کتاب رو:

  •  رعایت اصول بنیادی برنامه‌نویسی
  • از خود بپرسید کاربر – در این موقعیت- چکار خواهد کرد!‌ (شما کاربر نیستید)
  • زیبایی در سادگی ست
  • قانون پیشاهنگی
  • ابزار‌های خود را با دقت انتخاب کنید
  • مرور کد
  • کامنتی درباره کامنت ها
  • تنها چیزی را کامنت کنید که کد نمی تواند بیان کند
  • یادگیری مستمر
  • از خراب کردن چیزها نترسید
  • با دیتای تست نرم رفتار نکنید
  • ارور ها را نادیده نگیرید
  • به یاد گرفتن یک زبان بسنده نکنید،‌ فرهنگ آن را هم درک کنید
  • خودتان را تکرار نکنید
  • و …

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

اوپن سورس معنیش این نیست که همین الان می‌تونم عوضش کنم

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

اوپن سورس - متن باز

۲. یکم فنی‌تر: پروسه‌ی تولید یک نرم‌افزار تقریبن اینجوریه:

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

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

 

 

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

استارت‌آپ و با کله سقوط کردن و سیلیکون ولی

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

startup

۲. اولین چیزی که توی این پیشنهاد توی ذوقم خورد،‌ این بی-درنگ-پیشنهاد-دادن بود. حتی حاضر نبود چنددقیقه صبر کنه تا باهام یکم بیشتر آشنا شه و اندکی محک بزنه منو.

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

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

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

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

silicon valley

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

 

مشکل مایکروسافت چیه؟

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

۲. مشکل مایکروسافت چیه؟

windows_users

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

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

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

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

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

من اولین بار سال ۱۹۹۵ وارد اینترنت شدم. اون زمان اسپم هنوز مشکل ناشناخته ای بود، اما نامه های زنجیره ای(منظور همون ایمیل هاییه که هر کس بعد از خوندن برای چند نفر دیگه فوروارد می کنه) نسبتن رایج بودن. یه مورد خیلی رایج بود که می گفت:

مایکروسافت داره این ایمیل رو با یه نرم افزار هوشمند جدید رصد می کنه . این رو برای تعداد زیادی آدم فوروارد کنین و اونا برای این که بهشون در تست نرم افزار کمک کردین مبلغی رو بابت تشکر می دن.

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

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

شاید فکر کنین خطری نداره که. صرفن هر از گاهی چند تا ایمیل احمقانه. خب اینجاس که شدت این بیخطری کم می شه: بیشتر از ۸۰ درصد اسپم هایی که دریافت می کنین از کامپیوتر شخصی یه کاربر ویندوز از همه جا بی خبر برای شما ارسال شده. این بد نیست؟

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

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

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

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

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

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

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

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

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

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

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

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

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

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

بهش فکر کنین: بی اسپم، بی بد افزار، بی ویندوز؟ شاید!‌ باید ببینیم.

۳. چند نکته ی تکمیلی:

  • نویسنده ی این متن خیلی یک طرفه، سادگی استفاده از ویندوز رو عامل همه ی بدبختی ها دونسته. متاسفانه در کنار همه ی حرف های منطقیش، این نکته رو فراموش کرده که راحت بودن به خودی خود چیز بدی نیست. هرچند که این سادگی توی تربیت این حجم از کاربر ناآگاه بی تاثیر نبود، اما نمی شه مشکل رو فقط گردن ساده بودن کار و داشتن محیط گرافیکی انداخت. مسءله ای که خیلی توی مخصوصن برنامه نویس ها به چشم می خوره اینه که انجام بودن کار از راه سخت رو افتخار می دونن. یعنی حتی آدم های آگاه این حوزه هم درک درستی از این قضیه ندارن و صرفن به این دلیل از خیلی چیزها با خبرن که این تفکر همهچیسختشخوبه به اونا القا شده.
  • این متن سال ۲۰۰۵ منتشر شده. از اون موقع تا حالا یک سری چیزها تغییر کرده. مهم ترینش این که موقع نگارش این متن، ویندوز اکس پی آخرین ویندوز منتشر شده بوده و اگر این نویسنده امروز قرار بود متن رو بنویسه مطمءنن خیلی لحن خیلی کوبنده تری رو انتخاب می کرد. چند بار متن رو به دقت مرور کردم. هرچند که خیلی شدید درمورد مساءل صحبت می کرد، اما هیچ جا به توهین دچار نشده بود. البته توی فرهنگ ما و معیار های ادب سنجی ما یک سری موارد رو می شه توهین آمیز حساب کرد. البته اون هم بخاطر وجود این منطق عجیبه که بیان حقیقت اگر چیز دلنشینی نباشه، توهین محسوب می شه.
  • تمرکز اصلی نویسنده، توی این متن تاثیری که ویندوز روی کاربرا داشته بود. ولی مساله ای که هست اینه که این تنها مشکل مایکروسافت نیست. بسته بودن نرم افزار، غیر قابل تغییر و انعطاف ناپذیر بودنش، امنیت پایینش، و خیلی چیزهای دیگه کنار گذاشته شدن توی این متن. مطمءنن بعدن درمورد اونا هم خواهم نوشت.
  • داستان ایمیل های زنجیره ای که نویسنده ازش صحبت می کنه توی سال ۱۹۹۵ اتفاق میفته. امروز که ۲۱ سال از اون زمان گذشته ما هنوز هم توی ایران همچین چیزهایی رو می بینیم. همه مون دوستهایی داریم که از این جور پیام ها برای ما بفرستن. البته بجای ایمیل – که تقریبن هیچ وقت نقش مهمی توی زندگی دیجیتال ایرانی ها نداشت و ندارهتوی تلگرام با این پیام ها مواجه می شیم. ۲ سال پیش، وقتی که هنوز وایبر مسنجر اصلی ایرانی ها بود یکی از دوستای من برام پیامی فرستادی که توش تقریبن می گفت:

    وایبر می خواد یک سری از کاربرا رو که فعالیت مشکوک به اسپم دارن پاک کنه(!) برای این که تو رو پاک نکنن کافیه که این پیامو به ۱۰ نفر از دوستات بفرستی تا این اتفاق برات نیفته.

    بخاطر این که متن یکم قدیمی بود مردد بودم توی ترجمه و منتشر کردنش، اما این مورد و مورد های بیشمار مثل این که فکر نمی کنم نیازی به ذکر کردنشون باشه منو قانع کردن برای انجام این کار.

  • توی این نوشته مایکروسافت و ویندوزش زیر زره بین رفته بود. اما این سادگی استفاده توی سیستم عامل مک هم به شدت دیده می شه و کاربرای این سیستم عامل چندان نباید خودشونو از ماجرا جدا بدونن.
  • توی مقاله خیلی خوشبینانه از آگاهی نسل آینده ی کاربرای کامپیوتر صحبت شده. اما به نظر من – و اونطور که دیده می شه- کاربرا های جدید خیلی بدتر دارن می شن. با امکاناتی که توی این سال ها به ویندوز اضافه شده مشکل حتی حاد تر هم شده. کم سن و سال هایی که این روزا از کامپیوترشون استفاده می کنن هرچند که کارهای خیلی عجیبی رو می تونن انجام بدن اما در خیلی موارد هیچ ایده ای ندارن که دارن چیکار می کنن. این بیگانگی و ناآگاهی توی کاربرای ایرانی متاسفانه خیلی خیلی شدیدتره. اکثر ایرانی ها – حداقل وقتی که شروع به استفاده از کامپیوترشون می کنن آشنایی چندانی با زبان انگلیسی ندارن و در مقابله با ارورها و هشدار های سیستم عامل تنها کاری که می کنن خیلی تصادفی و بسته به احساس و نیتی که توی اون لحظه دارن، بین OK و Next و Cancel یه مورد رو انتخاب می کنن. توی اینترنت هم هرجا که به عبارت Free Download  می رسن، بلافاصله کلیک می کنن.
  • چند هفته پیش یه خبر عجیب اومد بیرون که می گفت مایکروسافت به بنیاد لینوکس پیوسته، اما یقینن این اتفاق حداقل در آینده ی نزدیک، تاثیری روی درستی مطالبی که توی این پست نوشته شد نداره.

 

  • متن اصلی رو می تونین اینجا بخونین.