Search
Write a publication
Pull to refresh
148
0.2
Send message

Делаем ионизатор воздуха менее, чем за $10

Reading time9 min
Views63K
Перевод статьи из блога индийского инженера Амальдева В.



Этот проект вызревал у меня в голове порядка двух лет, и я всё никак не мог им заняться. В проекте нет ничего сложного или слишком технологичного. Любой человек, умеющий мастерить что-либо руками, должен с ним справиться без особых проблем. Я выложил весь проект в свободный доступ, и у вас должно получиться заказать все запчасти и собрать свой прибор, потратив менее, чем $10.

Предыстория


Я сейчас живу в Мумбаи, в квартире, выходящей окнами на очень загруженную дорогу. И с момента моего заезда сюда я борюсь с пылью, которая оседает на всём, стоит мне открыть окна. Еженедельная уборка квартиры отнимает много сил. И я решил купить очиститель воздуха для комнаты. А потом подумал: а насколько сложно будет собрать очиститель самому? Я провёл исследование и решил, что нужно сделать себе ионизатор (кстати, ионизатор и очиститель – это два разных устройства, но об этом позже). Однако потом я зарылся в текущих проблемах и так его и не собрал.

Обратный поиск изображений: руководство от детективного агентства Bellingcat

Reading time4 min
Views75K

Кадр одного из онлайновых расследований Bellingcat

Международное агентство Bellingcat опубликовало несколько советов по идентификации людей и географических локаций на фотографиях с помощью функции «Поиск изображений» в поисковых системах.

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

В опубликованном руководстве разъясняются базовые методы онлайн-расследований, с акцентом на идентификацию лиц и адресов.
Читать дальше →

Как ЛАНИТ снял DIY-ситком у себя в офисе

Reading time6 min
Views12K
В начале 2019 года маркетинговые, HR и digital-команды ЛАНИТ поняли, что компании нужен вирусный ролик, чтобы повысить узнаваемость бренда и показать, какие классные, веселые люди работают у нас. Эффект от такого видео предугадать невозможно, учитывая количество и скорость появления информации в сети. Поэтому во время обсуждения идеи мы решили сделать не один ролик, а целую серию видео. Так шансы завоевать внимание зрителя стали бы намного выше. В итоге, мы остановились на том, что сделаем комедийный мини-сериал про жизнь в айтишном офисе и назовём его «сИТком».

Эксперимент VonmoTrade. Часть 2: Ордеры. Типы, особенности обработки

Reading time6 min
Views5.3K

Чтобы понять, как работают биржи, нужно разобраться с биржевыми заявками и правилами их обработки брокером.


В статье мы разберем типы ордеров, особенности их исполнения на бирже и накладываемые торговой моделью ограничения. Если вам любопытно, что значат аббревиатуры DAY, GTC, FOK, IOC, GTD, GAT, MOO, MOC, LOO, LOC, MIT, OCO, OSO, PEG, прошу под кат.

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

В поисках LD_PRELOAD

Reading time12 min
Views28K
Эта заметка была написана в 2014-м году, но я как раз попал под репрессии на хабре и она не увидела свет. За время бана я про неё забыл, а сейчас нашёл в черновиках. Думал было удалить, но авось кому пригодится.



В общем, небольшое пятничное админское чтиво на тему поиска «включенного» LD_PRELOAD.
Читать дальше →

C++ vtables. Часть 2 (Virtual Inheritance + Compiler-Generated Code)

Reading time10 min
Views16K

Перевод статьи подготовлен специально для студентов курса «Разработчик С++». Интересно развиваться в данном направлении? Смотрите запись мастер-класса «Практика использования Google Test Framework»!



Часть 3 — Виртуальное наследование


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

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

Малиновый Прог против Интернета Кирпичей, или Raspberry Pi с графикой на read-only microSD

Reading time16 min
Views88K
Запуск Raspberry Pi с полной поддержкой графики на microSD, навсегда остающейся в режиме read-only после установки системы. Отсутствие какой-либо записи данных на флэш-память повышает надёжность устройства, приближая его к промышленному классу изделий. Пошаговая инструкция. Небольшой театр инженерного абсурда для развлечения аудитории.


Мне понадобилось сетевое устройство с открытым кодом и выходом HDMI, и я решил попробовать Малиновый Прог. Да, я именно так предлагаю переводить Pi: Прог. Понятное дело, даже одноплатнику нужна операционка. И вот, захожу я на официальный сайт, ожидая встретить там подробное руководство по созданию суровой, неломаемой Вещи à la turnkey box. Но народ, как ни в чём не бывало, устанавливает Ubuntu (т.е. Raspbian Jessie) прямо на microSD, размещая и swap там же. Как обычный десктоп, face palm.

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

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

Когда Российская академия наук бессильна

Reading time4 min
Views8.2K
Если у вас есть враги, порекомендуйте им выучиться на филологов или редакторов, а потом пойти работать в геймдев. Они будут молить о пощаде, разыскивая в словарях плейбласты вьюпорта, коллбэки и риггинги, а вы будете ехидно посмеиваться. Но это продлится недолго. В какой-то момент боль утихнет, придет смирение и начнется невероятно интересный квест!

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

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

Страх, боль и ненависть технической поддержки

Reading time4 min
Views25K
Хабр — не жалобная книга. Эта статья о бесплатных инструментах компании Nirsoft для системного администратора Windows.

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

Бредогенератор: создаем тексты на любом языке с помощью нейронной сети

Reading time17 min
Views71K
Привет, Хабр.

Эта статья будет в немного «пятничном» формате, сегодня мы займемся NLP. Не тем NLP, про который продают книжки в подземных переходах, а тем, который Natural Language Processing — обработка естественных языков. В качестве примера такой обработки будет использоваться генерация текста с помощью нейронной сети. Создавать тексты мы сможем на любом языке, от русского или английского, до С++. Результаты получаются весьма интересными, по картинке уже наверно можно догадаться.



Для тех, кому интересно что получается, результаты и исходники под катом.
Читать дальше →

Эволюционирующие клеточные автоматы

Reading time22 min
Views38K


Соединим клеточные автоматы с генетическим алгоритмом и посмотрим, что из этого получится.

В статье присутствуют Gif (трафик!) и контрастные картинки. У эпилептиков может случиться эпилептический припадок.
Читать дальше →
Меня зовут Энди Медведев, и я в дизайне уже почти 15 лет. Последние три года работаю дизайнером и аниматором интерфейсов на заказчиков со всего мира — через Upwork. Площадка интересна со всех сторон, но многие побаиваются выходить на нее из-за сложностей общения и легализации валютного дохода. Однако не все так страшно. И мой опыт это подтверждает.
Подробности — под катом

Разработка анимированных фавиконов

Reading time5 min
Views28K
Это — первое, что ищут взглядом, когда переключаются между вкладками браузера. Только что мы дали одно из возможных описаний того, что называется «фавиконом». Пространство на экране, которое занимает ярлык вкладки веб-страницы — это гораздо более ценный ресурс, чем многие думают. Если хорошо поработать с ярлыком, то он, помимо того, что будет продолжать играть роль идентификатора страницы, может стать чем-то вроде «доски объявлений», которая сообщает о том, что именно происходит на странице.


Фавикон
Читать дальше →

Алан Кей рекомендует почитать старые и забытые, но важные книги по программированию

Reading time2 min
Views41K
image

Алан Кей — это магистр Йода для ИТишников. Он стоял у истоков создания первого персонального компьютера (Xerox Alto), языка SmallTalk и концепции «объектно-ориентированного программирования». Он уже много высказывался о своем взгляде на образование в сфере Computer Science и советовал книги тем, кто хочет углубить свои познания:


Недавно на Quora опять подняли эту тему и обсуждение вышло на первое место на Hacker News. Предлагаю вашему вниманию «новый» список суперстарых и фундаментальных книг по программированию и мышлению программиста от Алана Кея.

Lisp 1.5 Programmers Manual

by John McCarthy, 1962

image

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

ещё восемь раритетов:
Читать дальше →

Знакомство со статическим анализатором PVS-Studio при разработке C++ программ в среде Linux

Reading time5 min
Views5.2K
PVS-Studio поддерживает анализ проектов на языках C, C++, C# и Java. Использовать анализатор можно под системами Windows, Linux и macOS. В этой заметке речь пойдет об анализе кода, написанного на C и C++ в среде Linux.

Установка


Установить PVS-Studio под Linux можно разными способами, в зависимости от типа дистрибутива. Наиболее удобный и предпочтительный способ – использование репозитория: так это позволяет автоматически обновлять анализатор при выходе новых версий. Второй вариант – использовать установочный пакет, который можно скачать здесь.
Читать дальше →

Инвестиции на бирже как способ сохранения финансов: 3 работающих способа

Reading time5 min
Views29K


Согласно статистике, на июль 2019 года наивысшая ставка по банковским депозитам в России не превышает 9,5% годовых, что не очень много. Других «пассивных» способов сохранения и приумножения денег тоже не так много – например, стоимость квадратного метра недвижимости в столице фактически не растет уже много лет.

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

CMake и C++ — братья навек

Reading time11 min
Views94K

Дружба навек


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


Многие ругают CMake, и часто заслуженно, но если разобраться, то не всё так плохо, а в последнее время очень даже неплохо, и направление развития вполне позитивное.


В данной заметке я хочу рассказать, как достаточно просто организовать заголовочную библиотеку на языке C++ в системе CMake, чтобы получить следующую функциональность:


  1. Сборку;
  2. Автозапуск тестов;
  3. Замер покрытия кода;
  4. Установку;
  5. Автодокументирование;
  6. Генерацию онлайн-песочницы;
  7. Статический анализ.

Кто и так разбирается в плюсах и си-мейке может просто скачать шаблон проекта и начать им пользоваться.
Читать дальше →

Откуда этот конфиг? [Debian/Ubuntu]

Reading time3 min
Views28K

Цель этого поста: показать технику отладки в debian/ubuntu, связанную с "поиском первоисточника" в системном конфигурационном файле.


Тестовый пример: после долгих издевательств над tar.gz копией установленной ОС и после её восстановления и установки апдейтов мы получаем сообщение:


update-initramfs: Generating /boot/initrd.img-4.15.0-54-generic
W: initramfs-tools configuration sets RESUME=/dev/mapper/U1563304817I0-swap
W: but no matching swap device is available.
I: The initramfs will attempt to resume from /dev/dm-1
I: (/dev/mapper/foobar-swap)
I: Set the RESUME variable to override this.

Цель: понять, откуда это значение (U1563304817I0) пришло и как его правильно поменять. Это первый попавшийся пример, не особо интересный сам по себе, но удобный, чтобы показать практические методы работы с Linux.


Шаг номер 1: Откуда пришёл RESUME?

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

Опасности конструкторов

Reading time8 min
Views33K

Привет, Хабр! Представляю вашему вниманию перевод статьи "Perils of Constructors" автора Aleksey Kladov.


Один из моих любимых постов из блогов о Rust — Things Rust Shipped Without авторства Graydon Hoare. Для меня отсутствие в языке любой фичи, способной выстрелить в ногу, обычно важнее выразительности. В этом слегка философском эссе я хочу поговорить о моей особенно любимой фиче, отсутствующей в Rust — о конструкторах.


Что такое конструктор?


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


  1. Вы устанавливаете инварианты в конструкторе.
  2. Каждый метод заботится о сохранении инвариантов.
  3. Вместе эти два свойства значат, что можно думать об объектах как об инвариантах, а не как о конкретных внутренних состояниях.

Конструктор здесь играет роль индукционной базы, будучи единственным способом создать новый объект.


К сожалению, в этих рассуждениях есть дыра: сам конструктор наблюдает объект в незаконченном состоянии, что и создает множество проблем.

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

Smem – Отчеты о распределении памяти между процессами и пользователями в Linux

Reading time9 min
Views11K
И снова здравствуйте. Друзья, хотим поделиться с вами переводом полезного материала о мониторинге использования памяти в Linux. Данный материал подготовлен специально для студентов курса «Администратор Linux».



Управление памятью в вопросах мониторинга ее использования – одна из самых важных областей в вашей Linux системе. В различных дистрибутивах Linux существует великое множество инструментов для мониторинга использования памяти. Работают они тоже по разному, но в этой статье мы рассмотрим установку и использования такого инструмента как smem.
Читать дальше →

Information

Rating
4,403-rd
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Registered
Activity