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

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

    Если вы имеете в виду подготовительные этапы в виде декомпозиции, ТЗ, то эти этапы собраны в упрощенном виде.
    Надо продолжать собирать требования и на их основе искать решения.

    Нужно взяться за протоколы передачи данных.
    Начиная с геолокации:
    1. что за устройства устанавливаются на грузовой транспорт?
    2. куда должны передаваться данные?
    3. с какой частотой?
    4. какие ограничения у этих устройств?
    5. кто получатель геолокации? какие посредники при сборе геолокационных данных?
    6. что происходит при получении геолокационных данных?

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

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

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    VirtualBox + Debian.
    Ответ написан
    5 комментариев
  • Какие JS-библиотеки можно использ. для такой анимации?

    @mletov
    Так посмотрите что используется в этом проекте.

    73JqVav5.jpg?download=1&name=%D0%A1%D0%BA%D1%80%D0%B8%D0%BD%D1%88%D0%BE%D1%82-29-04-2024%2011:45:38.jpg
    Ответ написан
    3 комментария
  • На чем пишут современные соц.сети, способные выдержать большой поток людей?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Нужно писать соцсеть на "одних лишь ЯП". Производительность CMS принципиально ограничена. Все существующие соцсети, "способные выдержать большой поток" - это очень индивидуальные решения, без каких-либо готовых компонентов.
    Ответ написан
    Комментировать
  • На чем пишут современные соц.сети, способные выдержать большой поток людей?

    @Everything_is_bad
    Пишут на том, на чем умеют, главное чтобы это можно было поддерживать и масштабировать, начинающие на такое не способны, тут нужен опыт.
    Ответ написан
    4 комментария
  • Низкая скорость скачивания в Steam. Почему?

    vabka
    @vabka
    Токсичный шарпист
    Столкнулся с необъяснимой проблемой. У меня маленькая скорость скачивания игр в Steam на ПК. Скачивает игры при скорости 200 мбит/сек.

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

    delphinpro
    @delphinpro
    frontend developer
    Второй вариант.

    Вы там в самом начале написали условие получения наград - и/или
    Это предполагает, что за задание может выдаваться несколько наград (диплом и мерч к примеру).

    Значит вам нужна связь между таблицами задач и наград "многие-ко-многим" с промежуточной связной таблицей.

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

    таблица tasks
    id | other_fileds...
    
    таблица rewards_diplomas
    id | other_fields...
    
    таблица rewards_currencies
    id | other_fields...
    
    и т.д.
    
    reward_task - связная таблица
    
    task_id | reward_type | reward_id
    task_id     - идентификатор задачи
    reward_type - тип награды (diploma, currency..)
    reward_id   - идентификатор награды из соответствующей таблицы


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

    0xD34F
    @0xD34F Куратор тега JavaScript
    .then(
      (x) => x + 1,
      (x) => x + 3
    ) //promise rejected, value = 14

    Так, а второй коллбек then'а - он для чего нужен? Тройка добавится, будет 17. И, соответственно, последующие catch'и пропускаются, будет выполнен .then((x) => x * 20).
    Ответ написан
    1 комментарий
  • Компания предлагает большу зп и торопит с выбором - это плохо или нет?

    vabka
    @vabka
    Токсичный шарпист
    Получил оффер от одной компании (банка) с неожиданно большой суммой, чуть ли не x2 от запрошенной

    Вероятно ты просто запросил сильно ниже рынка / стандартной ставки.
    Что за банк?
    Что за должность?

    Например, все этапы собеседований HR пыталась ставить близко друг к другу.

    А зачем растягивать?

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

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

    Maksim_64
    @Maksim_64
    Data Analyst
    1. Теоретически это возможно иметь такую разницу в r-squared. Но довольно редкий кейс, я бы перепроверил данные.

    2. Нужно/ Не нужно это вопрос моделирования. Как ты собираешься интерпретировать модель, если ты используешь линейную регрессию (модели с высокой степенью интерпретации), то ты всегда отталкиваешься от бизнес значений параметров и ошибок. Константу оставляют например когда при нулях (или значениях очень близких к нулю), модель не должна показывать ноль.

    3. Посмотри на другие метрики например среднюю абсолютную ошибку, медианную абсолютную ошибку. Все они имеют хорошую бизнес интерпретацию с которой легко работать. Сам по себе r_squared это количество вариативности (дисперсии) объяснено моделью. 0.19 (19 процентов) вариативности объяснено моделью. Что очень мало и я назвал бы такую модель негодной. В то время как 0.99 (99 Процентов) очень много это учебные показатели, но это еще не все это не означает все супер. Посмотри на вышеупомянутые метрики они измеряются в единицах твоего таргета. Как они себя ведут.

    4. RSS, ESS, TSS - далековато от бизнеса. Это значения которые нужны для F статистики. А она у тебя говорит сама за себя 4314 и 5. Первая модель (где 5) совершенно не пригодна. Вторую перепроверяй, и мысли категориями интерпретации. Это сама суть регрессивного анализа.
    Ответ написан
    2 комментария
  • Как использовать https в node js express?

    @12rbah
    Ответ написан
    Комментировать
  • Почему nginx не отдает статику, хотя работает?

    @dodo512
    С настройками по умолчанию рабочие процессы Nginx работают с правами пользователя www-data.
    У пользователя www-data нет доступа в каталог /home/ubuntu/.

    Можно в файле nginx.conf заменить user www-data; на user ubuntu;

    Или добавить www-data в группу ubuntu
    sudo usermod -aG ubuntu www-data
    Ответ написан
    Комментировать
  • Что почитать/посмотреть, чтобы освоить Matlab и MatCAD и другие?

    @alexalexes
    Берете книги и лекции по дисциплине "Теория вероятностей и математическая статистика" - читаете и изучаете теорию.
    Скачиваете учебное пособие по той же дисциплине "... задачи и упражнения". Пытаетесь решать задачки на бумаге.
    Matlab и MatCAD нужен, если вы что-то будете моделировать, например, метод Монте-Карло. Но это надо сначала освоить теорию. Какие объекты построения графиков и формул нужны - это все в мануале к этим прогам есть.
    PS: Если хотите не хардкорный путь изучения, то ищите пособия для нетехнических специальностей, что-то в духе "Теория вероятностей и математическая статистика для экономистов".
    Ответ написан
    Комментировать
  • Что за файлы и как с ними жить дальше?

    Alex_Geer
    @Alex_Geer Автор вопроса
    System Engineer
    Ни кто не хочет писать ответ, напишу сам. В общем через команду file можно убедится что это действительно дампы процесса. Нашел ошибки в логах LibreOffice когда файлы удаляются ранее чем преобразовались в PDF, процесс зависает и система его убивает. Возможно эта информация будет кому то полезна.
    Ответ написан
    1 комментарий
  • Какие базовые вещи из IT для backend можно изучить или хотя бы сформировать базовое понимание по ним за несколько часов в неделю?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    нужно не изучать а поработать.
    Написать рестфулл веб сервис с использованием ООП и чистой архитектуры, поработаьт с реляционной базой данных.
    А то, что ты "изучил" без реальной практики - ничто.
    Ответ написан
    2 комментария
  • Стоит ли дальше учиться программировать?

    @Drno
    Специалисты нужны всегда. НО это относится именно к специалистам. после обучения в колледже \ вузе Вы не будете являться специалистом. для этого потребуется проработать на специальности 3-5 лет хотя бы...
    а по языкам - пайтон обычно подходит везде, потому что универсален. C языки тоже широко используются.
    Немного не понял как это связано с развитием AI - он же за Вас не придумает и не напишет.. для того что бы им пользоваться нормально, надо разбираться в теме вопроса, тогда да - он хорошо ускоряет процесс работы
    Ответ написан
    Комментировать
  • Стоит ли заниматься по курсам от Ulearn?

    vabka
    @vabka
    Токсичный шарпист
    ulearn - вполне хорошие курсы университетского уровня.
    Причём это не "курсы C#", а "курсы программирования, на примере C#", что для новичка даже лучше.
    Ответ написан
    Комментировать
  • Как повторить такую же анимацию?

    sfi0zy
    @sfi0zy Куратор тега JavaScript
    Creative frontend developer
    Для начала можно посмотреть в их исходники. Беглый просмотр кода показывает основной план действий:

    • Создать плоскость с кастомным материалом. Вершинный шейдер стандартный нейтральный, который ничего необычного не делает, только сохраняет координаты UV, чтобы их во фрагментном использовать. Фрагментный будет содержать в себе всю логику. Это частенько так делается в 2D-эффектах.
    • Во фрагментный шейдер передать две текстуры. Одна обычная, для фона. Вторая - карта смещений для пикселей. Displacement map по-нашему. Берем пиксели из фона, смещаем по данным из карты смещений - получаем результат.
    • Нарисовать текстуру для фона. В их случае она делается из кадров видео, т.е. вот этот бултыхающийся градиент на фоне в их случае заранее заготовлен. И, к слову, видно, что он шакалится. Но с точки зрения производительности видео тут - это хорошая идея. Генерирование клякс-градиентов - требовательная в вычислительном плане задача.
    • Нарисовать displacement map по какой-то логике, завязанной на положение мыши. Тут большой простор для экспериментов. В их случае они используют отдельную сцену с кучей объектов, у которых меняются расположение и прозрачность в зависимости от положения мыши и просто со временем. Там много магических чисел. Вероятно все подбиралось наугад. Как это обычно и происходит. И потом они рендерят эту сцену в текстуру, которая передается в уже упомянутый шейдер. Можно было бы на 2D канвасе ее рисовать. Но с трехмерной сценой в таких задачах проще работать, хотя это поначалу кажется контринтуитивным.

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

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

    ilyabond
    @ilyabond
    В яме даннинга крюгера
    Блин, пришлось зарегистрироваться в этом ужасе)

    Задержка помогла:
    document.querySelectorAll("[data-e2e='comment-like-icon']").forEach((el, i) => {
        setTimeout(() => el.click(),  3000)) // По замечанию @Mike_Ro - достаточно трех секунд
    }


    P.s ещё нужно решить вопрос с скроллом (так как комменты добавляются динамически) и с капчей
    Ответ написан
    3 комментария