Как стать автором
Обновить
11
0
Стас Тельнов @Stas_Telnov

Пользователь

Отправить сообщение

Как переехать с BuddyBuild на GitLab CI за 4 часа

Время на прочтение 6 мин
Количество просмотров 7K


Предыстория


Полтора года назад команда iOS FunCorp переехала на новый сервис для простой организации CI в iOS и Android-проектах.

До этого мы использовали CI на Bamboo, но с ним было много проблем, поэтому мы совсем отказались от него и перешли на BuddyBuild.

Он работал настолько просто, что можно было даже не знать, что такое CI и как заливать приложение в AppStore, а спокойно заниматься кодом, тестами и продуктовой разработкой.
Но времена поменялись, и BuddуBuild уже не тот, поэтому мы начали поиск альтернативы.
В этой статье мы расскажем о новом решении, которое выбрала наша команда, и дадим несколько скриптов для организации CI собственными силами.
Читать дальше →
Всего голосов 28: ↑27 и ↓1 +26
Комментарии 6

Универсальные ссылки: дворец из подводных камней

Время на прочтение 14 мин
Количество просмотров 27K
При том, как много мобильные приложения дали человечеству, они в то же время «сломали» интернет. Вместо понятных ссылок на сайты, которые можно скопировать и поделиться, стало нужно объяснять «поставь такое-то приложение и зайди там туда-то».

К счастью, разработчики мобильных платформ осознали эту проблему и предложили концепцию «универсальных ссылок», которые одним кликом открывают нужное на любой платформе. Но то, что для пользователя «одним кликом», для программиста — «потом и кровью». На пути к успеху стоит целый ворох неожиданных нюансов, и Константин Якушев познакомился с ними на личном опыте при внедрении универсальных ссылок в Badoo. А затем на нашей конференции Mobius рассказал, как сделать всё правильно и обойти проблемы. Зрителям доклад понравился, и мы решили, что негоже полезному материалу оставаться только видеозаписью, поэтому под катом — его текстовая версия.

В докладе ситуация рассмотрена со стороны iOS, но универсальные ссылки на то и универсальные, чтобы объединять разные платформы, так что извлечь пользу могут не только iOS-разработчики.

Читать дальше →
Всего голосов 39: ↑38 и ↓1 +37
Комментарии 15

Какие вопросы задавать на собеседовании

Время на прочтение 11 мин
Количество просмотров 44K
Каждый разработчик время от времени ищет работу и проходит собеседования. Кто-то хочет попробовать что-то новое, получить большую ЗП или попасть в компанию, в которую всегда мечтал. Не обошло это событие и меня стороной.

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

Чтобы в итоге собеседование не выглядело для соискателя как:


Статья в первую очередь будет полезна всем, кто ищет работу в среде iOS разработки или хоть как-то связан с набором IT специалистов: проводит технические собеседования или любые другие.

И добро пожаловать под кат.
Всего голосов 28: ↑23 и ↓5 +18
Комментарии 40

Новый выделенный сервер: приемка и проверка

Время на прочтение 10 мин
Количество просмотров 41K
Новый сервер: приемка и проверка

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

В этой статье мы расскажем о том, как можно получить спецификацию Linux-сервера в командной строке.
Читать дальше →
Всего голосов 85: ↑73 и ↓12 +61
Комментарии 36

Вредные советы от создателей API Яндекс.Карт. Как сделать так, чтобы всё было плохо

Время на прочтение 8 мин
Количество просмотров 102K
Если гонится за вами
Слишком много человек,
Расспросите их подробно
Чем они огорчены?
Постарайтесь всех утешить.
Дайте каждому совет,
Но снижать при этом скорость
Совершенно ни к чему.
Г. Остер

Сегодня чудесный весенний день. И не только потому что он весенний и очень скоро кому-то придется ехать на дачу копать картошку. А потому что сегодня версия 2.1 API Яндекс.Карт перестает быть beta-версией и становится основной.

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

Разработка API – очень специфичная область программирования. На любую задумку дизайнера и разработчика накладываются потребности и умения пользователей API. Основной фидбек, который мы получаем – это сообщения пользователей в нашем клубе. Туда присылают примеры сайтов с Яндекс.Картами, багрепорты и рекомендации по улучшению нашего продукта. Мы видим, как API смотрится в боевых условиях, и мотаем на ус.

Некоторые вещи часто делают неправильно. Сегодня я хочу о них рассказать. Все советы, которые вы прочтете — вредные. Если вы поймете, что соблюдаете некоторые из рекомендаций этой статьи, ничего страшного – никогда не поздно сделать ваш проект немного лучше. Итак, Irony mode ON.
Читать дальше →
Всего голосов 135: ↑110 и ↓25 +85
Комментарии 75

Список всевозможных методов монетизации мобильных игр

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

Читать дальше →
Всего голосов 56: ↑47 и ↓9 +38
Комментарии 14

Запуск приложения во Вконтакте

Время на прочтение 8 мин
Количество просмотров 48K
image Статья нацелена на начинающих разработчиков, которые хотят запустить свое приложение в социальной сети.

В статье описывается личный опыт создания IFrame-приложения, с нуля, для «Вконтакте», а так же все события которые произошли во время запуска и после, ну и конечно же совершённые ошибки. Можно даже сказать что это не совсем статья, а скорее рассказ.

Помимо рассказа, здесь присутствуют отчеты о нагрузке, попытка монетизации, информация о сервере и разбор кода. Поэтому вы можете переключаться, к интересующим вас пунктам.
Читать дальше →
Всего голосов 41: ↑33 и ↓8 +25
Комментарии 21

Работаем асинхронно в PHP или история ещё одного чата

Время на прочтение 8 мин
Количество просмотров 37K
Меня очень радует, как бурно развивается PHP последние несколько лет. Наверное и вас тоже. Появляются постоянно новые возможности, удерживающие энтузиастов оставаться на данной платформе. Чего только стоит недавняя новость о релизе Hack.

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

Предыстория

В один прекрасный день решил я познакомиться с WebSockets. Меня заинтриговала технология, хотя не сказать бы, что она появилась только вчера, и это совпало с запуском одного чат-сервиса соционической тематики, который страдал массой недостатков. Это придало мне азарт принять участие в конкурентной гонке. Использование веб-сокетов выглядело принципиально новым и многообещающим решением.
Читать дальше →
Всего голосов 45: ↑32 и ↓13 +19
Комментарии 19

8 ловушек программирования

Время на прочтение 13 мин
Количество просмотров 223K


Эта статья содержит те ловушки программирования, в которые я попадал сам, продолжаю попадать и возможно никогда не прекращу, а также те, в которых я находил своих товарищей.

Однако я верю в то, что их можно избежать, если знать в какие ловушки можно попасть и как из них выбираться. Возможно эта вера — очередная ловушка.
Читать дальше →
Всего голосов 276: ↑256 и ↓20 +236
Комментарии 83

О плохих словах, или Как написать текст, не сделав из него какашку

Время на прочтение 8 мин
Количество просмотров 64K
Здравствуйте.
В первой части статьи я расскажу о некоторых стилистических «косяках», которые придают текстам характерный канцелярский унылый стиль. Вторая часть посвящена более серьёзной ошибке, которая, к сожалению, грозит в ближайшее время стать правилом.
Читать дальше →
Всего голосов 204: ↑180 и ↓24 +156
Комментарии 167

CPU Load: когда начинать волноваться?

Время на прочтение 5 мин
Количество просмотров 224K
Данная заметка является переводом статьи из блога компании Scout. В статье дается простое и наглядное объяснение такого понятия, как load average. Статья ориентирована на начинающих Linux-администраторов, но, возможно, будет полезна и более опытным админам. Заинтересовавшимся добро пожаловать под кат.
Читать дальше →
Всего голосов 152: ↑143 и ↓9 +134
Комментарии 87

Что должен знать каждый участник крупного MMO-проекта

Время на прочтение 5 мин
Количество просмотров 66K

Рядовые программисты обычно всё это прекрасно знают. А вот менеджерский состав нередко считает, что совершенно не обязательно разбираться в игровой экономике, клиент-серверной архитектуре и психологии игрового комьюнити. Ведь есть же крутая команда спецов, которые обо всём позаботятся.
Итог очевиден: трудно вспомнить хотя бы один крупный MMO-проект, выпущенный за последние два года, который избежал бы стандартного набора граблей. Такое ощущение, что MMO-индустрия не способна учиться на своих ошибках.
Итак, список вопросов, ответы на которые должен знать каждый, от топ-менеджера до работника техподдержки крупного MMO-проекта.
Читать дальше →
Всего голосов 102: ↑81 и ↓21 +60
Комментарии 114

Проблема старта

Время на прочтение 5 мин
Количество просмотров 11K


В начале 2013 я решил основать компанию.

В предыдущие 4 года я разработал и запустил несколько программных продуктов завязанных вокруг популярного сервиса. Я начал в 2008 году с сайта-хостинга изображений, который быстро вырос до 2-х миллионов уникальных пользователей в месяц. Продолжил в 2011 году андройд-приложением, которое было скачано и установлено более 200 тысяч раз. Но пользовательское соглашение популярного сервиса положило этому конец.

Долгое время мне приходилось работать в одиночестве. Я был системным администратором, PHP, Perl и Android разработчиком одновременно, проектировал и управлял базами данных. Я занимался маркетингом, поддержкой пользователей и решал юридические вопросы. Делал все, начиная от удаления фотографий эротического содержания вручную, заканчивая настройкой Bind серверов.

Когда ты работаешь один, приходится решать слишком много проблем и тебе редко удается найти время, чтобы сделать это качественно. Это постоянное состояние напряжения заставляет многих реализовывать даже мелкие улучшения с ужасающей неэффективностью. Чрезмерно зависимые от других компаний, они находятся в нижних звеньях пищевой цепи. Для моего следующего проекта, наличие команды стало обязательным условием, но когда я попытался её собрать, это оказалось нелегким делом.

Читать дальше →
Всего голосов 49: ↑38 и ↓11 +27
Комментарии 21

Рейтинг постов хаба

Время на прочтение 35 мин
Количество просмотров 55K

Привет, Хабр!

Решил посмотреть лучшие посты своего любимого хаба и с ужасом обнаружил, что такой фичи нет.

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

Читать дальше →
Всего голосов 132: ↑131 и ↓1 +130
Комментарии 35

Все отечественные проекты на Kickstarter в одном посте. //Часть2

Время на прочтение 4 мин
Количество просмотров 27K
В этом посте я собрал все украинские, белорусские, российские проекты, которые когда-либо запускались на Кикстартере. В последнее время, от наших разработчиков запускались не только компьютерные игры, но также несколько гаджетов и интересных проектов в категории дизайн.
Я уже делал большую подборку в этом Хабрапосте, тогда проектов было 39, сейчас их уже 65!
Все проекты с полезными данными и ссылками доступны в таблице через гуглдокс. Надеюсь, что статья будет полезна всем, кто интересуется краудфандингом как в роли покупателя, так и в роли автора собственного проекта.

image
Читать дальше →
Всего голосов 29: ↑28 и ↓1 +27
Комментарии 21

Тёмные паттерны: интерфейсы, предназначенные для обмана

Время на прочтение 6 мин
Количество просмотров 113K

Гарри Бринул (Harry Brignull) — независимый дизайнер пользовательских интерфейсов из Лондона с кандидатской по когнитивной науке. Он также известен как создатель сайта Тёмных паттернов, предназначенного, по его словам, «перечислению и осмеянию веб-сайтов, использующих обманчивые интерфейсы пользователя». Данная статья основана на презентации, которую он показывал в Мюнхене в апреле на Search Marketing Expo.

Статья переведена и опубликована с согласия автора.

Когда Apple выпустила iOS 6, одной из новых фич была не слишком анонсируемая компанией система рекламного отслеживания Identifier for Advertisers (IDFA). Она присваивает каждому устройству уникальный идентификатор, использующийся для слежения за активностью браузера и создания таргетированной рекламы. IDFA анонимен, но неприемлем для людей, заботящихся о приватности.

К счастью, Apple реализовала возможность отключения фичи.
Читать дальше →
Всего голосов 132: ↑131 и ↓1 +130
Комментарии 115

Кто живет в соцсетях?

Время на прочтение 8 мин
Количество просмотров 75K

Как бы ни гремели скандалы про PRISM, про персональные данные и их утечки, социальные сети так и манят поведать о себе всё: какие котята нравятся, с кем ты дружишь и почему с утра такой не выспавшийся.
Целая энциклопедия о поведении большинства интернет-активной публики лежит совсем рядом, и мне всегда хотелось её пощупать. С одной стороны, эти данные лежат вроде бы в открытом доступе, но просто взять и проанализировать их не так легко — всё слишком неструктурировано и разрозненно. К тому же, насколько я знаю, пригодных для машинного анализа наборов данных о соцсетях практически не существует. А для России — так и подавно.
Выбора не оставалось, и пришлось, зловеще хохоча по ночам, писать простеньких пауков для соцсетей ВКонтакте, Одноклассники, МойМир и русского сегмента Фейсбук, которые за несколько месяцев неспешно собрали более или менее статистически-корректный семпл данных. Собиралась только та информация, которую люди сами о себе рассказали. А рассказали они много.

О том, что удалось выудить из таких данных, и пойдет рассказ.
Читать дальше →
Всего голосов 131: ↑124 и ↓7 +117
Комментарии 115

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

Время на прочтение 11 мин
Количество просмотров 39K
Привет Хабра!

Эта статья продолжает цикл статей об игровом движке StalinGrad. В прошлой статье мы насиловали DHTML, а в этой — будем насиловать архитектуру и прототипы.

Кода практически не будет, поэтому, если вы не web разработчик, можете просто почитать про архитектуру и ООП. И таки да — про HTML5 тут снова ничего не будет, только DHTML-хардкор :)



Сразу короткое демо:
Пример 1 — паралельные миры
Пример 2 — один мир с разных камер
Пример 3 — боты
Пример 4 — нянкэт, облака и портальная пушка
Читать дальше →
Всего голосов 93: ↑88 и ↓5 +83
Комментарии 34

Erlang для самых маленьких. Глава 2: Модули и функции

Время на прочтение 6 мин
Количество просмотров 30K
imageДоброго вечера, дорогие Хабровчане. Мы продолжаем изучение Erlang для самых маленьких.

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

В этой главе мы поднимемся на следующую ступень и рассмотрим модули и функции.


Хочу узнать больше
Всего голосов 56: ↑51 и ↓5 +46
Комментарии 15

Введение в анализ сложности алгоритмов (часть 4)

Время на прочтение 5 мин
Количество просмотров 98K
От переводчика: данный текст даётся с незначительными сокращениями по причине местами излишней «разжёванности» материала. Автор абсолютно справедливо предупреждает, что отдельные темы могут показаться читателю чересчур простыми или общеизвестными. Тем не менее, лично мне этот текст помог упорядочить имеющиеся знания по анализу сложности алгоритмов. Надеюсь, что он окажется полезен и кому-то ещё.
Из-за большого объёма оригинальной статьи я разбила её на части, которых в общей сложности будет четыре.
Я (как всегда) буду крайне признательна за любые замечания в личку по улучшению качества перевода.


Опубликовано ранее:
Часть 1
Часть 2
Часть 3

Оптимальная сортировка


Поздравляю! Теперь вы знаете о том, как анализировать сложность алгоритмов, что такое асимптотическая оценка и нотация «большое-О». Вы также в курсе, как интуитивно выяснить является ли сложностью алгоритма O( 1 ), O( log( n ) ), O( n ), O( n2 ) и так далее. Вы знакомы с символами o, O, ω, Ω, Θ и понятием «наихудшего случая». Если вы добрались до этого места, то моя статья уже выполнила свою задачу.

Этот финальный раздел — опциональный. Он несколько сложнее, так что можете не стесняясь пропустить его, если хотите.От вас потребуется сфокусироваться и потратить некоторое время на решение упражнений. Однако, так же здесь будет продемонстрирован очень полезный и мощный способ анализа сложности алгоритмов, что, безусловно, стоит внимания.
Читать дальше →
Всего голосов 58: ↑54 и ↓4 +50
Комментарии 6
1

Информация

В рейтинге
Не участвует
Откуда
Заречный (Пензенская обл.), Пензенская обл., Россия
Дата рождения
Зарегистрирован
Активность