Как стать автором
Обновить
-20
@apanasenkoread⁠-⁠only

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

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

Клинические исследования. Как попасть в экспериментальную группу, получить бесплатное лечение от рака и помочь науке

Время на прочтение13 мин
Количество просмотров39K
image
Россия далеко не на первом месте в мире, но первая по количеству исследований в своем макрорегионе

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

«Умный» дом с точки зрения уязвимости: разбираемся с векторами и механиками атак

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

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

Альтернативы Raspberry Pi

Время на прочтение11 мин
Количество просмотров135K
29 февраля 2012 наш мир немного изменился к лучшему. Raspberry Pi Foundation анонсировал начало продаж маленьких одноплатных компьютеров под маркой Raspberry Pi. В начале продаж купить устройство было непросто, но понемногу рынок насытился и с июля 2012 вы наконец могли просто пойти в магазин и купить или заказать через интернет первую «Малинку», Raspberry Pi Model B — одноплатный Linux-компьютер с 700 МГц процессором, 0.5 Гбайт ОЗУ, USB, Ethernet и 26 выводами GPIO, позволяющими подключать внешние платы, устройства ввода-вывода и исполнительные устройства. Устройство, построенное на базе относительно недорогой четырехслойной платы, с низкой себестоимостью, с ценой для конечного потребителя $35, сделанное настолько хорошо, что альфа-версия Raspberry Pi Model B стала победителем номинации «Hardware Design» на ARM TechCon 2011.


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

Чему я научился на своём горьком опыте (за 30 лет в разработке ПО)

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

Это циничная, клиническая коллекция того, чему я научился за 30 лет работы в разработке программного обеспечения. Повторюсь, некоторые вещи весьма циничны, а остальное — результат долгих наблюдений на разных местах работы.
Читать дальше →

Сократить бэкапы на 99.5% с hashget

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

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


Это обзорная статья для описания возможностей. Само использование hashget (довольно простое) описано в README проекта и wiki-документации.


Сравнение


По закону жанра, начну сразу с интриги — сравнения результатов:


Data sample unpacked size .tar.gz hashget .tar.gz
Wordpress-5.1.1 43 Mb 11 Mb ( 26% ) 155 Kb ( 0.3% )
Linux kernel 5.0.4 934 Mb 161 Mb ( 20% ) 4.7 Mb ( 0.5% )
Debian 9 (LAMP) LXC VM 724 Mb 165 Mb ( 23% ) 4.1 Mb ( 0.5% )

Предыстория, каким должен быть идеальный и эффективный бэкап


Каждый раз, когда я делал бэкап свежесозданной виртуалки, мне не давало покоя чувство, что я что-то делаю не так. Почему у меня получается увесистый бэкап от системы, где моего бесценного нетленного творчества — однострочный index.html с текстом "Hello world"?

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

Краткое введение в цепи Маркова

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

В 1998 году Лоуренс Пейдж, Сергей Брин, Раджив Мотвани и Терри Виноград опубликовали статью «The PageRank Citation Ranking: Bringing Order to the Web», в которой описали знаменитый теперь алгоритм PageRank, ставший фундаментом Google. Спустя чуть менее двух десятков лет Google стал гигантом, и даже несмотря на то, что его алгоритм сильно эволюционировал, PageRank по-прежнему является «символом» алгоритмов ранжирования Google (хотя только немногие люди могут действительно сказать, какой вес он сегодня занимает в алгоритме).

С теоретической точки зрения интересно заметить, что одна из стандартных интерпретаций алгоритма PageRank основывается на простом, но фундаментальном понятии цепей Маркова. Из статьи мы увидим, что цепи Маркова — это мощные инструменты стохастического моделирования, которые могут быть полезны любому эксперту по аналитическим данным (data scientist). В частности, мы ответим на такие базовые вопросы: что такое цепи Маркова, какими хорошими свойствами они обладают, и что с их помощью можно делать?
Читать дальше →

Что нам стоит блокчейн построить?

Время на прочтение29 мин
Количество просмотров35K
Вся история человечества — это непрерывное избавление от цепей и создание новых, еще более крепких. (Анонимный автор)

Анализируя многочисленные blockchain проекты (Bitshares, Hyperledger, Exonum, Ethereum, Bitcoin и др.), я понимаю, что с технической точки зрения все они построены по одним принципам. Блокчейны напоминают дома, у которых при всем разнообразии конструкций, декора и назначений имеются фундамент, стены, крыша, окна, двери, которые связаны друг с другом определенными способами. И если понять основные принципы проектирования зданий, знать свойства применяемых материалов, то можно определить целевое назначение конкретного дома. В настоящее время с блокчейном возникла ситуация, что все про него слышали, но мало кто понимает архитектуру и принципы работы. Поэтому возникает непонимание для чего и как имеет смысл использовать технологии блокчейна.

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

Итак, давайте вспомним какие проблемы изначально решил блокчейн.
Читать дальше →

Столярная мастерская своими руками: ожидания и реальность

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


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

Управление секретами при помощи HashiCorp Vault

Время на прочтение21 мин
Количество просмотров77K
Как правильно хранить секреты? В репозитории, в системе деплоя или в системе управления конфигурациями? На личном компьютере, на серверах, а может в коробке под кроватью? А как управлять секретами, чтобы не допускать утечек?

Сергей Носков (Albibek) — руководитель группы информационной безопасности платформы из Авито, знает ответ на эти вопросы и поделится с нами. В Авито два года активно используют HashiCorp Vault, за это время набили шишки, и прокачали опыт до уровня «Мастер».

В статье всесторонне поговорим про Vault: что это такое, где и как используется в компании, как в Авито управляют секретами с помощью HashiCorp Vault, как используют Puppet и Kubernetes, варианты использования с Puppet и другими SCM, какие возникают проблемы, что болит у безопасников и разработчиков, и, конечно, поделимся идеями, как все исправить.


Полное руководство по профессиональному поиску скрытых камер и шпионских устройств

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


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

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

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

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

Учим поросёнка на моноидах верить в себя и летать

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

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



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

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

Архитектуры нейросетей

Время на прочтение12 мин
Количество просмотров69K
Перевод Neural Network Architectures

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


Сравнение популярных архитектур по Top-1 one-crop-точности и количеству операций, необходимых для одного прямого прохода. Подробнее здесь.
Читать дальше →

Как Яндекс изменил Поиск за прошедший год. Обновление «Андромеда»

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

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


Сегодня мы традиционно расскажем читателям Хабра о проделанной нами работе.


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

RabbitMQ против Kafka: применение Kafka в событийно ориентированных приложениях

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

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


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

Внутренности SDR чипа AD9361 — когда микроэлектроника выгоднее наркоторговли

Время на прочтение5 мин
Количество просмотров62K
Когда в 2013 году Analog Devices выпустила SDR трансивер AD9361 — случилась настоящая революция в цифровой радиосвязи. SDR были и раньше, но теперь в одном чипе можно было получить все: 2 канала на прием и 2 на передачу (с набортными 12-бит ЦАП и АЦП) с шириной канала до 56МГц, локальные генераторы и радиотракт — для работы в диапазоне от 70 (на передачу от 47) до 6000Мгц. На AD9361 «из коробки» можно реализовать почти любой цифровой приемопередатчик, за исключением наверное только UWB и начинающего набирать популярность диапазона 60ГГц (но там без аппаратной многоэлементной ФАР все равно делать почти нечего). Остается лишь добавить источник/приемник данных (пока это обычно FPGA), внешние фильтры и LNA/PA, если задача того требует.

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

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

Квантовые вычисления и язык Q# для начинающих

Время на прочтение13 мин
Количество просмотров81K
Возможно, вы узнали о выпуске пакета средств квантовой разработки Quantum Development Kit и подумали, что это звучит безумно круто… а потом вспомнили, что про квантовую механику почти ничего не знаете. Но ничего страшного. Через 30 минут вы будете знать о кубитах, суперпозиции и квантовой запутанности достаточно, чтобы написать свою первую программу и, что более важно, неплохо понимать, что она делает.

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

Bitcoin in a nutshell — Transaction

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

Если говорить об уже существующей банковской системе, то транзакция внутри какого-нибудь Альфа-банка — это просто редактирование таблицы балансов, где уменьшается число напротив одного имени и увеличивается напротив другого. В случае с межбанковскими переводами подключаются некоторые сторонние организации, например SWIFT, но, по сути, все работает примерно так же.


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


meme

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

JPoint 2017 — конференция, которая смогла. Обзор лучших докладов в открытом доступе

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

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


Идея проста: надо взять наиболее популярные доклады с JPoint 2017, кратенько пересказать, о чём там речь, почему это круто и зачем нужно лично мне. Каждый из этих докладов заслуживает отдельного разбора, но вначале — краткий обзор первой десятки. Поехали!



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

Моноиды, полугруппы и все-все-все

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

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


Mark Seeman расскажет о функциональном программировании просто и быстро. Для этого он начал писать цикл статей, посвященных связи между паттернами проектирования и теорией категорий. Любой ООПшник, у которого есть 15 минут свободного времени, сможет заполучить в свои руки принципиально новый набор идей и инсайтов, касающихся не только функциональщины, но и правильного объектно-ориентированного дизайна. Решающим фактором является то, что все примеры — это реальный код на C#, F# и Haskell. Этот хабрапост — перевод самого начала цикла, первых трех статей, слитых воедино для удобства понимания.


Кроме того, с Марком можно пообщаться вживую, посетив конференцию DotNext 2017 Moscow, которая состоится 12-13 ноября 2017 г. в Москве, в «Славянская Рэдиссон». Марк прочитает доклад на тему «From dependency injection to dependency rejection». Билеты можно взять здесь.

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

Не используйте Lockstep в стратегиях в RTS

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

Привет, Хабр! Представляю вашему вниманию перевод статьи Don’t use Lockstep in RTS games.


Lockstep проиграл! Клиент-серверная модель победила и стала стандартом для большинства игр. Стратегии в реальном времени были последними, но в них Lockstep используется все реже и реже. Давайте узнаем почему, но сначала, что такое Lockstep?


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

Информация

В рейтинге
Не участвует
Откуда
Fremont, California, США
Зарегистрирован
Активность