Задать вопрос
  • Как сократить код с подпрограмой?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Исходник стартовал с включения заголовка
    #include <iostream>
    Тоесть поднят флаг С++. А дальше идет типичный С-код. Зачем так?
    По идее надо затаскивать vector и лямбды для суммирования.
    Это было бы идеологически правильно.
    Ответ написан
    Комментировать
  • Как лучше разбить на сущности?

    mayton2019
    @mayton2019
    Bigdata Engineer
    1:M к "серии", и считать что фильмы, у которых больше 1 серии - это сериалы, тогда как быть с сезонами?

    Есть много способов как представлять данные в БД. В схеме Фильм - Сериал - Сезон нет единой правильной модели
    как лучше это хранить. Наверное все зависит от users stories тоесть от хотелок пользователя. Например хочет ли пользователь видеть что СРЕДИ сериала вдруг появляется пропуск в сериях или есть пилотная серия (которую надо выделить отдельно). Или например есть серия в котороой нет озвучки. Вот эти все вопросы надо спросить эксперта. В данном случае - тебя поскольку ты придумываешь себе предметную область.

    Поэтому сразу совет - придумай ее как можно проще. Пускай это будут просто фильмы. 1 таблица с фильмами. Реализуй ее. Посмотри на нее. Я думаю что уже на этом этапе твой пет-проект может стать бесконечно сложным. Еще не доходя до сериалов.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это не похоже на суточные колебания. Вот в момент провала зеленого графика посмотри на количество сидеров по данному торренту. Скорее всего их просто нет или они заняты отдачей не тебе.

    Вообще torrent - это услуга без гарантий полосы пропускания поэтому я-бы не сильно беспокоился по поводу провалов входящей скорости.
    Ответ написан
    Комментировать
  • На обычной ручной колонке типа JBL Flip будет ли заметна разница между Hi-Res 48 kHZ и 96 или 192?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В 20-м веке. Когда вы покупали радио-технику (магнитофон или винил-проигрыватель) такое каждое устройство
    шло в комплекте с книжечкой которая называлась Руководство по эксплуатации. И там кроме того что была
    схема электрическая принципиальная - писали на первой странице целую таблицу технических характеристик.
    Например - диапазон воспроизводимых частот. И я помню что для моего Вега-Стерео там было что-то вроде
    - диапазон от 20Гц до 16кГц
    - уровень шумов и т.д...

    И эта техника считалась ... ну так на уровне. И зак каждую цифру производитель
    отвечал. Тоесть не так как китайцы. А отвечал по натоящему. По ОТК.

    Сегодня например есть звуковушки которые поддерживают частоту дискретизации до 192кГц. Грубо говоря
    максимально слышимая частота звука на выходе может достигать 96 килогерц. Я не знаю ультразвук это или нет
    но вряд-ли вы найдете колонки которые способны воспроизвести подобный звук.

    Скорее всего нет таких колонок. А даже если-бы и существовали то простой эксперимент над вами показал-бы
    что вы не различаете 48кГц и 192кГц. Зачем вообще для современной музыки такая частота - я не знаю.
    Аудиофилы говорят - нюансы. Но я в это не верю. Просто потому-что все на грани статистического угадывания.
    Ответ написан
    Комментировать
  • Как не повторять весь код, если после условного оператора меняется сравнение?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Множитель (-1) или (+1) слева и справа от знака равно может перевернуть смысл сравнения.

    int m = choose == 1 ? 1 : -1;
    return m * ptr_array[13][j] > m * ptr_array[13][j + 1]
    Ответ написан
    Комментировать
  • Как сделать изменения одной колонки?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тебе нужно что-то вроде.

    UPDATE peopletable SET columnName = 'value'  WHERE some_key = 'keyvalue';
    Ответ написан
    Комментировать
  • Ошибка 400 Bad request в Python-пакете aiobalaboba. Как починить?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Возможно балабоба зависит от версии Python и как-то по другому работает с http.
    Попробуй сравни версии. Обновись до последних. И потом надо-бы через
    tcpdump или wireshark посмотреть что ты отправляешь.
    Ответ написан
    Комментировать
  • Задача по математики из 5-го класса которая завела меня в ступор?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Тебе нужна система уравнений где есть X и Y и все легко решается.
    Ответ написан
    Комментировать
  • Какое оптимальное время въехать в проект?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Какое оптимальное время въехать в проект?

    Не бывает оптимального времени. Обычно заказчик и исполнитель вместе решают какое время.
    Но для оценки я рекомендую следующее. Посмотреть backlog проекта. Посмотреть какие критичные
    таски висят. Или блокеры. Посмотреть что у них общее.

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

    Для анализа кода поставте план - график. Например 1 неделя на развертывание проекта.
    Если там специфичное облако - то на изучение облака еще 1-2 недели.

    План график должен включать обязательные пункты который надо пройти. Например если это
    Laravel/react - то вы должны поднять в облаке привет-мир на этом стеке и продемонстрировать
    что он работает. И только после этого переходить к развертыванию проекта.

    Если на проекте есть архитектурная документация, confluence, wiki - то берите пару недель на чтение.
    Выписывайте ВСЕ новые слова на бумажку. По ним задаете вопросы.

    У вас должен быть ментор или консультант который раз в несколько дней должен отвечать
    на ваши вопросы по списку. Ваш план-график должен учитывать риски и внезапные investigations
    результатом которых могут быть НОВЫЕ таски которые вы сами создадите. Например - сдохли
    сертификаты по сроку. Создать новые. Это время. Это тоже таски и они должны быть эстимированы.
    Ответ написан
    3 комментария
  • Как реализовать онлайн трансляцию экрана на Python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Сам по себе Python ничего не транслирует. Но из него можно вызвать утилиты такие как
    * ffmpeg
    * openRTSP
    * cvlc (Concole VLC player)
    и дать им задание что-то транслировать.

    Еще почитай про RTSP/RTP протоколы для общего развития.

    Вообще это задание требует обширных знаний сетей и протоколов. И просто на одном Python тут я считаю нельзя выехать.
    Ответ написан
    Комментировать
  • Как работает преобразование времени в Python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я-бы переписал так.

    # benchmark start
    start = time.time_ns()
    .....
    end = time.time_ns()

    Это избавляет меня от обнуления на 60-й секунде.

    А все остальные преобразования единиц измерений времени в физике я-бы сделал уже при печати на экран.
    Так - правильнее. Никто не придерется что мы теряем точность.
    Ответ написан
    Комментировать
  • Какую среду/язык выбрать для написания управляющей программы, работающей под Windows и Linux?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В задаче есть такая матрица выбора. По горизотнали - технологии работы с USB/COM/TCP/UDP. Их много. Но в простом варианте (если бы ком-порты стояли в железе) то линукс бы видел такие устройства-файлы.
    /dev/ttyS[0123]
    И это было-бы прекрасно. В духе линукс. С переходниками и адаптерами - сложнее но принцип наверное такой-же.

    И второе измерение матрицы - это собсно на чем делать UI. Конешно если автор знает делфи - то пускай берет лазарус и кодит. Но я-бы предложил рассмотреть вариант веб-интерфейса. Это - более современно и вообще веб-интерфейсы сейчас имеют вид - более привлекательный чем Windows95/Delphi лет 20 назад. По картинке с железной дорогой - вроде ничего сложного нету. Сейчас браузерны игры и то посложнее выглядят. Вот как-то так.
    Ответ написан
  • Можно ли роутер заразить вирусом?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Да просто сосед пользуется твоим паролем. Смени и все будет норм. А соседа видно по мак-адресам которые щас подключены.
    Ответ написан
    Комментировать
  • Actix-web, tokio postges. Как установить лимит соедениний?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Почему-то открывается всегда 24 соединения.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Возможно это не простая таблица а Google Big Table. Тогда обычные практики оптимизации SQL могут плохо работать. Я-бы предложил не использовать group by а переписать с window functions если gbt это поддерживает. И посмотреть как партицирована таблица. Возможно под специфичный query стоит сменить partitioning если там он дефолтный или неудачный.
    Ответ написан
    Комментировать
  • Независимый Embedded разработчик - что учить и осваивать, какие компетенции (составляю чек-лист)?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Самое главное - я не могу работать по найму (пытался не раз, сбегаю с такой работы через пару дней), только на себя.

    Вы считаете себя надёжным фрилансером? Как вам можно доверить техподдержку при таком режиме работы? Техподдержка - это офигеть какой отвественный цикл работ. И вам никто не позволит завтра просто так "сбежать".

    Вам надо порешать сначала ваши внутренние проблемы и поменять убеждения. Поддержка - это всегда корпоративная деятельность. Практически всегда. Корпорация - это мини-государство. Никакого либерализма там внутри нет. Внешний либерализм (катание на электросамокатах и распитие кофе) это просто ширма. Корпорации - жесткие. Имеют свой code of conduct. Имеют пакован документов NDA вам на подпись и регулярные митинги как обязательную часть работы от которой никто не укрывается никогда.

    Вобщем думайте про софт-скилы.
    Ответ написан
    Комментировать
  • В чем отличие float/double и decimal?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Там - простое правило. Для денег - бери decimal. Всегда бери.

    А для научных расчетов (там где копейка в младшем разряде роли не играет) - бери float/double.
    Отличаются они разрядностью. Если экономить надо (матрицы чисел) - то бери float (32 bit).
    Если просто нужна вещественная величина в переменной - то бери сразу double. Никто не будет
    возражать.
    Ответ написан
    Комментировать
  • Объединение и монтирование дисков в UBUNTU 18.04.06?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Есть много путей как оптимизировать место на двух дисках. Можно писать видео на диск 1 но периодически по cron раз в сутки делать move на второй диск самые старые файлы по дате.

    На втором - просто подчищать. Такой себе программный retention получается.

    По поводу рейдов. Тут - задача ближе JBOD. Поэтому склеивать безразлично как. Можно LVM+обычная файлова система. А можно и Btrfs.
    Ответ написан
    Комментировать
  • Какой конфигурации нужен ноут для комфортной локальной разработки в Дата Саенс?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В свете последних трендов разработки - тебе нужен аккаунт в AWS или Azure и вот эти штуки


    Мощность "твоей" мясорубки для DataScince не должна иметь никакого значения. Продуктовые pipelines все равно будут работать не на ноутбуках а на специфичном железе с поддержкой TPU.

    Более того. Никакие "твои" специфичные железяки не должны превалировать над качеством модели на выходе.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    const converter = {
      "m":{
        "cm":{k:0.01	},
        "in":{k:0.254	},
        "ft":{k:0.3048	},
      },


    Тут можно улучшить. Если посмотреть на этот JSON документ с "прищуром". То можно увидеть
    полносвязный граф. Например узел футов ("ft") имеет свое ребро в направлении дюймов ("in").
    И все другие также.

    Нужно ли нам описывать так много цифр? Я-бы предложил одну таблицу. Все меры длины отобразить на метры.
    Тогда формула перехода ft -> in будет всегда идти через метрическую систему. ft -> m -> in.

    А ребра графа мы все равно сможем получить но уже путем вторичных расчетов если надо.
    Ответ написан
    Комментировать