Привет, ребята. Сегодня я расскажу вам кое-что о том, как мы разрабатывали Трешбокс.ру. Началось все с того, что в конце 2004 года я начал разрабатывать онлайновую многопользовательскую браузерную игру про хакеров, используя для этого php и mysql. Мне тогда исполнилось 16, и это было самое время для подобных дел — я сделал авторизацию, чатик, боевочку и магазин. На все про все у меня ушел почти год, я очнулся в новогоднюю ночь между 2005 и 2006 годом, и понял, что с моими темпами разработки я закончу примерно к тому моменту, когда браузерные игры будут мертвы. К моему стыду, программировал я тогда еще на Windows, хотя уже и открыл для себя волшебный мир альтернативных браузеров. Осознав, что в одиночку хорошую игру я не состряпаю, я решил сделать сайт-комьюнити для молодежи, которая интересуется разработкой игр, чтобы с его помощью заманить кого-то, кто мог бы мне помочь реализовать какой-то игровой проект, благо задумок было большое количество. Я ознакомился с существующими движками сайтов, и поразился их уебанству. Безусловно, я пытаюсь вести приличную колонку, без мата и всего такого, однако это именно то слово, которое отражало истинное положение дел среди систем управления контентом, поэтому я решил писать собственную CMS. Напомню, это было самое начало 2006 года, мне было 17 лет, и ничего постыдного, в том, чтобы писать свою CMS в этом возрасте еще нет. Я зарегистрировал домен blisswise.com, и начал вовсю программировать Blisswise Web Engine, на четвертой версии которого работает современный Трешбокс, тот самый, что вы имеете удовольствие читать в настоящий момент.
К весне 2006 года я успел попользоваться и смартфонами, и мультимедийными телефонами с поддержкой Java, и каждый раз, когда мне что-то надо было установить на мобильный (будь то асечка или какая-нибудь игрушка) это сопровождалось адовыми муками и посещением чудовищных сайтов, на которых я чувствовал себя весьма и весьма некомфортно. К тому времени я уже был знаком с Ростиславом Форостяным. Было решено, что я сделаю сайт, посвященный мобильным программам и играм, а Ростислав сотоварищи будет наполнять его контентом.
К концу июля 2006 года первая версия сайта была готова. Открытый бета-тест начался 31 июля, а первого августа я уезжал на пару недель в гости к своей тетушке в Прикарпатье, таким образом, несколько недель я провел наслаждаясь чистым воздухом карпатских лесов и сайтом собственной разработки через Opera Mini с замечательного телефона Siemens CX75. По приезду домой у меня была ровно неделя на внесение изменений и улучшений в код, затем я бездействовал еще две недели, но уже в Испании, где местные операторы, не моргнув глазом, съели же в первый же день 20 евро, которые я положил на счет местной симки, чтобы не терять связь с друзьями. Однако, сайт работал вполне сносно. Мы строили планы по его развитию, а так же по разработке моднейших игр. Было решено изменить название сайта на Trashbox.ru, что было насмешкой над тем, что остальные сайты с мобильным контентом были похожи на свалку мусора и ада на каком-то дешевом движке, а на Трешбоксе предполагался красивый простой интерфейс, минимум лишней информации, не больше одного рекламного блока на страницу, скачивание без регистрации и множество других прелестей и красот.
В сентябре-октябре я продолжил улучшение кода, мы переехали на домен trashbox.ru, однако вскоре поняли, что сайту требуются гораздо более серьезные функции, и мы решили временно закрыть его, чтобы спокойно разработать новую версию. Я не помню, когда это было, однако совершенно точно можно сказать, что 19 ноября сайт еще работал, поскольку мы с друзьями посетили концерт Арии, и я делился впечатлениями на страницах сайта. Я начал разработку нового Трешбокса, который мы хотели открыть к весне следующего (2007 года), однако открыли лишь осенью 2008. На этом месте я хотел оборвать рассказ до следующей части, но здесь начинается самое интересное, так что я продолжу.
Это было очень интересное время. У нас было твердое виденье того, что мы хотим получить, программировал я в одиночку, однако была компания людей, с которыми мы обсуждали то, каким сайт должен быть, кроме того, мы вели вербовку людей, которые в будущем займутся его наполнением. Время шло, очередная гениальная идея сменялась другой, движок был в достаточно глубокой разработке. О дизайне пока речь не шла, мы занимались только функционалом. В начале лета 2006 года Паша Форкерт пригласил меня посетить какую-то встречу, я уже не помню, по какому поводу, но там я познакомился с Денисом Крутем, который, хоть и ушел из команды задолго до открытия сайта, но оказал достаточно серьезное влияние на мое виденье ситуации. Мы часто спорили до хрипоты, я приводил веские доводы своей правоты, однако, спустя полгода или год, уже на следующем витке развития функционала, я приходил к тому, что предлагал Денис еще очень давно.
К осени 2007 года мне казалось, что техническая сторона сайта практически полностью готова (до открытия на самом деле было больше года, лол), оставалось придумать дизайн, и я нарисовал знаменитую черно-красную версию Трешбокса за несколько дней в конце сентября. Тогда же я написал несколько топиков на хабре — в первом я рассказывал о ходе разработки проекта и спрашивал, все ли мы делаем правильно, а во втором содержалась краткая информация о сайте, а так же приглашение оставить свою почту, чтобы в будущем получить инвайт, когда сайт будет готов. Мы собрали около двух тысяч адресов таким образом, в последствии мы разослали им письма для бета-теста, но самое интересное произошло чуть позже. На тот момент на базе Приватбанка в Днепропетровске было открыто Стартап-кафе (в то время создание стартапов было особенно модным) куда приглашались разные молодые команды, чтобы провести перед всеми желающими презентацию своего проекта. Мы с радостью откликнулись на приглашение, и рассказали о сайте собравшимся энтузиастам. Надо сказать, что это было хорошее начинание Приватбанка, жаль, что оно умерло. По крайней мере, нас на тот момент очень воодушевило то, что кто-то готов совершенно бесплатно предоставить нам такую возможность.
Важно сказать, что тогда я очень серьезно заблуждался по срокам — мне казалось что буквально за месяц-полтора все будет готово, и мы откроемся. Подобной, кстати, подрывной деятельностью на Хабрахабре занимался и Астрамак — Максим публиковал там новости о том, что он с товарищем начал разрабатывать IM-клиент Lime. Я уже не помню, под каким предлогом, но я предложил Максиму объединить усилия, сперва это было что-то в виде сотрудничества двух проектов, но потом основной разработчик Лайма толи нашел работу, толи попал в армию, толи — в сумасшедший дом, но закончилось все тем, что 2008 год еще не начался, а Максим уже стал членом команды.
Вне всякого сомнения, основная заминка в разработке на тот момент была в верстке и интеграции дизайна в нашпигованный java-скриптами движок. На тот момент еще не было модных эффектов в виде теней блоков и тому подобных вещей, и верстка каждого элемента была весьма и весьма мучительной. Но самый ад начинался тогда, когда я открывал сверстанный для фаерфокса кусок в сраном проклятом интернет эксплорере, и все рушилось в ад. На этом месте я хотел бы передать привет разработчикам этого чудесного браузера. Если у них сейчас крепкая потенция и регулярный стул, значит ни один кармический закон не работает, и справедливости в этом мире нет. Кстати, с весны 2007 года разработку Трешбокса я вел на линуксе — сначала это был OpenSuSE, затем Ubuntu (начиная с 7.04), затем все больше Linux Mint на базе Ubuntu, а сейчас вот уже полтора года снова Ubuntu. Такая вот хронология. Сервера с 2009 года работают так же на убунте.
В начале лета 2008 года, а если точнее 2 июня, мы запустили сайт в закрытом режиме на том же виртуальном хостинге, где крутился наш тестовый сайт. Я вносил усовершенствования, а ребята наполняли его контентом. В августе я опять уехал к тетушке, но на этот раз вместо сименса прихватил с собой ноутбук, и, дорогие друзья, в это сложно поверить, но мне удалось начать бета-тестирование нового Трешбокса 8 августа 2008 года, выходя в интернет через EDGE. Средняя скорость была в районее 5-8 кбайт/сек, и это было весьма серьезным тренингом для терпения и выносливости. Через этот весьма тонкий и ненадежный канал я развернул сайт на новом сервере, мы разослали инвайты (большинство получателей было всерьез удивлено, ведь почту свою они оставляли почти год назад), сайт был доступен только для тех, у кого был инвайт. Так продолжалось до октября, и 8 октября состоялось торжественное открытие сайта. Ко мне в тот день приехала моя девушка, мы приятно проводили время, и немного выпивши, я снял вход по инвайтам и написал торжественный топик. Это было замечательное время.
Однако очень скоро обнаружилось, что притока посетителей на сайт практически нет, и причина — невозможность индексации сайта поисковыми машинами. Дело в том, что движок был построен по прогрессивной на тот момент схеме, весь контент отдавался сервером не в виде HTML-кода, а в виде JavaScript-объектов, которые уже на стороне клиента обрабатывались и превращались в блоки содержимого. Все было прошпиговано аяксом, работало молниеносно, потребляло мало трафика. В этом была основная задумка свежевыпущенной второй версии сайта, которую мы делали почти два года. Однако все это не индексировалось поисковиками и мы были, образно выражаясь, в жопе.
Вот здесь как раз самое время, для того, чтобы прервать свой рассказ. Ждите вторую часть, в ней я расскажу, как мы вышли из положения, за три месяца разработали третью версию сайта, за ней — четвертую, как к нам триумфально примкнули Димочка и Кирюша, и мы достигли посещаемости в сто тысяч человек за сутки в минувшее воскресенье. До новых встреч, помогайте тем, кто нуждается в помощи и не переедайте.
Начал изучать HTML так как у нас тоже с этим жопа. Воспользуюсь сайтом htmkbook.ru.
Вобщем спасибо.