с++.

C++101

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

продолжить чтение

В С неопределённое поведение повсюду

Если бы Кардинал Ришелье был программистом, он бы сказал: «Дайте мне шесть строк кода, написанных рукой самого профессионального C-программиста в мире, и я найду в них лазейку для вызова неопределённого поведения.

продолжить чтение

Про 10x программистов

продолжить чтение

Браслет для Бони

Возможно, на мой предвзятый взгляд, нынче автоматным программированием (АП) называют любое программирование, в которое вводят состояния (а параллельным – где используют потоки). Но не все, что с колесами – машина, а с крыльями – самолет. И далеко не всегда то, что «выглядит» как автомат, «плавает» как автомат и «крякает» как автомат им является. Это ясно, если руководствоваться математическим определением конечного автомата (КА). Только соответствие этому позволяет  считать программирование автоматным. Подробнее же об АП рассказано в .

продолжить чтение

Нескучное программирование. Обобщения (ч.1)

продолжить чтение

Робот с видеонаблюдением и отслеживанием объекта

Отслеживание маркера роботомВведениеДанный проект, является логическим продолжением развития темы "Солнечный трекер на Arduino".

продолжить чтение

О радости программирования и невесомости достижений

продолжить чтение

Автодифференцирование на C++: обратное распространение через лямбды и std::function

Привет, Хабр! Меня зовут Кирилл Колодяжный, я разрабатываю системы хранения данных в YADRO. Это третья, заключительная часть моего цикла о паттернах C++, которые я применяю для решения задач машинного обучения, а вы можете использовать и в другой работе. В этой статье поговорим, как построить вычислительные графы и реализовать обратное распространение ошибки без сложных иерархий классов, с помощью лямбда-функций и стандартной библиотеки.

продолжить чтение

Используем паттерны C++ в ML: пишем тензор с factory, выделяем память и управляем динамическими типами

Привет, Хабр! Я Кирилл Колодяжный, разработчик систем хранения данных в YADRO, ML-энтузиаст и автор книги "Hands-on Machine Learning with C++". В своих материалах я развеиваю миф о том, что машинное обучение — это сплошной Python. На самом деле под капотом моделей часто работает C++.Этой теме я посвятил цикл статей: хочу рассказать, как привычные для «плюсовиков» инструменты используют для реализации ядра платформы машинного обучения. В первой части поговорим о стандартных библиотеках, идиомах программирования и алгоритмах управления памятью.

продолжить чтение

Путь к мечте продолжается: как мне всё-таки сделали операцию и почему я не сдаюсь — ни в лечении, ни в IT

Два года российские нейрохирурги отказывали мне в операции, запугивая последствиями. В итоге поехал в Казахстан — сделали две паллидотомии, которые «нельзя было делать». Речь на месте, здоровье улучшается. Параллельно учу C++ и ищу работу. История о том, как не сдаваться, когда система говорит «нет».

продолжить чтение

123