TDD != XP; TDD in XP;
Опять возвращаемся к холиварам. Здесь не будет обсуждаться ценность написания тестов (для любого программиста, который разрабатывал системы больше года и поддерживал legacy code это ясно как божий день). А поговорим вот о чем. Зачем писать тесты до кода, если можно написать после и разницы вроде как бы и нет? TDD вообще очень сильно обросло мифами. Существуют руководители компаний, которые считают TDD мифом, а живых TDD-шников принимают за снежного человека. Есть, однако прогрессивные менеджеры, которые считают что писать в стиле TDD возможно, но надо стукнуться головой об стенку. Но разговор опять будет не об этом, а о плюсах и минусах использования TDD.
XP.Party - это тусовки, во время которых участники прокачивают свои навыки: инженерные, управленческие и бизнесовые. Ключевые слова по темам: Agile, Scrum, eXtreme Programming, Test Driven Development, Lean, Design Thinking, Product Management, Metrics Driven Development, Finance, StartUp, Business Model Canvas, Lean Startup, Lean Canvas, TeamWork, Software Development, Web, Enterprise Software, Mobile, iOS, Android.
среда, 14 сентября 2011 г.
четверг, 9 июня 2011 г.
Анонс XP.Party, посвященной iOS 5 (beta)
6 июня Apple представило миру бета версию iOS 5. Прочитав её описание, я понял, что следующая встреча iOS должна быть посвящена именно iOS 5.
В iOS 5 появляется:
В iOS 5 появляется:
- iCloud - легкое хранение данных в облаке;
- Storyboards - новые концепты для создания интерфейсов, которые заинтересовали не только девелоперов, но и профессиональных дизайнеров интерфейсов;
- ARC - automatic reference counting;
- И много чего ещё...
вторник, 10 мая 2011 г.
Отчёт по Android May Days
Солнечным воскресным днём 8 мая состоялся Второй Всесоюзный Слёт Android разработчиков. Встреча прошла в уютном офисе Меркури. Зрителей пришло немного поменьше, чем в предыдущий раз.
Как и на первой встрече, целиком и полностью рулили и бибикали Саша Шауберт и Рома Григорьев. Они осветили те вопросы, о которых не успели рассказать на первой встрече. Всего было зачитано 4 доклада, в промежутках между которыми все ребята общались в неформальной обстановке за стаканчиком кока-колы. Под конец встречи все участники встряхнули костями и поиграли в Kinect.
1. Саша Шауберт - Native разработка под Android
- Для чего нужно писать нативный код?
- Установка и подготовка NDK
- Структура MAKE файла
- Связь с Java-кодом
- Компиляция и ошибки
- Разбор стектрейсов из нативного кода
2. Рома Григорьев - Fragments & Loaders
Презентация на SlideShare. //TODO
- Постановка проблемы
- Решение №1 - самописный Aspect фреймворк
- Решение №2 - Fragments API
- Android 3.0 и Compatibility Package
- Loaders
3. Саша Шауберт - DI фреймворк RoboGuice
- Коротко о проблеме DI
- DI фреймворк и не только
- Инжекция View
- Инжекция Event
- Передача параметров в конструктор
- Логирование
4. Саша Шауберт - Майская подборка зубодробительных багов
- Утечка объекта Thread
- Утечка всей Activity
- Незакрытые файловые потоки
- Pending Intent
- Неразумное перекрытие метода меню
- Самсунг и скролл «как в айос»
Итоги
Встреча безусловно получилась полезной и интересной. Докладчикам респект и уважуха! Следующую встречу планируем на конец июня - начало июля, чтобы все смогли разделаться с сессиями, конференциями и концертами:)
В этот раз не успели провести практическую часть, хотя Саша подготовил задание и каркас приложения. Практику можно будет провести в следующий раз. Или, как вариант, вместо практики брать реальные боевые небольшие проекты и делать их в рамках XP party.
Есть проблема информационного характера. Сейчас о встречах узнаёт не так много людей, как хотелось бы. Нужно привлекать больше людей на подобные XP party.
Саша и Рома за две встречи уже заработали себе статус super star. Поэтому в следующий раз хотелось бы увидеть новых докладчиков.
четверг, 28 апреля 2011 г.
Hack Day #1
- Место проведения - xp-квартира, находящаяся здесь. Квартира 11. Любые вопросы о том где именно это находится можно задавать по телефону +79277040842.
- Время проведения: 30 апреля, 2011 года в период 11.30-22.00
- Вход: 500 р.
Вот собственно и вся информация. Об остальном не стесняйтесь спрашивать лично.
Всвязи с общей нагруженностью людей hack day перенесен пока на неопределенный срок.
вторник, 26 апреля 2011 г.
Android Party Leaks
Всем привет.
Настали тяжелые в финансовом плане времена, и я вынужден смягчить требования. Заодно поделюсь информацией о грядущем android-событии. Надеюсь, что она всех только обрадует. Есть много приятных новостей. Начнем с того, что теперь у всех занятых участников появилась уникальная возможность внести символическую плату в 500р. (с учетом НДС), дабы не писать приложение. Напоминаю, что все написавшие приложение проходят в первую очередь и без всякой платы. Что еще. Мероприятие состоится в стенах родного для нас с Ромой Меркури, а это сулит нам как минимум работу с реальными девайсами, как максимум воскресный банкет (пожелания касательно меню принимаются в комментариях). И самое главное — формат встречи. Мы закончим предыдущую презентацию, затронем темы из комментариев прошлой пати… Впрочем, зачем много говорить, вот примерный список тем: Fragments API, Native development, OutOfMemoryError (bitmap size exceeds VM budget), Audio Recording, Dev Experience, Roboguice, 15 minutes of Exploding Head Issues. После лекционной части будет кодинг часть, которую постарается провести Владимир Игнатьев. Построим мобильное мультимедийное веселое приложение. После обязательной части — необязательная. Как я уже упоминал, компания предложила организовать фуршет. Еще у нас в Меркури есть kinect. Это я к тому, что самая приятная составляющая подобного рода мероприятий не осталась в тени. Резюмирую:
- Место проведения: Меркури
- Дата: 8 мая (воскресенье)
- Время начала: 12 часов дня.
- Формат: 2-3 часа на лекционную часть, 3 часа на кодинг часть, а финальная часть — банкетная — ограничена лишь временем закрытия офисного здания.
- Вход: по apk или 500 рублевой банкноте.
Требования к участникам:
- 1 ноутбук на двоих человек с установленной средой разработки (Eclipse+ADT/Idea).
- отписаться в комментариях тем, кто будет, кто постарается быть, кто очень хочет быть.
четверг, 21 апреля 2011 г.
Отчет по iOS-party
Итак, прошла первая iOS-минипати посвященная Dependency injection. Перед участниками пати стояла задача написать небольшую программу, внедрить технологию DI и посмотреть, что из этого всего получиться.
В качестве проекта взяли конвертер валют, использующий веб-сервис ЦБ РФ. Весь процесс поделили на 2 итерации. В первой необходимо было создать приложение с заглушкой, результатом работы которой были бы зашитые фейковые данные. Во второй итерации нужно было реализовать получение данных от сервиса. Использование DI предполагалось именно в красивой "подмене" реализаций в противовес суровым "иф-дефам".
Мы разбились на пары и приступили. Каждая команда соперничала с другими, стремилась выполнить задачу круче и быстрее других. Увы, большую часть времени пришлось уделить созданию каркаса приложения, отладке кода, созданию UI и т.д., а не основной теме, поэтому прочувствовать всю силу DI не получилось. Но все же после 3-х часового мозгового штурма парам удалось реализовать рабочие скелеты приложений с инъекциями.
Мы получили неплохие результаты и ответы на следующие вопросы, которые волновали участников:
В качестве проекта взяли конвертер валют, использующий веб-сервис ЦБ РФ. Весь процесс поделили на 2 итерации. В первой необходимо было создать приложение с заглушкой, результатом работы которой были бы зашитые фейковые данные. Во второй итерации нужно было реализовать получение данных от сервиса. Использование DI предполагалось именно в красивой "подмене" реализаций в противовес суровым "иф-дефам".
Мы разбились на пары и приступили. Каждая команда соперничала с другими, стремилась выполнить задачу круче и быстрее других. Увы, большую часть времени пришлось уделить созданию каркаса приложения, отладке кода, созданию UI и т.д., а не основной теме, поэтому прочувствовать всю силу DI не получилось. Но все же после 3-х часового мозгового штурма парам удалось реализовать рабочие скелеты приложений с инъекциями.
Мы получили неплохие результаты и ответы на следующие вопросы, которые волновали участников:
- Нужен ли DI, если есть фабрики?
Довольно тонкий вопрос, как мне показалось, здесь немного выигрывает DI. Код становиться менее связанным. - Зачем использовать библиотеку Objection, когда в языке Objective-C поддерживается нечто подобное?
Библиотека предоставляет большую функциональность и избавляет от написания собственного инжектора, хотя никто не гарантирует отсутствие ошибок в самой библиотеки. - Каковы плюсы DI?
Многократное использование кода, минимальная связанность, высокое абстрагирование, хорошее решение для сборки проектов с различными конфигурациями.
понедельник, 18 апреля 2011 г.
Первые Hack Days
Привет всем. В скором времени планируется проведение первых Hack Days под эгидой XP Party. К сожалению, в силу формата есть и ограничения. Оно в основом одно и основное: команд должно быть в идеале 3, чтобы вы друг другу не мешали и чувствовали себя комфортно. В крайнем случае и с большой неохотой мы возьмем четвертую команду, если вы нас убедите в том, что это действительно необходимо и стоит того, чтобы создавать неудобства другим командам.
Пару слов о формате мероприятия и телодвижениях, которые необходимо совершить, чтобы на него попасть. Формат пати планируется примерно следующий:
- Заинтересованные люди до пати объединяются в команды разработчиков, количество людей в команде не ограниченно, но в идеале в команде должно быть три человека (хотя с тем же успехом он может быть и один). Самое главное - чтобы вам было интересно работать вместе.
- Задача каждой команды придумать/выбрать себе идею для реализации, это также необходимо сделать до пати, поскольку мы будем здорово ограничены по времени.
- В течение дня (hackday будет длится 8-12 часов, в зависимости от того как решат будущие участники в процессе предварительных обсуждений) должен быть реализован прототип идеи, который вы будете продавать "инвесторам". Инвесторы будут жестоки и беспощадны, поэтому вы должны будете сделать нечто удобоваримое. Презентация по проекту с лаконичным и емким докладом будет большим плюсом в пользу команды.
- Никаких ограничений по языку программирования или платформе нету. Используйте то, что подсказывает вам ваша безграничная фантазия. Код, покрытый тестами будет безусловным плюсом.
Всем, кого заинтересовала эта идея прошу отписываться под постом, я буду формировать чат всех желающих в скайпе для обсуждения возможных идей для прототипов.
Наблюдатели приглашаются на пати без каких либо ограничений.
Подписаться на:
Сообщения (Atom)