روزنوشته های فربد صالحی

درباره زندگی و برنامه نویسی

تعطیلات نوروز، کاسه‌های چوبی و باقی قضایا

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

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

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

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

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

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

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

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

 

 

 

۰ نظر
فربد صالحی

در شهر به بنده پیشنهاداتی شده بود

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

هربار که می‌خواستم این انتقال بین بانکی رو انجام بدم، کارمندی که تو باجه‌ی بانک قرار بود این کار رو بکنه می پرسید «چرا می‌خواید این مبلغ رو از حسابتون خارج کنید»، یا «می‌دونید که ۹۰ درصد این مبلغ رو می‌تونیم تا ۲ روز دیگه بدون ضامن بهتون وام بدیم؟» و جملاتی از این قبیل که معنی کلیش این بود که پول رو از حسابت تو شعبه‌ی ما خارج نکن، یا یخرده دیرتر خارج کن. 

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

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

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

۰ نظر
فربد صالحی

انگولار : two-way data binding و ngFor

 می‌دونیم که «بایندینگ دوطرفه» در «انگولار» با استفاده از "ngModel" کار راحتیه. به این صورت که اگه متغیری به اسم username رو تو کامپوننت مربوطه تعریف کرده باشیم، برای بایندینگ دوطرفه‌ی اون در سمت template می‌نویسیم:

<input [(ngModel)]="username" />

حالا اگه ورودی این input تغییر کنه مقدارش به متغیر username منتقل میشه و هرجای برنامه هم که مقدار این متغیر رو تغییر بده، مقدار جدید توی input نمایش داده میشه.

اما گاهی نیاز میشه که بایندینگ دوطرفه رو روی آرایه‌ای از متغیرها اجرا کنیم. فرض کنیم آرایه‌ای به نام cities داریم:

let cities = ['Tehran','Rasht','urmieh'];

نمایش عناصر این آرایه بوسیله‌ی input ها ساده است:

 <div *ngFor="let item of cities">
     <input [(ngModel)]="item">
 </div>

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

<div *ngFor="let item of cities;let index = index;">
  <input [(ngModel)]="cities[index]">
</div>

یعنی به جای متغیر item از اندیس‌های آرایه برای مقداردهی به ngModel استفاده می‌کنیم. به این ترتیب مشکل قبلی حل میشه، ولی در زمان اجرا کاربر در تغییر مقدار input مشکل خواهد داشت. فرض کنید کاربر می‌خواد مقدار urmieh (عنصر سوم آرایه) رو به urmia تغییر بده، تصمیم می‌گیره اول eh رو از انتهای کلمه پاک کنه و بعد a رو اضافه کنه. ولی همینکه h رو پاک می‌کنه، مکان‌نما (curser) از input مربوطه خارج میشه، در واقع focus از روی input برداشته میشه و کاربر باید دوباره روی اون input کلیک کنه تا بتونه تغییر بعدی رو اعمال کنه. این روند با هر تغییری در ورودی‌ها تکرار میشه.

علت اینه که با هر تغییر، انگولار مجددا DOM رو بازسازی می‌کنه و به این ترتیب focus روی input قبلی ازدست میره. برای رفع این مشکل، ابتدا تابعی رو تو کامپوننت مربوطه به صورت زیر تعریف می‌کنیم:

trackByIndex(index: number, item: any) {
  return index;
}

و مجددا کد مربوط به حلقه‌ی ngFor رو تغییر می‌دیم (بخش پر رنگ اضافه شده):

<div *ngFor="let item of cities;let index = index;trackBy:trackByIndex;">
  <input [(ngModel)]="cities[index]">
</div>

در اینجا ما از ویژگی trackBy در حلقه‌ی ngFor استفاده کردیم. به طور کلی، استفاده از این ویژگی یکی از توصیه‌ها برای افزایش کارایی در استفاده از ngFor در انگولار هستش، بخصوص وقتی تعداد عناصر حلقه زیاد و امکان تغییر اونها توسط کاربر وجود داشته باشه. تابعی که به این ویژگی نسبت داده میشه (ما اسمش رو trackByIndex گذاشتیم) همیشه دو پارامتر ورودی می‌گیره، اندیس عنصر مربوطه در آرایه و خود عنصر، و باید یه مقدار منحصر به فرد برای هر عنصر برگردونه تا انگولار بتونه با استفاده از اون فقط عنصری که مقدارش تغییر کرده رو بروز کنه و نیاز به بازسازی کل DOM نداشته باشه. ما در مثال بالا اندیس عنصر در آرایه رو بر می‌گردونیم.

۰ نظر
فربد صالحی

چو تخته پاره بر موج

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

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

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

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

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

۰ نظر
فربد صالحی

بنگاهی‌ها

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

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

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

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

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

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

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

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

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

 

 

 

۰ نظر
فربد صالحی

دوره‌ی مقدماتی data science - مقدمه‌ای بر یادگیری ماشین

این پنجمین و آخرین بخش از خلاصه‌ی مجموعه‌ی «دوره‌ی مقدماتی data science» هستش. 

بخش اول - مقدمه

بخش دوم - مقدمه‌ای بر داده‌ها

بخش سوم - تصویرسازی از داده‌ها و تحلیل آنها

بخش چهارم - مقدمه‌ای بر آمار

 

منظور از یادگیری ماشین چیست؟

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

 

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

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

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

همونطور که در تصویر بالا می‌بینیم، مجموعه‌ داده‌ی [27.0,0.2,17] به عدد 12 برچسب‌گذاری شده. مشخصه که فقط با استفاده از داده‌ی یک روز نمی‌شه فرایند تعمیم دادن رو بخوبی انجام داد. بنابراین از داده‌های تعداد روزهای بیشتری برای آموزش دادنِ مدل استفاده می‌کنیم. 

 بعد از اینکه به مدل آموزش دادیم، می‌تونیم یه تابع تعمیم داشته باشیم و از اون برای محاسبه‌ی برچسب (Y) بر اساس داده‌های ورودی ([X1, X2, X3]) استفاده کنیم. 

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

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

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

 

۰ نظر
فربد صالحی

کتاب Running Lean: سنجش ساختارمند طرح - آمادگی برای مصاحبه با مشتریان

این پُست هفتمین بخش از مجموعه‌ی خلاصه‌ی کتاب Running Lean یا اجرای ناب هستش.

بخش اول: مقدمه

بخش دوم: نقشه‌ی راه - اصول فراگیر

بخش سوم: نقشه‌ی راه - یک مثال

 بخش چهارم: مستند کردن طرح - بوم ناب

بخش پنجم: شناخت بخش‌های پر ریسک طرح - اولویت بندی و انتخاب نقطه‌ی شروع

بخش ششم: شناخت بخش‌های پر ریسک طرح - برای آزمایش آماده شوید

 

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

لطفا نظرسنجی نکنید

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

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

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

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

آیا نظرسنجی در همه‌ی موارد مناسبه؟

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

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

اما صحبت با افراد کار سخیه

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

من می‌دونستم که گوش دادن به مشتری‌ها مهمه، اما نمی‌دونستم روش درستش چیه.

گفتنِ اینکه «برو با یه مشتری صحبت کن» تقریبا همونقدر مفیده که بگی «چیزی تولید کن که مردم می‌خوانش». سوال بزرگ اینه: چی بهشون می‌گی؟

تعدادی از روش‌های مناسب برای غلبه بر این محدودیت‌های ذهنی اولیه: 

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

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

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

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

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

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

- یک همراه داشته باشید. همراه کمک می‌کنه تا در حین مصاحبه چیزی از قلم نیفته. مهم‌تر اینکه باعث می‌شه به هدف یادگیری پایبند باشید.

- یک مکان خنثی انتخاب کنید. برای مصاحبه‌ی اول با مشتری، من جایی مثل کافی‌شاپ رو به خاطر ایجاد یه فضای غیر رسمی به یه دفتر ترجیح می‌دم. دفتر موضوع رو تجاری می‌کنه و حسی مثل ارائه‌ی فروش ایجاد می‌کنه که مناسب نیست. 

- مدت زمان مصاحبه مناسب باشد. مصاحبه‌های من بدون حس عجله و شتاب معمولا ۲۰ تا ۳۰ دقیقه طول می‌کشن. هم مطمئن باشید که زمان مورد نیازتان را دارید و هم به وقت مصاحبه‌شونده احترام بگذارید.

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

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

- نتایج را بلافاصله بعد از مصاحبه مستند کنید. پیشنهاد من اینه که بعد از مصاحبه ۵ دقیقه وقت بذارید و تا ذهنتون آماده است نتایج رو ثبت کنید.

- خودتون رو برای مصاحبه با ۳۰ تا ۶۰ نفر آماده کنید. این عدد به عنوان به قاعده‌ی کلی و در یه بازه‌ی زمانی ۴ تا ۶ هفته‌ای در نظر گرفته میشه که  روزی ۲ یا ۳ مشتری رو شامل میشه. اما عدد واقعی می‌تونه بر اساس علائمی که شما از مصاحبه‌ها دریافت می‌کنید و همچنین بیزینس مدل شما متفاوت باشه.

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

- متن همه‌ی ایمیل‌هایِ درخواست مصاحبه رو می‌نویسم.

- بعدازظهرهام رو خالی نگه می‌دارم تا زمان‌بندی مصاحبه‌ها راحت باشه. 

- در تبادل ایمیل‌ها، ایمیل من هم اضافه میشه، بنابراین هر جا لازم باشه می‌تونم دخالت کنم.

 

روش‌هایی برای یافتن مصاحبه‌شونده

- با افرادی که ارتباط نزدیکی با آنها دارید شروع کنید. بعضی‌ها نگران این موضوع هستن که نتایج این روش ممکنه دارای جهت‌گیری باشه. اما به نظر من صحبت با هر کسی بهتر از صحبت نکردنه. 

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

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

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

 

برخی مخالفت‌ها با ایده‌ی مصاحبه با مشتریان و پاسخ به آنها

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

- صحبت با ۲۰ نفر از نظر آماری مناسب نیست: هدف یه استارتاپ ارائه‌ی یه چیز جدید و برجسته به دنیاست. بزرگ‌ترین چالش شما در ابتدا اینه که بتونید توجه یه عده رو جلب کنید. 

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

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

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

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

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

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

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

- افراد، خریدار یه طرح خالی نخواهند بود: وقتی شما مشکل مشتری رو درک کنید و بهش کمک کنید که یه راه‌حل قابل دسترس رو تصور کنه، خریدار شما میشه. در صورتیکه مواردی نظیر ارائه‌ی دوره‌ی آزمایشی، امکان لغو راحت و نظیر اون رو هم فراهم کنید. 

 

 

۰ نظر
فربد صالحی

درباره‌ی «شُدن»

 

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

امروز خوندن این کتاب رو تموم کردم. نیمه‌ی اول این کتاب درباره‌ی خانواده، کودکی، تحصیل، اشتغال و همچنین نحوه‌ی آشنایی، ازدواج و زندگیِ خصوصیِ نویسنده‌ی کتاب با باراک اوباما و نیمه‌ی دوم کتاب بیشتر درباره‌ی حضور خانواده‌ی اوباما (میشل، باراک و دو دخترشون) در «کاخ سفید» و ویژگی‌های زندگی به عنوان «بانوی اول آمریکا» هستش.  

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

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

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

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

 

در اینجا چند جمله از کتاب رو که به نظرم جالب بودن می‌نویسم:

- Now I think it's one of the most useless questions an adult can ask a child-what do you want to be when you grow up? As if growing up is finite. As if at some point you become something and that's the end.

 

- I realize I don't know exactly what my mom did during the hours we were at school, mainly because in the self-centered manner of any child, I never ased. I don't know what she thought about, how she felt about being a traditional homemaker as opposed to working a different job.

 

- She (my mom) and my dad offered guildlines rather than rules. It meant that as teenagers we'd never have a curfew. Instead, they'd ask, "what's a reasonable time for you to be home?" and then trust us to stick to our word. 

 

- I understand now that even a happy marriage can be a vexation, that it's a contract best renewed and renewed again, even quietly and privately-even alone.

 

- I wasn't going to let one person's opinion dislodge everything I thought I knew about myself. Instead, I switched my method without changing my goal. 

 

- This is what a control freak learns inside the compressed otherworld of college, maybe above all else: There are simply other ways of being.

 

- This may be the fundamental problem with caring a lot about what others think: It can put you on the established path. 

 

- Nothing was impossible, but nothing looked simple either.

 

- My father was  just fifty-five when he died. Suzanne (my friend) had been twenty-six. The lesson there was simple: Life is short and not to be wasted.

 

- I put myself in front of anyone I thought might be able to give me advice. The point was less to find a new job than to widen my understanding of what was possible and how others had gone about it.

 

- I began to see that there were ways I could be happier and that they didn't necessarily need to come from Barack's quitting poilitics in order to take some nine-to-six foundation job.(...this was an unrealistic expectation.) 

 

- Growing up in a working-class community and with a disabled parent, I'd learned that planning and vigilance mattered a lot. It could mean the difference between stability and poverty. The margins always felt narrow. One missed paycheck could have leave you without electricity; one missed homework assignment could put you behind and possibly out of college.

 

- Having lost a fifth-grade classmate to a house fire, having watched Suzanne die before she'd had a chance to really be an adult, I'd learned that the world could be brutal and random, that hard work didn't always assure positive outcomes. 

 

- There's an age-old maxim in the black community: You've got to be twice as good to get half as far.

 

- I knew from my own life experience that when someone shows genuine interest in your learning and development, even if only for ten minutes in a busy day, it matters.

 

- Life was teaching me that progress and change happen slowly. Not in two years, four years, or even a lifetime. we were planting seed of change, the fruit of which we might never see. We had to be patient. 

 

- Being president doesn't change who you are; it reveals who you are.

 

- For me, becoming insn't about arriving somewhere or achieving a certain aim. I see it instead as forward motion, a means of evolving, a way to reach continuously toward a better self.

 

 

۰ نظر
فربد صالحی

دوره‌ی مقدماتی data science - مقدمه‌ای بر آمار

این چهارمین بخش از خلاصه‌ی مجموعه‌ی «دوره‌ی مقدماتی data science» هستش. 

بخش اول - مقدمه

بخش دوم - مقدمه‌ای بر داده‌ها

بخش سوم - تصویرسازی از داده‌ها و تحلیل آنها

 

تحلیل آماری

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

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

کمترین مقدار 20.0 هستش که در «نرم‌افزار اکسل» با تابع ()MIN=، بیشترین مقدار 64.2 هستش که در اکسل با تابع ()MAX= و متوسط دما که با جمع مقادیر و تقسیم اون بر تعداد به دست میاد برابر 44.62 هستش و در اکسل با استفاده از تابع ()AVERAGE= میشه بهش رسید. همونطور که مشخصه مقدار متوسط به احتمال زیاد اصلا بین داده‌های موجود وجود نداره.

یه روش دیگه در تحلیل داده‌ها محاسبه‌ی «میانه» هستش. برای این کار داده‌ها رو از کوچک به بزرگ مرتب می‌کنیم و داده‌ی وسط رو انتخاب کنیم، که اگه این رو روی دماهای ذکر شده در بالا اجرا کنیم، به 46.2 می‌رسیم. اگر هم تعداد داده‌ها زوج باشه،‌ از میانگین دو داده‌ی وسط استفاده می‌کنیم. در اکسل برای رسیدن به این مقدار از تابع ()MEDIAN= استفاده میشه. 

گاهی ممکنه نیاز داشته باشیم بدونیم که در یه بازه‌ی زمانی چه داده‌ای بیشتر از بقیه تکرار شده که بهش «مُد» گفته میشه. در اعداد تصویر بالا عدد 46.2 دوبار ذکر شده در حالیکه بقیه‌ اعداد یک بار اومدن. در اکسل از تابع ()MODE= برای رسیدن به این مفهوم استفاده میشه. گاهی ممکنه چند عدد مُد باشن، یعنی چند تا عدد داشته باشیم که مثلا دوبار در فهرست داده‌ها اومده باشن. 

برای تصویرسازی از فراوانی داده‌ها میشه از نمودار «هیستوگرام» استفاده کرد. در این نمودار، داده‌ها در دسته‌هایی با بازه‌ی مشخص در محور افقی و تعداد اعضای هر دسته در محور عمودی نمایش داده میشه. نمودار هیستوگرام اعداد بالا به صورت زیر هستش و همونطور که مشخصه، اعداد در بازه‌هایی به طول ۱۰ در محور افقی قرار گرفتن. در این نمودار خیلی سریع می‌تونیم متوجه شیم که بیشترِ روزها (۵ روز) دمایی در بازه‌ی ۴۰ تا ۵۰ داشتن. 

 

ما معمولا برای اینکه یه دید کلی از داده‌ها داشته باشیم، به خصوص وقتی حجم داده‌ها زیاده، از محاسبه‌ی میانگین استفاده می‌کنیم. اما گاهی ممکنه میانگین ما رو به اشتباه بندازه. به عنوان مثال، اگه دو مجموعه داده داشته باشیم، یکی شامل ۱ و ۹ و دیگری شامل ۶ و ۴، میانگین هر دو مجموعه میشه ۵. اگه در یه گزارش فقط عدد میانگین‌ها رو بگیم، ممکنه این برداشت بوجود بیاد که اعداد دو مجموعه به هم نزدیکن. در حالیکه می‌بینیم در مجموعه‌ی اول ۸ واحد و در مجموعه‌ی دوم ۲ واحد اختلاف بین اعداد وجود داره، یعنی پراکندگی داده‌ها تو مجموعه‌ی اول بیشتره. برای حل این مساله از مفهوم «انحراف معیار» و برای محاسبه‌ی انحراف معیار از مفهوم «واریانس» استفاده می‌کنیم. فرمول ریاضی واریانس به صورت زیر هستش:

ممکنه در ظاهر پیچیده به نظر بیاد ولی ساده است. μ میانگین داده‌ها و N تعداد داده‌ها است.Xهم عضو iاُم مجموعه. در واقع معنیش میشه اینکه اول میانگین داده‌ها محاسبه و بعد اختلافش با هرکدوم از داده‌ها به توان ۲ می‌رسه. بعد مجموع اونها تقسیم بر تعداد داده‌ها میشه. 

برای مجموعه‌ی اول و دوم در مثال بالا، میانگین داده‌ها برابر با ۵ هستش. برای مجموعه‌ی اول:

۳۲  = ۲(۹-۵) + ۲(۱-۵) 

حالا تقسیم ۳۲ بر تعداد اعداد یعنی ۲، واریانس رو به ما میده: ۱۶. اما برای مجموعه‌ی دوم: 

۲ = ۲(۶-۵) + ۲(۴-۵) 

و اگه ۲ رو تقسیم بر تعداد اعداد یعنی ۲ کنیم واریانس میشه ۱. اون چیزی که ما دنبالش بودیم انحراف معیار بود که در واقع با محاسبه‌ی «جذر» یا ریشه‌ی دوم واریانس به دست میاد. جذر یا ریشه‌ی دوم ۱۶ میشه ۴ و جذر یا ریشه‌ی دوم ۱ هم همون ۱ هستش. این اعداد به علت سادگی مجموعه‌ی داده‌ی ما، با چشم هم قابل ملاحظه است. یعنی فاصله‌ی ۱ و ۹ با عدد ۵ (میانگین) برابر ۴ و فاصله‌ی ۴ و ۶ با عدد ۵ برابر ۱ هستش. همونطور که واضحه، هر چقدر که پراکندگی داده‌ها کمتر باشه انحراف معیار هم کمتر خواهد بود. در اکسل، برای محاسبه‌ی واریانس از تابع ()VAR.P= و برای محاسبه‌ی انحراف معیار از تابع ()STDEV.P= استفاده میشه. 

نمودار هیستوگرام نشون میده که نمونه داده‌های مربوط به دما که دیدیم، از «توزیع نرمال» پیروی می‌کنه. در یه توزیع نرمال، میانگین، میانه، مُد و خط تقارن در وسط قرار دارند:

 

طبیعتا همه‌ی داده‌ها از توزیع نرمال پیروی نمی‌کنن. به عنوان مثال، در تصویر زیر داده‌های مربوط به مقدار بارندگی، نمودار هیستوگرام و مقادیر میانگین و میانه و مُد مربوطه رو می‌بینیم. مفهومی که بوسیله نمودار زیر می‌تونیم بهش بپردازیم تقارن تابع توزیع یا «چولگی» (skewness) هستش. این نمودار دارای چولگی به راست (right skewed) هستش. 

رابطه بین فیلدهای مختلف داده‌ها

گاهی نیاز داریم که رابطه‌ی بین چند فیلد از یه مجموعه‌ی داده رو بدونیم. مثلا می‌خوایم بدونیم چه رابطه‌ای بین دمای هوا و میزان فروش لیموناد برقراره. قبلا هم دیدیم که برای این کار از نمودار نقشه استفاده می‌کنیم و روند حاکم بر فیلدها رو بدست میاریم. این همون مفهوم «همبستگی» (correlation) هستش و میشه به صورت عددی میزان این همبستگی رو محاسبه کرد. برای این کار تو اکسل از تابع (,)CORREL= استفاده میشه.

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

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

نکته‌ی آخر در این مورد اینکه، همبستگیِ زیاد بین دو فیلد لزوما به این معنی نیست که تغییر یک فیلد داده، «دلیلِ» تغییر در فیلد دیگه است. بلکه ممکنه فیلد سومی روی هر دو اثر گذاشته باشه یا حتی به طور تصادفی این همبستگی بینشون دیده بشه. 

 

بخش پنجم - مقدمه‌ای بر یادگیری ماشین

 

 

 

۰ نظر
فربد صالحی

کتاب Running Lean: شناخت بخش‌های پر ریسک طرح - برای آزمایش آماده شوید

این پُست ششمین بخش از مجموعه‌ی خلاصه‌ی کتاب Running Lean یا اجرای ناب هستش.

بخش اول: مقدمه

بخش دوم: نقشه‌ی راه - اصول فراگیر

بخش سوم: نقشه‌ی راه - یک مثال

 بخش چهارم: مستند کردن طرح - بوم ناب

بخش پنجم: شناخت بخش‌های پر ریسک طرح - اولویت بندی و انتخاب نقطه‌ی شروع

 

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

 

یک تیم مساله/راه‌حل آماده کنید.

قبل از شروع اولین مجموعه از آزمایش‌ها، جمع کردن یه تیم خوب کار مهمیه. بهتره تقسیم‌بندی‌های سنتی مثل «مهندسی»، "QA"، «بازاریابی» و مانند این رو فراموش کنید. به جای اون بهتره دو تا تیم ایجاد کنید: تیم مساله، تیم راه‌حل. 

تیم مساله

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

تیم راه‌حل

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

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

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

 

سه موردی که اجباریه: توسعه، طراحی و بازاریابی

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

توسعه

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

طراحی

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

بازاریابی 

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

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

 

اجرای آزمایش‌های موثر

در این بخش قوانینی برای تعریف و اجرای آزمایش‌های مفید وضع می‌کنیم. 

بیشینه‌سازی سرعت، آموختن و تمرکز

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

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

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

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

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


یه پارامتر کلیدی یا هدف، مشخص کنید

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

کوچکترین چیز ممکن برای یادگیری رو انجام بدید

میگن «بهترین»، دشمنِ «خوب» هستش. ساده‌ترین کاری که برای آزمایش یه نظریه می‌تونید انجام بدید رو انتخاب کنید.

فرضیه‌هایی را در نظر بگیرید که قابل ابطال باشد

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

بدون این کار، شما به سادگی می‌تونید در دام شواهدی بیفتید که اثبات می‌کنه فرضیه‌ای که شما دارید درسته. در اینجا دو عبارت رو مقایسه می‌کنیم:

خیلی مبهم: شناخته شدن به عنوان یه «متخصص»، روی پذیرندگان اولیه تاثیرگذار خواهد بود.

مشخص و قابل سنجش: یک پُست وبلاگ باعث ۱۰۰ مورد عضویت خواهد شد.  

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

اعتبارسنجی کیفی، تایید کمّی 

قبل از تناسب محصول/بازار، میزان عدم قطعیت بالاست و خبر خوب اینه که وقتی عدم‌قطعیت زیاده، برای آموختن نیاز به داده‌ی زیادی نیست. هدف اولیه‌ی شما اینه که یه «نشانه‌ی» قوی (مثبت یا منفی) به دست بیارید که به طور معمول نیاز به نمونه داده‌ی زیادی نداره. شما احتمالا در مصاحبه با ۵ مشتری به این هدف می‌رسید. یه نشانه‌ی منفیِ قوی بر این دلالت می‌کنه که فرضیه‌ی اصلی شما به احتمال زیاد جواب نمیده و این باعث میشه که یا خیلی زود اون رو بهبود بدید یا کلا فراموشش کنید. با این حال نشانه‌ی مثبتِ قوی لزوما به این معنی نیست که فرضیه‌ی شما با افزایش نمونه‌ی آماری همچنان نشانه‌ی مثبت دریافت کنه، با این حال این مجوز رو به شما میده که با این فرضیه ادامه بدید تا زمانی که از طریق داده‌های کمّی تایید بشه. اعتبارسنجی فرضیه‌ها از این طریق، یعنی ابتدا کیفی و سپس کمّی، یک اصل کلیدی است که در ادامه زیاد باهاش مواجه می‌شیم.

مطمئن شوید که می‌توانید نتایج به دست آمده را به اقدامات مشخصی مربوط کنید

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

شفافیت

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

تبادل آموخته‌ها

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

 

هدف در اینجا، سنجیدن کمترین محصولِ قابل ارائه‌ی ماست. ابتدا خلاصه‌ای از آموخته‌های ما از یک دوره‌ی مشخص در ۳ بخش مجزا ارائه شده: آنچه انتظار داشتیم اتفاق بیفته (your hypotheses)، آنچه واقعا اتفاق افتاد (your insights)، و آنچه در آینده می‌خواهیم انجام دهیم (future experiments). در ادامه، به نحوه‌ی برخورد و استفاده‌ی مشتری‌ها با محصول پرداخته شده. این روش اجازه می‌ده که در حین اینکه دائما در حال حرکت به سمت طرحی هستید که جواب بده،‌ به یادگیری ادامه بدید. 

 

استفاده از ابَر الگوی تکرار (iteration) برای ریسک‌ها

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

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

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

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

هر بار بیشترین آموخته‌ رو (درباره‌ی اینکه چه چیزی پر ریسک‌ترین هستش) به دست بیار. 

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

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

مرحله‌ی ۱: فهمیدن مساله

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

مرحله‌ی ۲: تعریف راه‌حل

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

مرحله‌ی ۳: اعتبارسنجی کیفی

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

مرحله‌ی ۴: تایید کمّی

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

 

در اینجا نحوه‌ی مواجهه با آنها بر اساس ریسک‌ها ارائه شده:

- ریسک محصول: تولید محصولِ درست

۱- اول مطمئن بشید که مساله‌ای دارید که ارزش حل کردن داره.

۲- سپس کمترین محصول قابل ارائه رو تعریف کنید.

۳- کمترین محصول قابل ارائه رو تولید و اون رو در ابعاد کوچیک اعتبارسنجی کنید.

۴- در نهایت اون رو در ابعاد وسیع بررسی کنید.

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

۱- اول مشخص کنید چه کسایی با این مساله مواجهن.

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

۳- خوبه که کار رو از کانال‌های بیرونی (outbound channels) شروع کنید.

۴- اما به تدریج کانال‌های درونی مقیاس‌پذیر (scalable inbound channels) رو توسعه بدید، هر چه زودتر بهتر.

- ریسک بازار: یه کسب و کار ماندگار بسازید.

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

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

۳- بعد از طریق رفتار مشتری‌ها قیمت‌گذاری رو بسنجید.

۴- ساختار هزینه‌ی خودتون رو بهینه کنید تا بیزینس مدل‌تون جواب بده. 

 

 

بخش هفتم: سنجش ساختارمند طرح - آمادگی برای مصاحبه با مشتریان

 

 

 

۰ نظر
فربد صالحی