пятница, 9 января 2009 г.

8 Простых Вопросов bishop3000.

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

1. Какой проект запомнился вам больше всего? Расскажите о нем и о своей роли в нем?

Пожалуй, больше всего мне запомнилась разработка игры Стальные Монстры. Это был очень большой проект, на который мы потратили в общей сложности 5 или 6 лет, если считать все предварительные работы и аддоны. Я не участвовал в этом проекте с самого начала, а перешел на него примерно через год, после того, как он начался. И вскоре занял на нем должность главного программиста проекта.
Основная сложность этого проекта была в его размере. Это была попытка совместить 3 разных игры в одной. Причем попытка, не продуманная полностью заранее. И, как это всегда случается с плохо продуманной большой системой - она начинает рушиться в конце, когда первый же клиент выставляет ей оценку 1 балл по 10-ти бальной шкале. Было очень сложно поднять эту оценку с 1 балла хотя бы до 7-8-ми, но нам это в итоге удалось.
За время разработки этой игры я побывал, думаю, во всех возможных ролях - был программистом, главным программистом, тестером, геймдизайнером, писателем, участником форумных баталий, даже графику рисовал и озвучку записывал (слава богу, что она не вошла в релиз)! И это был реальный фан. Нет ничего приятнее, чем сделать что-то, что вначале было сверх твоих сил и возможностей.

2. Размышляя о том проекте сейчас, как вы думаете - можно ли было сделать тот проект лучше?

Конечно, в конце проекта ты всегда обладаешь всей полнотой знаний про него. И, если с этими знаниями вернуться в начало проекта, то его можно сделать в разы, повторяю, в разы быстрее. Но для этого нужна машина времени.
Думаю, что это утверждение верно для любого в достаточной мере инновационного проекта. Ибо, если ты не знаешь вначале проекта ответа хоть на один из вопросов по нему - это уже дает вероятность ошибки и прибавляет X часов к времени разработки. А если ты не знаешь ответов на 1000 вопросов, то потратишь на поиск ответов и ошибки уже 1000*X часов. А в конце проекта ты уже знаешь ответы на все вопросы и эти 1000*X кажутся бесполезной тратой времени и сил.
Так что, чтобы делать проекты лучше, нужно с самого начала уменьшать число вопросов, на которые вы не знаете ответа. Уменьшать можно двумя способами - находить ответы (читай "понимать, как сделать фичу") или удалять вопросы (читай "удалять сложные и непонятные фичи"). При этом "удалять вопросы" всегда предпочтительнее, так как это стопроцентно уменьшает неопределенность, а найденный ответ может оказаться неправильным.

3. Какие языки бы вы посоветовали обязательно изучать начинающим программистам, тем, кому сейчас 14-18 лет? Почему?

Я сам - программист старой формации, знающий только отмирающие языки, вроде C и C++. Предвижу волну возмущения, но статистика неумолима. Поэтому все советы, что я дам ниже, я даю в том числе и себе :)
Во-первых, анализ предложений на рынке труда говорит мне, что сейчас очень выгодно знать Java. Очень много выгодных вакансий требуют знания Java. И кривая спроса всё растёт и не собирается падать. Так что выбирайте Java - не прогадаете.
Во-вторых, всё больше набирают силу языки на платформе .Net. Они просты в изучении и у них огромный потенциал. Вакансий, требующих знания C#, VB.NET или ASP.NET - множество.
Ну и последнее, но не менее важное: новый язык программирования изучить не проблема - важно просто уметь программировать и знать предметную область.

4. Как случилось так, что вы сами выбрали именно эту профессию?

На мой 12-й день рождения родители подарили мне ZX Spectrum. На нем я изучил Basic и основы программирования, причём без единой книги, так как в нашей деревне книг не было, а про интернет я услышал только в университете :) Именно Speсtrum определил мой выбор профессии. Как, собственно, и у многих моих друзей - знаковый был компьютер.
Мне нравится отстраненность программирования, состояние полного сосредоточения и получение работающей программы.
Нравится идея, стоящая за программированием - автоматизация монотонного ручного труда и освобождение людей для более важных дел.
Наконец, мне просто нравятся компьютеры своей безотказностью и постоянной готовностью работать :)

5. Что вы больше всего любите/не любите в программировании?

Люблю "состояние потока".
Люблю детали, когда полностью понимаешь, как работает огромный проект и почему именно так.
люблю присваивать задачам статус Done.
Люблю иметь большой список задач, простых и сложных, чтобы каждый день была возможность выбрать, что делать.
Люблю тестировать свою работу, как это ни странно звучит.

Не люблю простые однотипные задачи.
Не люблю частые изменения требований и авралы.

6. Ваши прогнозы развития IT на 2009-й год? на 3 года вперед?

Я читаю разные официальные прогнозы и они все неутешительны. Большинство сходится во мнении, что можно забыть про большой рост в следующие 3-5 лет. Цифры роста в IT не будут двузначными еще долго - от 1% до 5% в год до 2012 года.
Но всё-таки рост будет, а значит IT будет впереди многих остальных отраслей экономики, где будет спад либо нулевой рост.

7. В чем Вы черпаете вдохновение, помогающее Вам работать?

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

8. Есть ли у вас оффлайновое хобби?

Сейчас я увлекся спортом. В основном - футболом. Играю, получаю удовольствие и набираю былую спортивную форму.
Ну и главное моё увлечение и хобби - это дочь. Это увлечение отнимает больше всего времени и дает больше всего радости.

1 комментарий:

Анонимный комментирует...

Wunderschön!
Отличное интервью.
Брать интервью у программистов это замечательная идея.
Спасибо!