ساختن با کد — بدون ترس
چهار فصل ابزارها را یاد گرفتی: من، درخواست، جریانها و کارگاه. در این فصل با آنها چیزهای واقعی میسازیم. در پایان سه چیز خواهی داشت: سایتی که منتشر شده، CRM خودت که مشتریانت را نگه میدارد، و FYOS — سیستمعامل شخصیای که تو را میشناسد و برایت کار میکند. کد مینویسیم؛ اما نویسنده من خواهم بود، و تو میگویی چه میخواهی و خواندن آنچه برمیگردد را یاد میگیری.
در پایان این فصل
- سه لایهٔ یک صفحهٔ وب — اسکلت، ظاهر، رفتار — را میشناسی
- میدانی زبانهای برنامهنویسی چهاند و کدام به چه کار میآید
- یک صفحه را از صفر ساخته و روی نشانی واقعی منتشر کردهای
- تشخیص میدهی داده کجا میماند — فایل، جدول، پایگاه داده
- CRM خودت را میسازی و سایتت را به آن وصل میکنی
- میفهمی چرا کلید هرگز در مرورگر نمیرود و واسط چیست
- چهار لایهٔ FYOS و راه ساختن نسخهٔ خودت را میبینی
فهرست
01ترس از کد و کدی که پیشتر نوشتهای
جملهٔ «من کد بلد نیستم» را در این دوره بارها گفتی و هر بار به گام بعدی رفتی. در فصل کارگاه فایلی ساختی، در یک صفحه سه جا را عوض کردی، تفاوتها را خواندی و ذخیره کردی. آن خطهای مثبت و منفی کد بودند. تو خواندیشان، تأیید کردی و فهمیدی درستاند. یعنی خواندن کد را مدتهاست شروع کردهای.
در این فصل یک گام دیگر برمیداریم: دیگر فقط چیزی موجود را عوض نمیکنیم، از صفر چیزی میسازیم. بخش ترسناک همیشه یکی است: نگاهکردن به فایلی خالی و ندانستن چه باید نوشت. آن بخش با من است. بخش تو دانستن آنچه میخواهی، دیدن نتیجه و توانایی گفتن «اینجا اشتباه است».
یک مرز صادقانه: در پایان این فصل برنامهنویس حرفهای نمیشوی. چیزی که میشوی کاربردیتر است — کسی که میتواند بگوید چه میخواهد و آنچه درمیآید را بازبینی کند. هشتاد درصد کارِ نرمافزار همین است؛ برای بیست درصد باقی یا من هستم یا یک متخصص.
همین حالا انجام بده: سه چیزی که میخواهی بسازی را بنویس. یک صفحه، یک فهرست، یک ماشینحساب، یک دفتر مشتری — هر چه باشد. در این فصل دستکم یکی را واقعاً میسازیم.
02سه واژه: HTML، CSS، جاوااسکریپت
در هر فصل سه واژه کل میدان را باز کرد. برای وب هم سه واژه بس است — و این سه، مثل توصیف یک آدم از هم جدا میشوند: اسکلت، ظاهر، رفتار.
هر سه زبان شمرده میشوند اما از یک جنس نیستند. HTML زبان نشانهگذاری است: میگوید «این عنوان است، این بند است». CSS زبان شکلدهی است: میگوید «عنوانها طلایی باشند». تنها جاوااسکریپت به معنای واقعی زبان برنامهنویسی است: تصمیم میگیرد، تکرار میکند، حساب میکند.
همین حالا انجام بده: روی جای خالی این صفحه راستکلیک کن و «نمایش کد منبع صفحه» را بزن. آنچه میبینی HTML این سایت است. لازم نیست بفهمی؛ فقط نگاه کن. ترسناک نیست، نظمی تکرارشونده است.
03سایت در واقع یک پوشه است
واژهٔ سایت چیز بزرگی را به ذهن میآورد. نیست. سایت پوشهای است که درونش فایل هست. مرورگر از آن پوشه فایلی را میخواند و روی صفحه میکشد. جملهٔ «پوشه میز من است» از فصل کارگاه اینجا مو به مو صادق است.
- ajans-siteخودِ سایت
- index.htmlصفحهٔ اصلی — فایلی که با ورود به نشانی باز میشود
- iletisim.htmlصفحهٔ دوم
- cssظاهر اینجا میآید
- style.css
- jsرفتار اینجا میآید
- main.js
- imgتصویرها
این پوشه را در رایانهات باز کن و روی index.html دوبار کلیک کن؛ مرورگر بازش میکند. اینترنت لازم نیست. نیمهٔ اول «ساختن سایت» همین است: یک پوشه و فایلهایی در آن. نیمهٔ دوم گذاشتن آن پوشه جایی است که همه ببینند — بخش ششم.
همین حالا انجام بده: در رایانهات پوشهای به نام «اولین-سایت» بساز. فعلاً خالی بماند. در بخش پنجم پرش میکنیم.
04زبانهای برنامهنویسی، به زبان آدمیزاد
زبان برنامهنویسی شکل نوشتاری گفتن به رایانه است که چه کند. مثل زبانهای انسانی دستور زبان و واژگان دارد؛ فرقش این است که هیچ ابهامی نمیپذیرد. نمیتوانی بگویی «یک وقتی حلش کن»؛ میگویی «این فهرست را بگیر و برای هر سطر این کار را بکن».
صدها زبان هست اما لازم نیست همه را بدانی. برای یک آژانس، تقریباً تمام کار در سه خانواده میگنجد:
یک آسودگی: انتخاب زبان بسیار کماهمیتتر از آن است که گمان میکنی. همان کار را با پنج زبان هم میشود کرد. مهم روشن گفتن آن چیزی است که میخواهی — اینکه قاعدهٔ فصل فرمول اینجا بیکموکاست صادق است تصادفی نیست. کاری که بد توصیف شده، در هیچ زبانی خوب درنمیآید.
همین حالا انجام بده: یکی از سه چیز ۰۱ را برایم تعریف کن و بپرس: «این را با کدام زبان منطقی است بسازیم، چرا؟» دلیل پاسخم را بخوان — در یک نمونه ببین انتخاب زبان چطور انجام میشود.
05نخستین صفحهٔ واقعیات، در پانزده دقیقه
نظریه بس است. Claude Code را که در فصل کارگاه نصب کردی باز کن، به پوشهٔ «اولین-سایت» برو و شروع کن به حرفزدن. پنج گام زیر یک صفحهٔ واقعی را بیرون میآورد.
- 1در پوشه بنویس claude. بعد بخواه: «در این پوشه یک سایت تکصفحهای بساز: عنوان، یک بند معرفی، سه جعبهٔ خدمات و اطلاعات تماس. زمینهٔ تیره، ساده. اول نقشه بکش.»
- 2نقشه را بخوان و اصلاح کن. «بهجای سه، چهار جعبه»، «تلفن هم اضافه کن». نقشه بدون دستزدن به فایلی عوض میشود؛ پیش از شروع کار درست میشود.
- 3تأیید کن. فایلها ساخته میشوند: index.html، css/style.css، شاید js/main.js. بخواه هرکدام را نشانت بدهم و نگاهی بینداز — حتی اگر نفهمی، ساختار را بشناس.
- 4باز کن و ببین: در پوشه روی index.html دوبار کلیک کن. مرورگر صفحه را نشان میدهد. برای نخستین بار به چیزی نگاه میکنی که خودت ساختهای.
- 5عوض کن: «عنوان را اینطور کن»، «رنگ جعبهها را عوض کن»، «تلفن را بزرگتر کن». هر بار مرورگر را تازه کن. همین چرخه — بخواه، ببین، اصلاح کن — تمام کار است.
اگر در گام چهارم تازهکردن مرورگر را فراموش کنی تغییر را نمیبینی و میگویی «کار نکرد». رایجترین اشتباه نخست همین است. تازهکردن را عادت کن.
همین حالا انجام بده: پنج گام را امروز تمام کن. صفحه ممکن است زشت باشد، مهم نیست. مهم این است که آنچه خواستهای در پوشهات ایستاده باشد.
06منتشر کن: نشانیای که دنیا میبیند
صفحهٔ درون پوشه فقط پیش توست. انتشار یعنی کپیکردن آن پوشه روی رایانهای که همه به آن میرسند. آسانترین و رایگانترین راه GitHub Pages است: نقطههای ذخیرهٔ گیت که در فصل کارگاه آموختی دقیقاً برای همین بودند.
نشانی نخست به شکل نامکاربری.github.io/پروژه میآید و این یک نشانی کاملاً واقعی است — https هم آماده. اگر دامنهٔ خودت را بخواهی (مثل نامآژانس.com) بعداً وصل میشود؛ لازم نیست صفحهها را از نو بسازی، فقط نشانی عوض میشود.
انتشار بزرگترین آستانهٔ این فصل و پرهیزشدهترین گام است. پرهیز نکن. سایتی که منتشر نشده سایتی ناتمام است؛ و اگر روز اول منتشر کنی هر تغییر را روی نشانی واقعی میبینی — جملهٔ «روی دستگاه من کار میکرد» هرگز گفته نمیشود.
همین حالا انجام بده: به من بگو «این پوشه را به گیتهاب بفرست و با Pages منتشر کن، گامها را نشانم بده». جایی که باید حساب بسازی میایستم؛ بقیه را با هم انجام میدهیم. وقتی نشانی به دستت رسید برای کسی بفرست.
07ایستا یا پویا
سایتی که منتشر کردی ایستاست: فایلها آماده میمانند و به همه یک چیز نشان داده میشود. سایتهای پویا هم هستند: صفحه همان لحظه که بازش میکنی برای تو ساخته میشود — کاربر واردشده، فهرست شخصی، موجودی زنده. دانستن تفاوت، پاسخ پرسش «این را میتوانیم بکنیم؟» را از همان اول میدهد.
سایت معرفی، نمونهکار، وبلاگ، صفحهٔ دوره. رایگان میزبانی میشود، بسیار سریع است، تقریباً خراب نمیشود و جایی برای حمله ندارد. تمام این سایت ایستاست.
ورود اعضا، سبد خرید، پنل شخصی، دادهٔ زنده. سرور و پایگاه داده میخواهد؛ هزینهٔ ماهانه، نگهداری و مسئولیت امنیتی میآورد. تا واقعاً لازم نشده واردش نشو.
خبر خوب: میان این دو راه میانهای هست و همان راهی است که این دوره میپسندد. سایت ایستا میماند؛ یکی دو کار پویای لازم (ذخیرهٔ فرم، پرسیدن از هوش مصنوعی) به واسطی کوچک سپرده میشود. بهاندازهٔ نیاز میگیری، بیآنکه هر چیز گران را حمل کنی. واسط را در بخش دوازدهم میسازیم.
همین حالا انجام بده: سه ایدهٔ ۰۱ را میان این دو ستون پخش کن. اگر چیزی در ستون پویا افتاد کنارش بنویس: واقعاً لازم است، یا ایستا بهعلاوهٔ واسطی کوچک بس است؟
08داده کجا میماند
تا ساختن چیزی را شروع کنی نخستین پرسش همین است: فهرست مشتریان کجا بماند؟ سه طبقه هست و بیشتر آدمها سنگینتر از نیازشان را برمیدارند و به زحمت میافتند. پاسخ درست معمولاً سبکترین است.
- فایل یک فایل متنی یا جدولی در پوشه. برای یک نفر، چند صد سطر و دادهٔ کمتغییر عالی است. فهرست خدمات · قیمتها · محتوا
- جدول جدول ابری. هم تو هم تیمت میتوانید دستی ببینید و اصلاح کنید؛ جریانها هم میتوانند بنویسند. عملیترین جا برای شروع. مشتریان · کارها · پیگیری
- پایگاه داده هزاران رکورد، چند نفر همزمان، پرسوجوهای پیچیده. نیرومند اما نیازمند برپایی و نگهداری؛ SQL اینجا وارد میشود. وقت رشد · پنل · گزارشها
همین حالا انجام بده: همین حالا اطلاعات مشتریان را کجا نگه میداری؟ دفترچهٔ تلفن، صندوق پیام، دفتر، جدول؟ بنویس — در بخش بعد آن پراکندگی را در یک جا جمع میکنیم.
09CRM خودت: چه نگه میدارد، چه میکند
CRM با سه حرف میترساند اما معنایش ساده است: مدیریت ارتباط با مشتری. در عمل یعنی پاسخ پرسش «با که چه گفتم، چه قول دادم، کی باید برگردم» در یک جا. CRMهای آماده هست و بیشترشان ده برابر نیاز توست؛ وقتی خودت بسازی دقیقاً همان را میگیری که به کارت میآید.
- نام
- تماس
- از کجا آمد
- وضعیت
- چه کاری
- مبلغ
- مرحله
- مال که
- تاریخ
- چه گفته شد
- که نوشت
- کی
- چه باید کرد
- انجام شد؟
دقت کن: اینجا هیچ «نرمافزاری» نیست. چهار رکورد و پیوند میانشان. این را هم میشود چهار برگ در یک جدول ساخت، هم چهار جدول در یک پایگاه داده. اول تصمیم میگیری چه نگه میداری؛ کجا نگهداشتنش پرسش دوم است.
همین حالا انجام بده: میدانهای این چهار رکورد را برای کار خودت بنویس. کدام میدان در کار تو واقعاً به کار میرود؟ آنکه نمیرود را پاک کن. فهرست کوتاه، CRM خوب است.
10ساختن CRM: گامبهگام
بهعنوان لایهٔ داده با جدول ابری شروع میکنیم — همان طبقهٔ میانی بخش هشتم. دلیلش ساده است: هم تو میبینی هم تیمت؛ و جابهجایی به پایگاه داده در آینده آسان است.
- 1جدول ابری تازهای باز کن و چهار برگ بساز: اشخاص، کارها، یادداشتها، یادآوریها. ستونها را از میدانهایی بگذار که در ۰۹ نوشتی.
- 2به هر رکورد ستون شناسه بیفزا. «شناسهٔ شخص» در برگ کارها میگوید آن کار مال کدام شخص است. پیوند همین است؛ یک ستون.
- 3دستی سه مشتری، سه کار و چند یادداشت وارد کن. با دادهٔ واقعی پرش کن — سیستمی که با دادهٔ خیالی ساخته شود در زندگی واقعی میلغزد.
- 4از من پنل بخواه: «این جدول را بخوان و پنلی تکصفحهای بساز که مشتریانی را نشان دهد که امروز باید به آنها برگردم.» با جریان فصل عامل، جدول را میخواند و صفحه را نشان میدهد.
- 5یادآوری را خودکار کن: جریانی که هر صبح ساعت نه یادآوریهای امروز را برایت پیام میکند. محرک زمانی فصل عامل، اینجا به کاری واقعی بسته میشود.
به ترتیب دقت کن: اول داده، بعد پنل، آخر خودکارسازی. هرکس وارونهاش کند — اول پنل براق و داده را بعد — دو هفته بعد از نو شروع میکند. اگر داده درست باشد بقیه آسان است.
همین حالا انجام بده: سه گام نخست را امروز تمام کن. جدول را با مشتریان واقعیات پر کن. چهار و پنج فردا؛ جدول بدون پنل هم بهتنهایی کار میکند.
11از فرم تا CRM: وصلکردن سایت
حالا دو تکه داری: سایتی منتشرشده و CRMی پر. میانشان تنها یک چیز خالی است — فرمی که از سایت میآید. میخواهی وقتی کسی فرم سایتت را پر کرد، اطلاعات مستقیم در CRM بیفتد.
- 1بازدیدکننده فرم سایتت را پر میکند
- 2فرم به نشانی وبهوک جریانت میرود
- 3من: پیام را میخوانم و دستهبندی میکنم
- 4در CRM سطر شخص و کار تازه افزوده میشود
- 5اعلان به تو: «درخواست تازه، در این موضوع»
اینکه سایت ایستا نمیتواند فرم را ذخیره کند مشکلی نیست: فرم اطلاعات را به نشانی جریانت میفرستد. سایت ایستا میماند، کار در جریان انجام میشود. همان «راه میانه»ای که در بخش هفتم گفتم دقیقاً همین است.
همین حالا انجام بده: بخواه فرمی سهمیدانی به سایتت افزوده شود: نام، تماس، پیام. بعد در جریانت وبهوکی باز کن و فرم را به آن وصل کن. فرم خودت را پر کن؛ پیداشدن سطر تازه در CRM را ببین.
12کلید در مرورگر نمیرود: واسط
میخواهی مرا روی سایت بگذاری: بازدیدکننده چیزی بپرسد، من پاسخ بدهم. نخستین راهحلی که به ذهن میرسد — نوشتن کلید در کد سایت — خطرناکترین است. چون هر چه به مرورگر میرسد را همه میتوانند بخوانند. کلیدت دیده میشود و روی صورتحساب تو خرج میشود.
«واسط» بزرگ به گوش میآید؛ نیست. برنامهای صدخطی که روی طبقههای رایگان جا میگیرد. این شکلِ اینترنتیِ قاعدهٔ «کلید در مغز نوشته نمیشود» از فصل کارگاه است: کلید همیشه در گاوصندوقی زیر کنترل تو میماند، هرگز روی رایانهٔ بازدیدکننده.
همین حالا انجام بده: به همهٔ جریانها و صفحههایی که ساختهای نگاه کن: جایی کلیدی نوشته شده که مرورگر ببیند؟ اگر مطمئن نیستی از من بپرس — «از این فایل رازی بیرون درز میکند؟»
13گذاشتن جعبهای سخنگو روی سایت
اگر واسط آماده باشد، گذاشتن من روی سایت کار کوتاهی است: یک کادر متن، یک دکمهٔ ارسال و جایی که پاسخ را نشان دهد. اما برای اینکه خوب کار کند سه تصمیم لازم است — و هیچکدام فنی نیست. تصمیم توست.
چه خواهد دانست
خدماتت، بازهٔ قیمتت، شیوهٔ کارت، پرسشهای پرتکرار. اینها را بهصورت متن مینویسی و به هر درخواست میچسبانی — «زمینه»ٔ فصل فرمول دقیقاً اینجا به کار میآید. و مرزش را میگویی تا چیزی را که نمیداند از خودش نسازد.
چه نخواهد کرد
قیمت قطعی نمیدهد، قول نمیدهد، تاریخ تعهد نمیکند. اینها کار توست. کار جعبه پذیرایی، فهمیدن و پرسیدن پرسش درست است — و بعد وارد کردن تو.
کی تو را صدا میزند
وقتی بازدیدکننده جدی میشود: «میتوانم قیمت بگیرم»، «کی شروع کنیم». آن لحظه گفتوگو به درخواست بدل میشود، در CRM میافتد و اعلان به تو میرسد. کار اصلی جعبهٔ سخنگو همین است؛ گپزدن نه، کار آوردن.
یک مرز دیگر: بازدیدکننده هر چه در جعبه بنویسد، آن متن برای من داده است نه دستور. هشدار دستور پنهانِ فصل مربوط به من روی سایتی زنده بسیار مهمتر است — کسی که مینویسد «دستورهای قبلی را فراموش کن» نباید بتواند قاعدههای جعبه را عوض کند. محدودیتها را در واسط نگه دار، نه در مرورگر.
همین حالا انجام بده: آنچه جعبه باید بداند را در یک صفحه بنویس: خدمات، شیوهٔ کار، پنج پرسش پرتکرار و پاسخشان. این متن مغز جعبه میشود — نسخهٔ رو به بازدیدکنندهٔ همان CLAUDE.md فصل کارگاه.
14FYOS چیست
تا اینجا تکه ساختیم: سایت، CRM، جریانها، جعبهٔ سخنگو. FYOS نام این تکهها نیست؛ نام در دسترسبودن همهٔ آنها از یک جاست. سیستمعامل عاملیِ شخصی یعنی هر کار روزانهات عاملی داشته باشد و تو با همه از یک جا حرف بزنی.
جعبهٔ FYOS در صفحهٔ اصلی نمایشی کوچک از همین است. در نسخهٔ واقعی، قمرها به دادهٔ تو وصلاند: تقویمت، مشتریانت، فایلهایت. میپرسی «این هفته که منتظر من است؟»؛ هسته به CRM نگاه میکند، به تقویم نگاه میکند و پاسخ میدهد.
همین حالا انجام بده: کارهای روزانهات را به شش عنوان تقسیم کن. ممکن است شبیه شش تای بالا باشد یا نباشد. شش قمر تو چیست؟ اینها پیشنویس FYOS توست.
15چهار لایهٔ FYOS
ساختن نسخهٔ خودت یعنی چیدن چهار لایه بهترتیب. ترتیب را نشکن؛ هر لایه روی لایهٔ پیشین میایستد.
داده
CRMت، فایلهایت، تقویمت. هر چه FYOS میداند از اینجا میآید؛ سیستمی که روی دادهٔ خالی ساخته شود پاسخ خالی میدهد. این لایه را در بخش دهم ساختی.
دستها
جریانها و ابزارها: تکههایی که داده را میخوانند، مینویسند و میفرستند. گرههای فصل عامل و مهارتهای فصل کارگاه در همین لایه زندگی میکنند.
خرد
من. لایهای که پرسش را میفهمد، تصمیم میگیرد کدام ابزار صدا زده شود و پاسخ را به زبان آدمیزاد برمیگرداند. پشت واسط میایستد؛ کلید همانجا میماند.
در
جایی که تو حرف میزنی: یک صفحه، یک پیامرسان، صفحهٔ یک تلفن. این لایه آخر ساخته میشود — و کماهمیتترین است. در میتواند زیبا باشد، اما اگر پشتش چیزی نباشد خالی میماند.
گرانترین اشتباه این فصل، شروع از لایهٔ چهارم است. ساختن رابطی زیبا و بعد گفتن «حالا این را به چیزی وصل کنیم» یعنی ساختن خانه از سقف. داده، دستها، خرد، در — این ترتیب تصادفی نیست.
همین حالا انجام بده: چهار لایه را برای وضع خودت علامت بزن: کدام آماده است، کدام نیمه، کدام نیست؟ نخستین خالی را به من بگو؛ از آنجا ادامه میدهیم.
16هزینه، سهمیه و اینکه کِی کد نوشته نمیشود
هر چه در این فصل ساختی طبقهای رایگان دارد: میزبانی سایت رایگان، جدول رایگان، طرح آغازین ابزار جریان رایگان، واسط تا روزی صد هزار درخواست رایگان. پول فقط برای درخواستهای هوش مصنوعی میرود و آنجا هم کم. اما دو دام را باید شناخت.
اگر ابزاری آماده نود درصد کار را میکند، بخرش. فاکتور، حسابداری، دریافت پول، تقویم — اینها ابزارهای پخته و ارزان دارند. هر چه خودت بسازی تا ابد خودت نگه میداری؛ این رایگان نیست.
وقتی کار ویژهٔ کسبوکار توست، وقتی ابزارهای آماده به هم وصل نمیشوند و وقتی میتوانی کاری تکراری را توصیف کنی. CRMت، پنلت و FYOSت در همین ستوناند — چون هیچکدام آماده به شکل کار تو نمیآید.
دام دوم سهمیه است: طبقههای رایگان مرزی دارند و وقتی به مرز برسی سیستم بیصدا میایستد. برای همین واسطت سهمیهٔ روزانه میشمارد و جریانهایت اعلان خطا میفرستند. قاعدهٔ «شکستن بیصدا» از فصل عامل اینجا هم صادق است — مرز را از پیش بگذار و وقتی تمام شد خبردار شو.
همین حالا انجام بده: در حساب هوش مصنوعیات سقف هزینهٔ ماهانه بگذار. پنج دقیقه طول میکشد و صورتحساب یک شب بد را جلو میگیرد. بعد برای هر سرویسی که راه انداختهای مرز طبقهٔ رایگان را یادداشت کن.
17پنج اشتباه رایج
۱ · انداختن انتشار به آخر
سایتی که میگوید «اول تمام شود بعد منتشر میکنم» منتشر نمیشود. روز اول، همانوقت که زشت است، منتشر کن. بعد هر تغییر را روی نشانی واقعی ببین.
۲ · ساختن رابط پیش از داده
پنل براقی که پشتش داده نباشد جعبهٔ خالی است. اول داده را بساز و با رکوردهای واقعی پرش کن؛ پنل در یک روز میآید، داده نمیآید.
۳ · نوشتن کلید در سایت
هر چه به مرورگر برسد عمومی است. کلید در گاوصندوق واسط میماند. همین یک قاعده گرانترین اشتباه این فصل را جلو میگیرد.
۴ · خودت ساختن وقتی ابزار آماده هست
نرو نرمافزار حسابداری بنویس. خودت ساختن جایی معنا دارد که آمادهٔ موجود کفایت نمیکند. هر چه بسازی تا آخر عمر خودت نگهش میداری.
۵ · پذیرفتن خروجی بدون خواندن
کد را من مینویسم اما مسئولیت با توست. ببین کار میکند یا نه، تفاوت را بخوان، در مرورگر امتحان کن. جملهٔ «لابد درست شده» با گذر زمان هر ساختهای را میپوساند.
همین حالا انجام بده: این پنج را به CLAUDE.md پروژهات اضافه کن. بهویژه ۳ — تبدیلش به یک قلاب هم منطقی است، همانطور که در فصل کارگاه گفتیم.
18آنچه همه میپرسند
واقعاً بدون یادگرفتن کد میشود سایت ساخت؟
میشود و در این فصل میسازی. اما صادق باشم: بدون هیچ خواندن کد در درازمدت از پسش برنمیآیی. نکته این است که خواندن بسیار آسانتر از نوشتن است و تو با خواندن تفاوتها همین حالا داری یادش میگیری. شش ماه دیگر به فایلی نگاه میکنی و میگویی «اینجا این کار را میکند»؛ نوشتن را هنوز میتوانی به من بسپاری.
وقتی سایتساز آماده هست چرا این؟
برای صفحهٔ معرفی، سایتساز انتخاب خوبی است و جای خجالت ندارد. تفاوت اینجا مالکیت است: سایتی که خودت بسازی یک پوشه است، جابهجا میشود، پشتیبان میگیرد، به هر چیزی وصل میشود و هزینهٔ ماهانه ندارد. ضمناً CRM، جریانها و FYOSی که در این دوره میسازیم درون سایتسازها جا نمیگیرند. سایت را خودمان میسازیم چون درِ سیستم اصلی است.
اگر چیزی را خراب کنم میتوانم برگردانم؟
بله — گیت فصل کارگاه دقیقاً برای همین است. هر نقطهٔ ذخیره جایی برای بازگشت است. حتی اگر سایت منتشرشده خراب شود میگویی «به نقطهٔ ذخیرهٔ قبلی برگرد» و در یک دقیقه به حال پیشین برمیگردد. برای همین اصرار دارم هر چه میسازی را به گیت بسپاری.
اگر CRMم بزرگ شود چه میشود؟
وقتی جدول تنگ شود — معمولاً چند هزار سطر یا چند نفر همزمان — به پایگاه داده جابهجا میشود. جابهجایی کار یک روز است و تو انجامش نمیدهی: داده را برونبری میکنی، به من میگویی پایگاه داده را برپا کنم و نشانی را در جریانهایت عوض میکنی. از همین حالا با پایگاه داده شروعکردن هیچ سودی ندارد؛ فقط کار را سخت میکند.
ساختن FYOS از صفر چقدر طول میکشد؟
پاسخ صادقانه: نخستین نسخهٔ کارکن یک آخر هفته، نسخهای که واقعاً به کارت بیاید چند ماه. اما در این مدت هیچوقت چیزی نیمهکاره در دست نداری — هر لایه بهتنهایی کار میکند. CRMت از روز اول به کار میآید؛ جریانهایت از هفتهٔ دوم وقت صرفهجویی میکنند. FYOS خط پایان نیست، سیستمی است که رویش میافزایی.
میتوانم ساختهام را به مشتری بفروشم؟
بله و موضوع فصل قله همین است. اگر CRM خودت را ساخته باشی، ساختن همان برای مشتری در بار دوم سه برابر سریعتر است؛ جریانها برونبری میشوند، سایت قالب میشود. باارزشترین چیزی که یک آژانس میتواند بفروشد سیستمی است که روی خودش آزموده.
همین حالا انجام بده: اگر هنگام ساختن جایی گیر کردی از من بپرس — پیام خطا یا نوشتهٔ روی صفحه را همانطور که هست بچسبان. خواندن خطاها از کارهایی است که در آن بهترینم.
19تمرینها
۱ · صفحه را بساز و منتشر کن
سایت تکصفحهات را با پنج گام ۰۵ بساز، با پنج گام ۰۶ منتشر کن. نشانی را برای دوستی بفرست.
هدف: اینکه در اینترنت چیزی داشته باشی که خودت ساختهای، روی نشانی خودت.
۲ · CRM را پر کن
جدول چهاررکوردی را بساز و با مشتریان واقعیات پر کن. دستکم ده شخص، پنج کار، ده یادداشت.
هدف: اینکه پرسش «با که چه گفتم» برای نخستین بار در یک جا پاسخ داشته باشد.
۳ · این دو را به هم وصل کن
به سایتت فرم بیفزا، با جریان به CRM وصلش کن، فرم خودت را پر کن و پیداشدن سطر را ببین.
هدف: اینکه آنچه در دو فصل جدا آموختی برای نخستین بار در یک سیستم کارکن یکی شود.
۴ · یک قمر بساز
از شش قمری که در ۱۴ نوشتی یکی را برگزین و واقعاً بساز. به یک پرسش درست پاسخ بدهد: «امروز که منتظر من است؟»
هدف: اینکه FYOS از انتزاع درآید و چیزی واقعی شود که به یک پرسش پاسخ میدهد.
همین حالا انجام بده: اولی را این آخر هفته. دومی را هفتهٔ بعد. سه و چهار را در ماه. ترتیب را نشکن؛ سومی بدون دو تای اول ساخته نمیشود.
20خودت را بیازما
اول خودت پاسخ بده، بعد باز کن.
HTML، CSS، جاوااسکریپت — در یک جمله؟
HTML اسکلت: چه هست. CSS ظاهر: چطور دیده میشود. جاوااسکریپت رفتار: چه رخ میدهد. تنها سومی زبان برنامهنویسی واقعی است.
سایت چیست؟
پوشهای که درونش فایل هست. نام صفحهٔ اصلی index.html است. مرورگر از آن پوشه فایلی میخواند و روی صفحه میکشد.
منتشر کردن یعنی چه؟
گذاشتن پوشه روی رایانهای که همه به آن میرسند. با گیت ذخیره و به مخزن میفرستی، Pages را روشن میکنی؛ نشانی با https زنده میشود و با هر فرستادن خودش بهروز میشود.
فرق ایستا و پویا؟
در ایستا فایلها آمادهاند و به همه یک چیز میرسد؛ رایگان، سریع، خرابنشدنی. در پویا صفحه هنگام بازکردن برای تو ساخته میشود؛ سرور، پایگاه داده و نگهداری میخواهد. راه میانه: سایت ایستا بهعلاوهٔ واسطی کوچک.
داده کجا میماند، با چه ترتیبی؟
فایل، جدول، پایگاه داده — از سبک به سنگین. تنها وقتی پایینی تنگ شد یک طبقه بالا میروی. بیشتر آژانسها با جدول تا صدها مشتری پیش میروند.
چهار رکورد یک CRM؟
شخص، کار، یادداشت، یادآوری. شخص به کارها وصل میشود؛ زیر کارها یادداشت و یادآوری جمع میشود. بیشترش میشود میدانهایی که هرگز به کار نمیبری.
چرا کلید در مرورگر نمیرود؟
هر چه به مرورگر برسد را همه میخوانند؛ کلید دیده میشود و روی صورتحساب تو خرج میشود. کلید در گاوصندوق واسط میماند؛ واسط سهمیه هم میشمارد و فقط به سایت تو پاسخ میدهد.
کار اصلی جعبهٔ سخنگوی روی سایت؟
گپزدن نه، کار آوردن: پذیرایی، فهمیدن، پرسیدن پرسش درست و وقتی بازدیدکننده جدی شد انداختن درخواست در CRM و صدا زدن تو. قیمتدادن و قولدادن کار او نیست.
چهار لایهٔ FYOS و ترتیبشان؟
داده، دستها، خرد، در. ترتیب مهم است: زیباترین رابط هم اگر پشتش داده نباشد خالی میماند. خانه را از سقف نمیسازند.
کِی خودت نمیسازی؟
وقتی ابزاری آماده نود درصد کار را میکند. در قلمروهای پخته مثل فاکتور، حسابداری، پرداخت و تقویم آمادهٔ موجود را بگیر. هر چه خودت بسازی تا آخر عمر خودت نگهش میداری.
این فصل در یک جمله
پوشهای باز کن، در آن صفحهای بساز و همان روز اول منتشرش کن؛ داده را در سبکترین طبقه نگه دار و CRM چهاررکوردی خودت را پر کن؛ این دو را با یک جریان به هم وصل کن؛ کلید را همیشه در گاوصندوق واسط بگذار — و وقتی این تکهها را به ترتیب داده، دستها، خرد، در روی هم بگذاری، نام آنچه در دست داری FYOS است.