Все уже слышали, что openAI выпустили в свет свою новую нейросеть-ассистента, так что я решил попробовать на что она способна и описать свой опыт взаимодействия с этим.. Этой... Сущностью.
Разговор будет вестись как с человеком в вежливой форме, так как оказалось, что нейросеть очень хорошо запоминает = )
Начнём с чего-то простого, попросим сгенерировать на языке CMake простую программу
User
Создание e-ink дисплея с прогнозом погоды
Кому-то нравится украшать дом электронными фоторамками, а кому-то — цифровым прогнозом погоды. Если вы из их числа, то читайте, как собрать своё собственное метео-табло.
Укрощаем одноглазого змея. Разбираемся с WireGuard и делаем свой умный VPN
Забавная ситуация: сайтов и сервисов, доступных только через VPN, все больше, но при этом многие российские компании закрывают доступ из-за границы. В результате приходится целыми днями теребить ползунки «вкл-выкл», что утомительно. Я расскажу, как с помощью магии маршрутов и WireGuard, решить эту проблему и сделать «умный» VPN, который не надо отключать.
Если ты пользуешься VPN, то и сам наверняка сталкиваешься с блокировками зарубежного трафика. К примеру, могут не открываться pochta.ru, leroymerlin.ru, rt.ru, avito.ru.
Получается мем.
Каждый с этим борется как может. Например, на устройствах Apple родными средствами можно настроить автоматизацию, которая будет запускать VPN, когда открываешь определенные приложения (например, Twitter), а когда выходишь из них — выключать обратно. Но это костыль, а хочется все сделать красиво, да еще и прокачать навык работы с сетью.
Поэтому мы сейчас попробуем «включать VPN чуть-чуть».
Руководство по созданию облачного приложения под Microsoft Azure на основе опенсорсных технологий. Часть 1
Эта статья научит вас создавать облачные приложения, шаг за шагом демонстрируя все этапы разработки на приближенном к реальным сценариям учебном примере.
Что такое катастрофический возврат и как регулярное выражение может стать причиной ReDoS-уязвимости?
Регулярные выражения – очень полезный и удобный инструмент для поиска и замены текста. Однако в некоторых случаях они могут привести к зависанию системы или даже стать причиной уязвимости к ReDoS-атакам.
Шесть лучших инструментов управления Hyper-V
Если вы отвечаете за управление Hyper-V в своей организации, то вам необходимо знать о преимуществах и недостатках шести лучших инструментов управления Hyper-V.
Hyper-V Manager — это инструмент Microsoft, поставляемый в комплекте с ролью Hyper-V. Его можно использовать для управления виртуальными машинами (virtual machine, VM), работающими на локальных или удалённых хостах Hyper-V.
Корутины C++20 и многозадачность на примере контроллеров stm32
На Хабре уже неоднократно появлялись статьи, посвященные применению современных стандартов C++ при программировании микроконтроллеров, в том числе и появившихся в c++20 корутин.
Предлагаю спуститься со сложных решений типа целой операционной системы и рассмотреть вопросы примитивного планирования задач с применением сопрограмм.
Едем на солнечной энергии. Превращаем повышающий DC-DC преобразователь в солнечный контроллер. Часть 2 (Редакт. 9.04.23)
И снова здравствуйте, уважаемые читатели!
Первая часть статьи касалась общей информации по главным аспектам путешествия на солнечной тяге, вторая - будет более узкоспециализированной, рассчитанной на пользователей, имеющих некоторый инженерный опыт в сфере электроники.
Пользовательские типы и std::format в C++20
std::format
— очень полезное (и серьезное) нововведение C++20, позволяющее нам форматировать текст в строки удобным и эффективным образом. Оно привносит в язык форматирование в стиле Python в сочетании с безопасностью и простотой использования.
В этой статье я расскажу, как реализовать пользовательские средства форматирования (форматтеры) в соответствии с новой std::format
архитектурой.
4,2 гигабайта, или как нарисовать что угодно
В нашем мире мы можем сделать всё, что захотим. Всё что угодно.
— Боб Росс, The Joy Of Painting, сезон 29, эпизод 1
Однажды, когда я наблюдал за ярким закатом в Сиэтле, внезапно включилось моё воображение. Потусторонний оттенок неба пробудил воспоминания о чём-то из научной фантастики. Дымчатый оранжево-сиреневый завораживал.
Я представил огромный инопланетный объект, висящий в горящем оранжевом небе над давно покинутым Сиэтлом, здания которого покрыты зарослями.
Тем же вечером я за несколько часов создал вот такое изображение:
Простите за низкое разрешение — к сожалению, у моего GPU всего 12 ГБ памяти.
Поскольку очевидно, что я талантливый художник, имеющий за плечами буквально десятки минут опыта, мне захотелось поделиться тем, как я создал данный шедевр.
Шахматы на C++
Не так давно я захотел написать свой шахматный движок. На удивление в Интернете нашлось не так много хороших статей на эту тему. Были статьи с довольно слабыми программами, многие из которых даже умудрялись пропускать некоторые важные правила. А были статьи с хорошими программами (некоторые из них были даже чуть лучше чем получилось у меня в итоге), но там авторы рассказывали лишь основные идеи, пропуская подробности, из-за чего написать что-то свое по таким статьям было проблематично. Поэтому после написания своей программы, я решил написать статью, дабы облегчить жизнь интересующимся в данной теме. Я не претендую на лучшую шахматную программу или на чистейший код, но эта статья будет хорошим и легким началом для тех, кто хочет написать что-то свое.
iPXE — заливка linux, windows, утилит по сети
Раньше у нас использовалась заливка ОС по PXE с использованием syslinux, но как бывает с самодостаточными системами и без достаточного контроля и внимания - быстро превратилась в кашу из конфигураций, библиотек, загрузчиков.
Так же была необходимость в поддержке заливки разных ОС в режиме EFI - на тот момент заливка была только в Legacy.
В желании разобраться в этом наследстве, упростить и облегчить добавление новых образов в список, я познакомился с iPXE.
Чем заменить телевизор
После определенных событий, произошедших за последние несколько месяцев, начал задумываться о замене телевидения себе и своим близким. Очевидно самый простой вариант это покупка ТВ приставки с Android на борту, однако взглянув на цены и предлагаемое железо, идея отпала.
Неклассические контейнеры в C++
Контейнер - это объект, используемый для хранения других объектов. Контейнер берет на себя управление всей памятью, которые эти объекты занимают.
В стандартную библиотеку C++ входит несколько контейнеров. Кроме этого, в Open Source есть несколько контейнеров, которые покрывают больше юзкейсов. Я опишу устройство интересных контейнеров вне STL и их отличия от классических контейнеров.
Пишем аудио-разведчик своими руками
Было бы здорово иногда иметь под рукой программку, которая в наше отсутствие умеет записывать звук со встроенного микрофона нашего ноутбука и передавать его по сети на другой наш комьютер. А тот, в свою очередь, этот звук умел бы воспроизводить в режиме реального времени. Давай попробуем самостоятельно написать такую программу, тем более что это, как оказывается, не так уж и сложно.
Что мы в итоге хотим получить и какой алгоритм работы реализовать:
1. Сервер, который запускается на той машине, пространство вокруг которой мы хотим прослушивать. Он тихо ждёт, пока к нему не подключится клиент. Затем он открывает устройство записи звука, настроенное по умолчанию в системе, и начинает передавать аудио поток на машину клиента. При отключении клиента от сервера, звуковое устройство закрывается, чтобы не тратить ресурсы зря.
2. Клиент, который подключается к серверу и начинает принимать аудио поток и воспроизводить его в режиме реального времени. Для того, чтобы клиент мог правильно (в нужном формате) открыть устройство воспроизведения звука, он получает нужную мета информацию от сервера в Hello сообщении.
Кто такой Thread Pool и как его написать своими руками на С++
Thread Pool достаточно популярный паттерн в программировании, с которым рано или поздно сталкивается каждый первый программист. Если вы новичок и не хотите бездумно пользоваться пулом потоков, то эта статья поможет вам разобраться с его устройством и написать наивные реализации с использованием С++ 14 и С++ 17. Так же статья будет полезна всем, кто изучил теорию по многопоточности, но не знает как можно применить свои знания.
DevOps для производства Firmware
В этом тексте я намерен пофантазировать каким мог бы быть абстрактный процесс разработки firmware с точки зрения DevOps. И перечислить атрибуты такого процесса.
Самодельное облако с аппаратным ключом шифрования
Облачные хранилища удобны и прочно вошли в жизнь рабочих и колхозниц, однако, имеют ряд недостатков. Это цена за гигабайт, проблемы с приватностью данных (причём, как со стороны хакеров, так и со стороны владельцев облачного сервиса), риск блокировки аккаунта (привет гуглу) или недоступность сервиса из определённых стран (привет яндексу). В этой статье хотелось бы кратко рассказать про одну свою поделку, которую я тихо мастерю для себя и так, как я это вижу. Она не претендует на роль лучшего или уникального решения, просто мне показалось, что сделать именно так будет лучше и удобнее для пользователя.
Странная история: Появившийся новый сотрудник — не тот человек, которого мы собеседовали
На портале AskaManager, где сотрудники делятся своими рассказами о работе, поделились забавной историей. Дальше прямая речь.
«Эта ситуация прямо сейчас разворачивается в офисе моего мужа, так что я здесь просто удивленный наблюдатель и подумала, что стоит узнать ваше мнение об этом сумасшествии.
Мой муж работает в IT, является одним из руководителей в частной компании среднего размера. Он был частью группы, которая провела собеседование с несколькими людьми на открытую вакансию в его команде программистов. Всё происходило полностью удаленно. У них было несколько кандидатов в первом и втором раунде, и один из них прошел в финальный третий раунд, и получил предложение. «Джон» принял это предложение и начал работать на прошлой неделе.
Только... это не тот Джон, которого помнит мой муж! Мой муж полностью сбит с толку и говорит, что из странного он пока заметил.
oneTBB: интеграция и сборка через CMake
Threading Building Blocks (TBB) — популярная библиотека для параллельного программирования на C++ с открытым исходным кодом, опубликована на GitHub. Пару лет назад команда разработки решилась на глобальный рефакторинг библиотеки (проект TBB revamp), в который удалось вписать долгожданную смену системы сборки с GNU Makefiles на CMake. Свежая версия вышла в релиз в рамках инициативы oneAPI, обновив имя на oneTBB. В этой статье я расскажу про то, как подключить oneTBB в CMake-проект и как собрать, протестировать и установить oneTBB.
Information
- Rating
- Does not participate
- Registered
- Activity