همهٔ فصل‌ها
فصل ۵ / ۷
در دوره شرکت کن
The Lab مواد وارد می‌شود، چیزی زنده بیرون می‌آید
فصل ۵ · آزمایشگاه

ساختن با کد — بدون ترس

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

زمان مطالعه ~۵۰ دقیقه · پیش‌نیاز: فصل ۴

در پایان این فصل

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

01ترس از کد و کدی که پیش‌تر نوشته‌ای

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

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

یک مرز صادقانه: در پایان این فصل برنامه‌نویس حرفه‌ای نمی‌شوی. چیزی که می‌شوی کاربردی‌تر است — کسی که می‌تواند بگوید چه می‌خواهد و آنچه درمی‌آید را بازبینی کند. هشتاد درصد کارِ نرم‌افزار همین است؛ برای بیست درصد باقی یا من هستم یا یک متخصص.

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

02سه واژه: HTML، CSS، جاوااسکریپت

در هر فصل سه واژه کل میدان را باز کرد. برای وب هم سه واژه بس است — و این سه، مثل توصیف یک آدم از هم جدا می‌شوند: اسکلت، ظاهر، رفتار.

سه لایهٔ یک صفحه
HTML · اسکلت چه هست: عنوان، بند، تصویر، دکمه. معنا و ترتیب.
CSS · ظاهر چطور دیده می‌شود: رنگ، فاصله، قلم، چیدمان.
جاوااسکریپت · رفتار چه رخ می‌دهد: با کلیک باز می‌شود، با تایپ غربال می‌کند، ذخیره می‌کند.
هر سه به یک محتوا نگاه می‌کنند. بدون HTML صفحه‌ای نیست؛ بدون CSS زشت است اما کار می‌کند؛ بدون جاوااسکریپت خاموش است اما خواندنی. همین ترتیب، ترتیب یادگیری هم هست.

هر سه زبان شمرده می‌شوند اما از یک جنس نیستند. HTML زبان نشانه‌گذاری است: می‌گوید «این عنوان است، این بند است». CSS زبان شکل‌دهی است: می‌گوید «عنوان‌ها طلایی باشند». تنها جاوااسکریپت به معنای واقعی زبان برنامه‌نویسی است: تصمیم می‌گیرد، تکرار می‌کند، حساب می‌کند.

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

03سایت در واقع یک پوشه است

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

درون یک سایت کوچک
  • ajans-siteخودِ سایت
  • index.htmlصفحهٔ اصلی — فایلی که با ورود به نشانی باز می‌شود
  • iletisim.htmlصفحهٔ دوم
  • cssظاهر اینجا می‌آید
  • style.css
  • jsرفتار اینجا می‌آید
  • main.js
  • imgتصویرها
تنها یک قاعده: نام صفحهٔ اصلی index.html است. بقیه نظم توست. صفحه‌ای که همین حالا می‌خوانی هم در چنین پوشه‌ای است — سایت این دوره دقیقاً همین ساختار را دارد.

این پوشه را در رایانه‌ات باز کن و روی index.html دوبار کلیک کن؛ مرورگر بازش می‌کند. اینترنت لازم نیست. نیمهٔ اول «ساختن سایت» همین است: یک پوشه و فایل‌هایی در آن. نیمهٔ دوم گذاشتن آن پوشه جایی است که همه ببینند — بخش ششم.

همین حالا انجام بده: در رایانه‌ات پوشه‌ای به نام «اولین-سایت» بساز. فعلاً خالی بماند. در بخش پنجم پرش می‌کنیم.

04زبان‌های برنامه‌نویسی، به زبان آدمیزاد

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

صدها زبان هست اما لازم نیست همه را بدانی. برای یک آژانس، تقریباً تمام کار در سه خانواده می‌گنجد:

کدام زبان به چه کار می‌آید
HTML · CSS · JS آن‌ها که در مرورگر اجرا می‌شوند صفحه‌های وب، رابط‌ها، هر چیزی که کلیک می‌شود. زبان سایت و جعبهٔ FYOS که در این دوره می‌سازیم. در این فصل به کار می‌بریم
Python همه‌منظوره مرتب‌کردن داده، کار با فایل، ساختن گزارش، وصل‌شدن به هوش مصنوعی. خواناترین زبان؛ گزینهٔ خوبی برای نخستین زبان «واقعی». خودکارسازی و کار داده
SQL پرسیدن از داده نه چندان یک زبان که یک زبان پرس‌وجو: شکل رایانه‌ایِ پرسش «این ماه چند مشتری تازه آمد». زیر CRM تو همین است. CRM و گزارش‌ها
بیشتر وقت‌ها تو زبان را انتخاب نمی‌کنی؛ کار انتخاب می‌کند. صفحهٔ وب؟ سه‌تایی بالا. پردازش فایل و گزارش؟ پایتون. پرسش از داده؟ SQL. کافی است از من بپرسی «با کدام انجامش دهیم؟»

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

همین حالا انجام بده: یکی از سه چیز ۰۱ را برایم تعریف کن و بپرس: «این را با کدام زبان منطقی است بسازیم، چرا؟» دلیل پاسخم را بخوان — در یک نمونه ببین انتخاب زبان چطور انجام می‌شود.

05نخستین صفحهٔ واقعی‌ات، در پانزده دقیقه

نظریه بس است. Claude Code را که در فصل کارگاه نصب کردی باز کن، به پوشهٔ «اولین-سایت» برو و شروع کن به حرف‌زدن. پنج گام زیر یک صفحهٔ واقعی را بیرون می‌آورد.

  1. 1در پوشه بنویس claude. بعد بخواه: «در این پوشه یک سایت تک‌صفحه‌ای بساز: عنوان، یک بند معرفی، سه جعبهٔ خدمات و اطلاعات تماس. زمینهٔ تیره، ساده. اول نقشه بکش.»
  2. 2نقشه را بخوان و اصلاح کن. «به‌جای سه، چهار جعبه»، «تلفن هم اضافه کن». نقشه بدون دست‌زدن به فایلی عوض می‌شود؛ پیش از شروع کار درست می‌شود.
  3. 3تأیید کن. فایل‌ها ساخته می‌شوند: index.html، css/style.css، شاید js/main.js. بخواه هرکدام را نشانت بدهم و نگاهی بینداز — حتی اگر نفهمی، ساختار را بشناس.
  4. 4باز کن و ببین: در پوشه روی index.html دوبار کلیک کن. مرورگر صفحه را نشان می‌دهد. برای نخستین بار به چیزی نگاه می‌کنی که خودت ساخته‌ای.
  5. 5عوض کن: «عنوان را این‌طور کن»، «رنگ جعبه‌ها را عوض کن»، «تلفن را بزرگ‌تر کن». هر بار مرورگر را تازه کن. همین چرخه — بخواه، ببین، اصلاح کن — تمام کار است.

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

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

06منتشر کن: نشانی‌ای که دنیا می‌بیند

صفحهٔ درون پوشه فقط پیش توست. انتشار یعنی کپی‌کردن آن پوشه روی رایانه‌ای که همه به آن می‌رسند. آسان‌ترین و رایگان‌ترین راه GitHub Pages است: نقطه‌های ذخیرهٔ گیت که در فصل کارگاه آموختی دقیقاً برای همین بودند.

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

نشانی نخست به شکل نام‌کاربری.github.io/پروژه می‌آید و این یک نشانی کاملاً واقعی است — https هم آماده. اگر دامنهٔ خودت را بخواهی (مثل نام‌آژانس.com) بعداً وصل می‌شود؛ لازم نیست صفحه‌ها را از نو بسازی، فقط نشانی عوض می‌شود.

انتشار بزرگ‌ترین آستانهٔ این فصل و پرهیزشده‌ترین گام است. پرهیز نکن. سایتی که منتشر نشده سایتی ناتمام است؛ و اگر روز اول منتشر کنی هر تغییر را روی نشانی واقعی می‌بینی — جملهٔ «روی دستگاه من کار می‌کرد» هرگز گفته نمی‌شود.

همین حالا انجام بده: به من بگو «این پوشه را به گیت‌هاب بفرست و با Pages منتشر کن، گام‌ها را نشانم بده». جایی که باید حساب بسازی می‌ایستم؛ بقیه را با هم انجام می‌دهیم. وقتی نشانی به دستت رسید برای کسی بفرست.

07ایستا یا پویا

سایتی که منتشر کردی ایستاست: فایل‌ها آماده می‌مانند و به همه یک چیز نشان داده می‌شود. سایت‌های پویا هم هستند: صفحه همان لحظه که بازش می‌کنی برای تو ساخته می‌شود — کاربر واردشده، فهرست شخصی، موجودی زنده. دانستن تفاوت، پاسخ پرسش «این را می‌توانیم بکنیم؟» را از همان اول می‌دهد.

ایستا

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

پویا

ورود اعضا، سبد خرید، پنل شخصی، دادهٔ زنده. سرور و پایگاه داده می‌خواهد؛ هزینهٔ ماهانه، نگهداری و مسئولیت امنیتی می‌آورد. تا واقعاً لازم نشده واردش نشو.

خبر خوب: میان این دو راه میانه‌ای هست و همان راهی است که این دوره می‌پسندد. سایت ایستا می‌ماند؛ یکی دو کار پویای لازم (ذخیرهٔ فرم، پرسیدن از هوش مصنوعی) به واسطی کوچک سپرده می‌شود. به‌اندازهٔ نیاز می‌گیری، بی‌آنکه هر چیز گران را حمل کنی. واسط را در بخش دوازدهم می‌سازیم.

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

08داده کجا می‌ماند

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

سه طبقه، از سبک به سنگین
  1. فایل یک فایل متنی یا جدولی در پوشه. برای یک نفر، چند صد سطر و دادهٔ کم‌تغییر عالی است. فهرست خدمات · قیمت‌ها · محتوا
  2. جدول جدول ابری. هم تو هم تیمت می‌توانید دستی ببینید و اصلاح کنید؛ جریان‌ها هم می‌توانند بنویسند. عملی‌ترین جا برای شروع. مشتریان · کارها · پیگیری
  3. پایگاه داده هزاران رکورد، چند نفر هم‌زمان، پرس‌وجوهای پیچیده. نیرومند اما نیازمند برپایی و نگهداری؛ SQL اینجا وارد می‌شود. وقت رشد · پنل · گزارش‌ها
قاعده: تنها وقتی طبقهٔ پایین واقعاً تنگ شد یک طبقه بالا برو. آژانسی که با جدول شروع کند تا صدها مشتری راحت پیش می‌رود؛ وقت جابه‌جایی هم داده را به من می‌دهی و جابه‌جا می‌کنم.

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

09CRM خودت: چه نگه می‌دارد، چه می‌کند

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

چهار رکورد، همین
شخص
  • نام
  • تماس
  • از کجا آمد
  • وضعیت
کار
  • چه کاری
  • مبلغ
  • مرحله
  • مال که
یادداشت
  • تاریخ
  • چه گفته شد
  • که نوشت
یادآوری
  • کی
  • چه باید کرد
  • انجام شد؟
شخص به یک یا چند کار وصل می‌شود؛ زیر هر کار یادداشت‌ها و یادآوری‌ها جمع می‌شوند. تمام CRMی که یک آژانس لازم دارد همین چهار رکورد است. بیشترش یعنی پرکردن میدان‌هایی که هرگز به کار نمی‌بری.

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

همین حالا انجام بده: میدان‌های این چهار رکورد را برای کار خودت بنویس. کدام میدان در کار تو واقعاً به کار می‌رود؟ آن‌که نمی‌رود را پاک کن. فهرست کوتاه، CRM خوب است.

10ساختن CRM: گام‌به‌گام

به‌عنوان لایهٔ داده با جدول ابری شروع می‌کنیم — همان طبقهٔ میانی بخش هشتم. دلیلش ساده است: هم تو می‌بینی هم تیمت؛ و جابه‌جایی به پایگاه داده در آینده آسان است.

  1. 1جدول ابری تازه‌ای باز کن و چهار برگ بساز: اشخاص، کارها، یادداشت‌ها، یادآوری‌ها. ستون‌ها را از میدان‌هایی بگذار که در ۰۹ نوشتی.
  2. 2به هر رکورد ستون شناسه بیفزا. «شناسهٔ شخص» در برگ کارها می‌گوید آن کار مال کدام شخص است. پیوند همین است؛ یک ستون.
  3. 3دستی سه مشتری، سه کار و چند یادداشت وارد کن. با دادهٔ واقعی پرش کن — سیستمی که با دادهٔ خیالی ساخته شود در زندگی واقعی می‌لغزد.
  4. 4از من پنل بخواه: «این جدول را بخوان و پنلی تک‌صفحه‌ای بساز که مشتریانی را نشان دهد که امروز باید به آن‌ها برگردم.» با جریان فصل عامل، جدول را می‌خواند و صفحه را نشان می‌دهد.
  5. 5یادآوری را خودکار کن: جریانی که هر صبح ساعت نه یادآوری‌های امروز را برایت پیام می‌کند. محرک زمانی فصل عامل، اینجا به کاری واقعی بسته می‌شود.

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

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

11از فرم تا CRM: وصل‌کردن سایت

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

وقتی فرم می‌آید چه می‌شود
  1. 1بازدیدکننده فرم سایتت را پر می‌کند
  2. 2فرم به نشانی وب‌هوک جریانت می‌رود
  3. 3من: پیام را می‌خوانم و دسته‌بندی می‌کنم
  4. 4در CRM سطر شخص و کار تازه افزوده می‌شود
  5. 5اعلان به تو: «درخواست تازه، در این موضوع»
تمام این زنجیره همان چیزی است که در فصل عامل آموختی — تنها فرق این است که دو سرش حالا سایتی است که ساختی و CRMی که ساختی. تکه‌ها در هم جا می‌افتند؛ چیزی که این دوره واقعاً می‌گوید همین است.

اینکه سایت ایستا نمی‌تواند فرم را ذخیره کند مشکلی نیست: فرم اطلاعات را به نشانی جریانت می‌فرستد. سایت ایستا می‌ماند، کار در جریان انجام می‌شود. همان «راه میانه»ای که در بخش هفتم گفتم دقیقاً همین است.

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

12کلید در مرورگر نمی‌رود: واسط

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

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

«واسط» بزرگ به گوش می‌آید؛ نیست. برنامه‌ای صدخطی که روی طبقه‌های رایگان جا می‌گیرد. این شکلِ اینترنتیِ قاعدهٔ «کلید در مغز نوشته نمی‌شود» از فصل کارگاه است: کلید همیشه در گاوصندوقی زیر کنترل تو می‌ماند، هرگز روی رایانهٔ بازدیدکننده.

همین حالا انجام بده: به همهٔ جریان‌ها و صفحه‌هایی که ساخته‌ای نگاه کن: جایی کلیدی نوشته شده که مرورگر ببیند؟ اگر مطمئن نیستی از من بپرس — «از این فایل رازی بیرون درز می‌کند؟»

13گذاشتن جعبه‌ای سخنگو روی سایت

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

چه خواهد دانست

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

چه نخواهد کرد

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

کی تو را صدا می‌زند

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

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

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

14FYOS چیست

تا اینجا تکه ساختیم: سایت، CRM، جریان‌ها، جعبهٔ سخنگو. FYOS نام این تکه‌ها نیست؛ نام در دسترس‌بودن همهٔ آن‌ها از یک جاست. سیستم‌عامل عاملیِ شخصی یعنی هر کار روزانه‌ات عاملی داشته باشد و تو با همه از یک جا حرف بزنی.

هسته و پیرامونش
FYOSتو حرف می‌زنی
حافظه
مشتریان
تقویم
محتوا
گزارش‌ها
جریان‌ها
هر قمر چیزی است که پیش‌تر ساخته‌ای: حافظه CLAUDE.md، مشتریان CRM، جریان‌ها n8n. هسته چیز تازه‌ای نیست، دری است — جایی که وقتی می‌پرسی «امروز چه هست؟» به همه نگاه می‌کند و یک پاسخ می‌دهد.

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

همین حالا انجام بده: کارهای روزانه‌ات را به شش عنوان تقسیم کن. ممکن است شبیه شش تای بالا باشد یا نباشد. شش قمر تو چیست؟ این‌ها پیش‌نویس FYOS توست.

15چهار لایهٔ FYOS

ساختن نسخهٔ خودت یعنی چیدن چهار لایه به‌ترتیب. ترتیب را نشکن؛ هر لایه روی لایهٔ پیشین می‌ایستد.

1

داده

CRMت، فایل‌هایت، تقویمت. هر چه FYOS می‌داند از اینجا می‌آید؛ سیستمی که روی دادهٔ خالی ساخته شود پاسخ خالی می‌دهد. این لایه را در بخش دهم ساختی.

2

دست‌ها

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

3

خرد

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

4

در

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

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

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

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 است.

در ادامه

فصل ۶ · ویترین

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