از ایده تا انتشار: نقشه راه ۳۰ روزه ساخت محصول با هوش مصنوعی
بیشتر پروژهها بهخاطر کمبود مهارت شکست نمیخورند؛ بهخاطر دامنهای شکست میخورند که هر هفته بیسروصدا بزرگتر میشود.
نقشه راه ۳۰ روزه ساخت محصول یعنی در پایان روز سیام یک لینک داشته باشید که بتوانید به یک غریبه بدهید و او بدون اینکه شما بالای سرش بایستید کارش را با آن تمام کند. نه دموی ضبطشده، نه فایل فیگما، نه «تقریباً آماده است». یک لینک، یک کاربر واقعی، یک نتیجه.
سی روز عدد جادویی نیست؛ افقی است که در آن هنوز یادتان هست چرا شروع کردید. با دستیارهای هوش مصنوعی، نوشتن کد دیگر گلوگاه اصلی نیست — گلوگاه تصمیمهایی است که هر روز باید بگیرید و به تعویقانداختنشان پروژه را ماهها عقب میاندازد. به همین دلیل بخش بزرگی از چیزی که در ادامه میخوانید دربارهی ساختن نیست، دربارهی حذفکردن است.
روز صفر: ایده را تا اندازهی یک جمله کوچک کنید
قبل از اینکه یک خط کد نوشته شود، ایده را در این قالب بنویسید: «ابزاری برای [چه کسی] که [چه کاری] را [چطور بهتر از حالا] انجام میدهد.» اگر جمله از یک خط بلندتر شد، هنوز دو سه محصول را با هم اشتباه گرفتهاید.
یک نمونهی مشخص: «ابزاری برای مربیهای خصوصی بدنسازی که برنامهی تمرین هفتگی هر شاگرد را بهجای فرستادن عکس در واتساپ، روی یک لینک اختصاصی بگذارد.» همین یک جمله سه چیز را روشن میکند: کاربر مربی است نه شاگرد، خروجی یک لینک است، و رقیب واقعیتان واتساپ است نه یک اپلیکیشن بزرگ خارجی.
بعد یک تصمیم دوم: «مسیر طلایی» چیست؟ منظور آن زنجیرهی کوتاه کارهایی است که اگر کار کند محصول شما وجود دارد و اگر کار نکند بقیهی چیزها اهمیتی ندارند. برای مثال بالا: مربی وارد میشود ← شاگرد اضافه میکند ← تمرینهای هفته را مینویسد ← لینک را کپی میکند. تمام. هر چیزی که در این چهار قدم نیست، این ماه ساخته نمیشود.
خروجی روز صفر روی یک کاغذ جا میشود: یک جمله، چهار قدم، سه صفحهی دستکشیده. تا این کاغذ آماده نشده، هفتهی اول را شروع نکنید.
هفتهی اول (روز ۱ تا ۷): چیزی که واقعاً بالا میآید
قانون این هفته یک جمله است: تا پایان روز دوم باید یک صفحهی خالی روی دامنهی واقعی در دسترس باشد. نه روی لپتاپ شما، روی اینترنت. این کار سختترین بخش پروژه — استقرار، دامنه، گواهی SSL، متغیرهای محیطی، اتصال دیتابیس — را از روز بیستوهشتم به روز دوم میآورد؛ جایی که اگر خراب شد هنوز بیستوهشت روز وقت دارید.
بقیهی هفته صرف ورود کاربر و مدل داده میشود. مدل داده را قبل از هر چیز بنویسید و کوچک نگه دارید. برای همان مثال، سه جدول کافی است:
coaches: id, email, name, created_at
students: id, coach_id, name, note
plans: id, student_id, week, body, share_token
اگر روز پنجم هفت جدول دارید، مشکل از دیتابیس نیست؛ از دامنهی محصول است. هر جدول اضافه یعنی چند صفحه، چند فرم، چند حالت خالی و چند حالت خطای اضافه که باید تا روز سیام ساخته و آزمایش شوند.
یک تصمیم را هم همین هفته بگیرید و دیگر سراغش برنگردید: راستبهچپ بودن چیدمان، فونت فارسی و تاریخ شمسی. افزودن RTL و تقویم جلالی به محصولی که سه هفته با چیدمان چپبهراست ساخته شده، عملاً یعنی یک بازبینی کامل روی تکتک صفحهها. سنجهی پایان هفته هم ساده است: یک نفر غیر از شما بتواند ثبتنام کند و یک رکورد خالی بسازد. اگر این نشد، هفتهی دوم را شروع نکنید و همین را تمام کنید. همین ترتیب — اول استقرار، بعد داده، بعد قابلیت — چیزی است که در دورهی ساخت سایت با هوش مصنوعی بدون کدنویسی هم روی یک پروژهی واقعی تمرین میشود.
هفتهی دوم (روز ۸ تا ۱۴): فقط مسیر طلایی، از اول تا آخر
این هفته فقط همان چهار قدم ساخته میشود؛ زشت، بدون انیمیشن، بدون حالت تاریک، ولی کامل. «کامل» یعنی کاربر میتواند از ابتدا تا انتها برود و نتیجهی واقعی بگیرد — نه اینکه هر صفحه نیمهکاره بماند و قرار باشد بعداً به هم وصل شوند.
چیزهایی که این هفته وسوسهتان میکنند و نباید ساخته شوند: صفحهی تنظیمات، پنل مدیریت، اعلان، آپلود آواتار، بازیابی رمز با پیامک، خروجی PDF. برای هرکدام یک راه دستی موقت وجود دارد؛ مدیریت را با کوئری مستقیم روی دیتابیس انجام بدهید و رمز فراموششده را خودتان ریست کنید. تا وقتی کاربرانتان به ده نفر نرسیدهاند، کار دستی از کد ارزانتر است.
هر روز دستکم یک بار منتشر کنید. تغییر کوچک روزانه با دستیار هوش مصنوعی هم بهتر جواب میدهد: وقتی هر تغییر یک فایل و صد خط است، هم خودتان میفهمید چه اتفاقی افتاده و هم وقتی چیزی شکست دقیقاً میدانید کجا را برگردانید.
سنجهی پایان هفته: کل مسیر طلایی را روی گوشی خودتان انجام بدهید بدون اینکه یک بار به کد دست بزنید. هر جا مجبور شدید «فقط این یکی را دستی درست کنم»، یک باگ پیدا کردهاید که باید نوشته شود.
هفتهی سوم (روز ۱۵ تا ۲۱): دست غریبه روی محصول
پنج کاربر واقعی پیدا کنید؛ نه پنج دوست که نمیخواهند دلتان بشکند، بلکه پنج نفر که همین امروز آن مسئله را دارند. کنارشان بنشینید یا تماس تصویری بگیرید، لینک را بدهید و ساکت بمانید. سکوت مهمترین ابزار این هفته است — هر بار که میگویید «اینجا باید بزنی روی…»، یک ایراد رابط کاربری را پنهان کردهاید.
هرچه دیدید در سه سطل بریزید:
- بلاککننده — کاربر نتوانست کار را تمام کند. همین هفته درست میشود.
- آزاردهنده — تمام کرد ولی غر زد. فهرست میشود و اگر هفتهی چهارم وقت ماند، درست میشود.
- آرزو — «کاش این را هم داشت». نوشته و بایگانی میشود. دستنخورده.
معمولاً از پنج نفر، دو سه بلاککنندهی مشترک بیرون میآید و بقیهی فهرست آرزوست. اما اگر هر پنج نفر روی نقطهی متفاوتی گیر کردند، مشکل در جزئیات نیست: مسیر طلایی برای آنها معنا ندارد و باید جملهی روز صفر بازنویسی شود. این ناخوشایندترین خروجی ممکن است و در روز نوزدهم هنوز ارزان است؛ در روز نود، نه.
هفتهی چهارم (روز ۲۲ تا ۳۰): انتشار یعنی در دسترس، نه بینقص
روز ۲۲ تا ۲۴ صفحهی فرود ساخته میشود: یک جملهی توضیح، یک تصویر از محصول واقعی (نه ماکاپ)، یک دکمه. اگر آن یک جمله را ندارید، مشکل از صفحهی فرود نیست.
روز ۲۵ تصمیم پول: یا از همان ابتدا پرداخت واقعی دارید — حتی با مبلغ کم — یا اصلاً پولی نیست و فقط فهرست انتظار جمع میکنید. حالت «بعداً پولی میشود» بدترین گزینه است، چون هیچوقت نمیفهمید کسی حاضر بود پول بدهد یا نه. این یک قضاوت شخصی است، ولی قضاوتی که بارها به آن برمیگردید.
روز ۲۶ و ۲۷ برای کارهای کسلکنندهای است که نبودشان روز سیویکم را خراب میکند:
- بکاپ خودکار روزانهی دیتابیس، و یک بار بازگرداندن آزمایشی؛ بکاپی که تست نشده بکاپ نیست.
- ثبت خطاها در یک جای واحد با اطلاعرسانی به خودتان، تا کاربر اولین کسی نباشد که خبر خرابی را میدهد.
- یک مسیر سلامت ساده که هر روز صبح چک میشود.
- یک آدرس ایمیل پشتیبانی واقعی که خودتان میخوانید و همان روز جواب میدهید.
مسیر سلامت لازم نیست چیز پیچیدهای باشد؛ همین که بالا بودن سرویس و اتصال دیتابیس را تأیید کند کافی است:
curl -s -o /dev/null -w "%{http_code}n" https://your-app.ir/health
روز ۲۸ فریز است: هیچ قابلیت جدیدی اضافه نمیشود، فقط متنها، پیامهای خطا و حالتهای خالی صیقل داده میشوند. روز ۲۹ به سی نفر تکبهتک پیام بدهید؛ سی پیام شخصی معمولاً بیشتر از یک اعلان عمومی در یک کانال جواب میدهد. روز ۳۰ منتشر میکنید و مینشینید تماشا: لاگ خطا باز، ایمیل باز، و یک فایل خالی برای نوشتن هر چیزی که کاربران میگویند.
چه چیزی میماند و چه چیزی میافتد
بیشتر شکستهای یک نقشه راه ۳۰ روزه ساخت محصول از ناتوانی فنی نمیآید، از بزرگشدن بیصدای دامنه میآید. این جدول همان تصمیمهایی است که معمولاً در هفتهی دوم گرفته میشوند و سرنوشت روز سیام را رقم میزنند:
| بخش | نسخهی ۳۰ روزه | چیزی که وسوسه میشوید بسازید |
|---|---|---|
| ورود کاربر | ایمیل و رمز، یا ورود با گوگل | ورود با شماره + پیامک + احراز دومرحلهای |
| مدیریت | کوئری مستقیم روی دیتابیس | پنل ادمین با نمودار و نقشهای دسترسی |
| پرداخت | یک درگاه، یک پلن | اشتراک چندسطحی، کد تخفیف، فاکتور |
| ظاهر | یک قالب آماده با رنگ و فونت خودتان | دیزاینسیستم اختصاصی |
| اطلاعرسانی | یک ایمیل ساده | اعلان درونبرنامهای و پوش نوتیفیکیشن |
ستون سمت راست بد نیست؛ فقط جای آن این ماه نیست. هر ردیفی که از ستون وسط به ستون راست سُر بخورد، چند روز از تقویمی برمیدارد که فقط سی روز دارد.
نشانههای اینکه از مسیر خارج شدهاید
خارجشدن از مسیر معمولاً با یک تصمیم بزرگ اتفاق نمیافتد، با چند روز آرام و پرمشغله اتفاق میافتد. این نشانهها را جایی بنویسید که هر روز ببینید:
- چهار روز است چیزی منتشر نکردهاید؛ یعنی روی چیزی کار میکنید که بزرگتر از یک روز است. کوچکش کنید.
- در حال بازنویسی بخشی هستید که هیچ کاربری ندیده. بازنویسی قبل از کاربر، تقریباً همیشه حدسزدن است.
- فهرست کارها از هفتهی اول بلندتر شده؛ یعنی دامنه بیسروصدا باز شده است.
- در یک هفته بیش از دو ابزار یا سرویس جدید اضافه کردهاید. هر ابزار یعنی یک پیکربندی، یک حساب و یک نقطهی خرابی تازه.
- نمیتوانید در یک جمله بگویید کاربر امروز چه کاری میتواند بکند که دیروز نمیتوانست.
- به دستیار میگویید «همهی اینها را درست کن» بهجای یک تغییر مشخص؛ یعنی خودتان هم دیگر نمیدانید دقیقاً چه میخواهید.
درمان هر شش مورد یکی است: برگردید سر کاغذ روز صفر، جمله و چهار قدم را بخوانید و بپرسید کار این هفته کدام قدم را جلو برده است. اگر هیچکدام، آن کار را کنار بگذارید — نه اینکه بد بوده، این ماه جایش نبوده. برای تمرین همین چرخه روی یک پروژهی واقعی و با بازخورد، فهرست دورهها نقطهی شروع خوبی است.
روز سیویکم
آنچه روز سیویکم دارید احتمالاً زشت است، سه قابلیت کم دارد و چند کاربر اول هم گلایههایی داشتهاند. در عوض چیزی دارید که بیشتر ایدهها هرگز به آن نمیرسند: یک آدرس اینترنتی که کار میکند، چند نفر که از آن استفاده کردهاند، و فهرستی از مشکلات واقعی بهجای حدس. سی روز بعدی دیگر نقشه راه ۳۰ روزه ساخت محصول نیست؛ نقشهی بهترکردن چیزی است که وجود دارد — و آن کار بهمراتب سادهتر است.
جزئیات هرکدام از این قدمها — از انتخاب ابزار تا نحوهی حرفزدن با دستیار — را در مطالب بلاگ با نمونههای مشخص دنبال میکنیم.
مهندس نرمافزار و مدرس وایب کدینگ. بیش از ۱۰ سال تجربه ساخت محصولات وب، و سه سال تمرکز روی ساخت محصول با ابزارهای هوش مصنوعی. تا امروز بیش از ۴٬۰۰۰ نفر در دورههایش شرکت کردهاند.
خواندن ادامه دهید
همه مقالههاامنیت اپلیکیشن ساختهشده با هوش مصنوعی؛ شش کاری که هنوز به عهدهی توست
شش کاری که دستیار هوش مصنوعی از دوش تو برنمیدارد — کلیدها، ورود کاربر، دسترسیها، خواندن کد، بکاپ و آپدیت — بهعلاوهی…
مدلسازی داده برای کسی که برنامهنویس نیست
چهار ایدهٔ پایهٔ پایگاه داده — جدول، کلید، رابطه و شکل داده — با یک مثال کامل از سامانهٔ نوبتدهی، تا ساختار…
وایب کدینگ چیست و چرا مسیر ساخت محصول را عوض کرد
وایب کدینگ نه پایان برنامهنویسی است و نه اسباببازی؛ روشی است با مرزهای مشخص: چه چیزی را به دستیار بسپاری، کجا خودت…