Переделка кассовых аппаратов. Часть 1

Всем добрый день. Несколько лет назад мне в руки случайно попал старый списанный кассовый аппарат. Назывался он "Элвес микро-Ф". Т.к. я увлекаюсь электроникой и программированием, в том числе и построением различных устройств на микроконтроллерах, аппарат решил исследовать. Разобрав его я увидел:

  • плату с электронной начинкой и микроконтроллером AT89С52 в панельке
  • дисплей
  • термопринтер
  • аккумулятор
  • пленочная клавиатура
  • два светодиода

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

Материалы с встречи #RuPostgres — видеозаписи, презентации, разбор викторины и фотоотчёт

15 сентября в Авито прошёл митап, на котором мы говорили о масштабировании приложений на PostgreSQL. Сегодня я хочу поделиться материалами с него — видеозаписями, презентациями от докладчиков, показать фото. Также под катом публикую разбор вопросов викторины, которую мы проводили здесь, на Хабре, перед митапом. И рассказываю о своих впечатлениях от встречи.

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

Утечка исходных кодов веб-сервисов «Аэрофлота»

Неизвестный опубликовал на GitHub исходные коды веб-приложений «Аэрофлота», включая код, отвечающий за начисление бонусов и создание подарочных сертификатов. Утечка произошла из-за халатности — сервер с реестром контейнеров Docker был доступен всем желающим по протоколу HTTP без авторизации и шифрования. Читать дальше →

Давайте обрабатывать звук на Go

Дисклеймер: Я не рассматриваю какие-либо алгоритмы и API для работы со звуком и распознаванием речи. Эта статья о проблемах при работе с аудио и об их решении с помощью Go.

gopher

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

При чём тут конвейер, к тому же из разных технологий и зачем ещё один фреймворк? Сейчас разберёмся.

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

«Яндекс» запустит открытый топ сайтов рунета до конца года

До конца года «Яндекс» запустит открытый рейтинг популярности сайтов. В него войдут 10 000 самых популярных площадок рунета. Об этом сообщили «Ведомости», которые ознакомились с закрытой презентацией проекта. «Яндекс» подтвердил нам разработку проекта, но отказался раскрывать детали, пока «Топ сайтов» не выйдет в стадию открытой беты. Читать дальше →

Модернизация IDA Pro. Учимся писать загрузчики на Python

Привет всем,

цикл статей по написанию разных полезных штук для IDA Pro продолжается. В прошлый раз мы исправляли процессорный модуль, а сегодня речь пойдёт о написании модуля-загрузчика (лоадера) для одной винтажной операционной системы, а именно — для AmigaOS. Писать будем на Python. Также я постараюсь раскрыть некоторые тонкости при работе с релоками (они же relocations), которые встречаются во многих исполняемых файлах (PE, ELF, MS-DOS и т.п.).

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

Может ли Бетховен отправлять запросы на удаление?

Как немецкий профессор столкнулся с чрезмерно жадными фильтрами на закачку музыки

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

Представьте себя на месте автора этих строк, учителя в общеобразовательной школе, желающего использовать свободно распространяемую запись 5-й симфонии Бетховена у себя в классе. Я всегда выискиваю новые творческие способы разработки образовательных материалов на проекте Open Educational Resources, чтобы все могли делиться друг с другом и обучаться на основе этих важных записей. В рамках разработки нового набора материалов я недавно начал оцифровывать как свои записи, так и записи моего работодателя. Читать дальше →

[Из песочницы] Опыт использования redux без редьюсеров

Хотел бы поделиться своим опытом использования redux в enterprise приложении. Говоря о корпоративном ПО в рамках статьи, я акцентирую внимание на следующих особенностях:

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

Первые два пункта накладывают ограничения по запасу производительности. Об этом чуть позже. А сейчас, предлагаю обсудить проблемы, с которыми сталкиваешься, используя классический redux – workflow, разрабатывая что либо, сложнее чем TODO – list.

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

Как из фрилансера создать работника

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

image

А что такое эти ваши трудовые отношения

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

Android без Google

картинка с сайта PainterOS Добавляем функции смартфону: Несколько месяцев назад Google подтвердила, что Android тайно запоминает данные о местоположении, даже если эта функция отключена пользователем. Однако есть способ избавиться от Google – достаточно установить на смартфон другую ОС на базе Android. Как это сделать, расскажем в нашей статье.

Добавляем функции смартфону: Android без Google Чтобы Google наконец перестала следить за вами, можно установить другую операционную систему на базе Android — например, LineageOS. Приятный эффект такого перехода: разработчиками предлагаются самые свежие версии Android вместе со всеми ­патчами безопасности для многих старых смартфонов, давно брошенных производителями на произвол судьбы.

Альтернатива стандартным приложениям

Магазин приложений для Android F-Droid специализируется на «легких» приложениях с открытым исходным кодом Магазин приложений для Android F-Droid специализируется на «легких» приложениях с открытым исходным кодом Если установка LineageOS, сопровождающаяся некоторым риском, вам представляется затруднительной, остается еще целый ряд не таких кардинальных мер. Так, вместо стандартных приложений и служб, используемых по умолчанию, можно использовать другие — например, можно заменить Google Chrome на Dolphin Web Browser. Он доступен в специальной версии, которая не собирает пользовательские данные. Подробнее о Dolphin Zero Incognito Browser мы расскажем через страницу. Вместо Gmail тоже можно использовать приложение от другого разработчика; рекомендуем MailDroid.

Источником для платных приложений без участия Google является Appstore от Amazon Источником для платных приложений без участия Google является Appstore от Amazon Кроме того, на случай если вам разонравился Play Market (тем более что он требует наличия учетной записи Google), существуют альтернативные магазины приложений. Из них наибольшей популярностью пользуются F-Droid и Amazon AppStore. Оба каталога — те же самые приложения, но их нельзя скачать из официального магазина.

На сайтах производителей они доступны для скачивания в виде архивов APK. F-Droid предлагает к установке множество полезных и легких версий программ, которые заменяют ресурсоемкие аналоги из Play Market, что положительно скажется на его быстродействии в целом. Браузеры, календари, обозреватели Facebook и других социальных сетей — все это вы без труда найдете здесь.

LineageOS: больше безопасности для старых гаджетов

LineageOS — это преемник популярного CyanogenMod, пользовательская прошивка, которая полностью заменяет предустановленную ОС Android. Перед ее установкой мы настоятельно рекомендуем сохранить все важные данные со смартфона на ПК с помощью, например, приложения для резервного копирования или AirDroid. Самое страшное, что может произойти после установки LineageOS, — ваш телефон перестанет работать, поэтому стоит взвесить все риски. Кроме того, перепрошивка прекращает гарантию производителя устройства.

Добавляем функции смартфону: Android без GoogleLineageOS идеально подходит для старых смартфонов, которые перестали получать обновления, из-за чего со временем растет количество уязвимостей в их безопасности. Это очень критично для мобильных телефонов, поскольку на них записывается и хранится большое количество личных данных.

LineageOS при этом значительно дольше поддерживается разработчиками и обнов­ляется, как и официальная версия Android от производителя смартфона. А многие пользователи даже сообщают, что их смартфоны после установки легкой системы снова стали быстрее работать. К сожалению, установить LineageOS — дело совсем не простое.

Необходимо последовательно проделать некоторые основные шаги, которые в случае ошибки приведут к полному отказу устройства. Сначала потребуется разблокировать загрузчик операционной системы вашего смартфона. В зависимости от модели телефона для этого нужно проделать опреде­ленные действия. Некоторые производи- тели, например Sony, рассказывают своим пользователям, что именно нужно делать. Руководство по разблокированию загрузчика Sony представлено на этой странице. Компания Samsung, наоборот, пытается препятствовать проведению этой операции.

После разблокировки вам нужна пользовательская прошивка LineageOS, а также среда восстановления (Recovery ROM). Прошивку вы найдете здесь, среду восстановления — на этом сайте. Если после установки LineageOS вы хотите продолжать использовать приложения Google, вам понадобится пакет GApps, доступный здесь. Для собственно установки существуют разные способы и инструменты — например, Minimal ADB and Fastboot или Odin. Руководства для многих моделей смартфонов есть на YouTube и на форуме XDA Developers.