podcast
details
.com
Print
Share
Look for any podcast host, guest or anyone
Search
Showing episodes and shows of
Konstantin Burkalev
Shows
SDCast
SDCast #122: в гостях Георгий Меликов, контрибьютор проектов OpenZFS и ZFS on Linux
После несколько затянувшегося перерыва, встречайте 122-й выпуск подкаста, посвящённый файловой системе ZFS. У меня в гостях Георгий Меликов, контрибьютор проектов OpenZFS и ZFS on Linux. В этом выпуске мы говорим о том, как устроена файловая система ZFS, в чём её особенности и отличия от других файловых систем, из каких компонентов она состоит и как работает. Георгий рассказал про архитектуру системы, рассказал про модули и их назначение, мы обсудили в целом подход Copy on write, иммьютабельность данных, снепшоты, различные кэши и методы оптимизаций, применяемые в ZFS. Поговорили про фрагментацию данных, шифрование и сжатие. Георгий рассказал про интересные новые фичи, которые появились в последних релизах или находятся в альфе и скоро попадут в релиз, например нативное шифрование или dRAID. Так же Георгий рассказал про историю проекта, а точнее целое семейство проектов, и то, как все они потихонечку собираются воедино. Не могли мы не поговорить про сравнение ZFS и железных контроллеров и поддержку ZFS в апстриме ядра Linux. Обсудили так же и open source составляющую проекта: какая команда, какие компании поддерживают проект, планы по развитию проекта. Ссылки на ресурсы по темам выпуска: * Проект openzfs на github (https://github.com/openzfs/) * Общая документация (https://github.com/openzfs/) * Newcomer Resources (https://openzfs.org/wiki/Newcomers) * Developer resources (https://openzfs.org/wiki/Developer_resources) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом или постом! Заходи в телеграм-чат SDCast (https://t.me/SDCast), где можно обсудить выпуски, предложить гостей и высказать свои замечания и пожелания!
2020-09-09
1h 38
SDCast
SDCast #121: Круглый стол про код-ревью
Товарищи, в этот раз вас ждёт необычный выпуск подкаста! Почему? — Этот выпуск был записан в прямом эфире с обсуждением вопросов зрителей, онлайн-голосованиями и другими активностями. Но не переживайте, весь контент доступен для восприятия в аудио-формате как и прежде! Итак, выпуск посвящён непростой и спорной теме код-ревью. В этом выпуске, помимо меня приняли участие: * Александр Макаров, лид проекта Yii Framework * Антон Морев, основатель и СТО Wormsoft * Сергей Жук, разработчик из SkyEng Вот далеко не полный перечень тем, которые мы обсудили: * Каким должно быть идеальное код-ревью? * Есть ли отличия в процессах код-ревью для крупных компаний, заказной разработки и open source проектов? * Размеры одного пулл-реквеста: что делать с огромными пул-реквестами? * Сколько времени должно уходить на ревью одного запроса? Когда и как делать код-ревью? * Как экономить время на код-ревью? * Инструменты, облегчающие и помогающие код-ревью * Человеческий фактор в код-ревью: как не убить критикой все старания? В процессе беседы мы много вспоминали и приводили примеры из собственного опыта, команд и проектов. Поэтому попытались не просто порассуждать о идеальном ревью, а привести примеры, подходы и практики, работающие в конкретных ситуациях и командах. Так же за время беседы мы запустили несколько голосований по тематике код-ревью, а в конце дискуссии подвели итоги. Ссылки на ресурсы по темам выпуска: * Доклада Сереги Жука: «Code review: быстро и эффективно» (https://www.youtube.com/watch?v=se3F83O0ZiY&feature=youtu.be&t=349) и его текстовая версия (https://habr.com/ru/company/skyeng/blog/443402/) * Инструменты: * _https://www.sqlstyle.guide_ (https://www.sqlstyle.guide/) - Руководство по стилю SQL * _https://prettier.io/_ (https://prettier.io/). An opinionated code formatter * *conventional: *comments (https://conventionalcomments.org/). Подход к комментированию пулл-реквестов от Пола Слоутера из GitLab * Статья «Prettier в крупных проектах: тратим 20 минут на настройку, забываем о форматировании навсегда» (https://habr.com/ru/company/skyeng/blog/484992/) * Гайдлайны код-ревью проекта Yii (https://github.com/yiisoft/docs/blob/master/013-code-review.md) * Анонс нашего эфира на хабре (https://habr.com/ru/company/skyeng/blog/508148/) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом или постом! Заходи в телеграм-чат SDCast (https://t.me/SDCast), где можно обсудить выпуски, предложить гостей и высказать свои замечания и пожелания!
2020-07-20
2h 12
SDCast
SDCast #120: в гостях Павел Савельев, руководитель отдела автоматизации бизнес-процессов и Павел Агалецкий, системный архитектор в компании Lamoda
Встречайте 120-й выпуск подкаста с ребятами из компании Lamoda. У меня в гостях Павел Савельев, руководитель отдела автоматизации бизнес-процессов и Павел Агалецкий, системный архитектор. В этом выпуске мы говорим про архитектуру больших систем, межсервисное взаимодействие, API, процессы разработки, коммуникации и open source. В начале ребята рассказали про архитектуру подсистемы доставки Lamoda. Как она устроена, на чём написана, какие есть ключевые сервисы и как работает бизнес-логика. Затем мы обсудили межсервисное взаимодействие, потоки данных, подходы к разработки новых сервисов. Подискутировали на тему API: ребята рассказали как устроено API у них, почему они выбрали JSON-RPC, обсудили консистентность и докумендацию API. Поговорили про людей, команды и технологии. Ребята рассказали про размер команды, как устроен процесс разработки, как выбираются технологии, вспомнили про тех радар. Обсудили, как внедряется новый разработчик в команду, вспомнили про performance review, личностный и профессиональный рост. Ребята поделились своим опытом переезда в облака и контейнеры, рассказали как они прошли этот путь и с чем столкнулись в процессе. Так же ребята рассказали про то, зачем они выкладывают какие-то свои библиотеки и компоненты в open source. Что это даёт компании и конкретным разработчикам. В завершении выпуска обсудили насущную тему удалённой работы. Ребята поделились своими личными впечатлениями от удалёнки и рассказали как выстроен процесс у них в компании. Ссылки на ресурсы по темам выпуска: * Про архитектуру доставки: * Деплой приложений в VM, Nomad и Kubernetes (https://habr.com/ru/company/lamoda/blog/451644/) * Насколько легко доставить заказ, зная адрес клиента (не очень) (https://habr.com/ru/company/lamoda/blog/444848/) * Про сервисы, API, стандарты, REST и не только: * Унифицируй это: как Lamoda делает единообразными свои Go сервисы (https://habr.com/ru/company/lamoda/blog/495344/) * Опыт разработки сервиса Refund Tool с асинхронным API на Kafka (https://habr.com/ru/company/oleg-bunin/blog/445424/) * PHP-библиотеки для e-commerce: работа с АТОЛ и Payture, парсинг кодов GS1 и другие задачи (https://habr.com/ru/company/lamoda/blog/466039/) * Про процессы и команды: * Доклад Александра Афенова «Сверстать всех наверх: онбординг новых сотрудников» (https://www.youtube.com/watch?v=3Fw-3Z0KbeY&list=PLl9pILEeZ62KgcgOEz67qJTidE-84xdNt) * Доклад Александра Афенова «Техническая ипотека: что и кому должен тимлид» (https://www.youtube.com/watch?v=D5euegEMjVc&list=PLl9pILEeZ62KgcgOEz67qJTidE-84xdNt&index=7) * Доклад Евгении Голевой «Как организовывать Knowledge Sharing внутрь и наружу» (https://www.youtube.com/watch?v=eYc3MailO1I&list=PLl9pILEeZ62KgcgOEz67qJTidE-84xdNt&index=6) * Доклад Александра Афенова «Трудно быть Колей: теория и практика knowledge sharing в Lamoda» (https://www.youtube.com/watch?v=shQBCFESRmg&list=PLl9pILEeZ62KgcgOEz67qJTidE-84xdNt&index=4) * Open source репозитории Lamoda на GitHub (https://github.com/lamoda) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом или постом! Заходи в телеграм-чат SDCast (https://t.me/SDCast), где можно обсудить выпуски, предложить гостей и высказать свои замечания и пожелания!
2020-06-30
2h 12
SDCast
SDCast #119: в гостях Андрей Старовойт, разработчик WebStorm в JetBrains
Продолжаем серию выпусков про IDE. На этот раз у меня в гостях Андрей Старовойт, разработчик из команды WebStorm в JetBrains. В этом выпуске мы сконцентрировались на вопросах поддержки в IDE новых фич языка JavaScript, поддержки TypeScript, наиболее популярных фреймворков и различных сторонних инструментов. Андрей рассказал про особенности интеграции TypeScript, поддержку новых типов, взаимодействие с tsc и как сделана поддержка различных версий TypeScript. Мы обсудили как решается вопрос необходимости поддержки новых фич языка JS или глубокая поддержка конкретного фреймворка или технологии, и даже вспомнили про meteor.js! Андрей рассказал про команду разработки, используемые технологии, принцип выбора языка для реализации новых фич а так же про то, откуда брать компетенцию в различных веб-фреймворках, если каждый день пишешь на Java/Kotlin. В завершении выпуска подискутировали о веб направлении в целом и экосистеме JS в частности, а так же Андрей рассказал про текущие задачи и планы на ближайшее будущее WebStorm. Ссылки на ресурсы по темам выпуска: * Доклад Андрея «Эволюция TypeScript: язык и IDE» (https://www.youtube.com/watch?v=qddYQL5-rZY) * Доклад Андрея с разбором как работают литеральные типы в TypeScript и зачем они нужны (https://www.youtube.com/watch?v=9ik75yvo2BA) * 42 WebStorm Tips and Tricks (https://www.youtube.com/watch?v=x8y_6Gg28GI) * Twitter WebStormIDE (https://twitter.com/WebStormIDE) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом или постом! Заходи в телеграм-чат SDCast (https://t.me/SDCast), где можно обсудить выпуски, предложить гостей и высказать свои замечания и пожелания!
2020-06-19
1h 19
SDCast
SDCast #118: в гостях Дмитрий Маракасов, разработчик свободного ПО
Что-то давно не было у меня выпусков про настоящий Open Source, linux, BSD. Восполняем этот пробел! У меня в гостях Дмитрий Маракасов, разработчик свободного ПО, автор проекта repology (https://repology.org/). Repology занимается агрегацией информации о пакетах из максимального числа репозиториев и формированием полной картины о поддержке в дистрибутивах по каждому свободному проекту с целью упрощения работы и улучшения взаимодействия мейнтейнеров пакетов как между собой, так и с авторами ПО - в частности, проект помогает быстрее обнаруживать выпуски новых версий ПО, следить за актуальностью пакетов и наличием уязвимостей, унифицировать схемы именования и версионирования, поддерживать метаинформацию в актуальном состоянии, делиться патчами и решениями проблем и улучшать переносимость ПО. В этом выпуске мы говорим с Димой про Open Source, пакетные менеджеры и репозитории для linux и BSD систем, FreeBSD, разработке и конечно же проекте Repology. В начале Дима рассказал как возникла идея сделать этот проект, как давно уже он им занимается. Мы обсудили архитектуру проекта, его составные компоненты, на чём они написаны и как работают. Дима рассказал про некоторые интересные сложности на пути написания проекта, например, про сложность резолвинга имён пакетов и тонкости версионирования пакетов в различных системах. Мы обсудили, какой функционал есть в Repology, какие данные он предоставляет, какую статистику и отчёты можно увидеть, что есть в API. Так же Дима поделился текущей статистикой по проекту. Поговорили мы и про open source составляющую проекта: Дима рассказал про пользователей проекта, есть ли сообщество вокруг проекта, предложения идей и багфиксы. Так же мы обсудили тему самодостаточных пакетов (flatpak и ему подобные), немного подискутировали про языковые пакетные менеджеры, Дима рассказал про текущее положение дел с автоматическим тестированием портов FreeBSD и детерминированные сборки. Ссылки на ресурсы по темам выпуска: * Проект Repology (https://repology.org/) и его код на GitHub (https://github.com/Repology) * Stream JSON parser for Python (https://github.com/AMDmi3/jsonslicer), упомянавшийся в подкасте * libversion. (https://github.com/repology/libversion) Библиотека для сравнения версий пакетов * Похожие проекты: * Linux repositories inspector (https://reposcope.com/) * release-monitoring.org (https://release-monitoring.org/) * pkgs.org (https://pkgs.org/) * rpm.pbone.net (https://rpm.pbone.net/) * rpmfind.net (http://rpmfind.net/) * Статья: «Developers shouldn't distribute their own software» (https://drewdevault.com/2019/12/09/Developers-shouldnt-distribute.html) * Итоги полугода работы (https://www.opennet.ru/opennews/art.shtml?num=52977) проекта Repology (по состоянию на май 2020 года) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом или постом! Заходи в телеграм-чат SDCast (https://t.me/SDCast), где можно обсудить выпуски, предложить гостей и высказать свои замечания и пожелания!
2020-06-03
1h 29
SDCast
SDCast #117: в гостях Денис Падрухин, директор компании разработки INEDI
Рад представить вашему вниманию 117-й выпуск SDCast’а, посвящённый вопросам проектирования и разработки UI/UX программных продуктов. У меня в гостях Денис Падрухин, директор компании разработки INEDI. В этом выпуске мы говорим про разработку интерфейсов приложений и интеграцию этого этапа в общих жизненный цикл разработки ПО. Вначале мы обсудили, как изменились технологии в разработке UI/UX за последние годы. Затем Денис рассказал про процесс интеграции дизайна в проект: какие есть сложности и технические особенности, как подружить дизайнеров, верстальщиков и программистов, которые норовят скопипастить стили и подправить, как им нравится. Так же Денис вспомнил интересные случаи из жизни про интеграции дизайна в различных встраиваемых системах. Мы обсудили, как можно разрабатывать интерфейсы с прицелом на дальнейшую расширяемость и развитие проекта, есть ли какие-то общие правила и приёмы, которые помогают не наступить на грабли в дальнейшем. Немного подискутировали на тему использования так называемого фирменного стиля, который обычно относится к типографской продукции в дизайне интерфейсов ПО. Денис поделился своими мыслями о том, что же в интерфейсе является самым важным: визуальная составляющая, красивые анимации или же удобство ввода данных и эффективность работы пользователей. В заключении выпуска подискутировали о том, куда движется индустрия в целом, какие есть интересные новшества и что нас может ждать в будущем. Ссылки на ресурсы по темам выпуска: * Статья Дениса «Дизайн интерфейсов встраиваемых систем» (https://habr.com/ru/post/448670/) * Заметка «Умный дом. UI дизайн, история разработки» (https://inediapps.com/blog/smarthome.html) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом или постом! Заходи в телеграм-чат SDCast (https://t.me/SDCast), где можно обсудить выпуски, предложить гостей и высказать свои замечания и пожелания!
2020-05-21
1h 38
SDCast
SDCast #116: в гостях Виктор Яблоков, руководитель мобильной разработки «Лаборатории Касперского»
Встречайте 116-й выпуск подкаста, на этот раз посвящённый аспектам безопасности мобильных платформ и разработке решений по обеспечению безопасности мобильных устройств. У меня в гостях Виктор Яблоков, руководитель мобильной разработки «Лаборатории Касперского». В этом выпуске мы говорим о том, как развивались мобильные технологии от первых смартфонов на symbian до наших дней, какие были проблемы безопасности в мобильной сфере тогда и что изменилось сейчас. Виктор рассказывает про то, как работают различные виды вредоносов и как от них защищаться. Так же Виктор рассказал про то, как устроено ядро безопасности и SDK для мобильных приложений, которое они разрабатывают, какие там используются технологии, фреймворки и языки программирования. Поговорили мы и о вендорских прошивках на базе Android, какие это привносит сложности в разработку, чем помогает Google Compatibility Suite и как устроено тестирование в целом. Так же Виктор рассказал про процессы разработки в своём отделе, команды, разработчиков, мотивацию и возможность ротации. Мы обсудили подходы к экспериментам с функциями и UI/UX приложений и A/B тестирование, Виктор рассказал как и на ком они проводят свои эксперименты. В заключении выпуска подискутировали о том, куда движется индустрия мобильной разработки в целом. Ссылки на ресурсы по темам выпуска: * Мобильная вирусология за 2019 год (https://securelist.ru/mobile-malware-evolution-2019/95602/) * Подборка статей по мобильным угрозам (https://securelist.ru/all/?category=717) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом или постом!
2020-05-12
1h 56
SDCast
SDCast #115: в гостях Сергей Тихомиров, блокчейн исследователь, аспирант Университета Люксембурга
Рад представить 115-й выпуск подкаста, речь в котором идёт про Bitcoin. Волна хайпа биткоина и блокчейн технологий немного спала, но тем не менее капитализация биткоина по прежнему превышает 130 млд долларов, а это что-то значит. У меня в гостях Сергей Тихомиров, блокчейн исследователь, аспирант Университета Люксембурга и автор подкаста Базовый блок. В этом выпуске мы обсуждаем различные социальные, финансовые и прочие аспекты биткоина, конечно же не обойдя стороной и технические вопросы реализации, новые идеи и криптографические механизмы. В начале Сергей вкратце рассказал про биткоин, криптовалюты и блокчейн в целом, что это такое и как работает. Мы разобрали как устроен процесс обмена биткоинами между двумя сторонами в контексте вопросов безопасности, анонимности и приватности. Сергей рассказал про различные криптографические механизмы защиты, применяемые в биткоин сейчас, а так же какие есть новые идеи, алгоритмы и подходы, улучшающие приватность сделок. Обсудили Эфир, aka Ethereum и его смарт-контракты, какие-то новые веяния и идеи, построенные на базе эфира и смарт-контрактов. В заключении немного порассуждали о будущем криптовалют, тенденциях и возможных направлениях развития. Ссылки на ресурсы по темам выпуска: * Сайт Сергея с его работами и статьями (https://s-tikhomirov.github.io/about/) * «Базовый блок» (https://basicblockradio.com/) — русскоязычный подкаст о блокчейн-технологиях * Рыночные капитализации криптовалют (https://coinmarketcap.com/) * Официальный сайт Bitcoin (https://bitcoin.org/) * Официальный сайт Ethereum (https://ethereum.org/) * Технический Q&A по Bitcoin (https://bitcoin.stackexchange.com/) * Вводная статья «What Is Bitcoin?» (https://bitcoinmagazine.com/guides/what-bitcoin) * Сайт главного блокчейн-просветителя Andreas M. Antonopoulos (https://aantonop.com/) * Обзорная статья «Research Perspectives and Challenges for Bitcoin and Cryptocurrencies» (http://wws.princeton.edu/system/files/research/documents/Felten_SoK.pdf) (2015 год) * Видео курс и учебник «Bitcoin and Cryptocurrency Technologies» (https://bitcoinbook.cs.princeton.edu/) * Статья «Understanding The Lightning Network» (https://bitcoinmagazine.com/articles/understanding-the-lightning-network-part-building-a-bidirectional-payment-channel-1464710791) * Обзорная статья «Layer-Two Blockchain Protocols» (https://eprint.iacr.org/2019/360) * Zcash is a privacy-protecting, digital currency built on strong science (https://z.cash/) * MONERO. A Reasonably Private Digital Currency (https://www.getmonero.org/) * A list of all podcasts related to Bitcoin / Ethereum / blockchain / cryptocurrency (https://github.com/s-tikhomirov/blockchain-podcasts). Невероятно длинный список подкастов про блокчейн и криптовалюты, который поддерживает Сергей Понравился выпуск? — Расскажи друзьям, поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом или постом!
2020-04-21
1h 40
SDCast
SDCast #114: в гостях Александр Кукушкин, database инженер в Zalando
Встречайте 114-й выпуск подкаста! У меня в гостях Александр Кукушкин, database инженер в Zalando. Хотя, наверное, многие знают его как разработчика Patroni: A Template for PostgreSQL HA with ZooKeeper, etcd or Consul. Так что речь в этом выпуске пойдёт про PostgreSQL, кластеры, Patroni, облака, AWS, Kubernetes и даже про базы данных PostgreSQL в K8S :) В начале выпуска Саша рассказал про переезд в Германию, насколько это было сложно и как прошло. Дальше Саша рассказал про компанию в целом, как давно он там работает и чем занимается. Мы обсудили как устроена инфраструктура в компании в части баз данных, какие есть кластеры, их примерное количество и размеры. Саша рассказал про репликацию и резервирование данных внутри и между датацентрами. Обсудили переезд сервисов и баз данных в облака: Саша рассказал как они переводили серверы баз данных в AWS, какие были потребности в отказоустойчивости и чем эти потребности закрывались. Именно тогда на свет появился Patroni. Саша рассказал про устройство Patroni, как он работает и что умеет. Рассказал про его развитие, добавление новых фич, таких как управление конфигурацией PostgreSQL сервера, синхронизация конфигов. Рассказал про различные варианты использования DCS (distributed configuration store) и как он адаптировал Patroni для работы в кластере Kubernetes с минимальными накладными расходами. Не могли мы пройти мимо темы облаков, контейнеризации и диспетчеризации контейнеров в целом. Так что подискутировали о том, какие выгоды даёт K8S и какие сложности приносит в разработку и сопровождение. Саша рассказал несколько интересных кейсов из опыта использования K8S в Zalando. Ссылки на ресурсы по темам выпуска: * Patroni: A Template for PostgreSQL HA with ZooKeeper, etcd or Consul (https://github.com/zalando/patroni) * Блог Афира про тестирование распределённых систем (https://aphyr.com/tags/Distributed-Systems) * Kubernetes Failure Stories (https://github.com/hjacobs/kubernetes-failure-stories) * Kubernetes Janitor. Clean up (delete) Kubernetes resources after a configured TTL (https://github.com/hjacobs/kube-janitor) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом, постом и просто рассказом друзьям!
2020-04-01
1h 33
SDCast
SDCast #113: в гостях Александр Сербул, руководитель направления контроля качества интеграций и внедрений в компании 1С-Битрикс
Встречайте 113-й выпуск подкаста, в котором у меня в гостях Александр Сербул, руководитель направления контроля качества интеграций и внедрений в компании 1С-Битрикс, а так же технологический евангелист. В этом выпуске мы говорим про архитектуру, языки программирования, machine learning, нейросети, облака и многое другое. И нет, не думайте, что этот выпуск только про PHP и 1C-Битрикс! Вначале Саша рассказал про свой довольно насыщенный и тернистый путь в IT, с чем сталкивался, какие задачи приходилось решать и какие роли играть. Саша поделился теми книгами, которые произвели на него сильное впечатление сыграли не последнюю роль в его профессиональных навыках. Саша рассказал про общую архитектуру системы, её компоненты, сервисы, используемые языки и технологии. Отдельно мы обсудили тему облаков, облачных решений, AWS в частности, его плюсы и минусы и возможные альтернативы. Так же Саша рассказал про Rust, чем он так хорош, где нашлось ему место и какую выгоду это принесло. Обсудили мы и тему строгой типизации в различных интерпретируемых языках, хайп вокруг неё и немного подискутировали о том, когда она не очень нужна, а когда без неё уже не обойтись. Большой темой беседы стало машинное обучение. Саша рассказал про то, где у себя в системе они применяют машинное обучение, какие решают задачи с её помощью. Рассказал про используемые алгоритмы, фреймворки, языки и технологии. Не обошли мы стороной и вопрос первого языка программирования. Саша поделился своим мнением на этот счёт. Ссылки на ресурсы по темам выпуска: * Фильмы: * Одержимость (Whiplash) (https://www.kinopoisk.ru/film/725190/) * Общество мертвых поэтов (Dead Poets Society) (https://www.kinopoisk.ru/film/4996/) * Книги: * Архитектура компьютера (https://www.ozon.ru/context/detail/id/20032936/), Таненбаум Э., Остин Т. * Философия Java (https://www.ozon.ru/context/detail/id/4073388/), Эккель Б. * Java. Эффективное программирование (https://www.litres.ru/dzhoshua-bloh/javatm-effektivnoe-programmirovanie-48411247/), Блох Джошуа * Advanced Programming in the UNIX Environment (https://www.amazon.com/Advanced-Programming-UNIX-Environment-3rd/dp/0321637739), Richard Stevens * Deep Learning (http://www.deeplearningbook.org/), Ian Goodfellow and Yoshua Bengio and Aaron Courville * PyTorch (https://pytorch.org/). An open source machine learning framework that accelerates the path from research prototyping to production deployment. * LightFM (http://lyst.github.io/lightfm/docs/home.html) is a Python implementation of a number of popular recommendation algorithms for both implicit and explicit feedback. * Статья «Towards optimal personalization: synthesisizing machine learning and operations research» (https://www.ethanrosenthal.com/2016/08/30/towards-optimal-personalization/) * Paper «Factorization Machines» (pdf) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом, постом и просто рассказом друзьям!
2020-02-05
1h 48
SDCast
SDCast #112: Круглый стол про удалёнку
Рад представить вашему вниманию 112-й выпуск SDCast’а посвящённый удалённой работе и распределённым командам разработки. На этот раз у нас собралась большая компания участников, а именно: * Всеволод Поляков, консультант по DevOps, основатель сообщества ukrops club (https://ukrops.club/) * Светлана Божко, руководитель отдела в Cisco, ведущая подкаста devzen (https://devzen.ru/) * Павел АргентОв, тимлид в компании Evrone * Никита Борзых из компании Express 42 Вначале мы обсудили, какие бывают типы удалёнки и чем они отличаются, а дальше углубились в различные аспекты, вопросы и сложности работы в удалённо-распределённых командах. Вот лишь часть тем, которые были затронуты в процессе обсуждения: * Типы личности. Кому подходит удалёнка, а кому нет? Как понять, что сотруднику подойдет ремоут? * Процесс ввода нового сотрудника в команду aka onboarding * Процесс выхода сотрудника из проекта/команды aka offboarding * Вопросы доверия и делегирования * Проблемы общения, обратная связь, синхронная и асинхронная коммуникация * Токсичность в общении * Вопросы найма удалённых сотрудников * KnowledgeSharing и передача дел, текущих задач между сменами в командах с сильным разбросом по часовым поясам * Синхронизация инженерного опыта и midset в распределенной команде * Remote time tracking и разные подходы к этому в компаниях * Нужно ли брать больничные и вообще, как болеть на удалёнке Поскольку все участники дискуссии имеют опыт работы в распределённых командах, нам удалось собрать и обсудить различные мнения по вопросам, поделиться работающими подходами и приёмами решения некоторых проблем. Надеюсь, что все слушатели узнаю и для себя что-то новое. Ссылки на ресурсы по темам выпуска: * Книга «Пиши, сокращай» (https://www.litres.ru/avtor/pishi-sokraschay-kak-sozdavat-silnye-teksty-21112011/), Максим Ильяхов, Людмила Сарычева. * Книга «Remote. Офис не обязателен» (https://www.mann-ivanov-ferber.ru/books/paperbook/remote-office-not-required/), Джейсон Фрайд и Дэвид Хайнемайер Хенссон * Книга «The Checklist Manifesto: How to Get Things Right» (https://www.amazon.co.uk/Checklist-Manifesto-Things-Right-Gawande/dp/1846683149), Atul Gawande * Статья «Remote Working» (https://www.integralist.co.uk/posts/remote-working/) от Mark McDonnell * Статья «On Messing Up Your Remote Team—And Then Getting It Right» (https://angel.co/blog/on-messing-up-your-remote-team-and-then-getting-it-right) * Статья «A Distributed Meeting Primer» (https://randsinrepose.com/archives/a-distributed-meeting-primer/) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon), звёздочками в iTunes (https://podcasts.apple.com/ru/podcast/software-development-podcast/id890468606?l=en), а так же ретвитом, постом и просто рассказом друзьям!
2020-01-22
3h 05
SDCast
SDCast #111: В гостях Сергей Жук, разработчик из Skyeng
Встречайте 111-й выпуск подкаста, в котором у меня в гостях Сергей Жук, разработчик из Skyeng. В этом выпуске мы говорим про удалённую работу, публичную активность разработчиков и асинхронный PHP. Сергей живёт в Брянске, не самом айтишном городе. Мы поговорили про саморазвитие, опыт и получение знаний. Сергей рассказал про поиск удалённой работы, как начать вести свой технический блог, делать скринкасты и что это даёт. Так же Сергей рассказал про свою удалённую команду в Skyeng, как у них построены рабочие процессы. Мы обсудили важность код-ревью, документирования кода, асинхронность коммуникаций и другие важные аспекты разработки. В какой-то момент Сергей увлёкся асинхронным PHP настолько, что он рассказывает про него на различных митапах и конференциях, записывает подкасты и даже написал несколько книг про ReactPHP! Мы обсудили для каких задач стоит применять асинхронный PHP, какие проблемы он может помочь решить и как внедрить его в уже существующий проект. Ссылки на ресурсы по темам выпуска: * Книги Сергея про ReactPHP, Event-driven PHP и другие (https://leanpub.com/u/seregazhuk) * Канал Сергея со скринкастами про ReactPHP на Youtube (https://www.youtube.com/channel/UC3EThWvNp4EabJD7PyCOzGw/) * Блог (https://sergeyzhuk.me/) * Статья на английском про жизненный путь Сергея в маленьком провинциальном городе (https://dev.to/yanchauskayte2/how-to-grow-as-a-developer-if-you-live-in-a-small-town-16l1) * Статья Сергея “Как разработчику развиваться в небольшом и не самом айтишном городе” на Хабре (https://habr.com/ru/company/skyeng/blog/476480/)
2019-12-24
1h 14
SDCast
SDCast #110: В гостях Анна Мелехова, архитектор платформы в компании Acronis
Рад представить вам 110-й выпуск SDCast’а. У меня в гостях Анна Мелехова, архитектор платформы в компании Acronis. В этом выпуске мы говорим про архитектуру систем, API, образование и знания. В начале мы обсудили какие есть сложности в разработке архитектуры по сравнению с написанием кода, как вообще планировать и прорабатывать архитектуру систем, можно ли на ранних этапах построения архитектуры минимизировать затраты на поддержку legacy с течением времени. Одной из главных тем нашей беседы было API. В апреле 2019 года Acronis открыл сторонним разработчикам доступ к API и примерам исходных кодов своих продуктов, запустив платформу Acronis Cyber Platform. Предполагается, что используя возможности платформы, разработчики смогут создавать новые источники данных, хранилища данных и функции управления, а также интегрировать свои приложения с решениями Acronis для киберзащиты. Кроме того, они смогут интегрировать технологии Acronis в свои приложения, системы и облачные торговые площадки. Поэтому именно на Анну и ее коллег упала задача проектирования API. Мы поговорили о том, как унифицировать API, когда в его разработке участвует несколько команд. Аня рассказала про этапы построения API и различные инструменты, которые помогают разрабатывать и сопровождать API в дальнейшем. Аня рассказала про API Styleguide который они разработали в Acronis, что он содержит и как он помогает разработчикам избежать типичных ошибок и создавать консистентные API. Подискутировали мы и про знания и образование. Аня преподаёт на ФизТехе, у неё есть несколько авторских курсов. Мы обсудили необходимость базовых знаний для разработчиков, чего не хватает и стоило бы поменять в нашей системе образования и откуда вообще черпать свои знания в процессе работы. В заключение выпуска пофилософствовали на тему того, как разработчику вырасти в архитектора и что для этого нужно делать. Ссылки на ресурсы по темам выпуска: * Курсы Carnegie Mellon University по архитектуре ПО (https://www.sei.cmu.edu/research-capabilities/all-work/display.cfm?customel_datapageid_4050=21328) * Книга “Software Architecture in Practice” (https://www.amazon.com/Software-Architecture-Practice-3rd-Engineering/dp/0321815734) * Видео доклада Анны Мелеховой и Владимира Лапатина с Highload++ ’19 (https://www.youtube.com/watch?v=ik9dL9p9wpI&feature=youtu.be)“Заключая контракт: как осуществить хороший API для (микро)сервиса” (http://www.highload.ru/moscow/2019/abstracts/5234) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-12-13
1h 19
SDCast
SDCast #109: В гостях Антон Титов, технический директор, основатель компании SpiralScout
Рад представить вашему вниманию 109-й выпуск SDCast’а с Антоном Титовым, техническим директором и основателем компании SpiralScout. В этом выпуске мы снова говорим о процессах разработки, но не только, а так же обсуждаем RoadRunner, высокопроизводительный сервер приложений PHP, написанный на Go, другие open source проекты компании, soft skills и многое другое. В начале Антон рассказал про компанию, как она зарождалась, развивалась, какие были процессы и организация в компании в начале и как это видоизменилось к настоящему времени. Мы поговорили про удалённую работу и работу в офисе, обсудили вопросы мотивации сотрудников. Антон рассказал про внедрение в компании четырёхдневной рабочей недели, о том как этот эксперимент доказал свою полезность и закрепился на постоянной основе. Одной из главных тем нашей беседы был конечно же проект RoadRunner. Это сервер приложений, написанный на Golang. Антон является автором и разработчиком RoadRunner. Он рассказал про проблемы php-fpm, и почему решил написать новый сервер, почему был выбран go для реализации, какова архитектура проекта и как взаимодействуют между собой go и php. Так же мы обсудили ещё один проект Антона Cycle DataMapper ORM: зачем нужен ещё один ORM для PHP, как Cycle ORM устроен внутри и какие у него особенности. Поговорили мы и в целом про open source, публикацию проектов, коммьюнити и обратную связ от пользователей. Антон, являясь техническим директором компании, умудряется находить время на программирование и оставаться техническим экспертом в используемых технологиях. Я попросил его рассказать, как ему удаётся совмещать различные роли и главное, как распоряжаться своим временем, чтобы его хватало на все задачи. Так же мы поговорили про софт скилы, насколько они важны для различных ролей (разработчики, тимлиды, СТО) и как эти софт скилы прокачивать. Ссылки на ресурсы по темам выпуска: * RoadRunner (https://roadrunner.dev/). А high-performance PHP application server, load-balancer, and process manager written in Golang * Cycle ORM (https://github.com/cycle/orm). PHP DataMapper ORM and Data Modelling Engine * Доклад Антона с конференции PHP Russia ’19 “Разработка гибридных PHP/Go-приложений с использованием RoadRunner” (Видео (https://www.youtube.com/watch?v=RUm94xCaXMo), расшифровка на хабре (https://habr.com/ru/company/oleg-bunin/blog/461827/)) * Статья «RoadRunner: PHP не создан, чтобы умирать, или Golang спешит на помощь» (https://habr.com/ru/company/badoo/blog/434272/) * Статья «Сравниваем PHP FPM, PHP PPM, Nginx Unit, React PHP и RoadRunner» (https://habr.com/ru/post/431818/) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-10-30
1h 38
SDCast
SDCast #108: В гостях Александр Тавген, софт-архитектор из Playtech
После долгого перерыва встречайте 108-й выпуск подкаста! У меня в гостях Александр Тавген, софт-архитектор из компании Playtech. В этом выпуске мы говорим про процессы разработки, обмен знаниями, архитектуру, open source и даже музыке! ;) В начале Александр рассказал про компанию в целом и свою роль и место в компании. Мы обсудили процессы разработки в крупных компаниях, где есть много продуктов или компонентов одной системы и много различных команд: как держать в узде зоопарк технологий, какие есть проблемы коммуникативного и технического плана. Александр рассказал про то, как в их компании эволюционировал процесс распространения знаний, какие они нашли для себя интересные и работающие подходы и практики, что такое кросс-команды, как они организованы и что является результатом их работы. Поговорили и про публикацию проектов в open source, как и почему выбираются те или иные технологии для реализации проекта. Обсудили социализацию в ИТ: увеличение числа конференций, локальных митапов, каких-то прочих неформальных активностей, открытость компаний в части публикации своих наработок в open source и многое другое. Так же Александр рассказал про одно своё интересное увлечение — это объединение музыки и технологий в проекте интерактивного театра. Ссылки на ресурсы по темам выпуска: * Статьи Александра на Хабре: * Сложность на границе хаоса, или что общего между сексом, нейронными сетями, микросервисами и организацией компании (https://habr.com/ru/post/327138/) * Как соединить Java, Js и графы с искусством, или история о том, как создавался интерактивный театр (https://habr.com/ru/post/425537/) * Как мы музицировали с нейронными сетями (V1) (https://habr.com/ru/post/342306/), и V2 (https://habr.com/ru/post/463237/) * Как мы делали Multitouch Table (https://habr.com/ru/post/249399/) * Как мы делали робота-футболиста (https://habr.com/ru/post/249229/) * Блог Александра на Медиуме (https://medium.com/@ATavgen) * Статьи про мониторинг: * Never Fail Twice, или как построить мониторинговую систему с нуля (https://habr.com/ru/post/352980/) * A Vision towards Observability in Practice (https://medium.com/datadriveninvestor/a-vision-towards-observability-in-practice-43948e2f4f1f) * Видео докладов и выступлений Александра: * Как соединить Java, Js и графы с искусством (https://www.youtube.com/watch?v=IYilFQN65-Y) * Observability - the good, the bad and the ugly (https://www.youtube.com/watch?v=n2lLnibmkWo) * Using InfluxDB for Full Observability of a SaaS Platform (https://www.youtube.com/watch?v=P1RvA9wHxsc) * Reactive and functional approaches (https://www.youtube.com/watch?v=15u57Z8Go7U) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-10-17
1h 55
SDCast
SDCast #107: в гостях Кирилл Смелов и Максим Колмаков, разработчики PhpStorm
Встречайте 107-й выпуск подкаста, в котором мы вместе с Петей из «Пятиминутки PHP» (https://5minphp.ru/), пообщались с Кириллом Смеловым и Максимом Колмаковым, разработчиками из команды PhpStorm в компании JetBrains. В этом выпуске ребята рассказали про то, как устроена разработка PhpStorm, какая есть связь с основной платформой IntelliJ, как с технической стороны, так и социально-коммуникативной. Мы обсудили, кто и как задаёт вектор развития продукта, откуда поступают запросы на новые фичи, как происходит планирование релизов. Также ребята рассказали про команду проекта, роли и зоны ответственности, и поделились своим впечатлением от стажёрства и наставничества над студентами и какие это даёт плоды. Поговорили мы и о последних новых фичах языка и интересных возможностях PhpStorm, которые появились совсем недавно, или поддержка которых как раз планируется. Обсудили поддержку статических анализаторов для PHP, таких как PHPStan, Psalm. Ребята рассказали про интересную возможность менять поведение IDE через конфигурацию на PHP, так называемые META файлы. Обсудили такую важную вещь — как обратная связь от пользователей продукта, насколько она важна для разработчиков, что даёт открытость баг-трекера коммерческого продукта и возможные каналы обратной связи. Ссылки на ресурсы по темам выпуска: * Доклад Кирилла с PHP Russia’19 «PHP как инструмент разработки PhpStorm» (https://www.youtube.com/watch?v=8pKa195Bkno&feature=youtu.be) * Баг-трекер PhpStorm (https://youtrack.jetbrains.com/issues/WI) * New .phpstorm.meta.php features (https://blog.jetbrains.com/phpstorm/2019/02/new-phpstorm-meta-php-features/) * PhpStorm advanced metadata (https://www.jetbrains.com/help/phpstorm/ide-advanced-metadata.html) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-08-12
1h 28
SDCast
SDCast #106: В гостях Максим Шульга, технический руководитель одного из направлений разработки в SEMrush
Товарищи! Рад представить вам 106-й выпуск SDCast’а. У меня в гостях Максим Шульга, технический руководитель одного из направлений разработки в SEMrush. Основной темой этого выпуска является качество программного обеспечения. Максим рассказал как он сам пришёл к пониманию того, что такое качество ПО, как его оценивать, анализировать и повышать. Мы обсудили вопросы тестирования софта: когда и в каком объёме это должны делать сами программисты, а когда целесообразней выделить для тестирования и оценки качества отдельных специалистов. Обсудили различные стадии разработки ПО и где там найдётся место для процессов тестирования и оценки качества. Обсудили так же и тему различных способов организаций команд разработки в больших компаниях: классические отделы, продуктовые команды, бизнес-юниты и прочие вариации. Какие есть плюсы и минусы в таких подходах, как внедрять новые технологии и как распространять знания внутри компании, не потеряв при этом фокус на основных ценностях команд. Максим участвовал в организации различных конференций, среди которых например Heisenbug (https://heisenbug.ru/). Поэтому мы пообщались и на эту тему. Максим рассказал про свой опыт участия, что это даёт и как устроено. Ссылки на ресурсы по темам выпуска: * Блог Максима (https://www.maxshulga.ru/) * Заметка Макса “Кто такой хороший тестировщик? (https://www.maxshulga.ru/2012/12/blog-post_17.html)” * Заметка Макса “Нужны ли тестировщики, если разработчики пишут тесты? (https://www.maxshulga.ru/2014/12/i-need-testers.html)” * Заметка Макса “Тестирование в продакшене - миф или реальность? (https://www.maxshulga.ru/2018/03/testing-in-production.html)” * Выступление Аркадия Мурашева “Действенный мониторинг доступности в вебе (https://2018.secrus.org/program/submitted-presentations/availability-monitoring/)” * Выступление Алексея Кочетова про канареечный деплой в SEMrush и использование проверок из мониторинга там (https://www.youtube.com/watch?v=Gf6jxyB2ANo) * Записи всех докладов с конференций Heisenbug (https://www.youtube.com/channel/UCX6fjZa167tSy_4ryTLcOBw) * Та самая статья “Как мы пробивали Великий Китайский Фаервол на Хабре (Часть 1 (https://habr.com/ru/company/semrush/blog/458602/), Часть 2 (https://habr.com/ru/company/semrush/blog/458840/), Часть 3 (https://habr.com/ru/company/semrush/blog/459024/)) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-07-31
1h 23
SDCast
SDCast #105: В гостях Никита Соболев, CTO в компании wemake.services
Встречайте 105-й выпуск подкаста, в котором у меня в гостях Никита Соболев, CTO в компании wemake.services. Вместе с Никитой мы обсуждаем процессы разработки программного обеспечения, подходы, методологии, инструменты и различные другие аспекты. В начале разговора Никита немного рассказал про сообщество ElixirLangMoscow, организатором которого он является. Никита - автор методологии Repeatable Software Development Process (RSDP). Он рассказал, что это за подход, какие в нём ключевые идеи, основные моменты и как устроен сам процесс разработки, работающий по этой методологии. На примере компании wemake.services Никита рассказал, как устроена разработка у них. Мы обсудили все этапы, начиная от старта работ по новому проекту, формулирование и обсуждение требований и тех задания, декомпозиции проекта на более мелкие задачи, приёмка и проверка выполненных задач программистами, тестирование, инструменты для автоматизации различных процессов разработки и прочее. Поговорили мы так же и о soft skills, о том, как можно развиваться разработчику, как и чем его мотивировать, как общаться, особенно в распределённой команде. Затронули тему внедрения новых технологий в существующих проектах и поддержку legacy-кода. Ссылки на ресурсы по темам выпуска: * Блог Никиты (https://sobolevn.me/) на английском, где он пишет о разработке и смежных темах * Сайт компании wemake.services (https://wemake.services/meta/) * Доклад Никиты с KnowledgeConf'19 “Как учить программистов в 21-м веке” (https://sobolevn.me/talks/knowledge-conf-2019) * Интервью с Виталием Брагилевским (https://habr.com/ru/company/provectus/blog/452246/): «Мир, в котором все будут программировать на Haskell — это вряд ли хороший мир» Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-06-28
1h 34
SDCast
SDCast #104: по следам конференции PHPRussia'19
Товарищи! Представляю вам несколько коротких интервью, записанных на конференции PHPRussia'19, которая прошла 17 мая в Москве. В начале я немного рассказал в целом про конференцию, организацию, доклады и докладчиков. А далее идут 2 интервью: * Первое интервью с Антоном Шабовтой про асинхронный PHP, многозадачность и долгоживучесть PHP-процессов. * Второе интервью с Антоном Моревым про Rest API и GraphQL, плюсы и минусы подходов, области и задачи применения. Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (http://patreon.com/KSDaemon), а так же ретвитом, постом и просто рассказом друзьям!
2019-05-22
33 min
SDCast
SDCast #103: в гостях Никита Попов
Ходит шутка, что как устроен PHP полностью знают только Никита Попов и Дмитрий Стогов. Так вот Никита в этом выпуске у меня в гостях! Последние несколько лет Никита активно участвует в развитии языка PHP, является автором многих интересных RFC, часть из которых уже внедрена в текущие версии PHP, и автором нескольких низкоуровневых библиотек, которые используются многими проектами. В этом выпуске мы поговорили с Никитой о различных сторонах и аспектах языка и экосистемы PHP. Никита рассказал про своё знакомство с PHP, как он стал контрибьютить в проект и в итоге стал core разработчиком. Рассказал и про то, откуда он черпает идеи для новых улучшений языка. Обсудили мы и то, как архитектура языка, заложенная на начальном этапе, влияет на текущую разработку и развитие языка, насколько легко или сложно внедрять новые возможности, подходы и парадигмы, например, многопоточность, асинхронность и прочее. Отдельно обсудили тему появления JIT в PHP. Что это даст PHP, какие плюсы несёт, какова сложность внедрения и трудозатраты на реализацию. Также Никита рассказал про разработку PHP за кадром: как core разработчики общаются между собой, обсуждают и планируют внедрение новых возможностей и улучшений языка. В завершение выпуска Никита рассказал про свой предстоящий доклад на PHPRussia '19. Ссылки на ресурсы по темам выпуска: * Список PHP улучшений за авторством Никиты (https://nikic.github.io/aboutMe.html#accepted-php-proposals) * How To Create an RFC (https://wiki.php.net/rfc/howto) (for PHP) * PHP-Parser (https://github.com/nikic/PHP-Parser). A PHP parser written in PHP * php-ast (https://github.com/nikic/php-ast). Extension exposing PHP 7 abstract syntax tree * Nikita Popov joins PhpStorm Team (https://blog.jetbrains.com/phpstorm/2019/01/nikita-popov-joins-phpstorm-team/) * Доклад Никиты на PHP Russia «Typed Properties and more: What’s coming in PHP 7.4? (https://phprussia.ru/2019/abstracts/5049)» Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-04-25
1h 03
SDCast
SDCast #102: в гостях инженеры из компании Artec 3D
Что вы знаете о технологиях трёхмерного сканирования и 3D-сканерах в частности? — Наверняка не многое. Интересно? — Тогда этот выпуск для вас! На этот раз у меня в гостях ребята из компании Artec 3D, занимающейся производством портативных 3D-сканеров: * Евгений Лыхин, руководитель программных разработок * Андрей Келл, тимлид команды разработки ПО сканера Leo * Павел Карпычев, программист команды разработки ПО сканера Leo * Антон Гудым, тимлид исследовательского отдела В этом выпуске мы обсудили технологии трёхмерного сканирования, достоинства и недостатки, требования к вычислительным ресурсам, скорость обработки данных, а так же области применения каждого подхода. Антон рассказал про то, как устроен процесс 3D сканирования, где и как происходит обработка данных. Совсем недавно, у компании Artec 3D появился профессиональный 3D-сканер нового поколения Artec Leo. Это первый 3D-сканер со встроенной технологией автоматической постобработки данных. Андрей и Павел рассказали про устройство этого сканера, и в особенности про его программное обеспечение. Мы обсудили всё, начиная от собственной сборки операционной системы, загрузчиков, механизмов достижения отказоустойчивости при сбое носителей и обновления системы, какие технологии используются в разработке, осветили системные сервисы, работающие на борту сканера и их коммуникации между собой и внешним миром, механизмы мониторинга и отказоустойчивости сервисов, а так же пользовательские интерфейсы. Так же ребята рассказали про то, как устроены процессы разработки внутри компании, какое окружение у разработчиков, как устроены CI/CD процессы, как происходит тестирование сборок. В заключении выпуска ребята поделились своим видением того, куда движется отрасль трёхмерного сканирования, какие появляются новые технологии и что нас ждёт в будущем.
2019-04-19
1h 34
SDCast
SDCast #101: в гостях Евгений Рыжков и Андрей Карпов
Встречайте 101-й выпуск SDCast’а, в котором мы говорим про статический анализ. У меня в гостях основатели PVS-Studio Евгений Рыжков и Андрей Карпов. В этом выпуске мы подискутировали о методологии статического анализа, обсудили различные подходы к внедрению статического анализа в процесс разработки ПО, осветили какие классы ошибок ловит статический анализатор. Так же ребята рассказали различные истории внедрения своего статического анализатора в различных компаниях и командах, мы обсудили целесообразность внедрения статического анализа в больших и малых командах, в каких случаях это даёт существенный плюс, в каких командах это просто необходимо. Не обошли мы стороной и технические аспекты статических анализаторов. Ребята рассказали про историю эволюции PVS-Studio и как в нём появлялась поддержка новых языков. Мы обсудили, насколько сильно различные языки и парадигмы влияют на ядро анализатора, какие есть подходы при реализации поддержки новых языков и какие плюсы и минусы у каждого подхода. Так же ребята рассказали, как устроен процесс разработки PVS-Studio у них в компании, как происходит планирование новых фич и выпуск версий и как построена работа с обратной связью от пользователей анализатора. Ссылки на ресурсы по темам выпуска: * Статья Андрея «Технологии, используемые в анализаторе кода PVS-Studio для поиска ошибок и потенциальных уязвимостей» (https://habr.com/ru/company/pvs-studio/blog/430604/) * Статья «Разработка нового статического анализатора: PVS-Studio Java» (https://habr.com/ru/company/pvs-studio/blog/414669/) * Блог компании PVS-Studio на хабре (https://habr.com/ru/company/pvs-studio/blog/) с статьями по разбору кода различных Open Source проектов и не только!
2019-03-28
1h 18
SDCast
SDCast #100: в гостях Никита Соболев и Григорий Петров
Встречайте 100-й выпуск подкаста! В этом микроюбилейном выпуске у меня в гостях Никита Соболев, технический директор компании wemake.services (https://wemake.services/), член ПК Moscow Python Conf и Григорий Петров, программист, организатор Moscow Python Conf и говорим мы, как вы могли догадаться, про Python. В этом выпуске мы обсудили сферы применения Python, такие как бэкенд, Machine Learning, web, DevOps, где он прижился и вписался очень хорошо, где не очень, обсудили почему так сложилось. Подискутировали о языках программирования для обучения, хотя кажется, холивара не получилось и мы все втроём сошлись во мнении, что python очень хорош в качестве первого языка программирования. Обсудили и то, как развивается Python сейчас, какие появляются новые фичи, и как наследие и архитектурные решения прошлого влияют на развитие языка. Обсудили так же плюсы и минусы диктаторского и, что называется, community-driven подхода к развитию языков программирования. Ссылки на ресурсы по темам выпуска: * Конференция Moscow Python Conf ++ (https://conf.python.ru/2019) * Заметка Никиты “Python exceptions considered an anti-pattern” (https://sobolevn.me/2019/02/python-exceptions-considered-an-antipattern) * Статья Гриши на Хабре «Moscow Python Conf++ 2019 — первая конференция, где мы готовим часть спикеров с нуля сами» (https://habr.com/ru/company/oleg-bunin/blog/435752/) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-03-18
1h 06
SDCast
SDCast #99: в гостях Михаил Клюев, Developer Relations менеджер в Авито
Товарищи, встречайте 99-й выпуск подкаста! У меня в гостях Михаил Клюев, Developer Relations менеджер в Авито. В этом выпуске мы говорим про тех пиар, Developer Relations и как сделать разработчиков счастливыми :) В начале Миша рассказал про своё понимание этого направления, в чём заключаются функции и задачи специалиста этой профессии. Мы обсудили различные направления технического пиара, техно бренда компании. Один из самых интересных вопросов — как можно оценить работу DevRel'а? Мы подискутировали на эту тему, а так же обсудили различные инструменты, которые есть в наличии у DevRel специалиста. Так же Миша рассказал про то, как устроены DevRel процессы в Авито. Обсудили мы и то, что айтишники больше всего ценят в компаниях, как различные компании используют эти ценности в своём технопиаре, какие есть тенденции и новшества в этом направлении. Поговорили мы и про каналы дистрибьюции контента и средства взаимодействия с разработчиками. В наш век блогов, твиттеров, телеграммов, различных соц сетей, чатиков, аудио и видео контент систем вопрос распространения контента и сбор обратной связи становится особенно актуальным. Конечно же подискутировали про конференции, Миша рассказал, что по его мнению с ними не так и что можно сделать, чтобы исправить ситуацию. В заключении выпуска обсудили куда движется отрасль, какие появляются новые тенденции, инструменты и направления. Ссылки на ресурсы по темам выпуска: * Доклад Миши “DevRel и HR: как достичь синергии?” (https://www.youtube.com/watch?v=EkmnFK2DxlI&feature=youtu.be) * Доклад Миши с конференции DevPRO'18 “Как перестать бояться и полюбить техпиар?” (https://www.youtube.com/watch?v=DZguoqpjLAI&feature=youtu.be) * Слайды презентации Adam FitzGerald “Which Metrics Matter in DevRel? (https://sdcast.ksdaemon.ru/wp-content/uploads/2019/02/devrelmetricsv04-170523180902.pdf)” * Отчёт от Wip Factory “5th Annual DevRel Survey. March 2018” (https://sdcast.ksdaemon.ru/wp-content/uploads/2019/02/WIPFactory-5th-Annual-DevRel-Survey-Release-March-2018.pdf) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-02-28
1h 44
SDCast
SDCast #98: в гостях Олег Шелаев, девелопер адвокат проекта GraalVM в команде OracleLabs
Мечтали ли вы когда-нибудь о такой платформе, где можно легко вызывать функции и модули, написанные на одном языке прямо в программе, написанной на другом языке? Сказка, не правда ли? А вот и нет! Есть такой проект, GraalVM, одной из идей которого как раз и является полиглот интероп платформа. В этом выпуске у меня в гостях Олег Шелаев, девелопер адвокат проекта GraalVM в команде OracleLabs, организатор VirtualJUG и митапов GDG Tartu. И в этом выпуске мы конечно же говорим про GraalVM. GraalVM — высокоэффективная универсальная виртуальная машина для разных языков программирования, поддерживающая многие популярные языки: Java, Kotlin, Scala, JavaScript, Python, Ruby, R и даже С и С++ и им подобные. GraalVM стирает рамки между языками программирования и позволяет интероп прямо в рантайме,. Так же, интересной особенностью GraalVM является способность компилировать JVM bytecode в машинный код ahead-of-time, создавая standalone образы обычных Java-программ, которые не зависят от JVM. Вначале Олег рассказал про историю зарождения проекта, как и когда всё начиналось, и что как живёт проект сейчас. Далее мы обсудили архитектуру и внутреннее устройство проекта, из каких компонентов и модулей он состоит, на каких языках и технологиях построен. Отдельно поговорили про компилятор Graal и ahead-of-time (AOT) компиляцию, плюсы и минусы такого подхода, ограничения и эффективность. Олег рассказал про специальную виртуальную машину SubstrateVM, чем она отличается от прочих JVM и какие дополнительные задачи решает. Обсудили мы также и общие вопросы жизни проекта: Олег рассказал про команду, распределение ролей и задач, взаимодействие с сообществом и планы по дальнейшему развитию проекта, а так же рассказал про реальные проекты и компании, которые используют GraalVM целиком или какие-либо отдельные компоненты системы. Ссылки на ресурсы по темам выпуска: * GraalVM (http://www.graalvm.org/). Основной сайт проекта * github.com/oracle/graal (http://github.com/oracle/graal) — главный репозиторий проекта * graalvm-demos (https://github.com/graalvm/graalvm-demos) — репозиторий с демками на разных языках * Блог команды GraalVM (https://medium.com/graalvm) * Хороший вводный доклад про GraalVM с Devoxx'18 «Deep dive into using GraalVM for Java and JavaScript developers by Oleg Šelajev, Thomas Wuerthinger (https://www.youtube.com/watch?v=a-XEZobXspo&feature=youtu.be)» * И ещё один доклад с Devoxx'18 «GraalVM: Run Programs Faster Anywhere by Oleg Šelajev, Thomas Wuerthinger (https://www.youtube.com/watch?v=50JxcnvJjMQ&feature=youtu.be)» * Видео доклада Олега “Fast startup for Java apps with GraalVM” (https://www.youtube.com/watch?v=HC8uoEX8B5A) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-02-18
00 min
SDCast
В гостях Александр Тоболь, руководитель разработки платформ видео и лента в ОК
Встречайте 97-й выпуск SDCast’а! У меня в гостях Александр Тоболь, руководитель разработки платформ видео и лента в ОК.ru. Александр регулярно выступает на различных конференциях с докладами про архитектуру, обработку видео, передачу данных, Machine Learning и много про что ещё интересного. Но в этом выпуске мы решили сконцентрироваться на теме передачи и обработки видео по сети, хотя и без обсуждения вопросов оптимизаций в различных аспектах не обошлось :) Александр рассказал про сервис видео вещания Одноклассников, его компоненты, используемые технологии, потоки данных и архитектуру в целом. Мы обсудили какие есть основные больные узкие места при передаче видео данных. В этом контексте мы поговорили на следующие темы: * Типичные подходы к доставке/передаче видео-контента * Транспортный уровень * TCP (и различные его улучшения вроде Fast retransmit, TCP Fast Open ), UDP, QUIC и прочие * Кодеки и алгоритмы сжатия * Устойчивость к потерям данных * Адаптивность * Шифрование * Нагрузки на железо, как те или иные выбранные программные решения влияют на нагрузку * Вопросы масштабирования * Оптимизации сетевого траффика * Вопросы безопасности Так же немного пофилософствовали о настоящем и возможном будущем сред и средств передачи данных, новых протоколах, подходах и алгоритмах. Ссылки на ресурсы по темам выпуска: * Доклад Александра с AppsConf '18 про сеть между сервером и клиентом "Как ускорить интернет, или Оптимизация приложений в мобильных сетях" (видео (https://www.youtube.com/watch?v=0xKAR0AHIdY&feature=youtu.be), слайды (http://appsconf.ru/2018/abstracts/3942)) * Доклад Александра с HL++ '17 “Пишем свой протокол поверх UDP (https://habr.com/ru/company/oleg-bunin/blog/413479/)” * Доклад Александра с LinuxPiter '18 "Ускорение скорости передачи данных в плохих сетях" (описание (https://linuxpiter.com/materials/2476), слайды (https://linuxpiter.com/system/attachments/files/000/001/525/original/%D0%90%D0%BB%D0%B5%D0%BA%D1%81%D0%B0%D0%BD%D0%B4%D1%80_%D0%A2%D0%BE%D0%B1%D0%BE%D0%BB%D1%8C__%D0%A3%D0%B2%D0%B5%D0%BB%D0%B8%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D0%BA%D0%BE%D1%80%D0%BE%D1%81%D1%82%D0%B8_%D0%BF%D0%B5%D1%80%D0%B5%D0%B4%D0%B0%D1%87%D0%B8_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85_%D0%B2_%D0%BF%D0%BB%D0%BE%D1%85%D0%B8%D1%85_%D1%81%D0%B5%D1%82%D1%8F%D1%85__v4.pdf?1541251262), видео пока ещё нет) * Лучший ресурс про сравнение кодеков (http://www.compression.ru/video/codec_comparison/hevc_2018/) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-01-31
1h 17
SDCast
В гостях Юрий Шабалин, ведущий архитектор в компании Swordfish Security
Встречайте 96-й выпуск SDCast’а, в котором речь идёт про безопасность разрабатываемых нами приложений. У меня в гостях Юрий Шабалин, ведущий архитектор в компании Swordfish Security. В этом выпуске мы говорим про практики SecDevOps, Application Security и прочие аспекты информационной безопасности программных продуктов. Вместе с Юрой мы попробовали обсудить весь жизненный цикл разработки ПО и как и на каких стадиях можно и нужно внедрять механизмы обеспечения безопасности: что можно сделать на этапе постановки задачи и сбора требований и заканчивая активным и проактивным мониторингом боевых приложений. Юра рассказал про различные классы инструментов, помогающие решать задачи по ИБ, такие как: * SAST (инструменты статического анализа) * SCA/OSA (инструменты контроля рисков компонент с открытым исходным кодом) * DAST/IAST (инструменты динамического/интерактивного анализа) * Инструменты непрерывной интеграции / непрерывного развертывания (CI/CD) * Инструменты дефект-менеджмента Обсудили, как можно безболезненно встраивать эти инструменты в уже существующие процессы CI/CD и как лучше подойти к этим вопросам при запуске нового проекта. Ссылки на ресурсы по темам выпуска: * Базовые уязвимости OWASP Top 10 (https://www.owasp.org/index.php/Category:OWASP_Top_Ten_Project) * Требования OWASP Application Security Verification Standard (https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verification_Standard_Project#tab=Downloads) * Как проверять требования (OWASP Testing Guide) (https://github.com/OWASP/OWASP-Testing-Guide-v5) * (https://continuumsecurity.net/bdd-security/)BDD Security (https://continuumsecurity.net/bdd-security/). Неплохая идея, как можно автоматизировать проверку требований * BSIMM. Фреймворк для построения процесса SSDL (https://www.bsimm.com/) * OpenSAMM. Фреймворк для построения процесса SSDL (https://www.opensamm.org/) * Nexus IQ. Платформа для проверки OpenSource Components (https://www.sonatype.com/nexus-iq-server) * Checkmarx SAST. Инструмент SAST (https://www.checkmarx.com/products/static-application-security-testing/) * Appsec Orchestration. Управление и оркестрация процессов SSDL (https://swordfishsecurity.ru/appsechub) * Бэкдор в event-stream (https://habr.com/post/431360/) * Несколько открытых проектов с уязвимостями для обучения: * DVWA (http://www.dvwa.co.uk/) * Juice Shop (https://www.owasp.org/index.php/OWASP_Juice_Shop_Project) * iOS (http://damnvulnerableiosapp.com/) * Android (https://github.com/dineshshetty/Android-InsecureBankv2) * Гайд для Security Champions (security-champions-playbook) (https://github.com/c0rdis/security-champions-playbook) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2019-01-15
1h 42
SDCast
В гостях инженеры Excelsior JET
Встречайте 95-й выпуск SDCast’а, в котором мы говорим про мир Java и JVM. В этот раз у меня в гостях ребята из компании Excelsior, чей флагманский продукт - это Excelsior JET (https://www.excelsior.ru/products/jet), реализация Java™ SE на основе статической компиляции. Поэтому в этом выпуске мы обсуждаем много технических аспектов реализации Java, как рантайма, так и компилятора, утилит мониторинга и производительности и многое другое. Итак, в этом выпуске приняли участие: * Никита Липский, один из инициаторов проекта Excelsior JET, и на данный момент руководитель продуктовго отдела JET. * Павел Павлов, в проекте с 1998 года, отвечает за компиляторную часть проекта, архитектуру ядра JVM, обучает и курирует стажёров и студентов. * Иван Углянский, один из разработчиков рантайма: GC, загрука классов, многопоточность, профилирование и т.д. В начале ребята рассказали про историю компании, предпосылки и причины появления на свет альтернативной реализации JVM. Мы обсудили чего не хватает в стандартной JVM, какие есть проблемы, которые пытаются решить другие JVM. Далее ребята рассказали про Excelsior JET: * Чем она отличается от других? * Какие есть особенности и фичи? * На чём написана? * Как выглядит архитектура системы в целом, какие есть модули, компоненты что и как взаимодействует * Runtime и компилятор, как они устроены, какие алгоритмы используют * Вопросы оптимизации производительности как компилятора, так и рантайма В процессе дискуссии обсудили в целом JIT и AOT подходы, достоинства и недостатки каждого, в каких случаях выигрывает один вариант, а в каких другой. Вспомнили и про другие реализации JVM и интересные проекты в этой области, например набирающий популярность GraalVM. Ссылки на ресурсы по темам выпуска: * Старый (но хороший) доклад Паши и Никиты про JET и историю его появления (https://www.youtube.com/watch?v=G9Oj3e1XCRg) * Доклад Никиты и Паши со встречи JUG.ru'13 “Excelsior JET: внутренняя архитектура (https://www.youtube.com/watch?v=tXDoGWGfZyw&t=2884s)” * Доклад Никиты и Виталия Михеева с Java Day'16 “История одной JVM в картинках (https://www.youtube.com/watch?v=DHsVeZNqiVc)” * Блог Excelsior JET (https://www.excelsiorjet.com/blog/), где можно найти много статей с различными техническими подробностями * Conservative GC: Is It Really That Bad? (https://www.excelsiorjet.com/blog/articles/conservative-gc-is-it-really-that-bad/) * Доклад Вани с JPoint'18 “Как сделать встроенный в JVM профайлер, который не боится AOT компиляции (https://www.youtube.com/watch?v=iw4O7G2eyHg&list=PLVe-2wcL84b9CC4_PMCxQrDYywz7J0beo)” * Доклад Максима Казанцева с jBreak'18 “Как генератор тестов помог стабилизировать компилятор в Zing VM (https://www.youtube.com/watch?v=eyWFQ42dzd0)” * Доклад Никиты про JetPerfect с JavaDay Kiev'14 “Java худеет. Уменьшение размера дистрибутива Java приложения без зависимостей (https://www.youtube.com/watch?v=2v3YapNH4ss&feature=youtu.be&t=878)” * Доклад Никиты с JavaDay Kiev'14 “AOT компиляция (https://www.youtube.com/watch?v=aw89H-Vv-Zs)” * Доклад Никиты и Владимира Парфиненко с Joker'15 “JVM: краткий курс общей анатомии (https://www.youtube.com/watch?v=JbLClSMRK_I)” * Доклад Vojin Jovanovic с Joker'16 “Polyglot on the JVM with Graal: One VM for Java, node.js, Ruby, R, and C++! (https://www.youtube.com/watch?v=4WZWBpMp2vo)” * Доклад Douglas Hawkins с JPoint'18 “ReadyNow — an «AOT» with profiling for Java (https://www.youtube.com/watch?v=AGyctnc1DTA)” * Доклад Volker Simonis со встречи JUG.ru'15 “SAP JVM Internals (https://www.youtube.com/watch?v=IsERHnGn7Vs)” * Доклад Dan Heidinga с GeeCON'17 “OpenJ9: Under the hood of the next open source JVM (https://www.youtube.com/watch?v=3VporpPlDds)” * Доклад Marcus Lagergren с JavaDay Kyiv'15 “Design rationales in the JRockit JVM (https://www.youtube.com/watch?v=NODsunhgHRQ)” Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon)
2018-12-12
1h 59
SDCast
HL Edition: Алексей Лесовский и Виктор Егоров из Data Egret
Друзья, рад представить вам интервью с Алексеем Лесовским и Виктором Егоровым из компании Data Egret (https://dataegret.ru/), записанное на прошедшей конференции Highload++ 2018 (http://www.highload.ru/moscow/2018). В этом выпуске мы говорим конечно же про Postgres. Не так давно у меня в гостях был Илья Космодемьянский, но мы больше говорили на общие темы баз данных, их роль в ИТ системах, образовании и прочем. В этот раз мы сконцентрировались больше на технических и практических аспектах работы с PostgreSQL. Мы обсудили типичные ошибки при проектировании база данных, которые допускают разработчики систем, обсудили типичные ошибки администраторов баз данных, углубились в различные технические аспекты работы PostgreSQL, такие как взаимодействие с дисками, Direct I/O и прочее. Подискутировали на тему кластеров, отказоустойчивости и безопасности систем, вспомнили различные вспомогательные инструменты для работы с PostgreSQL, такие как прокси-серверы, инструменты бэкап/рестора. В завершении выпуска обсудили последние нововведения в 11-й версии PostgreSQL и что может появится нового и интересного в 12-й версии базы данных. Ссылки на ресурсы по темам выпуска: * Доклад Алексея с HL++'18 “Топ ошибок со стороны разработки при работе с PostgreSQL” (https://www.youtube.com/watch?v=HjLnY0aPQZo) * Доклад Виктора с HL++'18 “Выбираем систему репликации для PostgreSQL” (https://www.youtube.com/watch?v=YQ63niptCTc&fbclid=IwAR0isuymXYSsGV8JI7bnehl3rQAf5KyuOuYVRSwPpmU1XqD1Tkv6_gqgXVs) * Подкаст с Ильёй Космодемьянским (https://sdcast.ksdaemon.ru/2018/11/sdcast-92/) * Skytools (https://wiki.postgresql.org/wiki/SkyTools) * Skytools PGQ Tutorial (https://wiki.postgresql.org/wiki/PGQ_Tutorial) * SkyTools: помощь в вопросах масштабирования (http://profyclub.ru/docs/176) * MVCC Unmasked (https://momjian.us/main/writings/pgsql/mvcc.pdf) * Видео доклада Брюса Момжана “MVCC Unmasked” с HL++ 2012 (https://www.youtube.com/watch?v=KVEfxb5lid8) * Tuning Your PostgreSQL Server (https://wiki.postgresql.org/wiki/Tuning_Your_PostgreSQL_Server) * PostgreSQL, Systemd, RemoveIPC (https://wiki.postgresql.org/wiki/Systemd) * Filesystem write barriers (https://docs.fedoraproject.org/en-US/Fedora/14/html/Storage_Administration_Guide/writebarr.html) * Основы CPU Performance Scaling (https://www.kernel.org/doc/html/v4.12/admin-guide/pm/cpufreq.html) * Детали работы intel_pstate (https://www.kernel.org/doc/html/v4.12/admin-guide/pm/intel_pstate.html) * Видео доклада Matthew Wilcox “How Linux handles IO errors” с PGCon 2018 (https://www.youtube.com/watch?v=74c19hwY2oE) * Что нового в PostgreSQL 11.1 (https://www.postgresql.org/docs/current/release-11-1.html)
2018-11-29
1h 17
SDCast
HL Edition: SONM
Друзья, рад представить вам интервью с Игорем Лебедевым и Алексеем Кротовым из компании SONM (https://sonm.com/), записанное на прошедшей конференции Highload++ 2018. SONM — это децентрализованная туманная платформа для вычислений. Она позволяет с одной стороны предоставлять неиспользуемые мощности ваших компьютеров, как серверных, так и десктопных, а с другой стороны брать в аренду эти самые мощности для ваших вычислений, будь до рендеринг видео, расчёт научных задач, или даже для игр. Ребята рассказали про то, как устроена платформа, из каких компонент она состоит и как функционирует. SONM является открытой платформой, код проекта доступен на github, ядро системы написано на go, использует docker под капотом, использует blockchain технологию и умные контракты и много чего ещё интересного :) Игорь рассказал про технические особенности платформы, а Алексей про экономическую составляющую проекта. Ссылки на ресурсы по темам выпуска: * Сайт проекта SONM (https://sonm.com/) * Проекты SONM на GitHub (https://github.com/sonm-io) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-11-16
1h 01
SDCast
В гостях Илья Космодемьянский, один из основателей и директор компании Data Egret
Встречайте 92-й выпуск SDCast’а! У меня в гостях Илья Космодемьянский, один из основателей и директор компании Data Egret. Илья является активным участником сообщества PostgreSQL, он регулярно выступает на различных конференциях как с довольно сложными техническими докладами о внутренностях PostgreSQL, так и с докладами про soft skills, получение опыта и знаний в области баз данных. В этом выпуске мы обсуждаем в целом роль баз данных в ИТ системах, как поменялась разработка софта и требования к базам данных в связи с возросшей нагрузкой и увеличением мощностей вычислительных ресурсов, с развитием процессов разработки, появлением различных архитектур, таких как микросервисы и прочие. Подискутировали о том, какое влияние на классические RDBMS оказали такие новые (и уже не очень) веяния, как noSQL и newSQL. Обсудили, как различные БД и PostgreSQL в частности адаптируются под новые требования к надёжности, масштабируемости, отказоустойчивости. Посмотрели в ретроспективе на развитие PostgreSQL, вспомнили что с ним было 10−15 лет назад, когда MySQL был на коне, и какое место PostgreSQL занимает сейчас, как изменился процесс разработки и что происходит в проекте сейчас. Отдельно обсудили тему знаний и как стать экспертом в области баз данных, какие для этого нужные базовые знания, как и где набираться опыта. Илья рассказал про свой путь в IT, поделился своими практическими советами и рекомендациями.
2018-11-06
1h 29
SDCast
DevOps Edition: Андрей Маркелов
Друзья, рад представить вам интервью с Андреем Маркеловым из компании Infobip, записанное на прошедшей конференции DevOps Conf Russia 2018. Андрей является ведущим инженером-программистом в компании Infobip, более 11 лет занимается разработкой приложений на Java в области финансов и телекоммуникаций. Активный участник Atlassian Community, апологет использования Prometheus, Docker и Redis. Мы обсудили общие вопросы мониторинга, сбора метрик, различные подходы, подискутировали о том, что когда и как надо собирать. Андрей рассказал про Prometheus: что это за проект, как он устроен, как происходит сбор метрик, возможности для расширения и интеграции с другими системами и многое другое.
2018-11-05
25 min
SDCast
В гостях Андрей Ермаков, ведущий разработчик в компании Tinkoff.ru
Продолжаем тему DevOps'а. Встречайте 90-й выпуск SDCast’а! У меня в гостях Андрей Ермаков, ведущий разработчик в компании Tinkoff.ru. В этом выпуске речь пойдёт о CI/CD процессах, автоматизации, тестировании и мониторинге. Андрей рассказал про свой опыт в развитии CI/CD процессов внутри своей команды, рассказал про то, как они автоматизировали сборку в контексте сервисной архитектуры, какие собирали метрики и как приоретизировали задачи. Обсудили вопросы тестирования сервисов, интерфейсов, API, когда какие виды тестирования наиболее предпочтительны, как свести к минимуму ошибки в окружении и внешних зависимостях, мокирование внешних сервисов и проверка внутренних контрактов. Мы обсудили различные аспекты, возникающие в разработке и автоматизации, такие как: * Вопросы коммуникации в команде и между командами * Различные виды тестирования, их стоимость и в каких случаях стоит их применять * Развёртывание тестовых и продакшн окружений, как повлиял на это docker, kubernetes и другие технологии * Поддержание в актуальном состоянии внешних зависимостей * Сбор метрик и мониторинг приложений в целом * И многое другое Немного подискутировали о том, насколько сильно контейнеры и всякие докеры и кубы изменили подходы к CI/CD и куда движется эта область дальше. Ссылки на ресурсы по темам выпуска: * Слайды доклада Андрея «ANTI-YAML: *DSL IS THE NEW BLACK* (https://akermakov.gitlab.io/devoops-2018/)» * Слайды доклада Андрея «Как мы пришли к continuous delivery. Шишки, грабли, планы на будущее (https://akermakov.gitlab.io/devopsconf-cicd/)» * Статья про использование Kotlin в качестве DSL для TeamCity (https://blog.jetbrains.com/teamcity/2016/11/kotlin-configuration-scripts-an-introduction/)
2018-10-31
1h 03
SDCast
DevOps Edition: Авито
Друзья, рад представить вам интервью с Александром Лукьянченко и Сергеем Носковым из компании Авито, записанное на прошедшей конференции DevOps Conf Russia 2018. В этом выпуске мы вновь собрались дружной подкастерской компанией вместе с Антоном @golodnyj (https://twitter.com/golodnyj) из «The Art Of Programming» и Иваном @gliush (https://twitter.com/gliush) из «DevZen» и взяли интервью у ребят из Авито. Сергей является инженером по безопасности, а Александр — ведущий разработчик в команде архитектуры. Ребята рассказали про то, как устроена платформа Авито, что под этим подразумевается, и как функционирует. Мы подискутировали о различных DevOps-вопросах, таких как: * межсервисное взаимодействие, * базовые блоки для построения новых сервисов, * коммуникации между командами разработки и расширение знаний, * вопросы безопасности сервисов. Ребята рассказали про то, как эволюционировала их платформа и процессы разработки в контексте информационной безопасности, рассказали про способы обучения и повышения квалификации инженеров, рассказали про Security Champions — кто это и зачем они нужны. Также обсудили мы и различные популярные темы в DevOps-мире: Service Mesh, оркестрацию контейнеров, управление конфигурациями, мониторинг и отладку сервисов. Ссылки на ресурсы по темам выпуска: * Статья Александра «Как запустить Istio, используя Kubernetes в production (https://habr.com/company/avito/blog/419319/)» * Bioyino (https://github.com/avito-tech/bioyino). High performance and high-precision multithreaded StatsD server * Видео доклада Сергея «Управление секретами при помощи Hashicorp Vault (https://www.youtube.com/watch?v=klC4ssaPHZY)» * Различные видео публикации по теме DevOps (https://tech.avito.ru/tags/video/devops) на сайте Avito TECH (https://tech.avito.ru/) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-10-25
52 min
SDCast
DevOps edition: okmeter
SDCast #88 DevOps edition: okmeter
2018-10-17
46 min
SDCast
DevOps edition: Егор Бугаенко, основатель и CEO компании Zerocracy
Друзья, рад представить вам интервью с Егором Бугаенко, записанное на прошедшей конференции DevOps Conf Russia 2018. В этом выпуске мы собрались дружной подкастерской компанией вместе с Антоном @golodnyj (https://twitter.com/golodnyj) из «The Art Of Programming» и Иваном @gliush (https://twitter.com/gliush) из «DevZen» и взяли интервью у Егора @yegor256 (https://twitter.com/yegor256) Бугаенко, основателя и CEO компании Zerocracy, разрабатывающей AI-роботов для управления программистами, а так же автора нескольких книг о программировании. Егор выступал с докладом «Главное не качество, а количество!», в котором он предлагает программистам заниматься именно тем, что они умеют делать (ну или по крайней мере должны уметь) лучше всего — писать код, а все остальные вопросы с них снять. Мы поподробнее обсудили эту идею, её плюсы и минусы и вообще поговорили о процессах и подходах к разработке софта. Одна из самых интересных тем нашей беседы с Егором — это его платформа "Zerocracy (https://www.zerocracy.com/)", в которой программисты получают деньги за выполнение небольших задач и даже за заведение новых тасков. Егор рассказал про устройство самого проекта, мы обсудили механику процессов внутри, как могут разрабатываться проекты на этой платформе, роли, права, обязанности, риски и вознаграждения. Поговорили мы так же и о книгах. Егор рассказал про свою новую книгу «Code Ahead» и немного поделился опытом написания книг в целом.
2018-10-09
1h 04
SDCast
В гостях Евгения Голева, деврел в компании Lamoda
Последнее время очень часто можно услышать такие слова и понятия, как DevRel, ТехПиар и прочие. Что же это такое, зачем и кому оно нужно? Ответы на эти и другие вопросы в 86-м выпуске подкаста. У меня в гостях Евгения Голева из компании Lamoda, где она занимается продвижением технобренда Lamoda в IT-сообществах. В начале мы поговорили про профессию DevRel aka Developer Relations в целом: * Что это за направление? * Зачем это нужно компаниям и инженерам? * Какие основные функции специалиста этой профессии? * Какие зоны ответственности у специалиста этой профессии? * Как можно оценить качество работы деврела? Женя рассказала про свою работу в компании, как развивалось это направление в Lamoda, какие появились активности и задачи. Отдельно и подробно рассказала про клуб спикеров: как удалось организовать кружок по подготовке к выступлениям, заинтересовать инженеров и программистов и добиться полезной и конструктивной обратной связи от слушателей и докладчиков. Так же обсудили разные стороны деврела: от технического евангелизма до hr и партнёры. Какие есть направления развития для специалистов в этой области, насколько необходимы технические знания для общения с инженерами и прочие социальные аспекты. Ссылки на ресурсы по темам выпуска: * Выступление на TED Dan Pink: The puzzle of motivation (https://www.ted.com/talks/dan_pink_on_motivation) * “Говорите громче!” (https://t.me/speakersclub) Телеграмм-канал про публичные выступления, который ведёт Женя. * Видео доклада Жени “1000 и 1 фидбэк” с TeamLead Conf 2018 (https://www.youtube.com/watch?v=Eqtzj2JIJQw) * “Codeware” (https://www.slideshare.net/LookAtMySlides/codeware). Отличный гайд по тому, как оформлять код на слайдах (по возможности избегайте, но если надо, то лучше вот так) * Книги: * Мастерство презентации. Алексей Каптерев. * Slide:ology. Нэнси Дуарте. * Resonate. Нэнси Дуарте.
2018-09-27
1h 15
SDCast
В гостях Сергей Lerg, инди-разработчик, game-developer
Мечтали ли вы когда-нибудь написать свою игру? И даже если ваш ответ «нет», всё равно предлагаю вам послушать этот выпуск. У меня в гостях Сергей Lerg, инди-разработчик, game-developer. В этом выпуске мы говорим про разработку игр под мобильные платформы, различные фреймворки и движки, Lua, конференциях и события из мира gamedev и много о чем ещё! Сергей рассказал про свой путь в геймдев-мире, как он начинал, как появлялись идеи и что потребовалось для их реализации. Сергей довольно плотно работал с Corona SDK и даже занимался написанием плагинов для этой платформы и сейчас активно использует Defold, поэтому нам удалось осветить различия в подходах этих двух игровых фреймворков, особенности их архитектуры, удобство пользования, предоставляемые API, возможности для расширения и другие интересные моменты. Сергей рассказал про сильные и слабые стороны каждого фреймворка и поделился личными ощущениями от их использования. Не обошли мы стороной архитектуру игр и используемые технологии в целом. Поговорили о языках, обсудили почему Lua так популярен в игровой индустрии, обсудили серверные технологии и способы клиент-серверной коммуникации. Обсудили мы и вопросы публикации не только игр в различные Аппсторы, но и публикацию плагинов и расширений в соответствующие магазины в экосистемах фреймворков. Сейчас такие магазины есть например у Unity (Asset Store) и Corona (Corona Marketplace). Так же Сергей рассказал про различные встречи и события в игровой индустрии, такие как Devgamm, Game Jam, рассказал про то, как он написал несколько своих игр вот как раз на таких джем-сессиях, как это весело и интересно. Ссылки на ресурсы по темам выпуска: * Corona SDK (https://ru.coronalabs.com/) * Defold: Free 2D Game Engine for Cross-Platform Publishing (https://www.defold.com/) * Игра Сергея StarClick: RTS + Clicker (https://ldjam.com/events/ludum-dare/41/starclick) * Прототип игры “Сollapsing worlds (https://lerg.itch.io/collapsing-worlds)” * Канал Сергея на Youtube (https://www.youtube.com/channel/UCjkECP_YgfCXd6Y3j3rkY_g), где он выкладывает все свои выступления и прочие видео-активности
2018-08-23
1h 23
SDCast
В гостях Дмитрий Химион, Head of QA в Авито
Встречайте 84-й выпуск SDCast’а, речь в котором идёт о качестве ПО. У меня в гостях Дмитрий Химион, Head of QA в Авито. Дима рассказал про свой опыт в индустрии, как и когда он стал заниматься тестированием и обеспечением качества софта, рассказал про различные виды тестирования, автоматизацию и подходы. В начале Дима рассказал про то, как тестируют приложения и продукт в целом в Авито, какие применяются подходы к тестированию, какие применяются виды тестирования. Обсудили отличия в подходах к тестированию мобильных, веб и десктоп приложений. Отдельной большой темой обсуждения стала автоматизация процессов тестирования. Дима рассказал про то, на какие этапы и стадии можно разбить весь процесс тестирования, какие этапы следует автоматизировать в первую очередь, а главное когда вообще стоит браться за автоматизацию, ведь это не дешёвое удовольствие! Немного подискутировали о тестировании монолитов и микросервисов, а так же как современные тенденции в разработке, такие как микросервисы, контейнеры и виртуализация влияют на подходы к тестированию софта в целом. Обсудили мы и то, как стать настоящим специалистом по тестированию, Дима поделился своим видением того, какие базовые знания и личные качества необходимы, чтобы добиться успехов, через что должен пройти профессионал по тестированию, какие есть пути развития и где черпать информацию и знания. В завершении выпуска немного порассуждали о новых концепциях, тенденциях, идеях и инструментах в мире тестирования программного обеспечения. Ссылки на ресурсы по темам выпуска: * Доклад Дмитрия “Векторы развития систем автоматизации тестирования (https://www.youtube.com/watch?v=d9cY4vSq-Tg)” * Книги: * Искусство тестирования программ, третье издание, Гленфорд Майерс, Том Баджетт, Кори Сандлер * Как тестируют в Google, Джеймс Уиттакер, Джейсон Арбон, Джефф Каролло
2018-08-15
2h 04
SDCast
В гостях Алексей Копытов, программист, эксперт по MySQL, автор утилиты для нагрузочного тестирования sysbench
Встречайте 83-й выпуск SDCast'а! На этот раз речь пойдёт о нагрузочном тестировании, тестировании баз данных и open source. У меня в гостях Алексей Копытов, программист, эксперт по MySQL, и автор утилиты для нагрузочного тестирования sysbench (https://github.com/akopytov/sysbench). Вначале мы обсудили зачем нужно нагрузочное тестирование, какие основные параметры производительности обычно тестируют, какие есть подходы к тестированию и главное, какие требования выдвигаются к самим инструментам нагрузочного тестирования. Леша рассказал про свой путь разработчика в MySQL, как он начал заниматься нагрузочным тестированием баз данных и развивать sysbench, рассказал, каким был sysbench тогда, и сколько итераций и изменений он пережил до наших дней. Обсудили архитектуру и внутреннее устройство sysbench и подискутировали о плюсах и минусах использования встраиваемых скриптовых языков, выбор Lua, переход на LuaJIT и многое другое. Не обошли мы стороной и open source составляющую проекта. Пообщались о сообществе вокруг проекта, поддержке, баг-репортах, поддержке пакетов под различные ОС и документации. Ещё одной большой темой обсуждения стала удалённая работа. Лёша сразу после института попал в MySQL и ни дня не работал в офисе. Поэтому он рассказал про свой огромный опыт удалённой работы, какие были трудности работы из дома, как он смог организовать свой распорядок дня, как и чем можно компенсировать недостаток живого общения. Ссылки на ресурсы по темам выпуска: * sysbench (https://github.com/akopytov/sysbench). Scriptable database and system performance benchmark * Доклад Алексея с конференции SECR'17 “Sysbench — от утилиты до универсальной платформы нагрузочного тестирования (https://www.youtube.com/watch?v=o3Y9emQ7S6w)”
2018-07-31
1h 13
SDCast
В гостях Алексей Денисов, программист, автор системы мутационного тестирования mull
Товарищи, что вы знаете про мутационное тестирование и как оно может помочь сделать ваш софт более качественным? А хотите узнать? — Тогда вам сюда! В этом выпуске у меня в гостях Алексей Денисов, скромный программист, автор системы мутационного тестирования mull (https://github.com/mull-project/mull). Помимо этого, Алексей занимается разработкой ПО для луноходов. Вначале мы обсудили теоретическую часть: * Что такое мутационное тестирование? * Какое положение оно занимает среди других видов тестирования? * В чем суть мутационного тестирования? * Как изменение кода программы может помочь найти в ней дефекты? * Как устроен процесс мутационного тестирования ПО? * Какие есть сложности и проблемы? Так же Алексей рассказал про историю появления проекта mull. Как он сам пришёл к идее написания инструмента для мутационного тестирования, как устроен mull, как LLVM помог в реализации проекта. Обсудили различные вопросы, связанные с оптимизацией, распараллеливанием выполнения задач тестов, диагностикой проблем и прочим. Не обошли мы стороной и разработку ПО для луноходов. Алексей рассказал, как он попал в компанию, и какую роль в этом сыграло мутационное тестирование. Вкратце рассказал про компанию и чем она занимается, что за софт они пишут и как они его тестируют. Ссылки на ресурсы по темам выпуска: * Блог Алексея Денисова (https://lowlevelbits.org/) * Доклад Алексея на FOSDEM'17 “Mutation Testing: Leaving the Stone Age (https://www.youtube.com/watch?v=YEgiyiICkpQ)” * Mull (https://github.com/mull-project/mull). Mutation testing system built on top of LLVM * Статья в блоге Алексея “LLVM-based Mutation Testing System. Request For Comments (https://lowlevelbits.org/llvm-based-mutation-testing-system.-request-for-comments/)” * Выпуск #4 подкаста «Подлодка» (https://soundcloud.com/podlodka/podlodka-4-mutatsionnoe-testirovanie) с участием Алексея * Страница на Википедии “Мутационное тестирование (https://ru.wikipedia.org/wiki/%D0%9C%D1%83%D1%82%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BD%D0%BE%D0%B5_%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5)”
2018-07-16
1h 03
SDCast
В гостях Роман Бусыгин, ведущий iOS разработчик в Яндекс.Музыке
Встречайте 81-й выпуск SDCast’а, речь в котором идёт о мобильной разработке в целом и в особенности под iOS. У меня в гостях Роман Бусыгин, ведущий iOS разработчик в Яндекс.Музыке. Рома рассказал свою историю попадания в IT и в Яндекс, про то, как он нанял первого iOS разработчика, а впоследствии и сам стал iOS разработчиком. В начале Рома рассказал про свою инициативу создания SDK под iOS для Яндекс.Карт, как появилась идея, затем реализация, пользователи и популярность. Затем мы поговорили о подходах к разработке под iOS, вспомнили, что было в начале появления iOS и как развивалась платформа до наших дней. Рома рассказал про различные инструменты разработчика, IDE, отладчики, линтеры и прочее. Обсудили архитектуру мобильных приложений, на какие аспекты следует обращать внимание, как взаимодействовать с платформой, какие есть подходы к интерфейсам и как написать кроссплатформенное приложение не сильно вылезая за предлагаемые гайдлайны от Apple. Так же Рома рассказал про разработку Яндекс.Музыки: какая команда в проекте, как разработчики взаимодействуют между собой, какие есть зоны ответственности, как устроен жизненный цикл разработки и другие аспекты жизни проекта. Не обошли мы стороной и WWDC. Рома уже неоднократно бывал на самой главной разработческой iOS конференции в мире и с радостью поделился своими впечатлениями от конференции, рассказал про различные активности, которые проходят в рамках конференции, с кем и как там можно пообщаться, как легко и просто завести новые знакомства и получить ответы на самые насущные вопросы разработки из первых уст. Ссылки на ресурсы по темам выпуска: * SwiftLint (https://github.com/realm/SwiftLint). A tool to enforce Swift style and conventions * Wiki-статья “Mobile device management, MDM (https://ru.wikipedia.org/wiki/%D0%A3%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BC%D0%BE%D0%B1%D0%B8%D0%BB%D1%8C%D0%BD%D1%8B%D0%BC%D0%B8_%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%B0%D0%BC%D0%B8)” * Apple Developer Documentation (https://developer.apple.com/documentation/uikit) по части iOS приложений * Smartpass (https://yandex.ru/promo/smartpass/). Как сходить в кино без очереди * Приложение Яндекс.Музыка в AppStore (https://itunes.apple.com/ru/app/%D1%8F%D0%BD%D0%B4%D0%B5%D0%BA%D1%81-%D0%BC%D1%83%D0%B7%D1%8B%D0%BA%D0%B0/id520797969?mt=8)
2018-07-06
1h 27
SDCast
В гостях Николай Голов, руководитель Data Platform в Авито
Встречайте 80-й выпуск SDCast’а! У меня в гостях Николай Голов, руководитель Data Platform в Авито. Помимо прочего, Николай преподаёт в НИУ ВШЭ и занимается научными исследованиями в области современных методологий построения хранилищ данных, таких как Data Vault и Anchor Modeling. В этом выпуске мы говорим о хранилищах данных, микросервисах и даже блокчейн! Вначале мы обсудили тему построения хранилищ данных. Николай рассказал про подходы к построению эффективных и расширяемых хранилищ, обсудили способы хранения информации, механизмы загрузки данных в хранилище, отличие ETL и ELT подходов. Николай рассказал про устройство хранилища данных в Авито, которое построено на базе HP Vertica, о том, как оно появилось, эволюционировало и разрасталось. Для справки, в год в Авито в хранилище поступает порядка 2.5 петабайт !! сырых данных! При этом само хранилище занимает всего около 200 терабайт! Подискутировали и о будущем баз данных. Затронули тему микросервисов, в особенности способы достижения консистентности данных в распределённой среде. Николай рассказал про возможные подходы к решению этой проблемы, и в особенности про паттерн «Сага», точнее даже целом семействе паттернов, какие бывают, как и где их стоит применять. Подискутировали мы о плюсах и минусах этих подходов, вспомнили про «event sourcing» и CQRS. Николай интересуется темой блокчейн. Пообщались мы и про это направление в ИТ. Николай рассказал про Telegram Open Network (TON) и вообще современных тенденциях в мире блокчейн. Обсудили где и как в мире больших данных могут применятся блокчейн технологии. Ссылки на ресурсы по темам выпуска: * Статья Николая “Vertica+Anchor Modeling = запусти рост своей грибницы (https://habr.com/company/avito/blog/322510/)” на хабре. Она же на английском (https://tech.olx.com/vertica-anchor-modeling-grow-your-mycelium-68d623f795e5). * Статья Николая “Материалы с VLDB, конференции о будущем баз данных (https://habr.com/company/avito/blog/338180/)” на хабре * Статья Николая и Ларса Ронбака “Big Data normalization for massively parallel processing databases (https://www.sciencedirect.com/science/article/abs/pii/S0920548917300363)” * Статья Николая и Ларса Ронбака “SQL QUERY OPTIMIZATION FOR HIGHLY NORMALIZED BIG DATA (https://bijournal.hse.ru/data/2015/10/12/1076327532/1.pdf)” * XLIV Международная молодёжная научная конференция «Гагаринские чтения (https://gagarin.mai.ru/)» * Microservice Pattern: Saga (http://microservices.io/patterns/data/saga.html) * Статья на Википедии “Telegram Open Network (https://ru.wikipedia.org/wiki/Telegram_Open_Network)”
2018-06-28
1h 33
SDCast
В гостях Егор Толстой, руководитель платформенной разработки клиентсайда Авито
У меня в гостях Егор Толстой, руководитель платформенной разработки клиентсайда Авито. В этом выпуске мы говорим о разработке в Авито в целом, что же такое “платформа” и какова её роль в различных приложениях компании, говорим и о мобильной и веб разработке. В начале Егор рассказал про свой путь до руководителя разработки в Авито, рассказал как поменялась структура подразделений по разработке от классической (фронтенд, бэкенд и пр) до бизнес-юнитов, какие были сложности в переходе, сколько времени ушло на этот переход и какие плюсы и минусы у текущей структуры. Обсудили мы и различные аспекты такой структуры, как то: постановка задач, коммуникации между командами, способы горизонтального и вертикального расширения знаний, взаимодействие команд на техническом уровне, тестирование фич и системы в целом, зоны ответственности и многое другое. Отдельно обсудили вопрос переиспользования каких-то библиотек и инструментов между различными юнитами. Тут как раз Егор рассказал поподробнее, что же такое «платформа» в понимании Авито и какова её роль в программных продуктах компании. Обсудили мы как технические стороны, начиная от типичного workflow программного модуля, выкладка релизов, поддержка обратной совместимости и форсирование перехода на новые версии, так и различные смежные вопросы, такие как документирование, код-ревью и другие. Егор рассказал про различные инструменты, которые помогают автоматизировать процесс разработки, например такие как автоматическое назначение багов на конкретных людей на основе анализа графа связей программных модулей и их авторов (на основе анализа исходных кодов). Так же мы немного пообщались о мобильной и веб-разработке в Авито, архитектуре приложений, способе организации их репозиториев и не только. Недавно Егор писал и рассказывал про Performance Review — поговорили мы и об этом. Что такое “Performance Review”, зачем оно нужно, как его внедрили в Авито, и что им это дало. Егор так же известен как ведущий подкаста «Подлодка» и автор нескольких телеграмм-групп по мобильной разработке. Не обошли мы стороной и эти темы, равно как и выступления на различных ИТ конференциях у нас и даже за рубежом. Егор рассказал про свои впечатления от выступления на FrenchKit 2017 в Париже и про выступления на конференциях в целом. Ссылки на ресурсы по темам выпуска: * Avito Playbook (Репозиторий на GitHub (https://github.com/avito-tech/playbook), статья на Хабре (https://habr.com/company/avito/blog/359242/)) * Большая статья про performance review (https://habr.com/company/avito/blog/353216/) * Доклад Ромы Дворнова “Масштабируемая архитектура фронтенда” (видео (https://www.youtube.com/watch?v=z9y6PNC2FL0), слайды (https://speakerdeck.com/avitotech/masshtabiruiemaia-arkhitiektura-frontienda-roman-dvornov-avito)) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-05-30
1h 51
SDCast
Круглый стол Public speaking in IT
Встречайте 78-й выпуск SDCast’а, который также получилось записать в новом дискуссионном формате. На этот раз речь пойдёт о публичных выступлениях по айтишной тематике на профильных конференциях. Мы собрались вместе с Антоном Солдатовым и Денисом Шевченко, ребята довольно часто выступают на различных конференциях и иногда даже на английском языке. Подискутировали о том, зачем вообще выступать на конференциях и встречах, что движет докладчиками, обсудили вопросы подготовки к выступлениям, а самое главное — поделились своим опытом публичных выступлений. Итак, гости этого выпуска: * Антон Солдатов, инженер-разработчик в компании IPONWEB * Денис Шевченко, haskell-разработчик в компании IO HK Кстати, и Антон и Денис уже были у меня в гостях в подкасте, так что при желании можно послушать предыдущие выпуски. Выпуск получился довольно продолжительным, но, кажется, удалось обсудить самые разные аспекты публичных выступлений и подготовки к ним. Вот лишь некоторые из них: * Дружно вспомнили своё первое выступление: как это было? * Какая была цель и мотивация? * Обсудили зачем вообще нужно выступать? Что это даёт докладчикам? * Стоит ли выступать на английском и почему? * Есть ли отличия локальных митапов и даже конференций от международных (ну или просто англоязычных конференций)? * Нужно ли проводить конференции в локальных (для нас это — русскоговорящих) сообществах на английском языке в принципе? * Как обычно происходит процесс подготовки к выступлению: * Как устроен процесс от подачи заявки до самого выступления? * Как помогают организаторы? * Делимся своими лайф-хаками по подготовке к выступлениям А вот небольшой список ресурсов по теме выпуска: * Tips for Public Speaking – speaking.io (https://speaking.io/) * Книги: * Презентации в стиле TED. 9 приемов лучших в мире выступлений. Кармин Галло * TED Talks. Слова меняют мир. Первое официальное руководство по публичным выступлениям. Крис Андерсон * Презентация в стиле дзен. Основы дизайна для тех, кто хочет выступать лучше. Гарр Рейнольдс * Мастерство презентации. Алексей Каптерев * Видео доклада Саймона Пейтона “How to Give a Great Research Talk (https://www.youtube.com/watch?v=sT_-owjKIbA&feature=youtu.be)” Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-05-10
1h 49
SDCast
Круглый стол Soft Skills
Встречайте 77-й выпуск подкаста в новом формате! На этот раз я решил немного отойти от привычного формата интервью, а вместе с несколькими гостями провести дискуссию по определённой теме. Для первой попытки была выбрана тема «Soft skills». Вместе с Антоном Шевчуком, Романом Пронским и Александром Майоровым мы обсудили различные не совсем технические и социальные аспекты разработки, хотя и без технологий не обошлось! :) Гости этого выпуска: * Александр Майоров, ведущий подкаста «RadioJS (https://radiojs.ru/)» и авторского проекта Pro WEB IT (https://majorov.su/), fullstack-разработчик, СТО в компании «New.HR (http://new.hr/)» * Антон Шевчук, техлид PHP отдела и тимлид Ruby отдела в компании «NIX solutions», автор учебника “jQuery для начинающих (https://antonshevchuk.gitbooks.io/jquery-for-beginners/content/)” * Роман Пронский, автор PHP дайджеста на Хабре (https://habrahabr.ru/users/pronskiy/posts/), ведущий инженер-программист в компании «EPAM» Выпуск получился довольно продолжительным, но это лишь потому, что было интересно обсуждать различные вопросы. Вот лишь некоторые из них: * Какое самое важное качество для программиста? * Тимлид — это должность или роль? * Пути развития программиста * Трансформация из программиста в менеджера, в руководителя подразделения * Планирование работ, как успеть всё сделать к дедлайну * Делегирование задач и зоны ответственности * Синдром самозванца * Как ввести в команду нового члена, чтобы всем было комфортно и эффективно? * Собеседование новых членов команды * Межличностные конфликты, трения, недопонимание, недосказанность между членами команды * “Великолепные” придурки (в смысле крутые спецы с которыми невозможно взаимодействовать) * Мотивация, прокрастинация, выгорание * Как помочь найти всей команде золотую середину между горящими бизнес задачами и идеальным кодом? * Трайбализм в командах * Как воспитывать умение отказывать менеджеру? Уважаемые слушатели! У меня к вам большая просьба: поскольку это новый формат, поделитесь вашими впечатлениями об этом выпуске! Нравится ли вам такой формат? Стоит ли эпизодически устраивать такие дискуссии? Буду рад любому фидбэку! А вот небольшой списочек ресурсов по теме выпуска: * Доклад Антона «Куда идёт сеньор» (https://www.youtube.com/watch?v=NPdFiAVi8rU) * Статья «The 4 Stages of Life According to Carl Jung» (http://iheartintelligence.com/2015/10/28/carl-jung/) * Видео “Ненасильственное управление. Григорий Бакунов (https://www.youtube.com/watch?v=iYhaK_BpO8w)” * Видео “Что я хотел бы знать об IT в 20 лет. Максим Дорофеев (https://www.youtube.com/watch?v=fY8hhOv7lmE)” * Статья “Я техлид. Что делать? (https://habrahabr.ru/company/e-Legion/blog/314170/)” * Статья “Карьера в IT: должность Team Lead (https://dou.ua/lenta/articles/team-lead-position/)” * Статья “Карьера в IT: должность Software Architect (https://dou.ua/lenta/articles/software-architect-position/)” * В описание к выпуску на сайте вы так же найдёте большой список книг по теме. В RSS они просто не влезли! %) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-04-19
2h 51
SDCast
В гостях Антон Давыдов, Ruby-разработчик, опенсорс-контрибьютор
Встречайте 76-й выпуск SDCast’а про мир Ruby разработки. У меня в гостях Антон Давыдов, Ruby-разработчик, опенсорс-контрибьютор. В этом выпуске мы с Антоном обсуждаем разработку на языке Ruby, обсуждаем различные фреймворки, такие как RoR и Hanami, дискутируем на тему различных аспектов разработки, обсуждаем open source и сообщества и многое другое. В начале Антон рассказал, как он пришёл в разработку на Ruby, как познакомился с Ruby on Rails фреймворком. Мы обсудили идеи и концепции, заложенные в RoR, чем он хорош и плох, как изначальные архитектурные решения повлияли на дальнейшее развитие фреймворка. Так же Антон рассказал про альтернативный набирающий популярность Ruby фреймворк Hanami. Рассказал про историю его появления, какие идеи преследовались при его создании и как Антон со временем стал его core-контрибьютером. Антон рассказал про архитектуру и внутреннее устройства фреймворка, чем он отличается от RoR, на каких архитектурных паттернах он базируется, какое есть сообщество вокруг проекта, сколько ключевых контрибьюторов и как проект живёт и развивается. Так же мы затронули тему депрессии, прокрастинации и выгорания. Антон рассказал, как он сам был в состоянии депрессии и какие меры он предпринимал для выхода из этого состояния. Обсудили мы и то, какие превентивные меры следует принимать, чтобы не попадать в это состояние. Поговорили мы и о конференциях. Антон рассказал про то, на каких конференциях он был в качестве докладчика и посетителя. Рассказал про отличия аудитории Ruby-конференций в различных странах, где какие акценты в плане докладов и технологий. Обсудили мы и премию Rubyheroes, которую Антон получил некоторое время назад. Антон рассказал про эту инициативу, что это за премия, как и кому она выдаётся в России и в каких странах ещё есть эта премия. Ссылки на ресурсы по темам выпуска: * Pepegramming (https://t.me/pepegramming). Телеграмм канал Антона с новостями и интересными статьями. * Заметка «Lotus is now Hanami (http://hanamirb.org/blog/2016/01/22/lotus-is-now-hanami.html)» * Статья «Physical separation in Rails apps (https://blog.arkency.com/physical-separation-in-rails-apps/)» * Статья Мартина Фаулера «TestPyramid (https://martinfowler.com/bliki/TestPyramid.html)» * Статья Мартина Фаулера «Event Sourcing (https://martinfowler.com/eaaDev/EventSourcing.html)» * Статья «Pattern: Event sourcing (http://microservices.io/patterns/data/event-sourcing.html)» * Отличная книга про DDD Эрика Эванса: «Domain-Driven Design: Tackling Complexity in the Heart of Software» * Github-репозиторий Awesome Domain-Driven Design (https://github.com/heynickc/awesome-ddd) * Wiki-страница «Шкала депрессии Бека (https://en.wikipedia.org/wiki/Beck_Depression_Inventory)» * Статья «Я хочу пойти на психотерапию. Какой метод выбрать? (https://meduza.io/cards/ya-hochu-poyti-na-psihoterapiyu-kakoy-metod-vybrat)» * Статья «Программисты и депрессия (https://habrahabr.ru/post/260249/)» * Советы Антона: * что делать до, во время и после конференции (https://t.me/pepegramming/12) * как сделать презентацию (https://t.me/pepegramming/28) * Видео доклада «RubyConf 2017: LLVM-based JIT compiler (https://www.youtube.com/watch?v=Ti4a7SXGWig)» * RubyKaigi (http://rubykaigi.org/2018). Ruby-конференция в Японии * Конференция RailsClub (http://railsclub.ru/) * Rubyheroes (https://rubyheroes.com/) * Статья «Ruby Hero Russia Award 2016 (https://habrahabr.ru/company/railsclub/blog/312976/)» * RubyConf India Ruby Hero Award (http://rubyconfindia.org/ruby-hero-award/) * Московское Ruby Сообщество (http://moscow-rb.org/) * Личный сайт Майка Пирхама (https://www.mikeperham.com/about/) * A handy guide to financial support for open source (https://github.com/nayafia/lemonade-stand) * Непринятый Pull Request в GitLab Антона (https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/3029) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-04-10
1h 13
SDCast
В гостях Андрей Акиньшин, разработчик среды разработки Rider в компании JetBrains, к.ф.-м.н., Microsoft .NET MVP, серебрянный медалист ACM ICPC
Рад представить вам 75-й выпуск SDCast’а! У меня в гостях Андрей Акиньшин, разработчик среды разработки Rider в компании JetBrains, к.ф.-м.н., Microsoft .NET MVP, серебрянный медалист ACM ICPC. Также Андрей является автором и мейнтейнером .NET библиотеки для бенчмаркинга BenchmarkDotNet (http://benchmarkdotnet.org/), выступает на различных конференциях и возглавляет программный комитет конференции DotNext (https://dotnext.ru/). В этом выпуск мы говорим о платформе IntelliJ IDEA в целом, о среде разработки Rider для программирования под .NET, обсуждаем различные аспекты разработки, говорим о тестировании и Open Source, конференциях и выступлениях. В начале Андрей рассказал про Rider, как она появилась, как устроена внутри, какова связь Rider и основной платформы, как устроены различные функции IDE, такие как автокомплит например, и чем их реализации в Rider отличаются от подхода в IntelliJ IDEA. Обсудили мы и такой важный вопрос, как кроссплатформенная поддержка стека .NET — Андрей рассказал про то, сколько версий и различных имплементаций .NET runtime они поддерживают, какие с этими связанны трудности и сложности. Обсудили мы и в общем отличия и специфику Rider от привычной для MS-стэка Visual Studio. Андрей известен своими докладами про оптимизацию производительности приложений. Мы поговорили про разработку в целом, про различные подходы, углубились в вопросы поиска узких мест приложений, их локализации и устранения. Андрей рассказал про то, как он сам начал изучать и интересоваться вопросами производительности и оптимизации, как это привело к появлению библиотеки для замеров производительности BenchmarkDotNet. Обсудили мы в целом вопрос «как правильно замерять производительность», какие есть подходы и заблуждения, как правильно трактовать полученные результаты, на какие показатели стоит обращать внимание и другие смежные вопросы. Пообщались на тему Open Source в целом и в разрезе проекта BenchmarkDotNet в частности. Андрей рассказал, какие он видит плюсы и что дала ему публикация проекта в open source, как и какое появилось сообщество у проекта, как и зачем он добился включения проекта в .NET Foundation (https://dotnetfoundation.org/) и планы по дальнейшему развитию проекта. Обсудили мы и тему конференций и публичных выступлений. Андрей рассказал как он сам выступил в первый раз, что им движет и какие цели он преследует, выступая на конференциях. Далее Андрей рассказал про то, как он попал на конференцию DotNext (https://dotnext.ru/) и даже стал там председателем программного комитета, рассказал про то, как устроена конференция и программный комитет изнутри, как происходит отбор докладов и докладчиков, процесс подготовки и сбор отзывов. Ссылки на ресурсы по темам выпуска: * Блог Андрея (http://aakinshin.net/blog/) * BenchmarkDotNet (http://benchmarkdotnet.org/). A powerful .NET library for benchmarking (github (https://github.com/dotnet/BenchmarkDotNet)) * Видео докладов Андрея: * Поговорим про performance-тестирование (https://youtu.be/LEy3_2ZzWpk) * Поговорим про память (https://youtu.be/XGtieBVI1lk) * Поговорим про арифметику (https://www.youtube.com/watch?v=t8GuveyIV38) * Продолжаем говорить про арифметику (https://youtu.be/XEH0Hv54Fn8) * Интервью с Андреем «Хаос в .NET-мире — разумная цена за скорость развития платформы» (https://habrahabr.ru/company/jugru/blog/316436/) * Слайды доклада Андрея «Теория и практика .NET-бенчмаркинга» (https://www.slideshare.net/AndreyAkinshin/net-02112016) * Анонс конференции JetBrains Open Day в Москве (https://habrahabr.ru/company/JetBrains/blog/352134/) * DotNext (https://dotnext.ru/): крупнейшая в России конференция, посвященная разработке на платформе .NET Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-03-29
1h 39
SDCast
И вновь Павел Аргентов, бэкенд-разработчик в компании Evrone
Встречайте 74-й выпуск SDCast'а, в котором идёт речь про Unikernel, MirageOS и вообще концепцию Virtual Library Operating System. У меня в гостях вновь Павел Аргентов, бэкенд-разработчик в компании Evrone, практикующий fp-программист. В начале мы поговорили про традиционные подходы к развертыванию приложений: от физических серверов к гипервизорам с виртуалками и до контейнеров приложений. Обсудили разные ограничения этих подходов, плюсы и минусы. А дальше мы подошли к идеи Unikernel aka Library Operating Systems. Обсудили саму концепцию Unikernel, что это за подход, что такое Library Operating Systems, как оно устроено и работает. Паша рассказал о том, какие основные плюсы у данного подхода по сравнению с традиционными, а так же и какие есть минусы. Далее мы подробно поговорили про одну из реализаций Unikernel под названием “MirageOS”. Паша рассказал про архитектуру и внутреннее устройство MirageOS, из каких слоёв и компонентов оно состоит, какие предоставляет интерфейсы и инструменты для разработчика. Пообщались о том, как разрабатывать приложения на базе MirageOS, какие есть ограничения, как и во что собирается итоговое приложение и какие есть возможности деплоя. Так же мы обсудили возможные сферы применения систем, построенных на Unikernel, для каких классов задач данный подход наиболее применим и может дать выигрыш, а в каких случаях традиционные решения всё же предпочтительнее. Ссылки на ресурсы по темам выпуска: * Основной сайт проекта Unikernel (http://unikernel.org/) * Сайт проекта MirageOS (https://mirage.io/) * Страничка wiki про Unikernels на Xen (https://wiki.xenproject.org/wiki/Unikernels) * Доклад Павла с конференции FP Conf “УЧИМСЯ ИГРАТЬ В UNIKERNEL” (https://www.youtube.com/watch?v=OdcaJUrA9oo) * Блог Павла про Unikernel на медиуме (https://medium.com/rn-d-%D1%81%D0%B2%D0%BE%D0%B8%D0%BC%D0%B8-%D1%80%D1%83%D0%BA%D0%B0%D0%BC%D0%B8-%D1%83%D1%87%D0%B8%D0%BC%D1%81%D1%8F-%D0%B8%D0%B3%D1%80%D0%B0%D1%82%D1%8C-%D0%B2-unikernel) * Доклад Ian Eyberg “Climbing out from the digital mud with unikernels” (https://www.youtube.com/watch?v=QyIHOlY_PQ8) c Highload++ * Доклад Garrett Smith “Rainbows and Unikernels” (https://www.youtube.com/watch?v=cUvNths_5RA) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-02-21
1h 20
SDCast
В гостях Дмитрий Борисов, специалист по IP-телефонии
Хотите перевести свой офис на IP-телефонию? А может быть построить облачную АТС и стать новым провайдером связи? Или просто интересно узнать как устроены телеком-системы в целом? Тогда этот выпуск для вас! У меня в гостях Дмитрий Борисов, специалист по IP-телефонии. В этом выпуске мы говорим про телеком системы в целом, что это за направление, какие там есть потребности и задачи. Дима рассказал про типичные функции и сервисы в телефонии, какие обычно используются подходы и решения. Мы обсудили архитектуру телеком систем в целом, из каких компонентов обычно состоят такие системы, как они устроены под капотом, какие узлы за что отвечают. Дима имеет опыт построения телеком-систем с использованием FreeSWITCH в качестве платформы, поэтому мы довольно подробно поговорили про него. Дима рассказал про то, как FreeSWITCH устроен изнутри, как устроено его ядро, возможности его статического и динамического конфигурирования, управления и расширения через систему плагинов. Обсудили мы различные темы VoIP. Дима рассказал про различные используемые кодеки для сжатия аудио, рассказал как происходит установка соединения между клиентами, какие есть сложности и тонкости. Не забыли подискутировать о современных тенденциях в сфере телефонии, применении WebRTC для звонков, новых кодеках и технологиях. Ссылки на ресурсы по темам выпуска: * Сайт проекта FreeSWITCH (https://freeswitch.org/) * Wiki-страничка протокола G.729 (https://ru.wikipedia.org/wiki/G.729) * Доклад Димы с конференции Highload++ 2017 “Lua в нагруженных телеком-системах” (видео (https://www.youtube.com/watch?v=ull4jf4hG1Q&feature=share), слайды (https://www.slideshare.net/profyclub_ru/lua-81851546?ref=http://www.highload.ru/2017/abstracts/3070.html)) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-02-08
1h 17
SDCast
В гостях Ильяс Салихов, директор по технологиям в компании Intaro и проекте retailCRM
У меня в гостях Ильяс Салихов, директор по технологиям в компании Intaro и проекте retailCRM. В этом выпуске мы с Ильясом обсуждаем различные аспекты разработки, начиная от технических составляющих и заканчивая различными “soft skills” темами. В начале Ильяс рассказал про проект retailCRM, как он появился, какие решает задачи, как устроен и работает. Обсудили мы архитектуру проекта и используемые технологии. Под капотом проекта используются: PHP/Symfony/Doctrine, PostgreSQL, Redis, сервисы на Python и Go и много чего ещё. RetailCRM — это SaaS с большим количеством пользователей, где под пользователями понимается не конкретный человек, а целая компания, использующая retailCRM, внутри которой уже работает некоторое количество человек-пользователей. Сейчас сервис используют порядка 5000 магазинов, то есть пользователей-компаний, 30 млн хитов в сутки. Ильяс рассказал, как они организуют хранение разных пользователей-компаний в базе данных и как организована работа бэкенда с этими данными. Забегая вперёд скажу, что retailCRM — это по большому счёту монолит на PHP/Symfony, где каждый пользователь-компания живёт на своём поддомене, однако все запросы обрабатываются этим самым монолитным приложением, а данные каждого пользователя-компании — это отдельная схема в базе данных PostgreSQL. Также Ильяс рассказал про архитектуру и программные компоненты всей системы в целом. Обсудили мы вопросы миграции данных и выкладки новых версий компонентов, задачи мониторинга и обслуживания и другие сопутствующие вопросы. Не обошли мы стороной и различные около технические темы в разработке, такие организация и инструменты командной разработки, вопросы найма и оценки квалификации программистов, расширение кругозора и обмен знаниями внутри компании. Ссылки на ресурсы по темам выпуска: * Beanstalkd (https://github.com/kr/beanstalkd) — простое решение для организации очередей * Доклад Ильяса про варианты кеширования в Doctrine и тегированный кеш “Extended Doctrine Cache” (https://www.youtube.com/watch?v=haZ1BS1QoCM) * Статья Андрея Смирнова “ (http://smira.ru/posts/20081028web-caching-memcached-4.html)Проблема одновременного перестроения кэшей” (http://smira.ru/posts/20081028web-caching-memcached-4.html#) * Доклад Ильяса “Особенности построения SaaS-сервиса на Symfony2” (https://www.youtube.com/watch?v=VNGuS-UB6DM) * GoSSHa (https://github.com/YuriyNasretdinov/GoSSHa) — утилита быстрого параллельного выполнения команд на тысячах серверов * dplr (https://github.com/muxx/dplr) — обертка над GoSSHa на PHP * Pinba (http://pinba.org/) — MySQL storage engine that acts as a realtime monitoring/statistics server for PHP * Intaro Pinboard (https://github.com/intaro/pinboard) — Realtime PHP monitoring system which aggregates and displays Pinba data * pinba-bundle (https://github.com/intaro/pinba-bundle) — Symfony bundle for pinba timers sending with time of operations execution for Doctrine, Twig and Memcache * custom-index-bundle (https://github.com/intaro/custom-index-bundle) — создание нестандартных индексов (например, индексы на выражение, partial-индексы, gist/gin-индексы) в PostgreSQL через аннотации в Doctrine * twig-injection-bundle (https://github.com/intaro/twig-injection-bundle) — бандл позволяет добавить событийную модель в twig для слабой связности шаблонов * Канал Intaro Development на Youtube (https://www.youtube.com/channel/UCU1-Ee0E9PhZVJeibRea3eA) с записями докладов с митапов Intaro Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-01-23
2h 12
SDCast
В гостях Константин Кривленя, ведущий разработчик в TargetProcess
У меня в гостях Константин Кривленя, ведущий разработчик в компании TargetProcess. В этом выпуске мы говорим о фронтенд-разработке, технологиях и инструментах, о Open Source проектах, методологиях процессов разработки и прочих айтишных штучках :) TargetProcess — это платформа управления проектами на основе гибких методологий с акцентом на визуализацию данных. В TargetProcess много различных диаграмм, графиков, таймлайнов и прочих визуальных инструментов. Костя рассказал подробнее про продукт и саму компанию, как она появилась и развивалась. Последнее время Костя занимается проектом Vizydrop — это инструмент для визуализации данных, получаемых из различных источников, как то: файлы различных форматов, таск-треккеры, dropbox, github, jira, trello и другие. Костя рассказал про основную идею и цель проекта, как он устроен под капотом, из каких модулей состоит и как вообще происходит процесс визуализации данных от подключения источника до рендеринга графиков в браузере. Так же Костя рассказал несколько интересных задач и проблем, с которыми пришлось столкнуться в процессе работы над проектом. Компания TargetProcess сам очень активно проповедует и использует гибкие методологии внутри компании. Поговорили с Костей о том, какие подходы применялись в компании в разное время, какие подходы и практики прижились, а какие нет. Обсудили мы и различные плюсы и минусы методологий в контексте компании TargetProcess. Костя рассказал про такую штуку как «Оранжевые пятницы» — это возможность заниматься своими интересными проектами, примерно как в Google раньше были те самые 20% времени :) Рассказал про то, какие интересные проекты родились благодаря «оранжевым пятницам». Поговорили мы и про Open Source. Компания выложила в Open Source и поддерживает несколько библиотек. Обсудили с Костей как живут и разиваются эти проекты, какое есть сообщество вокруг и как происходит взаимодействие с этим самым сообществом. Ссылки на ресурсы по темам выпуска: * “Our Development Process: 50 Months of Evolution” (https://www.targetprocess.com/articles/our-development-process-50-months-of-evolution/). Статья про процесс разработки в компании TargetProcess. * “Agile Development Process: 10 Years of Evolution” (https://www.targetprocess.com/articles/agile-development-process-10-years-of-evolution/). Статья про процесс разработки в компании TargetProcess. * BuildBoard – tool for developer’s workflow automatization (https://www.targetprocess.com/blog/2016/01/bulidboard-our-tool-for-developers-workflow-automatization/?highlight=buildboard) * Taucharts. Flexible javascript charting library for data exploration. (https://www.taucharts.com/) * PEG.js. A simple parser generator for JavaScript (https://pegjs.org/) * ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files. (http://www.antlr.org/) * Заметка Вячеслава Егорова “The fear of dart:mirrors” (http://mrale.ph/blog/2017/01/08/the-fear-of-dart-mirrors.html) * Статья “The Worst Chart In The World” (http://www.businessinsider.com/pie-charts-are-the-worst-2013-6) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2018-01-10
1h 42
SDCast
В гостях Вячеслав Ковалевский, подкастер, преподаватель на Хекслете, бэкенд-разработчик
Когда уже нейронные сети научаться писать программы вместо нас, программистов? Зачем люди заставляют нейронные сети генерить другие нейронные сети? Ответы на эти и другие вопросы вы найдёте в 70-м выпуске SDCast'а! У меня в гостях Вячеслав Ковалевский, подкастер, преподаватель на Хекслете, бэкенд-разработчик. В этом выпуске мы говорим про нейронные сети, их применение в Machine Learning & Artificial Intelligence направлениях и не только. Начали мы с теоретической части про нейронные сети, а затем углубились в технические (и не только) детали: * Что представляет из себя нейронная сеть? * Как она устроена и работает? * Какие типы нейронных сетей бывают и для каких задач они хороши? * Как происходит настройка нейронной сети? * Насколько важен процесс обучения сетки? Как это обычно делается и какие есть варианты? * Распределённые системы обучения нейронных сетей * Эффективное использование машинных ресурсов (в том числе не только CPU, но и GPU) для работы и обучения сети Обсудили мы в целом задачи Machine Learning, растущие объемы данных и способы их эффективной обработки, и вообще, куда катится весь этот мир! :) Ссылки на ресурсы по темам выпуска: * Блог Славы про нейронные сети mxnet.guru (http://mxnet.guru/) * Notebooks designed to teach deep learning (http://gluon.mxnet.io/index.html), Apache MXNet (incubating) (https://github.com/apache/incubator-mxnet), and the gluon interface * Supercharge your Computer Vision models with the TensorFlow Object Detection API (https://research.googleblog.com/2017/06/supercharge-your-computer-vision-models.html) * AutoML for large scale image classification and object detection (https://research.googleblog.com/2017/11/automl-for-large-scale-image.html) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-12-21
1h 27
SDCast
В гостях Михаил Белопухов, разработчик OpenBSD
Всё что вы хотели узнать о OpenBSD и даже намного больше информации ждёт вас в 69-м выпуске SDCast'а! У меня в гостях Миша Белопухов, разработчик OpenBSD. В начале Миша рассказал про то, как он сам познакомился с OpenBSD, как начал изучать операционные системы и как его интерес неожиданно превратился во вполне оплачиваемую работу :) Миша адаптировал OpenBSD для работы на различном железе и в различном окружении, в том числе и виртуальном, поэтому он портировал разные драйвера устройств. Миша рассказал интересные истории из своего опыта портирования, как работают различные драйверы, механизмы взаимодействия с железом и ядром ОС. Обсудили мы и в целом операционную систему OpenBSD, как она устроена, на каких принципах построена, как работает ядро системы, драйвера и user space код. Обсудили вопросы, связанные с безопасностью и защищенностью, как самой ОС, так и прикладного кода, работающего в системе. OpenBSD известна своим слоганом “Secure by Default” и тем, что вопросам безопасности там уделяется большое внимание. Миша рассказал про различные подсистемы обеспечения безопасности, применяемые в OpenBSD, такие как: * Рандомизация адресного пространства ядра, KARL (Kernel Address Randomized Link) * Рандомизация размещения адресного пространства, ASLR (address space layout randomization) * strlcpy() и strlcat() - нестандартные функции, созданные в качестве замены часто используемых некорректным образом аналогов стандартной библиотеки * fork+exec, PIE, pledge и другие. Отдельно поговорили о криптографических алгоритмах, способах их реализации с использованием возможностей современных процессоров, таких как SIMD, а так же о их применении в SSH и SSL. Ссылки на ресурсы по темам выпуска: * Доклад Михаила “Implementation of Xen PVHVM drivers in OpenBSD” с BSDCan (видео (https://www.youtube.com/watch?v=GWwhgIPdKH0), слайды (https://www.openbsd.org/papers/bsdcan2016-xen.pdf)) * Доклад Тео де Раадта про Pledge с EuroBSDCon 2017 (видео (https://www.youtube.com/watch?v=FzJJbNRErVQ), слайды (https://www.openbsd.org/papers/eurobsdcon2017-pledge.pdf)) * Доклад Тео де Раадта "arc4random - randomization for all occasions" с Hackfest 2014 (видео (https://www.youtube.com/watch?v=aWmLWx8ut20), слайды (https://www.openbsd.org/papers/hackfest2014-arc4random/index.html)) * Доклад Ilja van Sprundel “Are all BSDs created equally? A survey of BSD kernel vulnerabilities” с DEF CON (видео (https://www.youtube.com/watch?v=1j1UaLsPv3k), слайды (https://media.defcon.org/DEF%20CON%2025/DEF%20CON%2025%20presentations/DEFCON-25-Ilja-van-Sprundel-BSD-Kern-Vulns.pdf)) * Статья про сравнение защищённости OpenBSD и FreeBSD (https://networkfilter.blogspot.ru/2014/12/security-openbsd-vs-freebsd.html) * Слайды “Security features in the OpenBSD operating system (https://homepages.laas.fr/matthieu/talks/min2rien-openbsd.pdf)” от Matthieu Herrb * Описание технологии ASLR от Pax Team (https://pax.grsecurity.net/docs/aslr.txt) * Статья-заметка “KASLR: An Exercise in Cargo Cult Security” (https://forums.grsecurity.net/viewtopic.php?f=7&t=3367&sid=c757c2f8e8db817dabb7b7c501156fc0) от Brad "spender" Spengler * Видео доклада Михаила “OpenBSD: Куда катится крипто?” (https://events.yandex.ru/lib/talks/1489/) * Пост “AES timing attacks on OpenSSL (https://access.redhat.com/blogs/766093/posts/1976303)” от Redhat * Whitepaper “Cache Games – Bringing Access-Based Cache Attacks on AES to Practice (https://eprint.iacr.org/2010/594.pdf)” * 130+ уязвимостей в tcpdump (https://www.cvedetails.com/vulnerability-list/vendor_id-6197/Tcpdump.html) * Книга “The Design and Implementation of the 4.4BSD Operating System”
2017-12-13
3h 09
SDCast
HL edition: разработчики Tarantool
Товарищи, встречайте 68-й выпуск подкаста! И вновь этот выпуск записан на Highload++ 2017! В этом выпуске мы вместе с Петей из подкастов «Пятиминутка PHP» и «Пятиминутка React» пообщались с разработчиками Tarantool. В гостях Костя Осипов, Кирилл Юхин и Рома Цисык. Костя Осипов уже был у меня в гостях в 20-м выпуске. Но с тех пор прошло много времени, проект живёт, развивается, и много что появилось и изменилось! Ребята рассказали про текущее положение дел в Tarantool, что нового и интересного появилось в проекте в последнее время, а так же над чем команда трудится сейчас. У ребят довольно часто спрашивают: «Почему Lua?» И сейчас они исследуют возможность подключения различных языков, назовём их бэкендами, для написания бизнес-логики внутри сервера. И один из потенциальных вариантов — это LLVM. Ребята рассказали о возможных плюсах и минусах появления такого функционала, поделились своими мыслями по этому поводу. Одна из интересных возможностей — это использование привычного всем SQL для написания запросов к данным. Кирилл Юхин занимается именно этой задачей и он поделился своими исследованиями в этой области, рассказал про различные подходы к решению и какой вариант выбрали они сами. Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-12-07
47 min
SDCast
HL edition: участники-докладчики секции Lua
Товарищи, встречайте 67-й выпуск SDCast'а вновь записанный на Highload++ 2017! На этот раз мы собрались большой компанией докладчиков секции Lua, участников сообщества Lua in Moscow. В этом выпуске принимают участие: Александр Гладыш, Антон Солдатов, Дмитрий Борисов, Сергей Лерг. Кратко о каждом участнике выпуска: * Александр Гладыш является организатором сообщества Lua in Moscow, а так же ведущим секции Lua на конференции Highload++ * Антон Солдатов — инженер-программист в компании IPONWEB, занимается разработкой собственной реализации Lua. Кстати, Антон уже был у меня в гостях в 56 выпуске * Дмитрий Борисов — разработчик фрилансер, занимается разработкой телеком-систем * Сергей Лерг — разработчик фрилансер, разработчик игр В этом выпуске мы поговорили о разных аспектах применения Lua. Поскольку все участники работают в разных направлениях, мы обсудили кто и как использует Lua. Посчитали сколько разных экосистем есть в Lua-мире и почему так сложилось, почему нет одной единой системы. Обсудили сильные и слабые стороны Lua. Все участники подкаста рассказали как каждый из них пришёл к Lua, какой у кого был опыт до этого и чем каждого привлёк именно Lua. Подискутировали на тему стилей программирования на Lua, инструментах анализа кода, соглашений по кодированию и прочих аспектах командной разработки. Не обошлось и без сравнения Lua и других языков программирования, таких как go, javascript, python и даже с++! Выпуск получился порой с жаркими дискуссиями но в очень теплой и дружественной атмосфере. Приятного прослушивания! И, кстати, да! Приглашаем всех на очередную встречу Lua in Moscow, которая пройдёт уже 7-го декабря в офисе компании IPONWEB в Москве.
2017-11-30
1h 08
SDCast
HL edition: Михаил Леонов и Vytis Valentinavičius из Lamoda
Встречайте 66-й выпуск SDCast'а, который так же записан на Hightload++ 2017. На этот раз мы с Петей из подкастов «Пятиминутка PHP» и «Пятиминутка React» взяли небольшое интервью у ребят из компании «Lamoda». В гостях Михаил Леонов и Vytis Valentinavičius. У Витиса был доклад на конференции про логи, как их собирать, хранить и обрабатывать. Об этом мы и поговорили: зачем нужны логи, сколько логов нужно собирать и какими способами и главное, что с ними делать дальше. Ребята немного рассказали про свой способ сбора логов из программных компонентов приложений, а так же про архитектуру обработки и хранения собранных данных. Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-11-29
15 min
SDCast
HL edition: Александр Баталов, директор по развитию в компании Флант
Друзья, рад представить вам интервью с Александром Баталовым из компании Флант, записанное на прошедшей конференции Highload 2017. В этом выпуске мы вместе с Петей из подкастов «Пятиминутка PHP» и «Пятиминутка React» обсуждаем с Александром тему DevOps в целом и Kubernetes в частности. В начале Александр рассказал про компанию в целом, как и когда она появилась и чем занимается. Далее мы углубились в вопросы инфрастуктуры, архитектуры приложений, развёртывания и обслуживания больших систем, обсудили процесс деплоя приложений, как это делалось раньше и какие инструменты и технологии применяются сейчас, вспомнили про гипервизоры, контейнеры, оркестрацию приложений, распределение ресурсов. Александр рассказал, что такое Kubernetes, зачем он нужен, какие задачи он решает, и как они у себя в компании его активно применяют. Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-11-28
20 min
SDCast
Игорь Демьянов и Евгений Гусев, фронтенд менеджер и фронтенд тимлид из компании Wrike
Рад представить вам 64-й выпуск SDCast’а! У меня в гостях Игорь Демьянов и Евгений Гусев, фронтенд менеджер и фронтенд тимлид из компании Wrike. Wrike активно используют у себя язык Dart, об этом и пойдет речь в этом выпуске. Wrike — это платформа для организации работы в реальном времени, включая постановку задач, планирование, коммуникации, отчётность и многое другое. В начале, Игорь рассказал немного подробней о системе, как она устроена, какие использовались технологии, какие были задачи и проблемы, чем не устраивали существующие решения и технологии? Так в компании появился Dart. Поговорили мы про сам язык Dart. В начале ребята сделали небольшой экскурс в историю языка и путь его развития, затем мы обсудили основные парадигмы и ключевые концепции языка. На протяжении всего выпуска конечно же всплывали темы сравнения и сопоставления Dart и JavaScript, Dart и Typescript, взаимодействия со сторонними библиотеками и прочие вопросы касательно современной веб-разработки. Ребята рассказали, как они переводили свой сервис в части frontend с JavaScript на Dart. Какой был план перехода и вообще подход к этому процессу и насколько он оказался лёгким или сложным с точек зрения: * Разработчиков * Процессов сборки * Процессов тестирования * Процессов выкладки релизов * Взаимодействия с другими компонентами системы Обсудили мы и экосистему вокруг Dart: различные инструменты, линтеры, сборщики, пакетные менеджеры, интеграции с IDE и всё прочее. Один из интересных вопросов — это сообщество вокруг языка и вообще наличие программистов на Dart. Ребята рассказали про свой опыт общения с разработчиками языка из Google, рассказали про обсуждение новых фич языка, конференции и другую социальную активность. В компании очень большой штат программистов, в том числе и на Dart. Так что было интересно обсудить как Wrike находит новых программистов на Dart. Ссылки на ресурсы по темам выпуска: * Основной сайт языка Dart (https://www.dartlang.org/) * Русско-язычное сообщество Dart в Slack (http://dart-ru.herokuapp.com/) * Статья на Хабре: «Два года с Dart: о том, как мы пишем на языке, который ежегодно «хоронят» (часть 1 (https://habrahabr.ru/company/wrike/blog/330832/), часть 2 (https://habrahabr.ru/company/wrike/blog/330900/)) * Доклады ребят из Wrike про Dart: * Евгения Гусева «Лебедь рак и щука: как технологии тянут фронтенд на дно (https://www.youtube.com/watch?v=PApQtmNZ2ZM)» * И ещё Евгения Гусева «Dart питание и сила для вашего проекта (https://www.youtube.com/watch?v=TtLMHfvY2uM)» * Романа Абдульманова «С бэкенда во фронтенд: мой опыт перехода на Dart (https://www.youtube.com/watch?v=0ku8s4m_1Oc)» * Ильи Таратухина «Как после 5 лет JavaScript начать писать на Dart (https://www.youtube.com/watch?v=XlVoTJ-djNM)» Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-10-27
1h 49
SDCast
В гостях Алексей Маркин, программист из МЦСТ
Приветствую, товарищи! В предыдущем выпуске мы немного затронули тему процессоров «Эльбрус» и VLIW-архитектуры , но эта тема показалась интересной, и вот, в этом выпуске у меня снова в гостях Алексей Маркин, программист из МЦСТ, и этот выпуск целиком и полностью посвящен этой теме. Вначале Лёша рассказал немного про компанию МЦСТ, историю её появления и развития, направления деятельности, и чем компания занимается сейчас. Далее мы поговорили про процессоры «Эльбрус», что они из себя представляют, чем они принципиально отличаются от других архитектур (x86, ARM, RISC и прочее). Для VLIW-архитектуры порядок инструкций исполнения программы формируется уже на этапе компиляции программы, поэтому компилятор является неотъемлемой частью архитектуры. Далее мы обсудили оптимизирующий компилятор для процессоров «Эльбрус», непосредственно разработкой которого Алексей и занимается. Лёша рассказал, что это такое — оптимизирующий компилятор, зачем он нужен и какие задачи решает, в чём его отличие от «обычных» gcc, clang. Довольно подробно Лёша рассказал про различные типы оптимизаций, которые присутствуют в компиляторе, что они дают на выходе в плане производительности, рассказал как вообще эти оптимизации находятся и разрабатываются и внедряются в компилятор. Рассказал про различные подводные камни на этом тернистом пути оптимизации :) Так же обсудили сам процесс разработки компилятора, какие инструменты используются в команде разработки в МЦСТ, как устроено тестирование и сбор метрик, бенчмарки и замеры производительности. Ссылки на ресурсы по темам выпуска: * Блог Алексея (https://alexanius-blog.blogspot.ru/) * Публикации МЦСТ (http://www.mcst.ru/publikacii-mcst) по теме * Откомпилируй Это (http://compileit.ru/) — заброшенный блог Алексея про компиляторы, на который у него нет времени. Но если вдруг оно появится/найдутся желающие его вести - он будет очень рад :) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-10-12
1h 34
SDCast
В гостях Александр Титов и Амир Аюпов, инженеры из Intel и Алексей Маркин, программист из МЦСТ
Такого еще не было! Товарищи, рад представить вам 62-й выпуск подкаста, в котором у меня не один, а сразу целых три гостя! На этот раз вместе с Александром Титовым и Амиром Аюповым, инженерами из Intel и Алексеем Маркиным, программистом из МЦСТ, мы обсуждаем тему процессоров и разработку на стыке Hardware & Software. Отдельная большая часть подкаста посвящена вопросам айтишного образования в России. По традиции, в начале ребята вкратце рассказали про себя, кто есть кто и чем занимается. Ну а дальше мы окунулись в мир процессоров! Обсудили из каких компонентов состоит процессор вкратце, как происходит выполнение пользовательского кода на процессоре, опять же очень условно, не вдаваясь в сложные технические детали. Обсудили какие бывают архитектуры и вообще что подразумевается под архитектурой процессора, чем отличаются x86, ARM, Эльбрус с точки зрения систем команд: традиционные RISC и CISC, плюс альтернативный VLIW. Пообщались о том, как и в какую сторону развиваются процессоры, какие есть тонкости и сложности, что «мешает» сделать процессор быстрее. Вспомнили про нанометры и усовершенствование технологического процесса, но что интереснее, Саша рассказал про другие технические и технологические ограничения, такие как Power wall, ограничение максимальной мощности, которую разумные системы охлаждения могут отвести от процессора. Так же обсудили различные типа процессоров: CPU, GPU, различные кастомные железки, FPGA и прочее; какие классы задач решаются теми или иными процессорами, вопросы железячного прототипирования и разработки своего железа «с нуля». Подискутировали на тему перспективных направлений в CPU дизайне и трендов разработки процессоров в индустрии. Что нас может ждать в ближайшем будущем и что интересного есть уже сейчас. Во второй части подкаста мы пообщались про направление “Computer Science” в образовании. Поскольку все из участников подкаста так или иначе имеют отношении к высшему образованию, кто-то преподавал, кто-то преподает сейчас, мы вспомнили как это было у нас. Ребята рассказали про то, какие курсы и лекции они читают сами, поделились своим опытом преподавания и взаимоотношениями с институтами. Обсудили насколько темы и предметы, которые преподают в институтах актуальны в современных коммерческих разработках, где брать преподавателей, как обстоят дела с оборудованием, лабораториями, есть ли и какой интерес у коммерческих компаний в своём участии в образовании, проведении специализированных лекций и даже целых предметов, предоставлении мест для прохождения практики и практической базы для написания курсовых и прочих научных работ. Беседа получилось интересная и насыщенная. Для тех, кому много сразу трёх часов, можно разделить подкаст на два: * Процессоры и hardware: с начала и до 1ч 44м * Computer Science образование в России и за рубежом: с 1ч 44м и до конца :) Ссылки на ресурсы по темам выпуска: * Факультативный курс по CPU в МФТИ (https://mipt-ilab.github.io/mipt-mips/) * Лекция Александра Титова про организацию микропроцессоров (видео, часть 1 (https://www.youtube.com/watch?v=uf3p0owPcfQ), часть 2 (https://www.youtube.com/watch?v=7aA6CTwnz7c), часть 3 (https://www.youtube.com/watch?v=CGVC6km2zLI)) * VK Public “Банальные новости индустрии вычислительной техники без инсайдов” (https://vk.com/pipelinestall) от Амира Аюпова * Блог Алексея alexanius'а Маркина (http://alexanius-blog.blogspot.ru/) Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-09-19
2h 50
SDCast
В гостях Павел Аргентов, практикующий fp-программист
У меня в гостях Павел Аргентов, практикующий fp-программист. В этом выпуске мы попытались осветить все аспекты языка OCaml, сферы его применения, вопросы разработки, экосистему и сообщество вокруг. В начале Паша сделал довольно подробный экскурс в историю появления самого языка, начиная с появления диалекта Lisp'а в семидесятых, добавление алгебраических типов данных и категориальной абстрактной машины в восьмидесятых, появление реализации Caml Light в девяностых и заканчивая уже современной инкарнацией c поддержкой объектной модели. Подробно обсудили основые парадигмы языка и ключевые концепции, такие как: функциональное программирование, strict-механика и вытекающие из этого последствия, связывание переменных и лексические скоупы для связывания, система типов Хиндли-Милнера и опциональные аннотации типов, ООП-слой, язык модулей и функторы, инструментарий для синтаксического расширения (собственные DSL) и многое другое. Пообщались о сферах применения языка, для каких задач OCaml подходит лучше всего, какие преимущества у него по сравнению с другими языками в контексте этих задач. Паша рассказал про различные известные (и не очень) проекты, написанные на OCaml, среди которых, например, MirageOS, фреймворк для построения Unikernel систем. Рассказал про различные проекты, написанные под сильным влиянием OCaml. В основном это различные языки программирования, которые основаны на идеях OCaml, например FSharp, Haxe или ReasonML. Не забыли мы обсудить и экосистему вокруг языка, какие есть инструменты для работы с языком: моды к различным IDE, браузер типов, пакетные менеджеры и прочие сопутствующие инструменты, коммьюнити вокруг языка, списки рассылки, места скопления OCaml-программистов, чаты и форумы. Так же немного пофилософствовали на тему того, почему язык не получил широкого распространения среди разработчиков, с каких языков проще перейти на OCaml, стоит ли в принципе сейчас изучать этот язык. Ссылки на ресурсы по темам выпуска: * ocaml.org (http://ocaml.org/). Главный источник информации, знаний и документации по OCaml * Wiki-статья про OCaml (https://ru.wikipedia.org/wiki/OCaml) * Статья Павла “Beginner’s OCaml setup on Mac” (https://medium.com/@argent_smith/beginners-ocaml-setup-on-mac-fc206747b1ab) * Статья Павла “How to synchronize application development using Unison?” (https://hype.codes/how-synchronize-application-development-using-unison) * Multicore OCaml (http://ocamllabs.io/doc/multicore.html) * Экосистема OCaml: * Awesome OCaml (https://github.com/rizo/awesome-ocaml) * OCaml Package Manager (https://opam.ocaml.org/) * Tuareg: an Emacs OCaml mode (https://github.com/ocaml/tuareg) * Merlin (https://github.com/ocaml/merlin) is an editor service that provides modern IDE features for OCaml * oasis - Tooling for building OCaml libraries and application (https://github.com/ocaml/oasis)s * OCaml Labs (http://ocamllabs.io/) * Jane Street Capital's standard library overla (https://github.com/janestreet/core)y * Ocsigen (http://ocsigen.org/).The most advanced multi-tier framework for Web and mobile apps * MirageOS (https://mirage.io/). Library operating system that constructs unikernels * Success’n’users: * http://fsharp.org (http://fsharp.org/) * http://hacklang.org (http://hacklang.org/) * https://flow.org (https://flow.org/) * https://github.com/facebook/pfff/wiki/Main * https://reasonml.github.io (https://reasonml.github.io/) * http://haxe.org (http://haxe.org/) * https://github.com/xapi-project/ * https://blog.janestreet.com/tag/ocaml/ * https://coq.inria.fr (https://coq.inria.fr/) * https://www.cis.upenn.edu/~bcpierce/unison/ * Книги: * The OCaml system (http://caml.inria.fr/pub/docs/manual-ocaml/) * Real World OCaml (https://realworldocaml.org/) * Список книг на офф сайте (https://ocaml.org/learn/books.html) Поддержи подкаст на patreon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-08-29
1h 43
SDCast
В гостях Иван Круглов, програмист Booking.com
У меня в гостях Иван Круглов, програмист Booking.com (http://booking.com/). Некоторое время Иван занимался разработкой подсистемы поиска отелей, именно об этом и пойдёт речь в этом выпуске. Офис разработки Booking.com (http://booking.com/) расположен в Амстердаме и в начале Иван рассказал как он туда попал. Поделился опытом прохождения интервью, подготовкой к собеседованиям в различных российских, европейских и американских компаниях. Обсудили архитектуру поиска отелей: как в целом оно работает, из каких компонентов и сервисов состоит, на каких языках/платформах написано. Иван рассказал как эволюционировала система в целом, как она была устроена в начале, какие появлялись узкие места и как они в дальнейшем разрешались. Иван рассказал про то, как они ушли от баз данных MySQL к встраиваемому решению, а именно RocksDB. Рассказал про материализацию данных для поиска, шардирование данных и эффективную обработку запросов. Так же Иван немного рассказал про то, как у них происходит выкладка изменений в продакшн, мониторинг и обслуживание системы. Ссылки на ресурсы по темам выпуска: * Доклад Ивана “Архитектура поиска в Booking.com” с Highload++ (видео (https://www.youtube.com/watch?v=VdRmsOAvv0A&list=PLiBYz3OQubLryzLMpCrSZ7rS87sxo5ZO_&index=15), слайды (https://www.slideshare.net/profyclub_ru/bookingcom-bookingcom)) * RocksDB (http://rocksdb.org/). A persistent key-value store for fast storage environments Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-08-24
52 min
SDCast
В гостях Максим Железный, QA team lead в компании Trinity Digital
Встречайте 59-й выпуск SDCast'а, который посвящен тестированию мобильных приложений. У меня в гостях Максим Железный, QA team lead в компании Trinity Digital. В этом выпуске мы говорим о том, что такое мобильное тестирование и почему его нужно отличать от других видов тестирования, какие есть особенности и тонкости, на что нужно обращать особое внимание при тестировании. Максим рассказал как в целом устроен типичный процесс тестирования, начиная от получения первых альфа-версий от разработчиков и заканчивая выпуском релиза. Так же Максим рассказал про различные инструменты, которые используются в процессе тестирования и которые облегчают жизнь тестировщика. Это касается эмуляторов, дебаггеров, инструментов для манипуляций с качеством сети, механизмов доставки сборок на устройства, сбора метрик и статистики и всего прочего. Так же мы затронули тему тестирования backend'а и различных API, которыми так или иначе пользуются мобильные приложения. Обсудили автотесты, какие они бывают, когда их надо использовать и почему это важно. Так же Максим рассказал про то, как правильно выбрать ферму реальных девайсов для тестирования своих разработок, откуда надо брать первоначальную статистику по устройствам, девайсы каких размеров и характеристик нужны и в каком количестве, как найти золотую середину между размером фермы и трудозатратами на её содержание и приемлемым качеством протестированного продукта. В завершении выпуска немного обсудили то, какие навыки важны для тестировщика в целом, какие инструменты и технологии стоит изучать, и какие есть сферы и направления развития. Ссылки на ресурсы по темам выпуска: * Гайдлайны стора Apple (https://developer.apple.com/app-store/review/guidelines/) * Гайдлайны стора Google (https://play.google.com/intl/ru/about/developer-content-policy/) * Дизайн гайд Apple (https://developer.apple.com/ios/human-interface-guidelines/overview/design-principles/) * Дизайн гайд Google (https://developer.android.com/design/index.html) * Pairwiser (https://inductive.no/pairwiser) — один из инструментов Pairwise'инга. Подробнее можно почитать тут - https://en.wikipedia.org/wiki/All-pairs_testing (смотрите сразу в пример, если начать с формул, то может закружиться голова) * Do not keep activities для Android (https://habrahabr.ru/post/221679/) * Манипуляция с сетью через Network Link Conditioner (http://nshipster.com/network-link-conditioner/) * Доставка сборок приложений: * HockeyApp (https://www.hockeyapp.net/) * AppBlade (https://appblade.com/) * TestFiry (https://www.testfairy.com/) * Тестирование API: * Postman (https://www.getpostman.com/) * Paw (https://paw.cloud/) * Insomnia (https://insomnia.rest/) * SoapUI (https://www.soapui.org/) * UI auto monkey tests: * UI AutoMonkey for iOS (https://github.com/jonathanpenn/ui-auto-monkey) * UI Exerciser Monkey for Android (https://developer.android.com/studio/test/monkey.html) * Источники информации по устройствам: * http://www.appbrain.com/stats/top-devices-by-country?country=ru - весьма удобная статистика с разбивкой по странам * https://opensignal.com/reports/2015/08/android-fragmentation/ - немного устарела, но зато наиболее релевантная, как мне показалось * http://www.antutu.com/en/index.htm - стастика по девайсам исходя из бенчмарков * https://developer.android.com/about/dashboards/index.html - самая подробная статистика по android от самой корпорации добра * https://david-smith.org/iosversionstats/ - та самая статистика по iOS от David Smith. Он указывает, что собирает ее с пользователей своего приложения, но точно помню, что фигурировала информация о содружестве с самой Apple (сейчас уже не найду) Понравился выпуск? — Поддержи подкаст на https://www.patreon.com/KSDaemon а так же ретвитом, постом и просто рассказом друзьям!
2017-08-03
2h 00
SDCast
В гостях Павел Одинцов, разработчик системы обнаружения DDoS атак FastNetMon
DDoS... Как часто мы стали слышать этот термин в айтишных новостях. Сейчас это одна из наиболее распространённых типов атак на информационные системы. В этом выпуске у меня в гостях Павел Одинцов, разработчик системы обнаружения DDoS атак FastNetMon. В начале мы обсудили теоретическую часть. Паша рассказал про то, что в целом представляют из себя DoS-атаки, какие типы атак бывают, как они устроены и работают и для чего вообще они предназначены. Рассказал о различных способах борьбы с DoS-атаками. Паша долгое время работал в хостинг-индустрии и не понаслышке знает, что такое DoS-атаки. Паша рассказал, как он сам впервые столкнулся с такой атакой, как стал искать средство защиты от атак и как в итоге пришёл к написанию собственного велосипеда, который превратился в проект FastNetMon. Далее мы обсудили сам проект FastNetMon. Паша рассказал историю своих первых экспериментов, как он получил «proof of concept», и как в дальнейшем происходило развитие системы как с архитектурной точки зрения, так и со стороны функциональности. Паша подробно рассказал про внутреннее устройство системы, как происходит обработка входящего трафика, как происходит расчёт метрик и как в конечном счёте принимается решение о легитимности трафика. В процессе обсуждения были затронуты и общие вопросы построения сетевой инфраструктуры провайдера или датацентра, вкратце освещены разные сетевые протоколы, такие NetFlow, IPFIX, sFlow и другие. Так же Паша рассказал как происходит тестирование FastNetMon. Это не простой вопрос, потому что для полноценного тестирования такого рода систем необходимо большое количество дампов разнородного сетевого трафика. Откуда его взять? Спасибо пользователям проекта, которые для решения своих настоящих и потенциально будущих проблем готовы поделиться своими данными. Так же интересный вопросы — это взаимодействие с вендорами оборудования. Поскольку в конечном итоге сетевой трафик идет через конкретные коммутаторы и маршрутизаторы того или иного производителя, и не смотря на принятые и открытые стандарты, как это водится, каждый вендор трактует стандарты и протоколы немного по-своему. В завершении беседы мы немного пообщались на тему Open Source в целом и в разрезе проекта FastNetMon в частности. Паша рассказал, какие он видит плюсы, что дала ему публикация проекта в open source, какое появилось сообщество у проекта. Ссылки на ресурсы по темам выпуска: * Официальный сайт проекта FastNetMon (https://fastnetmon.org/). * FastNetMon на GitHub (https://github.com/pavel-odintsov/fastnetmon). * Доклад Павла «FastNetMon – инструмент для выявления DDoS атак» (https://www.youtube.com/watch?v=FmsiZ7HJJf0) с конференции ENOG 9 / RIPE NCC. * Различные видео докладов от сообщества о проекте (https://fastnetmon.com/video/). Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
2017-07-04
1h 45
SDCast
В гостях Игорь Антонов, тимлид в компании ДальЖАСО, наставник в HTML Academy и организатор ha.js
Друзья, что вы знаете про 1С, кроме дурной славы и программ на русском языке? В этом выпуске мы попробуем развенчать различные мифы про платформу 1С, а так же обсудить, как она устроена и какими возможностями обладает. У меня в гостях Игорь Антонов, тимлид в компании ДальЖАСО, наставник в HTML Academy (https://htmlacademy.ru/) и организатор встреч фронтенд-разработчиков Хабаровска ha.js (https://hajs.ru/). В этом выпуске Игорь подробно рассказал про платформу 1С:Предприятие: что в ней было в начале, как она развивалась и что есть сейчас. Рассказал про внутреннее устройство и архитектуру, что такое конфигурации и как они строятся, как происходит взаимодействие с объектами системы внутри и снаружи. Рассказал про сравнительно новые возможности мобильной разработки, интеграции с внешними системами, REST-сервисы, API, использование 1C в качестве бэкенда для веб-приложений и много чего ещё. Отдельно пообщались на тему того, как устроен процесс разработки для платформы 1С, чем он отличается от привычной разработки на других языках. Игорь рассказал, как происходит публикация конфигураций, чем обслуживание и сопровождение систем на базе 1С отличается от обычных клиент-серверных приложений. Поскольку Игорь является активным участником frontend сообщества, наставничает в HTML Academy и является инициатором и организатором встреч ha.js, не обошли мы стороной и эти темы. Игорь расссказал, как он увлёкся вебом, и как затем решил стать наставником в HTML Academy. Поделился тем, что им движет, и какие цели он преследует организовывая встречи сообщества ha.js. Ссылки на ресурсы по темам выпуска: * Персональный блог Игоря Антонова (http://iantonov.me/) * Официальный сайт компании 1С (http://1c.ru/). Новости, полезные сылки, анонсы и т.д. * "Заметки из Зазеркалья" или проще говоря официальный блог компании 1С для разработчиков (https://wonderland.v8.1c.ru/). Анонсы нового функционала для прикладных разработчиков, примеры и т.д. * Крупнейший информационный портал для 1С-разработчиков (http://infostart.ru/). Аналог "Хабрахабр", но только по 1С. Статьи, готовый код, форум, каталог платных разработок, отчеты и многое другое. Раз в год администрация ресурса организовывает большую оффлайн-конференцию для 1С-разработчиков. * Официальный сайт проекта OneScript (http://oscript.io/) - инструмент автоматизации для специалистов по 1С. * "Адаптация типовых конфигураций без лишних сложностей. Применение механизма расширений на практике" (http://iantonov.me/page/1spredprijatie-8-adaptacija-tipovyh-konfiguracij-bez-lishnih-slozhnostej-primenenie-mehanizma-rasshirenij-na-praktike). Статья Игоря, написанная для журнала "Системный администратор" о новой технологии для бесшовной доработки типовых решений. * "Нестандартный back-end для веб-приложений. Практическое применение HTTP-сервисов в "1С:Предприятие 8" (http://iantonov.me/page/nestandartnyj-back-end-dlja-veb-prilozhenij-prakticheskoe-primenenie-http-servisov-v-1spredprijatie-8). Еще одна статья Игоря из журнала "Системный администратор" с практической демонстрацией HTTP-сервисов. * "Обзор 1С:Enterprise Develompent Tools" (http://iantonov.me/page/obzor-1centerprise-development-tools-professionalnaja-ide-dlja-1s-razrabotchika) - новая IDE для 1С-разработчиков на базе Eclipse. * "Разработка мобильных приложений на платформе 1С:Предприятие" (http://iantonov.me/page/razrabotka-mobilnyh-prilozhenij-na-platforme-1spredprijatie-83) - электронная версия статьи из журнала "Системный администратор" с демонстрацией примера разработки приложения на 1С для Android. * "Как попасть на front. Как 1С-разработчику переквалифицироваться во фронтендера" (http://samag.ru/archive/article/3455). Статья Игоря для 1С-разработчиков, желающих перебежать в лагерь фронтенда. * ha1s (https://ha1s.ru/) (https://ha1s.ru/) - официальный сайт хабаровского митапа для 1С-разработчиков. Первая встреча состоялась 27.05.2017 На сайте опубликованы презентации и записи докладов.
2017-06-29
1h 47
SDCast
В гостях Антон Солдатов, инженер-программист из компании IPONWEB
Любите ли вы Lua так же, как люблю его я? А вот ребята из компании IPONWEB настолько его полюбили, что даже сделали свою собственную имплементацию Lua! :) Об этом и пойдет речь в этом выпуске. У меня в гостях Антон Солдатов, инженер-программист из компании IPONWEB, где он занимается разработкой и поддержкой их реализации Lua. Компания IPONWEB занимается разработкой в области RTB (Real Time Bidding) систем. Это технология закупки медийной рекламы посредством программируемых онлайн-аукционов. Вначале Антон рассказал про то, что это за системы, какие задачи они решают, какие есть компоненты и сущности в RTB-системах, что такое DSP и SSP, как они устроены и фукнционируют. Ссылки на ресурсы по темам выпуска: * Описание RTB на Википедии (https://ru.wikipedia.org/wiki/%D0%A2%D0%BE%D1%80%D0%B3_%D0%B2_%D1%80%D0%B5%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%BC_%D0%B2%D1%80%D0%B5%D0%BC%D0%B5%D0%BD%D0%B8) * Еще немного wiki про RTB: * RTB (Real Time Bidding) (http://rtb-media.ru/wiki/) * DSP (Demand Side Platform) (http://rtb-media.ru/wiki-dsp/) * SSP (Supply / Sell Side platform) (http://rtb-media.ru/wiki-ssp/) * Книга “**Ad Serving Technology (https://www.amazon.com/Serving-Technology-Understand-revelation-commercialized/dp/1484867572)”**, является отличным введением в индустрию, затрагивающим более широкий круг вопросов, чем собственно RTB. * Доклад Антона «Challenges Building Yet Another Lua Implementation» (https://www.youtube.com/watch?v=B4LCdC-Rt3o&feature=youtu.be) с конференции Lua in Moscow (http://lua.moscow/) * Доклад Игоря Эрлих «LuaJIT как основа для сервера приложений - проблемы и решения» (http://www.highload.ru/2016/abstracts/2304.html) с Highload++'16 * LuaJIT: * Описание байт-кода (http://wiki.luajit.org/Bytecode-2.0) * Описание промежуточного состояния (IR) (http://wiki.luajit.org/SSA-IR-2.0) * У LuaJIT можно генерировать т.н. "дамп компилятора" – отладочную информацию о том, как происходит запись трасс, генерация машинного кода и т.д. Ключи командной строки для включения этого режима задокументированы тут: http...
2017-06-06
1h 13
SDCast
В гостях Сергей Аверин, технический эксперт и конференционный маньяк
Рад представить вам 55-й выпуск SDCast'а! У меня в гостях Сергей Аверин, технический эксперт и конференционный маньяк из компании «Acronis». В этом выпуске мы говорим про Go, Python, параллельное программирование в Go, а так же обсуждаем обычные разработческие будни. В начале Сергей рассказал про то, как он сам познакомился с языком Go, на каких задачах начал его применять, и как происходило внедрение языка в компании. Вопреки расхожему мнению о том, что на Go обычно переходят с Php или JavaScript, в «Acronis» инициаторами перехода были разработчики C/C++. Для лучшего понимания, Сергей рассказал о приложениях и сервисах, о том, какие задачи необходимо было решить, и как происходил процесс внедрения, какие были сложности и трудности, а главное — какие получились бенефиты в результате перехода. Немного подробнее поговорили о горутинах и в целом парадигме программирования на Go. Насколько этот подход отличается от других языков, насколько легко его освоить и начать программировать. Обсудили тему кроссплатформенной разработки на Go, и в особенности написание программ под Windows. Так же, в компании “Acronis” активно используется Python, поэтому не обошли мы стороной и этот язык. Сергей немного рассказала про то, где и как они используют Python в своих сервисах. Ссылки на ресурсы по темам выпуска: * The Go Playground (https://play.golang.org/) * Статья Дмитрия Вьюкова “Go channels on steroids” (https://docs.google.com/document/d/1yIAYmbvL3JxOKOjuCyon7JhW4cSv1wy5hC0ApeGMV9s/pub) * Статья “Go channels are bad and you should feel bad” (http://www.jtolds.com/writing/2016/03/go-channels-are-bad-and-you-should-feel-bad/) * Calling a Windows DLL in Go (https://github.com/golang/go/wiki/WindowsDLLs) * Модуль логирования beego/logs (https://beego.me/docs/module/logs.md) * A Windows GUI toolkit for the Go Programming Language (https://github.com/lxn/walk) Понравился выпуск? — Поддержи подкаст на https://www.patreon.com/KSDaemon а так же ретвитом, постом и просто рассказом друзьям!
2017-05-24
1h 12
SDCast
В гостях Олег Анастасьев, ведущий программист Одноклассников
Встречайте 54-й выпуск SDCast'а, который посвящен разработке высоконагруженных систем. У меня в гостях Олег Анастасьев, ведущий программист Одноклассников, спикер на конференциях по Java и Cassandra, эксперт в области распределенных и отказоустойчивых систем. В этом выпуске мы говорим об архитектуре Одноклассников, какой она была в самом начале, как развивалась, и что представляет из себя в наши дни. Олег рассказал про то, как и где они хранят пользовательские данные, как они выбирали хранилище под свои задачи, какие были требования, кандидаты и что они в итоге выбрали. Так же Олег рассказал про то, как устроен их фронтенд, имеется в виду не JavaScript и клиентский код, а фронтенд сервера, принимающие запросы от пользователей и приложений и обращающиеся за данными в хранилища и разные внутренние сервисы. В процессе беседы были затронуты темы подходов к архитектуре отказоустойчивых систем, вопросы масштабирования приложений, тестирования и мониторинга, а так же выкатывания обновлений. Поскольку Одноклассники используют различные open source решения, обсудили мы и тему контрибьютинга в различные open source проекты, равно как и выкладывание в open source своих наработок. Отдельно поговорили о кросс дата-центровой архитектуре, распределению данных и коммуникации между дата-центрами. Так же Олег рассказал о том, как у них проводятся теоретические и практические учения по устранению аварий. Ссылки на ресурсы по темам выпуска: * Доклад “Балансировка нагрузки и отказоустойчивость в «Одноклассниках»” (https://habrahabr.ru/post/321448/) * Доклад “Распределенные системы в Одноклассниках” (https://ok.ru/video/97105087088) * Статья “SmartMonitoring — мониторинг бизнес-логики в Одноклассниках” (https://habrahabr.ru/company/odnoklassniki/blog/321402/) * one-nio (https://github.com/odnoklassniki/one-nio). Unconventional I/O library for Java * SourceJS (https://sourcejs.com/). Living Style Guide Platform
2017-03-30
1h 21
SDCast
В гостях Андрей Солнцев и Алексей Виноградов, разработчики Selenide
Встречайте 53-й выпуск подкаста! В этот раз речь пойдёт о тестировании. У меня в гостях Андрей Солнцев, автор фреймворка для тестирования Selenide (http://ru.selenide.org/index.html), разработчик из codeborne (https://codeborne.com/) и Алексей Виноградов, независимый консультант, модератор подкаста Radio-QA (http://radio-qa.com/). Андрей рассказал про то, как появился проект Selenide, чего не хватало на тот момент в Selenium и как всё начиналось. Рассказал о том, как он сам превратился из просто разработчика в разработчика-тестировщика :) Алексей рассказал немного теоретической части о тестировании, видах тестирования, в особенности про автоматизированное тестирование. Вспомнили мы и так называемую пирамиду тестирования, стоимость написания тестов и стоимость их поддержки. Так же мы обсудили непростые вопросы взаимодействия разработчиков и тестировщиков, их роли в команде, возникающие проблемы и способы их решения. Ребята рассказали про то, как устроен проект Selenide изнутри: как идёт разработка, как устроено тестирование самого фреймворка для тестирования :), насколько велико сообщество вокруг проекта и другие смежные вопросы. Алексей так же рассказал о ближайших и дальнейших планах по развитию проекта. Ссылки на ресурсы по темам выпуска: * Блог Андрея Солнцева (http://asolntsev.github.io/). * Блог Алексея Виноградова (http://qa-blog.alexei-vinogradov.de/). * Selenide (http://ru.selenide.org/index.html). Фреймворк для UI тестирования на Java. * Подкаст Radio-QA (http://radio-qa.com/). * Отличные конференции по тестированию: * Ежегодная конференция Selenium Camp (http://seleniumcamp.com/) в Киеве. * Гейзенбаг (https://heisenbug.ru/). Большая техническая конференция для специалистов в области тестирования. * Доклад Алексея “QA Battle: PageObjects c типизацией (JDI) vs. без типизации (Selenide) (https://www.youtube.com/watch?v=iX7ptfdpJXY&list=PLsVTVVvrKX9tLKqDQ2Ab8lBgWnTc_iHRN&index=17)”. * Доклад Антона Кекса “Как нам спасти Java?” (часть 1 (https://www.youtube.com/watch?v=TSAlj04_tkA), часть 2 (https://www.youtube.com/watch?v=cPXTozVjSHo)). * Мастер-класс Алексея Виноградова “UI-тестирование с Selenide с начала (http://testconf.ru/ui-%D1%82%D0%B5%D1%81%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%81-selenide-%D1%81-%D0%BD%D0%B0%D1%87%D0%B0%D0%BB%D0%B0/?lang=ru)” в рамках конференции TestCon Moscow 2017.
2017-03-21
1h 38
SDCast
В гостях Вадим Жуков, разработчик OpenBSD, мейнтейнер портов KDE и Qt
У меня в гостях Вадим Жуков, разработчик OpenBSD, мейнтейнер портов KDE и Qt и преподаватель операционных систем по совместительству. Обсудили то, как устроен проект OpenBSD: насколько велико сообщество разработчиков, какие там есть зоны ответственности, как устроен процесс разработки, тестирования, выпуска релизов, как устроена инфраструктура проекта, насколько велика роль лидера проекта Тео де Раадта и другие смежные вопросы. Вадим подробно рассказал про устройство пакетов и портов OpenBSD, чем они отличаются от других пакетных систем, как устроен процесс появления нового пакета в дереве портов. Отдельно внимания заслуживает рассказ Вадима о портировании KDE4 в OpenBSD. Так же Вадим рассказал про его небольшие исследования в области автоматической настройки сети, Wi-fi и маршрутизации. Поговорили мы и о областях применения OpenBSD: для кого этот дистрибутив, чем он может быть интересен разработчикам и пользователям, как начать своё участие в проекте. Так же Вадим рассказал про хакатоны OpenBSD: зачем они проводятся, какие цели преследуются, как организовываются и кто принимает в них участие. Кстати, ещё Вадим поделился опытом менторства одного подпроекта в рамках участия OpenBSD в Google Summer of Code. Ссылки на ресурсы по темам выпуска: OpenBSD Events and Papers: https://www.openbsd.org/events.html Презентация Вадима “OpenBSD изнутри”: https://www.openbsd.org/papers/lvee_2016_openbsd_inside/ Презентация Вадима про портирование KDE4 под OpenBSD: https://www.openbsd.org/papers/lvee_2014_winter_kde4/ Презентация “OpenBSD meets 802.11n”: https://www.openbsd.org/papers/eurobsdcon2016-openbsd-11n.pdf Серия презентаций от Marc Espie касаемо портов и пакетов, в хронологическом порядке: https://www.openbsd.org/papers/ven05-espie/ https://www.openbsd.org/papers/eurobsd2012/espie-dpb/index.html https://www.openbsd.org/papers/eurobsdcon2014-parallel-make.pdf
2017-02-06
2h 10
SDCast
В гостях Денис Макрушин, антивирусный эксперт Лаборатории Касперского
У меня в гостях Денис Макрушин, антивирусный эксперт «Лаборатории Касперского». В этом выпуске мы говорим о безопасности в ИТ в целом, о том, какие есть направления в безопасности, что происходит в отрасли, насколько велика роль безопасности в ИТ для бизнеса и прочие вопросы. Обсудили мы и тему безопасности в различных сферах, таких как Internet of Things, облака, веб-приложения, базы данных, вспомнили недавно нашумевшие новости про ботнет из камер видеонаблюдения, и заражение серверов MongoDB. Затронули немаловажный социальный аспект повышения уровня грамотности как разработчиков, так и простых пользователей. Что можно и нужно делать, чтобы программисты с первых дней разработки софта задумывались о вопросах безопастности. Как, когда, на каких стадиях можно и нужно привлекать экспертов по безопасности, как меняется процесс разработки с привлечением экспертов по безопасности и многое другое. Поговорили на тему того, как сделать продукт, удобный для простых пользователей, но при этом достаточно безопасный и защищенный. Ссылки на ресурсы по темам выпуска: Блог Дениса, посвященный практическим аспектам ИБ: http://byinsecure.com/ Коммьюнити, в котором обсуждаются различные новости и исследования индустрии: https://vk.com/byinsecure Материал, посвященный безопасности веб-приложений: https://m.habrahabr.ru/company/simplepay/blog/258499/ Number of Hijacked MongoDB Databases Is Going Up as More Hackers Are Flocking In: https://www.bleepingcomputer.com/news/security/number-of-hijacked-mongodb-databases-is-going-up-as-more-hackers-are-flocking-in/ Large CCTV Botnet Leveraged in DDoS Attacks: https://blog.sucuri.net/2016/06/large-cctv-botnet-leveraged-ddos-attacks.html HackRF: Первое знакомство: https://xakep.ru/2013/10/24/hack-rf/
2017-01-24
1h 02
SDCast
В гостях Иван Гуз, директор аналитического департамента в Avito
На этот раз речь пойдет об аналитике, анализе больших данных, машинном обучении и прочих смежных темах. У меня в гостях Иван Гуз, директор аналитического департамента в АВИТО. По традиции, в начале Иван рассказал немного про себя, о том, как и почему он ушел из большого enterprise мира в, тогда еще, стартап под названием «АВИТО» и что представляет Авито из себя сейчас. Рассказал про разные аналитические задачи, которые он и его команда решают, среди которых, например, анализ поведения пользователя на сайте, распознавание дубликатов товаров, дифференциация реальных пользователей и ботов и многие другие. Не обошли мы стороной и техническую составляющую: Иван рассказал про то, какие инструменты, языки программирования, тулкиты и фреймворки они используют для решения своих задач. Ссылки на ресурсы по темам выпуска: scikit-learn. Machine Learning in Python: http://scikit-learn.org pandas. Python Data Analysis Library: http://pandas.pydata.org/ XGBoost. Optimized distributed gradient boosting library: https://github.com/dmlc/xgboost TensorFlow is an Open Source Software Library for Machine Intelligence: https://www.tensorflow.org/ ImageNet is an image database organized according to the WordNet hierarchy: http://image-net.org/ Прошедшие конкурсы по машинному обучению от Авито на Kaggle: https://www.kaggle.com/competitions?sortBy=deadline&group=all&page=1&segment=allCategories&search=avito
2016-11-30
1h 01
SDCast
В гостях Александр Махомет, PHP Product Architect в компании Upwork
Встречайте 49-й выпуск подкаста! На этот раз речь пойдет про распределенные команды разработки. У меня в гостях Александр Махомет, PHP Product Architect в компании Upwork и один из создателей проекта Frameworks days. В компании Upwork работает порядка 350 инженеров и разработчиков, 270 из которых работают удаленно из 40 стран со всего мира. Александр рассказал как в компании в целом устроены процессы разработки, как формируются распределенные команды, на каких принципах построено взаимодействие между разработчиками и командами в целом. Ссылки на ресурсы по темам выпуска: Статья в блоге upwork “Introducing Upwork Engineering”: https://www.upwork.com/blog/2016/07/introducing-upwork-engineering/ Сайт проекта Frameworks days: http://frameworksdays.com/ PHP Friends Club: http://phpfriends.club/ Open Source проекты Upwork на github: https://github.com/odesk Доклады об архитектуре Upwork: Александр Махомет "Beyond the code или как мониторить ваш PHP сайт: https://www.youtube.com/watch?v=zcXJU2ZFbnA Александр Махомет "Feature Flags. Уменьшаем риски при выпуске изменений": https://www.youtube.com/watch?v=kdB-9zFqKvI Sep Nasiri "Upwork PHP Architecture": https://www.youtube.com/watch?v=RBAr2V5Exp8 Видео докладов с PHP Frameworks Day '16: https://www.youtube.com/playlist?list=PLPcgQFk9n9y96_Mip0OO4waEwXiKevN1X
2016-10-04
59 min
SDCast
В гостях Михаил Тюрин, главный системный архитектор AVITO.ru
У меня в гостях Михаил Тюрин, главный системный архитектор AVITO.ru. В этом выпуске речь идет об архитектуре AVITO в целом, как оно работает изнутри и на каких технологиях базируется. Миша работает в AVITO с основания, поэтому кому, как не ему знать как там все устроено. Мы не углублялись далеко в технические подробности, но обсуждали архитектуру системы в целом, затрагивая различные ключевые вопросы и компоненты. Миша рассказал про стек используемых технологий, как с точки зрения разработки, так и про используемые сервисы, серверы приложений, баз данных и т. д. Мы довольно подробно разобрали, как система обрабатывает запрос, начиная от нажатия кнопки «Submit» в браузере, что происходит с данными запроса в бэкенде, какие сервисы участвуют в обработке, в какие очереди раскладываются задачи и заканчивая тем, каким образом обновляются данные во всей системе для других пользователей. Слайды доклада Михаила Тюрина с Highload++ 2015 “Где живут Ваши объявления”: http://www.slideshare.net/profyclub_ru/2-avito Слайды доклада Константина Евтеева с PgConf.Russia 2016 “Поток данных в Авито”: https://pgconf.ru/2016/89825 Слайды доклада Сергея Бурладяна с PgConf.Russia 2016 “Администрирование PostgreSQL в Avito”: https://pgconf.ru/2016/89927 Доклад Сергея Бурладяна с Highload++ 2015 “Реализация восстановления после аварий”: http://www.highload.ru/2015/abstracts/1880.html Видео со встреч сообщества #PostgreSQLRussia в AVITO: https://www.youtube.com/watch?v=2LDAcGZRAEM https://www.youtube.com/watch?v=ztXI4C0p6Ro
2016-09-26
1h 47
SDCast
В гостях Сергей Бронников и Владимир Порохов, ребята из команды OpenVZ/Virtuozzo
У меня в гостях Сергей Бронников и Владимир Порохов, ребята из команды OpenVZ/Virtuozzo. В начале мы немного обсудили общие вопросы по виртуализации, какие типы виртуализации бывают, как все зарождалось и появлялось. Обсудили, что происходит в сфере виртуализации сейчас, как появление таких проектов как docker повлияло в целом на индустрию и на другие решения в этой области в частности. Так же ребята подробнее рассказали про проект OpenVZ от истории его появления и развития до архитектуры и внутреннего устройства. А в свете выхода новой, 7-й версии проекта, поделились тем, что появилось нового и интересного. Не обошли мы стороной и тему open source. Проект OpenVZ является открытым, а проект Virtuozzo — коммерческим. Ребята рассказали, как ведется параллельная разработка обоих проектов, какая часть кодовой базы является общей, а что специфично для каждого проекта. Так же Сергей рассказал о том, какие ошибки были допущены в open source составляющей проекта, и как они были исправлены. История проекта OpenVZ: https://openvz.org/History Документация OpenVZ: https://docs.openvz.org/ Сравнение OpenVZ с другими виртуализационными решениями: https://openvz.org/Comparison
2016-08-02
1h 30
SDCast
В гостях Дима Стародубцев, основатель киберфонда, блокчейн евангелист
У меня в гостях Дмитрий Стародубцев, основатель киберфонда и блокчейн евангелист. В этом выпуске мы с Димой говорим о том, как появилась эта технология, о её первой реализации «BitCoin», какие были, в первую очередь, экономические условия для того, чтобы цифровая валюта смогла войти в нашу жизнь и занять там свое место. Дима рассказал про то, как устроена цепочка блоков, и какая информация в них может храниться. Рассказал и про умные контракты, что это такое и каков принцип их работы, какие условия и вообще среда необходима для их функционирования. Не обошли мы стороной и вопросы безопасности. Так же мы обсудили новые проекты, которые появились в последнее время, и которые так же базируются на технологии blockchain. Самый известный из таких — это проект Виталия Бутерина «Эфириум» (**Ethereum (https://www.ethereum.org/))**, который представляет из себя платформу для построения приложений. Вообще в процессе разговора Дима приводил очень много различных примеров проектов, использующих технологию блокчейн, это и социальные сети, и реестр собственности на землю, ставки на спорт и всевозможные проекты по работе с цифровым контентом и распределенные вычисления и многое другое. Блог Дмитрия на Steem'е: https://steemit.com/@hipster bitcoin. Peer-to-Peer Electronic Cash System: https://bitcoin.org/ Ethereum Project. Smart Contract and Decentralized Application Platform: https://www.ethereum.org/ cyber.Fund. Where the World Discovers Blockchain Systems: https://cyber.fund/ Factom. Платформа для хранения информации и фактов: http://factom.org/ Steem. Blockchain-based Social Media Platform where anyone can earn rewards: https://steem.io/ Storj. Blockchain-based, end-to-end encrypted, distributed object storage, where only you have access to your data: https://storj.io/ Emercoin. Blockchain Services: SSL, DNS, PKI and more: http://emercoin.com/ The 21 bitcoin computer: https://21.co/buy/ Augur. Combines the magic of prediction markets with the power of a decentralized network to create a stunningly accurate forecasting tool: https://www.augur.net/ IOTA is a revolutionary new transactional settlement and data transfer layer for the Internet of Things: https://iotatoken.com/ IPFS is the Distributed Web. A peer-to-peer hypermedia protocol to make the web faster, safer, and more open: https://ipfs.io/ Crypto property evaluation paper: https://www.academia.edu/22691395/cyber_Rating_Crypto_Property_Evaluation BigchainDB. The scalable blockchain database: https://www.bigchaindb.com/ Graphene. Blockchain Platform: http://docs.bitshares.org/index.html
2016-07-25
1h 39
SDCast
В гостях Виктор Тарнавский, руководитель разработки аналитических продуктов в Яндексе
А вот знаете ли вы, дорогие слушатели, как выстроить архитектуру, которая будет выдерживать десятки миллиардов запросов в день, ворочить петабайты данных, и при это быть быстрой и отзывчивой? Ответы на эти и не только вопросы вы можете услышать в свежем выпуске SDCast'а! У меня в гостях Виктор Тарнавский, руководитель разработки аналитических продуктов в Яндексе. В этом выпуске Виктор подробно рассказывает про архитектуру и внутреннее устройство Яндекс.Метрики, о том, из каких программных компонентов она состоит, как происходит обработка поступающих событий, как они обрабатываются и складываются в базу данных ClickHouse, каким способом достигается масштабируемость и отказоустойчивость всей системы. Отдельно ведем разговор про аналитическую базу данных ClickHouse, которую компания Яндекс недавно выложила в opensource. Виктор рассказал про историю зарождения проекта, который появился в следствие эксперимента и попытки написать БД, которая будет быстро работать с сырыми, не агрегированными данными. Рассказал про внутреннюю архитектуру проекта: как устроено хранение данных, обработка запросов и взаимодействие с внешним миром. Не обошли мы стороной и тему публикации проекта в открытый доступ. Виктор рассказал о том, есть ли интерес у сообщества к проекту, чего ещё нужно сделать, чтобы проектом было легко и удобно начать пользоваться, есть ли запросы на новые фичи и пулл-реквесты. Так же Виктор поделился мнением о том, когда следует использовать ClickHouse и для какого рода задач она подходит наилучшим образом. В завершении выпуска обсудили планы по развитию проекта на ближайшее будущее. Сайт проекта ClickHouse: https://clickhouse.yandex/ GitHub репозиторий ClickHouse: https://github.com/yandex/ClickHouse ClickHouse Quick Start: https://clickhouse.yandex/tutorial.html Статья “Зачем мы написали ClickHouse”: https://habrahabr.ru/company/yandex/blog/273305/ Статья про ClickHouse и OpenSource: https://habrahabr.ru/company/yandex/blog/303282/
2016-07-12
1h 25
SDCast
В гостях Евгений Лазин, программмист, автор проекта akumuli
У меня в гостях Евгений Лазин, программмист, автор проекта Akumuli. Основной темой этого выпуска являются БД для хранения временных рядов (Time-series DB, TSDB). В начале мы обсудили общие вопросы, такие как: зачем нужны tsdb, чем они отличаются от привычных всем реляционных баз данных, какие у них особенности и основные области применения. Базы данных типа TSDB широко применяются в мониторинге для хранения разного рода метрик, привязанных ко времени. Поэтому мы пообщались так же на тему мониторинга: что такое мониторинг, что является единицей мониторинга, зачем нужна связь со временем, какие есть инструменты мониторинга, зачем нужен time series db, и чем не подходят привычные способы хранения данных. Евгений, как автор Akumuli, рассказал про свой проект, как он зарождался, какова его архитектура и внутреннее устройство. Отдельно рассказал про способ хранения данных на дисках, какие есть особенности работы с HDD и SSD и с чем пришлось столкнуться во время разработки. Очень интересно было послушать про разные алгоритмы, используемые для решения разного рода задач в проекте, таких как сжатие данных, быстрый поиск и индексация и многое другое. Akumuli. Time-series database: https://github.com/akumuli/Akumuli Run-length encoding (RLE): https://en.wikipedia.org/wiki/Run-length_encoding Delta encoding: https://en.wikipedia.org/wiki/Delta_encoding LEB128 or Little Endian Base 128: https://en.wikipedia.org/wiki/LEB128 Finding Frequent Items in Data Streams: http://dmac.rutgers.edu/Workshops/WGUnifyingTheory/Slides/cormode.pdf Gorilla: A fast, scalable, in-memory time series database: https://blog.acolyer.org/2016/05/03/gorilla-a-fast-scalable-in-memory-time-series-database/ rrd-tools: http://oss.oetiker.ch/rrdtool/ influxdb: https://influxdata.com
2016-06-03
1h 05
SDCast
В гостях Николай Сивко, сооснователь проекта OKMeter.io
На этот раз речь пойдет о devops, эксплуатации и мониторинге. У меня в гостях Николай Сивко, сооснователь проекта OKMeter.io. В этом выпуске мы говорим про мониторинг в целом, каким он бывает, когда стоит задумываться о мониторинге своих сервисов, как внедрять мониторинг в уже работающие решения. Обсудили какие метрики надо собирать, какие есть способы сбора метрик в принципе и какие есть уже готовые инструменты для этого. Николай рассказал о том, как устроен сам сервис OKMeter.io, какова его архитектура, из каких компонентов он состоит и какие инструменты используются «под капотом». Рассказал, как и какие метрики собираются, обрабатываются, хранятся и в дальнейшем используются для построения графиков и гистограм. Отдельно обсудили тему отказоустойчивости и масштабирования решения по мониторингу. Ссылки на ресурсы по темам выпуска: Сервис OKMeter.io: https://okmeter.io statsd. Daemon for easy but powerful stats aggregation: https://github.com/etsy/statsd Доклад Николая «Детальный мониторинг PostgreSQL с помощью OKmeter.io» со встречи #PostgreSQLRussia: видео: https://www.youtube.com/watch?v=syFnwghfR98&feature=youtu.be слайды: http://www.slideshare.net/NikolaySivko/postgresql-monitoring-by-okmeterio
2016-05-20
1h 02
SDCast
В гостях Антон Шевчук, техлид в компании Nix Solutions
Встречайте 42-й выпуск подкаста с ответом на главный вопрос! :) У меня в гостях Антон Шевчук, техлид в компании Nix Solutions, open-source контрибьютор и автор книги «jQuery для начинающих». В этом выпуске мы говорим о разных аспектах разработки программного обеспечения, затрагивая следующие темы: отличие open-source проектов от коммерческих, стоит ли выкладывать свои решения в open-source, переквалификация инженеров внутри команды с одних технологий на другие, фронтенд и бэкенд взаимодействие и многие другие. Антон рассказал, как некоторые члены его команды успешно перепрофилировались из php-разработчиков в JavaScript и node.js разработчиков. Обсудили мы и разный уровень экосистем в php и node.js, насколько отличаются подходы как к разработке, так и к выбору инструментов в этих платформах. Антон, как автор php-фреймворка bluz, рассказал о истории появления проекта, подходе и сфере применения. Отдельно обсудили образовательную тему в IT. Антон рассказал про свою серию образовательных заметок «PHP для начинающих». Зачем он её начал, какие цели преследует, что это дает ему как автору и какая польза для начинающих разработчиков. Так же Антон является автором очень популярной серии заметок «jQuery для начинающих», которые в итоге превратились в полноценную книгу, которая доступна как в электронном, так и печатном виде. Ссылки на ресурсы по темам выпуска: Блог Антона: http://anton.shevchuk.name/ Учебник “jQuery для начинающих”: http://anton.shevchuk.name/jquery-book/ Bluz, a lightweight PHP Framework: https://github.com/bluzphp/framework Constructor. Фреймворк для построения тем для WordPress: https://wordpress.org/themes/constructor/ PHP библиотека к API Яндекса: https://github.com/nixsolutions/yandex-php-library
2016-04-15
1h 18
SDCast
В гостях Андрей Бреслав, руководитель проекта Kotlin в компании JetBrains
Этот эпизод посвящен языку Kotlin, у меня в гостях Андрей Бреслав, руководитель проекта Kotlin в компании JetBrains. В начале выпуска мы поговорили о том, зачем вообще нужен еще один язык, Андрей рассказал про историю и предпосылки появления Kotlin, как все начиналось и развивалось. Обсудили так же общие теоретические аспекты разработки языков программирования: чем разработка языка отличается от разработки каких-либо других программных продуктов, какие компоненты являются основой для построения языка, на какие аспекты следует обращать особое внимание и как правильно заложить архитектуру. Ссылки на ресурсы по темам выпуска: Основной сайт проекта kotlinlang.org — https://kotlinlang.org/ Репозиторий на github — https://github.com/JetBrains/kotlin Пост в блоге проекта о релизе 1.0 — http://blog.jetbrains.com/kotlin/2016/02/kotlin-1-0-released-pragmatic-language-for-jvm-and-android/
2016-03-11
43 min
SDCast
В гостях Анатоль Бельский, core-developer, релиз-менеджер PHP 7
В этом выпуске у меня в гостях Анатоль Бельский, core-developer, релиз-менеджер PHP 7. В этом выпуске мы, конечно же, говорим про сам язык PHP, экосистему вокруг языка, разработку проекта и сообщество, сформировавшееся вокруг PHP. Ссылки на ресурсы по темам выпуска: Anatol Belski @ GitHub — https://github.com/weltling libpurple PHP binding — https://github.com/weltling/phurple Linux libs, ported to Windows (winlibs) — https://github.com/winlibs Текущие RFC для PHP — https://wiki.php.net/rfc RFC про процесс выпуска релизов PHP — https://wiki.php.net/rfc/releaseprocess RFC про голосование за новые фичи PHP — https://wiki.php.net/rfc/voting Upgrading PHP extensions from PHP5 to NG — https://wiki.php.net/phpng-upgrading
2016-03-04
49 min
SDCast
В гостях Александр Морозов, программист в компании «Docker»
На этот раз у меня в гостях Александр @LK4D4math Морозов, программист, core-developer в компании “Docker”. В этом выпуске мы ведем речь и о языке Go, и о проекте docker.
2016-02-24
53 min
SDCast
В гостях Александр Золотарев, инженер, один из основателей проекта maps.me
У меня в гостях Александр Золотарев, инженер, один из основателей проекта maps.me. В этом выпуске мы говорим о самом проекте maps.me, open-source, архитектуре приложений и прочих айтишных темах. Maps.me — это offline-карты для любых мобильных устройств с открытым исходным кодом.
2016-02-16
53 min
SDCast
В гостях Евгений Кривошеев, инженер, спикер, agile тренер
Рад представить вам 37-й выпуск SDCast’а! У меня в гостях Евгений Кривошеев, инженер, спикер на многих конференциях, agile-тренер и консультант. В этом выпуске речь идет не о каком-то конкретном продукте или проекте, а в большей степени затрагивает концептуальные и методологические аспекты разработки и проектирования информационных систем в целом.
2016-02-03
1h 10
SDCast
В гостях Дмитрий Павлов, администратор хранилищ данных банка Тинькофф
Рад представить вам первый выпуск 2016 года, за номером 36. У меня в гостях Дмитрий Павлов, администратор хранилищ данных банка Тинькофф. В этом выпуске речь идет про хранилища данных, чем они отличаются от просто баз данных, какими отличительными возможностями они обладают, для какой нагрузки они предназначены по сравнению с RDBMS.
2016-01-21
00 min
SDCast
В гостях Дмитрий Запорожец, один из авторов и CTO GitLab
Рад представить вам под Новый год 35-й выпуск SDCast’а! У меня в гостях Дмитрий Запорожец, один из авторов проекта GitLab, а так же CTO одноименной компании. В этом выпуске мы, конечно же, говорим про GitLab. В начале Дмитрий рассказал историю зарождения проекта, когда и как все начиналось, и как проект, написанный за несколько вечеров добился такой популярности, превратившись в целую компанию.
2015-12-29
00 min
SDCast
В гостях Максим Рыжиков, разработчик YouTrack в JetBrains.
Встречайте 34-й выпуск SDCast’а! У меня в гостях Максим Рыжиков, разработчик трекера задач YouTrack в компании JetBrains. YouTrack в отличие от других, возможно, более известных продуктов компании, имеет веб-интерфейс, и Максим занимается разработкой этого самого интерфейса, поэтому в выпуске в основном речь идет о веб-разработке, хотя так же затрагивает и смежные темы.
2015-12-16
00 min
SDCast
В гостях Николай Самохвалов, сооснователь сообщества PostgreSQL в России.
Рад представить вам 33-й выпуск SDCast’а. В этот раз у меня в гостях Николай Самохвалов, сооснователь и активист сообщества PostgreSQL в России. В этом выпуске мы обсуждаем базы данных в целом, говорим про RDBMS и noSQL решения, архитектуру построения приложений с использованием баз данных, обсуждаем разные технические возможности взаимодействия и использования баз данных.
2015-12-02
00 min
SDCast
В гостях Всеволод Поляков, devops-инженер в компании Grammarly
Рад представить вам 32-й выпуск SDCast’а! У меня в гостях Всеволод Поляков, devops-инженер в компании Grammarly. В этом выпуске мы говорим на тему devops, администрирования систем, инфраструктуру, разработку, да и вообще разные аспекты жизненного цикла ПО.
2015-11-10
00 min
SDCast
В гостях эксперт по стратегическим технологиям Microsoft Константин Кичинский
Друзья, встречайте 31-й выпуск SDCast'а. На этот раз у меня в гостях Константин Кичинский, эксперт по стратегическим технологиям и технический евангелист Microsoft. В этом выпуске мы говорим о вебе как платформе, разных технологических аспектах, таких как стандарты W3C, инструменты и непосредственно сами технологии. Вспоминаем, как развивался веб и браузеры, как эволюционировал процесс разработки сайтов от статических html страниц и до сложных SPA-приложений.
2015-10-27
00 min
SDCast
В гостях координатор проекта K-Meleon в рунете Родион Водейко
Друзья, встречайте 30-й выпуск SDcast’а! У меня в гостях Родион Водейко, координатор проекта K-Meleon в рунете. Для справки: K-Meleon — это такой уникальный персональный браузер для Windows на основе Gecko и интеграцией в нативный пользовательский интерфейс с собственным макроязыком. Самый линуксовый open-source проект под Windows, как шутят сами участники проекта. В этом выпуске вы услышите историю проекта от рождения и до сегодняшних дней. Кстати, в истории проекта есть несколько интересных фактов! ;) Так же Родион рассказал о устройстве проекта, о том, какие особенности есть у браузера и в чем его уникальность по сравнению с монстрами браузерного рынка. Мы обсудили сообщество вокруг проекта и возможные области применения.
2015-10-07
00 min
SDCast
В гостях автор системы мониторинга Zabbix Алексей Владышев
Товарищи! Рад представить вашему вниманию новый выпуск SDCast’а. У меня в гостях Алексей Владышев, автор системы мониторинга Zabbix. В этом выпуске мы пообщались о системе Zabbix, а так же смежных темах. Алексей рассказал историю появления Zabbix, как и когда все начиналось, а так же как развивался проект до сегодняшних дней. Отдельно и довольно подробно обсудили архитектуру и внутреннее устройство системы мониторинга, от основных компонентов и программных модулей, используемых технологий и языков до поддерживаемых баз данных, интерфейсов и API. Затронули так же темы масштабируемости и отказоустойчивости.
2015-08-10
00 min
SDCast
В гостях Юрий Ковеленов, основатель и руководитель разработки проекта Blend4Web
У меня в гостях Юрий Ковеленов, основатель и руководитель разработки проекта Blend4Web — открытой платформы для создания трехмерных веб-приложений. В этом выпуске мы, в основном, ведем речь о проекте Blend4Web: Юра рассказывает про историю и предпосылки появления проекта, освещает основные идеи и функциональные возможности, рассказывает про архитектуру и используемые технологии. Рассказывает про интеграцию Blender и Blend4Web, как это упрощает жизнь дизайнерам и программистам.
2015-07-14
00 min
SDCast
В гостях Анатолий Панов, ведущий разработчик биллинга в Badoo
На этот раз у меня в гостях Анатолий Панов, ведущий разработчик и руководитель технической составляющей биллинга в компании «Badoo». В этом выпуске мы ведем речь о системах биллинга в целом, в чем их отличие от других типов приложений, из каких функциональных частей они состоят. Обсуждаем, какое значение в биллинге имеют безопасность, скорость, отказоустойчивость.
2015-07-08
00 min
SDCast
В гостях Дмитрий Барановский, разработчик, автор Raphael.js
К вашему вниманию 26-й выпуск SDCast’а. У меня в гостях Дмитрий Барановский, автор популярной библиотеки для работы с векторной графикой в браузере, Raphael. Впрочем, это не единственный его проект, Дмитрий так же является автором и основным разработчиком современной библиотеки для работы с SVG под названием Snap.svg. В этом выпуске мы говорим про веб в целом и JavaScript в частности. Дима рассказывает про Raphael: как появилась идея, на какие инструменты он смотрел при разработке, как выложил проект в opensource и многое другое. Мы обсудили историю развития векторной графики в браузерах и текущее положение дел.
2015-06-30
00 min
SDCast
В гостях Сергей Азаров, разработчик игр.
Все что вы хотели узнать про gamedev, но боялись спросить, а так же многое другое! У меня в гостях Сергей Азаров, человек-оркестр в отделе разработки мобильных продуктов компании «Новый Диск». В этом выпуске мы говорим про игровую индустрию в целом, вспоминаем прошлые и настоящие шедевры, игровые жанры, говорим о том, как поменялась сама индустрия и технологии производства игр. Довольно подробно обсуждаем современные игровые движки, а именно Unity 3D и Unreal Engine.
2015-06-22
00 min
SDCast
В гостях Евгений Рыжков, разработчик PVS-Studio.
Друзья! После долгого перерыва, я снова в строю! Встречайте новый выпуск SDCast’а. У меня в гостях Евгений Рыжков, генеральный директор «СиПроВер», компании, которая делает статический анализатор C/C++ кода «PVS-Studio». В этом выпуске мы говорим непосредственно о языках C/C++ и новых стандартах, обсуждаем то, какие есть классы проблем при разработке, какие есть инструменты для выявления и устранения этих самых трудностей. Евгений подробно рассказывает про статический анализ кода, типы проверок, наиболее частые ошибки, которые допускают как молодые, так и опытные разработчики, попутно вспоминая разные случаи из жизни. Так же Женя рассказывает про то, как они анализируют исходные коды различных открытых проектов и какие типичные ошибки они там встречают, приводит примеры качественных и не очень opensource-проектов.
2015-06-01
00 min
SDCast
В гостях Евгений Любимкин, разработчик Debian.
Любите ли вы linux так же, как любим его мы? Впрочем, даже если и нет, вам все равно может быть интересно послушать этот выпуск. У меня в гостях Евгений Любимкин, разработчик Debian с 2008 года, автор и мейнтейнер нескольких пакетов (cupt, htop, fbreader, ncdu, bindfs). В этом выпуске мы обсудили многие грани проекта Debian, среди которых и процесс разработки и сообщество и текущее состояние проекта и многое другое.
2015-03-30
00 min