💥В Python 3.10 может появиться паттерн-матчинг
https://www.python.org/dev/peps/pep-0622/
Мотивация: чаще всего builtin
#python
https://www.python.org/dev/peps/pep-0622/
Мотивация: чаще всего builtin
isinstance в Python используют в контексте if isinstance(a, A): ... elif isinstance(a, B): .... Решили эту конструкцию упростить и сделать более читабельной. Предлагается синтаксис для матчинга с литералами, константами и деструктуризацией объектов:match node:Если этот PEP примут, это будет первая фича, которая будет использовать возможности нового парсера python. Среди авторов Гвидо и Иван Левкивский.
case Node(children=[LParen(), RParen()]):
return True
case Node(children=[Leaf(value="("), Node(), Leaf(value=")")]):
return True
case _:
return False
#python
Python Enhancement Proposals (PEPs)
PEP 622 – Structural Pattern Matching | peps.python.org
This PEP proposes to add a pattern matching statement to Python, inspired by similar syntax found in Scala, Erlang, and other languages.
🐚 О, новость про Перл, анонсировали 7ю версию.
https://www.perl.com/article/announcing-perl-7/
#perl #perl #perl
Perl 7 is going to be Perl 5.32, mostlyИ ради чего столько лет мучений?
https://www.perl.com/article/announcing-perl-7/
#perl #perl #perl
Perl.com
Announcing Perl 7
Perl 5 with modern defaults
🏝 Автор Redis Сальваторе Санфилиппо уходит с поста главного мейнтейнера и контрибутора и передает проект своим коллегам, которые больше всего помогали ему.
http://antirez.com/news/133
Поскольку раньше процесса принятия решений о проекте, кроме мнения самого Сальваторе, не было, перед новыми мейнтейнерами и сообществом Редиса стоит задача придумать модель, как дальше все это развивать. Они об этом пишут тут
Сам Сальваторе планирует больше времени тратить на хобби, например записывать обучающие видосы на ютуб ¯\_(ツ)_/¯
#redis
http://antirez.com/news/133
Поскольку раньше процесса принятия решений о проекте, кроме мнения самого Сальваторе, не было, перед новыми мейнтейнерами и сообществом Редиса стоит задача придумать модель, как дальше все это развивать. Они об этом пишут тут
Сам Сальваторе планирует больше времени тратить на хобби, например записывать обучающие видосы на ютуб ¯\_(ツ)_/¯
#redis
Redis
New Governance for Redis | Redis
Redis open source project leaders Yossi Gottlieb and Oran Arga share the new community-driven governance structure for how Redis will be managed going forward.
📦 Вышел отчет-сравнение разных фронтендных сборщиков
https://bundlers.tooling.report/ от авторов web.dev
В обзор попали webpack, rollup, parcel и browserify. Параметров сравнения много: умение в код-сплиттинг, принимаемые форматы модулей, какие форматы модулей умеет продюсить, хеширование, как работает с не js-ресурсами.
В общем зачете побеждает rollup, но отрыв небольшой. Все инструменты делают все примерно одинаково. Вряд ли вы из этого отчета будете принимать решение о переходе на другой сборщик. Но посмотреть на подход к анализу все равно любопытно.
#javascript
https://bundlers.tooling.report/ от авторов web.dev
В обзор попали webpack, rollup, parcel и browserify. Параметров сравнения много: умение в код-сплиттинг, принимаемые форматы модулей, какие форматы модулей умеет продюсить, хеширование, как работает с не js-ресурсами.
В общем зачете побеждает rollup, но отрыв небольшой. Все инструменты делают все примерно одинаково. Вряд ли вы из этого отчета будете принимать решение о переходе на другой сборщик. Но посмотреть на подход к анализу все равно любопытно.
#javascript
tooling.report
Overview | Tooling.Report
A quick and easy way to figure out what the best tool for your next project is, if it’s worth your time to migrate from one tool to another and how to adopt a best practice into your existing code base. Brought to you by web.dev
🔷 WalmartLabs (тех.отдел крупнейшего американского ритейлера) начинают серию статей о своем пути в микросервисы.
Уже есть первая статья про построение DDD-микросервисов. Еще обещают написать про построение команд, их подходам к гибким сервисам, высоконагруженным сервисам, CI/CD и тестированию.
#microservices
Уже есть первая статья про построение DDD-микросервисов. Еще обещают написать про построение команд, их подходам к гибким сервисам, высоконагруженным сервисам, CI/CD и тестированию.
#microservices
Medium
Tech Modernization at scale — Blog Series
Platform refactoring initiatives go by various grandiose terms — Platform modernization, Tech refresh, Agile transformation, and DevOps…
📚Огромный список литературы по ML от DeepMind
https://storage.googleapis.com/deepmind-media/research/New_AtHomeWithAI%20resources.pdf
На любой вкус: курсы, видео-лекции, whitepapers; для новичков и продвинутых; ML, Reinforcement Learning, этика AI, безопасность, робототехника.
#ml
https://storage.googleapis.com/deepmind-media/research/New_AtHomeWithAI%20resources.pdf
На любой вкус: курсы, видео-лекции, whitepapers; для новичков и продвинутых; ML, Reinforcement Learning, этика AI, безопасность, робототехника.
#ml
🌉 Кажется, такие статьи пишут специально, чтобы их потом по полтора часа обсуждали в техно-подкастах. Очень флеймообразующий наброс: софт должен быть построен на века, поэтому не используйте библиотеки. Вот строители мостов не используют же библиотеки!
Автор даже аргументировать пытается и часть даже логична. Но вот это вот "там мосты, а у нас костыли"? В медицине, транспорте, других критичных местах действительно сильно меньше внешних зависимостей. Хорошо, что большинство разработчиков заняты вопросами попроще. Зачем себя мучать?
https://adlrocha.substack.com/p/adlrocha-software-should-be-designed
#programming
Автор даже аргументировать пытается и часть даже логична. Но вот это вот "там мосты, а у нас костыли"? В медицине, транспорте, других критичных местах действительно сильно меньше внешних зависимостей. Хорошо, что большинство разработчиков заняты вопросами попроще. Зачем себя мучать?
https://adlrocha.substack.com/p/adlrocha-software-should-be-designed
#programming
@adlrocha Weekly Newsletter
@adlrocha - Software should be designed to last
And why I am trying to minimize my dependence on external libraries (whenever possible).
🦄 Хотите небольшой привкус golang или даже deno в Python? Держите githubimport.
Добавляет хук к импорту, который позволяет прямо из интерпретатора импортировать код с гитхаба
Упоминают еще модуль httpimport, который умеет это же, но без каноничного синтаксиса импортов, зато с поддержкой Gitlab/BitBucket
#python
Добавляет хук к импорту, который позволяет прямо из интерпретатора импортировать код с гитхаба
>>> import githubimporthttps://gist.github.com/MineRobber9000/998fe8c5a183fa2649f937c9d2e0b8b0
>>> from MineRobber9000.test_modules import blah
>>> blah.foo()
"bar"
Упоминают еще модуль httpimport, который умеет это же, но без каноничного синтаксиса импортов, зато с поддержкой Gitlab/BitBucket
#python
Gist
Import Python modules from GitHub
Import Python modules from GitHub. GitHub Gist: instantly share code, notes, and snippets.
🎪 Куча забавных, а иногда и опасных, нюансов SQLite. Тут и приведение типа по-тихому, да и сами типы могут называться как угодно, и баг, который очевидно баг, но на него уже столько завязано, что исправлять уже поздно.
Не зря автор называет SQLIte джаваскриптом от баз данных
https://threadreaderapp.com/thread/1279522137754255360.html
#databases
Не зря автор называет SQLIte джаваскриптом от баз данных
https://threadreaderapp.com/thread/1279522137754255360.html
#databases
Threadreaderapp
Thread by @vdbv on Thread Reader App
@vdbv: Сегодня я случайно решил почитать документацию по SQLite. Я офигел и прозрел. Если вкратце, то SQLite — это такой джаваскрипт в мире баз данных. Тред с весёлыми запросами в консоли: 1. В SQLite, как и в любой...…
🔠 Релиз GPT-3 от OpenAI вызвал бурю восторгов. В Твиттере постили скринкасты реакт-приложений, которые генерились с помощью GPT-3 по текстовому описанию вроде "покажи приложение с двумя кнопками: добавить 3 доллара, убрать 5 долларов и покажи мой счет". И оно работает!
Но, разумеется, не все так просто. Тут хороший вдумчивый анализ потенциальных возможностей и рисков использования GPT-3. Реакт-разработчики могут выдыхать, они пока еще нужны.
https://minimaxir.com/2020/07/gpt3-expectations/
Но, разумеется, не все так просто. Тут хороший вдумчивый анализ потенциальных возможностей и рисков использования GPT-3. Реакт-разработчики могут выдыхать, они пока еще нужны.
https://minimaxir.com/2020/07/gpt3-expectations/
Minimaxir
Tempering Expectations for GPT-3 and OpenAI’s API
GPT-3 is indeed a large step forward for AI text-generation, but there are very many caveats with the popular demos and use cases.
🏝 JetBrains признали что текущая реализация автоматического управления памятью в Kotlin/Native не идеальна и взялись за разработку новой. Обещают решить проблему с object sharing между потоками и связанными с этим утечками. При этом мехенизм "заморозки" объектов останется
#kotlin
“as a safety mechanism for race-free data sharing”
https://blog.jetbrains.com/kotlin/2020/07/kotlin-native-memory-management-roadmap/#kotlin
The JetBrains Blog
Kotlin/Native Memory Management Roadmap | The Kotlin Blog
TL;DR: The current automatic memory management implementation in Kotlin/Native has limitations when it comes to concurrency and we are working on a replacement. Existing code will continue to work and
Forwarded from Вебня (Sergey Rubanov)
В блоге WebKit появилась огроменная и наикрутейшая статья о спекулятивных оптимизациях вообще и о таковых в движке JavaScriptCore. Если Вам интересны компиляторы, внутреннее устройство JavaScript движков, то Вы обязаны осилить это прекраснейшее чтиво, но учтите, это будет непросто!
https://webkit.org/blog/10308/speculation-in-javascriptcore/
https://webkit.org/blog/10308/speculation-in-javascriptcore/
WebKit
Speculation in JavaScriptCore
This post is all about speculative compilation, or just speculation for short, in the context of the JavaScriptCore virtual machine.
🏆 Золотой фонд выступлений evodevclub
Перезалил докарантинные доклады наших лучших специалистов:
- Сергей Сафонов про код ревью, как его проводить, как лучше подготовиться
- Александр Казанцев сделал обзорный доклад про Nest.js
#video
Перезалил докарантинные доклады наших лучших специалистов:
- Сергей Сафонов про код ревью, как его проводить, как лучше подготовиться
- Александр Казанцев сделал обзорный доклад про Nest.js
#video
YouTube
EvoDevClub: Code Review
Наш лучший специалист Сергей Сафонов делится опытом проведения Code review:
- Зачем это нужно? Как мы это делаем?
- Подходы к Code Review
- Подготовка к проверке хорошего кода
- Code Review Driven Development
- Git при Code Review
Презентация: https://d…
- Зачем это нужно? Как мы это делаем?
- Подходы к Code Review
- Подготовка к проверке хорошего кода
- Code Review Driven Development
- Git при Code Review
Презентация: https://d…
⚱️ За август Quay.io пару раз заметно полежала.
Разработчики написали постмортем, в котором описали как выявлять проблему, про приоритеты при падении сервиса и про (спойлер) "некритичный функционал, который мало кто использует".
https://www.openshift.com/blog/about-the-quay.io-outage-post-mortem (перевод)
#postmortem
Разработчики написали постмортем, в котором описали как выявлять проблему, про приоритеты при падении сервиса и про (спойлер) "некритичный функционал, который мало кто использует".
https://www.openshift.com/blog/about-the-quay.io-outage-post-mortem (перевод)
#postmortem
Redhat
About the Quay.io Outage: Post Mortem
A deep dive into how we found and fixed an issue on Quay.io
🎰 Через 10 минут на нашем ютуб канале будет доклад про Kotlin Multiplatform в одном из наших мобильных приложений
https://youtu.be/qn-OgYbRJFk
#kotlin #video
https://youtu.be/qn-OgYbRJFk
#kotlin #video
👨💻 Что-то затянулась пауза на нашем канале. Давайте возвращаться в строй.
JetBrains выкатили роадмап развития котлина. Собраны главные направления, по которым работает команда создателей.
Из интересного:
- Поддержка свежих JVM записей (records) и sealed classes
- Бутстрап компилятора
- Развитие Kotlin Mulitplatform Mobile
https://kotlinlang.org/roadmap.html
#kotlin
JetBrains выкатили роадмап развития котлина. Собраны главные направления, по которым работает команда создателей.
Из интересного:
- Поддержка свежих JVM записей (records) и sealed classes
- Бутстрап компилятора
- Развитие Kotlin Mulitplatform Mobile
https://kotlinlang.org/roadmap.html
#kotlin
💎 Неожиданно глубокая статься про жизнь с монолитом от Shopify. Огромное количество мыслей о развитии легаси кодовых баз, внедрении системных изменений, о подходах, тулзах.
А это, наверное, мой главный вывод в разработке за 10 лет:
Крайне рекомендую почитать
https://engineering.shopify.com/blogs/engineering/shopify-monolith
#architechture
А это, наверное, мой главный вывод в разработке за 10 лет:
In my experience, all large architecture changes end up in an incomplete state. Maybe that’s a pessimistic view, but my experience tells me that the temporary incomplete state will at least last longer than you expect. So choose an approach based on which intermediary state is most useful for your specific situation.Другими словами у самурая нет цели, только путь
Крайне рекомендую почитать
https://engineering.shopify.com/blogs/engineering/shopify-monolith
#architechture
🐍 Пару дней назад вышел релиз Python 3.9. Уже даже инфографика с нововведениями есть
https://docs.python.org/release/3.9.0/whatsnew/3.9.html
UPD: Все, кто нашли ошибку на картинке получают ачивку "Орлиный глаз 🦅". Вариант без ошибки можно найти в наших комментариях. Спасибо дорогим читателям!
#python
https://docs.python.org/release/3.9.0/whatsnew/3.9.html
UPD: Все, кто нашли ошибку на картинке получают ачивку "Орлиный глаз 🦅". Вариант без ошибки можно найти в наших комментариях. Спасибо дорогим читателям!
#python
🚝 Через 10 минут онлайн-доклад "Монорепозитории NX и Lerna, или Туда и обратно" от нашего лучшего специалиста Сергея Сафонова. Присоединяйтесь!
https://www.youtube.com/watch?v=7la-K9C2LIo&feature=youtu.be
Текстовая версия доклада на хабре: https://habr.com/ru/post/520186/
#video #javascript
https://www.youtube.com/watch?v=7la-K9C2LIo&feature=youtu.be
Текстовая версия доклада на хабре: https://habr.com/ru/post/520186/
#video #javascript
YouTube
EvoDevClub: Монорепозитории NX и Lerna, или Туда и обратно
Наш лучший специалист Сергей Сафонов рассказывает об использовании NX и Lerna для работы с монорепозиториями
Текстовая версия на Хабре: https://habr.com/ru/post/520186/
Наш телеграм-канал для разработчиков https://xn--r1a.website/evodevclub
Текстовая версия на Хабре: https://habr.com/ru/post/520186/
Наш телеграм-канал для разработчиков https://xn--r1a.website/evodevclub
Все наши сервисы мы разрабатываем с использованием фичер-флагов. Это сильно развязывает руки. Как минимум релиз нововведений в продукт меньше зависит от деплоя, а дальше и тестирование на части пользователей, возможность все по-быстрому свернуть и т.д.
Оказывается, есть целый сайт, посвященный теме фичер-флагов. Не слишком свежий, но от этого не менее полезный
https://featureflags.io/
#architecture
Оказывается, есть целый сайт, посвященный теме фичер-флагов. Не слишком свежий, но от этого не менее полезный
https://featureflags.io/
#architecture
FeatureFlags
Feature Flags, Toggles, Controls – The Hub for Feature Flag Driven Development | FeatureFlags
LaunchDarkly provides simple, scalable feature flag & toggle management (feature management) for the modern enterprise. Eliminate risk, deliver value.
Короткий обзор нововведений в PHP8. Я очень далек от этой экосистемы, вообще пропустил, что там несется с типами. А несется, похоже, стремительно.
https://stitcher.io/blog/php-8-before-and-after
Новые event subscribers которые, очень похожие на питоньи декораторы, но с синтаксисом, который больше похож на ObjectiveC. Синтаксический сахар в дефинициях классов и энамов. Делают новый синтаксис для union нескольких типов, как в TypeScript. И nullsafe оператор, вроде того, что недавно в JS появился, а у рубистов с первых дней.
#php #изучаемпхппоченджлогам
https://stitcher.io/blog/php-8-before-and-after
Новые event subscribers которые, очень похожие на питоньи декораторы, но с синтаксисом, который больше похож на ObjectiveC. Синтаксический сахар в дефинициях классов и энамов. Делают новый синтаксис для union нескольких типов, как в TypeScript. И nullsafe оператор, вроде того, что недавно в JS появился, а у рубистов с первых дней.
#php #изучаемпхппоченджлогам
stitcher.io
The impact of PHP 8 on my code