SDCast

SDCast

By Konstantin BurkalevTechnology
Download on the App Store

SDCast episodes

  • SDCast #73: в гостях Дмитрий Борисов, специалист по 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) а так же ретвитом, постом и просто рассказом друзьям!
    1 hr 18 min
  • SDCast #72: в гостях Ильяс Салихов, директор по технологиям в компании 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) а так же ретвитом, постом и просто рассказом друзьям!
    2 hr 13 min
  • SDCast #71: в гостях Константин Кривленя, ведущий разработчик в 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) а так же ретвитом, постом и просто рассказом друзьям!
    1 hr 43 min
  • SDCast #70: в гостях Вячеслав Ковалевский, подкастер, преподаватель на Хекслете, бэкенд-разработчик
    Когда уже нейронные сети научаться писать программы вместо нас, программистов? Зачем люди заставляют нейронные сети генерить другие нейронные сети? Ответы на эти и другие вопросы вы найдёте в 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) а так же ретвитом, постом и просто рассказом друзьям!
    1 hr 28 min
  • SDCast #69: в гостях Михаил Белопухов, разработчик 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” Marshall Kirk McKusick и др. Вторая глава доступна бесплатно (https://www.freebsd.org/doc/en/books/design-44bsd/index.html).
    Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
    3 hr 10 min
  • SDCast #68 HL edition: разработчики Tarantool
    Товарищи, встречайте 68-й выпуск подкаста! И вновь этот выпуск записан на Highload++ 2017! В этом выпуске мы вместе с Петей из подкастов «Пятиминутка PHP» и «Пятиминутка React» пообщались с разработчиками Tarantool. В гостях Костя Осипов, Кирилл Юхин и Рома Цисык.
    Костя Осипов уже был у меня в гостях в 20-м выпуске. Но с тех пор прошло много времени, проект живёт, развивается, и много что появилось и изменилось!
    Ребята рассказали про текущее положение дел в Tarantool, что нового и интересного появилось в проекте в последнее время, а так же над чем команда трудится сейчас.
    У ребят довольно часто спрашивают: «Почему Lua?» И сейчас они исследуют возможность подключения различных языков, назовём их бэкендами, для написания бизнес-логики внутри сервера. И один из потенциальных вариантов — это LLVM. Ребята рассказали о возможных плюсах и минусах появления такого функционала, поделились своими мыслями по этому поводу.
    Одна из интересных возможностей — это использование привычного всем SQL для написания запросов к данным. Кирилл Юхин занимается именно этой задачей и он поделился своими исследованиями в этой области, рассказал про различные подходы к решению и какой вариант выбрали они сами.
    Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
    48 min
  • SDCast #67 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 в Москве.
    1 hr 9 min
  • SDCast #66 HL edition: Михаил Леонов и Vytis Valentinavičius из Lamoda
    Встречайте 66-й выпуск SDCast'а, который так же записан на Hightload++ 2017. На этот раз мы с Петей из подкастов «Пятиминутка PHP» и «Пятиминутка React» взяли небольшое интервью у ребят из компании «Lamoda». В гостях Михаил Леонов и Vytis Valentinavičius.
    У Витиса был доклад на конференции про логи, как их собирать, хранить и обрабатывать. Об этом мы и поговорили: зачем нужны логи, сколько логов нужно собирать и какими способами и главное, что с ними делать дальше. Ребята немного рассказали про свой способ сбора логов из программных компонентов приложений, а так же про архитектуру обработки и хранения собранных данных.
    Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
    15 min
  • SDCast #65 HL edition: Александр Баталов, директор по развитию в компании Флант
    Друзья, рад представить вам интервью с Александром Баталовым из компании Флант, записанное на прошедшей конференции Highload 2017.
    В этом выпуске мы вместе с Петей из подкастов «Пятиминутка PHP» и «Пятиминутка React» обсуждаем с Александром тему DevOps в целом и Kubernetes в частности. В начале Александр рассказал про компанию в целом, как и когда она появилась и чем занимается.
    Далее мы углубились в вопросы инфрастуктуры, архитектуры приложений, развёртывания и обслуживания больших систем, обсудили процесс деплоя приложений, как это делалось раньше и какие инструменты и технологии применяются сейчас, вспомнили про гипервизоры, контейнеры, оркестрацию приложений, распределение ресурсов.
    Александр рассказал, что такое Kubernetes, зачем он нужен, какие задачи он решает, и как они у себя в компании его активно применяют.
    Понравился выпуск? — Поддержи подкаст на patreon.com/KSDaemon (https://www.patreon.com/KSDaemon) а так же ретвитом, постом и просто рассказом друзьям!
    21 min
  • SDCast #64: Игорь Демьянов и Евгений Гусев, фронтенд менеджер и фронтенд тимлид из компании 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) а так же ретвитом, постом и просто рассказом друзьям!
    1 hr 50 min

About SDCast

From the publisher's feed

Software Development podCast