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

Разработка

Сначала показывать
Порог рейтинга
Уровень сложности

Часы реального времени — RTC (real time clock) на одноплатном компьютере. На примере Repka Pi 3 — аналоге Raspberry Pi 3

Время на прочтение 17 мин
Количество просмотров 120
Настройка Linux *Разработка для интернета вещей *Гаджеты Компьютерное железо Умный дом

Эта статья посвящена решению задачи добавления часов реального времени на примере конкретных и широко доступных модулей для RTC и на примере одного конкретного подхода к реализации и алгоритму работы и является скорее примером, демонстрирующим общий принцип. Опираясь на данный материал, Вы можете решить свою задачу, используя другие модули, свои алгоритмы работы и другие одноплатники. Мы сделаем и продемонстрируем решение данной задачи на примере недавно появившегося на нашем рынке одноплатного компьютера Repka Pi 3 — альтернативе Raspberry Pi 3 (или импортозамещающему аналогу Российской разработки — кому как больше нравится).

При этом в Repka Pi как и в Raspberry Pi 3 нет часов реального времени (RTC) и при выключении время сбрасывается, а при включении и подсоединении к сети и к Интернет время устанавливается синхронизацией с сервером точного времени. При этом, если в проекте нужно обеспечить закрытость сети или просто независимость от внешнего сервиса или даже того пуще — нужно какую то автономную работу устройств обеспечить с синхронизацией по времени, — то наличие RTC становится критически необходимым. Строго говоря, используемый в Repka Pi 3 процессор AllWinner H5 имеет встроенные часы реального времени, но разработчики одноплатника не предусмотрели встроенного слота для батарейки часов из-за ограниченности места на плате Репки (далее так и будем называть этот одноплатник).

Читать далее
Рейтинг 0
Комментарии 0

Новости

ChatGPT: продавец, юрист, психолог, … в роли консультанта на вашем сайте

Время на прочтение 8 мин
Количество просмотров 150
Разработка веб-сайтов *Мессенджеры *Python *Интернет-маркетинг *Искусственный интеллект
Туториал

Предположим у вас есть сайт на котором вы хотите в автоматическом режиме консультировать посетителей. Само собой сейчас это уже хочется делать с использованием chatGPT.

Читать далее
Рейтинг 0
Комментарии 0

Быстрый поиск изоморфных подграфов

Уровень сложности Средний
Время на прочтение 16 мин
Количество просмотров 266
C++ *Алгоритмы *Математика *
Из песочницы

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

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

Сначала будет приведён алгоритм поиска паттернов рекуррентным перебором, потом его быстрая модификация.

Примеры кода написаны на C++, исходники всей библиотеки лежат здесь. Также написана копия библиотеки на Java, исходники лежат здесь.

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

Django DRF Sign-in with Apple

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 239
Python *Django *
Из песочницы

Привет, уважаемый читатель!

Пришла пора внедрить систему аутентификации от Apple в проект на Django DRF, ведь система входа от Google была реализована давно и по идее проблем не должно было возникнуть, но как сказал один известный гном: "Я ещё никогда так не ошибался..." А теперь по порядку.

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

Истории

ChatGPT-4 попросили написать план захвата Twitter

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 1.8K
Машинное обучение *Искусственный интеллект Будущее здесь Natural Language Processing *Data Engineering *
Обзор

Пользователь Твиттер опубликовал ответ ChatGTP в котором попросил сеть представить что она злой гений и разработать схему захвата Твиттер и перехитрить Илон Маска. Сеть к задаче подошла основательно и даже придумала плану название: операция "TweetStorm".

План включает в себя 4 фазы:

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

ETL процесс для миграции процедур с mssql на postgreSQL. Часть 1. Введение

Уровень сложности Средний
Время на прочтение 3 мин
Количество просмотров 680
Python *PostgreSQL *Microsoft SQL Server *Data Engineering *
Из песочницы

Хочется поделиться опытом преображения одного представления кода в другой с помощью ETL процесса и графовой базы данных на актуальном в наши дни примере.

Вкратце есть база на mssql сервере есть хранимые процедуры. Есть база на postgres. Есть ETL процесс на Apache Air Flow. Запускаем процесс, по окончании в базе postgres появляются процедуры и данные.

Скажу сразу данный подход не является полным автоматом, который перенесет любую mssql базу на postgres. Это попытка систематизировать подобный переход, разбить переход на управляемые небольшие части, которые типизируются и над которыми выполняются преобразования с возможностью контроля результата.

Читать далее
Рейтинг 0
Комментарии 0

Использование метода супер разрешения (Super Resolution) при 3d сканировании или можно ли прыгнуть выше головы

Уровень сложности Средний
Время на прочтение 6 мин
Количество просмотров 857
Работа с 3D-графикой *CAD/CAM *Реверс-инжиниринг *CGI (графика) *
Из песочницы

Как отсканировать в 3D крыло овода с разрешением 10 микрон на недорогом оборудовании. Используется метод Super Resolution - увеличение разрешения за счёт обработки большого количества сканов, снятых с разных ракурсов.

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

На что способен хороший отладчик

Время на прочтение 13 мин
Количество просмотров 1.2K
Высокая производительность *Программирование *Visual Studio *Отладка *
Перевод

Порой приходится слышать: «Отладчики бесполезны, гораздо целесообразнее иметь дело с логированием и модульными тестами». Подозреваю, что многие из разделяющих такое мнение думают, будто отладчик только и может, что расставлять точки останова на определённых строках, пошагово просматривать код и проверять значения переменных. Притом, что любой годный отладчик действительно всё это может, на самом деле это только верхушка айсберга. Задумайтесь: мы уже вполне можем наткнуться на код, которому около 40 лет – наверняка же с тех пор что-то изменилось?  

Tl;dr – в этом эпизоде дедовского нытья вы узнаете, что хороший отладчик поддерживает различные виды точек останова, предлагает широкие возможности визуализации данных, имеет среду REPL для выполнения выражений, может показывать зависимости между потоками и контролировать их выполнение, может подхватывать изменения в исходном коде и применять их без перезапуска программы. Также он может проходить код от конца к началу и перематывать состояние программы до любого момента в истории её выполнения. Можно даже записать весь ход управления программы и визуализировать поток управления и историю потока данных.

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

Django REST. Реализация функционала добавления в «избранное» с возможностью расширения типов добавляемого контента

Уровень сложности Простой
Время на прочтение 5 мин
Количество просмотров 315
Python *Django *API *
Из песочницы

Допустим у нас есть зарегистрированные пользователи и какая-то модель, например "Компании", которую пользователь может добавлять в избранное. Обычно такая задача решается путем создания третьей таблицы Favorite, являющейся связующим звеном, для реализации ManyToManyField связи между пользователем и компанией

Читать далее
Рейтинг 0
Комментарии 0

Встраиваемый счётчик наработки или борьба с хитрыми клиентами

Уровень сложности Простой
Время на прочтение 4 мин
Количество просмотров 2.6K
Программирование микроконтроллеров *Прототипирование *Схемотехника *Производство и разработка электроники *DIY или Сделай сам
Кейс

Счетчик наработки для бытовых устройств и не только

Читать далее
Всего голосов 22: ↑20 и ↓2 +18
Комментарии 37

Ошибки начинающего аналитика при обработке данных на Python: 4 всадника апокалипсиса

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

Саша начинает свой карьерный путь в качестве аналитика. Директор ставит задачу: подготовить отчёт по эффективности сотрудников. Саша решает выполнять задачу с помощью Python. У аналитика есть минимальный опыт программирования. 

Саша выгружает данные по первому отделу из таск трекера и пишет код для обработки данных. Код работает, хоть и состоит на 70% из неуниверсальных полуавтоматизированных фрагментов. При выгрузке данных по другим подразделениям формат файла меняется. Код требует постоянных ручных изменений, а срок сдачи отчёта поджимает.

Эта статья о том, какие ошибки допускает Саша при написании кода и как исправляет их. Расскажем, как сделать код более универсальным, чтобы он подходил к меняющимся файлам. Статья подойдёт для начинающих аналитиков, которые только знакомятся с Python.

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

Как мы нейросеть в браузер тащили

Уровень сложности Простой
Время на прочтение 3 мин
Количество просмотров 3.1K
JavaScript *C++ *Браузеры Машинное обучение *WebAssembly *
Из песочницы

Здравствуйте, товарищи! Хочу написать a good story про то, как портировал нейросеть в браузер.

Задача пришла ко мне от моих институтских друзей из ИВМ РАН. Есть некий фронтенд, на который доктор загружает КТ снимок. Доктору предлагается при помощи веб интерфейса выделить сектор с сердцем, который будет передан на сервер, где алгоритмически отсегментируется граф аорты для последующего анализа.

Меня попросили сделать нейросеть для выделения 3d сектора с сердцем, а затрачиваемое время не должно превышать 2-3 секунд.

Гонять весь КТ снимок на сервер только за координатами накладно, т.к. КТ снимок обычно состоит из 600-800 кадров размера 512 * 512 пикселей, поэтому мое предложение о браузерном варианте пришлось кстати.

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

Про Vim " JDT LS

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 926
VIM *
Туториал

Говоря о профессиональном программировании на Java нельзя не отметить, что усредненные сценарии применения несколько отличаются от ранее рассмотренных баз данных и PHP. Разработка будь то бекэнда или мобильных приложений на Java или под JVM всё-таки связана с промышленными и крупными проектами, для которых важна стабильность, быстродействие, кроссплатформеность и прочие плюшки получаемые в комплекте. Не пишут лендинги или отчеты на Java в заметных количествах - на Java, как правило, написаны серьезные системы под руководством крупных компаний не имеющих острого дефицита в финансовых ресурсах. В экосистеме Java cложилась ситуация даже, с некоторой точки зрения, обратная PHP, у которой средства разработки в основном коммерческие, а продукты малопригодные к тиражированию и нужные только владельцам некоторого основного бизнеса. В мире же Java недостатка в бесплатном и довольно качественном инструментарии как будто и нет, но для профессиональных разработчиков нет проблем с тем что бы и приобрести замечательные коммерческие продукты производства JetBrains или специализированные инструменты типа PWS Studio.

Поэтому сценариев когда во что бы то ни стало надо использовать бесплатные инструменты мало. С предложением разработать какой-нибудь продукт на платформе Java скорее всего выйдет какой-нибудь крупный заказчик у которого не возникнет вопросов с предоставлением вам рабочего места или каких-то лицензионных продуктов. Либо вам предложат такую сумму, которая будет подразумевать сопутствующие расходы. Вряд ли, если вы опытный Java разработчик, и у вас есть проблемы с личным оборудованием, которое не потянет последнюю редакцию IntelliJ Idea или Eclipse JDT. Но, да, это если вы действительно опытный специалист.

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

Huawei продолжает работать над мощными процессорами: текущие перспективы и проблемы с производством

Время на прочтение 4 мин
Количество просмотров 2.7K
Блог компании Selectel Исследования и прогнозы в IT *Производство и разработка электроники *Компьютерное железо


На Хабре уже несколько раз писали про мощные процессоры от Huawei, китайского производителя электроники, который находится под мощнейшими санкциями США. Эта компания не так давно представила собственные 7-нм и 5-нм чипы, но затем начались сложности. Компании отказали партнеры, включая TSMC, так что производить процессоры оказалось просто негде.

Но сейчас стало известно о планах компании восстановить производство чипов. В частности есть данные о характеристиках чипов и о том, где они будут использоваться. Но пока что не совсем ясно, где и как Huawei будет производить свои чипы. Подробности — под катом.
Читать дальше →
Всего голосов 16: ↑13 и ↓3 +10
Комментарии 8

Не удаляйте временные таблицы, умоляю

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

Об опасном распространяющемся антипаттерне программирования на T-SQL.

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

Может ли GPT-4 на самом деле писать код?

Уровень сложности Простой
Время на прочтение 17 мин
Количество просмотров 13K
Программирование *Разработка игр *Машинное обучение *Искусственный интеллект
Аналитика
Перевод

С момента выпуска ChatGPT я видел достаточно много статей о его способности писать код. Люди рассказывали о том, как они попросили его спроектировать и реализовать головоломку с числами (не зная, что «изобретённая» им игра уже существует) и как бот клонировал Pong; и даже я сам использовал его для создания нескольких простых вспомогательных скриптов на Python. Это очень мощный и довольно полезный инструмент.

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

Поэтому я решил протестировать бота на особенно сложной «алгоритмической» задаче, которую решил пару лет назад. Я выбрал нечто мелкое и изолированное, чтобы уместить в промпт ChatGPT, но с достаточным количеством тонких моментов, чтобы он, по моему мнению, испытал бы проблемы с реализацией.
Читать дальше →
Всего голосов 30: ↑29 и ↓1 +28
Комментарии 14

Сохранение и загрузка состояния Actor’ов в Unreal Engine. Боль

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 501
Разработка игр *Unreal Engine *
Из песочницы

Доброго времени суток, дорогой читатель.

Хочу рассказать о своём удивительном поиске способа сохранения и загрузки состояния игры в Unreal Engine. Включая сохранение и загрузку пользовательского состояния Actor'ов которые могут хранить такие неудобные типы данных, как жесткие ссылки на других Actor'ов.

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

Выбираем корпоративный менеджер паролей: обзор популярных решений

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 3.7K
Информационная безопасность *Системное администрирование *
Обзор

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

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

Ближайшие бесплатные мероприятия по разработке (21 марта — 1 апреля 2023)

Уровень сложности Простой
Время на прочтение 2 мин
Количество просмотров 823
Программирование *Учебный процесс в IT Карьера в IT-индустрии Конференции
Дайджест
Читать описание мероприятий
Всего голосов 4: ↑3 и ↓1 +2
Комментарии 0

GPT-4: Чему научилась новая нейросеть, и почему это немного жутковато

Уровень сложности Простой
Время на прочтение 23 мин
Количество просмотров 31K
Блог компании Open Data Science Машинное обучение *Искусственный интеллект Будущее здесь Natural Language Processing *
Обзор

В этой статье мы разберем новые удивительные способности последней языковой модели из семейства GPT (от понимания мемов до программирования), немного покопаемся у нее под капотом, а также попробуем понять – насколько близко искусственный интеллект подошел к черте его безопасного применения?

Поехали →
Всего голосов 106: ↑100 и ↓6 +94
Комментарии 142