امنیت: چرا پسورد امن مهم است؟

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

اصولا هرکسی که به مقوله سرویس‌های آنلاین، به طور سطحی نگاه کنه، این سوال براش پیش میاد که

مگه اطلاعات من به درد کی می‌خوره؟

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

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

راه رسیدن به امنیت، از پسورد امن می‌گذره

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

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

بدترین پسوردهای پنج سال اخیر

2015 2014 2013 2012 2011
#1 123456 123456 123456 password password
#2 password password password 123456 123456
#3 12345678 12345 12345678 12345678 12345678
#4 qwerty 12345678 qwerty abc123 qwerty
#5 12345 qwerty abc123 qwerty abc123
#6 123456789 1234567890 123456789 monkey monkey
#7 football 1234 111111 letmein 1234567
#8 1234 baseball 1234567 dragon letmein
#9 1234567 dragon iloveyou 111111 trustno1
#10 baseball football adobe123 baseball dragon
#11 welcome 1234567 123123 iloveyou baseball
#12 1234567890 monkey admin trustno1 111111
#13 abc123 letmein 1234567890 1234567 iloveyou
#14 111111 abc123 letmein sunshine master
#15 1qaz2wsx 111111 photoshop master sunshine
#16 dragon mustang 1234 123123 ashley
#17 master access monkey welcome bailey
#18 monkey shadow shadow shadow passw0rd
#19 letmein master sunshine ashley shadow
#20 login michael 12345 football 123123
#21 princess superman password1 jesus 654321
#22 qwertyuiop 696969 princess michael superman
#23 solo 123123 azerty ninja qazwsx
#24 passw0rd batman trustno1 mustang michael
#25 starwars trustno1 000000 password1 football

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

برای مثال، حفظ کردن عبارت I want coffe خیلی ساده است. حالا اگر من بخوام این جمله رو برای پسورد اکانت‌هام استفاده کنم، می‌تونم خیلی راحت چندتا کاراکترشو عوض کنم و تبدیلش کنم به یک پسورد امن:

_1w@ntC0ffe3

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

نکته جالب: با روشی که Sergei Skorobogatov پیدا کرده، اگر پسور شما ۶ رقمی باشه، شکستنش ۳ هفته زمان می‌بره. در مقابل، یک پسور ۴ رقمی فقط در طول ۲۰ ساعت شکسته می‌شه.

از همیشه در دسترس بودن حساب‌هاتون اطمینان حاصل کنید

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

دسترسی دو مرحله‌ای

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

استفاده از برنامه‌های مدیریت پسورد

اگر کاربر حرفه‌ای هستید، می‌تونید از برنامه‌هایی مثل 1Password یا LastPass برای تولید پسوردهای تصافی، طولانی و امن استفاده کنید. با این کار حتی دیگه لازم نیست پسوردهاتون رو حفظ کنید. البته به نظر می‌رسه با فلسفه‌ای که این برنامه‌ها باهاشون ساخته شدن،  نسبت به حمله‌های cold boot(بعدا درباره حمله‌های cold boot می‌نویسم) ایمن نباشن.

طولانی بود؛ نخوندمش(TL;DR)

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

حتما برای حساب‌های آنلاینتون(جیمیل، تلگرام و…) دسترسی دو مرحله‌ای ایجاد کنید. با دسترسی دو مرحله‌ای، دسترسی غیرمجاز به حساب‌هاتون خیلی سخت‌تر می‌شه.

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

معرفی پادکست سریال

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

Serial

پادکست سریال
پادکست سریال

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

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

امیدوارم از شنیدنش لذت ببرید.

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

Planning Poker در اسکرام

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

در جلسه Planning چه کاری انجام می‌شه؟

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

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

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

Planning Poker

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

ولی اگر تخمین‌ها از هم فاصله زیادی داشته باشه، در مورد استوری ابهاماتی وجود داره. در این شرایط، Product Owner استوری مربوطه رو دوباره برای تیم توضیح می‌ده و تیم درباره جزییات فنی دوباره با هم صحبت می‌کنن و Plannig Poker رو تکرار می‌کنن.

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

پس اگر برای مثال، ساختن صفحه لاگین نرم‌افزار، تخمین سه استوری پوینتی داشته باشه، معنیش اینه که یک نفر از اعضای تیم در حالت ایده‌آل، تو سه روز صفحه لاگین رو می‌سازه. همیشه در نظر داریم که انجام شدن(Done) یک استوری یعنی تمام موارد Definition of done در اون رعایت شده. حالا اگر ضریب توجه تیم، ۰.۸ تخمین زده شده باشه، یعنی در حالت واقعی، سه روز و سه چهارم یک روز کامل، برای ساختن صفحه لاگین وقت لازم داریم(حاصل تقسیم ۳ به ۰.۸).

تکمیل: روی سیستم عامل‌های موبایل مختلف، اپ برای کارت‌های پلنینگ پوکر وجود داره. من خودم از Scrum Poker Cards روی iOS استفاده می‌کنم که البته اخیرا پولی شده. توی این پست می‌تونید با اپ‌های دیگه با همین منظور آشنا بشید.

ارگونومی در کار روزانه

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

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

ارگونومی

Human factors and ergonomics (HF&E), also known as comfort design, functional design, and systems, is the practice of designing products, systems, or processes to take proper account of the interaction between them and the people who use them.

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

من چیکار می‌کنم که کمتر اذیت بشم؟

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

راه حل اولیه برای من، استفاده از موس و کیبرد بی‌سیم اکسترنال بود. چون می‌تونستم طرز نشستنم رو اصلاح کنم. انتخاب اولم Microsoft Desktop 800 Wireless Keyboard and Mouse بود و بعد از یه مدت از Microsoft Desktop 3000 Wireless Keyboard and Mouse استفاده کردم. Desktop 3000 به دلیل Wrist Restی که داره، از Desktop 800 خیلی بهتره.

ولی الان ۸ ماه شده که به غیر از ارگونومیک‌تری کیبردها، با کیبرد دیگه‌ای نمی‌تونم کار کنم. بهترین انتخاب هم به نظرم این یکی محصول مایکروسافته.
Scultp Ergonomic Keyboard شما رو مجبور می‌کنه که باهاش به روش صحیح ۱۰ انگشتی تایپ کنید.شاید اولش یکم براتون سخت باشه، ولی کم‌کم بهش عادت می‌کنید.

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

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

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

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

چگونه در امتحان PSM I موفق شدم

کوتاه درباره اسکرام

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

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

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

چرا مدرک لازم دارم؟

عالم بی عمل به چه ماند؟ به زنبور بی عسل

البته این نقل قول آنچنان به سوال ما ارتباطی نداشت! ولی خب به هرکسی نمی‌گن عالم 😉

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

از کجا شروع کردم

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

ولی این برای امتحان کافی نیست. شما باید به طور کامل روی Scrum Guide مسلط باشید. همچنین بد نیست کتاب ارزشمند اسکرام و اکس‌پی ساده شده رو مطالعه کنید. این کتاب روند کامل اجرای یک پروژه اسکرام در یک تیم چابک رو توضیح می‌ده. کنار این دو کتاب، جزوه Scrum Master Training Manual برای شفاف کردن خیلی از مفاهیم بهتون کمک می‌کنه.

در آخر هم لغت‌نامه اسکرام که توسط شرکت Management Plaza تهیه شده، برای جمع‌بندی اطلاعات، منبع  فوق‌العاده‌ایه.

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

چقدر خوندم؟

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

اطلاعات کلی درباره امتحان

به نظرم امتحان PSM I، به نسبت امتحان‌های دیگه موسسه اسکرام آسون‌تره چون منبع بسیار خوب و سرراستی داره. امتحان ۸۰تا سوال داره و ۶۰ دقیقه وقت. حداقل نمره قبولی در امتحان ۸۵ درصده یعنی شما مجاز هستید ۱۲ تست را غلط بزنید. همچنین امتحان نمره منفی نداره و شما موظفید به همه سوالات پاسخ بدید. قبل از امتحان اصلی هم می‌تونید برای آماده‌سازی امتحان Scrum Open رو بدید که ۳۰تا سوال داره و ۳۰ دقیقه وقت.
طبق پیشنهاد اساتید، به هیچ وجه تا وقتی دو سه بار Scrum Open رو ۱۰۰٪ نزدید، امتحان اصلی رو ندید. شاید بعد از دفعه اول که Scrum Open رو دادید، متوجه بشید که مخزن سوال‌های این امتحان بسیار کوچکه و تقریبا همه سوال‌ها تکراری شدن. برای خود من از بار دوم به بعد، هربار فقط یک سوال جدید ظاهر می‌شد.
ولی نکته اینه: در امتحان اصلی، تعداد قابل توجهی سوال تکراری از همین امتحان میاد. خیلی از سوال‌ها هم به لحاظ مفهومی توی Scrum Open قبلا به چشمتون خورده. در نتیجه وقت کم امتحان اصلی، با سریع جواب دادن این دسته از سوالات جبران می‌شه.

سوالات امتحان در چهار دسته تقسیم شدن:

  1. Scrum Framework
  2. Scrum Theory
  3. Cross-functional and self-organized teams
  4. Coaching and facilitation

سوالات دسته ۳ و ۴ بیشتر توصیف شرایطیه که ممکنه در طول یک پروژه اسکرام پیش بیاد و وظیفه اسکرام مستر در این شرایط مورد سوال قرار می‌گیره.

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

ثبت نام

پروسه ثبت نام در سایت scrum.org انجام می‌شه و کافی هستش که در سایت ثبت نام کنید. من برای پرداخت از سرویس Payment24.ir استفاده کردم. هزینه ثبت نام ۱۵۰ دلار هست که روز امتحان من، حدودا ۵۵۰،۰۰۰ تومان می‌شد. هزینه بالا ممکنه براتون یکم استرس بیاره ولی سعی کنید بهش غلبه کنید 😉

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

پروسه امتحان

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

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

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

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

بعدش چی؟

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

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

مهاجرت به مک

صحبت‌های مختلفی در این مورد در توییتر در جریان است. هشتگ #مک‌مهاجر را در توییتر دنبال کنید.

خیلی وقت بود که دوست داشتم لپ‌تاپم رو عوض کنم. البته من به کل با فلسفه لپ‌تاپ مشکل دارم ولی شرایط روزانه زندگی حکم می‌کنه که آدم یک دستگاه با امکانات کامل همیشه همراه داشته باشه و تبلت جوابگوی همه نیازهای روزانه خارج از خانه نیست.
من یک دستگاه Vaio CW2DGX داشتم که سال‌ها بود باهاش کار می‌کردم. این دستگاه مشکلات عادی یک لپ‌تاپ رو داشت. مثلا شارژ کم باتری، وزن زیاد و بازده پایین به نسبت PC مشابه(دستگاه من حافظه ۸ گیگابایت و پردازنده Core i5 داشت. به همین خاطر توقعم ازش یکم بالا بود.).
خلاصه حس خلاصه حس تنوع طلبی در درجه اول و نیاز روزمره در درجه بعد، من رو به سمت ارتقا لپ‌تاپم برد. اصلی برای خرید فقط دو مورد بودند:

1. Apple Macbook Pro Retina MGX72
2. Microsoft Surface Pro 3 256GB

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

اگر با مفهوم Cognitive Bias آشنا باشید، این جمله را درک می‌کنید که آدم‌ها ابتدا تصمیم می‌گیرند و بعد برای توجیه تصمیم خود، دنبال دلیل می‌گردند.

دلایلی که من اول برای توجیح انتخاب مک‌بوک داشتم، اول از همه برنامه‌نویسی برای iOS بود.

دلیل دوم انطباق مناسب سیستم‌عامل مک با بقیه اسباب بازی‌هام(iPhone 5, iPad Air) بود.

دلیل سوم حس تنوع طلبی و خستگی از محیط ویندوز بود.

ظاهر شیک مک‌بوک یکی دیگر از دلایل خرید من بود. هرچند معتقدم Surface Pro 3 هم بسیار دستگاه شیکی هستش ولی Macbook به لحاظ ظاهری به سلیقه من نزدیک‌تر بود.

من طبق عادت قدیمی، با کیبرد نسبت به ماوس راحت‌تر کار می‌کنم. یکی از مسایلی که من رو نسبت به Mac OSX دلسرد می‌کرد، عدم آشنایی با Keyboard Shortcutهای Mac OSX بود.

شارژ لپ‌تاپ و وزن اون هم برام اهمیت بالایی داشت. در این زمینه Surface Pro 3 رقیب خیلی بزرگی برای Macbook بود ولی چون فاصله این کیفیت زیاد نبود و به نظر شخصی من کیبرد Surface Pro 3 به اندازه کافی راحت و قابل استفاده نیست، باز هم Macbook رو ترجیح دادم.

نگرانی بعدی من اجرای Visual Studio روی این دستگاه بود. هرچند پیش‌بینی نمی‌کردم با این دستگاه مدت طولانی برنامه‌نویسی کنم، ولی برام اهمیت داشت که اگر نیاز شد، این امکان را داشته باشم. با دیدن عملکرد نرم‌افزارهای Virtualization مثل VMWare و Parallel Desktop و Virtual Box این نگرانی هم برطرف شد.

نرم‌افزار

در برخورد اولیه با سیستم‌عامل اپل بسیار خوشحال بودم چون واقعا توقع این سرعت بالا و عملکرد خوب را نداشتم. همچنین فکر نمی‌کردم کمتر از نصف روز غریبی با محیط کاملا جدید مک را کنار بگذارم. *این جمله اصلا بزرگ‌نمایی نداشت.* چیزی که توجهم را خیلی جلب کرد، این بود که سیستم‌عامل مک بعد از مدت کوتاهی استفاده کل حافظه سیستم را پر می‌کند (*به گفته نرم‌افزار Memory Cleaner که از App Store دریافت کردم.*) بعدها فهمیدم این خصیصه در تمامی سیستم‌عامل‌های مبتنی بر FreeBSD وجود دارد. گفتن ندارد که این مساله کوچکترین خللی در روند استفاده روزانه از سیستم به وجود نمی‌آورد.

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

مجموعه نرم‌افزارهای Apple iWork شاهکار هستند. البته توقع نداشته باشید جای Microsoft Office را پر کنند ولی در حد استفاده شخصی بسیار راه‌حل‌های مناسبی هستند. مخصوصا نرم‌افزار Numbers. مجموعه Microsoft Office برای مک ارایه شده‌اند ولی پشتیبانی مناسبی از زبان فارسی ندارند. همچنین سازگاری Apple iWorks با Microsoft Office در حد صفر است. اصلا روش حساب نکنید!

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

iTunes روی مک برخلاف ویندوز Performance بسیار بالایی دارد. هرچند برای شخص من مدت‌هاست جایش را Spotify پر کرده ولی هنوز برای مدیریت iPhone و iPad کاربرد دارد.

با iPhoto ارتباط برقرار نکردم هرچند معتقدم مشکل از من است. باید روند ذخیره عکس‌های شخصیم را با iPhoto منطبق کنم چون امکانات جستجوی خوبی دارد.

با Safari بیشتر از چند روز کار نکردم. اعتیادم به Chrome مانع از این کار شد!

اپلیکیشن OneDrive ماکروسافت برای مک عملکردهای ابتدایی را دارد ولی از Dropbox خیلی عقب است. در این مورد چاره نداشتم چون بعد از خرید عضویت Office 365، همه فایل‌ها را به OneDrive منتقل کردم. البته از این کار راضی هستم و اطمینان دارم این برنامه پیشرفت خواهد کرد.

سخت افزار

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

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

برای مثال، من مدت‌های طولانی از کلید ترکیبی برای عمل Home و End در ویندوز استفاده می‌کردم. در مک هم این کار با Command + Arrow Key قابل انجام هست.

همچنین عمل پیمایش کلمه‌ای متن که در ویندوز با Ctrl + Arrow Key قابل انجام هست، در مک با Alt + Arrow Key انجام می‌شود. ترک عادت در کل باعث مرض است ولی این مسایل برای یک گیک اصلا مطرح نیست!
سیستم عامل مک با WiFi مشکلات عدیده دارد. این مساله شاید کمی باعث اذیت شما بشود ولی اپل در هر به‌روزرسانی مقداری از این مشکلات را برطرف می‌کند.

ترمینال

کار با ترمینال مک بسیار لذت‌بخش است. خصوصا اگر اهل استفاده از ابزار مربوطه باشید. بسیاری از ابزار GNU برای مک پورت شده‌اند و با پارامترهای مرسوم در محیط لینوکس، تحت مک هم قابل استفاده هستند. NodeJS و Python و ابزار وابسته به آن‌ها مثل Less و Phonegap و غیره سازگاری عجیبی با ترمینال مک (که یک سیستم‌عامل مبتنی بر یونیکس است) دارند. Ruby هم به‌طور پیش‌فرض بر روی مک نصب است. راجع به git اصلا حرفی نمی‌زنم!

در آخر

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

wds چیست و چگونه به ما کمک کرد

صورت مساله

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

اینجاس که wds به کمکمون اومد.

wds چیست؟

Wireless distribution system، سیستمی برای متصل کردن بدون سیم دو یا چند access point در یک شبکه IEEE 802.11 است. از این قابلیت برای گسترش محدوده تحت پوشش یک شبکه بی‌سیم استفاده می‌شود. این سیستم قابلیت‌های زیاد و پیچیده‌ای دارد که پاسخگوی اقسام نیازهای شبکه‌های بی‌سیم باشد. برای اطلاع از همه این قابلیت‌ها می‌تونید به صفحه ویکی‌پدیای wds مراجعه کنید.

ولی ما از wds چی می‌خواستیم؟

خیلی ساده! می‌خواستیم PCها توی اتاق رو وصل کنیم به یک روتر(که اسمش رو روتر B می‌زاریم) که این روتر به صورت بی‌سیم، به روتر اصلی شرکت(که اسمش رو روتر A می‌زاریم) وصل باشه.

روش انجام کار

برای راه اندازی wds، کافیه این قابلیت رو روی روتر B روشن کنید.

روشن کردن قابلیت wds در روترهای tp-link

حالا با انتخاب کردن روتر A(یا ورود دستی اطلاعات اون)، میتونید wds را راه اندازی کنید.

نکاتی که باید رعایت شوند

  • wds در اتصال به روتر host، اصلا منعطف نیست. برای فرار از این محدودیت باید دو پارامتر channel و channel width روی روتر اصلی از حالت Automatic خارج شود و اطلاعات آن‌ها روی روتر client وارد شود. (سر این مساله داشتم به کل از wds ناامید میشدم.)
  • مدیریت DHCP شبکه با شماست. اگر DHCP روتر client روشن بماند، دستگاه‌هایی که قابل حمل، دایما بین دو روتر قطع و وصل می‌شوند. برای حل این مشکل می‌تونید از Address Reservation و تقسیم کردن IPهای DHCP استفاده کنید. اگر محیط عملیات شما بزرگ نیست، مخفی کردن روتر دوم هم گزینه خوبی است.
  • اتصال بین دو روتر با WPA2 و رمز مناسب، حداکثر امنیت را برای شما فراهم می‌کند.