Gatsby 5: The Fastest Gatsby Yet | Gatsby
Состоялся релиз Gatsby 5.0.0!
Во первых, добавили Slice API, который позволяет выносить переиспользуемые компоненты или решения в отдельный слайсы, что ускоряет инкрементальные билды и деплои в Gatsby Cloud.
Во вторых, добавили частичную гидрацию. Т.е. будут гидрироваться только те компоненты, которые нужны для работы текущего функционала в браузере. Это значительно ускоряет перформанс метрики. Т.к. эта фича построена вокруг React Server Components, то он, как и RSC - пока будет в бете.
Также вышла вторая верся IDE GraphiQL. Это IDE в которой удобно разрабатывать Gatsby сайты и есть встроенная интеграция с GraphQL тулзами.
https://www.gatsbyjs.com/blog/gatsby-5/
#development #javascript #gatsby
Состоялся релиз Gatsby 5.0.0!
Во первых, добавили Slice API, который позволяет выносить переиспользуемые компоненты или решения в отдельный слайсы, что ускоряет инкрементальные билды и деплои в Gatsby Cloud.
Во вторых, добавили частичную гидрацию. Т.е. будут гидрироваться только те компоненты, которые нужны для работы текущего функционала в браузере. Это значительно ускоряет перформанс метрики. Т.к. эта фича построена вокруг React Server Components, то он, как и RSC - пока будет в бете.
Также вышла вторая верся IDE GraphiQL. Это IDE в которой удобно разрабатывать Gatsby сайты и есть встроенная интеграция с GraphQL тулзами.
https://www.gatsbyjs.com/blog/gatsby-5/
#development #javascript #gatsby
Gatsby
Gatsby 5: The Fastest Gatsby Yet | Gatsby
Let's take a look at all of the exciting features that are packaged in Gatsby 5, notably the Slice API and Partial Hydration!
👍4👎3
The hidden cost of complexity
Статья про сложность (complexity) и простоту (simplicity).
Статья сильно разбавлена водой, из-за чего её сложно пересказать в рамках поста в телеге. Но я попытаюсь.
Сложность выглядит впечатлающе, а простота - обыденной (в статье приводится пример с египетскими пирамидами - для захоронения человека есть способы и попроще). Поэтому во многих аспектах жизни люди между простыми и сложными решениями выбирают сложные. Хотя следует наоборот.
Почему нужно выбирать простые решения? Из-за природы складывания сложностей. Если взять 2 сложные вещи и связать их, то в сумме получится намного более сложная система.
Сложность растет экспоненциально. В разработке ПО это особенно заметно - когда система сплошь состоит из сложных вещей, то она сама становится дико сложной. И в случае появления проблем все становится совсем плохо. Поэтому все лучшие практики написания кода, проектирования, создания интерфейсов, организаций, материальных вещей стремятся к простым решениям. Простоту легче поддерживать.
Хотя, иногда, для того, чтобы начать упрощать систему, необходимо сначала добавить сложность.
Основные поинты:
- Между сложным и простым, следует выбирать простое.
- Сложность растет экспоненциально
- Чтобы уменьшить сложность в системе, скорее всего потребуется сначала её добавить (миграционный период)
https://medium.com/@dolevp/the-hidden-cost-of-complexity-d9d8eb91594c
#managment #complexity
Статья про сложность (complexity) и простоту (simplicity).
Статья сильно разбавлена водой, из-за чего её сложно пересказать в рамках поста в телеге. Но я попытаюсь.
Сложность выглядит впечатлающе, а простота - обыденной (в статье приводится пример с египетскими пирамидами - для захоронения человека есть способы и попроще). Поэтому во многих аспектах жизни люди между простыми и сложными решениями выбирают сложные. Хотя следует наоборот.
Почему нужно выбирать простые решения? Из-за природы складывания сложностей. Если взять 2 сложные вещи и связать их, то в сумме получится намного более сложная система.
Сложность растет экспоненциально. В разработке ПО это особенно заметно - когда система сплошь состоит из сложных вещей, то она сама становится дико сложной. И в случае появления проблем все становится совсем плохо. Поэтому все лучшие практики написания кода, проектирования, создания интерфейсов, организаций, материальных вещей стремятся к простым решениям. Простоту легче поддерживать.
Хотя, иногда, для того, чтобы начать упрощать систему, необходимо сначала добавить сложность.
Основные поинты:
- Между сложным и простым, следует выбирать простое.
- Сложность растет экспоненциально
- Чтобы уменьшить сложность в системе, скорее всего потребуется сначала её добавить (миграционный период)
https://medium.com/@dolevp/the-hidden-cost-of-complexity-d9d8eb91594c
#managment #complexity
Medium
The hidden cost of complexity
Complexity is an abstract and elusive concept. Let’s try to uncover its true cost and face it head-on.
👍6
Дайджест за 7 ноября - 17 ноября
Comparing TCP and QUIC
Неплохой обзор QUIC в сравнении с TCP. Рассматриваются основные проблемы TCP и как QUIC их обходит. Также в статье рассматривается, из чего состоит QUIC соединение и как формируются пакеты.
В комментариях накидали еще полезных ссылок про QUIC
What is a developer experience team?
Статья про эволюцию и организацию работы команды Developer Experience.
Что такое DX Team? Это паттерн команды, которая занимается улучшением опыта разработчика. Она улучшает внутренние инструменты, адаптирует процессы, строит системы удобного мониторинга и прочие интересные штуки, которые позволяют обычны м разработчикам делать свою работу лучше. Т.е. это команда разработчиков внутри компании, которая делает жизнь других разработчиков внутри компании лучше.
Рекомендую статью к прочтению всем, кто интересуется платформенными командами
👌🏼 jest over vitest
Интересная заметка, где автор описывает свой опыт замены jest на vitest. Благодаря совместимости vitest с jest, переехать с jest на vitest достаточно легко. Автор проделывает не очень много шагов для переезда, но в его случае оказывается, что vitest отрабатывает медленее jest (но быстрее в watch режиме). Поэтому переезд в итоге не состоялся
Announcing Rome v10
Вышел первый стабильный релиз инструментария Rome после начала переписывания на Rust. В релизе поставляется линтер и форматтер. Они оба быстрее чем Eslint и Prettier.
Также в блоге продемонстрированы 2 подхода команды Rome:
- Инструменты устойчивы к ошибкам (в статье есть прекрасная гифка, которая показывает разницу подходов на примере Eslint и Rome Linter)
- Ошибки должны быть самодиагностируемыми. Т.е. при возникновении ошибки от инструмента, разработчику должно быть понятно, что это за ошибка, почему это плохо, что к ней привело и как её исправить. Это также показано в статье на примере одного из правил линтера
Gatsby 5: The Fastest Gatsby Yet | Gatsby
Состоялся релиз Gatsby 5.0.0. Новые фичи для перформанса и обновление своей IDE. Хотя в коменте к посту написали что Gatsby пора хоронить 🙂
The hidden cost of complexity
Статья про сложность (complexity) и простоту (simplicity).
Основные поинты:
- Между сложным и простым, следует выбирать простое.
- Сложность растет экспоненциально
- Чтобы уменьшить сложность в системе, скорее всего потребуется сначала её добавить (миграционный период)
——————————————
Спасибо что читаете, ставите реакции и отмечаетесь в комментариях. Если вы хотите помочь каналу - расскажите о нем своим коллегам\друзьям. Также оставляйте фидбек по формату, материалу и чему-угодно еще 🙂
Comparing TCP and QUIC
Неплохой обзор QUIC в сравнении с TCP. Рассматриваются основные проблемы TCP и как QUIC их обходит. Также в статье рассматривается, из чего состоит QUIC соединение и как формируются пакеты.
В комментариях накидали еще полезных ссылок про QUIC
What is a developer experience team?
Статья про эволюцию и организацию работы команды Developer Experience.
Что такое DX Team? Это паттерн команды, которая занимается улучшением опыта разработчика. Она улучшает внутренние инструменты, адаптирует процессы, строит системы удобного мониторинга и прочие интересные штуки, которые позволяют обычны м разработчикам делать свою работу лучше. Т.е. это команда разработчиков внутри компании, которая делает жизнь других разработчиков внутри компании лучше.
Рекомендую статью к прочтению всем, кто интересуется платформенными командами
👌🏼 jest over vitest
Интересная заметка, где автор описывает свой опыт замены jest на vitest. Благодаря совместимости vitest с jest, переехать с jest на vitest достаточно легко. Автор проделывает не очень много шагов для переезда, но в его случае оказывается, что vitest отрабатывает медленее jest (но быстрее в watch режиме). Поэтому переезд в итоге не состоялся
Announcing Rome v10
Вышел первый стабильный релиз инструментария Rome после начала переписывания на Rust. В релизе поставляется линтер и форматтер. Они оба быстрее чем Eslint и Prettier.
Также в блоге продемонстрированы 2 подхода команды Rome:
- Инструменты устойчивы к ошибкам (в статье есть прекрасная гифка, которая показывает разницу подходов на примере Eslint и Rome Linter)
- Ошибки должны быть самодиагностируемыми. Т.е. при возникновении ошибки от инструмента, разработчику должно быть понятно, что это за ошибка, почему это плохо, что к ней привело и как её исправить. Это также показано в статье на примере одного из правил линтера
Gatsby 5: The Fastest Gatsby Yet | Gatsby
Состоялся релиз Gatsby 5.0.0. Новые фичи для перформанса и обновление своей IDE. Хотя в коменте к посту написали что Gatsby пора хоронить 🙂
The hidden cost of complexity
Статья про сложность (complexity) и простоту (simplicity).
Основные поинты:
- Между сложным и простым, следует выбирать простое.
- Сложность растет экспоненциально
- Чтобы уменьшить сложность в системе, скорее всего потребуется сначала её добавить (миграционный период)
——————————————
Спасибо что читаете, ставите реакции и отмечаетесь в комментариях. Если вы хотите помочь каналу - расскажите о нем своим коллегам\друзьям. Также оставляйте фидбек по формату, материалу и чему-угодно еще 🙂
🔥12
Deno 1.28: Featuring 1.3 Million New Modules
Вышел Deno 1.28
Как и обещала команда Deno - в этом релизе стабилизировали совместимость с npm экосистемой. Это значит, что теперь все пакеты из npm можно свободно использовать в Deno. При этом получая все плюшки Deno, связанные с безопасностью.
На самом деле большой шаг для Deno т.к. собственная экосистема пакетов сильно сдерживала возможности для внедрения Deno в проекты. С совместимостью же появляется возможность пересесть с nodejs на deno за пару вечеров, меняя минимум в своем проекте.
Также из нового и интересного:
- lock-файл создается автоматически если есть конфиг deno
- Стабилизировали несколько старых API и добавили новое единое экспериментальное API для запуска команд (напримре, для запуска какой-то консольной утилиты из deno-рантайма)
https://deno.com/blog/v1.28
#development #deno
Вышел Deno 1.28
Как и обещала команда Deno - в этом релизе стабилизировали совместимость с npm экосистемой. Это значит, что теперь все пакеты из npm можно свободно использовать в Deno. При этом получая все плюшки Deno, связанные с безопасностью.
На самом деле большой шаг для Deno т.к. собственная экосистема пакетов сильно сдерживала возможности для внедрения Deno в проекты. С совместимостью же появляется возможность пересесть с nodejs на deno за пару вечеров, меняя минимум в своем проекте.
Также из нового и интересного:
- lock-файл создается автоматически если есть конфиг deno
- Стабилизировали несколько старых API и добавили новое единое экспериментальное API для запуска команд (напримре, для запуска какой-то консольной утилиты из deno-рантайма)
https://deno.com/blog/v1.28
#development #deno
Deno
Deno 1.28: Featuring 1.3 Million New Modules | Deno
Deno 1.28 ships with stabilized npm modules, auto-discovered lock file, a new subprocess API, and more
👍4❤2💩1
Release v4.0.0: Complete rewrite · fullstack-build/tslog
Вышел 4.0.0 релиз либы для логирования tslog в котором либу полностью переписали:
- без зависимостей
- работает в node.js и браузере
- ESM
- Большие возможности кастомизации
Честно говоря, даже не слышал об этом логере до этого. Но интересно, что мейнтейнеры решили полностью все переписать.
Судя по доке, логгер действительно достаточно фичастый и гибкий.
https://github.com/fullstack-build/tslog/releases/tag/v4.0.0
#link #development #javascript #logger #release #library
Вышел 4.0.0 релиз либы для логирования tslog в котором либу полностью переписали:
- без зависимостей
- работает в node.js и браузере
- ESM
- Большие возможности кастомизации
Честно говоря, даже не слышал об этом логере до этого. Но интересно, что мейнтейнеры решили полностью все переписать.
Судя по доке, логгер действительно достаточно фичастый и гибкий.
https://github.com/fullstack-build/tslog/releases/tag/v4.0.0
#link #development #javascript #logger #release #library
GitHub
Release v4.0.0: Complete rewrite · fullstack-build/tslog
A complete rewrite:
Works in Node.js and Browser
No dependencies
ESM
Super customizable: Every aspect can be overwritten
Customizable log level: BaseLogger with configurable log level
Many other f...
Works in Node.js and Browser
No dependencies
ESM
Super customizable: Every aspect can be overwritten
Customizable log level: BaseLogger with configurable log level
Many other f...
🔥4
google/wireit: Wireit upgrades your npm scripts to make them smarter and more efficient.
Новый опенсорс от гугла в JS экосистему. Встречайте, wireit!
У библиотеки достаточно ёмкое описание: wireit улучшает npm scripts делая их умнее и эффективнее.
Нативные скрипты в npm имеют очень простую реализацию и что-то сложнее, чем проксирование команд из других пакетов, делать неудобно.
Собственно npm никогда и не хотел быть хорошим task-manager'ом, оставляя это на откуп сообществу.
Wireit как раз инструмент, который позволяет удобно делать непростые скрипты для проекта.
Wireit умеет:
- указывать какой скрипт от какого зависит, что позволяет wireit запускать их максимально эффективно
- запускать скрипты при изменении файлов
- определяет, когда скрипт не нужно запускать
- с точки зрения пользователя, интерфейс не меняется - все команды также запускаются через npm run
Вместо тысячи слов просто положу пример, как тул подключается в проект через package.json файл
https://github.com/google/wireit
#link #development #javascript #npm #google #library
Новый опенсорс от гугла в JS экосистему. Встречайте, wireit!
У библиотеки достаточно ёмкое описание: wireit улучшает npm scripts делая их умнее и эффективнее.
Нативные скрипты в npm имеют очень простую реализацию и что-то сложнее, чем проксирование команд из других пакетов, делать неудобно.
Собственно npm никогда и не хотел быть хорошим task-manager'ом, оставляя это на откуп сообществу.
Wireit как раз инструмент, который позволяет удобно делать непростые скрипты для проекта.
Wireit умеет:
- указывать какой скрипт от какого зависит, что позволяет wireit запускать их максимально эффективно
- запускать скрипты при изменении файлов
- определяет, когда скрипт не нужно запускать
- с точки зрения пользователя, интерфейс не меняется - все команды также запускаются через npm run
Вместо тысячи слов просто положу пример, как тул подключается в проект через package.json файл
{
"scripts": {
"build": "wireit",
"bundle": "wireit"
},
"wireit": {
"build": {
"command": "tsc"
},
"bundle": {
"command": "rollup -c",
"dependencies": ["build"]
}
}
}
https://github.com/google/wireit
#link #development #javascript #npm #google #library
GitHub
GitHub - google/wireit: Wireit upgrades your npm/pnpm/yarn scripts to make them smarter and more efficient.
Wireit upgrades your npm/pnpm/yarn scripts to make them smarter and more efficient. - google/wireit
👍22
Why would anyone need JavaScript generator functions?
Очень хорошая статья от James Sinclair про генератор-функции в JS. Автор коротко объясняет, как генератор-функции оказываются незаменимы при обработке огромных массивов данных (позволяют реализовать ленивую обработку), почему async/await не закрывает все потребности работы с асинхронными функциями и как можно сделать бесконечную последовательность.
Генераторы не очень нужны в обычном коде приложения, но могут оказаться незаменимыми в "инструментальном" коде.
Рекомендую к прочтению
https://jrsinclair.com/articles/2022/why-would-anyone-need-javascript-generator-functions/
#development #javascript #sinclair #generators #recommended
Очень хорошая статья от James Sinclair про генератор-функции в JS. Автор коротко объясняет, как генератор-функции оказываются незаменимы при обработке огромных массивов данных (позволяют реализовать ленивую обработку), почему async/await не закрывает все потребности работы с асинхронными функциями и как можно сделать бесконечную последовательность.
Генераторы не очень нужны в обычном коде приложения, но могут оказаться незаменимыми в "инструментальном" коде.
Рекомендую к прочтению
https://jrsinclair.com/articles/2022/why-would-anyone-need-javascript-generator-functions/
#development #javascript #sinclair #generators #recommended
Jrsinclair
Why would anyone need JavaScript generator functions?
You can go a long time as a JavaScript developer without ever feeling the need for generators. Hence, it’s natural to wonder: What are they good for? Why would you ever need one? What’s the point? But generators can do some neat tricks. And they may even…
👍6❤1
What’s so great about functional programming anyway?
James Sinclair выложил 1 короткую главу из своей пока неизданной книги "A skeptic’s guide to functional programming with JavaScript".
Данная глава объясняет основные концепции функционального программирования.
Немного про композицию, про алгебраические структуры, про монады и все такое.
На простых примерах показывается, как ФП помогает делать простой и понятный код.
Рекомендую к прочтению.
https://jrsinclair.com/articles/2022/whats-so-great-about-functional-programming-anyway/
#development #javascript #sinclair #functionalProgramming #recommended
James Sinclair выложил 1 короткую главу из своей пока неизданной книги "A skeptic’s guide to functional programming with JavaScript".
Данная глава объясняет основные концепции функционального программирования.
Немного про композицию, про алгебраические структуры, про монады и все такое.
На простых примерах показывается, как ФП помогает делать простой и понятный код.
Рекомендую к прочтению.
https://jrsinclair.com/articles/2022/whats-so-great-about-functional-programming-anyway/
#development #javascript #sinclair #functionalProgramming #recommended
Jrsinclair
What’s so great about functional programming anyway?
To hear some people talk about functional programming, you’d think they’d joined some kind of cult. They prattle on about how it’s changed the way they think about code. They’ll extol the benefits of purity, at length. And proclaim that they are now able…
👍8
Дайджест за 21 ноября - 25 ноября
Deno 1.28: Featuring 1.3 Million New Modules
Как и обещала команда Deno - в этом релизе стабилизировали совместимость с npm экосистемой. Это значит, что теперь все пакеты из npm можно свободно использовать в Deno. При этом получая все плюшки Deno, связанные с безопасностью.
Release v4.0.0: Complete rewrite · fullstack-build/tslog
Вышел 4.0.0 релиз либы для логирования tslog в котором либу полностью переписали:
- без зависимостей
- работает в node.js и браузере
- ESM
- Большие возможности кастомизации
google/wireit: Wireit upgrades your npm scripts to make them smarter and more efficient.
Новый опенсорс от гугла в JS экосистему. Встречайте, wireit!
У библиотеки достаточно ёмкое описание: wireit улучшает npm scripts делая их умнее и эффективнее.
Why would anyone need JavaScript generator functions?
Очень хорошая статья от James Sinclair про генератор-функции в JS. Рекомендую к прочтению
What’s so great about functional programming anyway?
James Sinclair выложил 1 короткую главу из своей пока неизданной книги "A skeptic’s guide to functional programming with JavaScript".
На простых примерах показывается, как ФП помогает делать простой и понятный код.
Рекомендую к прочтению.
——————————————
Спасибо что читаете, ставите реакции и отмечаетесь в комментариях. Если вы хотите помочь каналу - расскажите о нем своим коллегам\друзьям. Также оставляйте фидбек по формату, материалу и чему-угодно еще 🙂
Deno 1.28: Featuring 1.3 Million New Modules
Как и обещала команда Deno - в этом релизе стабилизировали совместимость с npm экосистемой. Это значит, что теперь все пакеты из npm можно свободно использовать в Deno. При этом получая все плюшки Deno, связанные с безопасностью.
Release v4.0.0: Complete rewrite · fullstack-build/tslog
Вышел 4.0.0 релиз либы для логирования tslog в котором либу полностью переписали:
- без зависимостей
- работает в node.js и браузере
- ESM
- Большие возможности кастомизации
google/wireit: Wireit upgrades your npm scripts to make them smarter and more efficient.
Новый опенсорс от гугла в JS экосистему. Встречайте, wireit!
У библиотеки достаточно ёмкое описание: wireit улучшает npm scripts делая их умнее и эффективнее.
Why would anyone need JavaScript generator functions?
Очень хорошая статья от James Sinclair про генератор-функции в JS. Рекомендую к прочтению
What’s so great about functional programming anyway?
James Sinclair выложил 1 короткую главу из своей пока неизданной книги "A skeptic’s guide to functional programming with JavaScript".
На простых примерах показывается, как ФП помогает делать простой и понятный код.
Рекомендую к прочтению.
——————————————
Спасибо что читаете, ставите реакции и отмечаетесь в комментариях. Если вы хотите помочь каналу - расскажите о нем своим коллегам\друзьям. Также оставляйте фидбек по формату, материалу и чему-угодно еще 🙂
🔥15
terrastruct/d2: D2 is a modern diagram scripting language that turns text to diagrams.
Новая либа для рисования диаграмм из текста
https://github.com/terrastruct/d2
#link #development #library #github #diagram
Новая либа для рисования диаграмм из текста
https://github.com/terrastruct/d2
#link #development #library #github #diagram
GitHub
GitHub - terrastruct/d2: D2 is a modern diagram scripting language that turns text to diagrams.
D2 is a modern diagram scripting language that turns text to diagrams. - terrastruct/d2
🔥3👍1
Hyperstack is a modern full-stack Node.js web framework for the pragmatic programmer
Вышел новый веб-фреймворк для nodejs - Hyperstack.
Вдохновлен rails и уже имеет в себе всё, что нужно разработчику для комфортной и быстрой разработки:
- контроллеры
- orm (если я правильно понял)
- апи для написания автотестов
- апи для создания джоб
https://hyperstackjs.io/
#link #development #nodejs #javascript #library
Вышел новый веб-фреймворк для nodejs - Hyperstack.
Вдохновлен rails и уже имеет в себе всё, что нужно разработчику для комфортной и быстрой разработки:
- контроллеры
- orm (если я правильно понял)
- апи для написания автотестов
- апи для создания джоб
https://hyperstackjs.io/
#link #development #nodejs #javascript #library
Hyperstackjs
hyperstackjs · Hyperstack is a modern full-stack Node.js web framework for the pragmatic programmer
👍1
В честь перехода отметки в 777 пользователей (да, я буду радоваться любым красивым числам в поле "количество подписчиков" 🙂 ) расскажу немного о том, почему этот канал вообще существует.
Но для тех, кому лень читать, дам тлдр:
- Читаю всякие статьи в интернете уже 6 лет. Раньше каждое утро, теперь не каждое.
- Статьи сохраняю в raindrop.io. Уже 1600+ статей
- Восприятие информации за это время сменилось
- Ссылка на все сохраненные ссылки: https://raindrop.io/crazymax101/development-2544878 . Там есть поиск, инфа обновляется в риалтайме.
Теперь для тех, кому не лень читать.
Когда-то в 2016 году я прочитал книжку "идеальный программист" Роберта Мартина и там была важная мысль: в сфере разработки ПО нужно постоянно учиться. Ну и я как-то решил, что будет неплохо читать 5 статей из интернета каждое утро и так, маленькими шагами, я стану супер-крутым разрабом как дядя Боб.
Также мне сразу стало понятно, что процесс обучения идёт лучше, если итоги чтения куда-то конспектировать. Поэтому я решил сохранять ссылки в какой-нибудь сервис. И этим сервис оказался raindrop.io. Почему я выбрал именно его - я не помню. Но я начал раскладывать там ссылки по коллекциям и ссылки, которые мне казались боле мене полезными, я сохранял в коллекцию development. В начале своего пути ценз на статьи был очень низкий - есть контент, у него ненулевая ценность? Добавляем!
Со временем это привычка эволюционировала: условия для попадания в коллекцию выросли, читал я уже не каждое утро, но все же какая-то регулярность была. База статей уже была достаточно большой, чтобы находить полезные статьи по определенным запросам. Например "Макс, а у тебя есть что-нибудь почитать про CI?" или свой собственный запрос "Я же читал где-то про это уже. Надо найти". Эта база ссылок использовалась как внутренняя база знаний.
Затем я начал кидать интересные статьи в коллег. Но появилась новая проблема - мне было лень кидать одни и те же ссылки с одним и тем же текстом нескольким людям. Поэтому я сделал канал, куда выкидывал интересные статьи, а коллег позвал в этот канал.
Потом я подумал, что модель defront, ссылки + краткий пересказ, мне в целом нравится и подходит. И настроил с помощью no-code решения integromat автоматическую публикацию статей из raindrop в telegram канал. Затем Александр Мышов, автор defront, опубликовал список разных полезных каналов по вебу, среди которых был и мой. По-моему около 100 или 200 человек пришло из defront - это было 95% подписчиков в тот момент 🙂
И вот мы с вами здесь. Я почти ежедневно постю ссылки в канал с описанием, формирую еженедельные дайджесты, общаюсь с вами в комментариях. Что изменилось за 6 лет:
- Ценз полезности для попадания в канал стал выше. Просто то, что либа существует, теперь недостаточно. Как следствие, стала частой ситуация, когда я открываю дайджест, например, jsweekly и не беру оттуда ни одной ссылки.
- Читаю не каждое утро. Но раз в неделю точно, если не отпуск и не завал на работе\в жизни
- Пытаюсь следить за тегами и писать боле мене хорошее описание к ссылкам
На текущий момент в коллекции в raindrop 1637 ссылок. В честь преодоления отметки в 777 пользователей, я открываю ссылку на всю коллекцию. Там есть поиск (по тексту, по тегам). Пользуйтесь, если вам нужно найти какую-то ссылку по какой-то теме.
Ссылка на ссылки https://raindrop.io/crazymax101/development-2544878 🙂
Огромная благодарность Александру Мышову (@myshov), за то, что популяризировал формат ссылка + статья и пропиарил меня в свое время в своем канале. Вероятно, без Александра этого бы канала бы могло бы и не быть.
Но для тех, кому лень читать, дам тлдр:
- Читаю всякие статьи в интернете уже 6 лет. Раньше каждое утро, теперь не каждое.
- Статьи сохраняю в raindrop.io. Уже 1600+ статей
- Восприятие информации за это время сменилось
- Ссылка на все сохраненные ссылки: https://raindrop.io/crazymax101/development-2544878 . Там есть поиск, инфа обновляется в риалтайме.
Теперь для тех, кому не лень читать.
Когда-то в 2016 году я прочитал книжку "идеальный программист" Роберта Мартина и там была важная мысль: в сфере разработки ПО нужно постоянно учиться. Ну и я как-то решил, что будет неплохо читать 5 статей из интернета каждое утро и так, маленькими шагами, я стану супер-крутым разрабом как дядя Боб.
Также мне сразу стало понятно, что процесс обучения идёт лучше, если итоги чтения куда-то конспектировать. Поэтому я решил сохранять ссылки в какой-нибудь сервис. И этим сервис оказался raindrop.io. Почему я выбрал именно его - я не помню. Но я начал раскладывать там ссылки по коллекциям и ссылки, которые мне казались боле мене полезными, я сохранял в коллекцию development. В начале своего пути ценз на статьи был очень низкий - есть контент, у него ненулевая ценность? Добавляем!
Со временем это привычка эволюционировала: условия для попадания в коллекцию выросли, читал я уже не каждое утро, но все же какая-то регулярность была. База статей уже была достаточно большой, чтобы находить полезные статьи по определенным запросам. Например "Макс, а у тебя есть что-нибудь почитать про CI?" или свой собственный запрос "Я же читал где-то про это уже. Надо найти". Эта база ссылок использовалась как внутренняя база знаний.
Затем я начал кидать интересные статьи в коллег. Но появилась новая проблема - мне было лень кидать одни и те же ссылки с одним и тем же текстом нескольким людям. Поэтому я сделал канал, куда выкидывал интересные статьи, а коллег позвал в этот канал.
Потом я подумал, что модель defront, ссылки + краткий пересказ, мне в целом нравится и подходит. И настроил с помощью no-code решения integromat автоматическую публикацию статей из raindrop в telegram канал. Затем Александр Мышов, автор defront, опубликовал список разных полезных каналов по вебу, среди которых был и мой. По-моему около 100 или 200 человек пришло из defront - это было 95% подписчиков в тот момент 🙂
И вот мы с вами здесь. Я почти ежедневно постю ссылки в канал с описанием, формирую еженедельные дайджесты, общаюсь с вами в комментариях. Что изменилось за 6 лет:
- Ценз полезности для попадания в канал стал выше. Просто то, что либа существует, теперь недостаточно. Как следствие, стала частой ситуация, когда я открываю дайджест, например, jsweekly и не беру оттуда ни одной ссылки.
- Читаю не каждое утро. Но раз в неделю точно, если не отпуск и не завал на работе\в жизни
- Пытаюсь следить за тегами и писать боле мене хорошее описание к ссылкам
На текущий момент в коллекции в raindrop 1637 ссылок. В честь преодоления отметки в 777 пользователей, я открываю ссылку на всю коллекцию. Там есть поиск (по тексту, по тегам). Пользуйтесь, если вам нужно найти какую-то ссылку по какой-то теме.
Ссылка на ссылки https://raindrop.io/crazymax101/development-2544878 🙂
Огромная благодарность Александру Мышову (@myshov), за то, что популяризировал формат ссылка + статья и пропиарил меня в свое время в своем канале. Вероятно, без Александра этого бы канала бы могло бы и не быть.
Raindrop.io
Development
1804 bookmarks
🔥45❤9👍7
liriliri/eruda: Console for mobile browsers
Библиотека, которая эмулирует dev-tools в браузере. Библиотека пробует решить проблему недоступности браузерных devtools при тестировании сайта в настоящем смартфоне в мобильном браузере с помощью создания своих devtols.
Выглядит очень интересно, хотя не могу представить, чтобы я это где-нибудь использовал в реальной жизни.
В readme проекта есть ссылка на демо, где можно поиграться с самописными девтулами
https://github.com/liriliri/eruda
#link #development #javascript #library #erunda #devtools
Библиотека, которая эмулирует dev-tools в браузере. Библиотека пробует решить проблему недоступности браузерных devtools при тестировании сайта в настоящем смартфоне в мобильном браузере с помощью создания своих devtols.
Выглядит очень интересно, хотя не могу представить, чтобы я это где-нибудь использовал в реальной жизни.
В readme проекта есть ссылка на демо, где можно поиграться с самописными девтулами
https://github.com/liriliri/eruda
#link #development #javascript #library #erunda #devtools
GitHub
GitHub - liriliri/eruda: Console for mobile browsers
Console for mobile browsers. Contribute to liriliri/eruda development by creating an account on GitHub.
👍4
Convert the codebase to modules by jakebailey · Pull Request #51387 · microsoft/TypeScript
Typescript совершил большой внутренний рефакторинг, в рамках которого код перевезли на ESM модули, отказались от namespaces, начали собирать код через esbuild (т.к. пользователи TS ожидают 1 выходной файл), выкинули немного лишнего (дублирующего) кода и это значительно улучшило показатели перформанса проекта:
- Компилятор на 10-25% быстрее
- tsc стартует на 30% быстрее
- npm пакет стал на 43% меньше
По сути, основной код typescript не был никак изменен, просто выкинули namespace и заменили их на честные импортые, которые забандлили через esbuild. Namespace давали просадку перформанса из-за сложных доступов к объектам, а esbuild дал еще оптимизаций на уровне сборки бандла.
Хорошая история про рефакторинг проекта, который значительно улучшил проект для пользователей.
https://github.com/microsoft/TypeScript/pull/51387
#link #development #typescript #performance #esbuild
Typescript совершил большой внутренний рефакторинг, в рамках которого код перевезли на ESM модули, отказались от namespaces, начали собирать код через esbuild (т.к. пользователи TS ожидают 1 выходной файл), выкинули немного лишнего (дублирующего) кода и это значительно улучшило показатели перформанса проекта:
- Компилятор на 10-25% быстрее
- tsc стартует на 30% быстрее
- npm пакет стал на 43% меньше
По сути, основной код typescript не был никак изменен, просто выкинули namespace и заменили их на честные импортые, которые забандлили через esbuild. Namespace давали просадку перформанса из-за сложных доступов к объектам, а esbuild дал еще оптимизаций на уровне сборки бандла.
Хорошая история про рефакторинг проекта, который значительно улучшил проект для пользователей.
https://github.com/microsoft/TypeScript/pull/51387
#link #development #typescript #performance #esbuild
GitHub
Convert the codebase to modules by jakebailey · Pull Request #51387 · microsoft/TypeScript
This is it; the PR that converts the TypeScript repo from namespaces to modules.
TL;DR: The TypeScript compiler is now implemented internally with modules, not namespaces. The compiler is now 10-25...
TL;DR: The TypeScript compiler is now implemented internally with modules, not namespaces. The compiler is now 10-25...
🔥29
Agile Product Ownership in a Nutshell
15-минутное видео про роль Product Owner в Agile разработке. Кроме роли PO также рассказывается про agile разработку в целом: важность коммуникации, коротких циклов обратной связи, мелких историй, накоплению знаний.
При этом это все очень хорошо визуализировано и автор хорошо поясняет за основные концепции.
Рекомендую к просмотру.
https://www.youtube.com/watch?v=502ILHjX9EE
#video #development #agile #recommended #productOwner
15-минутное видео про роль Product Owner в Agile разработке. Кроме роли PO также рассказывается про agile разработку в целом: важность коммуникации, коротких циклов обратной связи, мелких историй, накоплению знаний.
При этом это все очень хорошо визуализировано и автор хорошо поясняет за основные концепции.
Рекомендую к просмотру.
https://www.youtube.com/watch?v=502ILHjX9EE
#video #development #agile #recommended #productOwner
YouTube
Agile Product Ownership in a Nutshell
This is basically a 1 day product ownership course compressed into 15 minute animated presentation. There's obviously more to product ownership than this, so see this is a high level summary.
For translated versions & translation guide, see http://blog.…
For translated versions & translation guide, see http://blog.…
🔥2
Дайджест за 28.11.2022 - 02.12.2022
terrastruct/d2: D2 is a modern diagram scripting language that turns text to diagrams.
Новая либа для рисования диаграмм из текста
Hyperstack is a modern full-stack Node.js web framework for the pragmatic programmer
Вышел новый веб-фреймворк для nodejs - Hyperstack.
Вдохновлен rails и уже имеет в себе всё, что нужно разработчику для комфортной и быстрой разработки:
- контроллеры
- orm (если я правильно понял)
- апи для написания автотестов
- апи для создания джоб
Пост в честь 777 пользователей
О том, как получился текущий канал и ссылка на все мои ссылки, сохраненные за 6 лет https://raindrop.io/crazymax101/development-2544878
liriliri/eruda: Console for mobile browsers
Библиотека, которая эмулирует dev-tools в браузере. Библиотека пробует решить проблему недоступности браузерных devtools при тестировании сайта в настоящем смартфоне в мобильном браузере с помощью создания своих devtols.
Convert the codebase to modules by jakebailey · Pull Request #51387 · microsoft/TypeScript
Typescript совершил большой внутренний рефакторинг, в рамках которого код перевезли на ESM модули, отказались от namespaces, начали собирать код через esbuild (т.к. пользователи TS ожидают 1 выходной файл), выкинули немного лишнего (дублирующего) кода и это значительно улучшило показатели перформанса проекта:
- Компилятор на 10-25% быстрее
- tsc стартует на 30% быстрее
- npm пакет стал на 43% меньше
Agile Product Ownership in a Nutshell
15-минутное видео про роль Product Owner в Agile разработке. Кроме роли PO также рассказывается про agile разработку в целом: важность коммуникации, коротких циклов обратной связи, мелких историй, накоплению знаний.
При этом это все очень хорошо визуализировано и автор хорошо поясняет за основные концепции.
——————————————
Спасибо что читаете, ставите реакции и отмечаетесь в комментариях. Если вы хотите помочь каналу - расскажите о нем своим коллегамдрузьям. Также оставляйте фидбек по формату, материалу и чему-угодно еще 🙂
terrastruct/d2: D2 is a modern diagram scripting language that turns text to diagrams.
Новая либа для рисования диаграмм из текста
Hyperstack is a modern full-stack Node.js web framework for the pragmatic programmer
Вышел новый веб-фреймворк для nodejs - Hyperstack.
Вдохновлен rails и уже имеет в себе всё, что нужно разработчику для комфортной и быстрой разработки:
- контроллеры
- orm (если я правильно понял)
- апи для написания автотестов
- апи для создания джоб
Пост в честь 777 пользователей
О том, как получился текущий канал и ссылка на все мои ссылки, сохраненные за 6 лет https://raindrop.io/crazymax101/development-2544878
liriliri/eruda: Console for mobile browsers
Библиотека, которая эмулирует dev-tools в браузере. Библиотека пробует решить проблему недоступности браузерных devtools при тестировании сайта в настоящем смартфоне в мобильном браузере с помощью создания своих devtols.
Convert the codebase to modules by jakebailey · Pull Request #51387 · microsoft/TypeScript
Typescript совершил большой внутренний рефакторинг, в рамках которого код перевезли на ESM модули, отказались от namespaces, начали собирать код через esbuild (т.к. пользователи TS ожидают 1 выходной файл), выкинули немного лишнего (дублирующего) кода и это значительно улучшило показатели перформанса проекта:
- Компилятор на 10-25% быстрее
- tsc стартует на 30% быстрее
- npm пакет стал на 43% меньше
Agile Product Ownership in a Nutshell
15-минутное видео про роль Product Owner в Agile разработке. Кроме роли PO также рассказывается про agile разработку в целом: важность коммуникации, коротких циклов обратной связи, мелких историй, накоплению знаний.
При этом это все очень хорошо визуализировано и автор хорошо поясняет за основные концепции.
——————————————
Спасибо что читаете, ставите реакции и отмечаетесь в комментариях. Если вы хотите помочь каналу - расскажите о нем своим коллегамдрузьям. Также оставляйте фидбек по формату, материалу и чему-угодно еще 🙂
🔥15
Larman's Laws of Organizational Behavior - Craig Larman
Законы Лармана об организационном поведении
Это наблюдения, сделанные Крейгом Ларманом в результате десятилетий наблюдений за организациями.
1. Организации неявно оптимизированы избегать изменения статуса кво менеджеров и специалистов
2. Следствие первого закона, любая инициатива по изменению статуса кво будет заторможена переопределением или переосмыслением новой терминологии так, чтобы статус кво не изменился
3. Следствие первого закона, любая инициатива по изменению статуса кво будет высмеяна как революционная, теоретическая, религиозная и будет предлоожено приземлить ее в реальный мир так, чтобы не менять статус кво
4. Следствие первого закона, если менеджеры или специалисты все таки изменили свой статус, то они становятся коучами/тренерами, которые курируют изменения и усиливают действие второго и третьего законов.
5. В больших организациях культтура следует за структурой. В мальеньких организациях структура следует за культурой.
Как следствие 5го закона, нельзя изменить культуру большой компании, не меняя ее структуры. Поэтому, например, скрам меняет структуру чтобы изменить культуру.
https://www.craiglarman.com/wiki/index.php?title=Larman%27s_Laws_of_Organizational_Behavior
#link #managment #larmanLaws #changeManagment
Законы Лармана об организационном поведении
Это наблюдения, сделанные Крейгом Ларманом в результате десятилетий наблюдений за организациями.
1. Организации неявно оптимизированы избегать изменения статуса кво менеджеров и специалистов
2. Следствие первого закона, любая инициатива по изменению статуса кво будет заторможена переопределением или переосмыслением новой терминологии так, чтобы статус кво не изменился
3. Следствие первого закона, любая инициатива по изменению статуса кво будет высмеяна как революционная, теоретическая, религиозная и будет предлоожено приземлить ее в реальный мир так, чтобы не менять статус кво
4. Следствие первого закона, если менеджеры или специалисты все таки изменили свой статус, то они становятся коучами/тренерами, которые курируют изменения и усиливают действие второго и третьего законов.
5. В больших организациях культтура следует за структурой. В мальеньких организациях структура следует за культурой.
Как следствие 5го закона, нельзя изменить культуру большой компании, не меняя ее структуры. Поэтому, например, скрам меняет структуру чтобы изменить культуру.
https://www.craiglarman.com/wiki/index.php?title=Larman%27s_Laws_of_Organizational_Behavior
#link #managment #larmanLaws #changeManagment
👍1
Попросили закинуть анонс на митап 🙂
8 декабря в 18:00 (мск) состоится онлайн-митап на тему дизайн-систем. В программе доклады и дискуссия с представителями команд Контура, Ростелекома, Skyeng и SuperJob, которые создавали свои системы и готовы поделиться опытом, обсудить узкие места и удачные решения.
Регистрация: https://superjob.ru/i/3sBdE
Отдельно отмечу, что среди участников есть Владимир Дзех, руководитель команды дизайн-системы в Контуре. Я работал в контуре и, мое большое ИМХО, команда дизайн-системы в контуре делает очень крутую дизайн систему. Не просто набор компонентов, а прямо гайдлайны как, что и когда следует использовать, с подробной мотивацией почему именно так, а не по-другому. После контура обычные ui-kit под видом дизайн-системы кажутся обманом 😅
8 декабря в 18:00 (мск) состоится онлайн-митап на тему дизайн-систем. В программе доклады и дискуссия с представителями команд Контура, Ростелекома, Skyeng и SuperJob, которые создавали свои системы и готовы поделиться опытом, обсудить узкие места и удачные решения.
Регистрация: https://superjob.ru/i/3sBdE
Отдельно отмечу, что среди участников есть Владимир Дзех, руководитель команды дизайн-системы в Контуре. Я работал в контуре и, мое большое ИМХО, команда дизайн-системы в контуре делает очень крутую дизайн систему. Не просто набор компонентов, а прямо гайдлайны как, что и когда следует использовать, с подробной мотивацией почему именно так, а не по-другому. После контура обычные ui-kit под видом дизайн-системы кажутся обманом 😅
superjob-it-meetup.timepad.ru
Дизайн-система: подходы к организации и поддержке / События на TimePad.ru
8 декабря в 18:00 (по Москве) состоится онлайн-митап SuperJob Tech Experience. Обсудим главные вопросы вокруг дизайн-систем, а также поделимся опытом их построения и сопровождения. В программе: доклады и дискуссия SuperJob, Skyeng, Ростелеком и Контур.
🔥7👍2
Legend
Приложение для управления задачами. Можно заводить задачи. агенды, ставить приоритеты, интегрировать с почтой и календарем. Должно понравится тем, кто любит GTD, джейдайские техники Максима Дорофеева и просто упорядоченность в списках задач.
https://legendapp.com
#link #app #tool #focus #legend #personalProductivity #taskManagment
Приложение для управления задачами. Можно заводить задачи. агенды, ставить приоритеты, интегрировать с почтой и календарем. Должно понравится тем, кто любит GTD, джейдайские техники Максима Дорофеева и просто упорядоченность в списках задач.
https://legendapp.com
#link #app #tool #focus #legend #personalProductivity #taskManagment
LegendApp
Legend is designed for you - to work the way you do and to be the one place for all your productivity needs.
👍2
Inside Framer's Magic Motion
Очень хороший гайд по созданию анимаций. Объясняется, как Framer делает такие плавные анимации и как достичь таких же плавных анимаций в своем коде.
Все это с подробными примерами кода (css + React) и с хорошими примерами анимаций.
Объясняются проблемы с анимацией (почему css анимация не всегда подходит, проблемы анимации изменения размера элемента)
Также подробно объясняется методика анимации FLIP.
Если коротко:
- First - запомнить позицию элемента, где он находится в начале анимации
- Last - запомнить позицию элемента, где он находится в конце анимации
- Inverse - применить такое изменение, которое превращает состояние Last в First
- Play - Убрать применение inverse. Таким образом элемент будет анимирован от First к Last.
Рекомендую к прочтению
https://www.nan.fyi/magic-motion
#link #development #javascript #animations #recommended
Очень хороший гайд по созданию анимаций. Объясняется, как Framer делает такие плавные анимации и как достичь таких же плавных анимаций в своем коде.
Все это с подробными примерами кода (css + React) и с хорошими примерами анимаций.
Объясняются проблемы с анимацией (почему css анимация не всегда подходит, проблемы анимации изменения размера элемента)
Также подробно объясняется методика анимации FLIP.
Если коротко:
- First - запомнить позицию элемента, где он находится в начале анимации
- Last - запомнить позицию элемента, где он находится в конце анимации
- Inverse - применить такое изменение, которое превращает состояние Last в First
- Play - Убрать применение inverse. Таким образом элемент будет анимирован от First к Last.
Рекомендую к прочтению
https://www.nan.fyi/magic-motion
#link #development #javascript #animations #recommended
www.nan.fyi
Inside Framer's Magic Motion
A guide on recreating framer's magical layout animations.
👍14