Ознакомьтесь с нашей политикой обработки персональных данных
  • ↓
  • ↑
  • ⇑
 
22:54 

Маcштабирование Agile/Lean разработки

Настоящий дворянин и программист
Как обычно, хороший семинар будет проводить замечательный Luxoft traning center:

Семинар: Маcштабирование Agile/Lean разработки в рамках программы.



Увидимся там!

@темы: события

23:08 

Дилберт и кейсы по PMBoK

Настоящий дворянин и программист
Мне кажется, что почти каждый стрип Дилберта это готовый кейс к разбору на нашем курсе по PMBoK.



Соберу последние, чтобы показать нашей группе:















Остальные не менее забавные переводы можно найти тут: http://hemule.livejournal.com/tag/dilbert

@темы: менеджерское, хумор

20:18 

День сисадмина!

Настоящий дворянин и программист
Друзья! Дорогие мои и любимые системные администраторы! От всей души поздравляю вас с этим праздником и желаю столько всего, что список был бы больше, чем своп от чикаки!

Не могу больше говорить, в горле щемит, с праздником!

13:27 

Являются ли деньги хорошим мотиватором?

Настоящий дворянин и программист
Являются ли деньги хорошим мотиватором?



На этот вопрос отвечает Дэн Пинк:


@темы: менеджерское

00:04 

Группа NT-PM101-27.07.2001

Настоящий дворянин и программист


Наша замечательная, на самом деле сильная группа.



Уважаемая Людмила! Ребята!

Спасибо вам большое, с вами было приятно работать. Когда придет время подписывать с вами миллионные контракты на проект, я буду знать, что работаю с по-настоящему умным "стейкхолдером". =)



Пусть ваше BCWP превышает BCWS при стабильном ACWP.

@темы: менеджерское

23:26 

Дизайн пользовательского интерфейса 2: Искусство мыть слона

Настоящий дворянин и программист
Любопытные заметки о работе дизайнера и о том, что же такое хороший интерфейс. Зайдите на сайт и почитайте, можете найти для себя полезное. Во всяком случае меня она окончательно примирила с некоторыми нашими интерфейсами.




@темы: интерфейсы

18:38 

Рекрутеры

Настоящий дворянин и программист
Удивительно, до чего бывает полезна креативность в обыденной жизни.



Порой она явно показывает то, что обычно скрыто за завесой формальностей и условностей.

Вот, например. Это могло быть обычное "типовое" объявление о найме сотрудника. Обычное серое и скучное. Но, креативный "Охотник за Головами" сделал все так (ссылка на сайт):



(картинка кликабельна)



И теперь понятно, что компания смотрит на Javasсript-разработчиков как на хомячков. =) Ну, вы представляете себе образ хомячка в IT и около-IT фольклоре. Тупое, жующее, срущее одноразовое животное. Восемь рублей за ведерко.



А ведь кто-то мог бы не догадаться и все-таки послать резюме в эту компанию, будь оно обычным объявлением без креативности. И это могло привести к печальным последствиям - от "хомячкового" отношения пострадал бы живой человек. =)



Слава креативным HR! (и вот еще обсуждение в linkedin, группа DOU)

@темы: HR, хумор

20:31 

Идеалисты против реалистов

Настоящий дворянин и программист
В одном интересном кейсе в сообществе HappyPM говорится о том, что некие тестировщики не хотят заполнять отчетность и саботируют ее стандартным "я забыл". Топикстартер спрашивает что делать с такой "забывчивостью".

В ответ насоветовали множество способов разной степени эффективности. Вот, например, один из типичных "по духу" комментариев:

забывают - значит, в этом для них нет ценности (низко приоритетная задача). Такая себе, ествественная автоматическая оптимизация (не срочно, не важно => вообще не делаем). "Вам, менеджмерам, надо - вы и собирайте, а мне голову не морочьте".



А если и нагрузка у тестировщиков близка к 100%, то тем более на такие "мелочи" не находят времени.



Из моего опыта (касательно test case design/review): помогает peer review with checklist (шпаргалка - что именно должно быть заполнено): таким образом за тест кейс отвечают уже не один, а два человека, причем в 1ую очередь спрашивают с peer reviewer'a: почему поля и данные (четко указанные в чеклисте), пропущены.

Плюс ревьюеры могут потом рассказать, кто лучший и кто худший в этом процессе (сколько раз возвращали они тест кейсы на доделку) - и тут адресно можно помочь людям.



Проблема не в людях, а в системе.



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



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



Еще вариант: сделайте ретроспективу с тестировщиками - объясните зачем вам то, что вы требуете, и дайте им возможность предложить альтернативы, которые по их мнению будут работать.


Через некоторое время выясняется, что тестировщики - вьетнамцы.

И сразу появляется еще один ответ в тему:

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


Вопрос на сообразительность: как вы думаете, чей способ окажется эффективнее?

И вопрос на подумать: а вы уверены, что в вашей компании вас не считают "вьетнамцем"? =)

@темы: менеджерское, тестирование ПО

17:40 

Оперативная сводка

Настоящий дворянин и программист
Всех приветствую! Я никуда не пропал, а долгое молчание объясняется очень просто - был в отпуске. К тому же сейчас много читаю и мало делаю, "восполняю пробелы". Так что, в ближайшее время особой активности тут не будет. Но следите за обновлениями.

@темы: личное

17:07 

1С:Профессионалы

Настоящий дворянин и программист
Недавно, наконец-то, пришли все сертификаты. Часть нашей замечательной команды:





Спасибо Александру за помощь (на фото слева). Впереди следующие рубежи. Нужен "1С:Специалист".

@темы: , фото

12:12 

Хороший код

Настоящий дворянин и программист
xkcd радует:





Особенно смешно в свете того, что я сейчас дожевываю "Совершенный код" Макконела. =)

@темы: хумор

15:43 

Kanban для управления проектами

Настоящий дворянин и программист
Прошел замечательный тренинг "Kanban для управления проектами". Спасибо Николаю и проекту XPInjection, это был замечательно. За последние полгода это, пожалуй, был самый полезный тренинг. Он дал мне ответы на вопросы, которые меня действительно интересовали. Например, как "побороть" управление операционной деятельностью (вроде поддержки). Ни scrum, ни проектный подход для этого не подходит. Так, что зря ругают тренеров и "тренерский бизнес". Вообщем, тщательно выбирайте мероприятия, обогащайтесь знаниями и применяйте их на практике. И будет вам "щасьтье"!



Желаю вам хорошего дня и хорошего кода, а напоследок несколько фото:















@темы: agile, события, фото

15:52 

Вечер в офисе

Настоящий дворянин и программист
Лето, конец рабочего дня. Все разошлись, в офисе непривычная тишина...







@темы: рабочее, фото

16:03 

Новое на доске

Настоящий дворянин и программист
А еще у нас на доске обновление. Ребятам понравилась идея об "аватарках" разработчиков на тикетах. Доска стала "живее":





@темы: scrum, рабочее, фото

16:24 

Настоящий дворянин и программист

Человеку свойственно ошибаться, но чтобы провалить дело капитально, необходим компьютер.


Алан Купер says


@темы: хумор

16:32 

Домашний десктоп

Настоящий дворянин и программист









@темы: текущее

01:32 

DD/MM/YY vs MM/DD/YY

Настоящий дворянин и программист
Stupid Americans! Now is 11/11/11, not 11/11/11



from lleo

@темы: хумор

23:04 

XDTO-пакеты, xml, xml schema

Настоящий дворянин и программист

@темы: , xml, ООП

00:56 

XDTO-пакеты. Неименованные типы

Настоящий дворянин и программист
В продолжение к посту XDTO-пакеты, xml, xml schema несколько слов о неименованных типах.



Давайте посмотрим, что будет, если в конструкторе XDTO-пакета к свойству добавить определение типа и, в свою очередь, добавить туда еще свойств:





Как видите, свойства "Адрес" и "Телефон" сложного типа ("ОбъектXDTO"). А телефон еще и списковый тип (я задал "Максимальное количество" равное трем).






Вот XML-схема этого пакета:


< xs:schema xmlns:tns="www.1c.ru/demos/products"
xmlns:xs="www.w3.org/2001/XMLSchema"
targetNamespace="www.1c.ru/demos/products"
attributeFormDefault="unqualified" elementFormDefault="qualified">
< xs:complexType name="Клиент">
< xs:sequence>
< xs:element name="Фамилия" type="xs:string"/>
< xs:element name="Имя" type="xs:string"/>
< xs:element name="Адрес">
< xs:complexType>
< xs:sequence>
< xs:element name="Город" type="xs:string"/>
< xs:element name="Улица" type="xs:string"/>
< xs:element name="Дом" type="xs:int"/>
< /xs:sequence>
< /xs:complexType>
< /xs:element>
< xs:element name="Телефон" maxOccurs="3">
< xs:complexType>
< xs:sequence>
< xs:element name="КодГорода" type="xs:string"/>
< xs:element name="Номер" type="xs:string"/>
< xs:element name="Добавочный" type="xs:string"/>
< /xs:sequence>
< /xs:complexType>
< /xs:element>
< /xs:sequence>
< /xs:complexType>
< /xs:schema>


Вот код, который создает объект этого типа:


    клиентТип = ФабрикаXDTO.Тип("www.1c.ru/demos/products", "Клиент");
клиент = ФабрикаXDTO.Создать(клиентТип);




При создании объекта типа "Клиент" мы получим следующую картину:





Заполнить реквизиты "Фамилия" и "Имя" несложно:


    клиент.Фамилия = "Нуралиев";
клиент.Имя = "Борис";


Телефоны рассмотрим немного позже, а вот как заполнить реквизит "Адрес"? По логике, это нужно сделать как в примере с номенклатурой и единицами измерения из предыдущей статьи. Создать "ОбъектXDTO" с типом таким же, как у свойства "Адрес". Но у этого типа нет самостоятельного имени, а значит, вызвать "ФабрикаXDTO.Тип(...)", чтобы получить этот самый тип, не получится. Но это не значит, что самого типа нет. Просто он содержится в типе "клиентТип". Давайте посмотрим на него более внимательно:





Как видите, имени у типа нет, но сам объект "ТипОбъектаXDTO" существует. Значит, адрес мы можем заполнить вот таким кодом:


    клиент.Адрес = ФабрикаXDTO.Создать(клиентТип.Свойства.Получить("Адрес").Тип);
клиент.Адрес.Город = "Москва";
клиент.Адрес.Улица = "Селезневская";
клиент.Адрес.Дом = 21;


Теперь и с телефонами ситуация проясняется. Свойство "Телефон" имеет тип "СписокXDTO", а синтакс-помощник говорит, что у этого типа есть метод "Добавить", которому передается "ОбъектXDTO". Вот код, который добавляет телефоны:


    телефонТип = клиентТип.Свойства.Получить("Телефон").Тип;

нТелефон = ФабрикаXDTO.Создать(телефонТип);
нТелефон.КодГорода = "495";
нТелефон.Номер = "737-92-57";
нТелефон.Добавочный = "*0";
клиент.Телефон.Добавить(нТелефон);

нТелефон = ФабрикаXDTO.Создать(телефонТип);
нТелефон.КодГорода = "495";
нТелефон.Номер = "681-44-07";
нТелефон.Добавочный = "*0";
клиент.Телефон.Добавить(нТелефон);


В итоге я получил вот такой XML:


< ?xml version="1.0" encoding="UTF-8" ?> 
< Клиент xmlns="www.1c.ru/demos/products"
xmlns:xs="www.w3.org/2001/XMLSchema"
xmlns:xsi="www.w3.org/2001/XMLSchema-instance">
< Фамилия>Нуралиев< /Фамилия>
< Имя>Борис< /Имя>
< Адрес>
< Город>Москва< /Город>
< Улица>Селезневская< /Улица>
< Дом>21< /Дом>
< /Адрес>
< Телефон>
< КодГорода>495< /КодГорода>
< Номер>737-92-57< /Номер>
< Добавочный>*0< /Добавочный>
< /Телефон>
< Телефон>
< КодГорода>495< /КодГорода>
< Номер>681-44-07< /Номер>
< Добавочный>*0< /Добавочный>
< /Телефон>
< /Клиент>


Напоследок хочу подарить вам небольшую рекурсивную процедуру, которая заполняет все свойства вот таких неименованных типов, кроме списковых:


// Заполняет все свойства объектов, которые в качестве типа имеют неименованый тип "ОбъектXDTO"
Процедура ЗаполнитьСвойстваОбъектаXDTO(ОбъектXDTO, тФабрикаXDTO)
ТипОбъектаXDTO = ОбъектXDTO.Тип();
Для каждого
СвойствоXDTO Из ТипОбъектаXDTO.Свойства Цикл
флТипНеИменованый = ПустаяСтрока(СвойствоXDTO.Тип.Имя);
флСвойствоНеСписковое = (СвойствоXDTO.НижняяГраница=1) и (СвойствоXDTO.ВерхняяГраница=1);
Если
флТипНеИменованый и флСвойствоНеСписковое Тогда
тЗначениеСвойства = тФабрикаXDTO.Создать(СвойствоXDTO.Тип);
Если
Тип(тЗначениеСвойства) = Тип("ОбъектXDTO") Тогда
ЗаполнитьСвойстваОбъектаXDTO(тЗначениеСвойства, тФабрикаXDTO);
КонецЕсли;
ОбъектXDTO.Установить(СвойствоXDTO,тЗначениеСвойства);
КонецЕсли;
КонецЦикла;
КонецПроцедуры
// ЗаполнитьСвойстваОбъектаXDTO


Естественно, вы можете доработать ее по своему вкусу.



На сегодня на этом все, а вам я желаю хорошего дня и хорошего кода.



@темы: , xml, ООП

17:54 

Вам, овертаймеры!

Настоящий дворянин и программист
xxx: Здравствуй, милый!
yyy: дря
xxx: Уже первый час, а ты все на работе... Что-то случилось, зайка?
yyy: да б$%. Мозг уже свернул. Все что написал за выходные - не компилится и падает. Эксемели не валидируются, скрипты все с синтакс еррорами. Лайаут в жопе. А главное - ВСЕ ПРАВИЛЬНО.
yyy: Я же на выходных все отладил...
xxx: Любимый... Только не обижайся, ладно?
xxx: Возможно дело в том, что после того как ты отрубился под утро в понедельник... я взяла твой лаптоп и кое-где поменяла английские буквы "С" и "c" на русские "С" и "с"...
xxx: ПОТОМУ ЧТО НЕХУЙ РАБОТАТЬ ВЫХОДНЫМИ, ТРУДОГОЛИК ХЕРОВ
xxx: Так что приезжай домой, у нас сегодня котлетки...
yyy: Сссука бессердечная.
yyy: Выезжаю.

@темы: хумор

Green FiLin's blog

главная