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

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

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

Как использовать Google Sheets в качестве базы данных

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

Привет, я Настя — младший разработчик в M2. М2 — это экосистема цифровых сервисов, которые помогают пользователям проводить сделки с недвижимостью удобно, быстро и безопасно. Мы с командой разрабатываем CMS, которая позволяет управлять контентом на сайте m2.ru

Расскажу о том, как мы используем Apps Script для парсинга данных из Google Sheets и зачем это нам. Если вам интересна только пошаговая инструкция с примерами кода, ее можно посмотреть здесь.

Читать далее
Всего голосов 9: ↑7 и ↓2+8
Комментарии6

Дэвид Харрис, автор «Цифровой схемотехники и архитектуры компьютера», ответил на вопросы про его следущую книгу и вообще

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

Встретился на ланч с Дэвидом Харрисом, автором (вместе с Сарой Харрис) популярного учебника «Цифровая Схемотехника и Архитектура Компьютера», который за последние 10 лет помог закрыть монументальную дыру в техническом образовании десятков вузов России и Украины. До этого учебника во многих вузах сразу после триггеров шло программирование микроконтроллеров, то есть раньше у многих студентов вообще не возникала база для проектирования современных чипов по маршруту RTL‑to‑GDSII, технологии, которая за последние 30 лет привела нас к смартфонам, быстрому интернету и ускорителям ИИ.

Учебник Дэвида активно используется на Школе Синтеза Цифровых Схем, которую поддерживают 24 российских и 1 белорусский университет. Регистрация на новый сезон Школы только что открылась.

Читать далее
Всего голосов 24: ↑21 и ↓3+22
Комментарии13

Qucs-S: руководство по видам моделирования, часть 2

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

Qucs-S является программой с открытым исходным кодом для моделирования электронных схем. Qucs-S кроссплатформенный (поддерживаются Linux и Windows) и написан на С++ с использованием набора библиотек Qt. О данной программе рассказывают мои предыдущие статьи. Для работы Qucs-S рекомендуется использовать также открытый движок моделирования Ngspice. Актуальным релизом Qucs-S на текущий момент является версия 24.3.2. Статья продолжает подробное рассмотрение видов моделирования в Qucs-S, начатое в первой части.

Читать далее
Всего голосов 9: ↑9 и ↓0+15
Комментарии0

Рецензия на книгу «Изучаем Git: пошаговое руководство с наглядными примерами»

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

Если и есть инструмент, который на 100% обязаны освоить все слушатели ИТ‑курсов и начинающие разработчики еще в начале карьеры — то это Git. Книга «Изучаем Git: пошаговое руководство с наглядными примерами» (Learning Git. A Hands‑On and Visual Guide to the Basics of Git) от издательства O'Reilly Media, в переводе от Alist (БХВ Петербург) — это руководство «с нуля» по самой популярной системой контроля версий. Изложены основы Git: установка, графический интерфейс и командная строка, локальные репозитории и коммиты, ветки и слияния.

Читать далее
Всего голосов 14: ↑12 и ↓2+16
Комментарии8

Квантовая теория поля для гуманитариев. Зоопарк частиц Стандартной модели

Уровень сложностиСредний
Время на прочтение22 мин
Количество просмотров18K

Зачем гуманитарию знать Стандартную модель квантовой теории поля? Затем, что это научная база, которая важнее, чем таблица умножения или периодическая таблица Менделеева. Она является самой успешной, проверенной и перепроверенной физической теорией, дающей предсказания с невероятной точностью. В таблице Стандартной модели всего 17 элементов, из которых для нашей жизни имеют значение не более десяти. Мы сами и всё, что нас окружает, состоит из трёх фермионов первого поколения – верхнего и нижнего кварков и электрона, а все физические процессы сводятся к четырём фундаментальным взаимодействиям, переносимым фотоном, глюонами и тяжёлыми калибровочными бозонами. Ну и конечно знаменитый бозон Хиггса – без него у нас бы не было массы. С непривычки названия и функции этих частиц запомнить трудно, но если постараться – задача вполне посильная без необходимости получать техническое образование. Наградой за ваш умственный труд будет исчерпывающее понимание глубинной сути вещей и стойкий иммунитет к разного рода псевдонаучным мифам.

Читать далее
Всего голосов 27: ↑24 и ↓3+30
Комментарии54

System Console. Доступ к регистрам ПЛИС из Quartus

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров933

Привет, Хабр! Меня зовут Роман Вернин, я разработчик систем на кристалле в компании Аквариус. Вместе с коллегами мы разрабатываем микросхемы ASIC. В этой статье я хотел бы поделиться опытом, как можно использовать отладочное средство ПЛИС от фирмы Intel для тестирования, настройки или исследования устройств и стендовых систем.

Читать далее
Всего голосов 10: ↑10 и ↓0+15
Комментарии5

Обходим замедление Youtube на Android TV без VPN

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров182K

Всем привет, сегодня речь пойдет про Android TV. Мне обход именно на телевизоре показался самым проблемным и сложным. Так как дома имеется несколько лишенных ютуба телевизоров, а еще больше ожидают настройки у друзей и знакомых - решил собрать все найденные способы обхода блокировки.

Читать далее
Всего голосов 48: ↑46 и ↓2+55
Комментарии77

Программирование на C в Linux на примере создания командной оболочки: часть 2

Уровень сложностиСредний
Время на прочтение55 мин
Количество просмотров6.7K

Я решил недавно улучшить свой навык владения C, путем написания проектов. Самая первая мысль, которая пришла мне на ум — это командный интерпретатор, командная оболочка, shell проще говоря. А также я расскажу о системе сборки make, и о том, как правильно писать и документировать C-код.

В первой части мы задали базовую структуру кода, разобрались с чтением вывода и созданием процессов. А в этой части нашей задачи будет дойти с альфа-стадии на бета-стадию — то есть реализовать прочий важный функционал, такой как: минимальная поддержка плагинов; автодополнение; подсветка синтаксиса; переменные окружения, новые встроенные утилиты.

Да-да, мы превратим наш велосипед в мопед! Я вынес из прошлой статьи итоги, и попытался решить все проблемы и замечания. Продолжаем погружение в пучины разработки под Linux!

Читать далее
Всего голосов 25: ↑24 и ↓1+33
Комментарии12

Make на мыло, redo сила

Время на прочтение12 мин
Количество просмотров8.5K
Приветствую! Хочу рассказать о главных, не всегда очевидных, недостатках системы сборки Make, делающих её часто не пригодной для использования, а также рассказать о прекрасной альтернативе и решении проблемы — гениальнейшей по своей простоте, системе redo. Задумка известнейшего DJB, криптография которого где только не применяется. Лично меня, redo настолько впечатлил life-changing простотой, гибкостью и куда лучшим выполнением задач сборки, что я практически во всех своих проектах им полностью заменил Make (там где не заменил — значит ещё руки не дошли), у которого я не смог найти ни одного преимущества или причины оставлять в живых.

Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии23

Дымовая Завеса в Eclipse IDE

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

Прошивки часто пишут в Eclipse.

В Eclipse есть такая возможность как серая дымка неиспользуемых сейчас кусков кода. Якобы то, что не используется в коде визуально становится серой зоной отчуждения.

Именно этот аргумент огромная fun база Eclipse плагинов и приводит в качестве главного за Eclipse плагины.

В этом же тексте я написал как активировать эту пресловутую опцию даже при сборке сторонними скриптами. Причем любыми.

Читать далее
Всего голосов 7: ↑3 и ↓4+3
Комментарии21

Дорогая, я уменьшил {fmt}: уменьшил размер до 14kB и избавился от рантайма C++

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров13K

Библиотека форматирования {fmt} известна своим небольшим влиянием на размер бинарников. Чаще всего её код в несколько раз меньше по сравнению с такими библиотеками, как IOStreams, Boost Format или, что иронично, tinyformat.

Давайте разберем, как можно уменьшить размер бинарников еще больше!

Читать далее
Всего голосов 40: ↑38 и ↓2+47
Комментарии24

Реализация событий через HTTP

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

Для некоторых задач, связанных с обновлением данных в реальном времени — например, новостные ленты, уведомления или поток чата, можно обойтись без сложных двусторонних протоколов, как WebSocket. Мы можем использовать простой механизм передачи данных от сервера к клиенту через HTTP, который часто оказывается удобнее и эффективнее в настройке для однонаправленного обмена данными.

Читать далее
Всего голосов 7: ↑5 и ↓2+4
Комментарии4

Кратко про библиотеку Range в C++

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

Привет, Хабр!

С выходом C++20 библиотека Range получила свое официальное место в языке, что ознаменовало некоторый важный шаг в развитии работы с контейнерами и итераторами. Это обновление ввело новый подход к манипуляциям с данными.

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

Читать далее
Всего голосов 9: ↑8 и ↓1+12
Комментарии5

Бесплатный домен с HTTPS для локальных приложений: универсальное руководство с примером на Flask

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

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

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

Читать далее
Всего голосов 8: ↑5 и ↓3+2
Комментарии9

Использование инерциальной навигационной системы (ИНС) с несколькими датчиками на примере задачи стабилизации высоты квадрокоптера

Время на прочтение8 мин
Количество просмотров86K
В данной статье я постараюсь рассказать о своем опыте создания и реализации алгоритма для обработки сигналов с нескольких стандартных датчиков, входящих в состав ИНС (в английской версии IMU), для решения задачи стабилизации высоты многороторного летательного аппарата (в моем случае — квадрокоптера). На хабре уже был ряд статей, описывающих, что это за игрушка и как её сделать самому. Как программисту по профессии, мне было интересно не только его собрать, но и поковыряться в «мозгах» и сделать что-то полезное для сообщества. В качестве «мозгов» я выбрал Arduino и замечательный проект MultiWii. Он полностью открытый, динамично развивается, но в нем пока есть «белые пятна». Например, неудовлетворительно работает стабилизация положения по высоте. И я решил разобраться, можно ли с имеющимся оборудованием улучшить эту часть системы.
Читать дальше →
Всего голосов 38: ↑37 и ↓1+36
Комментарии37

STM32. Процесс компиляции и сборки прошивки

Уровень сложностиПростой
Время на прочтение30 мин
Количество просмотров27K
Многие из начинающих разработчиков софта для микроконтроллеров реализуют свои проекты исключительно в средствах разработки, которые предоставляются производителем. Многое скрыто от пользователя и очень хорошо скрыто, из-за чего некоторые воспринимают эти процессы сродни настоящей магии. Я, в свою очередь, как человек в пытливым умом и природной любознательностью, решил попробовать собрать проект без использования IDE и различного рода автоматизаций.

Так родилась идея для этой статьи: не используя ничего, кроме текстового редактора и командной строки, собрать проект мигания светодиодом на отладочной плате STM32F0-Discovery. Поскольку я не до конца понимал, как происходит процесс компиляции и сборки проекта, мне пришлось восполнять пробелы в знаниях. Разобравшись с этим вопросом, я подумал — а почему бы не рассказать другим об этом?

Всем кому интересно — добро пожаловать под кат! 🙂

Читать дальше →
Всего голосов 107: ↑106 и ↓1+122
Комментарии67

Запуск DMA на К1986ВЕ92FI пошагово

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров5.6K

Здравствуйте уважаемые читатели. Больше двух лет назад Миландр, в связи с санкциями, попал в "блэк-лист" завода, производившего кристаллы разработанных микросхем. После этого поставки микросхем быстро сошли на нет, в том числе "народного" К1986ВЕ92QI в пластиковом корпусе. Больше года Миландр не подавал признаков жизни, однако работа кипела, кристалл 1986ВЕ9х был перепроектирован, год назад появились опытные образцы. Производство кристаллов осталось зарубежным (Микрон не умеет делать флеш), однако корпусировку гражданских кристаллов развернули в России. Поскольку, производственных мощностей для корпусирования в QFP у Миландра нет, кристаллы стали паковать в QFN, которые не требуют опрессовки кристалла пластмассой. А к лету 2024 Миландр начал серийные поставки микросхем. Итак, гражданский микроконтроллер теперь обозначается К1986ВЕ92FI, и его можно достать, а значит с ним снова можно работать.

Вопросы программирования микроконтроллеров 1986ВЕ92 многократно описаны, пути обхода ошибок давно изучены, как говорили знакомые инженеры ещё в 2017 - "нормальный арм, хоть и с особенностями". Однако, несмотря на описание периферии и особенностей работы с ней, есть одно почти белое пятно, на котором многие спотыкаются - контроллер DMA прямого доступа к памяти.

Разбираемся с контроллером ПДП
Всего голосов 27: ↑26 и ↓1+33
Комментарии8

Преобразователи Time-To-Digital (TDC): что это такое и как они реализованы в FPGA

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

На рисунке — первый в мире спутник квантовой связи «Мо-Цзы», который запустили из Китая в 2016 году, в нем летает TDC, реализованная в FPGA.

Объяснить своей девушке (или парню), что такое ADC и DAC, и в каких домашних приборах они используются, может каждый человек, называющий себя инженером. А вот что такое TDC, и почему у нас дома их нет, зачастую можно узнать только после свадьбы.

TDC — это time-to-digital converter. По-русски говоря: времяизмерительная система.

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

В этой хабрастатье приводится детальное описание простенькой времяизмерительной системы на FPGA Cyclone IV. Статья будет полезна не только для расширения кругозора, но и с методической точки зрения, поскольку реализация системы нетривиальная.
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии11

Как я решил по быстрому Can'абус попрограммировать

Уровень сложностиСредний
Время на прочтение2 мин
Количество просмотров4.7K

Частенько пользуюсь CAN-Hacker'ом. Ну и как ожидаемый результат, понадобилось проверить свою(и) теорию(и) в машине а не на столе, по быстренькому. По быстренькому не получилось, далее история.

В наличии имеется пакет кан-бриджей с известного Али-базара

Читать полностью
Всего голосов 9: ↑4 и ↓5+3
Комментарии8

Гарри Поттер и имя типа в компайлтайм

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров3K

Пару лет назад я написал статью про получение имен элементов enum в моих любимых плюсах без использования typeid, макросов и черной магии, а то и вообще в компайлтайм. Хотя нет, немного магии там все же было. Это был интересный опыт, но особого применения в проде я так и не нашел, хотя коллеги начали активно использовать эту возможность чтобы итерироваться по enum в поисках нужного элемента по его строковому представлению. Оно конечно задумывалось наоборот, но как говорится, пасту в тюбик обратно не запихнешь, пользуются и то радость. И тут в домашнем игровом движке мне понадобился похожий функционал получения имени структуры или класса в компайлтайм, можно конечно было сделать через typeid, но в релизной сборке rtti планируется отключать, так что этот вариант не подходит. А конвертировать имя структуры в строку все же хочется. При чем тут Гарри и для чего это все нужно в конце статьи.

Wingardium Leviofa
Всего голосов 12: ↑12 и ↓0+16
Комментарии12
1
23 ...

Информация

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