html текст
All interests
  • All interests
  • Design
  • Food
  • Gadgets
  • Humor
  • News
  • Photo
  • Travel
  • Video
Click to see the next recommended page
Like it
Don't like
Add to Favorites

Программисты Evil Martians, Bookmate и Yahoo рассказывают о красоте кода

Программисты *Evil Martians, Bookmate и Yahoo рассказывают о красоте кода*

© [Johan Rosenmunthe](http://www.rosenmunthe.com/work/off--2009/)
© Johan Rosenmunthe

«Теории и практики» продолжают цикл материалов о природе разных профессий. В этот раз 5 программистов из различных компаний рассказали, что их вдохновляет, нужно ли им было высшее образование и что такое красота кода.

Иван Евтухович

Работа: команда разработчиков Evil Martians («Групон», Gamer.ru, Rap.ru).
Язык: Ruby.
Возраст: 29 лет.
Образование: МФТИ, физика и прикладная математика.

Я влюбился в компьютеры классе во втором, мне было тогда 9 или 10 лет. В школе и институте я участвовал в олимпиадах по программированию, занимал даже какие-то места на городе и области, а когда учился на пятом курсе и пошел заниматься айкидо, мне надо было брать откуда-то деньги. Я прикинул, что я умею, и понял, что что-то могу сделать с компьютером, вот и пошел в программисты. То есть, это не был такой сознательный шаг, все получилось очень спонтанно и случайно.

Я из поздних. Пошел работать программистом в 22, и это очень заметно сказывается на профессиональном уровне. Многие мои коллеги начали в 17-18. Какое-то время я относился к этому как к способу зарабатывания денег, а потом понял, что мы с программированием вместе надолго, и стал относиться как к профессии. То есть, стал квалификацию повышать, книги читать, сертификаты получал в «Майкрософте». Я понял, что можно участвовать в самых крутых проектах, что мои знания и способности позволяют мне это сделать. И для меня это был какой-то внутренний прорыв — что можно не за деньги работать, а делать то, что тебе нравится, — за деньги.

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

Я учился в МФТИ, специальность — «физика и прикладная математика». Там были какие-то азы программирования, но к тому моменту, как я туда пошел, я знал больше преподавателя. Я немного жалею, что в области алгоритмов не получил дожного образования, но в целом все можно в свободное от работы время наверстать. У меня был период, когда я сознательно с 18 до 19 только читал техническую литературу на работе. Надо сказать, в этом была огромная польза для будущего. Это как в любой профессии, мне кажется. Надо практиковать и любить — тогда что-то начнет получаться. Сейчас я руководитель отдела разработки «Групона». Это, кстати, после «Одноклассников» случилось, в которых я тоже успел поработать еще на старте.

Самое любимое в работе — это когда чего-нибудь ломается, а ты садишься, думаешь какое-то время, и бац — у тебя решение, в одну строчку. Когда в голове целиком все развернешь, такую огромную картинку, и она подскажет решение. Люблю красивые абстракции, когда какую-то предметную область можно представить проще, и поначалу вообще не понимаешь, как это работает, а потом, когда понимаешь, думаешь: «Ух, какая красота»!

Из людей, задающих направление в программинге, мне нравится Дмитрий Завалишин (dz). Его подход — лучше попробовать что-то необычное и новое сделать, чем умничать и говорить, что это невозможно, ненужно и просто глупо. В России модно что-нибудь критиковать, ругать, а самим ничего при этом не делать.

Я думаю, что надо просто что-то делать самим.

Андрей Руденко

Работа: компания «Телемаркер».
Язык: Ruby.
Возраст: 22 года.
Образование: незаконченное высшее, БГУЭП, мировая экономика и юриспруденция.

Думаю, что не последнюю роль в том, что я стал программистом, сыграл отец, как-то сказавший слово PHP. На летних каникулах я читал про этот странный похапе и ставил апач — веб-сервер, чтобы изучать PHP. После школы устроился работать программистом в иркутский интернет-портальчик. Впрочем, учиться я поступал в разные места, к программированию не имевшим никакого отношения: в физико-математический лицей №1 города Норильска, Байкальский государственный университет экономики и права (БГУЭП), на мировую экономику и юриспруденцию. В каждом из них я отучился по году, а потом вообще работал какое-то время риелтором. Вообще, ничего умнее, чем «так получилось, что я стал программистом», и не придумать, потому что на адвоката нужно дольше было учиться.

Моя работа — не что-то поэтичное, а 11 дюймов фильтров, кристаллов и стекла в приятной алюминиевой окантовке.

Я руби-программист, тут есть свои герои, большинство из которых пишут «красивый код», и почему-то под красивым сейчас кодом стали пониматься методы по 3 строчки. Если ты написал 5 тысяч строк методами по 3 строчки, то ты хороший программист, стоишь 10 яблок, если по 5, то, простите, уже 8. Так проще определять. Хороший код делает то, что нужно, и легко читается.

У программиста есть относительно уникальная возможность видеть результат своего труда. Во всяком случае, среди офисного планктона, я думаю, программисты на высокой ступеньке. Журналист может бросить друзьям раскрытый на своей статье журнал, архитектор — показывать внукам город, который он проектировал, программист — ткнуть в монитор. Архитектор, конечно, вне конкуренции, но с другой стороны, а много ли в России гордящихся своей работой архитекторов?

В России не научат программированию нигде. Кто-то считает, что программисту с вышкой отдают предпочтение потому, что он уже доказал, что может 5 лет заниматься ерундой, не задаваясь вопросом «зачем», а в нашей работе это важно. Но мне, конечно, часто не хватает той базы, которую, возможно, дал бы мне технический вуз. Я не думаю, что какое либо образование может способствовать занятию чему либо. Ты просто занимаешься тем, чем хочется, если это не так, — то все плохо. Другое дело, что для работы хирургом обязательно учиться 9 лет, для того, чтобы стать адвокатом — 4 года, а программисту вообще не нужно. Но не 9 лет способствуют работе лечить людей, а желание работать способствует появлению этих 9 лет в жизни. В идеальном мире, конечно.

Тимофей Цветков

Работа: команда разработчиков Evil Martians («Групон»), Lookatme.
Язык: Ruby.
Возраст: 25 лет.
Образование: МГУ, вычислительная математика.

Мои мама и папа были программистами. В классе 8-м или 7-м я понял, что мне не нравится просто пользоваться компьютером, я хочу создавать программы сам. Я хочу делать что-то, чем будут пользоваться другие люди. Мама купила мне книжку по Pascal, дала мне дискетку с компилятором и средой разработки, и я начал писать свои первые программы. Приходил из школы, садился программировать. Мысли оживали на экране. Это было волшебство. Тогда программирование было похоже для меня на поэзию. Теперь то чувство полета ушло… Мне кажется, это как с журналистикой: хотелось писать — стал журналистом, а потом выясняется, что журналистика никакого отношения к литературе не имеет. Такая вот странная подмена. Довлатов даже вспоминается: «А правда, что все журналисты мечтают написать роман? Нет, — солгал я».

Конечно же, мне хотелось быть гением. Хотелось быть кем-нибудь вроде Харди, Манина, Концевича (тем более я тоже учился в 91-й школе), Перельмана. Но оказалось, что у меня нет таланта. А если у тебя нет ни малейшего шанса стать лучшим из лучших, то математикой нет смысла заниматься. Что остается? Либо финансы, либо программирование. Если любишь спать утром и не спать ночью, то стоит выбирать программирование. Я так и поступил. После школы я поступил на факультет вычислительной математики и кибернетики МГУ. Очень скоро мне понадобились деньги, чтобы водить девочек в кафе, и я нашел какую-то первую подработку программистом.

В проектах меня вдохновляет любой технологичный бизнес, который упрощает людям жизнь. И особенно проекты, которые упрощают жизнь и стимулируют людей тратить деньги. Например, пиратство. Я считаю, что проблема лежит не в правовом поле и не имеет никакого отношения к совести и честности. Дело лишь в том, что часто украсть проще, чем купить. Если скачать торрент проще, чем купить диск или аудио-файл, то люди будут качать торренты, но как только купить становится проще, люди идут и тратят деньги. Есть несколько замечательных примеров и самый известный из них — это iTunes Music Store, который, к сожалению, недоступен в России. Тоже самое с App Store для Mac OSX. Или же аренда фильмов и сериалов для AppleTV, или Netflix. Все эти сервисы дают возможность получить тебе контент легально и проще, чем воровать его же.

Чем красивее и чище написан код, тем проще его поддерживать. В большинстве проектов так или иначе приходиться работать со старым или чужим кодом, и спустя нескольких месяцев мало кто помнит, как и что там на самом деле работает. И если код написан небрежно, то разобраться в нем сложно.

Хорошие программисты, как и хорошие пишущие журналисты, — большие эстеты. Что же касается практик, которые помогают писать красиво, то тут опять как и в обычном языке. В программировании для каждой технологии есть свои книги и статьи, есть даже своды правил. Но пользоваться ими осознанно, набирая каждую строчку кода, вряд ли возможно. Надо учиться это чувствовать. Например, Горький призывал следить за фонемами на стыках слов. Это хорошо при редактировании, когда тебе чем-то не нравится фраза, но думать об этом при написании каждого слова невозможно. В программировании все тоже самое.

Когда код нравится мне самому спустя пару дней после того, как я его написал, — значит, код получился красивый. Я люблю, когда нужно думать над решением интересной задачи, когда просто хорошо работает то, что я делаю. Иногда пользователям это незаметно. Но я-то знаю, чего стоило заставить эту фичу работать быстро.

Сейчас я горжусь своими рабочими днями, когда выложился так, как считаю я должен работать всегда. Последнее время это удается все реже. Лето, наверное. Девушки в коротких шортах и с большими вырезами. Особенно тяжело, когда я бываю в Тель-Авиве. Для израильтянок естественно в жару откровенно одеваться. Или правильнее сказать раздеваться?! Невозможно работать.

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

Алексей Гусев

Работа: проект Bookmate.
Язык: Ruby.
Возраст: 25 лет.
Образование: ТГУ, факультет математики и информатики.

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

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

Мне очень нравится Why the lucky Stiff. Это парень, который очень хорошо разбирался в компьютерах, рисовал комиксы, писал музыку и стихи. Не думаю, что он был счастлив, но сколько всего хорошего он нам подарил! Я вот не умею гордиться собой, гордыня моя ведет себя странно. Но я горжусь своими коллегами. Те еще засранцы, но вы бы видели, что они делают!

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

Грег Соловьев

Работа: Zimbra, McAfee, Yahoo и VMWare.
Язык: Ruby.
Возраст: 31 год.
Образование: РГГУ, факультет защиты информации.

К программированию меня пристрастил отец. Он переучился на программиста в конце 80-х (до этого был геофизиком). Папа тогда работал на самых разных машинах: от мейнфреймов, которые занимали два этажа и читали информацию с перфокарт, до ранних российских клонов IBM PC с черно-желтым дисплеем и новейших западных компьютеров. Когда папа приводил меня на работу, меня все эти машины абсолютно завораживали, я тоже хотел к ним приобщиться, хотелось не только играть, но и забраться внутрь. Еще в 80-х родители где-то достали детские книжки про программирование, я уже не помню как они назывались, но одна серия книжек была сделана в виде комиксов, и я просто не мог от них оторваться. Меня завораживал этот маленький мир внутри машины, эта альтернативная реальность. В то время не за что было зацепиться в смысле жизненных ценностей, понятия о том, что такое хорошо, и что такое плохо, менялись со дня на день: тот, кто вчера был героем, сегодня назывался подлецом, а в компьютере все было абсолютно и понятно: там единица никогда не становится нулем сама по себе. Кроме того, работая с компьютером, меньше соприкасаешься с тем, что творится вокруг — а вокруг был полный бардак.

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

Мне нравится работать с умными людьми, у которых можно поучиться.

Программа — это здание, которое можно смоделировать так, что для прохода в соседнюю комнату нужно выходить на чердак, а можно сделать удобно и красиво. Код — как механизм, если он не продуман, то сломается в самый ответственный момент под критической нагрузкой. Большинство задач уже решено и перерешено миллионы раз, и тем не менее, часто бывает так, чтобы посмотрев на что-то, что я написал пару лет назад, я думаю: «Какой дурак это написал»! На работе часть нашего кода — открытая, все могут его видеть, поэтому когда я пишу код, я задумываюсь о том, как его оценят другие. Часто, посмотрев на чей-то код, становится противно, когда понимаешь, что человек просто схватил первое попавшееся решение и не задумался о том, подходит ли оно вообще в данной ситуации.

Мне нравится решать новые необычные задачи и создавать программы, которые делают за людей то, что иначе занимает много усилий и времени. Когда-то давно я писал первые в России электронные магазины (первый онлайн-магазин для ГУМа, например). В 99-м сделал сайт, позволяющий посылать смски через интернет. Позже, в 2004-м, в Zimbra, мы создали один из первых и один из самых навороченных ajax-интерфейсов. Сейчас в моей собственной компании CityBot мы придумали уникальный алгоритм создания туристических маршрутов.

Я люблю создавать вещи, которые делают жизнь удобнее и приятнее. Когда я написал онлайн-магазин Exchange3d.com, самое классное время было, — когда пошли первые продажи, когда оно все само заработало. Когда люди готовы добровольно расстаться с заработанными трудом деньгами в обмен на то, что создал ты, — это и есть подтверждение ценности твоей работы.

Читайте также:

«Фоторедакторы Esquire, «Афиши» и «Русского репортера» рассказывают о своей профессии»

Читать дальше
Twitter
Одноклассники
Мой Мир

материал с theoryandpractice.ru

56
    +38 surfers

      Add

      You can create thematic collections and keep, for instance, all recipes in one place so you will never lose them.

      No images found
      Previous Next 0 / 0
      500
      • Advertisement
      • Animals
      • Architecture
      • Art
      • Auto
      • Aviation
      • Books
      • Cartoons
      • Celebrities
      • Children
      • Culture
      • Design
      • Economics
      • Education
      • Entertainment
      • Fashion
      • Fitness
      • Food
      • Gadgets
      • Games
      • Health
      • History
      • Hobby
      • Humor
      • Interior
      • Moto
      • Movies
      • Music
      • Nature
      • News
      • Photo
      • Pictures
      • Politics
      • Psychology
      • Science
      • Society
      • Sport
      • Technology
      • Travel
      • Video
      • Weapons
      • Web
      • Work
        Submit
        Valid formats are JPG, PNG, GIF.
        Not more than 5 Мb, please.
        30
        surfingbird.ru/site/
        RSS format guidelines
        500
        • Advertisement
        • Animals
        • Architecture
        • Art
        • Auto
        • Aviation
        • Books
        • Cartoons
        • Celebrities
        • Children
        • Culture
        • Design
        • Economics
        • Education
        • Entertainment
        • Fashion
        • Fitness
        • Food
        • Gadgets
        • Games
        • Health
        • History
        • Hobby
        • Humor
        • Interior
        • Moto
        • Movies
        • Music
        • Nature
        • News
        • Photo
        • Pictures
        • Politics
        • Psychology
        • Science
        • Society
        • Sport
        • Technology
        • Travel
        • Video
        • Weapons
        • Web
        • Work

          Submit

          Thank you! Wait for moderation.

          Тебе это не нравится?

          You can block the domain, tag, user or channel, and we'll stop recommend it to you. You can always unblock them in your settings.

          • tandp
          • домен theoryandpractice.ru

          Get a link

          Спасибо, твоя жалоба принята.

          Log on to Surfingbird

          Recover
          Sign up

          or

          Welcome to Surfingbird.com!

          You'll find thousands of interesting pages, photos, and videos inside.
          Join!

          • Personal
            recommendations

          • Stash
            interesting and useful stuff

          • Anywhere,
            anytime

          Do we already know you? Login or restore the password.

          Close

          Add to collection

             

            Facebook

            Ваш профиль на рассмотрении, обновите страницу через несколько секунд

            Facebook

            К сожалению, вы не попадаете под условия акции