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

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

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

Доступная система видеонаблюдения с охраной на дачу за 60 минут

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

Речь пойдет о сборке, настройке и запуске охранной системы с датчиками, камерой, хранением видеозаписей на удаленном домашнем NAS, встроенным UPS, web-интерфейсом и оповещением через Telegram.

Чтобы быть предельно кратким, оформил статью в стилистике hackster.io. Информация рассчитана на читателей с опытом работы с одноплатным компьютером Raspberry и пониманием принципов работы VPN.

Читать далее
Всего голосов 102: ↑99 и ↓3+122
Комментарии163

Плагины для Visual Studio Code, актуальные в 2023 году

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

Привет, Хабр! Сегодня представляем подборку плагинов для Visual Studio Code, которые могут упростить работу. Представленные инструменты позволяют увеличить продуктивность работы, вести контроль версий, работать с отладкой и т. п. Разные плагины для разных задач. Конечно, хороших плагинов гораздо больше, чем может уместиться в рамках одной статьи, поэтому, если у вас есть собственные фавориты, давайте обсудим их в комментариях.

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

Собственная копия YouTube

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


Мы уже обсуждали, как удобнее всего скачивать видео с YouTube для дальнейшего просмотра и хранения. Но если коллекция файлов становится слишком большой, то нужно их как-то организовать: по темам или тегам, по каналам, категориям, чтобы быстро найти нужный видеоролик. И желательно настроить сервер так, чтобы раздавать это видео по локальной сети или через интернет.

В итоге получается, что мы делаем нечто вроде маленькой копии YouTube, только на своём сервере. В определённом смысле это архивная копия на случай удаления видеоконтента из-за цензуры YouTube. Или на случай, если серверы YouTube станут недоступны с территории РФ из-за какого-то «технического сбоя».
Читать дальше →
Всего голосов 79: ↑78 и ↓1+102
Комментарии74

Ортографическая проекция в фотографии и прочие интересные фокусы с объективами

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

С тем как работает фотоаппарат мы знакомимся еще со школьной программы. Однако привычное нам из школьного курса сведение объектива к "тонкой линзе" на самом деле не отвечает на массу практических вопросов. Например как удается создавать объективы с ортографической проекцией применяемые в системах технического зрения?

Да-да, такие тоже бывают не только в компьютерной графике, но и в фотографии: попробуйте-ка это объяснить оперируя исключительно в терминах "тонкой линзы". Размер изображения предмета в таких системах (почти) не зависит от того на каком расстоянии от объектива они находятся и это весьма удобно для измерения размеров предмета. В этой статье мы поговорим о том как этого удается добиться, как работает автофокус и пленоптические камеры и о многих других интересных вещах

Так как же работает объектив?
Всего голосов 132: ↑131 и ↓1+160
Комментарии38

Разработка собственного плагина для nx (executor и generator)

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

В продолжении к предыдущей статьи, погружение в nx.

Практический урок по написанию собственного плагина, на примере react приложения.

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

Импортозамещаем numpy, pandas, scipy и sklearn

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

Речь пойдет о библиотеках-аналогах numpy, pandas, scipy и sklearn на C++ (np, pd, scipy, sklearn соответственно).

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

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

Базы Данных + Telegram Бот на C#. SKitLs Framework v.2

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

Не так давно опубликовал статью об экспресс-создании бота для Telegram на фреймворке SKitLs.Bots.Telegram. С тех пор внутренний состав фреймворка солидно изменился, вместе с тем были выпущены предварительные версии *.BotProcesses и *.DataBases и вторая версия ядра фреймворка.

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

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

Свой VPN с поддержкой IPv6 на базе Wireguard

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

Иногда возникает необходимость получить доступ к сайтам, например, https://refactoring.guru или https://leafletjs.com, но по каким-то причинам эти сайты заблокирован в вашей стране. Выходом может стать VPN. Однако покупать VPN где-то на стороне при наличии собственного VPS сервера, где интернет работает нормально, просто лишняя трата денег. В таком случае возникает вопрос: а как, собственно, организовать этот самый VPN? В интернете есть множество инструкций, но они обычно не затрагивают тему протокола IPv6 или затрагивают, но там используются спорные решения.

Одним из популярных вариантов организации VPN является Wireguard. Сам по себе, Wireguard, довольно прост, но при этом его можно использовать в любых схемах: «точка-точка», «звезда» и даже mesh-сеть. В дальнейшем будет использоваться схема «звезда», которая подразумевает использование отдельного сервера и наличие, минимум, одного или нескольких клиентов.

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

Насколько Swift удобен для DSL?

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

SE-0195 Dynamic Member Lookup
SE-0216 Dynamic callable
SE-0253 CallAsFunction
Исходя из мотивационной секции proposal, @dynamicCallable и @dynamicMemberLookupбыли добавлены для интеропа с динамическими языками, такими как Python, JavaScript. Но их использование этим не ограничивается.

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

DTO в Python. Способы реализации

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

Основной целью DTO является упрощение коммуникации между слоями приложения, особенно при передаче данных через различные граничные интерфейсы, такие как веб-сервисы, REST API, брокеры сообщений или другие механизмы удаленного взаимодействия. На пути к обмену информацией с другими системами, важно минимизировать лишние расходы, такие как избыточное сериализация/десериализация, а также обеспечить четкую структуру данных, представляющую определенный контракт между отправителем и получателем.

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

Из основной функциональности хочу выделить валидацию типов и данных, создание объекта и выгрузку в словарь.

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

Круглосуточная трансляция CCTV IP Камеры на Youtube

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

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

В моём случае — реализована трансляция CCTV камеры, но контент можно выбрать любой, какой пожелаете.

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

10 open-source-фреймворков для разработки ИИ-ботов

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

Если вы всерьёз заинтересовались созданием ИИ-бота, то вам пригодится набор инструментов для его разработки. Чтобы помочь определиться с правильным решением, Екатерина Саяпина, Product Owner личного кабинета платформы МТС Exolve, сделала небольшой обзор наиболее популярных ИИ-фреймворков.

В статье также пойдёт речь о решениях с функциями распознавания речи. Мы включили в подборку наиболее известные продукты, но если захотите углубиться именно в голосовые технологии, то изучите проекты с 5 тыс. звёзд на GitHub, среди которых DeepSpeech, Leon, Wav2letter и Annyang. Также рекомендуем обратить внимание на Voice API и подобные платформы для гибкой настройки всей цепочки коммуникаций.

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

Автоматизация обеспечения качества кода на языке Python

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

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

Во второй части я предлагаю пошаговое руководство по настройке инструментария для повышения качества кода в проектах на Python. Отдельное внимание отведу инструментам, которые я использую и которым отдаю предпочтение, имея 15 лет профессионального опыта работы с Python. А также приведу некоторые доступные альтернативы каждому из моих предложений.

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

ТОП-26 программ мониторинга и контроля работы сотрудников за компьютером 2024. Полный обзор

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

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

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

Читать далее
Всего голосов 21: ↑3 и ↓18-14
Комментарии26

Методы борьбы с воровством в кружке робототехники (часть 2)

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

В 2020 году я написал статью о своих наработках в области защиты активов кружка робототехники от краж.

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

Ознакомиться с нововведениями
Всего голосов 56: ↑54 и ↓2+64
Комментарии153

Четыре способа написать Hello world, или инструменты для создания GUI на Python

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

После написания программы ее можно модифицировать и добавить графический интерфейс — с Python это проще, чем кажется. Для программирования красивого и функционального GUI иногда достаточно простого знания html и css.

Под катом — подборка некоторых инструментов для создания интерфейсов на Python. Сохраняйте статью в закладки и предлагайте свои варианты в комментариях!
Читать дальше →
Всего голосов 43: ↑40 и ↓3+50
Комментарии61

Создание облачных приложений с помощью Kubernetes и Istio — Келси Хайтауэр

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

Всем привет!

Мы подготовили перевод выступления Келси Хайтауэра на тему «Создание облачных приложений с помощью Kubernetes и Istio» (конференция O’Reilly). Автор рассуждает о преимуществах совместного использования Kubernetes и Istio, рассказывает, что такое sidecar, bar и foo, показывает как отразить матрицу в дашборде и как начать «разговаривать» с инфраструктурой. На примерах он демонстрирует процесс работы с Istio.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии2

11 полезных плагинов для kubectl

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

Kubectl (Kubernetes Control) — это по сути основной интерфейс для взаимодействия с Kubernetes-кластером. Сторонние разработчики сделали для него много полезных плагинов, которые в той или иной ситуации могут облегчить работу инженера и сэкономить время. В этой статье рассмотрим 11 удобных плагинов для расширения функционала kubectl.

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

Как сделать свой AnythingGPT, отвечающий на вопросы так, как вам это необходимо (Python, OpenAI Embeddings, ChatGPT API)

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

Всем привет! Недавно я на практике применил одно интересное решение, которое давно хотел попробовать, и теперь готов рассказать, как своими руками такое можно сделать для любой другой аналогичной задачи. Речь пойдет о создании своей кастомизированной версии ChatGPT, которая отвечает на вопросы, учитывая большую базу знаний, которая по длине не ограничивается размером промта (то есть вы бы не смогли просто добавить всю информацию перед каждым вопросом к ChatGPT). Для этого будем использовать контекстные эмбеддинги от OpenAI (для действительно качественного поиска релеватных вопросов из базы знаний) и сам СhatGPT API (для оборачивания ответов в натуральный человеческие ответы). При этом, также предполагается, что ассистент может отвечать не только на прямо указанные в Q&A вопросы, но и на такие вопросы, на которые смог бы отвечать человек, который ознакомился с Q&A. Кому интересно научиться делать простых ботов, отвечающих по большой базе знаний, добро пожаловать под кат.

Под кат
Всего голосов 12: ↑12 и ↓0+12
Комментарии15

Как подружить Asterisk с потоковым распознаванием от Яндекс SpeechKit через EAGI и Python

Время на прочтение3 мин
Количество просмотров4.1K
До этого самого времени, я никогда не писал код на Pyhton и Node JS. И поэтому мне было очень сложно скрестить эти системы. И поэтому решил написать об этом пост, так как готовых примеров в Яндексе нет за исключением MRCP про которого было немало нелестных отзывов от пользователей этой системы, но пруфы в данное время предоставить не могу. Я решил не пользоваться этим костылем и изобрести велосипед на костылях сам. Для этого мне в помощь прослужила сама документация с Яндекса и некоторые примеры с StackOverflow.
Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии1
1
23 ...

Информация

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