Forwarded from Tetiana Bukhanova
Вже готовий топ-3 доповідей онлайн-конференції JavaScript fwdays'20 від 21 березня за голосуванням учасників 🤩
1️⃣ @koorchik "Effective NodeJS Application Development"
2️⃣ Олександр Мостовенко " 'Devide et impera' with GraphQL and SSR"
3️⃣ @tshemsedinov "Web Locks API in Node.js and browser"
Посилання на доповіді:
👉 https://www.youtube.com/playlist?list=PLPcgQFk9n9y9jbWCnublMA1D2qbJPLukf
1️⃣ @koorchik "Effective NodeJS Application Development"
2️⃣ Олександр Мостовенко " 'Devide et impera' with GraphQL and SSR"
3️⃣ @tshemsedinov "Web Locks API in Node.js and browser"
Посилання на доповіді:
👉 https://www.youtube.com/playlist?list=PLPcgQFk9n9y9jbWCnublMA1D2qbJPLukf
YouTube
JavaScript fwdays'20 online March 21 - YouTube
🗻 Изначально мы в Evo писали в основном на Python. Позже подтянулись JavaScript, Go, Java/Kotlin, ObjC/Swift. Вместе с финтех-направлении теперь есть и Scala.
Наш лучший специалист Виталий Гонта на онлайн-конференции Scala.Ua рассказывает про Scala 3
https://www.youtube.com/watch?v=S2a57ddG5wQ
#scala
Наш лучший специалист Виталий Гонта на онлайн-конференции Scala.Ua рассказывает про Scala 3
https://www.youtube.com/watch?v=S2a57ddG5wQ
#scala
YouTube
Vitalii Honta at #ScalaUA - Scala 3 in action
Vitalii Honta - Scala 3 in action - ScalaUA-2020 Conference
Abstract:
New and shiny Scala 3 is coming soon.
The question is - how will your daily code and libraries look like?
I’ll try to answer it!
Let’s compare an existing library rewritten with Scala…
Abstract:
New and shiny Scala 3 is coming soon.
The question is - how will your daily code and libraries look like?
I’ll try to answer it!
Let’s compare an existing library rewritten with Scala…
Forwarded from DevOps&SRE Library
⚙️ DevOps Days Kyiv from home!
14-16 мая нас ждут три дня докладов и QnA сессии про DevOps Tech & Culture.
💣 Топ спикеры со всего мира:
• Kris Nova – пионер Kubernetes and Chief Open Source Advocate в Sysdig.
• Baruch Sadogursky – Developer Advocate в JFrog с 17 годами технического опыта.
• Liz Fong-Jones – Principal Developer Advocate for SRE & Observability в honeycomb.io
• Niall Murphy – Director of Engineering for Azure Cloud Services в Microsoft
• Kelsey Hightower – Staff Developer Advocate в Google
💬 На третий день мы проведём fireside chat с Kelsey Hightower.
Fireside chat –– это неформальная беседа между спикером и участниками и уникальный шанс задать свой вопрос профессионалу из Google.
😎 А в специальной Zoom Room участники смогут пообщаться друг с другом –– нетворкинг from home.
Когда? 14-16 мая
Где? Online!
👉 Бесплатная регистрация: https://devopsdaysonline.2event.com
Подробнее про DevOps Days Kyiv From Home: https://devopsdays.com.ua/online
⚙️ DevOps Days Kyiv — это комьюнити ивент с акцентом на DevOps Culture. Конференция покрывает темы разработки программного обеспечения, IT инфраструктуры и их взаимосвязи.
14-16 мая нас ждут три дня докладов и QnA сессии про DevOps Tech & Culture.
💣 Топ спикеры со всего мира:
• Kris Nova – пионер Kubernetes and Chief Open Source Advocate в Sysdig.
• Baruch Sadogursky – Developer Advocate в JFrog с 17 годами технического опыта.
• Liz Fong-Jones – Principal Developer Advocate for SRE & Observability в honeycomb.io
• Niall Murphy – Director of Engineering for Azure Cloud Services в Microsoft
• Kelsey Hightower – Staff Developer Advocate в Google
💬 На третий день мы проведём fireside chat с Kelsey Hightower.
Fireside chat –– это неформальная беседа между спикером и участниками и уникальный шанс задать свой вопрос профессионалу из Google.
😎 А в специальной Zoom Room участники смогут пообщаться друг с другом –– нетворкинг from home.
Когда? 14-16 мая
Где? Online!
👉 Бесплатная регистрация: https://devopsdaysonline.2event.com
Подробнее про DevOps Days Kyiv From Home: https://devopsdays.com.ua/online
⚙️ DevOps Days Kyiv — это комьюнити ивент с акцентом на DevOps Culture. Конференция покрывает темы разработки программного обеспечения, IT инфраструктуры и их взаимосвязи.
🌚 Пару дней назад у Facebook была глобальная проблема, когда приложения, использовавшее Facebook iOS SDK не могли загрузится. Бекенд отправлял невалидные данные, SDK не могло их обработать и падало.
Какие риски у подобных SDK и что с ними можно сделать в своем блоге размышляет Guilherme Rambo
https://rambo.codes/posts/2020-05-07-the-big-facebook-crash
#ios
Какие риски у подобных SDK и что с ними можно сделать в своем блоге размышляет Guilherme Rambo
https://rambo.codes/posts/2020-05-07-the-big-facebook-crash
#ios
Rambo Codes
The big Facebook crash of 2020 and the problem of third-party SDK creep | Rambo Codes
Gui Rambo writes about his coding and reverse engineering adventures.
📱 На вчерашнем внутреннем митапе для разработчиков наш лучший специалист, iOS-разработчик Алексей Гузенко рассказал о Flutter.
Мы у себя пробовали на нем сделать небольшой MVP. Получили позитивный опыт. Собрать минимальный продукт для проверки гипотезы за неделю-две - без проблем. Легко разобраться и начать писать, удобные тулзы, выглядит нативно. Как будет вести себя на больших проектах пока непонятно.
https://youtu.be/ebkvDD-j5uc
#flutter
Мы у себя пробовали на нем сделать небольшой MVP. Получили позитивный опыт. Собрать минимальный продукт для проверки гипотезы за неделю-две - без проблем. Легко разобраться и начать писать, удобные тулзы, выглядит нативно. Как будет вести себя на больших проектах пока непонятно.
https://youtu.be/ebkvDD-j5uc
#flutter
YouTube
EvoDevClub: Flutter Intro, 07.05.20
Алексей Гузенко про Flutter
Презентация: https://docs.google.com/presentation/d/1ktL7dvfcEyk7Y8V5bJoBpOEoxDSkEWYglOVMrzJyFpM/edit?usp=sharing
Наш телеграм-канал для разработчиков https://xn--r1a.website/evodevclub
Презентация: https://docs.google.com/presentation/d/1ktL7dvfcEyk7Y8V5bJoBpOEoxDSkEWYglOVMrzJyFpM/edit?usp=sharing
Наш телеграм-канал для разработчиков https://xn--r1a.website/evodevclub
Walmart Labs в своем блоге описали миссию, цели и принципы работы своей команды Платформы.
Как по мне многословно, но хорошо описано зачем нужна такая команда, что и как ей делать. И хотя на словах все понятно, даже в чем-то очевидно, сделать действительно продуктивную команду Платформы непростая задача.
https://medium.com/walmartlabs/building-a-platform-team-d915221d5654
#team
Как по мне многословно, но хорошо описано зачем нужна такая команда, что и как ей делать. И хотя на словах все понятно, даже в чем-то очевидно, сделать действительно продуктивную команду Платформы непростая задача.
https://medium.com/walmartlabs/building-a-platform-team-d915221d5654
#team
Medium
Building a Platform Team — Laying the Foundations
The “Why”, “What” & “How” of building a Platform team.
🦕 Вышел первый релиз Deno - рантайм для JS/TS от одного из авторов NodeJS, со слегка новаторским подходом к безопасноти, зависимостям и другими интересными идеями.
https://deno.land/v1
https://blog.logrocket.com/deno-1-0-what-you-need-to-know/
https://www.freecodecamp.org/news/the-deno-handbook/
В твиттере радуются, что у NodeJS появился конкурент. Вспоминают yarn, из-за которого npm начал шевелиться и постят что у deno получилось хорошо сразу
https://twitter.com/rauchg/status/1260705167592157185?s=21
https://twitter.com/roebuk/status/1260879896022220804?s=20
https://twitter.com/MrAhmadAwais/status/1260712169525608452?s=20
#typescript #javascript #node #deno
https://deno.land/v1
https://blog.logrocket.com/deno-1-0-what-you-need-to-know/
https://www.freecodecamp.org/news/the-deno-handbook/
В твиттере радуются, что у NodeJS появился конкурент. Вспоминают yarn, из-за которого npm начал шевелиться и постят что у deno получилось хорошо сразу
https://twitter.com/rauchg/status/1260705167592157185?s=21
https://twitter.com/roebuk/status/1260879896022220804?s=20
https://twitter.com/MrAhmadAwais/status/1260712169525608452?s=20
#typescript #javascript #node #deno
Небольшая статья о том, как Uber перевел сборку своего Go-монорепозитория на Bazel.
Самое интересное для меня здесь - график роста контирбуторов в эту монорепу от 10 до 1000 человек за 2 года. В таких случаях хочешь решение, которое собирает в первую очередь твой код, а не чувака из отдела, о существовании которого ты даже не подозреваешь.
https://eng.uber.com/go-monorepo-bazel/
#golang #microservices
Самое интересное для меня здесь - график роста контирбуторов в эту монорепу от 10 до 1000 человек за 2 года. В таких случаях хочешь решение, которое собирает в первую очередь твой код, а не чувака из отдела, о существовании которого ты даже не подозреваешь.
https://eng.uber.com/go-monorepo-bazel/
#golang #microservices
🥡 На Mozilla Hacks вышла статья о том, как Firefox обновил движок регекспов.
Разработчики SpiderMonkey еще в 2014 году взяли Irregexp, используемый в V8. Но он был достаточно сильно завязан на особенности реализации самого V8.
Тогда мозиловцы взяли код, переписали необходимые куски под свои особенности и жили так несколько лет. Со временем их форк стал отставать от версии в V8, поддерживать свой становилось все сложнее. Тогда ребята решили зайти с новой попытки: взять свежую версию Irregexp, и сделать отдельный слой, абстрагирующий разницу между SpiderMonkey и V8.
Попутно починили пару багов, Irregexp получил новых контрибуторов, у сообщества теперь более переносимый движок регекспов.
https://hacks.mozilla.org/2020/06/a-new-regexp-engine-in-spidermonkey/
#javascript
Разработчики SpiderMonkey еще в 2014 году взяли Irregexp, используемый в V8. Но он был достаточно сильно завязан на особенности реализации самого V8.
Тогда мозиловцы взяли код, переписали необходимые куски под свои особенности и жили так несколько лет. Со временем их форк стал отставать от версии в V8, поддерживать свой становилось все сложнее. Тогда ребята решили зайти с новой попытки: взять свежую версию Irregexp, и сделать отдельный слой, абстрагирующий разницу между SpiderMonkey и V8.
Попутно починили пару багов, Irregexp получил новых контрибуторов, у сообщества теперь более переносимый движок регекспов.
https://hacks.mozilla.org/2020/06/a-new-regexp-engine-in-spidermonkey/
#javascript
Mozilla Hacks – the Web developer blog
A New RegExp Engine in SpiderMonkey
Regular expressions – commonly known as RegExps – are a powerful and heavily used tool for manipulating strings in JavaScript. This post describes how we updated the RegExp engine in ...
🍀Рич Хики, автор Clojure, написал 46-страничную историю своего главного продукта. От идеи, деталей реализации и до успеха среди пользователей и влиянии этого на язык.
https://clojure.org/about/history
#clojure
https://clojure.org/about/history
#clojure
Forwarded from addmeto
Cloudflare TV это новый эксперимент, хотя больше похоже на вполне понятный проект: это телеканал онлайн на котором целый день, 24 часа в сутки будут идти интересные технические и технологические новости, интервью, выступления и презентации. Я было отнесся к этому формату скептически, но вы посмотрите на их расписание на ближайшую неделю.
По сути это проект масштабной непрекращающейся технологической конференции онлайн, правда без интерактива. Но со всеми фокусами телеканала - повторами популярного материала, возможностью выбрать лучших спикеров и тп. https://cloudflare.tv/schedule
По сути это проект масштабной непрекращающейся технологической конференции онлайн, правда без интерактива. Но со всеми фокусами телеканала - повторами популярного материала, возможностью выбрать лучших спикеров и тп. https://cloudflare.tv/schedule
cloudflare.tv
Schedule - Cloudflare TV
Check what's next on Cloudflare TV! Our 24x7 live stream focused on general and technical topics related to building a better Internet.
🎯 Команда разработки Dart показала как будет выглядеть null-safety.
1. По-умолчанию все объекты non-nullable
2. Null safety is sound. Как там правильно переводить sound в контексте типизации? На практике это означает, что компилятор умеет отслеживать возможные пути выполнения кода и не даст вернуть
3. Для описания полей класса используется новое ключевое слово
Говорят, один из главных минусов языка теперь в прошлом. Ну посмотрим.
https://medium.com/dartlang/announcing-sound-null-safety-defd2216a6f3
#dart
1. По-умолчанию все объекты non-nullable
2. Null safety is sound. Как там правильно переводить sound в контексте типизации? На практике это означает, что компилятор умеет отслеживать возможные пути выполнения кода и не даст вернуть
null там, где ожидается не-null значение3. Для описания полей класса используется новое ключевое слово
late, которое означает non-null, но позже, например в конструкторе класса.Говорят, один из главных минусов языка теперь в прошлом. Ну посмотрим.
https://medium.com/dartlang/announcing-sound-null-safety-defd2216a6f3
#dart
Medium
Announcing sound null safety
Make your apps more stable and performant with Dart’s null safety
Архитектор без постоянного заземления на реальные проблемы проекта постепенно улетает в безнадежный мрак молчаливого космоса ¯\_(ツ)_/¯
Forwarded from Человек и машина
Проработав без малого квартал в должности архитектора (а не инженера-архитектора, как раньше), я начал понимать своих коллег по цеху, со снисхождением и презрением относящих к этой работе.
Я продолжаю придерживаться тех же взглядов, что и всегда: архитектор, как отдельная должность - абсолютно бесполезная трата денег. Это роль, которую могут брать на себя один или более человек, совмещая ее с основной деятельностью (разработкой, управлением продуктом, you name it).
В своем предпоследнем посте я обращаю внимание на то, как меняется работа человека в момент, когда он тратит в почтовом клиенте больше времени, чем в терминале или редакторе кода. Я не шутил, когда говорил, что лишь огромный балласт из непрочитанных книг, Hackerrank и нехватка рук у инженерных групп помогают мне оставаться в форме. Я осознаю свои обязательства перед клиентом и не намерен его подводить из-за неправильного архитектурного решения.
Однако я вижу, что неприемлемо малое количество архитекторов поступает подобным образом. Более того, если (бес-)"полезность" разработчика видна практически сразу, то архитектору удается оставаться некомпетентным лодырем очень долгое время, и последствия этого выявляются вовсе нескоро.
Если вообще выявляются.
Я продолжаю придерживаться тех же взглядов, что и всегда: архитектор, как отдельная должность - абсолютно бесполезная трата денег. Это роль, которую могут брать на себя один или более человек, совмещая ее с основной деятельностью (разработкой, управлением продуктом, you name it).
В своем предпоследнем посте я обращаю внимание на то, как меняется работа человека в момент, когда он тратит в почтовом клиенте больше времени, чем в терминале или редакторе кода. Я не шутил, когда говорил, что лишь огромный балласт из непрочитанных книг, Hackerrank и нехватка рук у инженерных групп помогают мне оставаться в форме. Я осознаю свои обязательства перед клиентом и не намерен его подводить из-за неправильного архитектурного решения.
Однако я вижу, что неприемлемо малое количество архитекторов поступает подобным образом. Более того, если (бес-)"полезность" разработчика видна практически сразу, то архитектору удается оставаться некомпетентным лодырем очень долгое время, и последствия этого выявляются вовсе нескоро.
Если вообще выявляются.
Medium
My Tech career is shifting — and I am happy with that
What makes my current role different? I talk a lot.
📊 Наткнулся на Penrose - система автоматической генерации диаграм из математических нотаций.
Идея в том, чтобы рисовать не примитивы - круги, стрелки и т.д., а визуально представлять математическое выражение, что может быть полезно исследователям или студентам.
Изображение генерируется из выражений на специальном constraint-based языке, а затем оптимизируется (выравнивается, балансируется и т.д.) с помощью численных методов. Сложно объяснить, на видео гораздо понятнее.
После такого описания уже не удивляешься, что написано на Хаскеле плюс немножко Тайпскрипта.
#haskell #math
Идея в том, чтобы рисовать не примитивы - круги, стрелки и т.д., а визуально представлять математическое выражение, что может быть полезно исследователям или студентам.
Изображение генерируется из выражений на специальном constraint-based языке, а затем оптимизируется (выравнивается, балансируется и т.д.) с помощью численных методов. Сложно объяснить, на видео гораздо понятнее.
После такого описания уже не удивляешься, что написано на Хаскеле плюс немножко Тайпскрипта.
#haskell #math
penrose.cs.cmu.edu
Penrose: from mathematical notation to beautiful diagrams
Materials from our SIGGRAPH '20 paper.
🐹 Докладывают наши лучшие специалисты на go.
Пришел апдейт по дженерикам https://blog.golang.org/generics-next-step:
- на контракты забили
- говорят новый design draft сильно понятнее и проще
- выпустили тулзу, которая позволяет пописать на go с generic’ми прямо сейчас. Она просто транслирует код в обычный код без дженериков. В релизе все будет работать по другому.
- они (go team) все еще задаются вопросом нужны ли дженерики, в т.ч. есть шансы, что они могут так и не появиться
- самый ранний релиз, в котором могут появиться — go 1.17, август 2021
stay tuned 🍿
#golang
Пришел апдейт по дженерикам https://blog.golang.org/generics-next-step:
- на контракты забили
- говорят новый design draft сильно понятнее и проще
- выпустили тулзу, которая позволяет пописать на go с generic’ми прямо сейчас. Она просто транслирует код в обычный код без дженериков. В релизе все будет работать по другому.
- они (go team) все еще задаются вопросом нужны ли дженерики, в т.ч. есть шансы, что они могут так и не появиться
- самый ранний релиз, в котором могут появиться — go 1.17, август 2021
stay tuned 🍿
#golang
go.dev
The Next Step for Generics - The Go Programming Language
An updated generics design draft, and a translation tool for experimentation
💥В 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…