• Какое нормальное время генерации страницы и ответа сервера?

    SPAHI4
    @SPAHI4
    реактовцы - это не девы, а прокидыватели пропсов
    оптимизировать конечно можно, но гугл pagespeed говорит, что <300 ms - это нормально
    Ответ написан
    Комментировать
  • Существует ли "Брокер" для UpWork?

    noby2000
    @noby2000
    Founder.
    Это может быть агентство, однако брокером как таковым это быть не может. Зачем ему портить свой рейт, если вы не вовремя или плохо сделали работу? Искать другого исполнителя?-тогда это опять-таки агентство. То, что вы хотите называется девочка за 15+-тыр/мес., которая будет искать заказы исходя из конкретно ваших потребностей/опыта/загрузки, вести Личный аккаунт, общаться с заказчиками. Ну или жену в декрет и на апворк ;)
    Ответ написан
  • Почему интернет-магазины не используют спрайты для товаров?

    sabramovskikh
    @sabramovskikh
    Что за бред? Спрайты для иконок и только для них. Причем тут вообще фотографии то?
    Не вижу ни одного плюса из этого, только минусы:
    1) Спрайты собирать надо постоянно
    2) Гигантский вес. У меня 50000 товаров, у каждого товара 3 картинки. Это 150 000 изображений размером 1000х1000 пикселей. Далее не хочу считать какое полотно получиться, но уверен что у 90% пользователей моего сайта браузеры зависнут намертво от такого спрайта
    Ответ написан
    7 комментариев
  • Какой фреймворк лучше подойдёт для масштабных и быстрых проектов, laravel и symfony2?

    Denormalization
    @Denormalization
    он должен быть рассчитан на большое кол-во пользователей, до миллиона и больше, с постоянными активными около 100 тысяч. какой из них более гибкий и масштабируемый, с хорошими перспективами?

    При больших нагрузках - выбранный фреймворк будет иметь очень малое значение. Многое будет зависеть от общей архитектуры, железа и т.д.

    Выбирать нужно тот фреймворк - для разработки на котором у вас есть специалисты и бюджет на них.
    Ответ написан
    Комментировать
  • Как определить оптимальную цену за доступ к микрофункциям приложения?

    a13xsus
    @a13xsus
    Lazy developer
    Тут не цену определять надо, а менять модель монетизации этой функции. Покупать на 4-8 часов или опцию, которая будет включать сама на неделю в назначенное время (какого х?я) -- нахер ни кому не надо и неудобно.
    Ответ написан
    2 комментария
  • Архитектура системы личных сообщений?

    @nirvimel
    Стоит ли использовать для этих целей MongoDB/MySQL?

    PostgreSQL или MySQL, но не в коем случае не NoSQL, который выглядит как панацея только поначалу.
    Правильная проектировка структуры БД - залог производительности и нормальной разработки.
    Ошибки в структуре БД - бомбы, подложенные под развитие проекта и дальнейшую разработку.

    Хранить все сообщения в одной таблице в виде текста?

    Все сообщения в одной таблице. Но в базе у вас в итоге окажется 10-20 или больше таблиц с разными метаданными, без которых тексты сообщений не имеют смыла.

    Если разбивать данные на шарды,

    Не надо этого делать.

    Что думаете про Node.js + Websockets для этих целей?

    Node.js - тех, кто начинал свою программистскую карьеру с фронтенда, надо на пушечный выстрел не подпускать к принятию архитектурных решений в крупных проектах. Архитектура для архитекторов, js для фронтендеров.
    Websockets - чат предполагает push данных с сервера на клиент, а для этой задачи websockets почти не имеет реальных альтернатив на сегодняшний день. То есть все альтернативы - это костыли из времен до websockets.

    Как правильно хранить сообщения пользователей на разных серверах?

    Для начала нужно определиться с тем зачем это нужно. Потом постараться избавиться от этой опасной идеи.

    чтобы не пришлось потом переделывать на реальных пользователях.

    Переделывать все равно придется. Такова суровая реальность жизни.
    Ответ написан
    2 комментария
  • Как договариваться с заказчиком на фрилансе?

    sHinE
    @sHinE
    веб-разработчик, php/js/mysql и сопутствующее
    Если за всё это платят - то радоваться, что есть работа.
    Если не платят, то просить оплату за уже сделанное и договариваться об оплате новых хотелок.
    Перед разоговором зашить в код функцию, убирающую изменения после определенного числа, например, чтобы, если не успели договориться - то что-нибудь перестало работать.
    Ответ написан
    1 комментарий
  • Как скачать музыку с vk?

    slo_nik
    @slo_nik
    Проще на том, который Вы изучили и знаете, как с ним работать.
    Ответ написан
    Комментировать
  • Есть ли смысл работать с ботоводами в fl.ru?

    opium
    @opium
    Просто люблю качественно работать
    Все кто пытается выйти за пределы фл это мошенники , в сбр деньги приходят всегда на с то процентов у меня несколько сотен заказов на фл. Авто ответы обычно игнорирую, в задаче пишу если вы не робот напишите слово я дурак. Бота самому легко написать по сути там один запрос на список работа и один пост запроса чтобы ответить в работу копипастой
    Ответ написан
    1 комментарий
  • Стоит ли использовать SEOPult.ru для продвижения нового сайта и какова его эффективность?

    ubernoob
    @ubernoob
    Что конкретно вы хотите делать в seopult? Закупать ссылки? Он это делает очень топорно. Контекст? Можно сразу напрямую в контекстную рекламу пойти или в eLama например. Не вижу на сегодняшний день областей его применения.
    Ответ написан
    2 комментария
  • Нужно ли абстрагироваться от фреймворка?

    @springimport
    Коротко: не советую.

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

    urtow
    @urtow
    *nix, python, QA, bagpipe, folk music
    - Dev & Production сервера понятно. Нужно ли делать локал-сервер у разработчика? Стоит ли физически разделять дев и продакшен или достаточно разных виртуал-хостов и баз данных?

    Стоит. Безопасность, как минимум. Как максимум - сдохнет дев, ну ок. Сдохнет прод - ААААААААААААААА

    - Где и какие делать репозитории кода? Никаких серверов у нас в офисе не будет и собственно самого офиса тоже ;)

    Github, gitlab, bitbucket.

    - Нужна ли специализированная task management (типа, Jira)? Сейчас используем для управления задачами WorkSection. Стоит ли для разработки использовать что-то отдельное специализированное? Я так понимаю, что та же Jira может отслеживать коммиты в git как процесс выполнения задач - это было бы круто!

    Trello спасает :)

    - нужен ли отдельный баг-трекер? Выделенных тестировщиков пока не предвидится.

    Хватит Issues в github/gitlab/bitbucket. Я был отдельным тестировщиком и такого варианта хватало.

    - Стоит ли использовать Scrum? Или просто тупо идти по задачам?

    Определитесь для себя - может быть и стоит, а может быть и нет.
    Надо смотреть на проект и думать. Со стороны не сказать.

    - Нужна ли какая то вики для отдела разработки? Что туда записывать, чтобы это не было большим оверхедом для разрабов и имело реальную пользу.

    Опять же, есть вики в github/gitlab/bitbucket. Для небольшого проекта - самое то.

    - Еще один вопрос не могу понять: должны ли запросы на доработки софта идущие от других отделов проходить через меня как управляющего разработкой (я оцениваю целесообразность и ставлю задачу разрабам) или лучше чтобы они напрямую контачили с разработчиками? Не будет ли это с моей стороны лишней тратой времени?

    А вот тут будет в тему Agile. Собрали требования - решили что делаем в текущем спринте и радуемся. Все дополнительные запросы попадают в пул задач и Вы можете удалять задачи, если они не нужны проекту или понижать приоритет.
    Ответ написан
    1 комментарий
  • Как правильно технически организовать веб-разработку?

    Antonoff
    @Antonoff
    Разработчик
    Отвечу кратко, используйте Trello - Играет роль таск менеджера, и там отлично можно делать спринты по агиле. Сейчас напилино очень много разного рода интеграций для Трелло и Slack + Trello, тоже хорошо работал.

    Для гит - ставьте на дев сервера - GitLab или смотрите в сторону платного аккаунта на GitHub или BitButcket.

    Баг трекер используйте из GitLab/GitHub Issue, ибо банально легко можно отслеживать как так провигается когда кто-то делает коммит с #issue_id.

    Ну и система коммуникаций, должна быть на высоте! Я бы брал бы Slack.

    Если нравится продукция Atlassian смотрите в сторону Jira, BitButcket и HipChat.

    Но для меня лично лучше всего подходит GitHub, Trello, Slack и всё.
    Ответ написан
    6 комментариев
  • Чем отличается REST от AJAX?

    AlexXYZ
    @AlexXYZ
    O Keep Clear O
    Некоторые вещи неуместно сравнивать. Просто каждая технология решает свои задачи и потому они нужны, чтобы дополнять друг друга, а не противостоять друг другу. Также не стоит верить собеседнику в его оценочных суждениях и соглашаться, что нужно искать какие-то различия. Например они отличаются тем, что в названии у них нет одинаковых букв, но одинаковы в том, что оба названия имеют в длину 4 буквы и оба являются сокращением.

    В общем, не расстраивайтесь, что не срослось. Лучше искать тех людей, которые несмотря на ваше незнание какой-то технологии смогут разглядеть, что вы можете и увидеть в вас потенциал (наверняка он в вас есть). Тем более, что ни AJAX ни REST не существует, все они части одного целого. Как материки на одной планете.
    Ответ написан
    7 комментариев
  • Проект со сложной логикой на Symfony – как проектировать? Примеры?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Как хранить бизнес-логику чтобы модели не превратились в монстров из десятков тысяч строк?

    Тут не совсем модели. Entity - это просто объект данных, умеет хранить их в себе и бросать исключения, если не правильные данные вставляете, все. Repository - умеет работать со своим Entity И БД.

    БЛ находится в классах сервисах.

    Читал про Command Bus где, если правильно понял, на каждое действие в системе – свой класс?

    Вообще под каждое дествие - не обязательно, тут нужно руководствоваться здравым смыслом.

    Как их организуете (их тогда будут сотни)?

    Иерархически. Путь к классу должен быть "понимаем".

    Есть ли смысл выносить каждую доменную модель в модуль/микросервис, хранить всю связанную логику где-то там внутри, а с остальными общаться по внешнему API?

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

    За ответы в клиентскую часть – отдельный сервис-фронтенд?

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

    Каков оверхед?

    Ничтожный.

    Используют ли такое на практике?

    Да

    Какие подводные камни?

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

    Как не превратить кидание/получение событий типа PostBeforeEdit/PostBeforeEditHandler в "callback hell"?

    Если есть возможность отказаться от событийной модели - часто лучше отказаться.
    Листнеры доктрины конечно штука мощная, но работает не всегда очевидно.

    Функционал "PostBeforeEdit/PostBeforeEditHandler" часто дешевле и проще вынести в сервис, но опять же руководствуйтесь здравым смыслом.

    ACL Где храните указанную логику?

    Если ACL будет не тривиальный - готовьте себя к тому, что он будет размазан по уровню контроллеров.

    Какие структуры для описанного выше – best practice?

    Если есть возможность привести к одноуровневому виду - сделайте. Если с точки зрения бизнеса может потребоваться иерархическая (не фиксированной вложенности) ACL - до последнего убеждайте, что это плохая идея, не повторяйте чужих ошибок.

    В моём понимании это выглядит как куча трёхмерных кубов доступа "crud – group – entity – field", как это сделать более плоским пока только одна идея – делать кучу таблиц many-to-many.

    Гибкая настройка вплоть до каждого поля 90% что не нужна. Если можно свести к понятию скопов прав - сделайте это.
    Структуру можно предлагать только зная ваш проект.

    Версионирование. Как вы версионируете подобные проекты?

    Semver.

    А если нужна "N-1" рабочая версия на продакшене?

    Значит на прод попадает ваша версия с тегом "N-1"))

    Есть ли смысл разделять версии в рамках единой кодовой базы проекта и как (неймспейсы, конфиг, модуль, что-то ещё)?

    Храните яйца в отдельных корзинках. Если модуль развивается полностью отдельно и может быть вынесен как зависимость проекта в vendor - делайте.

    И, самое главное – как всё это совместить?

    • РУКОВОДСТВУЙТЕСЬ ЗДРАВЫМ СМЫСЛОМ
    • Принимаете жесткие соглашения по правилам написания кода, например такие
    • Постарайтесь убедить бизнес в том, что без покрытия кода автотестами будет дороже, нестабильней и дольше. + Пишите тесты. Если объем тестов в 4 раза больше кода, который они тестируют - это норм. У меня бывали случаи, когда для критичного функционала тестов было в ~16 раз больше, чем кода.
    • Жесткие, обязательные кодревью.
    • Если задача крупная - декомпозируйте ее.
    • Технический долг - возвращайте обязательно И как можно скорее.
    • Перед тем как писать код для работы с внешним сервисом - имеет смысл написать его эмулятор.
    • Спешите только в случае серьезных проблем на проде)). Фичи "на вчера" отличаются от фич "на потом" только приоритетом выполнения, более ничем.
    Ответ написан
    6 комментариев
  • DbaaS для стартапа?

    sim3x
    @sim3x
    Да
    Если мне вообще плевать на данные, которые там будут храниться
    Если мне плевать на аптайм сервисов, связанных с хранилищем
    Если у меня неограниченный бюджет
    Ответ написан
    Комментировать
  • Сколько стоит IT-услуга на фрилансе? Как узнавать вилки цена\(качество=профессионализм)?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    Цена, качество и скорость напрямую не связаны.
    Оценить что сколько может стоить достаточно просто:
    - либо быть грамотным специалистом самому (и соответственно крупными мазками понимать объем работы)
    - либо иметь проверенного специалиста который даст первую оценку за Вас
    Ответ написан
    Комментировать
  • Как изменить config.php посредством php?

    BuriK666
    @BuriK666
    Компьютерный псих
    var_export
    Как-то так:
    $data = '<?php $config = ' . var_export($config, true);
    file_put_contents('config.php', $data);
    Ответ написан
    2 комментария
  • Как сделать удаления переписки?

    Gavr23
    @Gavr23
    php, mysql, html
    Можно сделать таблицу, в которой будут находиться связь сообщение - пользователь. При удалении сообщения определенным пользователем, просто удалять нужную связь.
    Ответ написан
    Комментировать