В начале июля писал, что ищу новый способ вести канал. Держу в курсе, я кое-что придумал.
Я очень узкий специалист: умею делать фронтенды и небольшие бекенды для них, здорово пишу на TypeScript и похуже на JavaScript. Это то, чем я занимаюсь на работе за деньги.
А с остальным IT я знаком довольно поверхностно. Да, я могу написать Dockerfile, или быстренько состряпать мобильное приложение на чем-нибудь, но в целом все это для меня — тёмный лес. И это супер-интересно! Я обожаю разговаривать с людьми об этом, разбираться как делать правильно. И решил, что хочу делиться с вами этими разговорами.
Я очень узкий специалист: умею делать фронтенды и небольшие бекенды для них, здорово пишу на TypeScript и похуже на JavaScript. Это то, чем я занимаюсь на работе за деньги.
А с остальным IT я знаком довольно поверхностно. Да, я могу написать Dockerfile, или быстренько состряпать мобильное приложение на чем-нибудь, но в целом все это для меня — тёмный лес. И это супер-интересно! Я обожаю разговаривать с людьми об этом, разбираться как делать правильно. И решил, что хочу делиться с вами этими разговорами.
💁♂️ и я завел подкаст — в нем я буду разговаривать в умными людьми об умных вещах. И первый выпуск про DevOps c Сашей Фаткулиным.
Саша — просто волшебник. Он построил продакшн в Самокате, сделал разработку простой и приятной, и заодно отвечал на тысячи моих глупых вопросов.
В этот раз мы обсудили вот что:
+ что такое Docker, зачем он нужен и почему все им пользуются;
+ как в современном мире принято запускать приложения и следить за их работой;
+ про повседневную работу DevOps, программирование и велосипеды;
+ как Самокат пережил нагрузку из-за короновируса;
+ почему облачные провайдеры — не всегда лучший выбор;
+ про страшный факап и его починку.
Саша — просто волшебник. Он построил продакшн в Самокате, сделал разработку простой и приятной, и заодно отвечал на тысячи моих глупых вопросов.
В этот раз мы обсудили вот что:
+ что такое Docker, зачем он нужен и почему все им пользуются;
+ как в современном мире принято запускать приложения и следить за их работой;
+ про повседневную работу DevOps, программирование и велосипеды;
+ как Самокат пережил нагрузку из-за короновируса;
+ почему облачные провайдеры — не всегда лучший выбор;
+ про страшный факап и его починку.
Если вы не знаете что такое подкасты и как этим пользоваться, вот инструкция.
Пожалуйста, напишите свои впечатления мне @igorkamyshev, мне правда важно узнать, как оно вам.
Продолжаю осваивать новые платформы — выложил подкаст на YouTube.
Подписывайтесь, ставьте лайки, нажимайте колокольчик 👇
https://youtu.be/tccehPUEUXk
Подписывайтесь, ставьте лайки, нажимайте колокольчик 👇
https://youtu.be/tccehPUEUXk
YouTube
s01e01 DevOps с Сашей Фаткулиным
Саша — просто волшебник. Он построил продакшн в Самокате, сделал разработку простой и приятной, и заодно отвечал на тысячи моих глупых вопросов. В этот раз он рассказал мне:
+ что такое Docker, зачем он нужен и почему все им пользуются;
+ как в современном…
+ что такое Docker, зачем он нужен и почему все им пользуются;
+ как в современном…
Прочитал небольшую книгу Naming Things (за пару часов можно управиться). Она не даёт какой-то ультимативно новой информации, но рассматривает именование всего немножко с другой стороны.
Автор связывает именование с контекстами использования, дизайном программы в целом и общением с заказчиком. На мой взгляд, такая связь помогает писать лучший код.
#общие_знания
Автор связывает именование с контекстами использования, дизайном программы в целом и общением с заказчиком. На мой взгляд, такая связь помогает писать лучший код.
#общие_знания
Сходил в в гости к подкасту «Сделайте мне красиво». Рассказал как устроены фронтенды внутри Авиасейлс, про наши боли и радости.
Получилось удивительно бодро, послушайте.
https://soundcloud.com/begebot/ep43
Получилось удивительно бодро, послушайте.
https://soundcloud.com/begebot/ep43
Svelte — это новый и очень модный фронтенед фреймворк. О нем начали говорить года полтора назад, я тогда взглянул на него и решил, что ничего интересного внутри нет.
На днях я снова посмотрел на него и даже сделал небольшой пет-проект. Стоит заметить, что большую часть времени я пишу на Реакте, поэтому сравнение невольно получилось именно с ним.
#фронтенд
На днях я снова посмотрел на него и даже сделал небольшой пет-проект. Стоит заметить, что большую часть времени я пишу на Реакте, поэтому сравнение невольно получилось именно с ним.
#фронтенд
Кайф:
1. Реактивность из коробки — шок и трепет, почти работает (столкнулся с одним багом и пришлось сделать все немножко иначе);
2. Slots, Event Forwarding — мелочи, которых очень нехватает в Реакте;
3. Очень много вещей для которых в Реакте нужны сторонние библиотеки тут есть из коробки (скоупинг стилей, управление состоянием, транзишны).
Не кайф:
1. Это уже не JS, семантика многих конструкций совсем другая — магические значки доллара, экспорты как объявление пропсов;
2. Сомнительная интеграция с TS, я попробовал, сходу не завелось и забил;
3. Очень много магии, Реакт-приложение можно запустить прямо в браузере (только JSX придется выкинуть), тут же результирующий код совсем далек от того, что я написал.
Svelte — это интересная технология. Я, пожалуй, попробую его на более крупном проекте.
#фронтенд
1. Реактивность из коробки — шок и трепет, почти работает (столкнулся с одним багом и пришлось сделать все немножко иначе);
2. Slots, Event Forwarding — мелочи, которых очень нехватает в Реакте;
3. Очень много вещей для которых в Реакте нужны сторонние библиотеки тут есть из коробки (скоупинг стилей, управление состоянием, транзишны).
Не кайф:
1. Это уже не JS, семантика многих конструкций совсем другая — магические значки доллара, экспорты как объявление пропсов;
2. Сомнительная интеграция с TS, я попробовал, сходу не завелось и забил;
3. Очень много магии, Реакт-приложение можно запустить прямо в браузере (только JSX придется выкинуть), тут же результирующий код совсем далек от того, что я написал.
Svelte — это интересная технология. Я, пожалуй, попробую его на более крупном проекте.
#фронтенд
Знаете, меня очень печалит, что для создания мобильного приложения нужно две отдельные команды разработки — iOS и Android. Чувствую в этом какую-то внутреннюю неправильность. И поэтому я с интересом наблюдаю за всеми инициативами по созданию фреймворков кросс-платформенной разработки.
Я радовался, когда выходил Xamarin, писал на React Native и хочу попробовать сделать серьезное приложение на Flutter. И поэтому я позвал большого специалиста по Flutter, Евгения Кота, чтобы расспросить его о Dart, Flutter и вот этом всем.
Я радовался, когда выходил Xamarin, писал на React Native и хочу попробовать сделать серьезное приложение на Flutter. И поэтому я позвал большого специалиста по Flutter, Евгения Кота, чтобы расспросить его о Dart, Flutter и вот этом всем.
Евгений Кот — директор по разработке в пражском отделении Wrike. А Wrike — самая дартовая компания России, они писали на нем, когда это было полным безумием (как мне тогда казалось).
Мы поговорили про историю создания и первой «смерти» Dart, про неожиданную популярность Flutter, его сильные и слабые стороны. Обсудили текущее положение дел на рынке, погрустили про Flutter for Web и Fuchsia OS.
А в небольшом послешоу выяснили, что общего у XCode и монорепозиториев.
Мы поговорили про историю создания и первой «смерти» Dart, про неожиданную популярность Flutter, его сильные и слабые стороны. Обсудили текущее положение дел на рынке, погрустили про Flutter for Web и Fuchsia OS.
А в небольшом послешоу выяснили, что общего у XCode и монорепозиториев.
Сегодня утром посмотрел кайфовый доклад Почему ваша архитектура функциональная и как с этим жить. В нем рассматриваются принципы функционального программирования, которые можно приложить к любой системе. С ними система становится надежнее и проще, а никакой лишней ментальной нагрузки они не несут.
Доклад в основном про C# (и немного F#), но сами подходы ценны в любой экосистеме.
#фп #архитектура
Доклад в основном про C# (и немного F#), но сами подходы ценны в любой экосистеме.
#фп #архитектура
YouTube
Роман Неволин — Почему ваша архитектура функциональная и как с этим жить
Ближайшая конференция — DotNext 2024, 10 — 11 сентября, Москва + online
Подробности и билеты: https://jrg.su/x2GKnA
— —
Задумывались ли вы, как часто пишете в функциональном стиле? Возможно, это происходит чаще, чем кажется...
Если ваш проект — не дремучее…
Подробности и билеты: https://jrg.su/x2GKnA
— —
Задумывались ли вы, как часто пишете в функциональном стиле? Возможно, это происходит чаще, чем кажется...
Если ваш проект — не дремучее…
В IT есть темы, в которых я ничего не понимаю. И самая темная из них — сети. Я очень примерно представляю как работает интернет, но в подробностях всегда теряюсь.
На самом деле, такие базовые вещи важно знать не только админам, которые с этими сетями работают каждый день, а любому специалисту, сталкивающемуся с Интернетом.
Встретил на днях хорошую статью, которая понятно и подробно объясняет все что нужно знать.
Сети для начинающего IT-специалиста. Обязательная база
#общие_знания
На самом деле, такие базовые вещи важно знать не только админам, которые с этими сетями работают каждый день, а любому специалисту, сталкивающемуся с Интернетом.
Встретил на днях хорошую статью, которая понятно и подробно объясняет все что нужно знать.
Сети для начинающего IT-специалиста. Обязательная база
#общие_знания
Контракты — это ещё один способ увеличить надежность программы. Это и валидация, и парсинг, и проверка типов. Класс! Но мне всегда казалось, что в JS-мире это неудобно и костыльно.
Сегодня посмотрел доклад Контрактное программирование как средство, а не цель, который меня переубедил.
#фронтенд
Сегодня посмотрел доклад Контрактное программирование как средство, а не цель, который меня переубедил.
#фронтенд
YouTube
Артём Арутюнян — Контрактное программирование как средство, а не цель
Ближайшая конференция: HolyJS 2025 Autumn, 20—21 ноября, Санкт-Петербург + online. Подробности и билеты: https://jrg.su/EM4wwV
— —
. . Отличное подспорье для надежного исполнения программы контрактное программирование, т.к. этот подход гарантирует корректность…
— —
. . Отличное подспорье для надежного исполнения программы контрактное программирование, т.к. этот подход гарантирует корректность…
Я часто придумываю или нахожу какое-то мелкое решение, использую его и забываю. В следующий раз снова гуглю (или ищу в своем коде), как это сделать. Это не очень удобно, поэтому решил собирать такие мелкие рецепты в одно место. Не уверен, насколько кому-то кроме меня будет полезны эти рецепты, но пусть уж будут публичные.
https://www.notion.so/kamyshev/4ab00ab272e144a69a10242e826dad72?v=6f679602f9ad41f0913dc638bcfc1aab
https://www.notion.so/kamyshev/4ab00ab272e144a69a10242e826dad72?v=6f679602f9ad41f0913dc638bcfc1aab
Kamyshev on Notion
Howtocards | Built with Notion
Я часто гуглю одно и тоже по тысяче раз. Тут я буду собирать короткие рецепты, чтобы легко находить решения постоянно возникающих проблем.
kamyshev.code via @vote
Стоит ли тут рассказывать о новых заметках в этом документе?
anonymous poll
Да 🤓 – 149
👍👍👍👍👍👍👍 96%
Нет 🤫 – 7
▫️ 4%
👥 156 people voted so far.
anonymous poll
Да 🤓 – 149
👍👍👍👍👍👍👍 96%
Нет 🤫 – 7
▫️ 4%
👥 156 people voted so far.
Сегодня утром посмотрел крутой доклад про архитектуру — Быстрорастворимое проектирование.
В нем дается альтернативный взгляд на проектирование веб-приложений — не классическая слоистая или луковая архитектура, а нечто новое. Мне понравился этот подход, несмотря на его сложность.
В докладе весь код приводится на C#, но подходы применимы к любому языку (с небольшими правками, конечно)
#проектирование #архитектура
В нем дается альтернативный взгляд на проектирование веб-приложений — не классическая слоистая или луковая архитектура, а нечто новое. Мне понравился этот подход, несмотря на его сложность.
В докладе весь код приводится на C#, но подходы применимы к любому языку (с небольшими правками, конечно)
#проектирование #архитектура
YouTube
Максим Аршинов — Быстрорастворимое проектирование
Ближайшая конференция:
DotNext 2022 Spring — 16-17 июня.
Подробности и билеты: https://bit.ly/33DNbpA
— —
. . Люди учатся архитектуре по старым книжкам, которые писались для Java Книжки хорошие, но дают решение задач того времени инструментами того времени…
DotNext 2022 Spring — 16-17 июня.
Подробности и билеты: https://bit.ly/33DNbpA
— —
. . Люди учатся архитектуре по старым книжкам, которые писались для Java Книжки хорошие, но дают решение задач того времени инструментами того времени…
На прошлой неделе писал про мои заметки с быстрыми решениями, добавил туда новую напоминалку — про JS-функцию, которая типографирует русские тексты.
https://www.notion.so/kamyshev/036b55da6eb44540b941d66c07e0857b
#js
https://www.notion.so/kamyshev/036b55da6eb44540b941d66c07e0857b
#js
Массово выкидываем старый код
Aviasales уже 13 лет, в проекте много такого кода, который когда-то был написан, но сейчас уже не нужен. Последние три недели я большую часть времени занимаюсь тем, что выкидываю старый код.
Это сложная задача, в первую очередь из-за хрупкости системы. Любое твое действие может привести к поломке вообще всего. Но удаление лишнего кода — первый шаг к развязыванию зависимостей и улучшению архитектуры.
Вообще, наша глобальная цель — сделать так, чтобы в репозитории не было кода, которые не «видят» пользователи. Думаю, это достойная цель для любого проекта.
#кейс #рефакторинг
Aviasales уже 13 лет, в проекте много такого кода, который когда-то был написан, но сейчас уже не нужен. Последние три недели я большую часть времени занимаюсь тем, что выкидываю старый код.
Это сложная задача, в первую очередь из-за хрупкости системы. Любое твое действие может привести к поломке вообще всего. Но удаление лишнего кода — первый шаг к развязыванию зависимостей и улучшению архитектуры.
Вообще, наша глобальная цель — сделать так, чтобы в репозитории не было кода, которые не «видят» пользователи. Думаю, это достойная цель для любого проекта.
#кейс #рефакторинг