CodeFreeze — это ежемесячные встречи с экспертами по разработке программного обеспечения в Петербурге и Москве. Мы приглашаем интересных нам людей, которые в неформальной обстановке делятся своим опытом.
Андрей Солнцев,В четверг, 20 декабря, в бизнес-инкубаторе «Ингрия» состоялась встреча CodeFreeze с Андреем Солнцевым. Андрей рассказал о том, что такое WTF-программирование и как с ним бороться.
Существует много книг о том, как писать Хороший, Читаемый и даже Прекрасный код. Нас всех с детства учили, что переменным надо давать понятные имена и код нужно форматировать. Но тем не менее львиная доля кода, произведённого на Земле, весьма далека от хорошего.
Возможно, проблема в том, что люди не умеют учиться на хороших примерах. Люди учатся на ошибках. В течение многих лет Андрей собирал примеры плохого кода, и теперь попробует показать свою коллекцию и сделать какие-то выводы.
EJB, ESB, MQ, BPEL, BPM, Rules Engine и другие умные буквы — чего только не придумают умные люди, чтобы сделать системы слишком сложными, а разработку слишком медленной! Вас ждёт коллекция архитектурных шозанахов с картинками и размышления о том, нельзя ли всё это упростить.
Дмитрий Ленёв,В субботу 17 ноября в петербургском офисе компании состоялась встреча сообщества CodeFreeze с Дмитрием Леневым, экспертом и многолетним разработчиком MySQL Server. Речь шла о внутренней кухне MySQL.
Доклад Дмитрия Ленева рассматривает ряд архитектурных и организационных проблем, которые возникали в процессе разработки MySQL Server, пути, которыми они решались, а также влияние, оказанное выбором того или иного пути решения, на дальнейшее развитие сервера.
В частности, доклад рассматривает, как в MySQL Server добавлялась поддержка транзакций (и к чему это привело) и как в нем решаются задачи совместимости. Обсуждается реализация различных вариантов репликации и новые средства диагностики. Также рассматривается старая и текущая версии цикла разработки MySQL Server.
В качестве бонуса — краткая история развития MySQL Server с точки зрения разработчика. Доклад не требует от слушателя предварительного знакомства с внутренним устройством MySQL Server, однако знакомство с его возможностями и опыт использования — приветствуются.
Илья Кацев,В субботу, 13 октября, в бизнес-инкубарторе «Ингрия» состоялась встреча CodeFreeze с Ильёй Кацевым, ведущим инженером компании Яндекс. Тема встречи — Краулинг современных веб-приложений и проект «Роботестер».
Веб-сайты значительно изменились за последние годы. Если изначально каждый сайт представлял собой статическую страницу, контент которой формировался с помощью одного запроса к серверу, то сейчас сайты (веб-приложения) стали намного более интерактивными, и их содержимое меняется в зависимости от поведения пользователя на странице. Такие приложения (Rich Internet Applications или RIA) отличаются от традиционных использованием таких технологий, как Javascript и AJAX, которые позволяют значительно менять вид и содержимое приложения без изменения адреса в браузере.
Конечно, благодаря этим изменениям сайты стали намного удобнее, однако, появились и новые проблемы. Одной из них является то, что такие приложения трудно краулить (или обходить, от слова crawl). Для обхода традиционного сайта достаточно посетить все его URL’ы, при этом переход от одного URL’а до другого осуществляется по ссылкам. Именно так и действуют поисковые роботы. Однако, такой метод неприменим для RIA. Здесь надо совершать разнообразные действия на "клиентской" стороне, чтобы попасть в новое состояние приложения или получить новый контент.
Если для поисковых роботов эта проблема не является совсем острой (пока еще большая часть ценного контента в сети может быть достигнута переходами по ссылкам), то для целей функционального тестирования краулеры очень нужны прямо сейчас.
В докладе будет рассказано о теоретических задачах, которые необходимо решить для построения такого краулера и об экспериментальном проекте под названием "Роботестер", который разрабатывается в Яндексе.
Ольга Черепанова,
Мария Макарова,
Екатерина Головина,В субботу 15 сентября состоялась встреча CodeFreeze с Екатериной Головиной, Марией Макаровой и Ольгой Черепановой. Обсуждали наболевшее — взаимодействие IT-специалистов с HR-специалистами.
Нужен ли компании HR-менеджер? Способен ли он приносить пользу? Кто это вообще — партнер по бизнесу или блондинка в платье в цветочек? Или, может быть, и то, и другое в одном лице?
Отношения программистов и HR-ов — тот еще холивар. Взаимные претензии, конструктивные и не очень, шрамы от старых обид — практически у каждого участника рынка труда есть в запасе пара страшных историй. Реально ли превратить противостояние в симбиоз? Могут ли суровые технари и чувствительные гуманитарии вместе прийти к светлому будущему?
Татьяна Васильева,Во вторник, 31 июля в конференц-зале бизнес-инкубатора «Ингрия» состоялась встреча сообщества CodeFreeze с Татьяной Васильевой, Product Manager компании , одним из основателей сообщества AgilePiter. Тема встречи — «Что такое Agile».
Гибкие методологии разработки ПО за последние несколько лет стали очень популярны в IT-сообществе. Уже сложно найти человека, работающего в IT-сфере и не знающего ничего об Agile. Все больше и больше команд начинают использовать в работе те или иные практики Scrum, XP, Kanban и т.д. Однако несмотря на такую популярность, а, возможно, именно из-за нее, очень часто встречаются разработчики, тестировщики и менеджеры различных уровней, которые затрудняются для себя сформулировать, чем же является Agile и что такого особенного в гибких процессах. Татьяна исповедует философию Agile с 2005 года и предлагает поговорить о том, что стоит за словом “Agile”.
На встрече будут затронуты следующие темы:
Роман Елизаров,В четверг, 12 июля в в большом конференц-зале бизнес-центра «Воронцов» состоялась встреча сообщества CodeFreeze с Романом Елизаровым, экспертом в области HighLoad и многопоточного программирования, который прочитал доклад «Теория параллельного программирования для практиков».
Доклад Романа Елизарова рассчитан на программистов, которые уже имеют практический опыт написания параллельного кода (прочтение книги “Java Concurrency in Practice” или подобной это большой плюс) и хотели бы узнать теоретические основы, на которых строится практика параллельного программирования. Наверное, почти все из нас проходили в ВУЗе теоретические основы последовательных вычислений (конечные автоматы, регистровые машины, машины Тьюринга и т.п.), а вот аналогичные конструкции для параллельных вычислений, к сожалению, обойдены вниманием в большинстве ВУЗов.
Дмитрий Завалишин,В субботу, 9 июня в бизнес-инкубаторе «Ингрия» состоялась встреча сообщества CodeFreeze с легендой рунета Дмитрием Завалишиным, на которой он рассказал о своём детище — операционной системе нового поколения «Фантом».
Фантом — операционная система нового поколения, разрабатываемая российской компанией Digital Zone. Система базируется на концепции неизбывной (persistent) виртуальной памяти, ориентирована на управляемый (managed) код и нацелена на применение в носимых и встроенных компьютерах. Фантом — одна из немногих ОС, не опирающихся на классические концепции Unix-подобных систем. В отличие от их концепции «Всё есть файл», Фантом базируется на принципе «Всё есть объект». Модель ОС Фантом позволяет и самой системе, и приложениям быть более простыми и, в то же время, более эффективными. Темы, о которых шла речь на встрече:
В четверг, 17 мая состоялась встреча с Александром Орловым. Гуру отечественного IT Александр Орлов рассказал о том, каково влияние социологических факторов на успех проекта, команды и конкретного человека.
Том Демарко в свое время сказал, что проблемы IT-проектов имеют скорее социологические причины, нежели технологические. Мы, люди технические, зачастую недооцениваем этот фактор.
О том, каково влияние социологических факторов на успех проекта, команды и конкретного человека, мы и поговорим в рамках доклада "Практическая социология для инженера". Мы разберем и опробуем ряд инструментов, которые потом можно будет применять как к себе, так и к коллегам.
Присоединяйтесь!