Утрата квалификации программистов или новая реальность?
Не используйте ИИ в разработке продукта. Кто-то посчитает это высказывание бредом, но именно эта идея должна была зародиться в наше время во время хайпа, когда все используют ИИ и делегируют написание кода на 99% искусственному интеллекту, просто контролируя результаты и внося правки. Это самая большая ошибка, которую вы могли совершить, будучи разработчиком.
Что такое язык программирования?
Это язык, на котором вы разговариваете с компьютерным железом на высшем слое абстракции. Да, железо понимает только единицы и нули, но язык программирования помогает перевести ваш код в машинный в те самые единицы и нули. Что я хочу этим сказать? Когда вы пишете код, ваш мозг буквально общается с компьютером на понятном вам языке, на понятном диалекте. Чем чаще вы разговариваете с компьютером на общем языке, тем лучше вы друг друга понимаете, и чем меньше вы этим занимаетесь, тем хуже компьютер вас понимает. Я хочу сказать, что написание кода это стиль жизни программиста, то есть без этого процесса программист перестает быть тем самым программистом. Если вы делегируете 99% написания кода ИИ, вы перестаете быть программистом и становитесь менеджером. Вы можете не заметить этого перехода, и в этом кроется опасность. Если вы перестанете быть программистом, то вы потеряете ту самую суть, вы потеряете связь с железом, а это уже проблема для вас. Если вы потеряете связь с компьютером, вы перестанете чувствовать глубину того, что вы делаете. Это самая большая ловушка, которая только может быть.
Почему вы боитесь писать код?
Хорошие программисты владеют языком программирования прекрасно. Они буквально общаются с компьютером так же просто, как если бы общались с друзьями, то есть это не доставляет дискомфорта. Я, например, могу писать код на листке бумаги формата A4, исписывая несколько листов подряд, в течении 3-5 часов без остановки прежде чем переходить к печатанию. Я не говорю, что это правильно писать код на листке, но именно так идеи, которые приходят неожиданно, идеально ложатся на холст. Словно ты пишешь поэму на вымышленном языке, который в реальной жизни никто бы не понял. Но эту поэму ты пишешь не для людей, а для компьютеров, которых, кстати говоря, так же много, как и людей а может даже и больше если брать в учет все возможные гаджеты.
Кто-то говорит а зачем писать код, если это делает ИИ?
Да, делает, да, пишет код. Вопрос в другом: а вы понимаете, что он там пишет? Как быстро вы забудете суть того, что было предложено ИИ?
Когда вы создаете программу, вы пишете код для себя, вы погружаетесь в абстракции, в общение с компьютером. День за днем вы обсуждаете что-то, все ваши мысли крутятся вокруг этого, вам интересно, а что будет дальше. Вы знаете то, что было раньше, до мелочей, словно предыдущие серии из сериала. С ИИ у вас не будет той самой глубины: мозг быстро увидит тропинку, где вы не тратите ресурсы на анализ и печатание, и со временем вы потеряете навыки программиста это ловушка.
Что лучше: быстро написать код или понимать код?
Для бизнеса без разницы, что вы там чувствуете как разработчик. Есть технология, которая экономит время, значит, используем на полную катушку. Некоторые так увлекаются, что увольняют своих сотрудников, отдавая предпочтение ИИ. Ну что ж тут поделать, маркетинг коварная штука спасибо Сэм Альтмену за это. Стадный инстинкт: куда все, туда и я. Все, кто работал с ИИ плотно и долго, прекрасно понимают, что серьезный продукт он не способен сделать. Может показаться, что ИИ способен создать самый сложный продукт в мире, но это самое большое заблуждение. Хотите вы того или нет, но розовые очки придется со временем снять и начать смотреть на ИИ как на инструмент, а не на таблетку от всех проблем.
Сколько же я слышал мнений, чуть ли не из каждого угла, что кодить скоро станет не нужно, что это превратится в рудимент. И приводят примеры прошлого века, прошлых профессий типа фонарщика, телефониста в целом, самые простейшие из простейших профессий. А что насчет кода? Сложный вопрос. С одной стороны, кажется, что ИИ пишет код, а с другой стороны насколько качественно и насколько дорого в перспективе масштабироваться? Мы, как разработчики, пишем код для себя, мы пишем код, чтобы проложить тропинку или широкополосную магистраль для нашего мозга называйте как хотите. Это про эффективность управления микро процессами в мире, который ты создаешь с нуля, в мир в который ты возвращаешься каждый день.
Малый бизнес может только мечтать о действительно командной разработке продукта о том, чем занимаются в корпорациях типа Google, там, где у каждого своя зона ответственности и своя узкая качественная экспертиза. Малый бизнес настолько жаден и беден, что не может позволить себе специалистов конкретного направления, поэтому они хотят видеть в тебе всё и сразу. Но это прямой путь к выгораниям, абсолютная слепая вера в то, что это будет работать как часы. Но и такие гики существуют, как бы странно это ни звучало. Их немного, но они есть и, скорее всего, работают в том же Google.
Ведь что такое программирование на самом деле? Это перегонка данных из точки А в точку Б через разные каналы, которые тебе предоставляет железо. Ты делаешь с этими данными всё, что придет в голову вот и всё. Научишься видеть все процессы под капотом всё встанет на свои места. Гики, познавшие ДЗЕН в мире железа, способны на всё, что угодно. Для них не существует понятий “я это не знаю”, “я это не могу”. Они знают, что можно построить любой слой абстракции, жонглируя данными налево и направо, вниз и вверх.
Вывод
И подводя итог всему сказанному, я хочу, чтобы вы задали себе один простой вопрос: кем вы хотите быть в этой индустрии? Ремесленником, который слепо перекладывает ответственность на нейросети, или инженером, который чувствует каждый такт процессора?
Поймите меня правильно, я не призываю полностью отказаться от ИИ. Нейросети это отличный инструмент, чтобы набросать шаблон, написать скучный бойлерплейт или сгенерировать сложную регулярку. Но ИИ никогда не проявит к железу ту самую “механическую симпатию”, без которой немыслима по настоящему эффективная система. Нейросеть не почувствует, как ваши структуры данных ложатся в линии L1-кэша процессора, она не будет биться за zero-allocation архитектуру и не спроектирует изящную работу без блокировок, экономя каждый байт, чтобы не нагружать сборщик мусора.
Оставьте ИИ рутину, но не отдавайте ему архитектуру и свое мышление. Пишите ядро системы руками, ошибайтесь, профилируйте, спускайтесь на уровень ниже. Разговаривайте с машиной напрямую, учитесь чувствовать, как ваши данные летят по памяти без лишних копирований. Только так вы сохраните ту самую глубокую связь с железом, которая делает вас настоящим программистом, творцом своего цифрового мира, а не просто оператором текстовых промптов.
Выбор, как всегда, за вами. Но помните: тот, кто перестает говорить с компьютером на его языке, рано или поздно становится для него чужим.