• Воровство дизайна, что будет?

    thecoder
    @thecoder
    Разработчик веб-приложений и сервисов.
    Включите дизайн копируемого сайта в передаваемые заказчиком информационные материалы и добавьте в договор два пункта об ответственности:

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

    - В случае предъявления Исполнителю претензий или исков по поводу нарушения им авторских и/или смежных прав третьих лиц в связи с использованием Информационных материалов, предоставленных Заказчиком, во исполнение условий настоящего Договора, Заказчик обязуется урегулировать такие претензии или предпринять иные необходимые действия, исключающие возникновение расходов и убытков у Исполнителя. А в случае возникновения расходов и убытков у Исполнителя, возместить их в полном объеме.


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

    Любой проект можно сделать лучше. Гораздо интереснее творчески переработать и это уже не будет плагиатом, но отдельной работой проектировщика.
    Ответ написан
    Комментировать
  • Шаблон сопроводительного письма Upwork?

    dicem
    @dicem
    Я вот например начинаю сопроводительные письма с того, как будто уже начал изучать его проблему без его утверждения, вобще безотказный вариант, иногда даже сами заказчики писали мол "вы уже начали? Давайте созвонимся я не все указал в задании"
    Ответ написан
  • Почему регулярное выражение покрывает один пробел перед словом, несмотря на то, что явно указано обратное?

    @MiiNiPaa
    Ваше выражение:

    Один символ не из списка '@', 'p', 'a', 'r', 'a', 'm'
    Затем несколько непробельных символов.

    Пробел подходит под первую категорию и захвачен выражением. Захвачен только один пробел, потому что перед "несколько непробельных символов" захватывается один символ
    Ответ написан
    1 комментарий
  • На чем писать фронтенд легко и непринужденно?

    Freika
    @Freika
    Senior Ruby on Rails developer
    Легко и непринужденно делегировать фронтендеру :)
    Ответ написан
    Комментировать
  • Как отказаться от проекта на Upwork и получить частичное вознгараждение?

    Alexey_Suprun
    @Alexey_Suprun
    Web Developer Blog - ссылка в описании
    Решение одно, это договор с самим заказчиком. У меня была похожая ситуация, не смог завершить проэкт, но суть была в том что заказчик сам не понимал что хотел. Выполненную часть работы оплатил и написал положительный отзыв. Но люди есть разные, к каждому свой подход.
    Ответ написан
    Комментировать
  • Расчет с фрилансером Upwork если заказчик СНГ?

    opium
    @opium
    Просто люблю качественно работать
    Нет никаких проблем пусть пополняет счет на апворке.
    Ответ написан
    Комментировать
  • Расчет с фрилансером Upwork если заказчик СНГ?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    оформите через другую биржу, freelansim.ru например (на fl.ru что-то поменялось с выводом)

    а в чем проблема? Upwork декларировали 1% заказов из России
    Ответ написан
    Комментировать
  • Как правильно комментировать коммит?

    @abcd0x00
    Может есть какой-то стандарт, о котором я не знаю?

    Вообще, сам git скачай в виде исходников, там есть файл SubmittingPatches.

    Выдержка оттуда
    (1) Make separate commits for logically separate changes.
    
    Unless your patch is really trivial, you should not be sending
    out a patch that was generated between your working tree and
    your commit head.  Instead, always make a commit with complete
    commit message and generate a series of patches from your
    repository.  It is a good discipline.
    
    Give an explanation for the change(s) that is detailed enough so
    that people can judge if it is good thing to do, without reading
    the actual patch text to determine how well the code does what
    the explanation promises to do.
    
    If your description starts to get too long, that's a sign that you
    probably need to split up your commit to finer grained pieces.
    That being said, patches which plainly describe the things that
    help reviewers check the patch, and future maintainers understand
    the code, are the most beautiful patches.  Descriptions that summarise
    the point in the subject well, and describe the motivation for the
    change, the approach taken by the change, and if relevant how this
    differs substantially from the prior version, are all good things
    to have.
    
    Make sure that you have tests for the bug you are fixing.  See
    t/README for guidance.
    
    When adding a new feature, make sure that you have new tests to show
    the feature triggers the new behaviour when it should, and to show the
    feature does not trigger when it shouldn't.  Also make sure that the
    test suite passes after your commit.  Do not forget to update the
    documentation to describe the updated behaviour.
    
    Speaking of the documentation, it is currently a liberal mixture of US
    and UK English norms for spelling and grammar, which is somewhat
    unfortunate.  A huge patch that touches the files all over the place
    only to correct the inconsistency is not welcome, though.  Potential
    clashes with other changes that can result from such a patch are not
    worth it.  We prefer to gradually reconcile the inconsistencies in
    favor of US English, with small and easily digestible patches, as a
    side effect of doing some other real work in the vicinity (e.g.
    rewriting a paragraph for clarity, while turning en_UK spelling to
    en_US).  Obvious typographical fixes are much more welcomed ("teh ->
    "the"), preferably submitted as independent patches separate from
    other documentation changes.
    
    Oh, another thing.  We are picky about whitespaces.  Make sure your
    changes do not trigger errors with the sample pre-commit hook shipped
    in templates/hooks--pre-commit.  To help ensure this does not happen,
    run git diff --check on your changes before you commit.
    
    
    (2) Describe your changes well.
    
    The first line of the commit message should be a short description (50
    characters is the soft limit, see DISCUSSION in git-commit(1)), and
    should skip the full stop.  It is also conventional in most cases to
    prefix the first line with "area: " where the area is a filename or
    identifier for the general area of the code being modified, e.g.
    
      . archive: ustar header checksum is computed unsigned
      . git-cherry-pick.txt: clarify the use of revision range notation
    
    If in doubt which identifier to use, run "git log --no-merges" on the
    files you are modifying to see the current conventions.
    
    The body should provide a meaningful commit message, which:
    
      . explains the problem the change tries to solve, iow, what is wrong
        with the current code without the change.
    
      . justifies the way the change solves the problem, iow, why the
        result with the change is better.
    
      . alternate solutions considered but discarded, if any.
    
    Describe your changes in imperative mood, e.g. "make xyzzy do frotz"
    instead of "[This patch] makes xyzzy do frotz" or "[I] changed xyzzy
    to do frotz", as if you are giving orders to the codebase to change
    its behaviour.  Try to make sure your explanation can be understood
    without external resources. Instead of giving a URL to a mailing list
    archive, summarize the relevant points of the discussion.

    Ответ написан
    Комментировать
  • Почему клиенты стали мало просматривать профиль на Upwork?

    @ehs
    Architect / 3d designer
    bdf3cfe8537441b48baa3a079c244940.PNG
    А разве 83% это круто? Вы не попадаете в фильтр >90%
    хотя у меня тоже в среднем 1 просмотр в день.
    Ответ написан
    3 комментария
  • Продать идею или реализовать?

    27cm
    @27cm
    TODO: Написать статус
    Или предложить уже действующей компании добавить функционал. Только тут снова появляется ряд вопросов, с идеи хочется получить финансовую выгоду.

    Предложите. Вас выслушают и скажут, что им это не интересно. А потом всё равно реализуют, но уже без вас. Никто в здравом уме не будет платить за голую идею. Вам остается только первый вариант - сделать прототип самому.
    Ответ написан
    7 комментариев
  • На что влияет адрес, указанный на зарубежных биржах фриланса?

    @redakoc
    Адрес влияет на верификацию возможную.
    То есть адрес нужно сделать такой, где ты может потом получать, к примеру, выписку банка.
    Пока тебя не подозревают - адрес ни на что не влияет.

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

    P.S.:
    По факту проверяют очень редко.
    Можете и рискнуть.
    Ответ написан
    Комментировать
  • Какими способами/приемами вы пользовались чтобы получить свой первый заказ на фриланс бирже?

    neatsoft
    @neatsoft
    Life is too short for bad software
    Дикая конкуренция на биржах - миф, многие проекты так и остаются без исполнителя. На прошлой неделе срочно нужен был фронтендер на небольшую задачу с нормальным бюджетом (5 дней - $1000) и перспективой работы на постоянных проектах - найти фрилансера так и не удалось. Заказчик из Европы, адекватный, платежеспособный. Из 30 заявок не оказалось ни одного вменяемого предложения - одни индусы (которые по опыту заказчика на таких проектах лажают в 100% случаев).

    Вещи, на которые необходимо обращать внимание на начальном этапе:
    1. не стоит пристально изучать все описания проектов - установите собственные критерии, и выбирайте только те что нравятся;
    2. описание понравившегося проекта нужно читать внимательно, а в заявке излагать свое понимание задачи (пересказ) и план ее решения;
    3. ставьте реальные сроки захода во фриланс - от 3-х до 6-ти месяцев (такой промежуток времени требуется чтобы детально во всем разобраться и наработать рейтинг);
    4. обещайте меньше, делайте больше;
    5. и самый главный совет - начните прямо сейчас! не нужно бросаться учить английский язык или осваивать модные технологии - все что нужно само придет в процессе работы. Большинству заказчиков совершенно налевать сколько вы делаете ошибок в словах, владеете ли граматикой, и применяете ли паттерны проектирования. Главное - умение эффективно решать поставленные задачи - быстро, и без чрезмерного усложнения.

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

    pps. Ищу опытного фронтендера для совместной работы над интересными проектами. Сам занимаюсь бэкэндом, базами данных, линуксом, архитектурой.
    Ответ написан
    9 комментариев
  • Как начать использовать технологию WebSocket?

    sergiks
    @sergiks Куратор тега JavaScript
    ♬♬
    Чат / консультацию поднимите на nodejs сервере + socket.io – есть готовые примеры. Для чата и любого взаимодействия в реальном времени – websockets хороший выбор.
    Ответ написан
    Комментировать
  • Как начать использовать технологию WebSocket?

    ukko
    @ukko
    php, js (es6), golang, symfony, react
    Вам стоит почитать о демонизации процессов, как их перезапускать в случае падений, как обрабатывать различные ситуации, очищать память и прочее.

    В этом демоне подключаете любую популярную библиотеку (ratchet, wrench, ...).

    Ps Менять технологии на nodejs я не вижу смысла. Nodejs не идеальная технология со своими проблемами.
    Ответ написан
    Комментировать
  • Как начать использовать технологию WebSocket?

    bagau
    @bagau
    Фронтент разработчик
    На прошлой работе я писал онлайн-консультанта с использованием веб-сокетов. На сервере php с вебсокетом, на клиенте javascript. Комментировал код, можете посмотреть здесь на Github.
    Файл websocket.php - логика самого вебсокета, с комментариями. Я ничего не понимал в вебсокетах, поэтому комментировал каждую строку, чтобы понять.
    файл start_socket.php - работа с вебсокетом.
    Написано без использования фреймворков.
    Онлайн консультант в принципе рабочий, но я его не смог доделать, ушел с работы
    Ответ написан
    Комментировать
  • Какой выбрать способ realtime?

    miraage
    @miraage
    Старый прогер
    Laravel умеет отлично делать broadcast через redis.
    Создается пост - стреляете событие. Отдаете json.
    На клиенте принимаете данные, создаете блок.

    laravel.com/docs/5.1/events#broadcasting-events

    // EDIT

    Смотрите пример реализации через redis.
    Так же, должен быть настроена queue, тоже через redis.
    Всё описано в документации. А примерно так выглядит код.

    // .env
    BROADCAST_DRIVER=redis
    
    // app/http/controllers/PostController.php
    
    class PostController extends Controller
    {
        public function store(Request $request)
        {
            $post = Post::create($request);
            
            Event::fire(new PostCreated($post));
            
            return $post;
        }
    }
    
    // app/events/PostCreated.php
    
    class PostCreated extends Event implements ShouldBroadcast
    {
        use SerializesModels;
        
        private $post;
        
        public function __construct(Post $post)
        {
            $this->post = $post;
        }
        
        public function broadcastOn()
        {
            return [
                'post_created',
            ];
        }
        
        public function broadcastAs()
        {
            return 'post_created';
        }
        
        public function broadcastWith()
        {
            return $this->post;
        }
    }
    Ответ написан
    6 комментариев
  • Как сделать свой сервис callbackhunter?

    sabramovskikh
    @sabramovskikh
    Примерно так "Тяп Ляп Хак Херак и готово"
    Ответ написан
    1 комментарий
  • Как отказаться от проекта на Upwork?

    smartfin
    @smartfin
    Деньги вовзращать все до копейки не нужно. Просто попытайтесь договориться с ним и найти компромис.

    Поставьте себя на его место - у вас есть проект, сделаный на 50% (70%, 90%, 20% - не знаю вашей ситуации). Разработчик хочет уйти. Какие бы действия ожидали бы от него для того, чтобы остаться в хорошиъ отношениях? Явно же не закрытие контракта и игнор. Попытайтесь обьяснить ситуацию, про разницу в оплате. Предложите довести проект до какого-то майлстоуна(поднапрячся и паралельно поработать немного на 2ух проектах). Помочь в поиске нового разработчика и передаче дел.

    Ну а вообще, возможно не стоит спешить? Если у вас нету фуллтайм работы, то вроде как можно работать с 2умя проектами. Лимит времени в неделю - это верхняя граница, возможно заказчик не требует чтобы вы вырабатывали все на 100%, ему важен постепенный прогресс?
    Ответ написан
    Комментировать
  • PHP vs. all. Имеет ли смысл учить (параллельно) что-то еще?

    @newpy
    web-dev
    все языки хороши, каждый предназначен для своих целей...у всех свои минусы

    это и есть ответ на все ваши вопросы. Плюс зависит от стоящих перед вами конкретных задач.
    вы по-моему задали кучу вопросов, и сами же дали на них кучу ответов. Употребляете фразы "...да оно и понятно...". Так если все понятно, не тратьте время и пишите приложения.

    Если коротко и по-делу в сотый раз процитирую сотню-пять хороших советов: "...что нравится, то и изучайте...". Что касается всего остального, то у вас не получится изучать что-то одно. Хотите заниматься backend-ом, нет проблем, но у вас не получится стоять в стороне от современных технологий, и есть такое понятие как "стек" этих самых технологий. Не получится использовать что-то одно, один фреймворк, одну технологию.

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

    Про Python и Django - я знаком и с тем и другим (PHP), могу писать на том и другом. Но лично мое субъективное ощущение что на Python мне писать приятнее. И нравится больше. И тут работает главный совет из начала, "на чем нравится на том и пишите", если это позволяет задача, и есть возможность выбирать. Просто если поступил заказ использовать PHP, то что вы откажетесь от денег и заказа и будете сидеть пока не прилетит волшебник с заказом на python+Django?

    Про скорость работы языка: я думаю, вам рановато думать о скорости работы того или иного языка. Если вы только прям сейчас не пишете свой фейсбук, например. К слову, например Instagram написан на Python и вроде не испытывает недостатка в нагрузке, и вполне работает. Все остальное вполне справляется со своими задачами.

    Про скорость работы (просто скорость работы): Django даже позиционируется как фреймворк "для перфекционистов с дедлайнами", что гласит даже заглавная страница фреймворка, т.е. позволяет вести разработку быстро. К слову тоже самое можно делать и с помощью того же Laravel. Если хочется "по-взрослому": то чаще всего это Symfony. Но в большинстве случаев нет смысла писать небольшие сайты на Симфони. Не потому что Симфони там плох, а потому что это можно сделать быстрее. А в коммерческой разработке, бытует мнение, что главный критерий для клиента сейчас -это скорость разработки.
    Если проект крупный, то там сроки тоже поставлены, но они довольно большие, и там чаще всего и используют Симфони.
    Опять же Django при этом подходит как для небольших проектов, так и для очень больших.
    Если вам нужно разработать API, то там чаще всего используют другие инструменты, которых много как со стороны PHP, так и со стороны Python. Различные микрофреймворки в качестве backend-а.

    Подводя итог, вы можете заметить, пару ключевых тезисов:
    1. Зависит от конкретной задачи, которая перед вами стоит, или требование клиента(руководства компании)
    2. Если есть возможность выбирать, если это позволит вам получить конечный результат, то выбирайте то, что вам по душе. Кому-то Python "не лезет", кому-то PHP.

    Хотелось закончить на веселой ноте =), поэтому скажу так: при всем вышесказанном, чаще всего, всех этих людей объединяет одно: "так или иначе все они используют JavaScript"
    :D
    Ответ написан
    7 комментариев