Как стать автором
Обновить
37
0

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

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

Рекомендации на потоке

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

Сегодня мы расскажем о том, как с помощью потоковой обработки данных можно увеличить качество рекомендаций и снизить время отклика всей рекомендательной системы в 5 раз. Речь пойдет об одном из наших клиентов – сервисе потокового видео Rutube.


Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии12

Знакомство с Apache Spark

Время на прочтение8 мин
Количество просмотров120K
Здравствуйте, уважаемые читатели!

Мы наконец-то приступаем к переводу серьезной книги о фреймворке Spark:



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

Читать дальше →
Всего голосов 21: ↑17 и ↓4+13
Комментарии8

Подборка: Более 70 источников по машинному обучению для начинающих

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


Индикатор кулачкового аналогового компьютера / Wiki

В нашем блоге мы уже рассказывали о разработке системы квантовой связи и о том, как из простых студентов готовят продвинутых программистов. Сегодня мы решили вернуться к теме машинного обучения и привести адаптированную (источник) подборку полезных материалов.
Читать дальше →
Всего голосов 35: ↑31 и ↓4+27
Комментарии16

Конец эры глобального CSS

Время на прочтение6 мин
Количество просмотров61K
Все CSS-селекторы живут в глобальной области видимости.

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

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

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

Так не должно быть. Пора оставить позади эру глобальных стилей. Наступило время закрытого CSS.
Читать дальше →
Всего голосов 35: ↑29 и ↓6+23
Комментарии36

Загрузка Windows Recovery Environment (или любого WIM-образа) с USB flash

Время на прочтение5 мин
Количество просмотров104K
Windows Recovery Environment


Загрузиться в WinRE может быть полезно для быстрого ремонта установленной Windows: восстановление запуска системы, восстановление из образа, откат к точке восстановления, изменение параметров загрузки, наконец, доступ к командной строке, а значит возможность делать много разных интересных вещей, типа format C:.
Кроме того, можно запускать regedit.exe и другие системные программы, и даже некоторое стороннее ПО, если конечно для работы оно не требует запущенной «нормальной» Windows.
Альтернативным решением конечно является загрузка с установочного DVD или ISO-образа, но запуск WIM-образа Среды восстановления напрямую будет происходить быстрее — он весит гораздо меньше, чем целый DVD.
К тому же, на одной USB-флешке можно расположить несколько WIM-образов, например, 2 образа WinRE разной разрядности (x32 + x64), и другие образы с «ремонтных» DVD. У меня таким же образом загружается AntiWinLocker, и это без необходимости иметь отдельный ISO с ним.
В общем, возможность загрузить WIM-образ может быть очень полезной. Поэтому перейдем к делу.

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

Подводные камни JavaScript

Время на прочтение6 мин
Количество просмотров150K
Мне очень нравится JavaScript и я считаю его мощным и удобным. Но для большинства начинающих JS-программистов, много проблем создаёт недопонимание аспектов языка. Часто конструкции языка ведут себя «нелогично». В данной статье я хочу привести примеры «граблей», на которые я наступил; объяснить поведение языка и дать пару советов.

Читать дальше →
Всего голосов 135: ↑115 и ↓20+95
Комментарии150

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

Время на прочтение5 мин
Количество просмотров7.1K
Периодически возникает вопрос, как можно безопасно хранить логин и пароль в R, не задавая эти данные в явном виде в вашем скрипте. Мне кажется, есть несколько возможных решений. Можно хранить ваши параметры:
  1. Непосредственно в скрипте.
  2. В файле внутри папки с проектом, который вы не показываете.
  3. В файле .Rprofile.
  4. В файле .Renviron.
  5. В json файле.
  6. В безопасном хранилище, к которому вы обращаетесь из R.
  7. Используя пакет digest.
  8. Используя пакет sodium.
  9. Используя пакет secure.

Давайте рассмотрим основную идею, преимущества (или недостатки) каждого из подходов.
[От переводчика: упорядочено по мере возрастания полезности.]
Читать дальше →
Всего голосов 12: ↑10 и ↓2+8
Комментарии1

ФБР захватило самый крупный сайт детской порнографии в мире и 13 дней распространяло порно

Время на прочтение3 мин
Количество просмотров37K
Почти две недели в прошлом году ФБР поддерживало работу крупнейшего в мире сайта с детской порнографией. Тысячи посетителей скачивали фотографии и видео детского порно с правительственного сервера в пригороде Вашингтона.

Операция, подробности которой сохраняются в секрете, — это уже третий известный случай, когда ФБР ловит педофилов на живца, пишет USA Today. Можно вспомнить, что ещё в 2008 году агенты ФБР публиковали на российских сайтах, где собираются любители детской порнографии со всего мира, поддельные гиперссылки. Ссылки вели на специально сделанный сайт, размещённый на сервере ФБР. Там велись подробные логи и регистрировались IP-адреса всех посетителей, которые автоматически становились после этого преступниками. Затем дома этих людей подвергались неожиданному обыску (обычно у маньяков на компьютере можно найти достаточно улик).

В прошлогодней операции ФБР действовало иначе. Пользователям действительно отгружали настоящую детскую порнографию, фото и видео, но при этом их компьютеры заражались зловредами. Благодаря этой операции произведены аресты в Дании, Турции, Колумбии, Греции и других странах, то есть ФБР взламывало компьютеры по всему миру.
Читать дальше →
Всего голосов 30: ↑28 и ↓2+26
Комментарии88

Numpy и многопроцессорность

Время на прочтение4 мин
Количество просмотров22K
Сейчас уже многие используют библиотеку numpy в своих python-программах, поскольку она заметно ускоряет работу с данными и выполнение математических операций. Однако во многих случаях numpy работает в разы медленнее, чем она может… потому что использует только один процессор, хотя могла бы использовать все, что у вас есть.
Читать дальше →
Всего голосов 22: ↑21 и ↓1+20
Комментарии14

О сложности выращивания сакуры: как я участвовал в Ludum Dare 34

Время на прочтение14 мин
Количество просмотров20K
Привет, хабр!

В данном посте речь пойдет о моем участии в конкурсе Ludum Dare 34, который был около трех недель назад.

В результате получился пазл под названием Growing Sakura, геймплей которой можно видеть на гифке (не пугайтесь, она весит всего 300Кб):


Кратко о правилах игры: изначально у нас есть гексагональное поле и несколько корневых бутонов (или один, как на гифке выше). Из него можно пустить 3 ветки (двумя способами — кликая левой или правой кнопкой мыши). Из каждого бутона на ветке левым кликом мыши можно сделать Y-разветвление, а правым — просто продолжить ветку дальше (I-разветвление). Если в каком либо направлении ветка расти не может (соответствующая клетка занята или в нужном направлении нет клетки) — то ветка не растет. В соответствии с последним условием нужно правильно выбирать порядкок «разворачивания» веток. В итоге получится дерево (или несколько деревьев) такое, что между двумя смежными ветками нет острых углов. Цель игры — покрыть все клетки игрового поля.

Не заглядывая под кат попробуйте подумать секунд 10 и прикинуть, насколько сложной может быть эта игра.
Читать дальше →
Всего голосов 62: ↑62 и ↓0+62
Комментарии20

Джон Хортон Конвей: Жизнь, как игра — окончание

Время на прочтение9 мин
Количество просмотров12K
первая часть

Прибыв домой, Гарднер тотчас же продемонстрировал Конвею более 20 статей, посвящённых расчёту дня недели для любой даты. Правило Льюиса Кэрролла выглядело лучше остальных. Гарднер повернулся к Конвею и сказал: «Джон, тебе необходимо разработать более простое правило, которым я смогу поделиться с читателями». И, как рассказывает Конвей, длинными зимними ночами, когда мистер и миссис Гарднер у себя дома отправлялись спать (хотя в гости к ним он приезжал исключительно летом), Конвей размышлял над тем, как сделать такой расчёт достаточно простым, чтобы его можно было объяснить среднему человеку с улицы.

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

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


С годами Конвей научил этому алгоритму тысячи людей. Иногда в конференц-зале набирается человек по 600, вычисляющих дни рождения друг друга и прикусывающих свои большие пальцы. А Конвей, как всегда, пытается быть неразумным – он уже неудовлетворён своим простым алгоритмом. С самого момента разработки он пытается его улучшить.
Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии7

От установки Windows 10 стало труднее отказаться

Время на прочтение2 мин
Количество просмотров70K
Microsoft перепробовала разные способы, как склонить пользователей Windows 7 и 8.1 к обновлению на Windows 10: файлы установки 3-5 ГБ скачиваются в фоновом режиме, постоянно показываются всплывающие сообщения «Ваш апгрейд готов к установке», сама программа установки «случайно» запускается на исполнение. Но теперь они превзошли себя.

Взгляните на этот скриншот. Вам ничего не кажется странным?


Читать дальше →
Всего голосов 60: ↑52 и ↓8+44
Комментарии283

Создание веб-сайта. Курс молодого бойца

Время на прочтение24 мин
Количество просмотров841K
Как-то меня попросили провести небольшой семинар в лицее, где я когда-то учился, по созданию веб-сайта. В процессе написания речи я подумал, что она может вылиться в материал, который, возможно, будет полезен многим начинающим в области веб-дизайна, вёрстки веб-страниц и пр. Я не претендую на истину в первой инстанции и всё изложенное носит чисто личностный взгляд на работу с дизайном и кодом. Статья даёт поверхностный взгляд на понятия и средства, которые, на мой взгляд, могут стать неплохим стартом для того, кто готов идти дальше.
Читать дальше →
Всего голосов 86: ↑77 и ↓9+68
Комментарии46

Некоторые репозитории в помощь изучающим и преподающим Python и машинное обучение

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


Привет сообществу!

Я Юрий Кашницкий, раньше делал здесь обзор некоторых MOOC по компьютерным наукам и искал «выбросы» среди моделей Playboy.

Сейчас я преподаю Python и машинное обучение на факультете компьютерных наук НИУ ВШЭ и в онлайн-курсе сообщества по анализу данных MLClass, а также машинное обучение и анализ больших данных в школе данных одного из российских телеком-операторов.

Почему бы воскресным вечером не поделиться с сообществом материалами по Python и обзором репозиториев по машинному обучению… В первой части будет описание репозитория GitHub с тетрадками IPython по программированию на языке Python. Во второй — пример материала курса «Машинное обучение с помощью Python». В третьей части покажу один из трюков, применяемый участниками соревнований Kaggle, конкретно, Станиславом Семеновым (4 место в текущем мировом рейтинге Kaggle). Наконец, сделаю обзор попавшихся мне классных репозиториев GitHub по программированию, анализу данных и машинному обучению на Python.

Читать дальше →
Всего голосов 26: ↑24 и ↓2+22
Комментарии11

Неочевидные особенности сортировки товара и «танец реальности»

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


Как обычно, мы пытаемся решить сложную математическую задачу минимальными средствами и затратами. Суть задачи – сортировать товары интернет-магазина так, чтобы это было наиболее удобно покупателю.

Самый простой способ – задавать порядок вручную. В физических магазинах на полках делается именно так, и это называется «выкладка». У нас её делают продавцы по планограммам под каждую точку (это входит в обучение), а в тех же больших продуктовых – специальные чуваки-мерчендайзеры, которые следят, чтобы всё было ок. В Интернете, конечно, хочется сделать так же, но метод хорош до 50 позиций.

На другой стороне шкалы методы больших данных, когда все данные о вас начиная от сборки браузера, типа девайса (точнее, его цены) и разрешения экрана, плюс все данные профиля и оценка ваших действий на сайте ведут к оптимальному результату. Самый простой способ использования таких данных – за первые 20-30 секунд нахождения на сайте строить ваш профиль и сравнивать с профилями таких же людей. И предлагать вам в итоге не самые дешёвые квартиры и отели, например, а начинать с тех цен, которые для вас будут приемлемыми. Вы наверняка знаете эту сортировку, которую почему-то подают в прессе под соусом «самой удобной для клиента».

По моим ощущениям, самая удобная для нашего покупателя – это такая, которая понятна и поддаётся контролю.
Читать дальше →
Всего голосов 60: ↑55 и ↓5+50
Комментарии25

Альтернативный терминал для Windows

Время на прочтение18 мин
Количество просмотров440K
Часто путают терминал и шелл. В тех же *nix есть шеллы (bash, csh, zsh, …) и терминалы (konsole/guake/yaquake/tilda и т.д. и т.п.) Для мира Windows общеизвестный терминал только один – стандартное консольное окошко, которое часто ошибочно называют «cmd.exe». И мало кто знает о существовании множества других эмуляторов терминала. Известных шеллов больше, их целых два: cmd.exe и powershell.exe. И хотя есть как минимум три порта bash (MinGW, CygWin, GIT) многие юниксоиды предпочитают ругать cmd.exe.

Меня не устраивал ни один из найденных альтернативных терминалов (как в 2009-м, когда я начал работу над ConEmu, так и сейчас). Казалось бы требований немного, вот основные:
Читать дальше →
Всего голосов 182: ↑175 и ↓7+168
Комментарии194

Разноцветные терминалы

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


В этой публикации я расскажу о некоторых трюках, которые украсят будни любого системного администратора Linux (и не только). Все они связаны с переменной PS1 оболочки bash. Переменная PS1 определяет, как будет выглядеть приглашение для ввода новых команд. И каждый пользователь может переопределять её как пожелает, например, в файле ~/.bashrc (который выполняется при запуске bash и используется для в том числе для конфигурации).

Для начала рассмотрим простой вариант, мой любимый формат командной строки.
Читать дальше →
Всего голосов 48: ↑40 и ↓8+32
Комментарии46

Достаточно Git-а, чтобы быть (менее) опасным

Время на прочтение23 мин
Количество просмотров131K
imageТы просто-напросто ненавидишь Git? Ты абсолютно счастлив с Mercurial (или, фу, с Subversion), но раз в месяц тебе приходится отважно сталкиваться с Git, потому что каждый, даже его чертова собака, теперь использует GitHub? Тебя терзают смутные подозрения, что половина всех команд Git на самом деле удалят всю твою работу навсегда, но ты не знаешь какие именно и не хочешь проводить три недели, углубляясь в документацию?

Хорошие новости! Я написал тебе этот изумительный Интернет-пост. Я надеюсь, что смогу размазать достаточно Git-а по твоему лицу, чтобы понизить вероятность сделать что-то непоправимое, а так же уменьшить твой страх что-то сломать. Этого должно быть также достаточно, чтобы сделать документацию Git немного более понятной; она крайне тщательно и глубоко проработана и очень глупо, если ты все еще не прочитал половину.

Я постараюсь излагать коротко, но также, чтобы это было потенциально полезно тем людям, кто вообще никогда не сталкивался с контролем версий, поэтому повсюду будет разбросан 101 совет. Не бойся! Я не думаю, что пользователи Mercurial понятия не имеют, что такое патч.
Но подожди! Там еще...
Всего голосов 131: ↑103 и ↓28+75
Комментарии365

Мобильная связь в Европах

Время на прочтение7 мин
Количество просмотров38K
Я как-то писал о своём выборе роуминговых опций наших сотовых операторов. Тогда я остановился на «Ноль без границ» от МТС для входящих и на тарифе «Вокруг света» от Мегафона для исходящих и интернета. Но уже прошло три года, многое изменилось. Решил задокументировать нынешнее состояние дел.

Для начала — почему только Европа. Тут всё просто — я обычно езжу в отпуск в Европу. Не так часто, как некоторые ездят, но сильно чаще, чем сам езжу в другие части света.
Почему вообще возник такой вопрос, почему не купить местную симкарту в стране пребывания? Во-первых, туристу это не всегда возможно. Во-вторых, туристу это не всегда выгодно, особенно если приехал на пару дней. Но если я в стране на неделю и больше, то местную симкарту стараюсь приобрести.
DontPanicCartoon580_39474a
Читать дальше →
Всего голосов 31: ↑27 и ↓4+23
Комментарии41

Big Data от А до Я. Часть 2: Hadoop

Время на прочтение9 мин
Количество просмотров230K
Привет, Хабр! В предыдущей статье мы рассмотрели парадигму параллельных вычислений MapReduce. В этой статье мы перейдём от теории к практике и рассмотрим Hadoop – мощный инструментарий для работы с большими данными от Apache foundation.

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


Читать дальше →
Всего голосов 44: ↑38 и ↓6+32
Комментарии8

Информация

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