Рубрика «open source» - 225

В начале 20-го века на главных дорогах общего пользования начали появляться таблички (далее shield) с номерами. Отображение их на карте не является обязательным атрибутом, но является важным с точки зрения удобства использования. Людям, которые видят таблички в реальности, проще сориентироваться на местности. Также это придает карте “местный колорит”. Стоит отметить, что одна и та же дорога может иметь несколько табличек одновременно. Это связано с тем, что дорожные маршруты могут накладываться друг на друга.

Как мы рисовали road shields на карте - 1
В OsmAnd мы решили нарисовать максимально приближенные к реальности shield, используя данные OpenStreetMap.

Читать полностью »

Swift 3.0, много шума, а что на деле? - 1

В начале мая на просторах интернета разработчики языка объявили, что начинают подготовку к релизу 3.0 версию языка. Разработка 3.0 идет в мастер ветке, по релизам, можно понять, что 3-го мая был релиз Swift 2.2.1. Затем в мастер начали вливать изменения касательно 3-ей версии языка. 9-го мая уже появился первый developer релиз из того же мастера, который можно накатить на последний xcode через установщик из swift.org/download/#snapshots, который включается через Preferences -> Components -> Toolchains.

Немного общей информации о будущем релизе

Читать полностью »

«За много лет мы получили столько жалоб, что решили сделать, наконец, правильный выбор»

Chrome отключил навигацию назад по кнопке Backspace - 1Тем пользователям Chrome/Chromium, кто привык нажимать Backspace для возврата на предыдущую страницу, придётся менять привычки. Это стало понятно из обсуждения в баг-трекере Chromium (Issue 608016).

Обсуждение началось с невинного баг-репорта: у пользователя после обновления на последнюю версию Chrome 52.0.2720.0 (Canary) перестала работать кнопка Backspace для навигации. Как выяснилось, это вовсе не баг. Теперь Chrome по умолчанию не возвращается на предыдущую страницу по Backspace. Разработчики предупреждали об изменении ещё в апреле: см. Issue 1854963002, коммит от 11 апреля.
Читать полностью »

Двойной обман. Как ФБР использовало украинского хакера Максима Попова - 1

Холодным днём 18 января 2001 года Максим Игоревич Попов, 20-летний украинский парень, нервно толкнул двери американского посольства в Лондоне. Его можно было принять за участника программы по студенческому обмену, который пришёл получать визу, но самом деле Максим был хакером, участником восточноевропейской хакерской группы, которая атаковала американские коммерческие компании, зарабатывая на вымогательстве и фроде. Прокатившаяся волна таких атак выглядела словно предвестник нового этапа Холодной войны между США и организованными хакерскими группировками в странах бывшего советского блока. Максим Попов с детским лицом, в очках и с короткой стрижкой, собирался стать первым перебежчиком в этой войне.
Читать полностью »

RS232 устройство 3-в-1 для домашнего Linux сервера: Часть 2 (Серверная)

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

WRN устройство

Устройство получило наименование WRN от составляющих его подсистем:

  • Аппаратный сторожевой таймер, работающий с watchdog демоном;
  • Генератор истинно случайных чисел;
  • Радиомодуль nRF24L01+ для сбора данных с автономных датчиков.

В этой части статьи будет рассмотрено как взаимодействовать с последовательным портом из пространства ядра (kernel space) и как организовать работу с несколькими подсистемами устройства через RS232 в Linux.

Читать полностью »

Серверы, собранные из специально не предназначенных для этого комплектующих, обычно имеют два недостатка. У них отсутствует аппаратный сторожевой таймер и часто не хватает энтропии для ряда сервисов. Нехватка энтропии особенно актуальна для не сильно нагруженных серверов. Это связанно с тем, что ядро Linux в качестве источника энтропии использует активность системы, а именно: сетевого оборудования, дисковой подсистемы и аппаратных прерываний.

Также в домашнем сервере часто возникает необходимость иметь более экономный, по сравнению с Wi-Fi, радиомодуль для коммуникации с автономными датчиками.

Существует большой выбор устройств, с помощью которых можно решить любую из этих проблем, но подключение каждого из них требует отдельный порт. Оценив ситуацию, в итоге решил разработать устройство 3-в-1 подключаемое в RS232 (COM) порт. Остальные требования получились следующими:

  • Аппаратный сторожевой таймер, пригодный для работы со стандартным демоном watchdog;
  • Генератор истинных случайных чисел на базе эффекта обратного лавинного пробоя p-n перехода;
  • Радиомодуль nRF24L01+ для сбора данных с автономных датчиков.

Таким образом устройство получило наименование WRN от названий составляющих его подсистем: WDT (WatchDog Timer), RNG (Random Number Generator), nRF24L01+.

WRN устройство

Читать полностью »

Введение в Roslyn. Использование для разработки инструментов статического анализа - 1

Roslyn является платформой, предоставляющей разработчику различные мощные средства для разбора и анализа кода. Но наличия таких средств недостаточно, нужно понимать, что и для чего необходимо использовать. Данная статья несёт цель ответить на подобные вопросы. Помимо этого, будет рассказано об особенностях разработки статических анализаторов, использующих Roslyn API.
Читать полностью »

image
Привет!
Я уже писал на Хабре о своей реализации блочных шифров стран СНГ. Выдалась еще одна свободная неделька в результате чего к симметричным стандартам добавились алгоритмы электронной цифровой подписи: российский ГОСТ 34.10-2012, украинский ДСТУ 4145-2002 и белорусский СТБ 34.101.45-2013.
Все три алгоритма основаны на эллиптических кривых. Но реализация каждого из стандартов имеет свои тонкости, о которых я хочу кратко рассказать в этой статье.
Читать полностью »

Сегодня очередной День всеобщей осведомлённости о доступности (GAAD), в который принято популяризировать вспомогательные технологии и доступность IT-продуктов для пользователей с ограниченными возможностями. Тем не менее, во время GAAD о доступности (или accessibility) в большинстве случаев говорят как о свойстве какого-либо программного обеспечения или web-сервиса, что безусловно важно и заслуживает всяческого внимания, но является не единственно возможным направлением приложения сил разработчиков. Помимо обеспечения доступности интерфейсов для вспомогательных технологий существует и такое направление, как разработка самих этих вспомогательных технологий: экранных увеличителей, программ чтения экрана, специализированных рабочих сред и других. Именно об одном подобном проекте, занимающемся разработкой специализированного рабочего окружения для незрячих и слабовидящих под названием LUWRAIN, и пойдёт речь в данной статье.

Год назад, на GAAD-2015, уже публиковался подробный материал о LUWRAIN, в котором была изложена общая концепция этой рабочей среды, а также рассмотрена задача создания приложений на её базе, адаптированных для людей с нарушениями зрения, поэтому, все, кто боится потерять контекст, может предварительно ознакомиться с публикацией "Luwrain — рабочее окружение для людей с нарушениями зрения". В этот же раз речь пойдёт о тех технических задачах, которые решались в рамках LUWRAIN на протяжении прошедшего года, и о перспективах дальнейшего развития, а также читателей ждёт рассказ о том, как команда LUWRAIN угощала армянским коньяком и русской водкой своих коллег из Canonical.

Михаил у офиса Canonical
Читать полностью »

1Script или Как я начал open-source проект - 1
Тезис о том, что open-source создается гиками-энтузиастами в наше время несколько утратил актуальность. Тем не менее, идеология открытого кода родилась именно так. Классные программы, написанные ночью, бородатыми (и не очень) чудиками, бескорыстно, просто, чтобы сделать мир лучше — изменили мир разработки ПО.

Любой программист втайне мечтает сделать что-то большое и светлое, чтобы всем понравилось. Если вы скажете мне, что вы не из таких, что вам нравится только закрывать тикеты в рабочем багтрекере, и вы не мечтаете о выпуске своего проекта в большой мир, то я вам не поверю. Или посоветую сменить профессию. Я убежден, что программист — это художник, а художнику важно делать что-то свое, возможно, просто «в стол» — но делать.

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js