• Какой банк лучше для ИП на Upwork: Точка или Модульбанк?

    @Stalinko
    PHP'шник и фрилансер до мозга костей
    Пользуюсь Модульбанком уже 4 года.
    Доволен всем.

    Тариф "Оптимальный" (690р за месяц или 590р/мес при оплате за полгода или 390р/мес при оплате за год или 9900р навсегда)

    Бесплатный вывод 500т.р. в месяц + 50т.р. бесплатно можно снять с карты.
    Валютный контроль стоит 300р для переводов до 500т.р.

    Этот банк умеет работать с Upwork. У них просто шикарная техподдержка, где можно пообщаться напрямую с толковыми представителями валютного контроля, они сами подскажут, какие документы нужно сделать.

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

    Также у них очень выгодный обмен валюты. Курс отличается от биржевого всего на 0.5%. При подключении платной опции "Выгодный обмен валюты" курс будет отличаться от биржевого на 0.35%.

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

    Upd. При поступлении валюты банк-корреспондент отщипывает себе около $13.
    Ответ написан
  • Возможность работы с ПСН на upwork?

    @Stalinko Куратор тега Фриланс
    PHP'шник и фрилансер до мозга костей
    Работаю по ПСН на Upwork уже 3 года. Никаких проблем.

    Патент должен быть получен по месту вашей работы. Место заказчика вообще не важно. Для валютного контроля достаточно один раз предоставить User Agreement на двух языках с датой и подписью.
    Ответ написан
    Комментировать
  • По какому пути вы бы пошли при рефакторинге?

    @EvgeniiR
    https://github.com/EvgeniiR
    3) Сделать новый класс AdvancedBalance унаследовать от Balance и переопределить метод getBalance

    4) Сделать новый класс AdvancedBalance унаследовать от Balance и создать новый метод getAdvancedBalance,

    Ох уж эти ООП-девелоперы. Ради чего вы там наследовать собрались?
    Добавьте интерфейс NumberFormatter или BalanceFormatter, прогоняйте числа через них в нужных местах.

    молится что ничего не сломалось

    хоть тесты и есть

    Они не просто "есть", их ещё и поддерживать нужно. Пойдите по пути написания тестов на места которые могут поломаться.

    с принципом открытости закрытости, который рекомендует расширять классы для добавления новой функциональности.

    Расширять, а не наследовать, принцип о том чтобы менять как можно меньше кода, в идеале вообще не трогать, а вы, якобы следуя ему, предлагаете пол проекта перелопатить для использования другого интерфейса

    p.s. Гляньте, например, https://www.youtube.com/watch?v=pu0EXQvoaCc
    Ответ написан
    Комментировать
  • По какому пути вы бы пошли при рефакторинге?

    @vanyamba-electronics
    Метод getBalance возвращает одно число, метод getBalanceOkrugl будет возвращать другое число.
    Это подобно тому, как если бы getBalance возвращал простые числа, а менеджер сказал, что теперь нужно работать с числами Фибоначчи. Это два разных множества.
    Ответ написан
    6 комментариев
  • Как избежать дублирования кода для горизонтально масштабируемого веб-приложения?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Немного перефразирую xmoonlight. Налицо разделение модели данных и различных ее представлений.
    Создайте общий репозитарий с моделями и через наследование сделайте сериализацию с возвращением нужных структур для админки и API.
    Для API представление реализуйте в стиле белого списка. При расширении системы будет сохраняться совместимость.
    Работу с данными реализуйте через общий сервисный слой, в котором будет жить бизнес-логика.
    В таком случае бизнес-процессы будут реализованы вне зависимости от интерфейсов, а значит меньше багов и т.д.
    Ответ написан
    Комментировать
  • Чем отличается web-разработчик от web-программиста?

    @kova1ev
    Никогда не задумывался, но по запросу developer vs programmer нагуглилось пара интересных статей. Общая суть в том, что программист выполняет более конкретные таски по реализации чего-либо в программном коде, разработчик же более общее понятие, например он может проектировать архитектуру.
    Ответ написан
    1 комментарий
  • Как организовать хранение аудиофайлов для серверного проекта?

    @raiboon
    Просто хранить на жёстких дисках - неудобно и не сильно надёжно.
    Для кого разрабатывали ceph, minio, Gridfs, riakcs, etc?

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

    ShareX - бесплатный и есть все перечисленные возможности.
    Ответ написан
    Комментировать
  • Какую программу для записи экрана и создания скриншотов выбрать?

    deepblack
    @deepblack
    Поддержу ответ s0xzwasd насчет ShareX.
    Когда сидел на винде пользовался ей.
    Могу сказать отличная программа,
    удобно пользоваться, куча функций + OpenSource(https://github.com/ShareX/ShareX)

    1. Все в одной программе
    2. Есть запись видео
    3. Есть возможность нанесения стрелок и текста
    4. Есть загрузка на свой сервер (FTP или сетевую шару) + есть исходники (можете выпилить любой функционал на корню)
    5. Насчет корноративных версий, не понятно что имелось ввиду
    6. Есть русский язык
    Ответ написан
    1 комментарий
  • Есть ли резон переучиться на программиста?

    @yugoru
    Я в 41 кардинально сменила род занятий, правда ушла не в разработчики, а в тестировщики. Подобных вопросов я не задавала, так как была уверена в своих силах и в том, что мне дико интересно тестировать. Зарплата была вторичной мотивацией.
    Сначала я определилась что именно мне интересно (бэкенд, нагрузка/перфоманс и темт-дизайн) изучила под это дело все, сто смогла и устроилась на работу. Спустя год я стала тимлидом в своей группе (так как возраст это ещё и жизненный опыт, который помогает именно руководить и организовывать).
    Мне кажется, что если программирование увлекает настолько, что хочется встать пораньше, чтоб покодить, или не пойти с друзьями в бар ради доделки кода, то шанс найти свое место очень большой. Взрослый человек умеет обучаться и концентрироваться, так что и развиваться может быстро.
    Ответ написан
    2 комментария
  • Как сделать мягкое удаление и использовать уникальные ключи?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега MySQL
    На уровне БД (конкретно в MySQL) такое реализовать нельзя, нужно эту логику закладывать в приложение.
    UPD: выше написана ерунда, читайте комментарии к ответу.

    Примерно так это будет выглядеть (код из живого проекта, поэтому сущности другие, но смысл тот же):
    class UniqueAmongActiveClients implements \Illuminate\Contracts\Validation\Rule
    {
        public function passes($attribute, $value): bool
        {
            return Client::shouldBeUniqueAndItIs($attribute, $value, auth()->id());
        }
    }
    
    class Client extends Eloquent
    {
        public static function shouldBeUniqueAndItIs(string $attribute, $value, ?int $excludedId = null): bool
        {
            $query = static::withoutTrashed()->where($attribute, $value);
    
            if ($excludedId) {
                $query->where('id', '<>', $excludedId);
            }
    
            return $query->doesntExist();
        }
    }


    P.S. Стандартное поле deleted_at заменять костылями, как советуют в соседних ответах, конечно, не нужно.
    Ответ написан
  • Какую версию laravel выбрать для долгосрочного проекта?

    4.2, очевидно же
    Ответ написан
    Комментировать
  • Каким плохим вещам учит PHP?

    @Kostik_1993
    Web Developer
    Жить хорошо и кушать вкусно, но это не у всех))

    Ничему плохому он не учит, учат идиоты не умеющие писать код, а им хоть что подсунь получится дерьмо. Вот например оратор выше утверждает что он старый и все дела, но он просто видимо не в курсе текущего положения дел. Им видите-ли нужно чтобы он все умел и все мог)) Да есть узкие места где его лучше не использовать. Но со своими задачами для которых он придуман, он справляется на ура. Просто все эти хейтеры на самом деле не гуру прогеры, а лохи которые в свое время выбрали не тот язык под свои задачи.

    В настоящее время и синтаксис подтянулся на уровень, и строгая типизация появилась и много много всего. Учите основы и паттерны, а язык вам ничего плохого не даст.
    Ответ написан
    5 комментариев
  • Как начать зарабатывать начинающему web-разработчику в 17 лет?

    Zoominger
    @Zoominger
    System Integrator
    Как начать зарабатывать начинающему web-разработчику в 17 лет?

    Макдональдс, стройка, кошение травы.

    зарабатывать на вебе

    Пхаха.

    Хочу устроиться джуном в веб-студию удаленно

    Никто. Никогда. Не берёт. Джунов. На удалёнку. Точка.

    Может устроиться к кому-нибудь на фриланс

    Нет.

    Как начать зарабатывать на фрилансе?

    Никак.

    Каждую, чёрт бы её побрал, неделю такие посты. Ну погуглите хоть по Тостеру-то.

    Коротко: это очень плохой план, дикая конкуренция людей со знаниями и опытом выше вашего не дадут вам никаких шансов. Выбирайте другую область.
    Ответ написан
    29 комментариев
  • Как соединить линиями блоки div?

    arsenty
    @arsenty
    Full Stack Designer
    Без JS и с описанной адаптивностью: https://codepen.io/arsenty/pen/mYxXoQ
    Ответ написан
    1 комментарий
  • Общение/переговоры с заказчиком занимают много времени, что делать?

    @Stalinko Куратор тега Фриланс
    PHP'шник и фрилансер до мозга костей
    Всё время, которое ты тратишь на проект заказчика, должно быть оплачено заказчиком.
    Все длительные переговоры, естественно, тоже.
    Ответ написан
    3 комментария
  • Стоит ли сейчас начинать изучать React Native или все переходят на Flutter?

    sim3x
    @sim3x
    Стоит или не стоит изучать - вопрос так не должен стоять
    Всегда лучше изучить что-то чем не изучить

    Мигрировать с любой технологии для кроссплатформенной разработки будут не на другую платформу, а на нативные решения

    Писать новое кроссплатформенное будут на чем-то хайповом, если ТЛ неопытный.
    Если опытный - будут делать кроссплатформенный прототип, на том на чем можно сделать его ASAP
    А после проверки маркетинговых гипотез будут делать нативное приложение под те платформы, которые опрадали себя

    Для игр ситуация будет несколько иной
    Ответ написан
    Комментировать
  • Долгая верификация аккаунта на upwork?

    @Stalinko
    PHP'шник и фрилансер до мозга костей
    Порядок действий в случае ошибки Upwork:
    1. Попытаться разобраться самому.
    2. Написать на тостер <--- вы тут
    3. Позвонить на Рен-ТВ
    4. Написать в спортлото
    5. Написать вопрос в саппорт Upwork <-- вот тут скорее всего вопрос решится
    Ответ написан
    4 комментария
  • ККТ и Upwork: вопрос к тем кто работает - как выглядят документы от Upwork - услуги оказаны upwork или физлицам?

    @Stalinko
    PHP'шник и фрилансер до мозга костей
    Всё на самом деле совсем неоднозначно.

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

    Де-факто: вы не знаете точную сумму, которую клиент платит в Upwork. И налоговая никак не может её проверить. Т.е. если вы работаете по агентской схеме, то налоговая, получается, должна на слово верить вашим данным (скриншотам из Upwork). Есть мнения, что в случае проверки налоговая очень расстроится. Особенно если например произошёл скачок курса и налоговая база уменьшилась, потому что вы указали дату платежа, когда курс был на минимуме.
    Поэтому многие работают по простейшей схеме - сколько денег упало на р/с, столько и декларируют. Эта же сумма подтверждается в Confirmation of Services. Лично я сам так и работаю уже 3 года.

    А ещё всё очень сильно зависит от конкретной налоговой и людей. Если хотите 100%-ый ответ, то решайте этот вопрос прямо со своим налоговым инспектором.

    Upd.
    Самый простой способ обезопаситься - работать по патенту. Там налоговая база не зависит от доходов и ничего декларировать не надо. Если к вам придерутся, то просто исправите КУДиР и всё :)
    Ответ написан