SDCast

SDCast

By Konstantin BurkalevTechnology
Download on the App Store

SDCast episodes

  • SDCast #53: в гостях Андрей Солнцев и Алексей Виноградов, разработчики 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.
    1 hr 39 min
  • SDCast #52: в гостях Вадим Жуков, разработчик 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
    2 hr 11 min
  • SDCast #51: в гостях Денис Макрушин, антивирусный эксперт Лаборатории Касперского
    У меня в гостях Денис Макрушин, антивирусный эксперт «Лаборатории Касперского». В этом выпуске мы говорим о безопасности в ИТ в целом, о том, какие есть направления в безопасности, что происходит в отрасли, насколько велика роль безопасности в ИТ для бизнеса и прочие вопросы.
    Обсудили мы и тему безопасности в различных сферах, таких как 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/
    1 hr 3 min
  • SDCast #50: в гостях Иван Гуз, директор аналитического департамента в 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
    1 hr 2 min
  • SDCast #49: в гостях Александр Махомет, 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
    1 hr
  • SDCast #48: в гостях Михаил Тюрин, главный системный архитектор 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
    1 hr 48 min
  • SDCast #47: в гостях Сергей Бронников и Владимир Порохов, ребята из команды 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
    1 hr 31 min
  • SDCast #46: в гостях Дима Стародубцев, основатель киберфонда, блокчейн евангелист
    У меня в гостях Дмитрий Стародубцев, основатель киберфонда и блокчейн евангелист.
    В этом выпуске мы с Димой говорим о том, как появилась эта технология, о её первой реализации «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
    1 hr 40 min
  • SDCast #45: в гостях Виктор Тарнавский, руководитель разработки аналитических продуктов в Яндексе
    А вот знаете ли вы, дорогие слушатели, как выстроить архитектуру, которая будет выдерживать десятки миллиардов запросов в день, ворочить петабайты данных, и при это быть быстрой и отзывчивой? Ответы на эти и не только вопросы вы можете услышать в свежем выпуске 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/
    1 hr 26 min
  • SDCast #44: в гостях Евгений Лазин, программмист, автор проекта 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
    1 hr 6 min

About SDCast

From the publisher's feed

Software Development podCast