Pull to refresh
7
0.1
Илья @Rastishka

CEO, CTO, founder

Send message

Светодиодная лента в качестве освещения комнаты

Reading time15 min
Views1.3M
Изначально для основного освещения одной из комнат, где шёл капитальный ремонт, планировалась обычная люстра. Но недавно мне на глаза попалась суперяркая светодиодная лента Ultra 5000 со светодиодами smd 5630 торговой марки Arlight. Решение было принято быстро, окончательно и бесповоротно — хочу такую ленту в качестве основного света в комнате.



О реализации светодиодного периметра освещения далее
Total votes 420: ↑415 and ↓5+410
Comments329

Дюжина дизайнерских косяков

Reading time6 min
Views139K


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

Спустя время я выделил несколько неочевидных вещей, на которые старался обращать внимание, и в большинстве случаев находил ошибки. Получился небольшой чеклист. Очень полезный как для самопроверки, так и для проверки чужого дизайна. Им с вами и спешу поделиться:
Читать дальше →
Total votes 225: ↑210 and ↓15+195
Comments140

Быстрый выбор случайных значений из больших таблиц MySQL по условию

Reading time2 min
Views44K
Задача выбора случайных строчек из таблицы довольно часто возникает перед разработчиками.
В случае, если используется СУБД MySQL, обычно она решается примерно следующим способом:

SELECT *
FROM users
WHERE role_id=5
ORDER BY rand()
LIMIT 10


Такой код работает крайне медленно для больших таблиц.
Если в запросе не нужно использовать WHERE или таблица небольшая, есть эффективные решения, например habrahabr.ru/post/54176 или habrahabr.ru/post/55864.
Но готовых решений для большой таблицы и необходимости фильтровать по условию, получая при каждом запросе новые значения, я не нашел, поэтому описание моего способа под катом.
Читать дальше →
Total votes 20: ↑12 and ↓8+4
Comments18

Как и зачем я решил начать собственное дело

Reading time8 min
Views190K
Салют, Хабр!
Недавно я уволился с довольно завидной должности (главного архитектора) в довольно неплохой компании (Acronis) и с непоколебимым решением в мозгу больше не работать по найму переехал из Москвы обратно в Ереван, откуда семь лет назад понаехал в Златоглаво-Нерезиновую. Учитывая необычность произошедшего и часто задаваемый вопрос «но почему?!», я решил разобраться в собственных мыслях и озвучить их вслух для себя самого и тех, кто может почерпнуть в моих размышлениях что-то для себя полезное. Короче говоря, это рассказ о том, почему я оставил высокооплачиваемую перспективную работу в международной компании ради сомнительной перспективы начать собственное дело, и как я собираюсь дальше жить.
Читать дальше →
Total votes 321: ↑291 and ↓30+261
Comments418

intro.js — пошаговое руководство для веб-страницы

Reading time1 min
Views51K


Эта маленькая библиотека позволяет очень просто создать пошаговое введение для сайта или приложения. Достаточно добавить атрибуты data-intro и data-step с описанием и номером шага соответственно к нужным элементам страницы. Вот так:

<a href='http://google.com/' data-intro='Hello step one!' data-step='1'></a>
Читать дальше →
Total votes 139: ↑134 and ↓5+129
Comments24

Видео-курс по JavaScript на русском языке

Reading time1 min
Views218K
Здравствуй, Хабр!

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



Первая лекция: Введение в JavaScript, немного истории, числа (тут есть ошибка: функция toFixed округляет значения).



Остальное – под катом.
Читать дальше →
Total votes 135: ↑127 and ↓8+119
Comments23

Центробанком России утверждён официальный знак рубля

Reading time6 min
Views100K
Сегодня вдвойне знаменательная дата. Во-первых, сегодня 11.12.13 года. Во-вторых, сегодня Центробанк России наконец-то утвердил официальный знак рубля. Эта история началась ещё в 2006-ом году, когда в статье 4 закона «О Центральном банке России» появился пункт 2.1, разрешающий Центробанку утверждать официальный знак рубля:

закон

Год спустя, летом 2007-го года, была образована инициативная группа специалистов, в которую вошли «Дизайн-депо», «Дизайнет», «Директ-дизайн», «Имадизайн», «Леттерхед», «Паратайп» и студия Артемия Лебедева. 1 августа 2007-го года данная группа представила публике выбранный ими в ходе обсуждения и обмена мнениями знак рубля:
Читать дальше →
Total votes 158: ↑142 and ↓16+126
Comments117

HTML в PDF

Reading time2 min
Views120K
html to pdf

В далеком 2008 году уже была написана подобная статья и я попытался применить знания, но, к сожалению, не справился с русским языком (на denwer-е работал, на хостинге нет). Возможно сказалось отсутствие опыта. А недавно нашел хорошую библиотеку и решил поделиться. Топик, скорее всего, адресован начинающим программистом и ни на, что не претендует.
Читать дальше →
Total votes 144: ↑129 and ↓15+114
Comments81

250 строк кода, распознающих дату на русском языке

Reading time2 min
Views47K
Около года назад мне понадобилось распознавать даты в тексте, который вводят пользователи. Пришлось немного разобраться в регулярных выражениях и написать функцию, на вход которой поступает текстовая строка, а в результате получается распознанная дата.



Пример и код в jsFiddle.
Читать дальше →
Total votes 120: ↑115 and ↓5+110
Comments77

Безопасный метод авторизации на PHP

Reading time9 min
Views363K
Примечание: мини-статья написана для новичков

Давайте посмотрим вокруг: форумы, интернет магазины, гостевые книги и т.д. используют регистрацию и последующую авторизацию пользователей. Можно даже сказать, что это почти необходимая функция каждого сайта (только если это не домашняя страничка Васи Пупкина или не визитная карточка, какой-нибудь небольшой компании). Сегодня я хочу поделиться со всеми новичками информацией, о том, как лучше это все реализовать.
Читать дальше →
Total votes 37: ↑28 and ↓9+19
Comments229

Поиск различных вариантов транслитерации русских текстов (ФИО) латиницей для выборок в MySQL

Reading time5 min
Views13K
Собственно, столкнулся с банальной задачей — есть база, в которой есть масса данных ФИО, написанных латиницей. Зачастую достаточно безграмотно и непредсказуемо транслитерировано. Вроде бы и есть ГОСТ 7.79 (ISO 9), но на практике его далеко не всегда соблюдают.
Задача — есть БД с записями (как правило, ФИО) латиницей. Плохой латиницей. Требуется по русской подстроке поиска в вэб-приложении выбрать из БД (MySQL) записи, похоже транслитерированные на латиницу.

Читать дальше →
Total votes 8: ↑6 and ↓2+4
Comments6

FileAPI 2.0: Загрузка файлов на сервер год спустя

Reading time11 min
Views70K
FileAPI 2.0Привет Хабр! Примерно год назад я представил вашему вниманию первую версию open-source библиотеки FileAPI, предназначенную для работы с файлами на клиенте и последующей загрузки на сервер.

За это время был пройден долгий путь. Библиотека заработала 670+ звезд и 90+ форков. С помощью github-сообщества удалось исправить множество «детских» проблем и внести ряд улучшений. Было закрыто более 100 тасков, и благодаря Илье Лебедеву сделана загрузка файлов по частям. Сегодня я с гордостью хочу представить вам FileAPI 2.0.
Читать дальше →
Total votes 166: ↑157 and ↓9+148
Comments85

Улучшаем релевантность поиска в sphinxsearch

Reading time4 min
Views58K
Sphinxsearch является поисковым движком для быстрого fulltextsearch, может получать данные из mysql, oracle и mssql, может выступать сам хранилищем(realtime индексы). Также sphinx имеет режим работы через api и через sphinxql — аналог протокола sql(с некоторыми ограничениями), что позволяет подключить поиск через sphinx на сайте с минимальным изменением кода. Это один из немногих великих, крупных и открытых проектов разработанный в России. На моей жизни я видел как sphinx обрабатывает порядка 100-200 поисковых запросов на 2 миллиона записей из mysql и при этом сервер свободно дышал и его не тошнило, mysql начинает умирать уже на 10 запросах в секунду на аналогичном конфиге.

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

Sphinx содержит две независимые программы indexer и searchd. Первый строит индексы по данным взятым из базы данных, второй производит поиск по построенном индексу. А теперь перейдем к настройкам поиска в sphinx.

morphology

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

Пример нормализации слова стеммингом на русском.
Слова “яблоко”, “яблока”, “яблоку” будут обрезаны в “яблок” и любой поисковый запрос с вариацией слова “яблока” будет тоже нормализован и найдет записи со словами которые были описаны выше.
Читать дальше →
Total votes 33: ↑32 and ↓1+31
Comments17

Как устроена биржевая торговля в России

Reading time5 min
Views98K
Мы довольно часто слышим новости о том, что происходит на зарубежных биржах. Лондонская биржа и NASDAQ, кажется, знакомы даже далеким от биржевой торговли пользователям Сети. Зачастую в этих новостях рассказывается об успехах зарубежных финансистов, в частности, в области технологий – рекордах скорости транзакций, производительности, или, наоборот, сбоях оборудования или программного обеспечения. В результате создается впечатление, что зарубежные площадки самые технологичные в мире.

А что у нас? Помимо повторяемых из года в год слов о необходимости создания в стране международного финансового центра, казалось бы, особенных телодвижений в этой области не происходит. С одной стороны – это так, с другой же – отечественный фондовый рынок значительно интереснее, чем об этом принято думать. И интересен он, в первую очередь, с технологической точки зрения.
Читать дальше →
Total votes 76: ↑62 and ↓14+48
Comments60

Калькулятор окон ПВХ для сайта на JS. Часть 1. Аналитика

Reading time7 min
Views16K
Речь в статье пойдёт об оконном калькуляторе. Да, я знаю что их море, но тот, о котором хочу рассказать — особенный. Он позволяет считать стоимость оконных изделий на сайте со средним отклонением от расчётной программы на производстве в 0.002%. На момент запуска проекта (май 2011 года) это калькулятор был единственным решением такого рода. Как обстоят дела с этим сейчас я не знаю, но судя по периодическим звонкам, допускаю что изменилось мало чего.

Особенности проекта:


Качественная предварительная аналитика задачи. Именно она определила ту границу которая позволила создать простой инструмент для основной целевой аудитории, полностью учитывающий требования по специфике для ~90% изделий требующих расчёта. В первой части будет именно об этом.

Выбор HTML5 Canvas в качестве основы для графической реализации. Многие разработчики до сих пор считают что данная технология “экспериментальная” и не подходит для сервисов ориентированных на широкую публику. Что тут говорить о марте 2011 года?.. Данный выбор стоил мне килограмма нейронов, но он полностью себя оправдал. Этому, а также другой специфике с которой пришлось бороться при реализации задачи будет посвящена вторая часть.

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

С чего всё начиналось
Total votes 45: ↑18 and ↓27-9
Comments20

Хабрахабр попал в реестр запрещенных сайтов

Reading time1 min
Views126K
9 октября Роспотребнадзор внес Хабрахабр в реестр запрещенных сайтов, сообщает «Роскомсвобода».



Решение было принято из-за комментария к статье «Роскомнадзор и ЛБИ разработали критерии оценки запрещенной информации в интернете о самоубийствах», в котором хабравчанин shara цитировал ироничную запись о способе самоубийства. Там же приводились ссылки на ЖЖ, «ВКонтакте», «Ответы@ Mail.Ru» и другие ресурсы, где был доступен текст этой записи. Сам комментарий уже удален, его автор находится в «read-only».
Читать дальше →
Total votes 374: ↑351 and ↓23+328
Comments693

Генератор utf-8 json на php с поддержкой unicode 6

Reading time3 min
Views16K
Разумеется, в PHP есть прекрасная функция json_encode. Но до версии 5.3 включительно те же русские символы кодируются в виде \uXXXX — в разы длиннее, чем utf-8. Чтобы уменьшить объем трафика, необходимо убрать преобразование utf-8 символов в \u-последовательности. Да, в PHP 5.4 у json_encode наконец-то появился параметр JSON_UNESCAPED_UNICODE, но многие хостеры до сих пор представляют пользователям выбор только между версиями 5.2 и 5.3.

Я бы не стал изобретать очередной велосипед, но те решения, которые мне попадались, имеют общую проблему — они корректно обрабатывают только символы базовой плоскости юникода.
Читать дальше →
Total votes 24: ↑14 and ↓10+4
Comments5

Чистим HTML-код при вставке текста из MS Word в HTML5 WYSIWYG редактор (contenteditable)

Reading time5 min
Views24K
Здравствуйте!

При написании своего WYSIWYG редактора возникла проблема копирования текста из Ворда. Собственно проблем три:
  • Ворд вставляет много мусорного html кода, который необходимо чистить
  • Для представления списков Ворд почему-то использует параграфы вместо тегов UL и LI
  • Собственно как определить, что вставленный текст является вставленным из Ворда.

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

$(‘#editor’). msword_html_filter();

Плагин вешается на событие keyup и проверяет, является ли исходный код внутри редактора вставленным из Ворда, если да, то запускается функция очистки. В результирующем html прибивается все что только можно – неразрывные пробелы, атрибуты style и align, теги span, все Mso-классы, пустые параграфы.

Детали реализации под катом.

UPD Демо на CodePen

Читать дальше →
Total votes 55: ↑52 and ↓3+49
Comments18

Как устроены продажи в мобильной студии

Reading time6 min
Views11K
Привет Хабр!

Меня зовут Дима, мне 21 год. В Тач Инстинкт я пришел год и три месяца назад на позицию менеджера по продажам. Приходил еще будучи студентом, просто попробовать и, возможно, сделать свою последнюю попытку в качестве продажника. До этого я много где пытался продавать: я продавал курсы ЕГЭ, катаясь по школам; продавал лицензии на строительство, обзванивая по холодной базе город Сочи. В своё время я даже вписался в мутную МЛМ историю.

Под катом dmitrykostin расскажет как устроен отдел продаж в нашей компании: CRM, планирование и отчеты.
Читать дальше →
Total votes 37: ↑17 and ↓20-3
Comments16

Верстка писем, набор сниппетов

Reading time3 min
Views30K


Автор изображения MVBen

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

В ходе работ у меня накопилось немного готовых решений, которые я сам ныне держу у себя под рукой и крайне часто использую, чем и с вами хочу поделиться.
Читать дальше →
Total votes 57: ↑49 and ↓8+41
Comments16

Information

Rating
3,823-rd
Location
Черногория
Date of birth
Registered
Activity