The Vibe Coder: توسعه دهندگان غیر فنی و Mirage of AI

ظهور “برنامه نویسی VIBE”
بنابراین ، “Vibe Coding” اخیراً موج می زند ، همه به لطف برخی از توییت ها در مورد این مرد که یک برنامه را با استفاده از AI به تنهایی ساخته است. بدون برنامه نویسی واقعی ، فقط لرزش خالص. نتیجه؟ برنامه او کاملاً توسط جامعه و هکرها از بین رفت. معلوم است ، AI ممکن است باهوش باشد ، اما اینطور نیست این که باهوش
اما کدگذاری VIBE دقیقاً چیست؟
کدگذاری VIBE چیست؟
برنامه نویسی VIBE یک رویکرد توسعه است که به جای آن ، شما می دانید ، برنامه نویسی، شما فقط یک مدل هوش مصنوعی مانند Chatgpt یا Gemini را سریع می دهید تا همه چیز را برای شما تولید کند. هوش مصنوعی منطق را می نویسد ، برنامه را ساختار می دهد و هر آنچه را که شما نیاز دارید تفسیر می کند.
به نظر می رسد آینده نگر ، درست است؟ فقط آنچه را که می خواهید توصیف کنید و رونق بگیرید – یک برنامه کامل آماده برای رفتن. نیازی به یادگیری نحو ، الگوریتم ها یا اشکال زدایی نیست. عادل لرزشبشر
به جز … واقعیت خیلی مهربان نیست.
اگر هر وقت را در YouTube گذرانده اید ، احتمالاً آن فیلم های کد نویسی هوش مصنوعی چشمگیر را دیده اید:
- “من 5 دقیقه با استفاده از ChatGPT یک برنامه کامل ساختم!”
- “من 10،000 دلار با یک برنامه SaaS تولید شده توسط AI درست کردم!”
- “بدون مهارت برنامه نویسی؟ مشکلی نیست! AI برنامه شما را برای شما می سازد!”
همه چیز خیلی خوب به نظر می رسد که درست باشد – و بیشتر اوقات ، اینگونه است.
به عنوان مثال ، مورد بدنام YouTuber را که یک استارتاپ تولید شده توسط AI ایجاد کرده است ، در نظر بگیرید. او از ChatGPT برای کدگذاری یک پروژه کامل استفاده کرد ، آن را راه اندازی کرد و در مورد اینکه چقدر آسان بود ، لاف زد. گرفتن؟ طی روزها ، هکرها برنامه را از هم جدا کردند به دلیل نقص های امنیتی ، و همه چیز تحت ترافیک واقعی کاربر فرو ریخته است.
یک خالق دیگر سعی کرد با استفاده از کد تولید شده AI ، یک وب سایت کامل ایجاد کند. نتیجه؟ یک آشفتگی حشره دار با عملکرد بهینه ، ویژگی های شکسته و احراز هویت از دست رفته. او را خرج کرد ساعت اشکال زدایی و در نهایت مجبور شد بیشتر پروژه را به صورت دستی بازنویسی کند.
خط پایین: هوش مصنوعی می تواند کد تولید کند ، اما این جایگزین مهارت های توسعه واقعی نیست.
واقعیت سخت برنامه نویسی پرنعمت
یکی از دوستان من – دیگر او را صدا می کند علاقه مندان به شماره 47-در مورد توسعه تولید شده توسط AI پیش بینی شده است. او به من گفت ، “داداش ، شما حتی نیازی به یادگیری کدگذاری ندارید!
بنابراین ، به طور طبیعی ، من او را به چالش کشیدم. “خوب ، چیزی بسازید.”
با هیجان ، او مدل AI مورد علاقه خود را افتتاح کرد و شروع کرد به ساختن یک برنامه وب. پس از یک ساعت عقب و جلو ، او چیزی داشت که به نظر مناسب و معقول بود-تا اینکه او آن را اجرا کرد.
- خطاها در همه جا
- اجزای UI شکسته.
- API ها به درستی وصل نمی شوند.
- و از همه بدتر؟ او هیچ ایده ای برای رفع آن نداشت. (او یک دیو نیست)
در پایان روز ، او را گذراند زمان بیشتر باعث ایجاد خطاها برای رفع آنها می شود اگر او پس از یادگیری کدگذاری ، خود را از ابتدا از ابتدا نوشته بود. کد تولید شده AI کثیف ، متناقض و فاقد مستندات بود. بعد از ساعت ها ناامیدی ، او خشمگین شد و پذیرفت ، “بله ، شاید ابتدا باید اصول را یاد بگیرم.”
این مشکل کدگذاری Vibe است – این یک رویا را به فروش می رساند ، اما واقعیت اشکال زدایی کابوس است که حتی نمی فهمید.
در حالی که LLMS (مدل های بزرگ زبان) می توانند قطعه های کد بسیار جامد ایجاد کنند ، و یک برنامه کامل ایجاد می کنند؟ این یک داستان دیگر است.
1. مشکل پنجره زمینه
مدل های AI دارای یک حافظه محدود هستند. آنها ممکن است آنچه را که از آنها خواسته اید پنج مورد قبل به یاد داشته باشید ، اما سعی کنید یک برنامه پیچیده را با چندین مؤلفه بسازید ، و جزئیات مهم را در نیمه راه فراموش می کنند. آنها حتی آنچه را که انجام می دادند را فراموش می کنند و فقط Staright به نوشتن چیز دیگری می روند. این بدان معنی است که شما دائماً دوباره برنامه خود را مجدداً توضیح می دهید به هوش مصنوعی، کدام طعنه آمیز است زیرا تمام نکته ای برای جلوگیری از نوشتن کد خودتان نیست؟
2. 70 ٪ مشکل کد بد
بیشتر مدل های هوش مصنوعی روی کد در دسترس عموم آموزش دیده اند. و حدس بزنید چه؟ حداقل 70 ٪ از این کد عالی نیست – چه در مخازن منسوخ یا موجود در مخازن ایجاد شده برای ایجاد اختلال در AI (خوب آخرین مورد شوخی بود) ، ناکارآمد ، یا فقط اشتباه. اگر برنامه ای را کاملاً با هوش مصنوعی ایجاد می کنید ، احتمالاً یک تن از آسیب پذیری ها را به ارث می برید (در مورد JS بعدی صحبت نمی کنم) ، کد اسپاگتی ، و خطرات امنیتی و موارد بدتری مانند لباس های قانونی از شرکت های میزبان معماری بدون سرور به دلیل سوء استفاده از خدمات خود.
3. اشکال زدایی کابوس است
بیایید بگوییم که شما می توانید یک برنامه کاملاً کاربردی ایجاد کنید (به نوعی هنوز امکان پذیر نیست). چه اتفاقی می افتد که چیزی شکسته شود؟ اگر به ویژگی های بیشتری احتیاج دارید و هوش مصنوعی قادر به تولید نیست ، چه می شود؟ اشکال زدایی کد تولید شده AI یک داستان ترسناک است. شما منطق را ننوشتید ، بنابراین حدس زدن کد بهترین راه برای پیشبرد آن است و از آنجا که کد خود را هنگام پر کردن نوشتید ، بنابراین هیچ مستندی ندارید حتی مدل نمی تواند در این مرحله به شما کمک کند. خطاها فقط متن خارجی برای شما است که به زبانی متفاوت نوشته شده است.
در این مرحله ، شما با دو انتخاب باقی مانده اید: ساعت ها را صرف غذا کردن آشفتگی هوش مصنوعی کنید و چند سلول مغزی خود را به جا بگذارید یا فقط برنامه را از ابتدا بازنویسی کنید (این در واقع سریعتر خواهد بود). و اگر گزینه دوم را انتخاب می کنید ، چرا حتی در وهله اول فقط برای اتلاف وقت خود با کدگذاری Vibe زحمت می کشید؟
افکار من در مورد برنامه نویسی پرشکوه
هر چند ماه یک موفقیت جدید AI وجود دارد که عناوین را ایجاد می کند و اینترنت را به دیوانگی می فرستد. به یاد داشته باشید کی دوین ، “اولین مهندس نرم افزار AI” ، اعلام شد؟ مردم شروع به گفتن کردند ، “این همان است! توسعه دهندگان محکوم هستند!”
و بعد … هیچ اتفاقی نیفتاد.
معلوم شد که دیوین فقط یک دستیار کدگذاری هوش مصنوعی با یک برچسب فانتزی است. در حال نوشتن برنامه های کامل از ابتدا نبود ، تصمیمات معماری سطح بالا را نمی گرفت و مطمئناً جایگزین توسعه دهندگان ماهر نمی شد. اعتیاد به مواد مخدره به همان سرعتی که شروع کرد ، درگذشت.
کدگذاری VIBE در بهترین حالت یک حیله است. یک اصطلاح بازاریابی چشمگیر که شرکت های هوش مصنوعی دوست دارند فشار بیاورند ، قول آینده ای را می دهند که هر کسی می تواند برنامه هایی را بدون یادگیری کدگذاری بسازد. اما توسعه نرم افزار فقط مربوط به تولید کد نیست – این مربوط به درک است چرا وت چگونه همه چیز کار می کند که چرا یخچال شما می تواند نمایش دهد دوست قسمت
این گفته ، من فکر نمی کنم ما باید افرادی را که فقط با هوش مصنوعی آزمایش می کنند شرم آوریم. کاوش در ابزارهای جدید کنجکاوی خوب خوب است ، اما اگر کل برنامه کسی برای تبدیل شدن به یک توسعه دهنده این است که به AI اجازه دهید کار را انجام دهد ، منظور آنها در نرم افزار یا هر زمینه ای در این زمینه نیست. یادگیری اصول اولیه بسیار مهم است.
اوه ، و اگر به نقش AI در توسعه علاقه دارید ، مقاله قبلی من در مورد هوش مصنوعی و برنامه نویسی و مبتدیان را بررسی کنید. در اینجا
پایان
روندهایی مانند برنامه نویسی VIBE به وجود می آید و می رود ، اما توسعه نرم افزار به زودی از بین نمی رود. هوش مصنوعی ابزاری است – یک قدرتمند – اما نمی تواند توسعه دهندگان واقعی را جایگزین کند. در عوض ، بهترین استفاده از آن است تقویت کردن بهره وری ، نه به عنوان جایگزینی برای دانش اساسی.
بنابراین ، دفعه بعد که می بینید کسی در مورد ساخت یک برنامه کامل با استفاده از آن صحبت می کند عادل هوش مصنوعی ، به یاد داشته باشید: آنها ممکن است محصولات حمل و نقل کنند ، اما آنها نیز حمل می کنند بخش از مشکلات پنهان با آنها.
در حالی که من می نشینم و برنامه های تولید شده توسط AI را خراب می کنم و می سوزاند ، به نوشتن کد می پردازم که در واقع کار می کند و مال من است.