Как стать автором
Обновить
34
0
Вячеслав Радионов @Slaver

веб-разработчик

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

Как я обработал один миллиард строк в PHP

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров18K

Вероятно, вы уже слышали о соревновании под названием "The One Billion Row Challenge" (1brc), если же нет, то предлагаю ознакомиться с репозиторием 1brc Гуннара Морлинга.

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

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

Читать далее
Всего голосов 76: ↑74 и ↓2+72
Комментарии33

Откуда сайт знает, что ты сидишь в уборной?

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


Многие не представляют, какой объём данных можно снимать с акселерометра в смартфоне. Думаете, информация используется только для поворота экрана? Далеко не так. На самом деле паттерны движения смартфона и его положение в пространстве многое говорят о действиях пользователя: он сидит, лежит, стоит, бежит… Можно распознать личность человека по голосу из динамика, записав реверберации корпуса смартфона через акселерометр. Определить, кто находится рядом в автобусе или автомобиле (с такими же паттернами движения).

Некоторые приложения постоянно снимают эти данные без разрешения пользователя (в Android и iOS 15 разрешение не требуется). Не только приложения, но и веб-сайты.
Читать дальше →
Всего голосов 89: ↑87 и ↓2+85
Комментарии154

Деанонимизируем пользователей Windows и получаем учетные данные Microsoft и VPN-аккаунтов

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

Если вы не видите эту картинку, то данные вашей учетной записи Windows уже скомпрометированы.

Введение

Давным-давно, когда компьютеры были одноядерными и прекрасно работали с 256 МБ RAM, а сети под управлением Windows уже использовались очень широко, ребята из Microsoft подумали, что было бы удобно аутентифицироваться только один раз, при загрузке компьютера, а доступ на внутренние ресурсы происходил бы автоматически, без ввода пароля, и сделали так называемую технологию единого входа (Single Sign-on). Единый вход работает очень просто: когда пользователь пытается получить доступ к какому-либо ресурсу с NTLM-аутентификацией (стандартный способ аутентификации в сетях Windows), ОС сразу передает название домена, имя учетной записи и хеш пароля текущего пользователя, и если под этими данными войти не удалось, показывает диалог ввода имени пользователя и пароля. Шли годы, проблемы с безопасностью реализации технологии единого входа давали о себе знать, одни из которых успешно исправляли, другие исправляли менее успешно, а о третьих почему-то совсем забыли. Так и забыли о проблеме передачи учетных данных для единого входа на SMB-ресурсы (сетевые ресурсы: файлы и папки, принтеры, и т.д.) через интернет, которую можно эксплуатировать во всех современных ОС, включая Windows 10 со всеми последними обновлениями. Об этой особенности работы стека аутентификации вспоминают каждые 1-2 года, последний раз о ней рассказывали на Blackhat US 2015, но Microsoft не спешит что-либо менять.
Читать дальше →
Всего голосов 191: ↑186 и ↓5+181
Комментарии194

Боты в телеграм: опыт, откровения, советы по разработке

Время на прочтение10 мин
Количество просмотров26K
Давайте сразу по делу. Содержание статьи:
  • С чего мы начали писать ботов в Telegram. Первый опыт.
  • Создание nodejs библиотеки bot-brother для быстрого написания ботов.
  • Разбираем код свеженаписанного бота DeloreanBot
  • Общечеловеческие рекомендации по созданию популярного бота
  • Философские рассуждения о монетизации ботов


Поехали.
Читать дальше →
Всего голосов 26: ↑19 и ↓7+12
Комментарии19

«Запустись или забудь»: Как недоработки тормозят ваше развитие

Время на прочтение2 мин
Количество просмотров13K
Наш основной принцип работы — предоставление клиентам простых и понятных инструментов, с которыми смогут работать даже те, кто не сталкивался с ИТ сферой. Для воплощения данной установки мы проводим постоянную оптимизацию всех систем и рассказываем о том, что нам удалось сделать в нашем блоге на Хабре. Пара примеров:


Сегодня мы решили переключиться на необычную тему — исправление недоработок. Для этого мы нашли профильный материал эксперта.

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

По-настоящему адаптивные письма. Часть вторая. Фреймворк

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

Картинка для привлечения внимания честно сперта у invisionapp (кстати, у них божественная рассылка)

С момента публикации последнего поста прошло ни много ни мало, полтора месяца, но на то были причины. Уйма работы и бредовые мысли задрота-верстальщика. Сначала я собирался просто перенять приемы Николь Мерлин для верстки писем себе, но потом хипстерская голова подумала: А почему бы не зафигачить целый фреймворк? Громкое слово для моей поделки, но мне приятно его так называть. Начнем с простого.
Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии8

Электронные деньги в Беларуси: апрельские тезисы

Время на прочтение2 мин
Количество просмотров17K
image

Давеча белорусский портал tut.by размышлял о настоящем и будущем электронных денег в стране. В студию, где обсуждали сабж, пригласили и начальника отдела контроля за налогообложением предпринимательской деятельности граждан инспекции Министерства по налогам и сборам по Минску Наталью Подгорную (на фото – третья слева). Мне, как фрилансеру, было интересно узнать, насколько сильно следит налоговая за фрилансерами, и как банки «сливают» информацию об электронных счетах клиентов в налоговую и комитет госконтроля. Всю информацию, которую почерпнул, захотелось привести в краткий тезисный вид под хабракатом – вдруг кому-то поможет.
Читать дальше →
Всего голосов 15: ↑13 и ↓2+11
Комментарии15

Домашняя бухгалтерия с использованием Google Docs

Время на прочтение7 мин
Количество просмотров39K
Так уж получилось что меня всегда интересовало сколько и на что я потратил. Долгое время я старательно перебирал различные способы учёта личных финансов. Использовал и оффлайн инструменты, и онлайн решения, носил данные на флешке и так далее. Не скажу что перепробовал всё из доступного, но, как мне кажется, накопил приличный опыт и сделал соответствующие выводы.

Прежде всего всё что написано не мою — написано другим. Это очевидно. Но следствие из этого — это другой разрабатывал логику, исходя из собственных представлений об удобстве и функционале. А значит нет уверенности в том что чужие представления на 100% совпадут с моими. На хабре эта тема уже звучала.

Второй важный момент — если системой будут пользоваться двое (не говоря уже о большем количестве), то вероятность ошибок возрастает многократно. Многие системы подразумевали наличие счёта, отображающего количество денег в кошельке. Ах, как мне нравилась программа GnuCash… Но каждый месяц я должен был добавлять транзакции для корректировки счета по кошельку жены. И на что она тратила деньги оставалось только догадываться потому как сама она не могла вспомнить, а чеки благополучно терялись.

Исходя из вышеописанных проблем я породил ещё одну домашнюю бухгалтерию на Google Docs. Методом проб и ошибок, анализируя чужие решения и исходя из собственных потребностей я пришёл к следующим выводам.
Читать дальше →
Всего голосов 76: ↑70 и ↓6+64
Комментарии42

Как не стать спамером со своей уютной рассылочкой

Время на прочтение1 мин
Количество просмотров67K
image
Пользователь когда-то подписался на рассылку, но уже забыл когда, и главное зачем. Теперь ежедневно к нему падает спам, а по собственному опыту он знает, для того чтобы отписаться нужно зайти по ссылке свой профиль, найти и снять там какую-то галку а главное, помнить свой логин и пароль на давно забытом им сайте.
Его действия? «В спам!»

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

И вот, с десяток таких «отписок» и гугл будет удобно отсортировывать ваши рассылки в папочку Спам (584), у ВСЕХ ваших подписчиков.

Однако многие из нас уже успели заметить: некоторые письма в Gmail при попытке отметить их «В спам!» САМИ предлагают отписаться от рассылки в один клик.

Эта фича была введена google более года назад, но лишь единицы рассылок научились ей пользоваться. И не удивительно. В рекомендациях по осуществлению массовых рассылок, лишь косвенно упоминается о том, что Вам нужно сделать.
А сделать нужно не многое.
Читать дальше →
Всего голосов 238: ↑230 и ↓8+222
Комментарии60

Что делать, если вам пришла поврежденная посылка?

Время на прочтение3 мин
Количество просмотров29K
eBay
Пока готовится подробная статья про покупку на зарубежных аукционах и в интернет-магазинах, хочу рассказать вам о том, что делать в случае, если вы получили не то, что должны были.
После починки Epson Artisan 800 (см. топик о приключениях с ним), обзор которого уже числится в общем списке материалов к публикации, выяснилось, что СНПЧ для брата-близнеца Epson TX800FW не подходят к нему. Кто-то в комментах поглумился, сказав, что я попал на расходники, но на деле же все куда проще. Принтер покупался для дома, печать не горит, на первое время хватает ресурса родных картриджей. В качестве решения проблемы заказал СНПЧ на том же eBay.
Рассказываю дальше
Всего голосов 99: ↑91 и ↓8+83
Комментарии136

Статистика по западным социальным сетям

Время на прочтение2 мин
Количество просмотров5.2K
В США исследовали 49.3 миллиона человек — пользователей социальных сетей. Насколько я знаю, это первое глобальное исследование пользователей социальных сетей. Надеюсь, что вскоре мы увидим данные и по российским социальным сетям.
В большинстве социальных сетей («хедлайнеров») — MySpace, Facebook, Bebo, Hi5 — количество женщин превышает количество мужчин, причём, значительно.

В возрастной группе 18-24 на Facebook женщин: 1 685 029, а мужчин: 977 753 — разница в 1.7 раза. На MySpace, в той же возрастной категории, ситуация с соотношением немного другая, но всё равно, женщины преобладают: 7 091 214 женщин против 5 226 788 мужчин.


Другие интересные особенности:
  • Женщины в возрасте 14-24 ведут более активную деятельность в социальных сетях и имеют больше друзей, чем мужчины того же возраста.
  • Мужчины в возрасте 35 и более ведут более активную деятельность в социальных сетях и имеют больше друзей, чем женщины того же возраста.
  • Средний пользователь социальной сети имеет от двух до двадцати пяти друзей.
  • Странно высокое (непропорциональное) количество пользователей имеет возраст 69 лет. Скорее всего, это связано с «виртуалами» или лживыми данными о себе, а цифра 69 имеет несколько знаковых значений.


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

Исследование было сделано 10 июня 2008 года компанией RapLeaf. Вот данные, основанные на ответах 90% респондентов. Всего опрашивалось, напомню, около 49 миллионов жителей США.

Вот полная статистика.
Читать дальше →
Всего голосов 32: ↑28 и ↓4+24
Комментарии30

С чем мы соглашаемся, когда регистрируем номер в ICQ

Время на прочтение1 мин
Количество просмотров526
С признанием правил пользования (Acceptable Use Policy) пользователь передаёт все авторские права на данные, которые он отправил через службу ICQ, компании ICQ Inc.
Читать дальше →
Всего голосов 150: ↑141 и ↓9+132
Комментарии219

Первый опыт с Google Maps API

Время на прочтение1 мин
Количество просмотров1.2K
Хочу представить вам и услышать критику по поводу первой версии интерактивной карты города Пушкино (есть такой в подмосковье) с использованием Google Maps API и AJAX.
Читать дальше →
Всего голосов 46: ↑41 и ↓5+36
Комментарии96

Выбор python-фреймворка

Время на прочтение2 мин
Количество просмотров8.2K
Вот заинтересовался вопросом веб-фреймворков на python. Направление это сейчас перспективное и очень активно развивается.
Хотел бы вместе с хабралюдьми обсудить эту тему, кто на чем пишет, какие преимущества и т.д.
Список фреймворков, их описание и обсуждение
Всего голосов 10: ↑8 и ↓2+6
Комментарии39

Ссылки для начинающих фотографов

Время на прочтение1 мин
Количество просмотров2.3K
Решил собрать здесь несколько ссылок на полезные материалы для начинающих фотографов:

Если у Вас есть чем еще поделиться, сделайте это пожалуйста в комментариях.
Всего голосов 41: ↑37 и ↓4+33
Комментарии55

Скандал в белорусской Википедии

Время на прочтение2 мин
Количество просмотров2.2K
В результате усилий группы сторонников советского правописания белорусского языка («наркомовки»), сегодня была уничтожена белорусская википедия. Судьба более чем шести тысяч статей, которые были размещены в ней, пока не известна. Но существует вероятность, что они будут просто удалены. Домен be.wikipedia.org отдан сторонникам «наркомовки».

Беларуская Вікіпэдыя«Беларуская Вікіпэдыя» была основана 12 августа 2004 года. За это время в ней создали более шести тысяч статей.

Еще сегодня утром по адресу be.wikipedia.org была статья, написанная классическим правописанием. Теперь она уничтожена и открывается незаполненная страница. Но пока еще остался логотип с надписью классическим правописанием.

Вместе с первой статьёй исчезли все статьи, что были созданы, начиная с 2004-го года. Также ранее зарегистрированные пользователи не могут теперь входить под своими логинами. «Ошибка входа: Не существует участника или участницы. Проверьте написание, либо используйте форму ниже, чтобы создать новый акаунт участника или участницы,» – такие слова видят бывшие пользователи белорусской «Вікіпэдыі» при попытке войти на сайт.

В течение нескольких месяцев сторонники наркомовки добивались от администрации Википедии создания для них отдельной площадки. До этого момента их проект развивался в так называемом инкубаторе, где было создано 3565 статей, написанных наркомовкой.
Читать дальше →
Всего голосов 42: ↑37 и ↓5+32
Комментарии34

Fitbit One — трекер физической активности

Время на прочтение4 мин
Количество просмотров62K
image
На Хабре уже были опубликованы обзоры некоторых трекеров физической активности: Nike Fuelband SE и Shine. Пришел черед немного рассказать про Fitbit One.

Трекер Fitbit One фиксирует, собирает и передает в облачный сервис:
  • количество сожженых калорий,
  • сделанных шагов,
  • пройденных этажей,
  • пройденные расстояния,
  • продолжительность и качество сна.
  • Функция беззвучный будильник в заданное время.


Я пользуюсь Fitbit One с декабря 2013 года. За это время он:
  • был около двух десятков раз уронен на пол с высоты в в полтора метра,
  • трижды потерян и найдет в гостиницах и кафе,
  • постиран в кармане брюк (в чехле-прищепке) один раз.
  • Не менее трех раз я умудрился наступить на него ногой в ботинке.
  • Один раз я уронил трекер в лифтовую шахту, и он пролетел 13 этажей в свободном падении.
  • После этого он пролежал двое суток в луже машинной смазки.


Не смотря на то, что мой Fitbit One прошел огонь, воду и Олимпийские игры, все это, трекер продолжает работать как ни в чем не бывало, и на нем практически ни царапинки.

Интересно? Добро пожаловать под кат.


UPD Утерянные трекеры фирмы Fitbit заменяют бесплатно!
трафик 10 мб
Всего голосов 61: ↑50 и ↓11+39
Комментарии77

Лучшие бесплатные Photoshop плагины для веб-дизайнеров

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

Divine Elemente


image
Один из самых потрясающих проектов, которые я встречал за последнее время. Плагин Divine Elemente дает возможность дизайнерам создавать WordPress темы без каких либо навыков фронт/бэк-енда. К сожалению у меня не было возможности поработать с ним. Он доступен только для Windows. Для того что бы все работало необходимо создавать макет в соответствии со встроенным blueprint — это некий Bootstrap, Boilerplate или даже набор инструкций по наименовании слоев и групп. Разработчики обещают множество всего хорошего, в том числе: SEO friendly, валидную и семантичную верстку, читаемый код. Впечатляет!

Читать дальше →
Всего голосов 74: ↑66 и ↓8+58
Комментарии9

PHP RUtils — небольшая библиотека для обработки русского текста

Время на прочтение5 мин
Количество просмотров20K
В работе на языке Python я частенько использую библиотеку Pytils для работы с русским текстом, и мне очень не хватало этой библиотеки при работе на PHP. Возможно, я искал плохо, но все, что я находил, не предоставляло подобных возможностей либо не слишком отвечало моим понятиям о чистом коде.

И вот, однажды я решил портировать библиотеку на PHP, и теперь хочу поделиться ею с народом и очень надеюсь на помощь в ее улучшении: буду рад советам, баг-репортам и особенно pull-реквестам. Библиотека находится на GitHub'е: github.com/Andre-487/php_rutils

UPD от 26.10.2013: теперь библиотека так же доступна через Composer: packagist.org/packages/andre_487/php_rutils
Так же хочу сказать спасибо всем, кто помог улучшить библиотеку и довести ее до стабильного релиза.

Возможности библиотеки


PHP RUtils — порт Pytils на PHP. Это утилиты для работы с русским текстом. Утилиты разделены на следующие модули (классы):

  • Numeral — работа с числами: склонение существительных в зависимости от количества, числа прописью, суммы денег в рублях и копейках прописью.
  • Dt — работа с датами: расширение формата дат PHP русскими именами месяцев, дней недели; временные периоды (например, 24 976 дней назад).
  • Translit — транслитерация, подготовка строк для использования в URL'ях, именах файлов.
  • Typo — небольшой набор правил типографики простого текста.

Примеры кода и подробности
Всего голосов 94: ↑90 и ↓4+86
Комментарии26

Самодельный трекинг посылок, или Туда и Обратно

Время на прочтение6 мин
Количество просмотров553K
Наверняка многие, кто заказывал товар из-за границы, задавались вопросом: что происходит с посылками от экспорта до импорта? В каком потустороннем пространстве они иногда проводят месяцы своего путешествия? Какими самолетами прилетают в Новосибирск посылаемые авиапочтой в Москву отправления?

Идея


Проследить, как движутся посылки из-за границы в Москву, подробнее, чем официальный трек. Для этого отправить устройство, способное сообщать свои координаты.

Один мой друг послал почтой другому моему другу…

сколько на это ушло времени, как ходят посылки, почему семь тысяч вёрст не крюк
Всего голосов 533: ↑532 и ↓1+531
Комментарии406

Информация

В рейтинге
Не участвует
Откуда
Минская обл., Беларусь
Дата рождения
Зарегистрирован
Активность