Search
Write a publication
Pull to refresh
-2
0.1
Send message

Пошаговая настройка Graylog2

Reading time7 min
Views56K


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

Напомню, кластер будет размещаться на площадке хостера, логи будут собираться со всего мира по TCP, а среднее количество логов — около 1,2 Тб/день при нормальных условиях.

В настоящее время мы используем CentOS 7 и Graylog 2.2, поэтому все конфигурации и опции будут описываться исключительно для этих версий (в Graylog 2.2 и Graylog 2.3 ряд опций отличается).
Читать дальше →

Умные сети для рыбаков: как мы учили смартфоны распознавать рыбу

Reading time7 min
Views16K


На развитие компьютерного зрения в последние 10 лет не обращал внимание лишь отстраненный от мира человек. Технология распознавания образов своим процветанием обязана глубокому обучению. Достижения машин поражают воображение.
Читать дальше →

Как работает mobx изнутри и сравнение его с redux

Reading time13 min
Views33K


Читая чат русскоязычного react сообщества в телеграмме (https://t.me/react_js), я вижу как с постоянной регулярностью появляются обсуждения mobx-а, сравнения с redux-ом с аргументациями про магию, сложность и "мутабельность" и у многих есть большое недопонимание что такое mobx и какие задачи он решает. И я решил написать эту статью с "разбором полетов" чтобы можно было собрать всю аргументацию в одном посте. Мы разберем как работает mobx изнутри путем реализации собственной версии mobx-а и сравним с тем как работает redux.
Читать дальше →

Leaflet 1.x.x vs Openlayers 4.x.x. Часть 2. Как рисуются карты

Reading time3 min
Views7.8K
В прошлой статье обещал, что эта будет про сообщества и плагины, но потом решил, что правильней будет сначала рассказать о том, как в данных фреймворках рисуются карты. Начну с Openlayers, потом Leaflet, потом его плагины.

image
Читать дальше →

Относительно надежные способы получения дохода на биржах криптовалют

Reading time12 min
Views73K
В интернете, реклама, поисковые системы или в публичных чатах, постоянно появляются люди, которые с готовностью вам расскажут, как можно заработать много денег без труда и риска. При ближайшем рассмотрении видно что это скорее всего либо мошенник, либо продвигает проекты других мошенников, получая за это некоторую прибыль как рекламодатель. Либо вам будут предлагаться не самые честные способы отъема денег у населения, типа накруток, спама или перепродажи тех же 'кредитов' под 100500% недалеким людям.

Попробую разбавить этот поток мусорной информации чем то полезным, относительно честными и не сильно рискованными способами приумножить свои капиталы.

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

Будьте готовы потратить только те средства, которые готовы потерять.
Читать дальше →

Управление разработкой технологически сложных интернет-приложений в условиях острой нехватки времени

Reading time45 min
Views17K

Вступление


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


В заметке так же рассматривается больной вопрос трудностей с выплатой зарплаты и как их можно эффективно решать.

Читать дальше →

Криптоалгоритмы. Классификация с точки зрения количества ключей

Reading time52 min
Views119K


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

12 правил хорошего тона в деловом общении на английском языке

Reading time4 min
Views113K
Даже прекрасно владея английским, те, у кого этот язык — неродной, могут допускать досадные этические оплошности при деловом общении c клиентами, партнерами, инвесторами, коллегами. Манеры учтивого общения в русском и английском языках различаются; о некоторых нюансах практического взаимодействия с англоговорящими клиентами — в переводе статьи предпринимателя и международного эксперта по продажам Гранта Кардона. Кое-какие советы, впрочем, следует хорошенько обдумать, прежде чем взять на вооружение: давайте обсудим спорные тезисы в комментариях.

Переведено в Alconost.



Читать дальше →

Хаос устраняет потребность в Мультивселенной

Reading time15 min
Views31K
image

Учёные исследуют Вселенную и видят удивительную структуру. В ней встречаются фантастически сложные объекты и процессы. Каждое событие во Вселенной следует точным законам природы, идеально выражаемым на языке математики. Эти законы кажутся нам точно подстроенными для того, чтобы смогла появиться жизнь, и, в частности, – разумная жизнь. Каковы эти законы природы и как нам их найти?

Вселенная так хорошо структурирована и упорядочена, что мы сравниваем её с самыми сложными и точными изобретениями своего времени. В XVIII и XIX веках Вселенную сравнивали с идеально работающими часами. Философы тогда обсуждали Часовщика. В XX и XXI веке самый сложный объект – компьютер. Вселенную сравнивают с идеально работающим суперкомпьютером. Исследователи задаются вопросом: как этот компьютер запрограммировали?

Как можно объяснить всю эту структуру? Почему законы кажутся идеально настроенными на появление жизни, и почему они выражаются таким точным математическим языком? На самом ли деле Вселенная так структурирована, как кажется?
Читать дальше →

Коды Рида-Соломона. Часть 1 — теория простым языком

Reading time8 min
Views57K
Добрый день! Меня зовут Максим, в YADRO, кроме всего прочего, я занимаюсь разработкой подсистемы, отвечающей за надежное хранение данных. Готовлю небольшой цикл статей про коды Рида-Соломона — теоретическую основу, практическую реализацию, применяемые на практике программные и аппаратные оптимизации. На Хабре и в остальной сети есть хорошие статьи по вопросам этой области — но по ним сложно разобраться, если ты новичок в теме. В этой статье я попытаюсь дать понятное введение в коды Рида-Соломона, а в следующих выпусках напишу, как все это запрограммировать.



Читать дальше →

Путь к пониманию байт-кода V8

Reading time4 min
Views31K
V8 — это JavaScript-движок Google с открытым кодом. Его используют Chrome, Node.js и многие другие приложения. Этот материал, подготовленный сотрудником Google Франциской Хинкельманн, посвящён описанию формата байт-кода V8. Байт-код довольно просто читать, если понять некоторые базовые вещи.

image
Читать дальше →

«Железо» в прокат: как устроена децентрализованная игровая платформа Playkey

Reading time5 min
Views43K
Представим, что у вас есть ПК на базе условного GeForce GTX 1080.

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

Сколько зарабатывает одна такая «машина» за сутки, если использовать ее исключительно для майнинга? Примерно 25 Мегахешей в секунду, или около $1.5 в сутки, если добывать Etherium.


Пруф

Сейчас в Playkey мы арендуем сотни серверов, но не у частных пользователей, а у хостинг-провайдеров. Серверов с GPU — мало, и стоят они дорого, поэтому мы берём их в лизинг. И тут нам в голову пришла гениальная идея: почему бы не использовать «железо» пользователей вместо «железа» от жадных хостеров? Мы провели нехитрые расчеты.

Допустим, в Playkey максимальная стоимость часа игры — не выше 49 рублей (по самому «дорогому» тарифу «Тренировочка», как раз на один час). Даже если представить, что с внедрением p2p-модели цены на сервис упадут вдвое (а нам это только на руку, чтобы Playkey пользовалось еще больше игроков), то одна машина-майнер может зарабатывать около $10 в сутки (и при далеко не полной своей загрузке). Вместо $1.5 за 24 часа добычи эфира.  


Но пойдем по порядку.
Читать дальше →

Kaggle Mercedes и кросс-валидация

Reading time18 min
Views64K
image

Всем привет, в этом посте я расскажу о том, как мне удалось занять 11 место в конкурсе от компании Мерседес на kaggle, который можно охарактеризовать как лидера по количеству участников и по эпичности shake-up. Здесь можно ознакомиться с моим решением, там же ссылка на github, здесь можно посмотреть презентацию моего решения в Yandex.

В этом посте пойдет речь о том, как студент консерватории попал в data science, стал призером двух подряд kaggle-соревнований, и каким образом методы математической статистики помогают не переобучиться на публичный лидерборд.

Начну я с того, что немного расскажу о задаче и о том, почему я взялся ее решать. Должен сказать, что в data science я человек новый. Лет 7 назад я закончил Физический Факультет СПбГУ и с тех пор занимался тем, что получал музыкальное образование. Идея немного размять мозг и вернуться к техническим задачам впервые посетила меня примерно два года назад, на тот момент я уже работал в оркестре Московской Филармонии и учился на 3 курсе в Консерватории. Начал я с того, что вооружившись книгой Страуструпа стал осваивать C++. Далее были конечно же разные онлайн курсы и примерно год назад я стал склоняться к мысли о том, что Data Science — это пожалуй именно то, чем я хотел бы заниматься в IT. Мое “образование” в Data Science — это курс от Яндекса и Вышки на курсере, несколько курсов из специализации МФТИ на курсере и конечно же постоянное саморазвитие в соревнованиях.
Читать дальше →

Мутационное тестирование

Reading time12 min
Views45K

Юнит тесты помогают нам удостовериться, что код работает так, как мы этого хотим. Одной из метрик тестов является процент покрытия строк кода (Line Code Coverage).


Но насколько корректен данный показатель? Имеет ли он практический смысл и можем ли мы ему доверять? Ведь если мы удалим все assert строки из тестов, или просто заменим их на assertSame(1, 1), то по-прежнему будем иметь 100% Code Coverage, при этом тесты ровным счетом не будут тестировать ничего.


Насколько вы уверены в своих тестах? Покрывают ли они все ветки выполнения ваших функций? Тестируют ли они вообще хоть что-нибудь?


Ответ на этот вопрос даёт мутационное тестирование.

Читать дальше →

10 шагов по решению задач в программировании

Reading time8 min
Views91K


Перевод статьи Валинды Чен.

Это сборник советов для разработчиков-новичков, которые смотрят на пустой экран и не знают, с чего начать. Нередко можно услышать от молодых разработчиков, работающих над решением каких-то задач в программировании, что они не уверены, за что нужно хвататься. Ты понимаешь саму задачу, логику, основы синтаксиса и так далее. Если ты видишь чей-то код, или тебе кто-то помогает, то можно всё сделать самому. Но бывает, что ты не уверен в своих силах, или поначалу тебе трудно реализовать свои мысли в коде, несмотря на то, что ты знаешь синтаксис и логику. Под катом — несколько советов по решению этой проблемы, которые помогут вам в повседневной работе.
Читать дальше →

Об омолаживании вебсайта — критерии принятия решения

Reading time4 min
Views7.6K
Ваша фирма десять лет назад вложила в разработку сайта существенные средства, и худо-бедно за эти годы сайт их отбил. Это выразилось как в новых клиентах, пришедших через сайт, так и в возможности оперативно информировать существующих клиентов о ваших продуктах и услугах.

Но, как любая современная технология, технология производства вебсайтов быстро развивается. Ваши клиенты больше не сидят за компьютерами, они стали путешествовать с планшетами и смотреть сайты на экранах смартфонов. Чтобы приспособиться к новым привычкам ваших клиентов, старый сайт нужно омолодить. А может и не надо?
Читать дальше →

Собеседование для фронтенд-разработчика на JavaScript: самые лучшие вопросы

Reading time9 min
Views213K
Недавно мне довелось побывать на встрече участников проекта FreeCodeCamp в Сан-Франциско. Если кто не знает, Free Code Camp — это сообщество, нацеленное на изучение JavaScript и веб-программирования. Там один человек, который готовился к собеседованиям на позицию фронтенд-разработчика, попросил меня подсказать, какие вопросы по JavaScript стоит проработать. Я немного погуглил, но не смог найти подходящего списка вопросов, на который я бы мог дать ссылку и сказать: «Разбери эти вопросы и работа твоя». Некоторые списки были близки к тому, что мне хотелось найти, некоторые выглядели очень уж простыми, но все они были либо неполными, либо содержали вопросы, которые вряд ли кто станет задавать на реальном собеседовании.

image
Читать дальше →

Что читать о нейросетях

Reading time6 min
Views134K


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


Стоит ли изучать нейросети не специалистам в области машинного обучения? Каждый для себя ответит на этот вопрос сам. Мы же посмотрим на ситуацию с другой стороны — что делать разработчикам (и всем остальным), которые хотят больше знать про методы распознавания образов, дискриминантный анализ, методы кластеризации и другие занимательные вещи, но не хотят расходовать на эту задачу лишние ресурсы.


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

Читать дальше →

Ученые придумали метод сокращения энергопотребления нейросетей для использования на мобильных платформах

Reading time4 min
Views7K


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

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

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

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

Исследователи из Массачусетского технологического института (МТИ) под руководством доцента кафедры электротехники и информатики Вивьен Сэ (Vivienne Sze) разработали новый подход к оптимизации сверточных нейронных сетей, который ориентирован на минимизацию энергопотребления с использованием нового инструмента оценки расходования энергии.
Читать дальше →

K-sort: новый алгоритм, превосходящий пирамидальную при n <= 7 000 000

Reading time6 min
Views14K
От переводчика. Перевод статьи 2011 года на arxiv.org о статистическом анализе модификации быстрой сортировки. Наверняка найдутся люди, использующие описанный вариант интуитивно. Здесь — математическое обоснование эффективности при n <= 7 000 000

Введение




Ключевые слова
Внутренняя сортировка; Равномерное распределение; Средняя временная сложность; Статистический анализ; Статистическая оценка
Читать дальше →

Information

Rating
5,761-st
Registered
Activity