مسئله شما چیست؟¶
نرمافزار را برای خودتان بسازید¶
یک راه عالی برای ساختن نرمافزار این است که از حل مسئله خودتان شروع کنید. خودتان مخاطب هدف هستید و میدانید چه چیزی مهم است و چه چیزی نیست. همین، شروع بزرگی برای ساختن محصولی متمایز به شما میدهد.
نکته کلیدی این است که بفهمید تنها نیستید. اگر شما این مسئله را دارید، احتمالاً صدها هزار نفر دیگر هم در همین قایقاند. بازار شما همانجاست. ساده نبود؟
Basecamp از یک مسئله شروع شد: ما بهعنوان یک شرکت طراحی، راه سادهای لازم داشتیم تا درباره پروژهها با مشتریان ارتباط برقرار کنیم. اول با extranetهای مشتری این کار را میکردیم و آنها را دستی بهروز میکردیم. اما هر بار که پروژه نیاز به بهروزرسانی داشت، تغییر دادن HTML با دست جواب نمیداد. این سایتهای پروژه همیشه کهنه میشدند و آخرش رها میشدند. خستهکننده بود، چون ما را بینظم و مشتری را بیخبر میگذاشت.
پس سراغ گزینههای دیگر رفتیم. اما هر ابزاری که پیدا کردیم یا کاری را که لازم داشتیم انجام نمیداد، یا پر از قابلیتهایی بود که لازم نداشتیم؛ مثل صورتحساب، کنترل دسترسی سختگیرانه، نمودار، گراف و غیره. میدانستیم باید راه بهتری باشد، پس تصمیم گرفتیم ابزار خودمان را بسازیم.
وقتی مسئله خودتان را حل میکنید، ابزاری میسازید که به آن علاقه دارید. علاقه کلیدی است. علاقه یعنی واقعاً از آن استفاده میکنید و برایتان مهم است. و این بهترین راه است تا دیگران هم نسبت به آن علاقه پیدا کنند.
خار خودت را بخاران¶
دنیای متنباز مدتها پیش این شعار را پذیرفت؛ به آن میگویند «خار خودت را بخاران». برای توسعهدهندگان متنباز یعنی ابزارهایی را که میخواهند، همانطور که میخواهند، به دست میآورند. اما فایدهاش عمیقتر از این است.
بهعنوان طراح یا توسعهدهنده یک اپلیکیشن تازه، هر روز با صدها تصمیم ریز روبهرو میشوید: آبی یا سبز؟ یک جدول یا دو جدول؟ ثابت یا پویا؟ قطع کنیم یا بازیابی؟ این تصمیمها را چطور میگیریم؟ اگر چیزی را مهم تشخیص بدهیم، شاید بپرسیم. بقیه را حدس میزنیم. و همه این حدسها نوعی بدهی در اپلیکیشنهای ما میسازند؛ شبکهای بههمپیوسته از فرضها.
من بهعنوان توسعهدهنده از این متنفرم. دانستن اینکه این همه بمب ساعتی کوچک در اپلیکیشنهایی که مینویسم وجود دارد، استرسم را بیشتر میکند. توسعهدهندگان متنباز که خار خودشان را میخارانند، این مشکل را ندارند. چون خودشان کاربرند، پاسخ درست ۹۰ درصد تصمیمهایی را که باید بگیرند میدانند. فکر میکنم یکی از دلیلهایی که آدمها بعد از یک روز سخت کدنویسی به خانه میآیند و باز روی متنباز کار میکنند همین است: آرامشبخش است.
—Dave Thomas، The Pragmatic Programmers
زادهشده از ضرورت¶
Campaign Monitor واقعاً از ضرورت زاده شد. سالها از کیفیت گزینههای بازاریابی ایمیلی موجود کلافه بودیم. یک ابزار x و y را انجام میداد اما هرگز z را نه؛ بعدی y و z را داشت اما x را درست انجام نمیداد. راهی برای بردن نداشتیم.
تصمیم گرفتیم برنامهمان را خالی کنیم و ابزار رؤیایی بازاریابی ایمیلی خودمان را بسازیم. آگاهانه تصمیم گرفتیم نگاه نکنیم بقیه چه میکنند و بهجایش چیزی بسازیم که زندگی ما و مشتریانمان را کمی آسانتر کند.
معلوم شد فقط ما از گزینههای موجود ناراضی نبودیم. چند تغییر در نرمافزار دادیم تا هر شرکت طراحی بتواند از آن استفاده کند و شروع کردیم به پخش کردن خبر. در کمتر از شش ماه، هزاران طراح از Campaign Monitor برای فرستادن خبرنامه ایمیلی برای خودشان و مشتریانشان استفاده میکردند.
—David Greiner، بنیانگذار Campaign Monitor
باید برایتان مهم باشد¶
وقتی کتابی مینویسید، فقط داشتن داستانی جالب کافی نیست. باید میل گفتن آن داستان را داشته باشید. باید به شکلی شخصاً درگیر آن باشید. اگر قرار است دو سال، سه سال، یا بقیه عمرتان با چیزی زندگی کنید، باید برایتان مهم باشد.
—Malcolm Gladwell، نویسنده (از A Few Thin Slices of Malcolm Gladwell)
منبع اصلی: What’s Your Problem?