Если вдруг у вас есть Raspberry Pi, вы с ним уже наигрались и хотите найти ему полезное применение, то в этой статье я расскажу как быстро и просто превратить его в роутер, который может работать c VPN сервером по протоколу WireGuard. В виду того, что вычислительные возможности Raspberry Pi выше, чем у среднестатистического роутера, вы получите большую скорость Интернет при работе через VPN.
Python, Go, React
Руководство по программированию сокетов на Python. Клиент, сервер и несколько соединений
К концу руководства вы освоите основные функции и методы модуля Python socket, научитесь применять пользовательский класс для отправки сообщений и данных между конечными точками и работать со всем этим в собственных клиент-серверных приложениях. Материалом делимся к старту курса по Fullstack-разработке на Python. Для удобства чтения первая часть — за спойлером.
Руководство по программированию сокетов на Python. От введения до работающего примера
К концу руководства вы освоите основные функции и методы модуля Python socket, научитесь применять пользовательский класс для отправки сообщений и данных между конечными точками и работать со всем этим в собственных клиент-серверных приложениях. Материалом делимся к старту курса по Fullstack-разработке на Python.
Поиск своего племени, начало
Долгой жизни и процветания коллеги!
В жизни даже самого сурового интроверта наступает момент, когда появляется запрос на своё племя - свое окружение, которое живет и развивается на основе общих ценностей и принципов. Этот год заставил многих задуматься об этом и не только задуматься, но и переместиться в пространстве в совершенно другие условия и социум.
Так уж вышло, что сколько себя помню, всегда был сам по себе, себе на уме, немного не от мира сего и прочие определения гика-нелюдимого. И конечно, не планировал становится предпринимателем, управлять и организовывать, мне просто нравилось придумывать и создавать что-то, пусть в виртуальном, но все же мире, в котором есть свобода и творчество. Но сегодня за плечами уже 20 лет IT предпринимательства, поиска и формирования себя и своего окружения. О чем писал в прошлых заметках.
В этой заметке хочу поделиться соображениями на тему весьма избитую, но не менее актуальную в текущих реалиях - сообщество развитых людей, организация совместной деятельности и жизни на основе общих ценностей и принципов.
Тестируем слой БД в Python с использованием pytest и testcontainers
Несмотря на большую популярность testcontainers в мире java, информации по применению testcontainers в python в интернете практически нет. Даная статья - попытка ликвидировать этот пробел. Если тема показалась интересной, добро пожаловать под кат!
Аудит входа в Linux через Slack. Разбираемся с PAM
Библиотеки PAM (Pluggable Authentication Module) используются для добавления сложного сценария проверки учетных данных и выполнения дополнительных действий при аутентификации пользователя и доступе к службам. В этой статье мы разберемся с внутренней архитектурой PAM, особенностями конфигурации и сделаем простой модуль для отправки уведомлений в Slack при входе пользователя в систему.
Готовим селекторы в Redux
Редакс - Single-store стейт-менеджер, в котором к тому же принято группировать данные по объектам. Примерно так же, как в стейте классовых компонентов в реакте.
То есть, это совершенная противоположность атомарного подхода, которому, к примеру, следуют многие хуки реакта или Multi-store стейт-менеджеры (например Effector, где селекторы не нужны по определению - достаточно сторов).
Помимо этого, объекты, которыми оперируют редьюсеры в редаксе, не являются какой-то полноценной сущностью - это просто кусок чистых данных. Противоположность - MobX, где в сторах могут быть экшны и компьютеды. Кстати, последние как раз являются заменой селекторов в MobX.
В общем, раз в редаксе нет возможностей ни эффектора, ни MobX, нам лишь остается напрямую обращаться к данным, начиная с самого верха. Это превращается в нечто вроде state.foo.bar.baz
. А если перед этим еще нужно произвести какие-то вычисления с участием других значений из стора?
Собственно по этим причинам, там и напрашивается какой-то отдельный слой, который возьмет на себя роль получения, комбинирования и преобразования данных. Этим слоем стали селекторы.
Огромное количество раз я видел, как люди используют их неправильно, получая множество проблем. Внутри - лучшие практики, к которым я пришел за годы боли с редаксом.
Введение в Test-Driven Development на React для чайников
Привет, в данном посте вы найдете перевод статьи Mangabo Kolawole, в которой пойдет речь о Test-Driven Development. Мы создадим крайне простое приложение на React по всем правилам TDD.
Первое правило Test-Driven Development (TDD) – это написание тестов перед написанием кода. Это звучит более интуитивно, когда мы говорим о разработке для бэкенда, если честно, но работает ли данная схема для фронтенда, в частности для React, что же, посмотрим.
Как создать и опубликовать библиотеку React компонентов
В этом руководстве вы пройдете через процесс создания и публикации собственной библиотеки компонентов React и размещения ее на Github.
От переводчика: в статье автор демонстрирует как создать библиотеку с React компонентом внутри, подготовить её к публикации с помощью Rollup, опубликовать через npm, настроить StoryBook, настроить тестирование с использованием React Testing Library и Jest. В оригинальной статье есть ссылка на видеоверсию текущего урока.
Пожалуйста, прекратите писать shell-скрипты
Когда вы автоматизируете какую-либо задачу, например, упаковываете свое приложение для Docker, то часто сталкиваетесь с написанием shell-скриптов. У вас может быть bash-скрипт для управления процессом упаковки и другой скрипт в качестве точки входа в контейнер. По мере возрастающей сложности при упаковке меняется и ваш shell-скрипт.
Все работает хорошо.
И вот однажды shell-скрипт совершает что-то совсем неправильное.
Тогда вы осознаете свою ошибку: bash, и вообще shell-скрипты, в основном, по умолчанию не работают. Если с самого начала не проявить особую осторожность, любой shell-скрипт достигнув определенного уровня сложности почти гарантированно будет глючным... а доработка функций корректности будет довольно затруднительна.
Тёмная тема в React с использованием css переменных в scss
Темная тема стала стандартом де-факто. Ее отсутствие может стать причиной отказа от пользования сайтом. Особенно если на него заходят программисты, которые сплошь и рядом работают в тёмной теме.
Я покажу, как можно просто добавить темную тему в React проект. Разберем основные моменты и сделаем всё красиво. Для тех, кто хочет все сразу:
• Демо
Почему список в кортеже ведет себя странно в Python?
tuple
'а в list
'е.Окей, Джанго, у меня к тебе несколько вопросов
Недавно я проходил очередное интервью, и меня спросили, пишу ли я на flask, на что я ответил, что я себя люблю, и поэтому пишу на django. Меня не взяли, потому что, кхм, у них, оказывается, много чего было на фласке, и вышло неловко. Да-да, я знаю, фласк крут, потому что он простой, всё что надо ставишь сам, а чего не надо там и так нет, но как по мне, всё равно потом получается django.
И тут, наверно, покажется, что я я свидетель Джанго, хожу по домам, стучу в двери и рассказываю, как круто на нём кодить, но вообще-то нет - Джанго тоже не без проблем... Вот об этом я и хочу поговорить.
Установка Visual Studio Code в облаке
Облачные сервисы давно и плотно вошли в нашу жизнь, сейчас уже немыслимо представить себе без них современное существование в цифровом пространстве, они существенно упрощают жизнь и снижают порог входа в IT для небольших компаний, освобождая их от необходимости закупать и настраивать свою собственную инфраструктуру. К облакам подключены смартфоны и компьютеры, в них переносится все больше данных и сервисов.
Интегрированные среды разработки тоже не избежали переноса в облака. Около десяти лет назад это было диковинкой, Cloud IDE только начинали развиваться, но потом на них обратили внимание самые крупные игроки IT-индустрии.
Выбор элементной базы для аккумуляторного питания небольшого устройства
Получил задание на разработку батарейного устройства с NFC, радиообменом в сети Z-wave и рядом других особенностей. Тема статьи касается электропитания данного устройства, поэтому подробного описания назначения и функций устройства не будет. Оно должно работать как от батареи, так и от сети постоянного тока 5-12 вольт. При питании от аккумулятора устройство потребляет около 200 мкА (периодическое сканирование NFC). При подносе карты потребление вырастает примерно до 400 мА в течение 0.5 секунды. Устройство должно работать на улице круглогодично и быть по габаритам максимально близким к кредитной карте и толщиной не более 2 см. Срок эксплуатации устройства до замены аккумулятора 2-3 года. Планируемая серийности несколько тысяч штук.
Кому интересны рассуждения дилетанта, решающего проблему энергопитания устройства, прошу под кат.
Внедряем оплату BTC куда угодно (Python)
Внедряем оплату BTC куда угодно (Python)
- генерация кошелька на основе seed фразы
- проверка баланса и транзакций
- отправка BTC на другие кошельки
- создаем телеграм бота для выполнения операций с BTC
- исходники бота (github)
C++20. Coroutines
В этой статье мы подробно разберем понятие сопрограмм (coroutines), их классификацию, детально рассмотрим реализацию, допущения и компромиссы, предлагаемые новым стандартом C++20.
Пишем движок полнотекстового поиска на Go
Сегодня мы собираемся написать собственный движок FTS. К концу этой статьи он сможет выполнять поиск по миллионам документов менее чем за миллисекунду. Начнём с простых поисковых запросов, таких как «Выдать все документы со словом cat», а потом расширим движок для поддержки более сложных логических запросов.
Примечание: самым известным движком полнотекстового поиска является Lucene (а также Elasticsearch и Solr, построенные на его основе).
Как получить доступ к ресурсам Kubernetes Pod
В начале работы с Kubernetes обычно забывают о настройке ресурсов контейнеров. На этом этапе достаточно убедиться, что образ Docker работает и его можно развернуть в кластере Kubernetes.
Но позднее приложение требуется развернуть в продакшен кластере вместе с другими приложениями. Для этого нужно выделить ресурсы для контейнера и убедиться, что их достаточно для запуска и работы приложения, а в других запущенных приложениях не возникнет проблем.
Команда Kubernetes aaS от Mail.ru перевела статью о ресурсах контейнеров (CPU & MEM), запросах и ограничениях ресурсов. Вы узнаете, какие преимущества дают эти настройки и что произойдет, если их не установить.
TypeScript. Продвинутые типы
Привет, Хаброжители! Мы сдали в типографию очередную новинку
"Профессиональный TypeScript. Разработка масштабируемых JavaScript-приложений". В этой книге программисты, которые уже знакомы с JavaScript на среднем уровне, узнают, как освоить TypeScript. Вы поймете, как TypeScript поможет масштабировать код в 10 раз лучше и снова сделать программирование увлекательным.
Вашему вниманию представлен отрывок одной главы из книги «Продвинутые типы».
Информация
- В рейтинге
- 4 212-й
- Откуда
- Тольятти, Самарская обл., Россия
- Дата рождения
- Зарегистрирован
- Активность