Как был создан Buildkite?

Как был создан Buildkite?

  Кейт Питт, создатель BuildKite, рассказал нам интереснейшую историю его проекта.

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

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

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

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

  “Никогда не переписывайте ничего с нуля и никогда не делайте проект на новом для вас языке. Это глупо. Но в тоже время, по какой-то причине получилось неплохо”.

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

  На некоторое время Кейт переехал в Перт, чтобы работать с Pin Payments, его друзьями из сообщества Ruby, которые дали ему возможность работать неполный день и доделать BuildBox(так он решил назвать свой проект). Развитие программы продолжилось, даже некоторые крупные компании стали использовать BuildBox.

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

  На данный момент BuildBox продается по всему миру и широко известен в кругах разработчиков. Однако Кейт слегка промедлил с юридической частью и не успел подать заявку на регистрацию товарного знака. Компания, продвигающая свой игровой движок, делающий игры без кода, опередила его. Этой компанией также был выкуплен домен, на который Питт положил глаз. Из-за хорошей рекламы, по запросу BuildBox в Google они были на первой строчке. В результате Кейту начали поступать гневные письма, от школьников, которые не смогли сделать свой клон на flappy bird. Питта такая ситуация явно не устраивала. Но его адвокат сказал, что максимум того, чего они могу добиться через суд – это возможность использовать одно и тоже имя для двух разных продуктов. А это никому не было нужно, поэтому оставалось только переименовать проект.

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

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