Библиотека генератора ассемблерного кода для микроконтроллеров AVR. Часть 1

Библиотека генератора ассемблерного кода для микроконтроллеров AVR Часть 1. Первое знакомство Добрый день, уважаемые хабаровчане. Хочу предложить Вашему вниманию очередной (из имеющегося великого множества) проект, для программирования популярных микроконтроллеров серии AVR. Можно было бы потратить много текста для объяснения зачем это понадобилось, но вместо этого просто посмотрим на примерах чем он отличается от других решений. […]

Как начать карьеру еще в вузе: рассказывают выпускники пяти профильных магистратур

На этой неделе в нашем блоге на Хабре вышла целая серия материалов о том, как проходит обучение и практика в магистратуре Университета ИТМО: Магистранты факультета ИТ и программирования делятся опытом Образовательный процесс и работа со светом в нашей магистратуре Учеба и практический опыт на факультете фотоники и оптоинформатики Фото Университета ИТМО Сегодня на очереди сразу […]

Статический анализ улучшит кодовую базу сложных C++ проектов

Постепенно и незаметно складывается ситуация, когда сложность серьёзных C++ проектов становится запредельной. К сожалению, теперь C++ программист не может полагаться только на свои силы. Во-первых, кода стало так много, что уже невозможна ситуация, когда в проекте есть хотя бы парочка программистов, которые знают проект целиком. Например, ядро Linux 1.0.0 содержало около 176 тысяч строк кода. […]

Что такое музыкальное программирование — кто и почему им занимается, устраивая настоящие live-сессии

Ранее мы говорили об инструменте OpenMusic. Он позволяет писать музыку, используя объектно-ориентированный подход. Сегодня речь пойдет о людях, которые создают композиции с помощью специализированных языков программирования. И зачастую делают это «в прямом эфире». Фото Pixino / PD Краткая история компьютерной музыки Первым компьютером, который использовали для создания музыки, был CSIRAC. Его спроектировала группа австралийских инженеров […]

Со склада в Дагестане — в программисты: как я стал iOS-разработчиком с нуля

История о том, как простой парень из депрессивного региона России пытается заявить о себе — и о том, что стереотипы говно. Привет. Меня зовут Даниял Деветов, я iOS-разработчик в компании FINCH. Пока я еще junior, но крепкий, я бы даже сказал «почти middle». Родом я из города Махачкала, столицы солнечного и очень любимого мной Дагестана. […]

Асинхронное программирование в JavaScript (Callback, Promise, RxJs )

Всем привет. На связи Омельницкий Сергей. Не так давно я вел стрим по реактивному программированию, где рассказывал про асинхронность в JavaScript. Сегодня я бы хотел законспектировать этот материал. Но перед тем как начать основной материал нам нужно сделать вводную. Итак, давайте начнем с определений: что такое стек и очередь? Стек — это коллекция, элементы которой […]

Первый прототип: Unikernels как этап в эволюции Linux

В начале июля группа инженеров из Red Hat и Бостонского университета выпустила whitepaper, в котором предложила сменить монолитное ядро Linux на архитектуру unikernels. Мы решили разобраться в материале и обсудить реакцию ИТ-комьюнити на это предложение. Фото — Eamonn Maguire — Unsplash Unikernels как альтернатива Известно, что Linux использует монолитное ядро. Оно управляет процессами, сетевыми функциями, […]

Шифрование конфигурационных файлов

Предыстория Мне поступила задача по настройке CI. Было принято решение использовать трансформацию конфигурационных файлов и конфиденциальные данные хранить в зашифрованном виде. Изучив документацию по шифрованию, вот что было сделано. Key Container В каждой ОС Windows есть наборы сгенерированных ключей. Ключ генерируется либо на учетную запись, либо на машину. Ключи сгенерированные на машину можно посмотреть по […]

Заводим Spring StateMachine

Вступление В проектах я видел три примера, так или иначе связаные с теорией конечных автоматов Пример 1. Занимательный говнокод код. Занимает уйму времени, на то чтоб понять что происходит. Характерной особенностью воплощения обозначенной теории в коде является довольно лютая свалка, которая местами дико напоминает процедурный код. О том что этот вариант кода лучше не трогать […]

Выбираем лучший backend-язык для контейнеризации в Docker

Привет, Хабр! Я решил выяснить, на каком языке программирования можно написать веб-приложение, чтобы при его контейнеризации Docker-образ получился легковесным, а сборка образа была быстрой. Правила таковы: Для веб-приложения выбирается наиболее популярный (или один из наиболее ходовых) веб-фреймворк. Приложение, которое создается, должно выполнять следующее действие: присылать сообщение «Hello, world!» при обращении по единственному маршруту — «/». […]