Pull to refresh

Comments 13

Боль и резь в глазах от вашего кода.
Через это проходят все, кто только начинает программировать
Узнайте о codestyle и PEP8:
pip install flake8 && flake8.

start_date = None if child.find('start_date').text == None else int(child.find('start_date').text)
finish_date = None if child.find('finish_date').text == None else int(child.find('finish_date').text)

Нельзя было что-ли функцию написать для этого? Зачем плодить не читаемый код и каждый раз по два раза дёргать find?


def get_child_text(child, match):
    text = child.find(match).text
    if text is None:
        return
    return int(text)

...

start_date = get_child_text(child, 'start_date')
finish_date = get_child_text(child, 'finish_date')
...

И не стоит писать "foo == None". Правильно "foo is None"

Спасибо за конструктивный комментарий, учту
А чем не устроил?
id = child.find('id').text


Ваш вариант делает тоже самое, но выглядит странно:
id = None if child.find('id').text == None else child.find('id').text
По поводу кода уже тут много чего сказали. Еще добавлю…

Управление проектами – это модно. Но модно еще не значит эффективно.


Управление проектами на основе сетевых моделей — это уже не модно :) И не факт, что эффективно ;) Управление проектами это способ быть в прибыли. Построение сетевой модели — один из (под)способов этого достичь, но это не есть ни достаточное, ни необходимое условие. Чем хорош MS Project, и что имело бы смысл повторять? Выравнивание работ по (всякого рода) ресурсам — это задача, которую можно доверить вычислительной машине. Только перед выравниванием должна быть возможность тонкой (очень тонкой) настройки. Один из способов кстати решать такую задачу — это муравьиный алгоритм.
Согласен, сейчас модно использовать гибкие методологии и соответствующие инструменты. А использование календарных планов, в основе которых лежат сетевые модели, уже стало «best practice» в управлении проектами.

Гибкие методологии вышли из ИТ-индустрии и там себя хорошо зарекомендовали. Но давай вспомним про проекты строительства (атомного энергоблока, подводной лодки или железной дороги), вывода на рынок нового продукта (например, новая модель кроссовок Nike), разработки проектной документации. Разве там отказались от сетевых моделей? Управление проектами не ограничивается разработкой программного обеспечения. И даже в ИТ, когда ты внедряешь SAP в какой-то компании, ты общаешься с заказчиком при помощи календарного плана. Поэтому, на мой взгляд, сетевые модели нельзя так легко списывать со счетов.

По поводу работы с ресурсами полностью согласен. В планах есть проработка этого вопроса. За ссылку отдельное спасибо
Вы (именно «Вы») посмотрели бы хоть мои публикации… :) и забудьте слово " модно". Ничего не модно, удобно или полезно, вот такие критерии. Кстати сетевые модели есть и в набившем оскомину (в том числе и не в ИТ) PMBoK, который сборник GOOD practices. Вобщем расширяйте кругозор в области УП. Тот же MS Project далеко кстати не пример best practices, а тупо привычный инструмент. Python годная среда для разработки современной бесплатной альтернативы, но это серьёзная работа.
Ваши публикации посмотрю. Расширю свой кругозор :)
А если серьезно, Вы говорите по большей части правильные вещи, но у меня создается впечатление, что всячески стараетесь меня задеть. Поверьте, за свои 6 лет работы на рынке построения корпоративных систем управления проектами я многое видел. О гибких подходах вне ИТ всерьез заговорили после выхода PMBoK 5, в котором появились элементы итеративномти в УП. Но удобство и польза от их использования вне ИТ еще не доказаны. Если есть ссылки на конкретные кейсы, буду рад, если поделитесь. А пока другого объяснения кроме как «модно» к желанию внедрить гибкие подходы везде и вся я не вижу.
Что касается best practice, не путайте концепцию с ее конкретной реализацией. У MSP есть множество альтернатив. Но все они построены на базе сетевых моделей, которые и являются лучшей практикой
Задеть не пытаюсь ни разу. и я и не сторонник (и не противник) ни сетевых моделей, ни гибких методов… дело ваше, что там best.
Sign up to leave a comment.

Articles