Pull to refresh
4
0
buzzman @galo4kin

Супермэн

Send message

9 причин перейти с Python на Go

Reading time10 min
Views20K

Переход на новый язык — это всегда большой шаг. Особенно, если этим языком владеет только один член команды. В начале этого года мы поменяли основной язык программирования в Stream — с Python на Go. В этой статье я приведу 9 причин почему — и 3 минуса, выявленных в процессе. 

Кодить на Python не брошу, но посмотрю
Total votes 37: ↑9 and ↓28-19
Comments36

Зачем вам эмоциоанльный дизайн

Level of difficultyEasy
Reading time8 min
Views4K

Привет! Я Лёша. Cейчас руковожу командами эмоционального дизайна и UX-редакторов в Альфе. До этого почти пять лет работал в Яндексе и помогал строить лучший автомобильный классифайд Авто.ру, сначала в роли дизайнера, а потом руководил продуктовым дизайном.

В середине прошлого года я стал арт-директором и начал строить команду эмоционального дизайна на уровне корпорации.

Те, кто давно в дизайне интерфейсов, наверняка наблюдали перевоплощения роли дизайнера, которые влияли на их зарплату: веб-дизайнеры, UI/UX, продуктовые и теперь даже growth. Вроде достаточно, зачем нам ещё эмоциональные? Или это опять перевоплощение? Продуктовым дизайнерам надо переживать?

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

Читать далее
Total votes 17: ↑15 and ↓2+13
Comments21

Telegram бот для сложных квестов

Reading time5 min
Views29K
«В чем же заключается преимущество?» — спросите вы, ну все дело в том, что в нем можно построить логику примерно из следующих выражений:

– Пользователь на шаге N?
– Сообщение содержит изображение и смайлик?
– Текст подходит под регулярное выражению «I am [a-zA-Z]+»?
– Время получения раньше/позже заданного?
– Это было нажатие на клавиатуре/обычное сообщение/inline-кнопка?


Большинство из этих правил могут быть в зависимости друг от друга, но об этом чуть позже.

Для начала, о чем я хочу рассказать:

  1. Об идее проекта – зачем я это сделал, какие есть аналоги, но почему мне они не нравятся.
  2. Архитектурных решениях, какие возникли трудности, как были решены.
  3. Что получилось в итоге и стоило ли оно того, дальнейшее развитие.
Читать дальше →
Total votes 9: ↑9 and ↓0+9
Comments6

10 главных выводов, которые я сделал за Год Изучения Продуктивности

Reading time9 min
Views192K
Предисловие переводчика: В мире написано столько книг по личной эффективности и тайм-менеджменту, что берясь за этот перевод я безусловно задавал себе вопрос: «А есть ли здесь вообще что-то новое, ради чего эту статью стоит переводить, и главное читать»? Сначала мне казалось, что я ответил на этот вопрос «да», однако реальность оказалась несколько сложнее. 

Сейчас я думаю, что сказать что-то новое человеку, который прочитал хотя бы 2-3 книги по тайм-менеджменту и личной эффективности практически невозможно. Однако существует огромная пропасть между тему, что люди знают, и тем, что люди делают. Поэтому если у вас уже есть какой-то багаж знаний по личной эффективности, я советую вместо вопроса «это что-то, чего я не знаю?» задавать другие вопросы:

1. Согласен ли я с написанным?
2. Если да, поступаю ли я так?
3. Если нет, почему и что я могу сделать чтобы начать поступать правильно? 

Уверен, так статья принесет вам гораздо больше пользы.

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

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

В качестве последнего пожелания – это довольно длинная статья, поэтому читайте продуктивно: не переключайтесь между задачами в процессе чтения; делайте перерывы если ощущаете усталость и потерю концентрации; записывайте полезные мысли, не надеясь на память.

Приятного чтения!
Читать дальше →
Total votes 79: ↑70 and ↓9+61
Comments68

100 приемов по управлению временем, вниманием и энергией

Reading time15 min
Views289K
Примечание переводчика: Перевод первой статьи из блога «A Year of Productivity» был благосклонно встречен хабра-сообществом, и меня попросили перевести еще несколько статей из этого блога. Приведенная ниже статья — самая большая и самая близкая к практике, её перевод затянулся у меня на несколько месяцев. Как и прошлый раз рекомендую читать комфортными порциями, записывая (или копируя куда-нибудь) советы, которые хочется попробовать применить на практике.

«Хаки» времени


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

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

Для начала вот несколько моих любимых приемов по тому как:
-  получить больше времени;
-  тратить время на правильные вещи.
Читать дальше →
Total votes 71: ↑55 and ↓16+39
Comments53

Mozilla выпустила первый браузер для разработчиков

Reading time2 min
Views120K
Как и сообщалось ранее, Mozilla выпустила первый браузер, который создан специально для разработчиков. Несмотря на то, что официальный пресс-релиз о выходе новинки будет доступен 10 ноября, попробовать новый браузер можно уже сейчас.



Стала известна новая информация о Firefox Developer Edition:
Читать дальше →
Total votes 84: ↑75 and ↓9+66
Comments48

Свой интернет-магазин на Google Checkout. Еще проще!

Reading time1 min
Views1.5K
В блоге GoogleDocsBlog ранее уже писали о совместном использовании Google Docs и Checkout для продаж в сети. Инвентаризация проходит через Google Spreadsheet, а для платежей используется Google Checkout.

На страницах блога появилась новая запись о том, что использовать данную возможность стало еще проще благодаря новому гаджету.
image

Автоматизация большинства ручных процессов нового мастера помогает сократить время на создание интернет-магазина и оставляет больше времени на ведение бизнеса.
Читать дальше →
Total votes 14: ↑10 and ↓4+6
Comments7

Основы программирования под Android на примере игры Судоку

Reading time6 min
Views375K
В статье описаны основные трудности создания приложений под Android.
Рассматриваются базовые понятия программирования Android.
Для примера описано создание игры Sudoku из книги Hello, Android – Ed Burnette.
Осторожно много скриншотов.

Читать дальше →
Total votes 137: ↑131 and ↓6+125
Comments48

Спокойной ночи!

Reading time6 min
Views21K
image Около месяца назад я приобрел HTC Hero. Основной причиной, по которой был выбран этот телефон, а не iPhone, была возможность полноценно разрабатывать приложения под Windows.

В качестве пробы пера я написал небольшую программу, которая выключает звук на ночь. Под катом описание процесса разработки и ссылка на программу.
Читать дальше →
Total votes 139: ↑126 and ↓13+113
Comments72

Полезные хаки и сниппеты для .htaccess

Reading time7 min
Views461K


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

О предназначении файла .htaccess знает каждый веб-разработчик. На базовом уровне он позволяет управлять доступом к каталогам сайта. Но добавляя в него различные дополнительные фрагменты кода, с ним можно сделать и много других интересных вещей.

Если же вам нужны базовые сведения о предназначении данного файла, то вы можете получить из нашей статьи введение в .htaccess (перевод данной статьи не делал, так как там основы, их достаточно в русскоязычном сегменте Сети, но если будет проявлен интерес, то можно и ее перевести для полноты картины — прим. переводчика), в которой достаточно подробно раскрыты все аспекты его применения.
Узнать больше
Total votes 114: ↑92 and ↓22+70
Comments82

Переезд проекта с SVN на Git

Reading time8 min
Views71K
image
Много лет подряд в качестве системы контроля версий для большого количества проектов использовали только SVN. Но наступил момент, когда количество разработчиков на одном из проектов заметно увеличилось, проект уже запущен в работу, и нужно как активно разрабатывать параллельно несколько фич, так и фиксить уже имеющиеся баги в оперативном режиме. Единый trunk в SVN не позволяет этого делать, а организация бранчей в нем же превращает жизнь разработчиков в ад. Поэтому было принято решение о переезде этого проекта с SVN на Git.
Читать дальше о том, как это делается от А до Я
Total votes 119: ↑113 and ↓6+107
Comments51

Agile Board. Как мы планируем в Яндекс.Картинках и как к этому пришли

Reading time5 min
Views105K
Наша команда занимается разработкой интерфейсов для четырех крупных проектов: Яндекс.Картинки, Яндекс.Видео и их версий для смартфонов. Разработка верстки поисковых сервисов в Яндексе обладает своей спецификой. Задачи стекаются с разных сторон: от менеджеров, разработчиков бэкэнда, поиска, проявляются баги и т.д. Внедряются новые фичи, требующие отображения в верстке. Все это стекается в наш таск-трекер (JIRA).

При этом задач всегда больше, чем ресурсов. Всем заказчикам нужно сделать задачи как можно раньше, все поднимают приоритеты своих задач. У разработчиков уходило слишком много времени на то, чтобы разобраться, какие из этих неотложных задач самые неотложные. Это очень тормозило развитие, и нужно было что-то предпринимать. Сделать так, чтобы каждый разработчик знал, какими именно задачами ему заниматься сегодня, а какие можно отложить на завтра, следующую неделю, месяц.

image

В конечном итоге большинство наших проблем удалось решить при помощи Agile Board и Scrum, но пришли мы к этому далеко не сразу, а поэтапно.

Как мы это делали, и что получилось
Total votes 93: ↑79 and ↓14+65
Comments57

Romo: домашний питомец

Reading time5 min
Views58K
Конструкторы, Lego, радиоуправляемые машинки и вертолёты, компьютерные игры… Индустрия производит массу товаров для детей любых возрастов, но давайте будем честными: покупка и последующие игры для пап увлекательны не меньше (а порой гораздо больше), чем для их любимых чад.

Недавно ко мне приехала посылка с очередной игрушкой для сына (ага, я тут ни при чём!) — робот Romo:

(iPhone в комплект поставки не входит)

Хочу познакомить всех читателей с этим замечательным, не побоюсь этого слова, домашним питомцем. Мы в офисе уже успели наиграться в него.
Читать дальше →
Total votes 105: ↑90 and ↓15+75
Comments16

Книги для тимлидов и руководителей проектов

Reading time2 min
Views171K
Какими свойствами должен обладать хороший тимлид? Он, несомненно, должен быть технарем, иметь разносторонний опыт, уметь налаживать диалог внутри команды и с начальством, вести дискуссии и принимать решения, брать на себя ответственность, понимать бизнес-процессы, думать как заказчик и владелец бизнеса. Ну и быть немного психологом.

В отечественном IT я часто наблюдаю следующую картину: тимлидом часто становился лучший (?) разработчик из команды (aka 23-летний сеньор). А чтобы стать руководителем проекта (project manager) иногда достаточно просто знать английский и «павэрпойнт» на уровне пользователя. Это реалии отечественного аутсорсинга и с этим нужно как-то жить.

В итоге часто получается как-то так:
Потому что на десять сеньоров по статистике девять тупят.
Читать дальше →
Total votes 84: ↑74 and ↓10+64
Comments53

Codeception — тестирование по-новому

Reading time4 min
Views87K
PHP очень популярный язык программирования, но тестирование в нем, это скорее прерогатива экспертов, а не жизненная необходимость. Неужели это от того, что PHP-разработчики поголовно быдло-кодеры? Я считаю, что нет. Скорее всё от того, что системы тестирования порой излишне усложнены. А тесты, наоборот, должны были предельно просты: легко читаться, писаться, отлаживаться, и конечно же, быстро выполняться. Мое виденье того как это можно воплотить в PHP вылилось в проект под названием Codeception.

С ним тесты для ваших веб-приложений могут выглядеть так:
<?php
$I = new TestGuy($scenario);
$I->wantTo('create new blog post');
$I->amOnPage('/blog/posts');
$I->click('Create new post');
$I->fillField('Title','Codeception, a new way of testing!');
$I->fillField('Text','Codeception is new PHP full-stack testing framework.');
$I->click('Send');
$I->see('Congratulations, your post is successfully created!');


Согласитесь, такой тест понятен без дополнительных комментариев.
А теперь самое интересное: этот код без всяких изменений может быть выполнен как функциональный тест в фреймворках symfony, Symfony2,Zend Framework, а также в браузерном эмуляторе Goutte и даже через Selenium. Таким образом, вам предлагается единый интерфейс для написания функциональных тестов практически для любого сайта.
Читать дальше →
Total votes 75: ↑70 and ↓5+65
Comments68

Yii и мультиязычный сайт. Правильные URL и гибкость в работе

Reading time5 min
Views40K

При написании одного проекта, возникла необходимость в организации мультиязычности на сайте. Причем количество языков не должно ограничиваться двумя и URL должны быть человеко-понятные и SEO оптимизированные. Тоесть ссылки на сайте должны быть вида:
http://mysupersite.ru/ru/contacts для русского языка
http://mysupersite.ru/en/contacts для английского языка
Так как опыт у меня не очень большой, я начал вопрошать гугл. Вариантов, как оказалось, достаточно много, однако из всех мне приглянулся один вариант, который я использовал и слегка модифицировал.
Итак, как сделать сайт мультиязычным...
Total votes 35: ↑29 and ↓6+23
Comments67

Lily — модуль для управления пользователями с авторизацией через различные сервисы

Reading time2 min
Views4.5K
Думаю, редкий человек, следящий за блоком Yii на хабре, не видел статью об экстеншене для авторизации через социальные сети EAuth. Сегодня я хочу представить в некотором роде продолжение этой темы, а именно модуль для управления пользователями, основанном на вышеупомянутом дополнении.
Читать дальше →
Total votes 29: ↑25 and ↓4+21
Comments18

Кеширование в Yii с помощью тегов

Reading time3 min
Views9K
Yii позволяет кешировать данные в виде массива возвращаемые прямиком из базы данных.
А у системы кеширования есть разные зависимости. Вот только ни одна из этих зависимостей не позволяет автоматически отслеживать изменения в таблице без обращения к ней же (имею ввиду CDbCacheDependency), что в нагруженных системах бессмысленно.

Для подобных вещей придумали так называемое тегирование. Т.е. создается какой-то тег, который сохраняется со всеми кешами связанными с данной таблицей. И как только он меняется, все связанные кеши должны перезагрузиться. Как оказалось в Yii это делается очень просто.

Читать дальше →
Total votes 26: ↑23 and ↓3+20
Comments5

Мониторинг сайта с помощью Google Docs

Reading time2 min
Views13K


Автор блога Digital Inspirations Амид Агарвал (Amit Agarwal) опубликовал скрипт для Google Docs, который опрашивает статус сайта и заносит ответ в ячейку таблицы. Таким образом, можно сделать сервис мониторинга своими руками. Google Docs позволяет запускать скрипт с минутным интервалом и получать уведомления на email.
Читать дальше →
Total votes 106: ↑100 and ↓6+94
Comments32

Information

Rating
Does not participate
Location
Россия
Registered
Activity