Задать вопрос
  • Как писать код? Монолитный .py файл. Или лучше раздельно, импортируя свои же .py, .json, .txt файлы, как в гитхабе?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Большинству людей глубоко наплевать на то как выглядит код программиста. До тех пор пока он - одиночка-фрилансер.

    Как только вы начинаете работать в паре с кем-то, или в команде, или просто хотите поделиться чем-то в форумах или в GitHub - вот с ЭТОГО момента начинается публичный дискурс вокруг внешнего вида.

    Есть такое отдельное понятие - "Эстетика программного кода". Оно - неформализуемо и никто не может дать четких определений какой код эстетичен а какой - нет. Я считаю что только долгий опыт работы в команде с другими людьми позволяет определить для себя эстетику.

    Но стартовой точкой в этом вопросе может быть чтение книги Роберта Мартина - Чистый код. Там описаны достаточно простые и очевидные вещи типа как оформить комментарии к коду или сколько строк должна иметь функция. Но начать с нее стоит. По крайней мере чтобы в приличном обществе выглядеть джентльменом.
    Ответ написан
    Комментировать
  • IDE для СУБД. В чём работать?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Не приживаются они для СУБД.

    IDE-шки. Вот такие дела. Редко когда тебе нужно открывать в Oracle PLSQL Developer десяток PLSQL пакетов.

    Так вообще вместо IDE используют IDE основного языка программирования. В нем и пишут текст. Тем более что 99% он инкапсулирован в ORM.

    Попробуй на сайте JetBrains скачать что-то. И еще DBeaver был. Там удобно каталоги баз вести.
    Ответ написан
    Комментировать
  • Как с MathNet.Numerics уменьшить число коэффициентов у преобразования Фурье?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Игнорируй младшие коэффициенты - вот и будет сжатие. Так оно и работает. Честно-честно.
    Ответ написан
    4 комментария
  • Как отличить векторный графический редактор от растрового?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Почти все современные редакторы умеют работать с векторной графикой. Если есть рисование кистью сплайнов или просто геометрических фигур - то считай уже векторный. В противоположность и Adobe Illustrator умеет фотки в себя затягивать. Тоесть деление это сугубо условное. Как сельхоз-продукция и пром-товары. Я-бы предложил просто найти в википедии и почитать как оно классифицировано там.
    Ответ написан
    Комментировать
  • Утекли данные ipconfig, чем грозит?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Там ничего ценного нет. Мак адреса указывают на производителя оборудования.
    Сетки и DNS могут просто показать кто твой провайдер.

    Остальная инфа достаточно обезличенная. Какие шаги предпринять? :))) Ну можешь
    сходить в супермаркет и купить бейсбольную биту. Что тут еще сказать?

    Сильно больших людей обидел?
    Ответ написан
    Комментировать
  • Как можно улучшить код?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если оставить ключевую информацию то в массиве будет нечто вроде

    const array = [
          ["1", "1", "1"],
          ["2", "2", "2"],
          ["1", "3", "3"]
      ....
        ];

    А остальная логика будет просто view по отношению к этим данным. Туда-де пути к картинкам.
    Ответ написан
    Комментировать
  • Что быстрее поиск по файлу JSON в PHP или в базе посредством MySQL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Недавно я смотрел доклад Бартунова (это один из ведущих разработчиков Postgres в РФ ), вобщем он хвастался, что на поисковых операциях по Json , pg быстрее чем MongoDb.
    Ответ написан
    Комментировать
  • Как лучше выполнять перенос изменений из feature-ветки в develop?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот тут с первых слов у меня уже непонятно

    Регулярно переношу изменения из feature-ветки в develop ветку (та ветка в которую переносятся итоговые изменения и из которой формируются релизы).


    Зачем ты это делаешь? Какова твоя роль? Везде все знать? Если ты лид - сделай code-review отпиши комментарии и пускай отвественный разработчик сам заливает в develop.

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


    Мне кажется у тебя вообще налицо какая-то ненужная активность. Эти чери-пики и сквоши не надо применять для производтсва кода. Я около 7 лет работаю с git и мы просто обходились обычным merge.
    Ответ написан
  • В чем принципиально различие postgres от mysql?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Postgresql - более консервативен. Его можно брать почти для любых проектов. Есть partitioning что свидетельствует о зрелости системы и об Enterprise-ready. Единственное что может быть не очень - это некий кумулятивный эффект от частых inserts/updates который требует вакуума. И со счетчиками транзакций там есть нюанс. Но скорее всего в твоём сегменте разработки PHP/Laravel - тебе будет просто безразлично сущестование вакуума.

    MySQL это лейбл под которым на самом деле могут работать различные engines таблиц. И если анализировать какой-то performance-инцедент то нужно в первую очередь спрашивать с какой опцией таблица создавалась. MyISAM/Innodb/e.t.c. Потому что выбор этого двигателя влиял на какие-то опции скорости и транзакций. Я заменял например в создающих скриптах InnoDb на MyISAM для того чтобы просто быстрее прогрузить 1Тб CSV файл.

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

    Что лично меня раздражает в диалекте My/SQL - так это странного вида кавычки-апострофы. Никогда не понимал зачем это.
    Ответ написан
    Комментировать
  • Как установить библиотеку через pip (возникает ошибка)?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А ну сделай у себя в консоли

    wget https://files.pythonhosted.org/packages/ca/91/6d9b8ccacd0412c08820f72cebaa4f0c0441b5cda699c90f618b6f8a1b42/requests-2.28.1-py3-none-any.whl
    Ответ написан
  • Существуют ли игровые движки работающие с CSS анимацией, а не рисующие на Canvas?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У каждой вещи есть своё предназначение. Например у JavaScript - делать браузерные игры. У заднего прохода - делать дефекацию организма. Но находятся иногда мужчины которые находят анусу необычное применение.
    Ответ написан
    Комментировать
  • Каким образом одна и та же игра может рендериться за счёт разных графических библиотек?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Скорее всего собирается 3 дистрибутива. И кладутся в один каталог. В рантайме игра определяет какое API доступно и загружает соотв. dll-ки.
    Ответ написан
  • Как скачать все файлы лежащие на сайте в статике?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Дело в том что http-протокол не поддерживает команду DIR. Тоесть мы не можем спросить перечень файлов.
    Можем только сказать GET /url когда точно-точно знаем путь.

    Хотя некоторые старые сервера типа Apache поддеживают auto-index mod. Который просто генерит такие html-листинги. Но это опция. Ее могут включать а могут нет. Некоторые поддерживают редирект на ошибку. Но это тоже опция.

    Вот пример такого листинга https://repo1.maven.org/maven2/
    Ответ написан
    Комментировать
  • Как создать папку с помощью докера?

    mayton2019
    @mayton2019
    Bigdata Engineer
    RUN mkdir создает папку внутри docker-image.
    Поэтому ее не видно невооруженным глазом.
    Тоесть это подготовка артифакта дистрибутива а
    не манипуляции с твоими каталогами.
    Ответ написан
  • Можно ли делать так чтобы константный текст брался на этапе "(пре)компиляции" из фаила который не являеся source code?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Совершенно непонятно зачем это надо? Константы можно просто объявлять в исходнике.

    Тут зря автор смешал в кучу теги Go и С++. Это слишком разные философии разработки.
    Я-бы сказал что в Go многие вещи сознательно упрощаются или выбрасываются. И обсуждать
    вот так вот просто через запятую Go и С++ немыслимо.

    Даже термин пре-компилляция уже вызывает такой себе диссонанс. От пре-процессора сознательно
    уходят в современных языках. И на него не стоит обращать внимание. Он - рудимент.
    Ответ написан
    1 комментарий
  • Какова сложность алгоритма?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я обычно оцениваю на глазок просто мысленно предполагая что данных очень много.
    Например строка длиной 2 млрд символов.
    В этом случае 3 линейных поиска по ней (indexOf) дадут нам формулу

    O(n)

    Это в негативном сценарии когда мы не нашли скобочек трех типов.

    Но в позитивном сценарии если мы нашли - начинает работать еще более хардкорная логика
    реплейсмента которая ... ну я не знаю как работает. replace(..) которая под капотом тоже имеет
    свою complexity. Наверное тоже линейную если стоит билдер строк. Получается что линейная вложена
    в другую линейную. Получается квадратичная.

    o(n^2)

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Предположительно BinHex. Но надо проверить все символы.
    Ответ написан
    Комментировать
  • Зачем нужна база данных если можно хранить данные в json файлах?

    mayton2019
    @mayton2019
    Bigdata Engineer
    movchans ваша фраза (заголовок вопроса) просто выдает в вас неопытного разработчика который еще с базой не работал.

    MongoDb помимо хранения json файлов (на самом деле внутри она хранит bson) предлагает опции масштабирования (можно поднимать несколько нодов одной базы) и командную строку запросов. Кроме того можно создавать индексы, по разным полям документа - это коробочная фича Mongo.

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

    По остальным пунктам что написал Roman Kitaev я полностью согласен.
    Ответ написан
    Комментировать
  • Как построчно сравнить два файла txt?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Первое. Тема топика Python + PowerShell. Тоесть непонятно тебе нужно программировать и развивать этот софт или решить задачу 1 раз и забыть. В зависимости от желания - будет разная реализация.

    Второе. Есть коробочные утилиты fc (Windows) diff (Linux) которые такое сравнение делают. Но обычно для исходников и при условии что изменений мало. Почитай про них. Возможно это частично решит твою задачу.

    Третье. Ты хочешь сравнивать одну строку со всеми из другого файла. Это декартово произведение. В данном случае тебе можно сортировать оба файла и тогда одинаковые значения будут кластеризованы рядом. Sort + Diff решают твою беду.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    В науке это называется факторизация или разложение числа на простые множители.

    $ factor 50
    50: 2 5 5

    50 раскладывается на 2 умножить на 5 в квадарте.

    Но ты почему-то решил что надо делить только на 2. Да еще и с каким-то недоказанным округлением.
    Ответ написан