[Перевод] Логично ли, что Гугл отклонил кандидатуру Макса Хауэлла, автора Homebrew, за неумение инвертировать бинарные деревья?

habr.png
Disclaimer: Вопрос из заголовка был задан на сайте Quora
и сопровождался ссылкой на твит разработчика Homebrew. Ответил, неожиданно, главный персонаж.


Привет, я — тот самый Макс Хауэлл, так что, по-хорошему, наверное, и не должен был бы тут отвечать.


Привет, я Макс Хауэлл, последние два года я старался не отвечать вот на этот, ну, или, кучу очень похожих вопросов. Может быть и в этот раз не стоило.

Так что там насчет логики? Ясно ведь, что я создал что-то достойное Гугла, да?

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

Удивительно ли, после этого, что я не смог нормально ответить на их глубоко-теоретически-ориентированные вопросы?

С другой стороны — моя программа оказалась невероятно успешной. Почему? Ну, ответ не стоит искать в царстве компьютерных наук. Я всегда фокусировался на пользовательском опыте при создании своих программ. Homebrew заботится о пользователе. Если что-то пошло не так при использовании Homebrew — он изо всех сил старается подсказать вам, почему — он ищет на Githab-е похожие проблемы и показывает их вам. Он заботится о Вас. Большинству же инструментов на Вас просто плевать. Что-то пошло не так — кирдык тебе. Homebrew помогает вам. И если он помочь не может — я постарался сделать так, чтобы исправить ситуацию было несложно (встроил команду для редактирования и исправления Homebrew). Вы можете сделать Homebrew лучше, и он — блестящий пример истинно Открытого ПО.

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

В защиту Гугла — во-первых, я не просто не смог инвертировать двоичное дерево, я вообще не очень понимал, что такое «двоичное дерево». Я изучал химию, не информатику. Конечно, во время защиты диссертации я использовал Mathematica, и я моделировал квантовомеханические свойства гелия (хорошо потрудился, кстати), но, еще раз, это было вообще не про информатику. А, с другой стороны, какое, вообще, отношение имеют компьютерные науки к современной разработке приложений? Вот именно это я хотел отметить в том своем твите.

На самом деле, Гугл провел со мной семь интервью, и я был неплох как разработчик, потому что в этом, фактически, и заключается мой талант. Мне не по себе за тот твит: получилось нечестно, он только подлил масла в эту геенну гневно-ориентированного-чтива, в которую превратился современный интернет, именно поэтому стал таким популярным и именно за это мне искренне стыдно.

Но, в конце концов, должен ли был Гугл нанять меня? Да, конечно да. Я часто веду себя как козел, со мной часто трудно, я часто плаваю в компьютерных науках, но. Но. Я умею создавать действительно клевые вещи, может не идеальные, но людям они по-настоящему нравятся. Несомненно, несомненно Гуглу это могло бы пригодиться.

© Habrahabr.ru