Произведения бинарного искусства
Свежий номер: 16 апреля 2024 (4968)
тираж номера: 2561 экз.
Архив номеров
USD 77.17
EUR 77.17
Версия для слабовидящих
Электронная копия газеты Оформить подписку
16+


Светлое, проветренное помещение, улыбчивые сотрудники, несколько компьютеров – так выглядит не офис банка, а небольшая контора по разработке программного обеспечения. Основные специалисты – программисты, те самые, что в народной молве предстают в образе пухлого, безобидного, красноглазого, немытого добряка, которому женщину заменяет системный блок. На деле все иначе – программист, не асоциальный гражданин, ему приятно внимание и общение и даже с девушками у них полный порядок.    
Константин Цуканов – молодой курский программист, а также совладелец небольшой фирмы. Правда, его внешний вид об этом не сообщает. Он одет модно и практично, носит стильную бородку и усы, говорит без заикания и не боится смотреть в глаза. Типичный молодой человек. Отличает его от большинства лишь заметная невооруженным глазом эрудиция – чего еще ожидать от чемпиона Кубка Губернатора по «Что? Где? Когда?». Закончил ЮЗГУ, специальность выбрал подходящую – информационные системы и технологии.
Корреспондент «ГИ» провел с Константином один рабочий день, чтобы ответить на вопрос – врут ли стереотипы о программистах? Для того, чтобы этот репортаж заработал без ошибок, было решено сделать его с учетом правил программирования. Они и станут подзаголовками текста. Начнем с первого и самого главного.
Постановка задачи и создание алгоритма ее решения
Проснулся, встал, умылся, перекусил и отправился на работу. Таков распорядок любого программиста. А пока Константин добирается до работы, есть почти сорок минут для раздумий.  Ответ приходит уже в офисе. Целый пласт известных стереотипов рушится в одночасье. Поэтому с постановкой задачи проблем не возникает – увидеть не стереотипных программистов, а реальных.
– Главное, что привлекает меня в программировании – возможность заставлять компьютер делать что-то за меня, – признается Контантин.
– Еще круто, что можно писать простые программы для автоматизации рутинной работы. Помню как писал программы, которые писали программы за меня. Еще любил мечтать о продуктах посложнее, пока не пришло время их воплощать.
На столе у Константина творческий беспорядок, на рабочем столе компьютера – вид на горы в El Capitan (Эль Капитан). Но когда он открывает один из своих проектов, все меняется. Неподготовленный человек не сможет разобрать в этом упорядоченном наборе символов хоть какой-нибудь смысл или последовательность. Программист же видит здесь картину, где все на своих местах.
– Это – самый скучный этап программирование. Написание кода сперва вызывает восторг, но монотонный набор — символ за символом — нагоняет тоску, особенно день ото дня, когда конца проекту не видно. Благо сейчас есть множество инструментов упрощающих рутинные процессы. Другое дело – проектирование. Некоторые задачи сродни строительству небоскреба. Очень многое нужно учитывать и придумывать, решать инженерные задачки. А еще интересно наблюдать, как то, во что ты вложил частичку себя, работает.
Проектирование общей структуры
Во время работы он предельно сосредоточен. Со стороны он походит не на программиста, а на бухгалтера. Как только появляется свободная минутка он с удовольствием разминает кости и вновь продолжает рассказ.
– О программировании я узнал еще до появления компьютера. В 11 лет мне попалась книжка по информатике, в которой были примеры программ на Basic. В 12, когда компьютер у меня появился, я мечтал создавать игры. Интернета тогда не было, так что информацию о программировании я собирал урывками. Был WarCraft III (компьютерная игра) с его встроенным редактором карт и сценариев, который позволял создавать сложные штуки просто выбирая в меню нужные значения. Настоящим программированием это не назовешь, но оттуда я узнал, что такое события, условия, циклы и прочее.
Сейчас компьютерные игры не занимают в его жизни много времени, но поиграть в новинки, или классику он всегда рад.
– Писать программы начал в 10-м классе, когда учительница по информатике дала мне первые наставления по алгоритмам и одолжила книжку по языку Turbo Pascal. После уже самостоятельно изучал Visual Basic, а когда понял, что с ним ничего выдающегося не сделаешь, искал материалы по языку C, благо интернет у меня уже появился. Страсть к играм угасала и на её место пришло желание заниматься веб-проектами.
Время неспешно приблизилось к обеденному перерыву. Константин достал пару яблок.
– Раньше в свободное время я писал короткие рассказы, близкие по духу то Хантеру Томпсону, то Анджею Сапковскому. Одно время даже планировал написать собственную книгу, но не сложилось. Стараюсь побольше читать. Иногда играю в компьютерные игры, ведь это в высшей степени сплетение технологий и искусства. Когда очень хочется – пишу рассказы. А вообще, почти все мое время распределено между фирмой и девушкой.
И вот тут у нас зашел вопрос о стереотипах. По мнению Константина, эти стереотипы появились благодаря масс-медиа и имеют они такое же отношение к программистам, как и к бизнесменам, водителям или разнорабочим.
– Потные и вонючие? Ну, дэдлайн (окончательный срок исполнения заказа) на носу, трое суток в офисе. Бывает и такое. Боятся света? Ну попробуйте при свете одного монитора ночь напролет искать утечку памяти. Не говорят с людьми? Просто обдумывают, почему их программа не работает. Читают комиксы? Ну, а как можно не любить первый выпуск Бэтмена, где Джокер загадочным образом сообщает кто умрет и в какое время? Боятся девушек? Неправда! Девушек программисты не боятся. Ну, а если серьезно, все эти стереотипы привязываются к кому угодно.
Кодирование
Кодирование — запись алгоритма на языке программирования. Если говорить просто, то это уже – непосредственное написание программы. Самый трудоемкий и нервный процесс. Здесь становятся видны все промашки в подготовительном этапе.
– Программирование – инструмент в руках художника. Пользователи не видят этого, но приятно знать, что там, «за монитором», все работает как швейцарские часы, где каждая шестеренка на своем месте. Когда из команд образуется что-то сложное – незабываемо.
Программирование — как написание книги или картины, процесс схожий. Слово за словом, мазок за мазком, рождается произведение. И да, иногда достает подолгу сидеть за компьютером и вглядываться в код. Это сложная профессия, одна ошибка может заставить вас час рвать волосы на голове, чтобы в конце концов выяснить, что вместо латинской «C» вы набрали русскую «Эс». Зато в этом есть и несомненный плюс. Работа программистом позволяет иметь плавающий график, трудиться на дому. А вот зарплата не фиксированная – сколько наработал, столько и получил. Впрочем, это справедливо.
Константин продолжал набирать. Код становился объемнее и сложнее. Правда, к концу рабочего дня никакой конечной цели не было выполнено. Нужно еще несколько дней для того, чтобы завершить очередное произведение бинарного искусства.
Отладка и тестирование
Вопрос о том, какими качествами должен обладать программист смутил Константина.
– Это сложный вопрос. Программисты ничем не отличаются от представителей других ремесел. Однако если поразмыслить, хороший программист должен обладать отличной памятью, так как порой в голове приходится держать структуры 3-4 проектов сразу, правда в моем случае это идет в ущерб именам и датам. А еще программист должен иметь математический склад ума, потому что так или иначе почти все тут построено на математике. Должна быть инженерная ответственность. Зато отрицательные черты программистов он назвал моментально.
– Как правило программисты плохо оценивают силы, постоянно не выдерживают сроков, не собраны, не находятся в фокусе. Но когда фокусируются, порой за день делают двухнедельный участок работы.
Восьмичасовой рабочий день истек.
Анализ результатов
В конце рабочего дня телефон Константина зазвенел. Это была его девушка. Он недолго поговорил и начал спешно одеваться, что заняло у него около минуты. Он попрощался со всеми и скрылся за порогом.
В общем, из этого, можно сделать вывод: программисты – обычные люди. Им нравится то, что любит каждый из нас. Если вы услышите очередной их «особенности», будьте уверенны, это всего-лишь стереотип.
Илья ПОЛАНИН
  • Комментарии
Загрузка комментариев...