Пишу об IT и на Python. kungurov.net В этом выпуске: Экспертное Android-собеседование: Дудаков — Иванов; 5 продвинутых концепций SQL, которые вы должны знать в 2022 году; Создание одностраничного приложения с помощью Pyodide; Краткий обзор популярных веб-фреймворков для Go; Feature Flags в экосистеме .NET: от теории к практике.
Python
Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека питониста»
Статьи и руководства
Из этого пошагового руководства вы узнаете, как работает filter() и как эффективно использовать его в своих программах.
Не позволяйте словарям портить ваш код.
Как можно эмулировать циклы Do-While в Python?
25 репозиториев Github, которые должен знать каждый Python-разработчик.
Создание одностраничного приложения с помощью Pyodide.
Запуск приложения Django на облачной платформе Google.
5 уровней обработки даты и времени в Python.
Стеки в Python, очереди и приоритетные очереди на практике.
Процедурная музыкальная композиция с Python.
Data Science
Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека data scientist’а»
Статьи и руководства
Состояние инженерии данных в 2022.
Измерение углеродного следа ИИ.
🗣 Решаем задачу перевода русской речи в текст с помощью Python и библиотеки Vosk
О корреляционном анализе в Python.
Упражнения с ручкой и бумагой по машинному обучению.
Meerkat: dataPanels для машинного обучения.
Фондовый рынок – самая загадочная система, которую может предсказать ИИ.
5 продвинутых концепций SQL, которые вы должны знать в 2022 году.
YOLOv5 – Детектор лиц. «Недавно у меня возникла необходимость сделать детектор лиц в реальном времени для дальнейшей сегментации и распознавания. В качестве детектора я использовал очень популярную сеть YOLOv5.»
R против Python: в чем реальная разница между R и Python?
Go
Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека Go разработчика»
Новости
Анонс GoLand 2022.2 EAP #7
Релиз Pongo2 6.0.0
Релиз eRPC 7.0.0
Релиз go-elasticsearch 8.3.0
Релиз Traefik 2.8.0
Релиз FerretDB 0.4.0
Релиз Vitess 14.0.0
Релиз Casbin 2.50.0
Релиз fasthttp 1.38.0
Релиз go-version 1.6.0
Релиз Hertz 0.1.0
Релиз Zinc 0.2.5
Релиз Go-nanoid 1.0.0
Релиз Phonenumbers 1.1.0
Релиз Render 1.5.0
Релиз Garr 0.1.1
Релиз Bluemonday 1.0.19
Анонс Go 1.19 Release Candidate 1
Анонс GoLand 2022.2 Beta
Релиз Miller 6.3
Релиз GoBGP 3.4
Релиз OctoSQL 0.8
Релиз go-junit-report 2.0
Релиз s5cmd 2.0
Релиз lo 1.25
Релиз Maddy 0.6.2
Релиз Delve 1.9
Релиз Slacker 0.1
Статьи и руководства
Разработка REST API на Go + AWS с использованием SST: руководство для начинающих.
Переход из PHP-монолита на Go-микросервисы в «Ситимобил»: предпосылки и основные преимущества.
Архив видеозаписей докладов с митапов StLGo.
Отслеживание изменений схемы базы данных с помощью Go: советы и простые практические приемы.
Что Go грядущий нам готовит? Леонид Могучев, Go-разработчик в Ozon Tech, разбирает изменения в Go 1.19.
Продолжение серии видеоуроков про фаззинг в Go (часть 1). В новом видео больше практики: показано, как написать/запустить простой фаззинг-тест и проанализировать логи.
Опыт миграции команды Brev.dev с Go 1.17 до 1.18: с какими проблемами столкнулись и как решили.
Пишем Go-сервис с использованием Docker, AWS Lambda и S3.
Александр Сахаров из Ozon рассказывает о том, как писать тесты в Go.
Пополняем коллекцию руководств по Go для начинающих: серия Go-beginners от Chris Noring, GDE и Cloud Developer Advocate в Microsoft.
Имплементация простого WebSocket эхо-сервера на Go.
Репозиторий с простыми и небольшими задачами по Go, которые необходимо исправить.
Краткий обзор популярных веб-фреймворков для Go.
Учимся настраивать CORS в связке Go + React.
Мысли о DDD в Go: на какие компромиссы придётся пойти?
Редко кто так подробно документирует этапы прохождения челленджа «100 дней *», но в этом случае все иначе.
Обзор различных конструкций Go-кода, которые могут привести к уязвимостям.
Чем сложнее код, тем больше вероятность столкнуться с неожиданным поведением. В статье описаны два возможных последствия объединения дженериков, интерфейсов и переключателей типов в Go.
Погружение в исходные коды Caddy: узнайте, какие архитектурные решения и подходы использовали разработчики второй версии популярного веб-сервера.
Собственная реализация rsync на Go?! Michael Stapelberg рассказывает о предпосылках, которые повлияли на его решение, а также о своём домашнем маршрутизаторе router7, который работает на gokrazy, собственной платформе Go для Raspberry Pi и многом другом.
Серия статей про создание CI-пайплайна для Go-библиотеки и CLI-приложения с использованием Dagger.
Контейнеризация Go-приложения с использованием Docker: гайд для новичков.
Подкаст «Мы обречены»: Гениальный Go-разработчик из Узбекистана Влад Тен — пишет код, читает рэп.
Библиотеки
viddy — современная альтернатива команде watch. Все просто и красиво, и с возможностью просмотра истории.
PocketBase — open source Go-инструмент, который компилируется в один переносимый бинарник. Сайт & демо, Репозиторий.
C#
Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека шарписта»
Новости
Свежие новости и статьи из мира .NET-разработки:
Improving .NET host error messages and supportability
Incremental ASP.NET Migration Tooling Preview 2
Getting Started with DevOps and .NET MAUI
CoreWCF 1.1.0 and project templates
Listen Up, Visual Studio has a new feature you need to hear about!
Sneak Peek and Edit Your Code While You Search
It just takes time. Updated guidance on Azure long-running operations
Using Azure Service Bus in the wild
Rider 2022.2 EAP: Create a New Unreal Plugin
.NET-документация: новые возможности за июнь 2022 г.:
SqlMoney.ToSqlInternalRepresentation Method
Kestrel: Default HTTPS binding removed
.NET SDK error list
IHubClients and IHubCallerClients hide members
ContentRootPath for apps launched by Windows Shell
C# formatting options
.NET formatting options
Formatting rule (IDE0055)
Native AOT Deployment
CA1854: Prefer the IDictionary.TryGetValue(TKey, out TValue) method
Improve scalability with Buffer Pool Parallel Scan in SQL Server 2022
DiagnosticSource and DiagnosticListener
Статьи
Кейс использования инструментов dotMemory, dotTrace и BenchmarkDotNet для оптимизации одного из алгоритмов dotMemory.
5 полезных советов по написанию C#-кода.
Feature Flags в экосистеме .NET: от теории к практике.
Симулируем вывод типов для возвращаемых значений в C#: совет, который открывает потенциально интересные архитектурные возможности.
Краткие и простые советы по отладке .NET-приложений в Visual Studio и Rider.
Серия руководств по разработке ASP.NET REST API в соответствии с принципами чистой архитектуры и DDD, и с использованием множества современных инструментов из экосистемы .NET.
Введение в пакет Microsoft.AspNetCore.MiddlewareAnalysis и кейс его использования для визуализации middleware pipeline в приложении ASP.NET Core.
Цикл статей про создание игры жанра dungeon crawler с использованием фреймворка LeoECS Lite. Цель цикла — помочь вам быстро разобраться с применением LeoECS Lite для разработки игр на Unity и научиться решать некоторые проблемы. Часть 1, Часть 2
Воркшоп на тему «Разработка вредоносного ПО для чайников». Внутри репозитория слайды, упражнения, примеры кода и ресурсы, которые помогут вам начать разработку вредоносных программ на C# и Nim. И да, информация приводимся в учебных целях.
Разработка .NET приложений для Kubernetes. Это руководство — не введение в Kubernetes или обоснование того, почему вы должны использовать Kubernetes. Это также не руководство по написанию распределенных приложений или .NET сервисов. В руководстве описан опыт миграции приложения .NET в Kubernetes и использования всех преимуществ этого инструмента.
Blue-green deployment — способ развертывания, который позволяет обновлять приложения, не отклоняя ни одного запроса и без остановок. В статье вы увидите теорию и примеры BGD на C# + ORM EF Core. Материал подойдет DevOps-инженерам и бэкенд-разработчикам, особенно на HighLoad-проектах.
Погружаемся в IAsyncEnumerable: Часть 1, Часть 2, Часть 3
Видеокурс по созданию кроссплатформенных приложений на C# с использованием .NET MAUI для начинающих.
Обзор EF Core с точки зрения производительности + сравнение с Dapper.
Fluent Generics в C#: что из себя представляет этот подход и как его можно использовать для того, чтобы сложные обобщённые типы писать просто.
Возврат XML из minimal APIs в .NET 6: основные предпосылки/преимущества использования такого подхода и детали реализации.
Стек и куча: подробное объяснение для C#-разработчиков.
Подробный гайд по интеграции OpenTelemetry в .NET-проект.
Распознавание наличия подписи на .NET + EmguCV (OpenCV): опыт команды АльфаСтрахование.
Погружение в Unity: быстрый старт для разработчиков на C# от JetBrains.
C/C++
Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека C/C++ разработчика»
Статьи и руководства
Параллелизм на уровне инструкций на практике: ускорение программ, привязанных к памяти, с низким ILP.
Клиент Jellyfin Desktop на основе Plex Media Player.
Что нового в CMake для VS Code версии 1.11?
Полнотекстовый поиск UDR для Firebird 3 и 4 на основе Lucene++.
API unordered_multiset влияет на его big-O.
Инициализирующий конструктор выглядит как присваивание, но это не так.
Передача по значению против передачи по ссылке.
Hypr — тайловый оконный менеджер, написанный на современном C++.
Неопределенное поведение в C является ошибкой чтения.
boost::unordered map — новый король структур данных.
dragonfly — cовременная замена Redis и Memcached.
«Почему мой код не работает?» — всем, кто изучает искусство программирования и пишет в сообщество Stack Overflow.
Мобильная разработка
Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека мобильного разработчика»
Статьи и руководства
SwiftUI Index & Changelog — ваш путеводитель по изменениям в SwiftUI.
Зависимости в iOS-приложениях на Swift: добавить, оставить или удалить?
Команда QIWI написала систему диплинков на основе кодогенерации. Диплинк представляет собой URI на конкретный ресурс в приложении. Они нужны бизнесу для упрощения пользовательского опыта. В материале рассказано, как удалось упростить работу с диплинками и отловить устаревшие, добавить мониторинг и многое другое.
Руководство по использованию AsyncSequence и AsyncStream для iOS-разработчиков.
Краткий разбор обновлений в Jetpack Compose от Кирилла Розова.
Использование Kotlin Multiplatform во второй половине 2021 года: результаты опроса от JetBrains.
Насколько хорошо вы разбираетесь в операторах для списков Kotlin? Вопросы от ведущего Android-разработчика в МТС Digital Леонида Иванькина.
Обзор нововведений в: Swift 5.7, SwiftUI для iOS 16, Xcode 14.
В коллекции Kotlin-библиотек для Data Science пополнение. Эта библиотека DataFrame, предназначенная для работы со структурированными данными. Серия ознакомительных видео расскажет об основных функциях и базовых операциях библиотеки.
Вильян Яумбаев, iOS-разработчик в ПСБ, рассказывает о переводе зависимостей на SPM и делится наработками из практики.
Продолжение стрима Gradle Review Show (начало здесь).
Разбираемся с теоретическими и практическими аспектами диспетчеризации (Method Dispatch) в Swift.
Экспертное Android-собеседование. Дудаков — Иванов. Собеседует Антон Дудаков, Software Engineer в Ziina. Ранее работал в СберДевайсах и Яндекс.Авто. Кандидат — Аркадий Иванов, Senior Software Engineer в Google. Занимается разработкой под Андроид с 2011 года. Автор библиотек Decompose, MVIKotlin и Reaktive. Любит открытый исходный код, MVI, Rx, Kotlin Multiplatform и тесты.
Краев Александр из LENTA:U TECH делится опытом перевода UIKit-вого таб-бара на TabView со всеми подводными камнями: когда у вас есть экраны, написанные как на Swift UI, так и на UIKit.
Трудоустройство на позицию Android-разработчика: разбор трёх реальных историй успеха.
Дженерики в Swift на примерах: как и когда использовать.
Передача Context во ViewModels: почему так лучше не делать?
Разбираемся с использованием Proxyman для отладки сетевых запросов в iOS-приложении.
Compose End to End тестирование: разбор большинства кейсов, необходимых для покрытия Android-приложения UI тестами.
Реализация трансформации между различными формами значков в iOS-приложении.
Библиотеки
Multiliner — Xcode-расширение, которое выполняет одну функцию — расширяет длинные строки.
X-SwiftFormat — простое и поддерживаемое Xcode-расширение для форматирования кода на Swift.
Разное
Какой тон использовать в предложениях в обзорах кода?
🎙️📹 Как стать IT-блогером: подробный гайд для начинающих 🖥️ Бережем зрение: ТОП-15 мониторов для программиста
Обратная сторона работы в американском стартапе, который, вероятнее всего, провалился из-за токсичной команды. Читать в Твиттере, Читать, если Твиттер не открывается.
***
Предыдущие выпуски
📰 Weekly #6: новости, подкасты, отборные статьи и обучающие материалы по Python, Data Science, Go, C# и C/C++
📰 Weekly #4: новости, подкасты, отборные статьи и обучающие материалы по Python, Data Science, Go, C# и C/C++
📰 Weekly #2: новости, подкасты, отборные статьи и обучающие материалы по Python, Data Science, Go, C# и C/C++