Архив метки: Open source

SDCast #54: в гостях Олег Анастасьев, ведущий программист Одноклассников

Встречайте 54-й выпуск SDCast’а, который посвящен разработке высоконагруженных систем. У меня в гостях Олег Анастасьев, ведущий программист Одноклассников, спикер на конференциях по Java и Cassandra, эксперт в области распределенных и отказоустойчивых систем.

В этом выпуске мы говорим об архитектуре Одноклассников, какой она была в самом начале, как развивалась, и что представляет из себя в наши дни. Олег рассказал про то, как и где они хранят пользовательские данные, как они выбирали хранилище под свои задачи, какие были требования, кандидаты и что они в итоге выбрали. Так же Олег рассказал про то, как устроен их фронтенд, имеется в виду не JavaScript и клиентский код, а фронтенд сервера, принимающие запросы от пользователей и приложений и обращающиеся за данными в хранилища и разные внутренние сервисы.

В процессе беседы были затронуты темы подходов к архитектуре отказоустойчивых систем, вопросы масштабирования приложений, тестирования и мониторинга, а так же выкатывания обновлений. Поскольку Одноклассники используют различные open source решения, обсудили мы и тему контрибьютинга в различные open source проекты, равно как и выкладывание в open source своих наработок. Отдельно поговорили о кросс дата-центровой архитектуре, распределению данных и коммуникации между дата-центрами. Так же Олег рассказал о том, как у них проводятся теоретические и практические учения по устранению аварий. Читать далее SDCast #54: в гостях Олег Анастасьев, ведущий программист Одноклассников

Скачать (mp3, 56 MB) Скачать (ogg, 39 MB)

SDCast #53: в гостях Андрей Солнцев и Алексей Виноградов, разработчики Selenide

Встречайте 53-й выпуск подкаста! В этот раз речь пойдёт о тестировании. У меня в гостях Андрей Солнцев, автор фреймворка для тестирования Selenide, разработчик из codeborne и Алексей Виноградов, независимый консультант, модератор подкаста Radio-QA.

Андрей рассказал про то, как появился проект Selenide, чего не хватало на тот момент в Selenium и как всё начиналось. Рассказал о том, как он сам превратился из просто разработчика в разработчика-тестировщика :)

Алексей рассказал немного теоретической части о тестировании, видах тестирования, в особенности про автоматизированное тестирование. Вспомнили мы и так называемую пирамиду тестирования, стоимость написания тестов и стоимость их поддержки.

Так же мы обсудили непростые вопросы взаимодействия разработчиков и тестировщиков, их роли в команде, возникающие проблемы и способы их решения.

Ребята рассказали про то, как устроен проект Selenide изнутри: как идёт разработка, как устроено тестирование самого фреймворка для тестирования :), насколько велико сообщество вокруг проекта и другие смежные вопросы. Алексей так же рассказал о ближайших и дальнейших планах по развитию проекта. Читать далее SDCast #53: в гостях Андрей Солнцев и Алексей Виноградов, разработчики Selenide

Скачать (mp3, 68 MB) Скачать (ogg, 51 MB)

SDCast #52: в гостях Вадим Жуков, разработчик OpenBSD, мейнтейнер портов KDE и Qt

Встречайте 52-й выпуск SDCast’а, целиком и полностью посвящённый OpenBSD. У меня в гостях Вадим Жуков, разработчик OpenBSD, мейнтейнер портов KDE и Qt и преподаватель операционных систем по совместительству.

В этом выпуске мы обсудили, кажется, все возможные аспекты проекта OpenBSD. Хотя Вадим не согласен: “По моим ощущениям, мы обсудили далеко не всё, но нельзя объять необъятное”! :) И тем не менее… В начале Вадим рассказал, как он сам попал в проект, чем занимался в начале и как стал мейнтейнером таких тяжелых пакетов как KDE и Qt.

Обсудили то, как устроен проект OpenBSD: насколько велико сообщество разработчиков, какие там есть зоны ответственности, как устроен процесс разработки, тестирования, выпуска релизов, как устроена инфраструктура проекта, насколько велика роль лидера проекта Тео де Раадта и другие смежные вопросы.

Вадим подробно рассказал про устройство пакетов и портов OpenBSD, чем они отличаются от других пакетных систем, как устроен процесс появления нового пакета в дереве портов. Отдельно внимания заслуживает рассказ Вадима о портировании KDE4 в OpenBSD. Так же Вадим рассказал про его небольшие исследования в области автоматической настройки сети, Wi-fi и маршрутизации.

Поговорили мы и о областях применения OpenBSD: для кого этот дистрибутив, чем он может быть интересен разработчикам и пользователям, как начать своё участие в проекте.

Так же Вадим рассказал про хакатоны OpenBSD: зачем они проводятся, какие цели преследуются, как организовываются и кто принимает в них участие. Кстати, ещё Вадим поделился опытом менторства одного подпроекта в рамках участия OpenBSD в Google Summer of Code. Читать далее SDCast #52: в гостях Вадим Жуков, разработчик OpenBSD, мейнтейнер портов KDE и Qt

Скачать (mp3, 90 MB) Скачать (ogg, 63 MB)

SDCast #47: в гостях Сергей Бронников и Владимир Порохов, ребята из команды OpenVZ/Virtuozzo

Open_vz-logo Друзья! Встречайте 47-й выпуск подкаста! На этот раз речь пойдет о виртуализации. У меня в гостях Сергей Бронников и Владимир Порохов, ребята из команды OpenVZ/Virtuozzo. В начале мы немного обсудили общие вопросы по виртуализации, какие типы виртуализации бывают, как все зарождалось и появлялось. Обсудили, что происходит в сфере виртуализации сейчас, как появление таких проектов как docker повлияло в целом на индустрию и на другие решения в этой области в частности.

Так же ребята подробнее рассказали про проект OpenVZ от истории его появления и развития до архитектуры и внутреннего устройства. А в свете выхода новой, 7-й версии проекта, поделились тем, что появилось нового и интересного. Не обошли мы стороной и тему open source. Проект OpenVZ является открытым, а проект Virtuozzo — коммерческим. Ребята рассказали, как ведется параллельная разработка обоих проектов, какая часть кодовой базы является общей, а что специфично для каждого проекта. Так же Сергей рассказал о том, какие ошибки были допущены в open source составляющей проекта, и как они были исправлены. Читать далее SDCast #47: в гостях Сергей Бронников и Владимир Порохов, ребята из команды OpenVZ/Virtuozzo

Скачать (mp3, 41 MB) Скачать (ogg, 43 MB)

SDCast #45: в гостях Виктор Тарнавский, руководитель разработки аналитических продуктов в Яндексе

sd-podcast-logo А вот знаете ли вы, дорогие слушатели, как выстроить архитектуру, которая будет выдерживать десятки миллиардов запросов в день, ворочить петабайты данных, и при это быть быстрой и отзывчивой? Ответы на эти и не только вопросы вы можете услышать в свежем выпуске SDCast’а! У меня в гостях Виктор Тарнавский, руководитель разработки аналитических продуктов в Яндексе.

В этом выпуске Виктор подробно рассказывает про архитектуру и внутреннее устройство Яндекс.Метрики, о том, из каких программных компонентов она состоит, как происходит обработка поступающих событий, как они обрабатываются и складываются в базу данных ClickHouse, каким способом достигается масштабируемость и отказоустойчивость всей системы.

Отдельно ведем разговор про аналитическую базу данных ClickHouse, которую компания Яндекс недавно выложила в opensource. Виктор рассказал про историю зарождения проекта, который появился в следствие эксперимента и попытки написать БД, которая будет быстро работать с сырыми, не агрегированными данными. Рассказал про внутреннюю архитектуру проекта: как устроено хранение данных, обработка запросов и взаимодействие с внешним миром. Не обошли мы стороной и тему публикации проекта в открытый доступ. Виктор рассказал о том, есть ли интерес у сообщества к проекту, чего ещё нужно сделать, чтобы проектом было легко и удобно начать пользоваться, есть ли запросы на новые фичи и пулл-реквесты. Так же Виктор поделился мнением о том, когда следует использовать ClickHouse и для какого рода задач она подходит наилучшим образом. В завершении выпуска обсудили планы по развитию проекта на ближайшее будущее.

Читать далее SDCast #45: в гостях Виктор Тарнавский, руководитель разработки аналитических продуктов в Яндексе

Скачать (mp3, 39 MB) Скачать (ogg, 43 MB)

SDCast #42: в гостях Антон Шевчук, техлид в компании Nix Solutions

sd-podcast-logo Встречайте 42-й выпуск подкаста с ответом на главный вопрос! :) У меня в гостях Антон Шевчук, техлид в компании Nix Solutions, open-source контрибьютор и автор книги «jQuery для начинающих».

В этом выпуске мы говорим о разных аспектах разработки программного обеспечения, затрагивая следующие темы: отличие open-source проектов от коммерческих, стоит ли выкладывать свои решения в open-source, переквалификация инженеров внутри команды с одних технологий на другие, фронтенд и бэкенд взаимодействие и многие другие. Антон рассказал, как некоторые члены его команды успешно перепрофилировались из php-разработчиков в JavaScript и node.js разработчиков. Обсудили мы и разный уровень экосистем в php и node.js, насколько отличаются подходы как к разработке, так и к выбору инструментов в этих платформах.

Антон, как автор php-фреймворка bluz, рассказал о истории появления проекта, подходе и сфере применения. Так же мы обсудили и общие вопросы, связанные с PHP: как развивается сам язык, экосистему платформы и уже устоявшиеся фреймворки и паттерны их использования в проектах. Подисскутировали на тему того, что PHP сейчас в антитренде, но при этом все еще является одним из самых популярных и востребованных языков в разработке.

Отдельно обсудили образовательную тему в IT. Антон рассказал про свою серию образовательных заметок «PHP для начинающих». Зачем он её начал, какие цели преследует, что это дает ему как автору и какая польза для начинающих разработчиков. Так же Антон является автором очень популярной серии заметок «jQuery для начинающих», которые в итоге превратились в полноценную книгу, которая доступна как в электронном, так и печатном виде. Для справки, вот некоторые интересные цифры, касательно книги:

  • на написание книги из материалов доступных на сайте ушло около года и 400 часов времени
  • за всё время было >300 000 просмотров на scribd.com
  • за всё время учебник был скачан более 100 000 раз (все версии)

Читать далее SDCast #42: в гостях Антон Шевчук, техлид в компании Nix Solutions

Скачать (mp3, 36 MB) Скачать (ogg, 40 MB)

SDCast #41: в гостях Андрей Бреслав, руководитель проекта Kotlin в компании JetBrains

sd-podcast-logo Рад представить вам 41-й выпуск подкаста! Этот эпизод посвящен языку Kotlin, у меня в гостях Андрей Бреслав, руководитель проекта Kotlin в компании JetBrains.

В начале выпуска мы поговорили о том, зачем вообще нужен еще один язык, Андрей рассказал про историю и предпосылки появления Kotlin, как все начиналось и развивалось.

Обсудили так же общие теоретические аспекты разработки языков программирования: чем разработка языка отличается от разработки каких-либо других программных продуктов, какие компоненты являются основой для построения языка, на какие аспекты следует обращать особое внимание и как правильно заложить архитектуру.

Так же Андрей рассказал, почему в качестве платформы была выбрана JVM, рассказал некоторые технические подробности реализации проекта. Подробно рассказал про interop с Java, о том, как можно начать использовать Kotlin в уже существующем проекте на Java сейчас, и как они у себя, в компании JetBrains уже начали это делать.

Не обошли мы сторой и социальную составляющую проекта. Код языка Kotlin выложен в open source на github. Андрей рассказал про сообщество, которое сформировалось вокруг проекта, и как они с ним взаимодействуют, обсуждают запросы на новый функционал, баг-репорты и все прочее.

В завершение выпуска, Андрей поделился планами по развитию языка как в ближайшем будущем, так и в долгосрочной перспективе.
Читать далее SDCast #41: в гостях Андрей Бреслав, руководитель проекта Kotlin в компании JetBrains

Скачать (mp3, 20 MB) Скачать (ogg, 22 MB)

SDCast #40: в гостях Анатоль Бельский, core-developer, релиз-менеджер PHP 7

sd-podcast-logo Всем привет! В этом выпуске у меня в гостях Анатоль Бельский, core-developer, релиз-менеджер PHP 7. В этом выпуске мы, конечно же, говорим про сам язык PHP, экосистему вокруг языка, разработку проекта и сообщество, сформировавшееся вокруг PHP.

Анатоль рассказал о том, как он попал в проект, как начинал писать расширения для недостающего функционала, как стал коммитером, а затем и core-разработчиком проекта.

Обсудили мы немного как проект устроен изнутри: как построена разработка, выдвижение и обсуждение новых фич в RFC, как происходит непосредственно работа над релизами и какой вообще жизненный цикл у релизов, как происходит тестирование и подготовка документации. Так же Анатоль немного рассказал про технические аспекты разработки, процесса выпуска релизов и пакетов под разные платформы.

Конечно же, мы пообщались и на тему того, что же принципиально нового появилось в PHP7, даже несмотря на то, что эта тема уже была много раз освещена. Поскольку Анатоль занимается системной частью языка, было интересно узнать его мнение по данному вопросу, а заодно и послушать, что он думает про альтернативные VM для php, вроде HHVM.

В завершени выпуска Анатоль поделился своим видением планов по дальнейшему развитию проекта в ближайшем будущем.

Читать далее SDCast #40: в гостях Анатоль Бельский, core-developer, релиз-менеджер PHP 7

Скачать (mp3, 23 MB) Скачать (ogg, 21 MB)

SDCast #38: в гостях Александр Золотарев, инженер, один из основателей проекта maps.me

sd-podcast-logo Встречайте 38-й выпуск SDCast’а. У меня в гостях Александр Золотарев, инженер, один из основателей проекта maps.me. В этом выпуске мы говорим о самом проекте maps.me, open-source, архитектуре приложений и прочих айтишных темах. Maps.me — это offline-карты для любых мобильных устройств с открытым исходным кодом.

В начале, Александр рассказал, как зарождался проект maps.me, когда, с чего и как все начиналось, как появился первый прототип, какие были трудности и сложности на этом этапе и как они успешно были преодолены.

Обсудили мы и архитектуру проекта, Александр рассказал некоторые технические подробности устройства проекта, поведал о некоторых важных и интересных архитектурных решениях, вспомнил интересные задачки, которые приходилось решать.

Так же Александр рассказал про процесс разработки, установившийся в проекте и некоторые инструменты, используемые в разработке. Рассказал про команду проекта и взаимодействие с сообществом, после публикации проекта в open-source.

В завершении выпуска, Александр рассказал про интересные нововведения в проекте и планы по дальнейшему развитию. Читать далее SDCast #38: в гостях Александр Золотарев, инженер, один из основателей проекта maps.me

Скачать (mp3, 25 MB) Скачать (ogg, 25 MB)

SDCast #35: в гостях Дмитрий Запорожец, один из авторов и CTO GitLab

sd-podcast-logo Товарищи! Рад представить вам под Новый год 35-й выпуск SDCast’а! У меня в гостях Дмитрий Запорожец, один из авторов проекта GitLab, а так же CTO одноименной компании.

В этом выпуске мы, конечно же, говорим про GitLab. В начале Дмитрий рассказал историю зарождения проекта, когда и как все начиналось, и как проект, написанный за несколько вечеров добился такой популярности, превратившись в целую компанию.

Обсудили мы и архитектуру проекта и используемые технологии. Так же Дмитрий рассказал, как в целом построен процесс разработки в проекте, из каких специалистов состоит команда проекта, какие есть роли и зоны ответственности в проекте, какой жизненный цикл у проекта и как формируются релизы.

Пообщались мы и про Open Source: Дмитрий рассказал про сообщество, которое сформировалось вокруг проекта, и о том, насколько много оно помогает проекту в целом, какие берет на себя вопросы.

Еще Дмитрий рассказал про редакции GitLab, чем они отличаются, и как решается, какие возможности куда попадут. Не обошли мы стороной и вопросы интеграции GitLab и смежных внутренних проектов, вроде GitLab CI, и недавнее нововведение — интегарцию с Mattermost.

В завершении подкаста, Дмитрий рассказал про планы по дальнейшему развитию проекта и что нас ждем в скором будущем.
Читать далее SDCast #35: в гостях Дмитрий Запорожец, один из авторов и CTO GitLab

Скачать (mp3, 41 MB) Скачать (ogg, 44 MB)