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

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

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

Тандем Cpp/Graphviz для Описания Сложных ToolСhain(ов)

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров3.6K

Разработка современного софта это далеко не только про код.

Разработка современного софта это во многом про ToolСhain(ы). Прежде чем начать исполняться исходники проходят гигантский путь. C каждым поколением выходят все более и более массивные системы сборки.
Современные технологии разработки софта это многостадийные конвейеры из различных утилит. Понять их весьма сложно. Однако поможет нам в этом хипстерский язык программирования Graphviz.

Читать далее

Навигатор для трактора или эмиграция с цифрами в 2022

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


Итак, ваш трактор отполирован до блеска, смазан, проведено ТО. Вы в костюмчике с иголочки стоите рядом, позвякиваете ключами и… не знаете толком куда же ехать. Внучатая племянница лучшей подруги двоюродной тети вашей мамы говорит, что лучше страны, чем Германия нет. Васек, товарищ детства, за бутылкой пива рассказал, что если куда и ехать, то в Эмираты. Там дорого-богато, а небоскребов сколько? Владимир Викторович, директор конторы, где вы в студенческие годы подрабатывали, считает, что где родился, там и пригодился, мол, страну поднимать надо. Направлений много, а жизнь одна. Давайте вместе вооружимся цифрами и попытаемся составить хотя бы отдаленно объективный список потенциальных мест дислокации на следующие N лет.

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

Эмуляция видеоигр нейросетью

Время на прочтение12 мин
Количество просмотров20K
Я создал играбельный верхний мир Pokémon. Он очень похож на обычную видеоигру, можете попробовать сыграть в него в браузере здесь:


Хотя он похож на видеоигру, я не писал код игры. На самом деле это нейросеть, подражающая видеоигре.
Читать дальше →

Как сдать английский язык на сертификат ESOL SELT В1 для визы Skilled Worker

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

Знакомый айтишник собрался подаваться на британскую визу. Среди прочих документов для подачи на Skilled Worker visa потребовался сертификат В1, которого у него не было, и надо было срочно готовиться к экзамену. Поэтому он обратился ко мне, как к преподавателю английского.  Делюсь собранными данными, своими рекомендациями, если вы соберетесь сдавать SELT В1, и личным опытом моего знакомого. Приложенные скриншоты взяты из видео LanguageCert с информацией по прохождению Listening/Reading/Writing /Speaking, которые доступны здесь и здесь. Материалы с пробными экзаменами, включая аудиоматериалы и ответы, можно скачать по ссылке.

Запись на сдачу, cтруктура экзамена и тайминг

Записаться в любой из центров можно здесь. Экзамен состоит из двух блоков (чтение/аудирование/письмо и устная часть) и в Армении проходит в American University of Armenia. Необходимо выбрать дату отдельно на обе части. Знакомый записывался на сдачу за месяц до экзамена. Он выбрал временные слоты таким образом, чтобы пройти все части за один день, и заплатил 235 долларов по карте он-лайн. 

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

Оба блока проходят он-лайн на компьютере с наушниками в лингафонном кабинете: open-space с отдельными столами и компьютерами для каждого студента. Устная часть - это интервью с сертифицированным инструктором. Темы базируются на ежедневных ситуаций и практическом опыте взрослого человека.

Читать далее

Ламповые часы Nixie clock своими руками

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

Я уже больше 5 лет занимаюсь изготовлением часов на газоразрядных индикаторах, а недавно заполучил довольно редкие лампы ZM1040, часы на которых считаю одними из лучших в своей коллекции. Надеюсь, и вы сможете по достоинству оценить мою работу, ознакомившись с подробностями и процессом изготовления.



Картинка кликабельна


Приятного чтения.

Под катом будет много фото...

Автоматизация тестирования при разработке прошивок радиоэлектронных устройств

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

Занимательный факт. Исходный код программы бортового управляющего компьютера лунного модуля Аполлон 11 содержит 64830 строк. Исходные коды прошивок навигационного приемника, которые мы в МЭИ разрабатываем последние десять лет, содержат 217510 строчек на C++ и 181236 строчек на SystemVerilog. И я всё жду, когда это количество перейдет в качество.

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

Читать далее

История создания первого по настоящему open-source Brain-computer interface устройства (DIY)

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

Crowdsupply - История создания интерфейса мозг-компьютер (Open-source DIY).

Читать далее

Открытый курс машинного обучения. Тема 1. Первичный анализ данных с Pandas

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров1.1M


Открытый курс машинного обучения mlcourse.ai сообщества OpenDataScience – это сбалансированный по теории и практике курс, дающий как знания, так и навыки (необходимые, но не достаточные) машинного обучения уровня Junior Data Scientist. Нечасто встретите и подробное описание математики, стоящей за используемыми алгоритмами, и соревнования Kaggle Inclass, и примеры бизнес-применения машинного обучения в одном курсе. С 2017 по 2019 годы Юрий Кашницкий yorko и большая команда ODS проводили живые запуски курса дважды в год – с домашними заданиями, соревнованиями и общим рейтингом учаcтников (имена героев запечатлены тут). Сейчас курс в режиме самостоятельного прохождения.

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

Визуализация данных при отладке в Visual Studio Code

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


Вообще Debugger Visualizers для обычного Visual Studio — это очень старая тема (статья 2009 года), но не очень популярная. В большинстве случаев принято учить сразу дебажить, представляя процессы в голове, а штуки вроде сортировок и списков показываются на доске. В вебе часто визуальную часть предоставляет браузер, и все всем довольны. Но бывает, что списки или деревья в голове уже не умещаются, таблицы хочется отсортировать, а графики строить не выходя из среды отладки. Для всего этого и был создан плагин для VS Code — Debug Visualizer.
Читать дальше →

Составляем DNS-запрос вручную

Время на прочтение7 мин
Количество просмотров54K
Об авторе. Джеймс Рутли — бэкенд-разработчик в компании Monzo.

В этой статье мы изучим двочиный формат сообщений Domain Name Service (DNS) и напишем вручную одно сообщение. Это больше, чем вам нужно для использования DNS, но я подумал, что для развлечения и в образовательных целях интересно посмотреть, что находится под капотом.

Мы узнаем, как:

  • Написать запросы DNS в двоичном формате
  • Отправить сообщение в теле датаграммы UDP с помощью Python
  • Прочитать ответ от DNS-сервера

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

Эмулятор RFID

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

Эмулятор карт EM Marine



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

Склеиваем несколько фотографий в одну длинную с помощью компьютерного зрения

Время на прочтение4 мин
Количество просмотров26K
В предыдущих статьях был описан шеститочечный метод разворачивания этикеток и как мы тренировали нейронную сеть. В этой статье описано, как склеить фрагменты, сделанные из разных ракурсов, в одну длинную картинку.
Читать дальше →

Google говорит, университеты больше не нужны

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

На этой неделе корпорация Google объявила о введении новых сертификатов профессионального образования, которые можно получить после шести месяцев обучения. Эта инициатива призвана дать американцам дополнительные возможности для карьерного роста. Также представители компании дали кандидатам понять, что будут рассматривать эти сертификаты, которые выдаются без оглядки на опыт работы и наличие высшего образования, наравне с дипломами бакалавра.

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

Стабилизация видео с движущейся камеры, или как перевести всё в неподвижную систему координат

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

Сейчас возможности Computer Vision (CV) полностью перекраивают ландшафт рынка Public Safety solutions. В то время как традиционными системами видеонаблюдения уже не просто никого не удивить, а странно не найти её в любом общественном месте, использование ИИ в данной области всё ещё вновинку.


Мы исследуем применение CV для различных бизнес-задач в сфере Public safety. В этом посте мы предлагаем вариант перевода видео с движущейся камеры в неподвижную систему координат для последующего анализа.


Полностью проект лежит на GitHub.




Допустим, у нас есть какое-то видео и мы хотим построить для него неподвижную систему координат, чтобы оценивать расположение объектов относительно друг друга.


Зачем это нужно? Очень часто в задачах public surveillance видео, которое нужно анализировать, снято на движущуюся камеру. Из-за этого возникает несколько проблем в определении положения объектов относительно друг друга:


  • Непонятно, чем вызвано изменение координат объекта: движется камера или сам объект;
  • При смене сцены из-за поворота камеры разные объекты могут получить одни и те же координаты, даже если объекты были статичными.

image
Рисунок 1 — Одинаковые объекты имеют разные координаты из-за движения камеры


Для того, чтобы построить неподвижную систему координат необходимо:


  1. Определить начало координат;
  2. Сопоставить между собой два последовательных фрейма;
  3. Найти преобразование, которое будет переводить координаты объекта на текущем фрейме в координаты относительно начала координат, при этом учитывать все движения камеры (поворот, перемещение, наклон и т.д.).

image
Рисунок 2 — проективное преобразование

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

Выбираем канал для точки доступа Wi-Fi. Исчерпывающее руководство

Время на прочтение9 мин
Количество просмотров316K
2,4 ГГц — это плохо. 5 ГГц — это хорошо. 6 ГГц — это ещё лучше, но послезавтра. Все это знают, кого я тут учу, в самом деле. Всё это хорошо, только делать-то что, когда ты такой, как умный, открываешь какой-нибудь Wi-Fi Explorer, а там сатанизм и этажерки, как на скриншоте?



Шаг первый — поплакать. Шаг второй — нырнуть под кат. Вопрос простой, а ответ — нет.
Когда это нас останавливало?

Портирование FreeModbus под STM32. Версия от Динара

Время на прочтение9 мин
Количество просмотров33K
Доброго времени суток, любители и профессионалы программирования на микроконтроллерах. Эта статья посвящена портированию библиотеки freemodbus на STM32F100 (тот, что в discovery vl). Да, на habrahabr уже есть подобная статья, но мне она кажется не самой удачной. Буду использовать Modbus RTU в режиме slave. Для успешного портирования библиотеки freemodbus на платформу без операционной системы, необходимо выполнить три шага:

1. прописать файл port.h
2. настроить таймер
3. настроить usart

Итак, план составлен — пора за работу.
Читать дальше →

15 базовых советов по Git для эффективной работы каждый день

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

Привет, меня зовут Сергеев Сергей aka gurugray. Сейчас я «Mentor FrontEnd Community» в компании ManyChat. Вы могли видеть мои лекции по релизному циклу и регламенту работ с системами контроля версий в Школе Разработки Интерфейсов Яндекса (ШРИ).


Меня часто спрашивают какие life-hacks или best-practices я использую при работе с Git'ом и репозиториями проекта.


Эта заметка — попытка объяснить те базовые настройки и приёмы, которыми я пользуюсь каждый день. Рецепты не претендуют быть ноу-хау, но могут помочь с освоением ежедневной гигиены работы с репозиторием.


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

Интеграция в проект LVGL графической библиотеки для микроконтроллеров

Время на прочтение4 мин
Количество просмотров37K
LVGL — Light and Versatile Graphics Library также известная как LittleVGL.


Библиотека поддерживает большое количество микроконтроллеров, таких как STM32, ESP32 и другие. Мне пока удалось запустить полноценную демо программу на ESP32 и STM32f429 Discovery. Библиотека открытая, поддерживает большое количество графических элементов с Dark and Light темами. Распространяется под MIT license. Можно свободно использовать даже в коммерческих продуктах. Можно посмотреть интерактивное Online Demo без установки на устройство

Как я восстанавливал данные в неизвестном формате с магнитной ленты

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

Предыстория


Будучи любителем ретро железа, приобрёл я как-то у продавца из Великобритании ZX Spectrum+. В комплекте с самим компьютером мне достались несколько аудиокассет с играми (в оригинальной упаковке с инструкциями), а также программами, записанными на кассеты без особых обозначений. На удивление данные с кассет 40-летней давности хорошо читались и мне удалось загрузить почти все игры и программы с них.



Однако, на некоторых кассетах я обнаружил записи, сделанные явно не компьютером ZX Spectrum. Звучали они совершенно по-другому и, в отличие от записей с упомянутого компьютера, не начинались с короткого BASIC загрузчика, который обычно присутствует в записях всех программ и игр.

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

Очередная книга про разработку операционных систем

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

Приветствую!

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

Всё это время я также наблюдал на разных ресурсах посты о «разработке ОС», которые в основном сводились к выводу «hello world» в QEMU, и сетовал на то, что не нужно путать ОС и «программу, которая может работать на голом железе». ОС это совсем не про работу на железе, это, в первую очередь, про синхронизацию и все такое прочее.
Читать дальше →
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Челябинск, Челябинская обл., Россия
Дата рождения
Зарегистрирован
Активность