اولین باری که روی دکمهی “Record” زدم، قلبم تند میزد.
صفحهی Visual Studio Code باز بود، React نصب شده بود، و من فکر میکردم آمادهام دنیا را با “سلام بچهها، من اومدم آموزش React بدم!” فتح کنم.
اما… فقط ده دقیقه بعد، مرورگر سفید شد، میکروفن افتاد زمین، و من وسط جمله گفتم:
“اوه… ظاهراً چیزی خراب شد.”
اون روز تازه فهمیدم که آموزش دادن React، خودش یه جور آزمون React واقعیه.
و این ده اشتباه، معلمهای اصلی من بودن.
اولین اشتباه این بود که فکر میکردم React خودش یه زبان کاملاً جدیده.
تا مدتها دنبال «گرامر React» میگشتم، انگار قراره یه لغتنامه داشته باشه.
اما حقیقت ساده بود: React فقط یه طرز فکره — یه روش برای دیدن دنیای وب بهصورت کامپوننتی.
وقتی اینو فهمیدم، تازه برنامهنویسی برام معنی پیدا کرد.
میگفتم “چقدر شبیه HTMLه، پس هرچی بخوام بنویسم همینه دیگه!”
تا وقتی <div> رو توی حلقه گذاشتم و مرورگر جیغ کشید.
JSX فقط ظاهرش HTMLه، ولی درونش منطق جاوااسکریپتی جریان داره.
یاد گرفتم هر تگ در React، مثل یه سلول زندهست — قوانین خودش رو داره.
اولین بار که از useState استفاده کردم، مثل جادو بود: دکمه رو زدم، عدد بالا رفت!
ولی بعد، اپم دیوونه شد چون state رو مستقیم تغییر داده بودم.
اون شب فهمیدم React ازت میخواد با احترام با حافظه رفتار کنی.
هیچ چیز در React بیدلیل بهروزرسانی نمیشه، مگر اینکه بهش بگی.
یادم نمیره: یه لیست از فیلمها داشتم، با دکمهی حذف.
روی “Inception” کلیک کردم، ولی “Interstellar” حذف شد!
همهاش به خاطر نبودن key در map بود.
از اون به بعد، همیشه یادم موند که React بدون key مثل انسان بدون اثرانگشته — نمیتونه تشخیص بده کی کیه.
مثل همهی تازهکارها، یه قطعه کد از Stack Overflow کپی کردم و خوشحال بودم که کار کرد.
اما یه هفته بعد، همون کد کل پروژه رو قفل کرد.
اون موقع یاد گرفتم:
“کدِ فهمنشده مثل بمب خنثینشدهست — دیر یا زود میترکه.”
هرجا گیر میکردم، useEffect میذاشتم.
یه روز پروژهم شروع کرد خودش بینهایت رندر شدن، انگار گرفتار چرخهی ابدی شده.
بعدها فهمیدم useEffect ابزار کنترل زمانه؛ نه عصای جادوگرها.
اولین پروژههام واقعاً زشت بودن.
میگفتم “فعلاً بکاند مهمه!” ولی هیچکس تا انتها ویدیو رو نمیدید.
بعد با Tailwind آشنا شدم.
اونجا فهمیدم حتی در کدنویسی هم زیبایی، یه نوع منطق ذهنیه.
هر وقت prop میدیدم، احساس میکردم یه کلاس ریاضی سخت جلومه.
ولی وقتی فهمیدم props فقط راهی برای صحبت بین کامپوننتهاست، همهچیز ساده شد.
مثل دو آدم که با هم حرف میزنن، فقط کدش فرق داره.
هر بار اخطار زرد رنگ React رو دیدم، گفتم “الان وقتش نیست.”
تا اینکه یه روز اپم کلاً لود نشد.
اون روز یاد گرفتم، هشدارهای React مثل پیشگوییان:
اگر جدیشون نگیری، تقدیرت با crash رقم میخوره.
درگیر الگوریتمها شدم، دنبال هوشمندترین کد رفتم، ولی فراموش کردم که هدفم آموزش بود، نه نمایش.
وقتی برگشتم و با لحن ساده، مثل یه دوست حرف زدم، مخاطبها برگشتن.
یاد گرفتم مردم دنبال استاد نیستن — دنبال آدمیان که واقعی یاد گرفته باشه.
الان که دهها ویدیو ساختهام، هنوز گاهی باگ میگیرم.
ولی هر بار یادم میافته که این مسیر قرار نیست بینقص باشه.
React برای من فقط یه کتابخانه نبود؛ یه آیینه بود.
نشانم داد که در هر رندرِ دوباره، فرصتی هست برای بهتر شدن.
اگر داری آموزش React ضبط میکنی، نترس از اشتباه کردن — مخاطبها دنبال حقیقتن، نه کمال.