Всемирный Хакатон в Челябинске

Впервые мы организуем такое мероприятие в нашем городе. 24-25 ноября пройдет всемирный Хакатон в г. Челябинске. Всемирный, потому что такое же событие произойдет по всему миру!

Хакатон - это 2 дня и 1 ночь кодирования, общение с экспертами по разработке, консультации по дизайну и юзабилити, специальные призы от Майкрософт и компании ByndyuSoft! И конечно, захватывающая атмосфера международного фестиваля разработки для Windows 8! Победители cмогут выиграть телефон Nokia Lumia, девайсы, футболки и получат шанс продвижения своего приложения на международном уровне! Приходи и научись создавать Windows 8 приложения!

5-я конференция .NET разработчиков

Открыта регистрация на 5-ю конференцию .NET разработчиков.

Дата проведения — 21 октября 2012

Место проведения: г. Челябинск, Смолинопарк, Конференц-зал X.O.

Вход бесплатный после регистрации.

Регистрация на сайте http://www.dotnetconf.ru/Registration

Экстремальное программирование: Pair Programming

Парное программирование является одной из практик XP. Эта практика воплощает экстремальную (преувеличенную) идею Code Review. Если ревью позволяет улучшить качество кода, то давайте делать его постоянно, во время рефакторинга и написания нового кода.

Открыты исходники Инфраструктуры

Недавно была выложена в открытый доступ инфраструктура для быстрого старта и модульной структуры приложений на .NET Framework 4.0. Исходный код может скачать и доработать любой желающий, каких-либо ограничений или лицензий нет.

AgileCamp 2012 в Нижнем Новгороде: Инженерный трек

Tрек для разработчиков - это два дня технических мастер-классов, на которых, под чутким руководством тренеров, вы освоите и научитесь применять все основные практики работы с кодом, такие как модульное тестирование, непрерывная интеграция, рефакторинг, ревью кода, шаблоны проектирования и, конечно же, парное программирование.

Говоря по правде, AgileCamp - это даже не конференция, а цельный глобальный тренинг. За два дня вы получите набор самых современных практических навыков для ежедневного использования в своих проектах и перехода на совершенно новый уровень.

http://nsk11.camp.agiledays.ru

Тестирование: Ручное или Автоматизированное?

Хочу поделиться опытом по организации процесса тестирования, который охватывает 3 года моей работы и создание нескольких крупных систем. Описание будет затрагивать только автоматизацию «ручного» тестирования без пересечения с другими аспектами разработки ПО.

Я думаю стоит сразу упомянуть, что на всех этапах мы использовали:

  • Модульные тесты с покрытием около 50%
  • Continuous Integration с запуском модульных тестов (в последствии и интеграционных), автоматической сборкой и выпуском релиза
  • Пересечение из гибких методологий под общим названием ScrumbanXP

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

DotNetConf - самая практичная конференция

4-я .NETconf прошла 28 апреля 2012 и первый раз была в онлайн формате. Это позволило принять участие разработчикам, которые не могли прилететь на 3 предыдущие встречи. За время трансляции 7-ми выступлений в конференции приняли активное участие 508 человек.

Ниже выложены 6 докладов и один мастер-класс с видео, слайдами и ссылками на исходный код:

Заменяем QueryFactory на бестелесный IQueryFactory

В статье Проблемный шаблон Repository и судя по комментариям многим не понравилась та часть, где объекты *Query скрываются за IQueryFactory. С первого взгляда кажется, что QueryFactory превращается в очередной god-object.

ViewModel и Domain Model: Границы ответственности

ASP.NET MVC завоевывает всё большую популярность среди .NET программистов. Вместе с тем с развитием сообщества и наработкой знаний за счет реализации проектов у разработчиков начали возникать вопросы. Что есть MVC, в чем суть каждой его части? Как избавиться от дублирования в коде контроллеров при реализации одинаковых операций? Как проще сделать валидацию? Где описывать валидацию? Как MVC сочетается с DDD? И многое другое.

Я бы хотел рассмотреть самый главный вопрос, который, как мне кажется, является основой для понимания шаблона проектирования MVC и его реализации в .NET Framework.

Открыта регистрация на онлайн конференцию .NET разработчиков

С сегодняшнего дня открыта регистрация на первую онлайн конференцию .NET разработчиков. Дата проведения — 28 апреля 2012.

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

Новости про онлайн конференцию .NET разработчиков

Подготовка к онлайн конференции .NET разработчиков идет полным ходом. Самые последние новости вы можете узнавать через Facebook, ВКонтакте и Twitter.

Мы определились с точной датой первого дня — 28 апреля 2012. Было решено перенести конференцию на субботу, т.к. не у всех есть возможность принять участие во время работы в будний день.

Какой способ работы с базой данных вы используете?

В недавней статье Domain-Driven Design: Продажа идеи я обращал внимание на удобство работы с ORM и возможность ухода от хранимых процедур в сторону ORM. Мне на почту прислали много писем с вопросами о том, что же сейчас является «трендом» в работе с базой данных.

Domain-Driven Design: Продажа идеи

Несколько месяцев назад я консультировал IT-компанию. Компания разработала проект для завода и хотела сделать из проекта тиражируемый продукт на другие предприятия в этой отрасли. После получения второго заказа они столкнулись со сложностью внесения изменений и настройки проекта. Это не позволяло им легко сделать второе внедрение, не говоря уже про постановку таких внедрений на поток.

4 месяца тренировок в SkillTrek

Сразу после онлайн лекции команда SkillTrek предложила мне принять участие в их необычном начинании и провести полноценный курс для начинающих .NET разработчиков.

Дополнение к LSP

Прежде, чем прочитать дополнение LSP, изучите и попробуйте применить Принцип замещения Лисков (Liskov Substitution Principle).


Недавно у меня состоялся разговор с опытным программистом, который разбирался, как программирование по контракту связано с LSP. В примере статьи я использовал интерфейс IList, создал объект DoubleList и унаследовал DoubleList от IList. Дальше, при каждом использовании DoubleList в проекте будет происходить нарушение LSP. Это можно сразу понять, если обратить внимание на контракт интерфейса IList.

Обучение IT-специалистов в университете

С недавнего времени я преподаю в ЮУрГУ у 4-го курса на кафедре Информатики. Через меня уже прошли 4 группы очников и 4 группы заочников. Я веду дисциплину, которая загадочно называется Технология программирования. У меня появился некоторый опыт работы со студентами, здесь я бы хотел рассказать о нем, услышать мнение других преподавателей по этому поводу.

Первая онлайн конференция .NET разработчиков

28 апреля 2012 пройдет первая онлайн конференция .NET разработчиков. Теперь .NET разработчики из любой точки планеты смогут принять в ней участие.

FluentOpenXml - Foxby

Foxby — это библиотека для работы с Word документами в формате OpenXml. Предназначена для генерации документов по шаблону и внесения изменений в существующие документы. С помощью неё вы сможете отказаться от работы с COM+ или редактирования OpenXML-дерева через OpenXML SDK и перейти к механизму построения структуры документа из метаэлементов в декларативном виде.

В классе решаемых задач: создание параграфов, создание и заполнение таблиц, списков, работа с изображениями, форматирование и т.п. Фактически библиотека является оберткой над OpenXML SDK с API в виде Fluent-интерфейса.

Книга «Гибкие методологии разработки» от Бориса Вольфсона

Борис Вольфсон недавно выпустил в релиз бесплатную электронную книгу про Agile. Постарался на благо сообщества, за что ему большое спасибо.

Планы по встречам и конференциям

Проведя 3 конференции .NET разработчиков, мы многое узнали про организацию конференций и получили обратную связь от участников. Сразу после 3-й конференции стало понятно, что формат 4-й встречи будет иным. Ниже описаны идеи, как всё будет проходить этой весной.

Учебный пример по DDD. Пример реализации

7 января 2012 г.

Почти год назад Сергей Соловьев в личной переписке по email спросил у меня, как лучше реализовать сценарий актуальный для него предметной области. Подробности в статье Учебный пример по DDD.

В комментариях шло обсуждение решения, но целый пример прислал только Степан Родионов. Его решение можно посмотреть на GitHub https://github.com/AlexanderByndyu/DDD-example-1

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

Моя книга «Антихрупкость в IT»

Как достигать результатов в IT-проектах в условиях неопределённости. Подробнее...