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

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

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

Большая игра на понижение крипты. Механизм финансовой катастрофы

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


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

Если у вас есть значительные объёмы криптовалюты или вы подумываете о её покупке, то именно для вас я это написал. Пожалуйста, прочтите до конца.
Всего голосов 242: ↑235 и ↓7+228
Комментарии390

Почему Kafka такая быстрая

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


За последние несколько лет в сфере архитектуры ПО произошли огромные изменения. Идея единственного монолитного приложения или даже нескольких крупных сервисов, разделяющих общий массив данных, практически стерта из умов и сердец инженеров-практиков во всем мире. Преобладающими инструментами в создании современных бизнес-ориентированных приложений стали автономные микросервисы, событийно-ориентированная архитектура и CQRS. Вдобавок быстрый рост количества подключаемых устройств (мобильных, IoT) многократно увеличивает объем событий, которые система должна оперативно обрабатывать.


В статье рассказываем, за счет чего Apache Kafka работает достаточно быстро для современных проектов.

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

Решение задачи о двух мудрецах

Время на прочтение4 мин
Количество просмотров36K
Давеча была опубликована логическая задача про Шерил, а в комментариях к ней хаброюзер сообщил о более интересной задаче про двух мудрецов.

Собственно, задача:
У некоторого султана было два мудреца: Али-ибн-Вали и Вали-ибн-Али. Желая убедиться в их мудрости, султан призвал мудрецов к себе и сказал: «Я задумал два числа. Оба они целые, каждое больше единицы, но меньше ста. Я перемножил эти числа и результат сообщу Али и при этом Вали я скажу сумму этих чисел. Если вы и вправду так мудры, как о вас говорят, то сможете узнать исходные числа».

Мудрецы задумались. Первым нарушил молчание Али.
— Я не знаю этих чисел, — сказал он, опуская голову.
— Я это знал, — подал голос Вали.
— Тогда я знаю эти числа, — обрадовался Али.
— Тогда и я знаю! — воскликнул Вали.
И мудрецы сообщили пораженному царю задуманные им числа.

Назовите эти числа.

Решение под катом.
Читать дальше →
Всего голосов 31: ↑26 и ↓5+21
Комментарии30

Подготовка к собеседованиям в IT-гиганты: как я преодолела проклятье алгоритмического собеседования

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

Дисклеймер:


Я не программирую с трёх лет, не знаю наизусть Кнута, не являюсь призёром олимпиад по информатике и чемпионатов по спортивному программированию, не училась в MIT. У меня за плечами образование по информатике и 6 лет опыта в коммерческой разработке. И до недавнего времени я не могла пройти дальше первого технического скрининга в IT-гиганты из FAANG (Facebook, Amazon, Apple, Netflix, Google и подобные), хотя предпринимала несколько попыток. 

Но теперь всё изменилось, я получила несколько офферов и хочу поделиться опытом, как можно к этому прийти. Речь пойдёт о позиции Software Engineer в европейских офисах перечисленных компаний.
Читать дальше →
Всего голосов 201: ↑196 и ↓5+191
Комментарии342

Нейтронная звезда в пробирке. Сонолюминесценция

Время на прочтение14 мин
Количество просмотров51K
Хомяки приветствуют вас, друзья.

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



Всё началось с того, что одним прекрасным днем просиживая задницу в просторах ютуба, я нашёл ролик на канале Сергея Матюшенко про интересное явление в основе которого лежит свечение пузырька за счет акустического воздействия. Пересмотрев видео несколько раз, понял что повторить подобное явление как раз плюнуть. Через неделю на моем столе лежали все необходимые детали для сборки действующей установки.
Читать дальше →
Всего голосов 226: ↑224 и ↓2+222
Комментарии103

Куча способов переиспользовать код в Rust

Время на прочтение40 мин
Количество просмотров19K
Я нашел эту статью авторства Alexis Beingessner как наиболее понятное описание системы типов в Rust, и что с ними можно делать. Надеюсь, кому-нибудь этот перевод будет полезен. Не смотрите на то, что вначале описываются очевидные вещи — под конец можно утонуть. Статья огромная и скорее всего будет разобрана на главы. Переведено достаточно вольно. Авторский стиль сохранен. — прим.пер.

(статья написана о Rust 1.7 stable)

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

В этой статье не будет исчерпывающего описания синтаксиса или общих деталей описываемых возможностей. Здесь рассказывается, почему происходит так или иначе, так как подобные вещи я всегда забываю. Если вы нашли эту статью в попытках выучить Rust полноценно, вам определенно стоит для начала ознакомиться с Книгой (оригинал вот — прим.пер.). В то же время я здесь буду уточнять некоторые произвольные теоретические аспекты того, что происходит.
Скорее всего, в этой статье полно ошибок, и она не должна претендовать на звание официального руководства. Это просто сборник того, что я накопал за неделю, пока искал новую работу.
Осторожно, там глубоко!
Всего голосов 50: ↑50 и ↓0+50
Комментарии34

Lazydocker — GUI для Docker прямо в терминале

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


Два года назад мы уже делали обзор GUI-интерфейсов для работы с Docker, однако мир любителей подобных решений не стоит на месте. На днях до версии 0.2 обновился, а вместе с тем и получил широкую огласку, молодой проект lazydocker, позиционирующий себя как «более ленивый путь управлять всем в Docker». Утилита стремительно набирает популярность — ещё вчера количество его GitHub stars не достигало 3000, а уже сегодня перевалило за 4000.
Читать дальше →
Всего голосов 49: ↑48 и ↓1+47
Комментарии16

Дружба, благодаря которой Google вырос до огромных размеров

Время на прочтение23 мин
Количество просмотров39K
Программируя вместе за одним компьютером, Джефф Дин и Санджай Гемават изменили курс компании — и весь Интернет. На иллюстрации: лучшие программисты Google иногда кажутся двумя полушариями одного мозга. Рисунок Дэвида Планкерта

Однажды в марте 2000 года шесть лучших инженеров Google собрались в импровизированном конференц-зале. Произошло ЧП: с октября 1999 года остановились краулеры. Хотя пользователям ещё выдавали поисковые результаты, но они устарели на пять месяцев. На карту было поставлено больше, чем предполагали инженеры. В данный момент Ларри Пейдж и Сергей Брин вели переговоры о поставке поиска Google на крупнейший в интернете портал Yahoo и обещали увеличить поисковый индекс в десять раз, чтобы идти в ногу со Всемирной паутиной, которая за предыдущий год удвоилась в размере. Если краулеры не починят, google.com застрянет в прошлом, сделка с Yahoo может провалиться, а компания рискует сжечь полученные инвестиции и кануть в небытие.
Читать дальше →
Всего голосов 57: ↑50 и ↓7+43
Комментарии36

Программирование — не тяжелый физический труд, но все равно отстой

Время на прочтение10 мин
Количество просмотров54K
Peter Welch
30 апреля 2014 г.
Об авторе. Peter Welch писатель и программист, автор книги «And Then I Thought I Was a Fish», автор блога «Still Drinking».


Изображение: Joe Raedle/Getty Images

Каждый мой друг, хотя бы дважды в неделю поднимающий на работе что-то тяжелее ноутбука, рано или поздно в разговоре невзначай бросает что-то вроде: «Бро, ты не пашешь на износ. Я только что отработал 4700-часовую неделю, копая тоннель под Мордором, используя отвертку»

Они правы. Мордор — отстой, и копание тоннеля гораздо трудозатратнее, чем тыкание в клавиши, если конечно вы не муравей. Но для галочки, давайте договоримся о том, что стресс и безумие — это плохо? Отлично.
Добро пожаловать в мир программирования
Всего голосов 80: ↑58 и ↓22+36
Комментарии33

Видео из 400000 фотографий Млечного Пути

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


Телескоп «Спитцер» прислал на Землю огромное количество данных о нашей Галактике. «Спитцер» выведен на орбиту в 2003 году, и на момент запуска был крупнейшим в мире космическим инфракрасным телескопом (в 2009 году ситуация изменилась с запуском обсерватории «Гершель»). Наблюдение за космосом в инфракрасном диапазоне позволяет обнаружить множество практически невидимых в обычном диапазоне наблюдения объектов. Это остывающие звезды, газопылевые туманности и некоторые другие объекты.

При этом наблюдения в инфракрасном диапазоне идеально проводить именно с орбиты, поскольку атмосфера Земли поглощает тепловое излучение. При этом тепловое излучение проходит через космические пылевые облака, которые закрывают от наблюдения в видимом спектре (и некоторых других диапазонах) галактический центр и другие объекты.
Читать дальше →
Всего голосов 20: ↑19 и ↓1+18
Комментарии12

Математическая задача о 100 коробках и спасении заключенных

Время на прочтение7 мин
Количество просмотров144K
Предлагаю читателям «Хабрахабра» перевод публикации «100 Prisoners Escape Puzzle», которую я нашел на сайте компании DataGenetics. Все ошибки по данной статье присылайте, пожалуйста, в личные сообщения.

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


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

Нейроинтерфейсы: от фотобумаги до нейропыли

Время на прочтение12 мин
Количество просмотров44K
Всё взаимодействие с внешним миром человек делает при помощи мышц (речь, пальцы, жесты и пр). Нейроинтерфейс позволяет править взаимодействовать с миром без мышечной активности. Первый шаг к «мозгам в банке». И к взлому мозга.

В фильме «Чаппи» при помощи ЭЭГ-шлема робот копировал сознание (как свое, так и человеческое), а DARPA тем временем научила парализованную женщину не только есть шоколадки, но и управлять малозаметным истребителем-бомбардировщиком пятого поколения F-35. На симуляторе.

Посылать аудио и видео сигнал напрямую в мозг научились еще несколько десятилетий назад. Сейчас в секретных лабораториях МГУ учат людей не только набирать текст «мыслью»(13–15 символов в минуту), но и устанавливать скрытый интерфейс «подсознание-компьютер», а в свободной продаже есть устройства любительские от 10.000 руб (NeuroSky, есть в свободном доступе в Хакспейсе) и вполне профессиональные за 200.000 руб (BioRadio, я в в Питере тестил)



О том, как мы докатились до жизни такой (про историю ЭЭГ и нейроинтерфейсов), речь пойдет под катом. (А также про первые попытки использования нейроинтерфейсов для ИБ).
Читать дальше →
Всего голосов 36: ↑35 и ↓1+34
Комментарии32

Анализ данных на Scala. Считаем корреляцию 21-го века

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

Очень важно выбрать правильный инструмент для анализа данных. На форумах Kaggle.com, где проводятся международные соревнования по Data Science, часто спрашивают, какой инструмент лучше. Первые строчки популярноcти занимают R и Python. В статье мы расскажем про альтернативный стек технологий анализа данных, сделанный на основе языка программирования Scala и платформы распределенных вычислений Spark.

Как мы пришли к этому? В Retail Rocket мы много занимаемся машинным обучением на очень больших массивах данных. Раньше для разработки прототипов мы использовали связку IPython + Pyhs2 (hive драйвер для Python) + Pandas + Sklearn. В конце лета 2014 года приняли принципиальное решение перейти на Spark, так как эксперименты показали, что мы получим 3-4 кратное повышение производительности на том же парке серверов.
Подробности
Всего голосов 21: ↑20 и ↓1+19
Комментарии21

IBM представляет новое решение для борьбы с кибератаками

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


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

Сегодня особенно ощущается нехватка надежной информации об угрозах, так как 80% кибератак проводят организованные преступные группы, в распоряжении которых есть вся необходимая информация, инструментарий и практический опыт для осуществления подобных действий. Несмотря на то, что хакеры стали более мобильными, поведение их жертв не изменилось. На данный момент большинство (65%) штатных отделов кибербезопасности используют множество независимых надежных и ненадежных источников информации для борьбы с кибератаками.
Платформа X-Force Exchange имеет в своем распоряжении огромный объем обобщенной информации IBM о безопасности, в том числе самый полный портфель исследовательских данных и технологий, таких как QRadar, опыт тысячи глобальных заказчиков, а также знания и навыки аналитиков и экспертов подразделения IBM Managed Security Services.
Читать дальше →
Всего голосов 11: ↑8 и ↓3+5
Комментарии1

Эксплуатация концептуальных недостатков беспроводных сетей

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


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

Читать дальше →
Всего голосов 84: ↑74 и ↓10+64
Комментарии85

Wi-Fi сети: проникновение и защита. 1) Матчасть

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


Синоптики предсказывают, что к 2016 году наступит второй ледниковый период трафик в беспроводных сетях на 10% превзойдёт трафик в проводном Ethernet. При этом от года в год частных точек доступа становится примерно на 20% больше.

При таком тренде не может не радовать то, что 80% владельцев сетей не меняют пароли доступа по умолчанию. В их число входят и сети компаний.

Этим циклом статей я хочу собрать воедино описания существующих технологии защит, их проблемы и способы обхода, таким образом, что в конце читатель сам сможет сказать, как сделать свою сеть непробиваемой, и даже наглядно продемонстрировать проблемы на примере незадачливого соседа (do not try this at home, kids). Практическая сторона взлома будет освещена с помощью Kali Linux (бывший Backtrack 5) в следующих частях.

Статья по мере написания выросла с 5 страниц до 40, поэтому я решил разбить её на части. Этот цикл — не просто инструкция, как нужно и не нужно делать, а подробное объяснение причин для этого. Ну, а кто хочет инструкций — они такие:
Используйте WPA2-PSK-CCMP с паролем от 12 символов a-z (2000+ лет перебора на ATI-кластере). Измените имя сети по умолчанию на нечто уникальное (защита от rainbow-таблиц). Отключите WPS (достаточно перебрать 10000 комбинаций PIN). Не полагайтесь на MAC-фильтрацию и скрытие SSID.

Оглавление:
1) Матчасть
2) Kali. Скрытие SSID. MAC-фильтрация. WPS
3) WPA. OpenCL/CUDA. Статистика подбора
Как работают WEP, WPA и WPS
Всего голосов 185: ↑176 и ↓9+167
Комментарии76

На github появились исходники кейлогеров, работающих на GPU

Время на прочтение1 мин
Количество просмотров18K
imageНа сервере github появились два проекта, использующие неожиданную уязвимость – возможность исполнения шпионящих за компьютером программ при помощи видеопроцессора. Уязвимость была впервые описана в исследовательской работе 2013 года под названием "Печатать можно, спрятаться нельзя: кейлогер на основе GPU".

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

И вот, пожалуйста – проекты Jellyfish rootkit и Demon keylogger доказывают на деле возможность такого подхода. Никак не модифицируя ядро системы, они работают за счёт видеокарты. Вот что пишет создатель проекта под ником x0r1:
Читать дальше →
Всего голосов 28: ↑26 и ↓2+24
Комментарии8

Очень большой Postgres

Время на прочтение9 мин
Количество просмотров85K
Так уж случилось, что последнее время приходилось заниматься оптимизацией и масштабированием различных систем. Одной из задач было масштабирование PostgreSQL. Как обычно происходит оптимизация БД? Наверное, в первую очередь смотрят на то, как правильно выбрать оптимальные настройки для работы и какие индексы можно создать. Если обойтись малой кровью не вышло, переходят к наращиванию мощностей сервера, выносу файлов журнала на отдельный диск, балансировке нагрузки, разбиению таблиц на партиции и к всякого рода рефакторингу и перепроектированию модели. И вот уже все идеально настроено, но наступает момент, когда всех этих телодвижения оказывается недостаточно. Что делать дальше? Горизонтальное масштабирование и шардинг данных.


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

Открыто видео курса «Multicore programming in Java» на русском (30+30 часов)

Время на прочтение2 мин
Количество просмотров60K
Добрый день.

Я занимаюсь IT-преподаванием. Читал Java Core (материалы тут).
Сейчас написал и продаю курс «Scala for Java Developers»

В этом посте решил открыть видео двух курсов (проходивших в режиме вебинаров) по многопоточности под JVM (это 16 + 16 двухчасовых лекций).

Больше о материалах (программа, полезные ссылки) можно прочитать в постах-объявлениях о вебинарах (Программа курса «Multicore programming in Java» (25 марта 2014), Программа и материалы курса «Multicore programming in Java» (31 июля)).

Курс рассчитан на слушателей, которые начинают изучать многопоточность с нуля (после крепкого курса Java Core, Middle Developer из чистого web-а или перешедшим из скриптовых/интерпретируемых языков программирования). Он не будет подходить тем, кто перешел из «суровых» С/С++ или ищет «академической высоты».

Детально рассматриваются темы Hardware, New Java memory Model, java.util.concurrent (atomics, blocking queues, thread pool, locks, synchronizers), message passing alternative, software transactional memory alternative, Java 7 Fork/Join, Java 8 Parallel Streams (+Lambdas, +Stream API), CSP/JCSP alternative

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

93 видео-лекции по Scala

Время на прочтение4 мин
Количество просмотров38K
В ходе подготовки спецкурса «Scala for Java Developers» под платформу онлайн-обучения UDEMY, я анализирую другие «лекционные» видео. В библиотеке накопилось какое-то количество ссылок на дельных учебные материалы по Scala (видео на английском).

Для большинства видео указано количество просмотров. Надо сделать несколько замечаний:
1. Количество просмотров не является главным критерием качества и полезности видео, но этот может служить каким-то указателем на ценность.
2. Здесь не все популярное видео, что я встречал, а лишь то, что ценно по моему личному мнению.
3. Если кто-то знает еще хорошее видео — пишите, добавлю в списки.


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

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность