Месяц: Декабрь 2019
-
DIY кнопка вызова часть 2. Видеофон из Raspberry Pi
—
от автора
В этой части делаем из Raspberry Pi VoIP устройство для осуществления видео вызовов по SIP протоколу. Первоначальная задача осталась прежней — осуществление вызова по внешнему воздействию (нажатию кнопки). Но немного изменилась реализация идеи. Как и в предыдущей части, воспользуемся терминальным SIP клиентом Linphonec, но в целях упрощения настройки, я решил воспользоваться VoIP провайдером Zadarma.com с…
-
#Назаметку. Осторожно, атомарные операции в ConcurrentHashMap
—
от автора
В Java с незапямятных времён есть замечательный интерфейс Map и его имплементации, в частности, HashMap. А начиная с Java 5 есть ещё и ConcurrentHashMap. Рассмотрим эти две реализации, их эволюцию и то, к чему эта эволюция может привести невнимательных разработчиков. Warning: в статье использованы цитаты исходного кода OpenJDK 8, распространяемого под лицензией GNU General Public…
-
Тестирование SSD на надёжность: 3dnews vs JEDEC vs здравый смысл. Где правда, брат?
—
от автора
Всем известно легендарное тестирование SSD на надёжность от 3dnews (публикация от 2018.01), по результатам которого некоторые бюджетные накопители превзошли заявленный производителем ресурс в десятки раз. После этого исследования в народе появилась конспирологическая теория, что производители занижают ресурс у бюджетных SSD, а также распространилось убеждение, что практически все SSD умеют делать и качественно выполняют выравнивание износа.
-
Зачем же роботу ограничиваться сбором мячей для гольфа? Есть же еще и теннис
—
от автора
Краткая история как мы делаем свой стартап, что мы покажем во Флориде, а так же что делать, если нужна indoor навигация с высокой точностью? Мы сделали робота для сбора мячей для гольфа. Делаем его уже чуть больше года. Это лето для нас было очень плодотворным. Мы много тестировали, дорабатывали. Встречались с инвесторами и питчили, что…
-
Микрокод и уязвимости в процессорах
—
от автора
Отсутствие уязвимости в CPU лучшее что может быть, но как проверить есть ли они, эти уязвимости? Как выясняется в современных процессорах они буквально "пачками". И счастливому обладателю «уязвимостей» в лучшем случае предлагается ползать по таблицам и искать каким из них подвержен его процессор. А с течением времени количество найденных дыр только растет. Простейшим решением предлагается…
-
Решение Kingston при «угрозе уровня Танос»
—
от автора
Как выглядит покупка карты памяти у большинства пользователей? Берётся первая попавшаяся на глаза модель в магазине, если устраивает ценник и ёмкость накопителя. Период просветления начинается позже — когда фото открываются целую вечность, камера не записывает видео в максимальном разрешении, а работу в неблагоприятных условиях устройство просто не способно пережить. Поэтому при выборе карты памяти стоит…
-
Что внутри шаурмы: микросервисы, распределенные системы и Кафка. Делимся материалами со встречи Backend United #5
—
от автора
Привет! Этот пост-отчёт с митапа Backend United, нашей серии тематических встреч для разрабочиков серверной части. Пятая встреча получила название «Шаурма», и здесь мы говорили о микросервисах: о способах синхронного и асинхронного взаимодействия между ними, организации потоков данных и роли Кафки в микросервисной архитектуре. Заходите под кат, если вам интересны эти темы. Внутри поста — все…
-
Блокировать трекеры рекламы на сетевом уровне сложно, но возможно
—
от автора
Когда вы выходите в интернет или используете приложение, множество компаний спокойно отслеживают каждое ваше действие. Некоторые, такие как Newrelic, достаточно невинны, они отслеживают ошибки пользователей и чтобы быстрее на них реагировать. Но другие, такие как Facebook Audience Network, собирают огромное количество данных как с ваших собственных устройств, так и с устройств в вашей сети. Блокировка…
-
Клиентоориентированный Data Lake в игровой компании
—
от автора
Источник Привет, Хабр! Меня зовут Максим Пчелин, и я руковожу разработкой BI-DWH в MyGames (игровое подразделение Mail.ru Group). В этой статье я расскажу о том, как и зачем мы строили клиентоориентированное DataLake-хранилище. Статья состоит из трех частей. Сперва я расскажу, почему мы решили реализовывать DataLake. Во второй части я опишу, какие технологии и решения мы…
-
Атрибуты и протокол дескриптора в Python
—
от автора
Рассмотрим такой код: class Foo: def __init__(self): self.bar = ‘hello!’ foo = Foo() print(foo.bar) Сегодня мы разберём ответ на вопрос: «Что именно происходит, когда мы пишем foo.bar?» Вы, возможно, уже знаете, что у большинства объектов есть внутренний словарь __dict__, содержащий все их аттрибуты. И что особенно радует, как легко можно изучать такие низкоуровневые детали в…