Вчера, обедая в иль патио, мы общались с Виталием Ружниковым и решили сделать пати для создания аналога игры team game для мобильных устройств и десктопа.
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.
пятница, 21 октября 2011 г.
среда, 14 сентября 2011 г.
Why test first?
TDD != XP; TDD in XP;
Опять возвращаемся к холиварам. Здесь не будет обсуждаться ценность написания тестов (для любого программиста, который разрабатывал системы больше года и поддерживал legacy code это ясно как божий день). А поговорим вот о чем. Зачем писать тесты до кода, если можно написать после и разницы вроде как бы и нет? TDD вообще очень сильно обросло мифами. Существуют руководители компаний, которые считают TDD мифом, а живых TDD-шников принимают за снежного человека. Есть, однако прогрессивные менеджеры, которые считают что писать в стиле TDD возможно, но надо стукнуться головой об стенку. Но разговор опять будет не об этом, а о плюсах и минусах использования TDD.
Опять возвращаемся к холиварам. Здесь не будет обсуждаться ценность написания тестов (для любого программиста, который разрабатывал системы больше года и поддерживал legacy code это ясно как божий день). А поговорим вот о чем. Зачем писать тесты до кода, если можно написать после и разницы вроде как бы и нет? TDD вообще очень сильно обросло мифами. Существуют руководители компаний, которые считают TDD мифом, а живых TDD-шников принимают за снежного человека. Есть, однако прогрессивные менеджеры, которые считают что писать в стиле TDD возможно, но надо стукнуться головой об стенку. Но разговор опять будет не об этом, а о плюсах и минусах использования TDD.
четверг, 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?
Многократное использование кода, минимальная связанность, высокое абстрагирование, хорошее решение для сборки проектов с различными конфигурациями.
Подписаться на:
Сообщения (Atom)