• Как работают фермы по накрутке?

    hottabxp
    @hottabxp
    Сначала мы жили бедно, а потом нас обокрали..
    Как-то же работают эти фермы и вряд ли в полуручном режиме
    Конечно не в полуручном, а в ручном.

    Окей, гугл - "фермы накрутки лайков китай"
    619cf3769890e898365230.jpeg619cf37c0a830967144880.jpeg

    PS: Есть еще клик-фермы:619cf41feb2ad164609345.jpeg
    Ответ написан
    4 комментария
  • Какие нюансы работы самозанятым?

    @Stalinko Куратор тега Фриланс
    PHP'шник и фрилансер до мозга костей
    1. Самостоятельное ведение бухучёта, общение с налоговой, выписывание чеков.

    2. Отсутствие пенсии, налоговых вычетов, банки очень плохо дают кредиты

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

    Adamos
    @Adamos
    Ну, едрена, нельзя же быть настолько беспомощной с лапками.
    Всего-то выкинуть из ссылки посредника и качай-не хочу.
    Ответ написан
    1 комментарий
  • В чём смысл передавать array_reverse в foreach без явной необходимости обратного порядка элементов?

    Adamos
    @Adamos
    тыц или дыц

    В первом случае реверсится стек, имеющий глаза да видит, не знающий термина да погуглит.
    Во втором - сложнее. Код разворачивает заголовки. Если в них несколько раз по-разному указано значение одного и того же ключа - ему будет присвоено первое из значений, более поздние перепишутся. А если встречается начало заголовка "^HTTP/" - то отбрасывается все, что было до него.

    В обоих случаях заявление, что "без явной необходимости" - просто глупость.
    Ответ написан
    Комментировать
  • Безопасность кода php -> mysql?

    Fockker
    @Fockker Куратор тега PHP
    Потомок старинного рода Ипатьевых-Колотитьевых
    Вопрос хороший, характерностью имеющихся в коде ошибок.

    На первом месте тут конечно , конечно, незабвенный Бобби Тейблс и его прошаренная мамаша.
    Таблицу здесь удалить не получится, но вот скачать всю базу - запросто.

    Плюс мамаша конечно тупит. Данные надо не "экранировать", поскольку почти никто не понимает, что это значит, а отправлять в БД отдельно от запроса.

    Но меня здесь больше интресует не безопасность, а осмысленность данного кода.
    Если элемент "login" попадает в сессию в результате авторизации, то зачем снова делать все эти 100500 запросов в БД?
    Я бы этот код сократил до
    <?php
    require_once $_SERVER["DOCUMENT_ROOT"] . "/engine/core/session.php";
    if (empty($_SESSION["user_id"])) {
        include "login.php";
        die;
    }

    и поместил в profile.php

    При этом убедившись, что код собственно авторизации выглядит как-то так

    $stmt = $conn->prepare("SELECT * FROM users_all WHERE name=?");
    $stmt->bind_param("s", $_POST['name']);
    $stmt->execute();
    $user = $stmt->get_result()->fetch_assoc();
    
    if ($user && password_verify($_POST['password'], $user['password']))
    {
        $_SESSION['user_id'] = $user['id'];
        header("Location: /profile.php");
        die;
    }
    Ответ написан
    Комментировать
  • Нормальный ли ПК для пенсионеров?

    nava2002
    @nava2002
    Инженер
    Компьютер отличный для поставленной задачи.
    Молодец продавец.
    Но в качестве Операционной системы я бы поставил Ubuntu.
    1. Решится вопрос с безопасностью (антивирус. фаервол,....).
    2. Бесплатность.
    3. Есть все необходимое, включая пакет для работы с документами (тоже бесплатный).
    Ответ написан
    1 комментарий
  • Как начать понимать UML-схемы?

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

    Значит, скорее всего, не до конца у вас сформировалось понимание ООП.
    Стрелки вполне точно показывают, кто кого расширяет, реализует, и вообще от кого зависит.
    Как начать понимать эти схемы?

    Также, как и программировать вы учились - читайте больше схем (можно найти в книгах об архитектуре ПО), составляйте свои.
    А может быть их и не нужно понимать, т.к. их редко используют?

    Тоже правда отчасти.
    Ответ написан
    1 комментарий
  • Каким софтом можно отследить исходящие запросы http и входящие?

    dimonchik2013
    @dimonchik2013
    полковник Андрейченко
    fiddler и аналоги
    взрослее - Burp
    еще взрослее - Wireshark

    на сервере - обычные логи (с модификацией POST)
    Wireshark тоже есть
    Ответ написан
    Комментировать
  • Падает скорость цп с 2,59 до 0, 75 после 1 часа игры в +/- средние игры (от доты до ведьмака). В чём проблема?

    paran0id
    @paran0id
    Умный, но ленивый
    Смотрим спецификации: https://ark.intel.com/content/www/ru/ru/ark/produc...

    TCASE
    Критическая температура - это максимальная температура, допустимая в интегрированном теплораспределителе (IHS) процессора.

    TCASE 67.9°C

    Он у вас кипит до троттлинга.
    Ответ написан
    5 комментариев
  • Реально ли работать в одном IT-проекте (продуктовом) больше 5-ти лет и не деградировать профессионально?

    @Jacen11
    Мой вопрос: реально ли развиваться в течение 5-ти лет и больше в одном продуктовом проекте и не деградировать?
    конечно возможно, почему бы и нет? Вот только человек со сменой работ будет прогрессировать быстрее и ему проще будет с этим
    Ответ написан
    6 комментариев
  • Чем отличаются видеокарты с одним чипом разных вендоров?

    vabka
    @vabka
    Токсичный шарпист
    Различие в системе охлаждения и схеме питания.
    Ещё различия могут быть в физических размерах.
    Иногда ещё память может различаться (производитель памяти: hynix / samsung)
    Ещё вендоры могут разгон из коробки свой сделать.

    NVIDIA GeForce RTX 3060

    Скорее всего, речь о Founders Edition, которые нвидия продаёт на старте.
    Никаких преимуществ перед другими вендорами нет.
    Ответ написан
    Комментировать
  • Создания уникального чата: sql, node, socket.io?

    @alexalexes
    Есть роль А И B. Только роль A может начать чат с ролью B

    Роли у пользователей заданы на уровне учетной записи и не меняются от чата к чату или определяются в момент создания чата?
    То есть при создании чата будут определена роль администратора (создателя) которая будет более привилегирована, чем тот, кому он пишет?
    Чат может содержать только 2х лиц

    Вы очень оптимистичны, выставляя такое ограничение. В следующей итерации разработки вам захочется сделать функционал группового чата. Тогда наличие колонок user_id, second_user_id вам встанет боком.
    В таблицу chat лучше добавить такие колонки:
    id - идент. чата
    date_create - дата создания
    id_user_creator - кто создал чат
    title - название чата (в этой итерации разработки можно не вставлять)
    Для участников чата лучше предусмотреть таблицу chat_participant:
    id - идент. участника
    id_chat - идент. чата из таблицы chat
    id_role - роль в чате (если она определяется в момент создания, для группового чата)
    id_user - пользователь чата
    id_last_read_message - идент. последнего прочитанного сообщения (самый простой вариант, как отмечать что прочитано, и потом определять, есть ли новые сообщения)
    date_include - дата вступления в чат (для группового чата)
    date_exclude - дата исключения из чата (для группового чата)
    Для сообщений чата - таблица chat_message:
    id - id сообщения
    id_partic/id_user - автор сообщения (можно реализовать как по ключу от таблицы участника, так и по таблице пользователей)
    date_create - дата создания сообщения
    date_update - дата обновления сообщения (для продвинутого функционала редактирования сообщений)
    date_delete - дата удаления сообщения (для продвинутого функционала редактирования сообщений)
    text_message - текст сообщения
    Если совсем хотите быть продвинуты в функционале редактирования сообщений, то вы захотите хранить историю изменения сообщений в таблице chat_message_history:
    id - идент. истории
    id_next - указатель на следующую запись истории
    id_message - идент. сообщения
    date_change - дата изменения сообщения
    id_user/id_partic - кто изменил
    text_message - состояние текста сообщения
    Ответ написан
    Комментировать
  • Можно ли отследить завершение всех синхронных post запросов?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Если запросы вызываются синхронно, то цикл закончится только после завершения всех запросов, ничего дополнительно отслеживать не надо.
    Но, вроде, во всех современных браузерах синхронные запросы запрещены и надо использовать Promise.all.
    Ответ написан
    2 комментария
  • Стоит ли идти на стажировку Яндекса ради боевого опыта?

    verkhoturov
    @verkhoturov
    HTML-Верстальщик / Frontend Developer
    Если вообще нет опыта, будет полезна почти любая стажировка.
    Насчет Яндекс особо не обольщайтесь, стажер в Яндекс === крепкий джун в других компаниях.
    Отправьте заявки еще в несколько мест и потом уже ставьте вопрос: "куда стоит пойти?".
    Ответ написан
    Комментировать
  • Как найти технического редактора?

    pragmatik
    @pragmatik
    Имхо, разумнее всего разместить заказ на редактирование статьи https://freelance.habr.com/tasks
    Ответ написан
    Комментировать
  • Чем проверить безопасность сайта?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега Веб-разработка
    Заказать комплексный аудит безопасности.
    Ответ написан
  • Как сделать, чтобы письма не попадали в спам?

    @Romjkez
    1) Используйте библиотеки для отправки emai'ов
    2) Также можно отладить заспамленность отправляемого письма с помощью сервиса https://mailtrap.io/
    Там есть раздел, показывающий, что в вашем письме влияет на вероятность попадания в "Спам"
    614daedd4794a412787499.png
    Ответ написан
    Комментировать
  • Laravel очереди на другом сервере?

    Sanasol
    @Sanasol Куратор тега Laravel
    нельзя просто так взять и загуглить ошибку
    Так джоб может использовать всё что угодно чтобы выполниться, как вы хотите чтобы это работало без кода? Если нужен сервис какой-нибудь, модель из базы достать, в базу сохранить и т.д.

    Чтобы поднять очереди на другом сервере надо настроить общий редис и общую базу, тогда джобы будут балансироваться между серверами.

    Но деплоить надо полноценно приложение на оба сервера.

    Можно конечно сделать отдельные консюмеры на отдельном сервере чтобы там чисто один скрипт лежал, но это и будет работать вне ларавела полностью. Т.е. не сможете использовать сервисы, eloquent, модели и всё остальное из ларавела. В чем смысл.

    Пора изучить деплой на несколько серверов. А точнее в принципе деплой автоматический поднять, а сколько там серверов надо развернуть ему пофиг.
    Ответ написан
    Комментировать
  • Как организовать парсер с помощью очередей в Laravel Horizon?

    JhaoDa
    @JhaoDa
    LaravelRUS Team
    Во-первых, ты путаешь понятие «очередь» и «задание в очереди».

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

    Если кратко: создаёшь 20 очередей, каждой по одному воркеру с параметром --sleep=1.
    Ответ написан
    5 комментариев