• Существует ли практика передачи выполненного на половину проекта?

    @Masterme
    У вас частный случай известной проблемы, которая называется «не могу оценить требуемые сроки».
    Чтобы вы могли планировать сроки и укладываться в них, нужно несколько условий:
    — задачу целиком нужно разбить на подзадачи, которые вы уже делали и знаете, какая сколько времени займёт,
    — в процессе выполнения итерации требования не должны меняться, в том числе по инициативе заказчика.

    Это всё приходит с опытом. Я могу сказать, что ваша ситуация с затягиванием сроков вовсе не является уникальной. Многие разработчики и команды ошибаются с планированием сроков. Это не есть хорошо и правильно, но таковы факты. Не падайте духом. Поймите, что это не ваша вина, и не давайте заказчику «давить на гниль» и подкидывать вам дополнительную работу бесплатно. Он не телефон в магазине покупал, он заказывал разработку, а в разработке всегда есть вилка трудозатрат. Если он этого не понимал — значит он не профессионал. Если при этом он обвиняет в срыве сроков единственно вас и требует: «ты мне обещал Y за X рублей вот и выдай Y кровь из носу» — можете его послать.

    Вообще ответ на ваш вопрос «как поступить» зависит от того, как вы договаривались — либо о каком-то объёме работ либо о конечном продукте. Но с учётом того, что у вас на проект уже «не стоит» — не важно как вы договаривались, вариантов немного:
    — Объясняете заказчику, что ошиблись при оценке трудозатрат и продолжать на прежних условиях не можете. Сдаёте как есть, деньги не возвращаете.
    — Объясняете заказчику, что ошиблись при оценке трудозатрат и в максимально сжатые сроки доводите проект до какого-то логического завершения. Все требования о дополнительных бесплатных работах игнорируете. Сдаёте, забираете остаток денег, забываете.

    Первый вариант для вас выгоднее, потому что во втором случае есть риск не получить вторую половину оплаты, а также потому что сдача проекта — это не конец, а начало, т.к. каждому проекту требуется поддержка.
    Ответ написан
  • Непонятный глюк в Chrome

    hell0w0rd
    @hell0w0rd
    Просто разработчик
    Chrome вне зависимости от наличия информации в теле страницы о фавиконке пытается ее запросить. А вообще чтобы такие вопросы возникали реже — сразу включайте логирование, вам тут же будет все ясно
    Ответ написан
    Комментировать
  • Зависают запросы к Node через Nginx

    taliban
    @taliban
    php программист
    А не проще ли отдавать статику напрямую через нгинкс? Какой смысл ноду дергать из-за картинок и стилей?
    Ответ написан
    1 комментарий
  • Поменяли ли вы смартфон на хороший планшет + простой мобильный телефон?

    @quozd
    Так и сделал, хожу с Nexus 7 + звонилка от Nokia.
    Единсвенный минус — неудобно писать смс после кверти клавиатуры смарта.
    Ответ написан
    2 комментария
  • Могу ли я по законам РФ создавать/распространять алгоритмы шифрования с длиной ключа <=48 бит?

    Использовать криптографию в личных целях как физическому лицу так и в личных целях компании включая клиентов можно без лицензирования. Если же вы производите криптографические средства для продажи то нужно получать лицензию у ФСБ.
    Ответ написан
    Комментировать
  • Как вы ведёте себя когда заказчик вас «проверяет»?

    Vorchun
    @Vorchun
    Вам заплатили за «проверку»? Если да, то причем тут гордость. Вам сделали заказ. Вы его выполнили. Теперь вы знаете больше о заказчике, а он о вас. Видимо, заказчик уже обжигался и проверил сроки/качество.

    Вас же никто не принуждает. Если заказчику понравился ваш подход, а вам — заказчик, то это хорошие рабочие отношения. Отношения на доверии самые лучшие.
    Ответ написан
    Комментировать
  • Как вы ведёте себя когда заказчик вас «проверяет»?

    ZmeeeD
    @ZmeeeD
    За ваши деньги любой каприз. Если он платит то пусть хоть три раза проверяет.
    А чего гордость то не выдержала? Хотя с его стороны было бы правильно предупредить что это тестовое задание.
    Ответ написан
    Комментировать
  • Как правильно написать правило для NGINX?

    grossws
    @grossws
    Можно попробовать сделать rewrite с regexp'ом, который вытащит значение параметров. А дальше использовать try_files.

    Здесь wiki.nginx.org/Pitfalls есть описание этого паттерна.

    На тему base64 — можно файлы хранить с именами сразу в base64, если к ним так обращаются.
    Ответ написан
    Комментировать
  • На что сменить MongoDB

    dizballanze
    @dizballanze
    Software developer at Yandex
    Почему бы полностью не перейти на Redis? Память сейчас дешёвая.
    Ответ написан
    Комментировать
  • Как можно выполнять скрипт checkmail.php не по cron, а сразу после получения письма сервером nginx?

    IlyaEvseev
    @IlyaEvseev
    Opensource geek
    Если письмо кладется в файл, то можно следить за каталогом с письмами с помощью inotify (linux-only?).
    В Дебиане и Убунте смотрите на пакеты incron, iwatch.

    Вариант №2 — следить за логами nginx'a и запускать команду при ловле события:
    (
    date +'%Y.%m.%d %H:%M:%S -- Started...'
    while : ; do
        tail -F /var/log/nginx/access.log |
        grep --line-buffered -i -- "smtp" | 
        while read line; do
            date +"%Y.%m.%d %H:%M:%S -- $line"
            php -f /path/to/checkmail.php
        done
        date +'%Y.%m.%d %H:%M:%S -- Restarted...'
        sleep 30
    done
    ) > /var/log/checkmail.log 2>&1 &
    

    Примерно так.
    Ответ написан
    Комментировать