Задать вопрос
  • Как оформить все свойства книг не через константы?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Рефакторинг introduce constant не является обязательным. Тоесть ты можешь просто в коде писать хардкодом строки если они используются только 1 раз. С точки зрения компиллятора все подобные строки будут константами в блоке констант класса поэтому декларация их отдельно имеет чисто эстетический характер.

    По поводу лесенки из if-else. Здесь можно два рефакторинга. Во первых убрать цепочку методов.
    Вот это
    if (backMessage.getCaption().contains(PZV_NAME)) {
                        whichBook(POD_COVER, POD_NAME, POD_DESC);
    } else if (backMessage.getCaption().contains(POD_NAME)) {

    заменить на
    val caption = backMessage.getCaption()
    if (caption.contains(PZV_NAME)) {
                        whichBook(POD_COVER, POD_NAME, POD_DESC);
    } else if (caption.contains(POD_NAME)) {

    И второе. Вот эта логика может быть сведена к вызову одной функции которая на вход получает атом и на выходе возвращает тройку атомов (tuple или triple). В этом случае логика if-else сводится к конфигурации таблички замен
    и к функции которая просто делает декодирование одного значения в другое.

    static final Map<String,Triple<String,String,String>> = new HashMap() {{
       put(PZV_NAME, ImmutableTriple.of(POD_COVER, POD_NAME, POD_DESC);
       put(POD_NAME, ImmutableTriple.of(KORR_COVER, KORR_NAME, KORR_DESC);
       .......
    }};
    
    Map<String,Triple<String,String,String>> transform(String arg) {
      return map.entrySet()
                    .stream()
                    .filter(x -> x.getKey().contains(arg))
                    .findFirst().get().getValue();
    }
    Ответ написан
    3 комментария
  • Как выдать себя за другого пользователя на сайтах?

    mayton2019
    @mayton2019
    Bigdata Engineer
    На этот вопрос невозможно ответить без понимания того, как сайт проводит установление личности.
    Ответ написан
  • Как добиться знания и понимания в математике?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я в школе изучал математику без доказательств. Тоесть мне просто было достаточно авторитета автора учебника. И мне - инженеру по софту сегодня и этого более чем достаточно. Для кого вообще доказательства очевидны? Вот несколько лет назад была доказана большая Теорема Ферма (за пруфами - поищите сами) но оказалось что она идет просто следствием из другого более сложного доказательства которое понимает не очень много людей на планете Земля.

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

    Инженер - не математик. Инженер просто берет и приспосабливает имеющиеся знания на основании практики и здравого смысла. Ну можно еще добавить немного селекции (генетические алгоритмы) просто как основу для улучшения того что уже есть.
    Ответ написан
    Комментировать
  • Насколько C# подходит для создания ИИ и робототехники?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Только начинающие разработчики считают что 1 язык - на всю жизнь. В реальности сложные проекты - это всегда слоистый торт из разных языков и технологий. Например если вы решили работать в DataScience - то вам нужен язык Python который под капотом вызывает C++ который в свою очередь может вызывать OpenMP на сях для высокрой производительности. И при этом само приложение Python запускается из конвейера например написанного на Groovy и т.д. Стек - длинный. Каждое звено стека обосновано. Стоит на своём месте. Так какой смысл говорить об конкретном языке?

    Лучше говорить о самой проблеме. Какая проблема создания ИИ? Вот этот вопрос реально интересен.
    Ответ написан
  • Как найти расхождения строк в двух txt файлах?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Ты правильно сделал что преобразовал все строки файла в set.

    Там есть готовый метод
    set.difference(...)
    который твою задачу решает. Только надо строки файла преобразовать. Удалить все символы что находятся до ";"
    Ответ написан
    4 комментария
  • Почему греется видеокарта в простое?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Лето. Жара.
    Ответ написан
    Комментировать
  • Перестали грузиться торренты?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я-бы разбил вопрос на 2 части.
    1) Блокировка трекеров. Это основа торрента и если у вас все трекеры недоступны то хрен получишь список сидеров.
    2) DHT-протокол. Ему пофиг на трекеры. И он кажется работает не по DNS а по IP и вобщем-то на него одна надежда когда у вас есть только magnet-link. DHT можно сломать если только зобанить целые страны и блоки IP. Но мне кажется это принципиально невозможно. Иначе надо говорить о создании нового изолированного сегмента Интернета как в Китае.

    Современные торрент клиенты умеют оба метода. Надо посмотреть статистику. Vuze кажется подсвечивает много информации по поводу сколько сидов и даже рисует картинки.
    Ответ написан
    Комментировать
  • Как с помощью ORM сделать запрос на готовую базу данных Nest JS?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У тебя - в тексте вопроса - какая-то страшная путаница. Наверное подключаться надо не к NestJS а к MySQL с помощью TypeORM.

    Вот тут есть пример с подключением https://docs.nestjs.com/recipes/sql-typeorm#sql-typeorm

    И разберись с терминологеий. Нельзя ж так набрасывать просто слова.
    Ответ написан
  • Разный результат работы Python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Как вариант - просто разные версии Python.
    Ответ написан
    Комментировать
  • Поды на ноде переодически запускаются и падают. В чём может быть проблема и как её исправить?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот этот grpc server работает 0 секунд и завершает работу. Надо смотреть его логи почему он завершился. Возможно новая версия - с дефектом.
    Ответ написан
  • Определить название города по широте и долготе?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Какая-то сетевая ошибка. Хз что значит. Предположительно ты пошел на сетевой адрес который не доступен.

    Смотри. Судя по всему geocoder - это просто посредник который обращается к Geo-IP-провайдерам и качает с них информацию. Возможно здесь https://github.com/DenisCarriere/geocoder#providers полный список провайдеров и при вызове метода надо где-то указать либо url либо тип провайдера.
    Ответ написан
  • Обучение базы для OpenCV Python, где изучить?

    mayton2019
    @mayton2019
    Bigdata Engineer
    научить отличать собаку от кота, без прибегания к существующим базам

    Тут есть один нюанс. База котов и собак уже заранее тегирована. Тоесть кто-то проделал колоссальную работу собирая фотки и раскладывая их на 3 кучки или три фолдера с картинками. Коты. Собаки. И черт-знает-что.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если честно у меня - путаница. Трекеры и клиенты - это одни и те-же сущности?

    Kafka - хорошая штука но она любит грамотный дизайн топиков. Какой здесь будет маппинг? Если клиентов - 100 мильонов то вряд-ли кафка выдержит столько-же топиков. Если топик делать один на все события - то нужно как-то партицировать по признакам. По каким?

    Вобщем мало информации. Нужны диаграммы и цифры. Без них такого решения как кафка - нельзя принимать. Иначе это будет просто... безответственно. Тоесть мы посоветовали кафку а дальше - бейся сам как хочешь.
    Ответ написан
    6 комментариев
  • Почему нет данных в хэш-таблице?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А зачем здесь две звездочки?

    typedef struct hash_table {
      int count;
      int size;
      INFO** array;
    }HTAB;


    Мне кажется что 1 уровня вложенности достаточно (массив).
    Ответ написан
    Комментировать
  • Как избежать ограничения числа int в unity?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Обычно int хватает для организации любого вида счетчиков и индексов массивов. Это вобщем-то самый экономный и самый распространенный тип-регистр общего назначения современных CPU. И чаще чего его использование оправдано.

    Что у вас случилось что разрядной сетки не хватило? Может это вещественные вычисления? Тогда нужен Double. Координаты объектов хранить например. Тригонометрию считать.

    И вообще если вы пошли в геймдев - то смотрите. Вот эти все вещи связанные с разрядностью типов надо знать как воинский устав. Это правила хорошего тона.

    Зубрите.
    Ответ написан
    Комментировать
  • Как правильно оформить requests.post запрос?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Завтра все СМС-ки придут.
    Ответ написан
    1 комментарий
  • Обучаюсь языку, как с помощью python собирать данные со сторонней программы?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Для начала нужно посмотреть на каком протоколе эта Кобра работает. Возможно в основе там стоит TCP ну а вообще на прикладном уровне поверх может быть что угодно. Corba/RMI/Soap e.t.c. Надо разбирать PHP приложение и смотреть через какие библиотеки или стандарты-протоколы происходит взаимодействие с Коброй.

    В рамках этого вопросника больше нечего сказать. Тут даже недостаточно одного ответа. Тут - как-бы экспертная система получается. Много вопросов и ответов.
    Ответ написан
    Комментировать
  • Имеет ли смысл хранить в БД информацию о разных разрешениях картинки?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В данной обобщенной постановке база вообще не нужна. У нас есть в одной руке уникальный индентификатор картинки. Например IMG0001. И мы по нему можем сформировать все 3 линки на дисковое хранилище с картинками.
    Ответ написан
    Комментировать
  • Как расчитать шанс вещи от цены?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Линейная регрессия.
    Ответ написан
    Комментировать