Posted 11 декабря 2022, 09:16
Published 11 декабря 2022, 09:16
Modified 11 декабря 2022, 09:19
Updated 11 декабря 2022, 09:19
Чтобы создавать такой продукт, нужны специальные обученные специалисты - программисты. Но программирование и кодинг – не одно и то же.
Программирование – комплексный процесс, который включает в себя проектирование программы, анализ, кодирование, компиляцию, тестирование кода, отладку и так далее.
Грубо говоря, сам программный код сопровождают на всех этапах. Кодинг - лишь один из этапов программирования в целом. Всем этим и занимаются программисты.
Возможно, для некоторых будет неочевидным тот факт, что само написание кода занимает куда меньшее время, чем остальные процессы. В среднем написание кода занимает 10-20% времени программиста.
Кодеры (те, кто занимаются кодингом) могут быть без профильного образования. Многие из них прошли подготовительные или базовые двухлетние курсы, а основные навыки и знания в своей сфере они получают уже в процессе работы.
Сам же код может быть переделан сотню раз, пока не достигнет оптимального формата.
Программисты постоянно в раздумьях. Доработки могут быть на всех этапах, вплоть до конечной программы. На процесс отладки уходит почти всё время разработки.
Чтобы узнать побольше о программировании и кодинге я обратился к специалисту в данной области.
Александр Фаст - ведущий разработчик из Челябинска, его стаж 25 лет.
– Вам нравится ваша работа? Какие плюсы в ней находите?
– Когда как. То чувствую себя гением, то будто упал вниз, как на синусоиде. Плюсы – возможность работать удалённо в любой точке из любой точки. Даже рутинные процессы можно творчески изменять. При наборе достаточного опыта появляется больше свободного времени, так как на сами задачи уходит меньше.
– Кодинг - для всех? Или нужно владеть какими-то конкретными навыками?
– В принципе программирование расширяется и в сторону упрощения, и в сторону усложнения. В то время как старые языки развиваются, они становятся сложнее, для реакции на новые задачи, повышается порог входа в профессию с этим языком.
Одновременно появляются новые языки, которые проще, понятнее. Сейчас определённую нишу занимает зерокодинг (яркий пример зерокодинга - конструкторы сайтов, где ты собираешь всё из готовых шаблонов), когда вообще не надо знать языки программирования.
Однако, хоть освоить программирование, на мой взгляд, может любой, получается не у всех. Даже после специального обучения.
Нужно много практики, а некоторые бросают дело уже на начальном этапе.
Из навыков программиста нужно развивать логику, знания алгоритмов, понимать особенности языка, на котором приходится работать, структуры данных, принципы проектирования, понимание бизнес-процессов производства, для которого составляется продукт. Нужно умение абстрагироваться от своих знаний и поставить себя на место пользователя на любом этапе.
– Над каким крупным проектом вы работали?
– Из последнего: внутренние порталы для правительства Санкт-Петербурга, газпромовский проект, сейчас для метро Питера.
– Можно ли заменить хорошего программиста машиной или хорошо написанной программой?
– Хорошего программиста заменить машиной пока не получится. Но на самом деле миру и не надо программистов экстра-класса. Для большинства задач вполне хватит работающих вариантов без излишеств и какой-то выдающести.
Кроме того современная среда разработки уже автоматизирована и делает за программиста часть задач.
Особенно актуально то, что автоматизированные системы снимают часть нагрузки по поиску проблем и ошибок. Потому что уже на начальном этапе анализируют код и подсказывают, что может пойти не так. На работающих программах висят различные тесты, которые тоже позволяют быстро реагировать на ошибки.
На текущий момент какие-то простые программы искусственный интеллект напишет быстрее и «красивее» большинства программистов. Но пока ещё много нетривиальных проблем, с которыми нейросети не справляются.
Однако со временем таких вопросов будет все меньше, а нейросеть и вовсе научится обучать саму себя.
Павел Григоренко