• Нужна ли папка venv для коммитов в git?

    darqsat
    @darqsat
    PM
    Достаточно сгенерить файл где будут хранится имена пакетов через команду pip freeze. Принято называть такой файл requirements.txt
    Ответ написан
    Комментировать
  • Как конвертировать строку в json?

    darqsat
    @darqsat
    PM
    Тебе нужно использовать не .json() а .text
    - json() десериализует json и превращает его в dict, заменяя null на None, true/false на True/False так что бы питон мог с этим работать;
    - text возвращает содержание респонза как строку. В твоем случае, если тебе пришел в содержании json то ты его там и получишь.

    То что тебе сверху посоветовали это похоже на оверкил. Использовать еще один модуль, что бы серелиазовать в json когда он у тебя уже есть в response.text
    Ответ написан
  • Почему форма в Django вместо ключа требует объект?

    darqsat
    @darqsat
    PM
    Потому что это строка
    Cannot assign "'14'".

    Попробуй конвертируй это в инт:
    place.location = int(form.cleaned_data['location'])

    В базе айдишники храняется как инты.
    Ответ написан
  • Как запустить свой сайт на python (не джанго)?

    darqsat
    @darqsat
    PM
    Попробуй heroku
    Ответ написан
    Комментировать
  • Как правильно собирается url django1.10?

    darqsat
    @darqsat
    PM
    Лучше конечно перейти на 2.0, там более не нужно использовать регулярки для фильтрации значений в урле. Выглидят секасно:
    path('user/<int:id>/albums/<int:album_id>', views.list_albums, name="list_albums")

    В принципе в 1.10 тоже самое только то что и вырезается при помощи регулярных выражений.

    Логика работы диспатчера примерно следующая:
    1. Веб сервер получает урл на который перешели (напр. 127.0.0.1:800/user/4/albums/12);
    2. Веб сервер вызывает функцию url_dispatcher и передает аргументом путь без айпи адресса;
    3. Диспатчер начинает идти циклом по твоему словарю url_patterns сверху вниз, и применять фильтр пока тот не будет True. Фильтр это то что идет первое, в твоем случае в 1.10 это регулярное выражение. И когда оно True, то происходит вызов функции view.NAME и передача в неё параметров из регулярки в виде аргументов.
    4. Вью получает аргументы и обьект request и далее по логике вещей, собирает ответ, достает темплейт и кладет туда контекст в виде словаря
    5. Ты уже в темплейте можешь гонять словарь циклом или напрямую упоминая его через {{ name }}

    P.S. то что в урле указано как name="list_albums' нужно для формирования ссылки на темплейте при помощи функции {% url 'list_albums' %}. Ты на темплейте можешь вставить ссылку вызвав её по имени которое ты вписал в name. Они рекомендуют это использовать что бы не формировать ссылку руками, так как в случае изменения урла тебе надо пройти по всем темплейтам и все везде поменять.

    И я хочу добавить что в джанго я сам нубас, и пока я не начал читать документацию я тоже как ты гуглил и искал ответы. Это очень не эффективно для развития. Лучше следовать гайду и понимать почему оно так работает. Например, мне понравился гайд на djangogirls, но щас с выходом 2.0 он устарел и в документации по 2.0 есть неплохой Tutorial хотя и не полный. Там непонятно что делать с авторизацией.
    Ответ написан
    Комментировать
  • Как вывести данные post запроса python 3?

    darqsat
    @darqsat
    PM
    print(r.text.encode("utf-8")) ?
    Ответ написан
    Комментировать
  • Где граница между дедлайном и сверхурочной работой?

    darqsat
    @darqsat
    PM
    С 9 до 18 и пока. Если кто то просит работать больше, значит он ужасный менеджер не способный построить адекватные процессы, защищаться от рисков и вести адекватный диалог с клиентом. Допускаются авральные режимы, критический багфикс ночью на продакшене но раз в год. Если такое происходит на регулярной основе, надо валить.
    Ответ написан
  • Годовые обороты и прибыльность в заказном вебе и мобайле?

    darqsat
    @darqsat
    PM
    Знаком с десятком собственников которые держат аутсорс-аутстаф компании (Украина, Беларусь). При штате 30-100 человек, чистая прибыль составляет от 5 до 20% прибыли. Больше всего прибыть при меньшем количестве сотрудников, так как чем больше сотрудников тем больше расходы на офисы, отпуска и поддержание софта и сервиса в адекватном виде. Доходы у среднего аутсорсера в 30-50 человек в мобилке и вебе около 1-2 миллионов в год при рейте 25-30$ / ч. Средняя загрузка по программистам 60-80%, то есть 40-20% всегда в простое и ожидают новых проектов/никуда всунуть.
    Ответ написан
    2 комментария
  • Как рассчитать сроки проекта, если проект большой и нетиповой?

    darqsat
    @darqsat
    PM
    Если проект больше чем на пол года, то гораздо эффективней будет угадывать послушав 15 минутную презентацию нежели заниматься оценками и попытками сделать из этого план (Не шутка.) Наша компания если видит проект который надо разбирать более недели, сразу отказывается давать оценку и говорит что можно разрабатывать год-два и т.п. И есть клиенты кто соглашается и работает. В основном опытные. Не опытные сбегают туда где поманят фикспрайсом и конкретными цифрами.
    Ответ написан
    Комментировать
  • Как вырасти из программиста в менеджмент?

    darqsat
    @darqsat
    PM
    По моему, главный секрет успешности менеджеров – они не спрашивают, они придумывают. Можно развивать фоновые навыки и смотреть кто как делает, но если стоит вопрос - что читать, куда смотреть, что бы стать менеджером то простите, вам успешным менеджером, наверняка не стать. Это либо есть, либо нет.
    Ответ написан
    Комментировать
  • Что вы думаете о такой системе ведения проекта?

    darqsat
    @darqsat
    PM
    По-моему, самая лучшая система управления проектом это когда менеджер ищет исполнителя на работу и они договариваются сколько это будет стоить. Что там под капотом, не важно. Фундаментально это правило должно быть соблюдено. У меня работа и деньги, у тебя навыки делать эту работу. Если это правило соблюдается хорошо и нет дисгармонии в коллективе и ресурсах, то можно начинать думать о каких то методологиях, практиках. Но как показывает практика, подавляющее большинство IT компаний не имеют отработанного костяка именно в этом базовом правиле. При этом у них может быть множество дорогих сотрудников и инструментов но все в большой дисгармонии и не работает так как хотелось бы.

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

    Начинайте с фундамента, судя по вопросу, он у вас не построен.
    Ответ написан
    Комментировать
  • Какая очередность разработки приложения?

    darqsat
    @darqsat
    PM
    Менеджмент в данном ключе приобретает форму аналитики. Для того, что бы составить план и провести планирование действий, надо разобраться в том, на что способны вверенные ресурсы (люди). Везде где не хватает компетенции менеджера (например, в вопросах заданных автором), должен ответить исполнители и взять на себя ответственность. И собственно договариваться, планировать и работать вместе. Если договорится не получается и идет дисбаланс ресурсов и ни кто не готов брать на себя ответственность, то искать подходящие ресурсы (менять менеджера, исполнителей, нанимать тимлида-пастуха).
    Ответ написан
    Комментировать
  • Насколько глубоко должен погружаться product manager в продукт?

    darqsat
    @darqsat
    PM
    Я бы сказал, что владелец продукта должен вдаваться в детали настолько глубоко насколько нужно, для успешности продукта. Вопрос в корне задан не верно. Такой вопрос не звучит "Должен ли...". Как устроите процесс так и будет. Если владелец продукта наёмное лицо, то что лицо наниматель скажет то и будет должен.
    Ответ написан
    Комментировать
  • Как оценивают и выставляют итоговые счета за проект при итеративной разработке?

    darqsat
    @darqsat
    PM
    Делаем изучение проекта небольшой командой (платно), в результате даем клиенту детальную оценку. Счета выставляются итеративно, каждый спринт. Мы берем оплату не за код а за человеко-часы. По сути, работаем на T&M. Работать по фикспрайсу итеративно тоже можно, но надо хорошо разобраться в продукте и заложить риски. А все изменения переоценивать и менять бюджет.
    Ответ написан
    Комментировать
  • На основании чего составляются тестовые сценарии?

    darqsat
    @darqsat
    PM
    Считаю, что тестовые сценарии пишутся по ТЗ если цель - приемочное тестирование. Если же цель Quality Assurance, то тестовые сценарии пишутся на основе опыта самого инженера тестирования, а он в свою очередь отталкивается от своих личных предпочтений и лучших практик по рынку или по сегменту. Для примера, в ТЗ могут не описываться ошибки валидаций на POST запросы, а хороший QA может их придумать сам уже на уровне кейсов, при этом подкинув работы разработчикам но и увеличив качество продукта в итоге. Вот я вижу эти два пути. Приемка и Quality Assurance.
    Ответ написан
    1 комментарий
  • Какой планировщик выбрать для большого количества сотрудников/проектов?

    darqsat
    @darqsat
    PM
    ganttic.com

    Может помочь. Пользуюсь что бы иметь картину на ком какой проект, кто болеет, и т.п.
    Ответ написан
    Комментировать
  • Чем отличается технический директор от руководителя проекта?

    darqsat
    @darqsat
    PM
    СТО отвечает за техническое исполнение проекта.
    ПМ отвечает за исполнение проекта.

    К техническому исполнению можно отнести:
    - Применяемые технологии для разработки
    - Подходы и практики к написанию программного кода, его хранению, интеграции
    - Определение инфраструктуры серверов и баз данных
    - Несение ответственности за качество программного кода и масштабируемость

    ПМ ставит задачу на разработку - она проходит через процесс который выстраивает СТО и на выходе ПМ получает желаемый результат.
    Ответ написан
    Комментировать
  • Какой документ описывает состав и роли членов всех команды разработки сайта?

    darqsat
    @darqsat
    PM
    Назовите его хоть куском дерьма. Главное что бы внутри было то чего хочет ваш руководитель.
    Ответ написан
    Комментировать
  • Кто выше по должности директор по маркетингу или руководитель проекта?

    darqsat
    @darqsat
    PM
    Что значит по должности?

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

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

    Если ПМ со своей сворой профессионалов считает, что маркетинг предлагает глупые фичи то вся эта свора идет лесом, так как в 99% ситуаций у маркетинга идет проработка по бизнес моделям и все что они предлагают имплементировать это результат анализа, продумываний. Конечно с долей риска и шансами, но это хоть какой то анализ в отличии от частых рекомендаций команды исполнителя основываясь на вкусовщине.
    Ответ написан
    Комментировать
  • Как правильно разделить разработку веб-проекта на юзер-стори?

    darqsat
    @darqsat
    PM
    Как всегда и везде, люди не до конца изучили agile/scrum и что то постят..

    Ни где четко не прописано что заказчик должен быть вовлечен в процесс.

    В первую очередь, SCRUM это управленческий фреймворк который позволяет упорядочить процессы, наладить коммуникации и поставлять инкременты итеративно.

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

    Если мы говорим о настоящем Agile Scrum, то собираем команду, изолируем её от всего кроме нашего проекта и дальше по методологии:

    (тут есть только 2 простейших процесса где нужен заказчик на 1-2 часа в 2 недели. типичная ошибка, звать его везде как этому учат на дурацких тренингах за 1000$)

    1. Собираем с заказчика хотелки и пихаем в беклог
    2. Собираемся и грумим беклог дробя эпики на мелкие стори или еще мельче эпики
    3. Делаем спринт пленинг и дробим беклог на задачи, поочередно оценивая всё
    4. Согласовываем инкремент и какой Definition of Done
    5. Работаем итерацию попутно проводя дейли статус митинги для синхронизации статусов и раннего выявления проблем
    6. Демонстрируем в конце что получилось, собираем от заказчика фидбек и форматируем беклог, возвращая в него то что не готово и все что не влезло в спринт
    7. Делаем ретроспективу и убеждаемся что копаем в нужном направлении и не делаем ничего лишнего либо добавляем в процессы работы то что стоило бы делать
    8. Возвращаемся к пункту 1

    Добавлю, что в беклоге может быть всё начиная от эпиков, юзер стори и заканчивая отдельными задачами, багами и т.п.

    Когда вы начинаете оценивать стоимость и сроки проекта под Agile/Scrum вы наступаете на теже грабли. Если заказчик не знает на что он идет то это не Agile.

    Наши клиенты уже с шишками и готовы платить деньги не представляя стоимости проекта в целом и тем более его сроков. С большего это стартапы. На опыте запуски и провалы хороших проектов. Один из них уже 4й год на рынке и поднял 20 лямов инвестиций в США и сейчас является одним из успешных интернет магазинов в США.

    Изначально на кармане у заказчика было денег понты и работало 2 человека на проект - бекенд и айос и копали-копали пока не выросли до постоянной команды в 5 человек (бекенд, фронтенд, айос, андроид, qa) которые непрерывно работают на проекте и копают спринтами один за другим. И ни кто никого не гонит. Заказчик купается в бабле
    Ответ написан
    Комментировать