В общих чертах про разработку электроники, изготовление пластикового корпуса, поиск исполнителей и примерные цены на серийный выпуск.
Engineer
Мой сервер бэкапов
Дошли наконец-то руки сделать персональный сервер бэкапов, который будет стоять не у меня дома. С этой мыслью я уже несколько лет хожу, делал несколько подходов, но вот наконец-то звёзды сошлись — у меня и железка под него образовалась, и дисков в достаточном количестве, и ОС наконец-то более-менее подобрал.
В качестве железа выбрал старенький HP Microserver Gen7. Продавать большого смысла не видел, куда-то в продакшн ставить тоже — он почти на любой чих под 100% загружается, если какие-то сервисы вешать или просто в несколько потоков файлы по гигабитной сети копировать. А вот с простым хранением файлов он ещё справится.
Flutter Web. Часть 1
Как работает Flutter Web, и есть ли особенности взаимодействия с платформой? Разбираемся с этим в серии статей. Эта — первая.
Взаимодействие с MOEX ISS через Python
В этой статье я хочу дать поверхностное представление о том, как работает взаимодействие с MOEX ISS на Python requests. Да, сегодня уже существуют готовые решения для работы с MOEX, например aiomoex. Но как по мне, лучше всегда сначала что‑то захардкодить и понять, как это работает под капотом. Если вы только знакомитесь с MOEX ISS или начинаете заниматься анализом временных рядов, думаю, вам эта статья будет полезна. Если же вы более продвинутый специалист, то вряд ли найдете здесь что‑то новое.
Знакомимся с Flutter GPU
Привет, Хабр! Меня зовут Станислав Чернышев, я автор книги «Основы Dart», телеграм-канала MADTeacher и доцент кафедры прикладной информатики в Санкт-Петербургском государственном университете аэрокосмического приборостроения.
Вчера на меня напала жуткая прокрастинация к одной задаче по работе. А именно – написать кучу тестов для рабочей программы дисциплины, которая тупо значится как альтернативная и, соответственно, никогда не преподается, но, т.к. пришли новые требования от мониторинговых организаций – все равно придется их составлять >_<...
В результате возложения детородного органа на написание тестов, сделал перевод статьи посвященной знакомству с Flutter GPU с Medium. Его лучше всего отнести к разряду вольных, т.е. он не дословный и отбрасывает некоторый авторский текст, сокращая его в тех местах, где это не критично для смысла. А последующее редактирование добавило статье щепотку забавных реплик ;)
Как работают изоляты в Dart?
При разработке Dart изначально была заложена идея полной независимости динамической памяти (objectstore / heap), снимка кода и event loop между изолятами. Одним из сценариев использования такой изоляции является разделение сервисного процесса виртуальной машины (vm-service, используется в том числе в DevTools) и основного кода, но также API для изолятов позволяет создавать собственные независимые процессы для выполнения кода с автономной памятью. Но как на самом деле работают изоляты сейчас и почему порты на самом деле существуют в модели «плоского мира», попробуем разобраться в этой статье.
Различные вычисления, многопоточность, асинхронность и мультипроцессность в Python
Всем привет! Меня зовут Дмитрий Первушин, я лидер Python-компетенций трайба ИСУ в Сбере.
Эта статья рассчитана на людей, которые уже знакомы с Python, хотя бы на уровне junior+. Я объясню, какие есть отличия и особенности в многопоточности, асинхронности и мультипроцессорности в Python, где и когда они используются. Как говорится в пословице: «Всё познаётся в сравнении», именно в таком стиле я подготовил примеры. Кроме этого, буду специально делать ошибки и рассматривать неправильные подходы, чтобы можно было сразу разобраться, убедиться и запомнить, почему так делать нельзя и какой другой подход в этом случае нужно использовать.
Давайте сделаем крупное приложение на Flask (язык Python)
На Хабре я часто вижу статьи о реализации тех или иных фич на Python-фреймворках. Я объединил все эти фичи в реальный проект с открытым исходным кодом, чтобы у вас сложилась целостная картина. Мы с вами создадим UX/UI на Figma, напишем фронтенд на HTML, CSS, SASS, Bootstrap и JavaScript, создадим ER-диаграмму в MySQL Workbench, напишем бекэнд на Flask, создадим регистрацию через социальные сети OAuth 2.0 в один клик, используем брокер сообщений и асинхронную очередь Celery для отправки писем на электронную почту, сделаем WYSIWYG-редактор, реализуем полнотекстовый поиск Elasticsearch, закешируем Redis, покроем тестами pytest и запустим в Docker-контейнерах, поговорим о многопроцессности для WSGI-шлюза Gunicorn.
Пишем собственный макрос на Dart 3.5: глубокий разбор
Я потратил месяц фул‑тайма, чтобы поиграть и разобраться с макросами. И вот всё, что вам нужно, чтобы быстро стартовать.
В первой части мы установили бета‑версию Dart для экспериментов с макросами, испытали макрос @JsonCodable
, который команда Dart выпустила для демонстрации технологии, и написали свой hello‑world макрос.
В этой второй части я разберу свой макрос, который создаёт парсер параметров командной строки, и на его примере расскажу всё, что узнал про написание и тестирование макросов.
Потребуются знания из первой статьи.
Осторожно: Макросы в Dart это пока эксперимент, и много всего сломается, пока они станут стабильными. Просто мне было слишком интересно.
Создаём приложение на gtk
Пишем приложение на GTK+ используя C++ и GTKMM библиотеку
Эпиграф
Однажды попросила меня жена написать ей простенькую программку, которая сможет вычислять площади фигур, периметры, и другие параметры при наличии достаточных данных. Например, нужна площадь треугольника, указаны его стороны. Вводим стороны нажимаем кнопочку и получаем площадь. Или указана только сторона и два угла. В общем любые данные, достаточные для того чтобы вычислить остальное.
Стоит отметить, что я являюсь последние лет 5 только веб-разработчиком, в основном PHP, хотя конечно иногда что-то нужно сделать и на ruby и на perl. В общем язык для меня особо не проблема, главное понять смысл процессов в компьютере, а дальше хоть Assembler (когда-то даже занимался дизасемблированием и небольшим патчингом приложений под Windows). Но все-таки когда писал десктопные приложения уже и не помню. Но тут решил написать именно десктопное, чтобы жене было удобно им пользоваться при отсутствии интернета и не нужно было на ее ноутбук ставить вебсервер с PHP. Кроме того уже давно хотел попробовать себя в использовании языка C++. Ну что ж. У жены стоит на ноутбуке Linux Ubuntu. Графическая система — Unity, основанная на Gnome3. А там где Gnome, там GTK+.
Вот так и было решено написать десктопное приложение под Linux используя Gtk+. Интересно? Добро пожаловать под кат!
Макросы на Dart: первые ощущения от использования и лайфхаки на будущее
Макросистема Dart — это новая важная языковая функция. Она добавляет поддержку статического метапрограммирования в язык Dart, но в настоящее время находится в разработке.
Макрос Dart — это определяемый пользователем фрагмент кода, который принимает другой код в качестве параметров и работает с ним в режиме реального времени для создания, изменения или добавления кода.
В отличие от генерации кода с помощью сторонних пакетов (например, build_runner) макросы полностью интегрированы в язык Dart и автоматически работают в фоновом режиме. Это делает макросы более эффективными, чем использование вспомогательного инструмента:
Проектная, конструкторская или технологическая документация. Основные системы стандартов
Правовая основа стандартизации в России заложена в ст. 71 Конституции Российской Федерации — «В ведении Российской Федерации находятся: … р) метрологическая служба, стандарты, эталоны, метрическая система и исчисление времени; геодезия и картография; наименования географических объектов; метеорологическая служба; официальный статистический и бухгалтерский учет; …»
Дальнейшее развитие законодательства представлено двумя основными федеральными законами, прямо или косвенно лежащими в основе любого стандарта:
— Федеральный закон «О стандартизации в Российской Федерации» от 29.06.2015 N 162-ФЗ;
— Федеральный закон «О техническом регулировании» от 27.12.2002 N 184-ФЗ.
ИТ с пеленок. 6 игр, которые познакомят детей с программированием. Часть 1
Если ты влюблен в программирование, перетащить своего ребенка «на эту сторону» тоже однажды захочется. Годовасику про JSON рассказывать, конечно, рано (хотя за колыбельную прокатит), а вот с детьми 4+ уже можно прикоснуться к основам. Помогут в этом специальные игры для детей — 6 из них собрали в этом посте. Некоторые подойдут для дошкольников, другие — для детей постарше.
Создатели пишут, что при помощи таких игр можно прокачать алгоритмическое мышление, последовательности, циклы, ветвление и другие суперсилы программиста. Так что забирайте пост в закладки и по традиции рассказывайте в комментах, во что играют ваши дети и как результат.
Что нового в мире обхода блокировок Интернета в середине 2024
Представляю вашему вниманию короткий обзор что же произошло в России и в мире в области цензуры интернета и того, как этому противостоят энтузиасты. На всякий случай напоминаю, что статья «Надежный обход блокировок в 2024: протоколы, клиенты и настройка сервера от простого к сложному» заблокирована на Хабре для пользователей из РФ, но по‑прежнему без проблем открывается через прокси/VPN с иностранных адресов. Ну а мы сейчас разберем, что же изменилось с тех пор.
Сегодня в программе: Замедление YouTube — проблемы с Google Cache или намеренное вредительство? Можно ли заблокировать Shadowsocks и как РКН смог это сделать? Новые транспорты в XRay: HTTPUpgrade и SplitTunnel. Новости из мира Tor, и многое другое.
Ускоряем код на Питоне с помощью расширений на Cи
Питон — простой, но мощный язык, который заслуженно стал одним из самых популярных. Тем не менее, иногда ему не хватает скорости статически типизированных языков с предварительной компиляцией, таких как Cи и Джава.
Если у вас есть задача выполнить трудоемкие вычисления, если нужно оптимизировать «подтормаживающее» приложение на Питоне без переписывания его на другом языке или если вы просто обожаете оптимизацию и хотите, чтобы код работал как можно быстрее, — тогда с большой вероятностью вы полюбите расширения на Си.
Расширения на Си — отличное дополнение в арсенале разработчика, будь вы фанат производительности и эффективности или любитель смешивать различные технологии и экспериментировать с чем-то новым: вы не только получаете почти «бесплатный» скачок производительности, но и расширяете функциональные возможности Питона.
Использование python-docx-template для динамического создания закладок и ссылок на них в документах Word
Я использую модуль python-docx-template для генерации файлов docx по шаблону.
Подробнее о модуле можно почитать здесь.
Модуль содержит функционал для вставки в документ внешних ссылок, но когда мне понадобилось создавать по шаблону внутренние ссылки (на конкретное место в документе), такого функционала не нашлось, поиск в сети тоже ничего не дал.
Здесь я предлагаю свой способ вставки закладок (bookmarks) и ссылок (hyperlinks) на них при помощи python-docx-template.
Настройка Git сервера с нуля
Любой начинающий DevOps начинает своё знакомство с Git. Этот инструмент стал неотъемлемой частью рабочего процесса разработчиков по всему миру. Во многих курсах и руководствах по DevOps описывается настройка серверов через популярные платформы, такие как GitLab, а иногда и Gitea. Однако мне стало интересно попробовать другой путь — использовать встроенный в Git инструмент GitWeb.
Автоматизируем создание отчетов в Word с данными из Excel на Python
До смешного простой код, который может сэкономить вам кучу времени в будущем. И как фанат автоматизации, который старается избегать любой однообразной и рутинной работы, я от таких решений просто в восторге.
Пишем собственный макрос на Dart 3.5 вместо старого генератора кода
В Dart 3.5 большое новшество: макросы. Это как старая генерация кода, но прямо в памяти, без временных файлов, плюс ещё много преимуществ.
В этой статье разбираем пилотный макрос JsonCodable, который команда Dart выпустила, чтобы мы разобрались в новой технологии. И пишем собственный простейший макрос.
Information
- Rating
- Does not participate
- Registered
- Activity