Goose&Duck – OpenSource
By Dmitriy Kovalenko
Goose&Duck – OpenSourceSep 14, 2021
#12. UnderGoose&DuckJS | Дмитрий Пацура
В этом эпизоде самого исторически достоверного подкаста про open source:
— Принимаем гастроли подкаста UnderJS
— Разбираем историю faker.js и colors.js
— Прибиваем Cucumber к мостовой
— Обсуждаем моральные вопросы опенсорс-разработки
— Произносим «add» как «а-дэ-дэ»
— Слушаем рэп про Node.js
— Говорим «Да хранит вас Docker-файл»
В ролях:The Goose: Дмитрий Коваленко https://twitter.com/goose_plus_plus
The Duck: Влад Шилов https://twitter.com/Omgovich
Половина UnderJS: Дмитрий Пацура https://twitter.com/ovrweb
Таймкоды:00:00 – Вторжение UnderJS
06:05 – О Cube
10:32 – Как все увидели историю faker.js и colors.js
24:33 – Копаем глубже
31:50 – Можно ли ломать и удалять свой код
39:28 – Копаем еще глубже
58:50 – Рэп про Node.js
59:25 – Все повторится вновь
01:17:30 – Люди и информация
01:25:10 – Конец
Ссылки:— Cube: https://cube.dev
— faker.js: https://github.com/Marak/faker.js
— colors.js: https://github.com/Marak/colors.js
— npm shrinkwrap: https://docs.npmjs.com/cli/v8/commands/npm-shrinkwrap
— Тред Димы: https://twitter.com/ovrweb/status/1480474208660512773
— microcule: https://github.com/stackvana/microcule
— Отредактированное YouTube-видео: https://youtu.be/R6S-b_k-ZKY
#11. Фронтендер на заводе Tesla | Олег Исонен
В этом эпизоде самого стилизованного подкаста про open source:
— Связь между Оливье и CSS
— Секрет успеха styled-components
— IT-компании и инвестиции
— Жизнь UI-инженера на заводе Tesla
— Фабрики бывают не только абстрактными
— Почему в Tesla болтаются ручки
— Какими инструментами тестирования пользуются «большие дяди» на заводе
В ролях:Гусь-Хрустальный: Dmitriy Kovalenko https://twitter.com/goose_plus_plus
Уть-Астральный: Vlad Shilov https://twitter.com/Omgovich
Программист-Заводчанин: Oleg Isonen https://twitter.com/oleg008
Таймкоды:00:00 – Приветствие
04:45 – JSS и Material-UI
16:50 – styled-components
29:15 – CSS сегодня
41:15 – Open source, карьера и инвестиции
59:30 – Фабрика Tesla
01:32:00 – Кофемашина за донаты
Ссылки:— JSS: https://cssinjs.org
— styled-components: https://styled-components.com
— emotion: https://emotion.sh
— Статья «Template Strings vs Objects in CSS-in-JS»: https://oleg008.medium.com/template-strings-vs-objects-in-cssinjs-4028ecc420b2
— Webflow: https://webflow.com
— Доклад Димы про тесты: https://youtu.be/ZJgaTwdLNIg
— Инструкция Олега по решению проблемы фандинга open source: https://twitter.com/oleg008/status/1470762363498504194
#10. Статоскоп мне в Жору с Сергеем Мелюковым
В этом эпизоде самого серьезного подкаста про open source вы узнаете что...
— Утки в 9 раз лучше гусей (по крайней мере, в Башкирии)
— Существуют люди, которые знают как устроен Webpack
— Вы можете завести личного Жору, который будет вынимать вам данные
— Между JS-бандлами и Land Rover Discovery есть связь
— Влад связан с Геннадием Малаховым и народной медициной
— Дима любит воровать дизайн (будьте осторожны)
— У Чихуахуа есть ветки
В ролях:Утёнок-формошлёп: Влад Шилов https://twitter.com/Omgovich
GPU-accelerated Гусь: Дима Коваленко https://twitter.com/goose_plus_plus
Менеджер Жоры: Сергей Мелюков https://twitter.com/smelukov
Таймкоды:00:00 – Приветствие
06:32 – История Statoscope
16:24 – Что умеет Statoscope
39:20 – Анонс FFrames
42:45 – Webpack это сложно?
01:03:14 – Итоги
Ссылки:— Statoscope: https://github.com/statoscope/statoscope
— Сайт Statoscope: https://statoscope.tech/
— Basis.js: https://github.com/basisjs/basisjs
— Rempl: https://github.com/rempl/rempl
— Discovery.js: https://github.com/discoveryjs/discovery
— Jora: https://github.com/discoveryjs/jora
— webpack-profiling-plugin: https://webpack.js.org/plugins/profiling-plugin
— webpack-bundle-analyzer: https://www.npmjs.com/package/webpack-bundle-analyzer
— FFrames (✨ Проект Димы): https://fframes.studio
— Docusaurus: https://github.com/facebook/docusaurus
— Babel Handbook: https://github.com/jamiebuilds/babel-handbook
— Remix: https://remix.run/
Попался, воришка! с Андреем Ситником
В этом эпизоде самого позитивного подкаста про open source:
— Андрей рассказывает о конфликте между nanocolors и colorette
— Влад сравнивает Злых Марсиан с итальянской плиткой
— Андрей копирует код
— Дима запускает дейт-пикер в космос
— Репозитории закрываются
— Андрей отговаривает заниматься опен сорсом
— Резюме пишутся неправильно
В ролях:Гусь: Дима Коваленко https://twitter.com/dmtrKovalenko
Уть: Влад Шилов https://twitter.com/Omgovich
Густь: Андрей Ситник https://twitter.com/andrey_sitnik
Таймкоды:00:00 – Приветствие
03:20 – Сага о chalk, nanocolors и colorette
14:57 – Форки и альтернативы
28:00 – Оптимизации, джаз и попса
36:00 – Авторское право и DMCA
42:30 – Open source !== Free
54:50 – Зачем идти в open source
01:03:20 – Итоги
Ссылки:chalk: https://github.com/chalk/chalk
colorette: https://github.com/jorgebucaran/colorette
nanocolors: https://github.com/ai/nanocolors
picocolors: https://github.com/alexeyraspopov/picocolors
kleur: https://github.com/lukeed/kleur
yoctocolors: https://github.com/sindresorhus/yoctocolors
trololors: https://github.com/dmtrKovalenko/trololors
The Unlicense (Public Domain License): https://choosealicense.com/licenses/unlicense/
Tenacity: https://github.com/tenacityteam/tenacity
PackagePhobia: https://packagephobia.com
BundlePhobia: https://bundlephobia.com
oh-my-fish: https://github.com/oh-my-fish/oh-my-fish
DMCA: https://github.com/contact/dmca
Sphinx: http://sphinxsearch.com
sorry-cypress: https://github.com/sorry-cypress/sorry-cypress
#8. Квартира, тесты, жвачка
В этом эпизоде самого серьезного подкаста про open source:
— Дима покупает жвачку
— Миша рассказывает о своей квартире
— Влад не высыпается
— PHP загибается
— Миша говорит «Самое сложное в опен сорсе — это выжить»
— Промис выпадает
— «Кукумбер», «Гёркин» и другие смешные слова звучат
— Дима теряет умную мысль (если она у него вообще была)
Болтливый Гусь: Дима Коваленко https://twitter.com/dmtrKovalenko
Молчаливый Уть: Влад Шилов https://twitter.com/Omgovich
Протестированный Михаил: Михаил Боднарчук https://twitter.com/davert
Codeception: https://github.com/codeception/codeception
CodeceptJS: https://github.com/codeceptjs/CodeceptJS
date-io: https://github.com/dmtrKovalenko/date-io
Laravel: https://github.com/laravel
Symfony: https://github.com/symfony
MUI: https://mui.com/
WebDriver Protocol: https://w3c.github.io/webdriver/
Protractor: https://github.com/angular/protractor
Appium: https://github.com/appium/appium
React-PDF: https://github.com/diegomura/react-pdf
Доклад Димы на TestCon: https://youtu.be/AvgiFm-xtuc
Testomat-io: https://testomat.io/
Goose&Duck #7 – The Great Bogdan
В этом эпизоде подкаста про open source:
— Дима снимается в Смешариках
— Влад называет GitHub contribution graph «зеленым тайлом коммитментов»
— Дима просит закидать его помидорами
— Влад признается, что он злодей
— Богдан скромно рассказывает как он двигает веб вперед
— Дима пропускает поезд
— Пернатые учат Богдана хвастаться
— Дима произносит «PR» как «Пэпэр»
— Все зовут Кристофера Нолана, чтобы он распутал цепочку зависимостей
В ролях:Утка: Влад Шилов https://twitter.com/Omgovich
Гусь: Дима Коваленко https://twitter.com/dmtrKovalenko
Богдан: Богдан Чадкин https://twitter.com/IAmTrySound
Таймкоды:00:00 – Приветствие
01:30 – Богдан и борьба за современный JS
05:40 – React и tree-shaking
09:30 – Минификация пакетов
20:15 – Стандарт ESM и export default
30:10 – Учим Богдана хвастаться
33:45 – SVGO
45:20 – ESM в Node.js и асинхронность
57:55 – Rollup и путь в open source
01:05:00 – Конец
Ссылки:Rollup.js: https://rollupjs.org/
react-is: https://www.npmjs.com/package/react-is
Terser: https://terser.org/
Colord: https://colord.omgovich.ru/
Day.js: https://day.js.org/
Vite: https://vitejs.dev/
Джейк Арчибальд об export default: https://jakearchibald.com/2021/export-default-thing-vs-thing-as-default/
SVGO: https://github.com/svg/svgo
watchlist от Люка Эдвардса: https://github.com/lukeed/watchlist
cssnano: https://github.com/cssnano/cssnano
Как искали нового мейнтейнера для SVGO: https://github.com/svg/svgo/issues/1320
SVGOMG: https://jakearchibald.github.io/svgomg/
svgo-components: https://github.com/svg/svgo-components
Parcel: https://parceljs.org/
#6. Самый малопродуктивный выпуск c Ильей Лесиком
Гусен Морген, дамы и господа! С вами снова самый маленький из всех big data подкастов про open source. В этом выпуске мы максимально невовлеченно и малопродуктивно пытаемся понять нужен ли сайт open source проекту, а так же выяснить сложно ли совмещать предпринимательство с open source разработкой. Помимо ведущих, в этот раз вы услышите Илью Лесика и дрель соседей Димы.
В выдуманной студии:Уть: Влад Шилов https://twitter.com/Omgovich
Гусь: Дима Коваленко https://twitter.com/dmtrKovalenko
Густь: Илья Лесик https://twitter.com/ilialesik
Таймкоды:00:00 – Приветствие
02:00 – Xsolla
02:40 – Предпринимательство и open source
06:20 – Илья перепродает человеков
12:10 – react-figma
17:00 – Как понять, что проект хороший
24:50 – Сайт для open source проекта
37:30 – Как писать стили
43:10 – OG-картинки ГитХаба
58:50 – Конец
Ссылки:react-figma: https://github.com/react-figma/react-figma
svgo-components: https://github.com/svg/svgo-components
react-media-hook: https://github.com/lessmess-dev/react-media-hook
astroturf: https://github.com/4Catalyzer/astroturf
cypress-real-events: https://github.com/dmtrKovalenko/cypress-real-events
jss: https://github.com/cssinjs/jss
A framework for building Open Graph images (GitHub): https://github.blog/2021-06-22-framework-building-open-graph-images/
#5. Разработчик который смог
У нас в гостях Владимир Харлампиди — создатель популярных open source библиотек Swiper и Framework7. Владимир развивает свои проекты почти целое десятилетие и научился весьма успешно монетизировать этот труд. Жмите Play и готовьтесь впитывать тонны полезной информации.
В выдуманной студии:The Goose: Дима Коваленко https://twitter.com/dmtrKovalenko
The Duck: Влад Шилов https://twitter.com/Omgovich
The Гость: Владимир Харлампиди https://twitter.com/nolimits4web
Таймкоды:00:00 – Приветствие
02:00 – Open source проекты Владимира
05:25 – Зачем нужен Framework7
10:25 – Проблема отличия от нативного UI
11:50 – Нужны ли JS-карусели если есть CSS Scroll Snap
13:20 – Material Design 2.0
14:33 – Вес библиотек
16:35 – Уменьшу ваш бандл за деньги
17:50 – Тесты, Cypress и co-contrubutor
20:55 – Peer Dependencies
23:02 – Вопрос от разработчика Reatom
24:55 – Постулаты semver
28:10 – Паблишинг пакетов и Bundlephobia
30:50 – Как работать с issue
34:40 – Недовольные пользователи
37:50 – Вкусовщина в issue
39:50 – Казино и Open Collective Владимира
43:45 – Принципы и инструменты успешной монетизации 🔥
51:30 – Swiper и TikTok
53:20 – Привлечение пользователей
55:30 – Что лучше: Patreon или Open Collective?
57:35 – Финансовая стабильность
59:00 – Tailwind Mobile и перелинковка проектов
01:01:15 – Почему нет TypeScript
01:02:45 – Конец
Ссылки:Swiper: https://swiperjs.com/
Framework7: https://framework7.io/
Apache Cordova: https://cordova.apache.org/
Electron: https://www.electronjs.org/
The next stage for Material Design: https://material.io/blog/announcing-material-you
Goober: https://github.com/cristianbote/goober
Reatom: https://github.com/artalar/reatom
Вопрос от Артема: https://twitter.com/artalar_dev/status/1412061893498490887
Bundlephobia: https://bundlephobia.com/
Плохой issue в репозитории Вебпака: https://github.com/webpack/webpack-cli/issues/1612
Carbon: https://www.carbonads.net/
OpenCollective проекта Swiper: https://opencollective.com/swiper
OpenCollective проекта Framework7: https://opencollective.com/framework7
Страница Владимира на Patreon: https://www.patreon.com/vladimirkharlampidi
Tidelift: https://tidelift.com/
Stakes.social: https://stakes.social/
DEV-protocol: https://devprotocol.xyz/
Tailwind Mobile: https://tailwind-mobile.com/
#4 – Просыпайтесь! Пора делать open source!
Поможет ли open source стать вам круче сына маминой подруги? Дизайнеры знают как себя «продавать» и делать портфолио, а программисты — нет? Нужен ли разработчику личный бренд или можно спокойно кодить на работе за зарплату?
В выдуманной студии:The Goose: Дима Коваленко https://twitter.com/dmtrKovalenko
The Duck: Влад Шилов https://twitter.com/Omgovich
Таймкоды:00:00 – Приветствие
01:26 – Зачем Дима переписывает Remotion на Rust
02:30 – Нужен ли браузер
04:55 – Использование SVG для рендера видео
06:45 – О планах
09:45 – Проблема сложности кода
19:00 – JSX в Rust
21:53 – Зачем заниматься опен сорсом
23:15 – Портфолио дизайнера vs портфолио программиста
27:47 – Фейк-проекты vs реальные задачи
29:40 – Личный бренд и поиск работы
32:03 – Open source и саморазвитие
35:03 – Новые технологии и best practices
37:56 – Зачем компаниям делать open source
40:50 – GitHub — сервис знакомств
43:43 – Pixel matching и visual regression testing
49:44 – Цветовые модели и YIQ
51:50 – История sRGB
53:43 – Международная комиссия по освещению и CIE XYZ
56:14 – Отображение цветов в браузере
59:56 – Open source и работа
01:01:30 – Конец
Ссылки:Remotion: https://www.remotion.dev/
resvg — SVG renderer на Rust: https://github.com/RazrFalcon/resvg
handlebars.js: https://github.com/handlebars-lang/handlebars.js
handlebars-rust: https://github.com/sunng87/handlebars-rust
Библиотеки 2D рендреинга:
Cairo: https://www.cairographics.org/
Skia: https://skia.org/Qt: https://www.qt.io/
A tiny Skia subset ported to Rust: https://github.com/RazrFalcon/tiny-skia
RSX (JSX в Rust): https://github.com/victorporof/rsx
OSnap: https://github.com/eWert-Online/OSnap
Visual-Regression-Tracker: https://github.com/Visual-Regression-Tracker/Visual-Regression-Tracker
pixelmatch: https://github.com/mapbox/pixelmatch
looks-same: https://github.com/gemini-testing/looks-same
Цветовая модель YIQ: https://en.wikipedia.org/wiki/YIQ
sRGB: https://en.wikipedia.org/wiki/SRGB
CIE (International Commission on Illumination): https://en.wikipedia.org/wiki/International_Commission_on_Illumination
CIE XYZ и цветовая подкова: https://en.wikipedia.org/wiki/CIE_1931_color_space
#3 UI-дизайн-framework-системы
В чем разница между UI-китом и дизайн-системой? Как отличить хорошую дизайн-систему от подделки? Как мотивировать себя делать pet-проект длиной в два года?
В выдуманной студии:The Goose: Дима Коваленко https://twitter.com/dmtrKovalenko
The Duck: Влад Шилов https://twitter.com/Omgovich
The Гость: Дмитрий Беляев https://twitter.com/blvdmitry
Таймкоды:00:00 – Приветствие
02:33 – Что такое дизайн-система
07:36 – Разница между UI Kit и дизайн-системой
09:10 – Философия в дизайн-системах
12:51 – Формулировки
14:47 – Про Arcade Design
17:10 – Как долго заниматься своим проектом
20:37 – Мотивация через сайд-проекты
26:20 – Важны ли технологии
28:54 – Фреймворк для дизайн-системы
32:00 – Обязательно ли все выкладывать на GitHub
33:40 – Headless
38:58 – Кастомизация компонентов
41:25 – Готовые дизайн-системы и корпоративный стиль
44:15 – Монетизация дизайн-систем
48:08 – Продвижение и ProductHunt
50:32 – Анонс от Димы Коваленко
55:30 – Как выбрать хорошую open source дизайн-систему
01:05:50 – Тестирование
Ссылки:Arcade: https://arcade.design/
Design System Checklist: https://www.designsystemchecklist.com/
Material Design: https://material.io/
Material UI: https://material-ui.com/
Магазин Material UI: https://material-ui.com/store/
Chakra UI: https://chakra-ui.com/
Chakra UI Pro: https://pro.chakra-ui.com/
And Design: https://ant.design/
Reach UI: https://reach.tech/
Headless UI: https://headlessui.dev/
Reakit: https://reakit.io/
Radix UI: https://www.radix-ui.com/
Дима Беляев о Faceless/Headless UI на React Day Berlin 2018: https://youtu.be/Lzb28YoKSoc?t=484
Дима Беляев о дизайн-системах на React Amsterdam 2020: https://youtu.be/G4mui3OCMVA?t=1151
#2 – Промежуточные сорсмапы с Валентином Семирульником
Кто сейчас отвечает за ваши sourcemap-ы? Flow больше не open source? Что нового в Jest и медленный ли он? Жмите «Play» и мы ответим на эти вопросы.
Ведущие:The Goose: Дима Коваленко https://twitter.com/dmtrKovalenkoThe Duck: Влад Шилов https://twitter.com/Omgovich
Гость:Валентин Семирульник https://twitter.com/7rulnik
Ссылки:Канал «Валя читает ишью»: https://t.me/valya_reads_issue
source-map от Mozilla: https://www.npmjs.com/package/source-map
source-map-js от Валентина: https://www.npmjs.com/package/source-map-js
Роман Дворнов о source-map: https://t.me/gorshochekvarit/76
Maybe you don't need Rust and WASM to speed up your JS: https://mrale.ph/blog/2018/02/03/maybe-you-dont-need-rust-to-speed-up-your-js.html
Flow меняет приоритеты: https://medium.com/flow-type/clarity-on-flows-direction-and-open-source-engagement-e721a4eb4d8b
Создатель Jest комментирует ситуацию с Flow: https://twitter.com/cpojer/status/1397439239768317952
Анонс Jest 27: https://jestjs.io/blog/2021/05/25/jest-27
jsdom: https://github.com/jsdom/jsdom
Доклад Димы про компонентное тестирование: https://youtu.be/ROzqRsaL-yg
Тест-раннер uvu от Luke Edwards: https://github.com/lukeed/uvu
Сервис для рекурсивного построения дерева зависимостей: https://npm.anvaka.com/
Визуализация зависимостей jest: https://npm.anvaka.com/#/view/2d/jest
#1 Ржавеющий JavaScript
Во втором выпуске подкаста мы обсуждаем язык Rust, его потенциал в опенсорсе и влияние на JavaScript-комьюнити.
Ведущие:The Goose: Дима Коваленко https://twitter.com/dmtrKovalenko
The Duck: Влад Шилов https://twitter.com/Omgovich
Новая бета Parcel: https://v2.parceljs.org/blog/beta3/
swc: https://swc.rs/
Бенчмарк сборщиков на сайте esbuild: https://esbuild.github.io/
Сайт Rust: https://www.rust-lang.org/
Как npm Inc использует Rust: https://www.rust-lang.org/static/pdfs/Rust-npm-Whitepaper.pdf
Terser экспериментирует с Rust: https://github.com/terser/terser-rust-experiment
esbuild собирает бинарники для каждой платформы: https://github.com/evanw/esbuild/blob/master/Makefile
Сайт Rust Foundation: https://foundation.rust-lang.org/
Регистр пакетов для Rust: https://crates.io/
wasm-pack для конвертации Rust-кода в WebAssembly: https://github.com/rustwasm/wasm-pack
Поддержка WebAssembly браузерами: https://caniuse.com/wasm
Slidev: https://github.com/slidevjs/slidev
Reveal.js: https://github.com/hakimel/reveal.js
Goose&Duck п(и)лотный – Babel, деньги, два гуся
Пилотный/тестовый выпуск «Goose & Duck» — подкаста про open source и все что с ним связано. Будем рады вашим комментариев и благодарны за обратную связь.
Ведущие:Goose: Дима Коваленко https://twitter.com/dmtrKovalenko
Duck: Влад Шилов https://twitter.com/Omgovich
Ссылки:Babel is running out of money: https://babeljs.io/blog/2021/05/10/funding-update
Husky сменил лицензию для коммерческих проектов: https://github.com/typicode/husky/releases/tag/v5.0.0
Windi CSS https://windicss.org/
Webpack-плагин для «ленивой» компиляции: https://github.com/liximomo/lazy-compile-webpack-plugin
esbuild: https://github.com/evanw/esbuild
Sucrase: https://github.com/alangpierce/sucrase
Remotion: https://github.com/JonnyBurger/remotion