07 февраля 2023

📰 Weekly #22: новости, подкасты, отборные статьи и обучающие материалы по Python, Data Science, Go, C#, C/C++ и мобильной разработке

Пишу об IT и на Python. kungurov.net
В этом выпуске: чем крут Unreal Engine 5; как научить Алису отправлять почту; линейная алгебра в Python; оптимизация передачи больших файлов в Linux с помощью Go; объяснение многопоточности в iOS на туалетах и многое другое.
📰 Weekly #22: новости, подкасты, отборные статьи и обучающие материалы по Python, Data Science, Go, C#, C/C++ и мобильной разработке

Python

Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека питониста»

Data Science

Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека data scientist’а»

Go

Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека Go разработчика»
  • Теоретический и практический гайд по работе с пакетом database/sql в Go на примере PostgreSQL. Читать
  • Владимир Балун, ведущий разработчик в Ozon, собеседует другого Go-разработчика.🎬 Смотреть
  • Знаете ли вы, что в Go вы можете писать исполняемые примеры? Они автоматически включаются в документацию пакета, их можно запускать непосредственно в веб-браузере, а также они автоматически проверяются каждый раз, когда вы запускаете gotest. Подробнее
  • Детали работы с net.IP и netip.Addr в Go: все не так просто, как кажется. Читать
  • ⚙️ graph библиотека для создания графовых структур данных и выполнения операций над ними.
  • Опыт перехода с C++ на Go: Владимир Балун рассказывает, как строился его переход на Go и как в будущем он смог найти работу.🎬Смотреть
  • Подборка туториалов по различным аспектам Go для пополнения коллекции обучающих материалов. Читать
  • 👩‍💻 5 простых шорткатов GoLand для повышения вашей производительности. Читать
  • Данила Проценко, Lead Software Architect в «Лаборатории Касперского», рассказывает о том, как во множестве микросервисов и просто сервисов можно стандартизировать структуру кода и сделать ее понятнее для всех. Читать
  • Яркий участник Go-сообщества Jonathan Hall делится десятью аспектами, которыми он не совсем доволен в языке:
    1. Exported package variables
    2. http.Handler doesn't return an error
    3. No pointers to literals
    4. Loop variables
    5. Naked returns
    6. Relative imports
    7. gofmt's format
    8. Comment directives
    9. Array vs. Slice terminology
    10. Pure functions
    🎬 Смотреть
  • Миграция с Node.js, Python или Rust на Go. В целом довольно бестолковый гайд, но какие-то советы почерпнуть можно. Читать
  • 🍹⚙️ Mocktail — инструмент, который генерирует строго типизированные моки и обеспечивает простой и понятный синтаксис.Простой инструмент, который потенциально может сэкономить вам много времени, создавая моки вручную, даже если вы используете что-то вроде Testify.🔗 Анонс инструмента🔗 Репозиторий
  • Полное руководство по дженерикам в Go. Несмотря на то, что существует несколько подобных руководств, подробные примеры в течение всей статьи стоят того, чтобы добавить руководство закладки.📌 Читать
  • Команда Ent добавила возможность быстрой визуализации схемы с помощью entviz:👩‍💻 go run -mod=mod ariga.io/entviz ./path/to/ent/schema Подробнее
  • Месяц назад команда СберМаркета вместе с Хабром опросили Go‑разработчиков: чем они живут, над какими задачами работают и где черпают полезную информацию о Go.Под катом читайте основные инсайты, а еще: почему многие Go‑разработчики знают Python, мечтают выучить Rust и многое другое.📈 Читать
  • Начиная с Go 1.20, компилятор Go поддерживает Profile-guided optimization (также называют feedback-directed optimization) для дальнейшей оптимизации сборок. Узнайте подробнее в новом руководстве от команды Go.👇Читать
  • Подборка примеров взаимозаменяемых конструкций и хаков Kotlin/Go. Материал от системного архитектора из SpectrumData для тех, кто пишет на Kotlin, и для кого Go второй язык. Читать
  • «Немного IT» — видеоподкаст про Go от разработчика и архитектора из Evrone. Вы услышите про преимущества/недостатки и погрузитесь в нюансы Go.🎙🎬Смотреть
  • Гайд по профилированию кода на Go для тех, кто использует GoLand и другие встроенные инструменты этой IDE. Читать
  • Улучшение наблюдаемости Go-сервисов. Этот гайд не охватывает основы, а сразу переходит к практике ведению логов, метрик, трассировки с помощью TraceQL, объединения профилирования с трассировкой и многому другому. Читать
  • Вышла третья часть в серии статей об изменениях в Go 1.20. Вы узнаете про некоторые изменения в стандартной библиотеке: math/rand, path/filepath, httputil.ReverseProxy, strings.CutPrefix и другие.👇https://t.me/goproglib/3284
  • Memory Arenas против традиционного управления памятью. Go 1.20 представляет экспериментальную концепцию для управления памятью, которую можно использовать для повышения производительности кода на Go. Узнайте, что это такое, как она работает на практике и многое другое.👇Читать
  • Более 130 докладов, каждый из которых решает конкретную задачу.🎬Смотреть
  • Как использовать AVX-512 в Go через компилятор C: инструменты и кейсы команды Gorse.👇Читать
  • 👩‍💻 Пополняем коллекцию руководств по Go для начинающих: подборка материалов от Влада Тена (пополняется, сейчас в черновом варианте).https://github.com/vladtenlive/gosling
  • Оптимизация передачи больших файлов в Linux с помощью Go: как syscall sendfile и io.Copy() могут помочь сделать передачу файлов более эффективной. Читать
  • Основы обработки ошибок в Go: краткий гайд по созданию кастомных типов ошибок с полезными советами. Читать
  • Примеры использования Go для отслеживания появления твинков (когда один пользователь создает несколько учетных записей на сайте). Читать

C#

Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека шарписта»
  • Использование функционального C# для решения задач из Advent of Code:🗄 Часть 1🗄 Часть 2
  • Читайте традиционный ежегодный отчет команды JetBrains о состоянии экосистемы разработчиков в 2022 году. Много инфографики и полезных мыслей «наподумать».
  • Деплой .NET-приложения в качестве службы systemd с использованием контейнеров. При деплое в Kubernetes упаковка .NET-приложения в качестве контейнера для systemd дает ему преимущества автономности и универсальности. Читать
  • При подборке материалов для публикации нам часто встречаются блоги зарубежных разработчиков, в которых получается выделить самые лучшие статьи и руководства. Иногда так не получается — поэтому ловите ссылку на блог автора книги Solution Architecture with .NET.
  • Евгений Нарышкин (синьор .NET-разработчик) делится опытом использования Serilog для структурного логирования в .NET. Читать
  • Secure keys в .NET: как локально хранить пользовательские конфиденциальные данные с примерами в Rider. Читать
  • Ключевые тенденции для C#-разработчика из того самого опроса от JetBrains. Читать
  • Использование SignalR в Unity. В статье рассмотрены следующие вопросы:— демонстрация подключения библиотеки из NuGet к Unity;— ускорение работы с ассетами;— разбор нескольких частых ошибок при сборке сторонних dll на Android. Читать
  • ⚙️ ZString — zero allocation StringBuilder для .NET Core и Unity. Инструмент от дочерней компании Cygames, специализирующаяся на .NET Core и Unity.https://github.com/Cysharp/ZString
  • Использование .NET-кода из JavaScript с помощью WebAssembly. Начиная с .NET 7, вы можете легко запускать любой метод .NET из JavaScript, не используя всю платформу Blazor.👇Подробнее
  • Ник Чапсас делится советами по увеличению производительности словаря в C#.🎬Смотреть
  • Опыт миграции приложения с Xamarin.Forms на .NET MAUI. Статья в большинстве своем теоретическая, но полезные аспекты для себя почерпнуть можно. Читать
  • ValueTuple в C#: обзор основных аспектов, которые вам нужно знать для эффективного использования новой структуры, представленной в C# 7.0. Читать
  • Davide Bellone делится советом, как не стоит использовать nameof в C#. Читать
  • Базовое введение в машинное обучение в .NET с использованием библиотеки ML.NET. Читать
  • Мутация в GraphQL c использованиtv библиотеки Hot Chocolate: простой гайд для .NET-разработчика. Читать
  • Explicit validation: как новые возможности C# сделали валидацию еще проще. Читать

C/C++

Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека C/C++ разработчика»
  • WG21, также известная как Комитет по стандартам C++, рассылка за январь 2023 г.
  • Высокопроизводительный расширяемый компилятор Python с нулевыми накладными расходами, использующий LLVM.
  • CLion представляет поддержку vcpkg.
  • P1967 и D2752 «Статическое хранилище для initializer_list» теперь находятся в Compiler Explorer.
  • Новый учебный ресурс для библиотек Clang (слайды и примеры кода).
  • Как C++23 меняет то, как мы пишем код – Тимур Думлер – Meeting C++ 2022.
ъ
  • Отказ от поддержки CMake для модулей C++.
  • Просто о RCU (Read–Copy-Update).
  • Отладка редкого сбоя в OpenRCT2.
  • Раскрашивание скобок C++, расширение макросов и многое другое в VS 17.5.
  • CppCast: Val и семантика изменяемых значений.
  • Разрушители легенд C++ – Виктор Чиура.
  • Очень простой, но универсальный игровой цикл на C++ с EnTT.
  • Unreal Engine 5: почему он так крут?
  • Облачный шлюз следующего поколения.

Мобильная разработка

Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека мобильного разработчика»
  • Если вы работами с ChatGPT, наверняка знаете, что качество ответа зависит от корректности и качества входных данных. Узнайте, как iOS-разработчику получить максимальную эффективность от чат-бота с искусственным интеллектом. Читать
  • 👩‍💻 Обзор возможностей ConstraintLayout, самого мощного и гибкого layout в Android.
  • Как графический формат прошлого века привёл к zero-click exploit в iOS. В начале 2022 года Citizen Lab удалось выявить интересный и технически сложный zero-click-эксплойт на основе NSO iMessage. Под катом все детали в переводе команды М.Видео-Эльдорадо. Читать
  • 👩‍💻 От геометрических фигур до произведений искусства: Антон Архипов, Developer Advocate в команде Kotlin, использует Compose и Kotlin для креативной разработки.🎬 Смотреть
  • 📱 3 способа передачи информации из основного таргета приложения в таргет виджетов. В этой статье я расскажу о трех простых способах передачи различной информации из основного таргета приложения в таргет виджетов на примерах с кодом.🔗 Основной сайт🔗 Зеркало
  • 👩‍💻 Интервью с руководителем RuStore о развитии магазина Android-приложений: задачи, консоль разработчика, монетизация, конкуренция с Google Play, предустановка и многое другое.🎬 Смотреть
  • jiska — YouTube-канал Jiska Classen, с помощью которого вы можете погрузиться в реверс iOS-приложений от нуля до профи. Там и видеогайды, и воркшопы, и выступления с конференций.🎬 https://youtube.com/@jiskac
  • Объяснение многопоточности в iOS на туалетах — такого вы еще не видели.🔗 Читать в Твиттере🔗 Читать в Thread Reader App (если Твиттер не открывается)
  • Онлайн-собеседование на тему Jetpack Compose. Два синьор Android-разработчика сравнивают свои навыки и методы работы с Jetpack Compose. Вы увидите, как они решают различные задачи и используют различные компоненты/функции Jetpack Compose.🎬Смотреть
  • Как внедрить KMM в существующие проекты и не пожалеть. Текстовая расшифровка доклада Алексея Михайлова (техдир IceRock Development) на Kolesa Conf 2022, где он делится опытом внедрения КММ в существующий проект, рассказывает про опыт его команды и дает пошаговый гайд. Читать
  • Отчет JetBrains о состоянии экосистемы разработчиков в 2022 году: ключевые тенденции для iOS-разработчика. Читать
  • 😢 Обратная сторона медали: 9 причин, почему тебе не нужно идти в IT.Пессимистично-разоблачающая статья о минусах работы в ИТ-компаниях. Слабонервных просим отойти от экранов.🔗 Основной сайт🔗 Зеркало
  • Алексей Чернякович, разработчик Android App Widgets в мобильном банке Тинькофф, делится проблемами и решениями, которые возникают при разработке виджетов. Читать
  • Отмена фоновой задачи в Swift: правильный путьЕсли вы всегда откладывали этот функционал на завтра, этот день настал.👇Читать
  • Apple выпустила бесплатный курс по SwiftUI и UIKit, топ-5 репозиториев на Swift за 2022 год, UIApplicationMain теперь Deprecated: эти и многие другие новости в дайджесте по iOS- разработке за январь 2023 от канала «Код Воробья».🎬Смотреть
  • Стилизация компонентов в SwiftUI: советы и интересные приемы. Читать
  • Compose Layouts & Modifiers: свежая серия видеоуроков MAD Skills.🎬Смотреть
  • Сокращение времени запуска iOS-приложения на 60%: кейс команды DoorDash. Читать
  • Паттерн «Координатор» в Swift: от концепции до реализации. Читать
  • Диспетчеризация методов в Swift: разбор принципов ее работы для написания более эффективного кода и избежания некоторых неочевидных проблем. Читать
***

Предыдущие выпуски

МЕРОПРИЯТИЯ

Комментарии

ВАКАНСИИ

Добавить вакансию
C# Developer
Москва, по итогам собеседования
DevOps
от 350000 RUB