Разоблачение главных мифов о разработке ПО

Разоблачение главных мифов о разработке ПО

Даже внутри самой ИТ-индустрии часто встречаются заблуждения. Например, есть инженеры, которые считают, что “Scala продуктивнее Java”. Хотя в действительности все зависит от того, какую проблему нужно решить, и с какой стороны посмотреть. 

Давайте же обсудим 6 самых распространенных мифов, которые связаны с разработкой ПО.


1. Программист – профессия не творческая.

Это утверждение мне не нравится больше всего. Многие ошибочно считают, что написание кода – это просто перевод решения задачи на понятный машине язык. Но все не так просто!


Да, программирование требует логического мышления и знания многих технологий. Тем не менее, это еще и разновидность искусства. Не каждый способен создать элегантный код и заметить его красоту. 


Когда речь идет о сложных конструкциях, разработчику приходится подходить к структурированию данных творчески. Для эффективного объединения разных технологий в единое целое нужна изобретательность и, зачастую, инновационный подход.


Творческий аспект программирования проявляется и в оптимизации. Начинающие айтишники стремятся просто создать рабочий код, который бы выполнял поставленную задачу. Но со временем, когда накапливается определенный объем опыта, разработчик начинает использовать разнообразные хитрости и уловки, позволяющие ускорять программу и экономить ресурсы.


Например, здесь числа Фибоначчи реализованы очень наивно и просто:



А вот уже настоящее произведение искусства:



2. У программистов отсутствуют «гибкие навыки».

Как большинство людей представляет типичного разработчика? Одиночка, проводящий целые сутки у компьютера и пишущий код, ни на минуту не отрываясь от экрана. Но в реальности программисту приходится взаимодействовать с массой самых разных специалистов: начиная менеджерами и заканчивая дизайнерами. Плюс общение с заказчиками и пользователями. Все это требует хороших навыков коммуникации и эмпатии. 


А сейчас, когда появилось столько социальных сетей, блогов и онлайн-журналов, айтишники все чаще пишут статьи, записывают видео, создают подкасты и публикуют в Сети много другого интересного и полезного контента. Так что пора сломать этот стереотип!



3. Каждый программист хочет стать менеджером!

Даже если вы хороший программист, это не значит, что у вас получится стать хорошим менеджером. Разработка ПО и управление – разные сферы деятельности, и каждая из них требует своих навыков. Это как в спорте: далеко не каждый спортсмен способен обучать своему ремеслу других людей.


Конечно, в каждой компании свои правила. И сейчас все меняется с огромной скоростью. Так что варианты развития карьеры программиста и менеджера могут быть самыми разными. Но чаще всего разработчики уходят в техруководители, главные инженеры и пр. А менеджеры становятся инженерными или возглавляют отделы.


4. Чем больше команда, тем быстрее разработка.

Не зря принято считать, что лучше всего удается работать командам из 4-8 специалистов: пару программистов, менеджеров и, как вариант, дизайнер. Большинство компаний используют именно такой принцип, а это значит, что он доказал свою эффективность на практике. 


Только в механическом процессе возможно ускорение процесса за счет повышения количества сотрудников. Как, например, в случае с вводом данных. Но разработка ПО – более сложный и индивидуальный процесс, в котором главное – это не число участников, а их качество. 



5. Релиз состоялся, значит, работа окончена.

Каждая программа – это живой организм, который растет, развивается и непременно изменяется с течением времени. Подвержена переменам и окружающая действительность: новые тенденции на рынке, в сфере технологий и т.д. Пользователям тоже могут потребоваться новые функции и возможности. 


Т.е. разработка – это непрерывная борьба, проходящая в условиях жесткой конкуренции. Обратите вниманеи на Apple: компания существует уже больше 45 лет. А все благодаря тому, что старательно сохраняет и подогревает интерес пользователей, успешно адаптируясь к неизбежным изменениям. 


Релиз продукта – это не финишная черта, а начало нового интересного путешествия. Ведь программа нуждается в дальнейшей поддержке, да и возникающие в процессе эксплуатации ошибки тоже нужно устранять. Новые нужды возникают с завидной регулярностью, без оптимизации код становится ни на что не годным, безопасность необходимо постоянно обновлять… Как вы уже поняли, на релизе работа ни в коем случае не может считаться оконченной.


6. Машинное обучение – это то же самое, что искусственный интеллект.

Понятие искусственный интеллект намного шире, ведь машинное обучение – это всего лишь одно из его подмножеств. Первое охватывает и другие сферы, в том числе обработку естественной речи и компьютерное зрение. А машинное обучение касается только областей с крупными массивами данных. Однако цель и там, и там одна – создать интеллект, который превзошел бы по своим возможностям человеческий.


Итог

Если бы все мифы, о которых мы упомянули выше, были правдой, программное обеспечение, как и информационные технологии в целом, не было бы таким развитым и совершенным, как сейчас. Надеюсь, что мои пояснения убедили вас в ошибочности этих популярных предрассудков. Спасибо за внимание!

()
Количество показов: 0
13 июля 2021

Возврат к списку