Комментарии 52
А если завтра отключат электричество - как вы программировать собираетесь?
Так и вайбкодить без электричества никак не получится.
при свечах :)
эмигрировать туда где (пока ?) не отключили.
это требует многовариантного планирования с if - then - else.
что похоже на программирование но цена ошибки гораздо выше.
Как то не однозначно если честно. Вроде в чем то и правда, но в тоже самое время похоже на то как лет 200 назад предлагали сжигать станки, потому что они отбирали работу у людей кто делал все в ручную. Все же это эволюция, но увидим насколько она правильная.
Всё правильно, но к сожалению, лицемерие не только одним гуманитариям свойственно, но и технарям тоже. Как только шкурные интересы задеты и работа под вопросом, заводят ту же пластинку, что и рисоваки, про душу в коде и вот это вот всё.
Кто не учит историю, будет её повторять.
Правда тут нет ни слова о том, чтобы что-то у кого-то отобрать - лишь доводы к тому, что вайбкодить !== кодить(вот так сюрприз), и мысли о последствиях всего этого. Доводы и мысли правильные, разумеется, но кого когда на хабре это интересовало, если представленное противоречит картине мире читающего, да?) кто о чём, а вшивый о бане.
Ведь можно ровно так же писать о шкурных интересах вайбкодеров - им показали мечту: ничего толком не делая разрабатывать целые продукты, быть причастным к заветной касте айтишников и мнить себя демиургом. Как такое не схавать, ну как?) И само собой они не готовы её вот так легко отпустить, даже не смотря на все разумные аргументы против. Будут отвечать что-то про инквизицию, про станки, лицемерие и прочий бред, не имеющий отношения к предмету обсуждения) на ходу придумал, складно же?
Для противоположного вашей позиции лагеря - очень складно, а толку-то от такой дискуссии, если каждый за оппонента придумывает причины и доводы. Получается какой-то детский сад, где дети громко передразнивают друг друга.
А я помню подобные дискуссии в фидо. «ты не программист, если не умеешь прочитать что там компилятор наделал, в этих ваших высокоуровневых языках слишком все далеко от реального железа»
Мне близка аналогия с экзаменом в университете: проблема "Получить отлично" и разные пути ее решения:
1. Неделями готовиться самостоятельно, заполняя пробелы в знаниях и углубляя понимание тем
2. Написать шпаргалку (подставьте что угодно - пронести смартфон, распросить уже сдавших и т.п.)
Со стороны второй вариант привлекательнее меньшими временными затратами и объемом приложенных усилий. К тому же прокачиваются разные "скиллы", и мастерство у каждого свое.
Но на подсознательном уровне первый превозмогает соблазн и получает в награду фундаментальные знания. Второй же выбирает легкий путь, что подводит его на дистанции (см. Карьерный тупик).
Если мы масштабируем экзамен, включая как сложность вопросов, так и строгость контроля нарушений, то цена решения проблемы для второго мне видится выше.
Я здесь намеренно ухожу в крайности "поверхностно и быстро с ассистом" и "глубоко, но медленно без ассиста", потому что не наблюдаю примеров "глубоко и быстро с ассистом" в реальном проекте. Все упирается в тот самый выбор трудного или легкого пути, который делается индивидуально.
З.Ы. Аргументация в статье неубедительная, уже предвижу аргументы вида "проблема первична, реализация вторична" и иную интерпретацию абстрактных "сложной бизнес-логики" и "понимает суть".
З.З.Ы. Это я так испортился, или каждая вторая статья мне кажется нейропродуктом?
Не в бровь, а в глаз! Отличное наблюдение! Хотите, предложу способы как точно отличить контент, созданный нейросатью в статьях и комментариях?
PS: сарказм, сарказм, я такой же как и вы мешок с костями и булькающими жидкостями.
Аргументация в статье неубедительная
По-моему, вполне убедительная. Достаточно собрат пару проектов, чуть более сложных чем лендинг вайбкодингом (не используя навыки разработчика), как сразу упираешься ровно в те же проблемы.
Написать шпаргалку, особенно короткую и одновременно понятную — это тоже труд, заполняющий пробелы и углубляющий понимание
Это правда. И без мало-мальски понимания материала тоже шпаргалки не выйдет.
В моей аналогии проще заменить шпаргалку на "загуглить ответ в туалете", суть останется в восприятии процесса и склонности действовать так и в дальнейшем.
Само наличие выбора тоже может сыграть роль, помню как сам переживал и подготовил себе:
короткую и одновременно понятную
шпаргалку.
Благо в час X собрался, и не пригодилась. Но сам факт того, что в случае чего тылы прикрыты, дарил уверенность. Дарит и сейчас, когда делаю что-нибудь в смежных областях.
Если вы не можете разобраться в машинном коде...
Если вы не можете писать на низкоуровневых языках...
Если вы не пишете без подсветки кода, без линтеров, без, боже упаси, умных компиляторов...
Если вы не можете провести рефакторинг без функций IDE...
Если вы не пишете одно и то же из раза в раз, а используете автодополнения...
Все это уже было. Теперь сюда добавилась генерация кода.
Если вы не можете разобраться в машинном коде...Если вы не можете писать на низкоуровневых языках..
Так остались те, кто может, и они востребованы. Если их не будет, разработчики на высокоуровневых языках не получат ни ОСей, ни трансляторов. Также с вайбкодингом. Он нормальный, пока у него база собрана с думающих программистов и рабочих разработок.
Никакой проблемы сдампить карту адресов или какой-нить risc-v ассемблер клоду.
Он и ассемблер объяснит и баг в нем найдет. И адреса все смапит на код. Более того по бинарнику и адресам(без символов скомпилена прога) он восстановит стек и переменные и поймет, где что крайшится. Сам так дебажил, имею около нулевой опыт с risc-v, zephyr и low-level programming.
Наверное огрнаничения где-то есть, но по моим ощущениям можно делать около 90-95% с клодом или подобной системой всей низкоуровневой разработки имея очень небольшое понимание изначально.
И эта генерация - очередной инструмент, к которому нужен толковый специалист. В противном случае люблю приводить аналогию с перфораторами. Без перфоратора можно делать дыры и штробы. Но долго и дорого. С перфоратором тот же специалист сделает дырку или штробу в разы быстрее и, возможно, даже аккуратнее и чище. С хорошим перфоратором он сделает еще лучше и быстрее. Но не важно какой перфоратор использовать, какой фирмы, мощности и так далее, если выдать его в руки обезьяне.
Я помню как появлялись первые ide с умным автокомплитом типа интеллисенса. И как ругань была, мол, это не тру, надо чуть ли не в блокноте кодить, а забери у тебя IDE, кто ты без нее? А потом оказалось, что IDE за тебя не пишет код, просто ускоряет процесс, снимая часть рутины.
Сейчас тот же виток с иишками. Но более сильный. Закончится тем же - отрезвлением, что это просто инструмент, который снимает часть рутины, но не снижает требования к специалисту, а наоборот. Если раньше слабый специалист ни с каким автокомплитом не мог написать хотя бы рабочий код, то теперь может, но не может его провалидировать, и, как следствие, в прод может пролезть жаба.
Так что то, что слабый специалист с ИИ сможет заменить сильного - это очень дорогая ошибка.
Одно из самых крутых впечатлений от IT было в лицее. Как факультатив туда пришел преподаватель ассемблера. Набился целый класс страждущих узнать про регистры и mov ax, bx; Но однажды был выход "за грань" - преподаватель сказал "а теперь com-файлы собираем прямо в hex-кодах, и чтобы работало!" Это была кульминация) Конечно, каждый ещё разрабатывал свою резидентную программу, но это в рамках курса...
Иронично: нейросетка пишет о вреде вайбкодинга. А о вреде вайбписательства не хочешь статью запилить?:)
Помню, отправили меня с таким же молодым коллегой в командировку в Москву, чтобы мы тамошних программистов (СМ-4 & RSX-11M) обучили работать с нашей сетевой библиотекой. Ну вот, аборигены-старики принципиально исползовали текстовый редактор командной строки (ED, кажется). И какой-то ассемблер-компилятор, в котором не было поддержки макросов. Экранный редактор де жрет память, а компилятор Macro-11 с макросами слишком медленно компилирует. А у нас вся библиотекаин на макросах, и в командной строке мы давно уже редактировать разучились. Редактор ещё ладно, разобрались, а библиотеку переписывать - вообще бред. Старики-абиригены нам вещали, что они вообще раньше в кодах кодили, а мы тут с макросами припёрлись. В общем, в тот раз захватить мир нам не удалось. А потом СССР распался, СМ-4 заменили сперва на ЕС-184*, а потом и на писишки, а те аборигены, наверное, сейчас пишут статьи на Хабре о былом величии СССР, ЭВМ с троичной СС и вреде вайбколинга.
Честно, надоело наблюдать как одни молятся на генерацию ИИ, а другие хейтят как будто это самое злостно зло. Это всего лишь инструмент и у него есть зоны применимости. Вы же не будете сильно восхвалять молоток или его хейтить, если им нельзя резать как циркулярной пилой.
Моя точка зрения и то что я вывел для себя - заключается в следующем:
Писать небольшие законченные фрагменты кода - гораздо быстрее (лучше для бизнеса) с помощью ИИ.
Можно писать среднедлинные участки кода, когда он не слишком ответственный.
Для длинных и ответственных тем - это либо 100% валидация кода ИИ, когда вычитываешь каждую строчку и понимаешь всю логику либо вручную.
Используйте инструмент как инструмент. Он не плохой и не хороший.
Да, но это решение каждого отдельного программиста.
Индивидуальная проблема и массовая проблема — это две разные штуки.
Каждый отдельный программист может решить так и по другому. Но отрасль в целом будет находится под давлением вида «половину уволить, и пусть в два раза быстрее теперь работают, у них ИИ есть».
Это приведет к отложенным проблемам всей отрасли в целом! Библиотеки с неочевидными багами, браузеры с неочевидными багами, средства разработки с неочевидными багами, продукты с неочевидными багами.
Но вы-то лично, может быть, и останетесь молодцом во всем этом хаосе.
Побуду немного "адвокатом дьявола":
Если код, написаный нейросетью работает здесь и сейчас, то остальное, по большому счету, не так уж и важно. Таска закрыта, вовремя, код рабочий - что еще надо-то?
Да, в будущем, когда увеличится нагрузка, могут возникнуть проблемы, но до этого самого будущего еще дожить надо, для очень многих IT-проектов оно никогда не наступит. А если наступит и проблемы таки возникнут, то вот тогда сеньоры и будут разбираться, и переписывать то, что Джуны вайбкодили. Да, бизнесу это будет стоить денег и немалых - но это будет опять же потом, а сейчас он на вайбкодерах хорошо сэкономил. И для нас, квалифицированных программистов, это даже хорошо - работа будет, и много, и неплохо оплачиваемая.
Джуниоры-вайбкодеры ничего не понимают в коде, написанном ими с помощью нейросети, и не растут профессионально? Так это их личные проблемы. Есть много тех, кто умеет думать, курит доки и старается разобраться глубже в проекте и технологиях, и таких ребят много - они и станут в будущем мидлами, а потом сеньорами. IT не умрет.
Так что - большинство проблем с вайбкодингом, по большому счету, надуманы.
Ну в логике «если проблема будет завтра — это не считается» и «это их личные проблемы», почти любые проблемы надуманы!
На практике, это все приводит к кратному росту цифрового долга, и перекосам рынка труда. И это будет цифровой долг не только вашего личного проекта, а ПО вообще, по всей планете. Но это ж завтра, чего сейчас об этом думать?
Нейросеть пишет статью перестаньте вайбкодить ))
Автор, лучше попросите свою нейросеть написать статью "перестаньте писать статьи нейросетями" за скелет можно взять эту, все те же минусы...
А вообще это тема про делегирование. Согласен только с тем что свои навыки надо иногда тренировать. Сам тоже 50/50 делаю
Как только (в каждом конкретном случае) станет понятно, какой способ более выгоден, им и станут пользоваться.
"Рыночек порешает" - (с).
Это не будет так понятно.
Это будет «если вы планируете продукт развивать год — то одно, а если 5 лет — другое. Вы не знаете заранее? Ну очень вас жаль!»
Сформируется культура применения нового инструмента. Станет, например, более важно выполнять декомпозицию проекта на независимые модули. Тестирование модулей. Фиксация истории промптов, возможно - развитие искусства промптинга. Генератор промптов по uml - диаграммам... :) Поживем - увидим.
Вайбкодинг скорее отравляет IT образование
Сложно чему-то научиться когда есть инструмент который пишет за тебя все лабораторки в универе (обычно они простые и нейросеть может с ними справиться)
А вот если у тебя 10 лет опыта и ты в своём стеке как рыба в воде - вряд ли вайбкодинг лишит тебя тех знаний что уже есть. Хотя возможно со временем начнёшь деградировать, в том смысле что перестанешь изучать/пробовать новое. Но по опыту - часто новое и не нужно, лучше - проверенные решения, где заранее знаешь все тонкости и как что исправить
Сложно чему-то научиться когда есть инструмент который пишет за тебя все лабораторки в универе (обычно они простые и нейросеть может с ними справиться)
Про калькуляторы так же говорили. В мое время в универе был срач про солверы. Адаптируется образование, куда оно денется. Будет со временем больше архитектурных задач и защиты решений, чем просто кодинга на проверку результата (хотя академическое образование всегда отставало на пару шагов от реальной жизни).
Про калькуляторы так же говорили
И правильно говорили, сейчас каждый второй для деления 7500 на 3 калькулятор достаёт. Желание думать самостоятельно даже при таких простых расчётах у этих людей вышло из чата очень давно, а началось всё именно с калькулятора в школе) кому-то было интересно научиться считать в голове, заодно построив кучу нейронных связей, а у кого-то был железный аргумент "зачем, есть же калькулятор"
Не на перфокарте? Не программа.
Труд сделал из обезъяны человека! А ИИ сделает из человека беспомощьного безмозглого трутня. Процесс уже пошел, и врядли его можно остановить.
Очень классная статья, прям очень поддерживаю.
Мой опыт — щас с claude можно чуть выше подняться уровнем, просить писать архитектуру с критичными кусками кода, который иллюстрируют отдельные самые важные части логики, читать эти документы, где-то говорить "фигня, надо так", где-то "поищи, как еще эту задачу можно решить" где-то одобрять.
В целом я так и работал до этого, если была выделенная команда разработчиков на проект — на синках садились и обсуждали, кто что будет делать и как собирается делать.
Спорить как с коллегами не получается, жалко, приходится внутри головы это делать.
Что ты несёшь? Как программист с боооольшим стажем скажу, нейросеть это инструмент технического прогресса и не использовать его - тупость. Почему ты на лошадях не ездишь из Питера в Москву?
И снова вспоминаем рассказ Азимова "Профессия".
Всем рекомендую перечитать и дать детям для обязательного прочтения, с последующим обсуждением. Куда то оно к такому сюжету и идет, даже более упрощенному.
учитесь разбивать задачу на простые единицы и просто ЧТОБЫ НЕ ТЕРЯТЬ ВРЕМЯ И СИЛЫ скармливайте эти задачи ии, один чат генерирует код, другой его подтверждает. Не можете сами разбить задачу на простые составляющие - попросите ИИ сделать блок-схему, один чат делает - другие проверяют, оптимизируют. Дальше сами собираете все воедино. Ставлю на то, что будет меньше говнокода, ошибок и затраченного времени, нервов. Что касается поиска багов и их устранения - с этой задачей тоже ИИ прекрасно справляется. Считаю, автор просто переживает за свое рабочее место, поэтому пытается оправдать труд "по старинке"
В чем здесь подмена понятий?
Самая главная подмена понятий в том, что зачем-то то и дело пытаются вайбкодинг сравнивать именно с написанием кода, с обычным кодером, даже не инженером. Но зачем? Ведь и тимлид, и сис архитектор команды разработки не вдается в конкретные детали реализаций, сделана ли там сортировка пузырьками или нет. Также как и ПМу абсолютно не важно, как реализован внутри продукт. Ему важно, что он сделан зачем-то и он решает какую-то бизнес задачу. И здесь также, вайбкодер не разработчик. И не надо его с ним сравнивать.
Да, роли действительно поменялись, сильно. И это ключевое, но в статье почему-то это лишь вскользь прошло.
Другая подмена понятий в том, что в начале статьи есть только чёрное и белое, когда ты кодишь, то ты прям обязательно держишь сложный контекст в уме, держишь состояние потока, ты целый инженер. А когда вайюкодищь, то ты обезъяна тыкающая кнопки. Но ведь в реальном мире не всегда так, и вайбкодищь можно вдумчиво, прорабатывая верхнеуровневую архитектуру, и просто кодить можно вообще не задумываясь, тыкая автокомплиты в ide, зачем это все пишется, ты просто исполнитель задач, лишь бы галера деньги вовремя платила.
.

Перестань вайбкодить: почему «разработка на расслабоне» убьет твою карьеру