Задать вопрос
  • В чём разница между статическими либами и пакетами?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Пакет - это набор файлов, распространяемых вместе. В пакете могут быть любые файлы, не обязательно библиотеки.
    $ dpkg -L libfftw3-bin
    /.
    /usr
    /usr/bin
    /usr/bin/fftw-wisdom
    /usr/bin/fftw-wisdom-to-conf
    /usr/bin/fftwf-wisdom
    /usr/bin/fftwl-wisdom
    /usr/bin/fftwq-wisdom
    /usr/share
    /usr/share/doc
    /usr/share/doc/libfftw3-bin
    /usr/share/doc/libfftw3-bin/copyright
    /usr/share/man
    /usr/share/man/man1
    /usr/share/man/man1/fftw-wisdom-to-conf.1.gz
    /usr/share/man/man1/fftw-wisdom.1.gz
    /usr/share/man/man1/fftwf-wisdom.1.gz
    /usr/share/man/man1/fftwl-wisdom.1.gz
    /usr/share/man/man1/fftwq-wisdom.1.gz
    /usr/share/doc/libfftw3-bin/NEWS.gz
    /usr/share/doc/libfftw3-bin/README
    /usr/share/doc/libfftw3-bin/README.Debian
    /usr/share/doc/libfftw3-bin/changelog.Debian.gz
    Как видите, в пакете бинарники, доки и маны.
    $ dpkg -L libfftw3-dev
    /.
    /usr
    /usr/include
    /usr/include/fftw3.f
    /usr/include/fftw3.f03
    /usr/include/fftw3.h
    /usr/include/fftw3l.f03
    /usr/include/fftw3q.f03
    /usr/lib
    /usr/lib/x86_64-linux-gnu
    /usr/lib/x86_64-linux-gnu/libfftw3.a
    /usr/lib/x86_64-linux-gnu/libfftw3_omp.a
    /usr/lib/x86_64-linux-gnu/libfftw3_threads.a
    /usr/lib/x86_64-linux-gnu/libfftw3f.a
    /usr/lib/x86_64-linux-gnu/libfftw3f_omp.a
    /usr/lib/x86_64-linux-gnu/libfftw3f_threads.a
    /usr/lib/x86_64-linux-gnu/libfftw3l.a
    /usr/lib/x86_64-linux-gnu/libfftw3l_omp.a
    /usr/lib/x86_64-linux-gnu/libfftw3l_threads.a
    /usr/lib/x86_64-linux-gnu/libfftw3q.a
    /usr/lib/x86_64-linux-gnu/libfftw3q_omp.a
    /usr/lib/x86_64-linux-gnu/libfftw3q_threads.a
    /usr/lib/x86_64-linux-gnu/pkgconfig
    /usr/lib/x86_64-linux-gnu/pkgconfig/fftw3.pc
    /usr/lib/x86_64-linux-gnu/pkgconfig/fftw3f.pc
    /usr/lib/x86_64-linux-gnu/pkgconfig/fftw3l.pc
    /usr/lib/x86_64-linux-gnu/pkgconfig/fftw3q.pc
    /usr/share
    /usr/share/doc
    /usr/share/doc/libfftw3-dev
    /usr/share/doc/libfftw3-dev/copyright
    /usr/lib/x86_64-linux-gnu/libfftw3.so
    /usr/lib/x86_64-linux-gnu/libfftw3_omp.so
    /usr/lib/x86_64-linux-gnu/libfftw3_threads.so
    /usr/lib/x86_64-linux-gnu/libfftw3f.so
    /usr/lib/x86_64-linux-gnu/libfftw3f_omp.so
    /usr/lib/x86_64-linux-gnu/libfftw3f_threads.so
    /usr/lib/x86_64-linux-gnu/libfftw3l.so
    /usr/lib/x86_64-linux-gnu/libfftw3l_omp.so
    /usr/lib/x86_64-linux-gnu/libfftw3l_threads.so
    /usr/lib/x86_64-linux-gnu/libfftw3q.so
    /usr/lib/x86_64-linux-gnu/libfftw3q_omp.so
    /usr/lib/x86_64-linux-gnu/libfftw3q_threads.so
    /usr/share/doc/libfftw3-dev/NEWS.gz
    /usr/share/doc/libfftw3-dev/README
    /usr/share/doc/libfftw3-dev/README.Debian
    /usr/share/doc/libfftw3-dev/changelog.Debian.gz
    Опять же видим, что dev-пакет содержит файлы, необходимые разработчику - заголовки (.h), статические (.a) и разделяемые (.so) библиотеки.

    Библиотека - это отдельный файл для статической линковки или разделяемый (.so).
    Ответ написан
    1 комментарий
  • В чём разница между статическими либами и пакетами?

    drygdryg
    @drygdryg
    Python-разработчик
    Во-первых, пакет может содержать внутри себя библиотеку, исполняемый файл, либо и то, и другое. Также пакет может содержать в себе любые файлы (например, изображения с обоями для Рабочего стола). В принципе, пакет — это просто способ доставки чего-либо в систему (чаще всего программного обеспечения, конечно же, но не обязательно).
    Во-вторых, если говорить о программах, то большинство дистрибутивов поставляют динамически скомпонованные исполняемые файлы в пакетах (Debian, Ubuntu, Arch Linux и др., за исключением самодостаточных пакетов), поэтому пакет, допустим, с прикладной программой может опираться на другие пакеты с библиотеками (в Debian такие пакеты обычно называются lib*).
    Ответ написан
    1 комментарий
  • В каких сферах IT нужны фундаментальные знания высшей математики?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Щас потихоньку начинают копать Quantum Computing. Там понятное дело тоже фреймворки и языки будут но предметная область такая хитрая что обычные подходы к ней не годятся. Тут точно нужен хороший физик математик.
    Ответ написан
    1 комментарий
  • Где на практике применяются комплексные числа? В каких сферах IT они нужны?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Mp3 кодек оперирует комплексами когда звук сжимает. И вообще ВСЁ что с рядами Фурье. JPEG-сжатие.

    Физика-радиоэлектроника любит комплексы. Соотв любые задачи симуляции радиоэлектроники потянут за собой это.

    В математике как обычно. Если ты не смог посчитать корни квадратного уравнения при D < 0 значит ты - школьник. Любой математик всегда скажет что корень из отрицательного норм извлекается. Соотв корни - комплексные. И соотв тебе еще рано в математику т.к. ты не понял важного обобщения. Вообще ВСЕ числа в математике комплексные. К действительным мы прибегаем лишь в частных случаях (дискретная математика например) когда именно делаем акцент на этом.
    Ответ написан
    1 комментарий
  • Где хранить важные ключи в программе?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Судя по .exe - речь идет о Windows-разработке. Поэтому надо отбросить все сомнения и читать документацию от производителя. Вот что пишет производитель. Есть API:

    https://learn.microsoft.com/en-us/windows/win32/ap...

    Вот есть функция полезная CryptProtectData

    И это будет лучше решение из всего питонского и кросс-платформенного.
    Ответ написан
    5 комментариев
  • Каким образом можно найти отрицательные чиссла в массиве Java?

    xez
    @xez Куратор тега Java
    TL Junior Roo
    Просто перебором.
    Берёте первое число, ищите ему пару.
    Затем второе, третье и т.д.
    Ответ написан
    2 комментария
  • Как оптимизировать базу данных?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Два действия полностью противоречат друг другу.

    Оптимизирую сайт по скорости загрузки

    Добавляем индекс по полю publication


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

    Вообще чтоб дальше продолжать обсуждать - надо задать много вопросов. Что вы делаете вообще? Вы 1 раз загружаете или каждый день будете загружать?

    Это одноразовый запрос
    SELECT COUNT(*)
    или будете каждый день его дёргать?

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Все int я индексировал

    Вот ты чудак. Надо не все индексировать а только те которые оптимизатор запросов может выбрать в плане запроса.
    Ты кстати еще получишь обратную связь в виде замедления update/insert/delete на такой чудо-таблице.
    Оптимизация - это искусство. И тут нельзя так... приходить и ВСЁ индексировать...
    Ответ написан
    Комментировать
  • Как погрузиться в начала/фундамент программирования?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Как построенн язык программирования, например: Как понять, как устроенны ключевые слова; Препроцессорные процессы: define, include и др.; - Я правильно понимаю, нужно опустится на ещё более низкий уровень до ассемблера? - Ассемлер является той фундаментальной сущностью в программировании (не считая машинный код, который и так человек не должен понимать)?

    Лет 50 назад так было. Программист был физик-математик. И он обязан был знать как работает транзистор. Этот был "тот" уровень понимания требований к профессии. Сегодня знания ассемблера уже не являются обязательными. Можно прожить бурную и интересную жизнь будучи синьором-помидором разработчиком но так и не написать ни строчки на асмах. Профессия разделилась на узкие специализации и знать весь стек уже стало настолько трудно что это перестало быть необходимым.

    По второму пункту - я не понял что хотел автор. Хотел достичь какого-то дзена?

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

    Кажется один из авторов SICP сказал примерно следующее. Что современный инженер - это уже не создатель алгоритмов. Он - интегратор. Просто сама индустрия подталкивает к тому чтобы популярным стал язык Go а не Scheme. Хотя c моей кочки зрения Scheme интереснее и умнее, но увы. Прагматизм все решает. Для меня Scheme останется в разделе забавных мозговых экспериментов вроде брейн-фака. Ты решаешь задачу и получаешь от этого эндорфин. Как codewars. Вот такого эндорфина от Go нету. Хотя в резюме такое вписывать бесполезно наверное. Кому нужен Lisp-овед или Schem-щик?

    Кстати кто знает какие курсы в MIT сейчас читают? Поделитесь.
    Ответ написан
    4 комментария
  • Как сделать вложенность кэша?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Ты сам себе создал проблему. Вот какую пользу тебе дает вложенность?

    Бери правило Паретто. Вот если метод method_2 покрывает 80% нагрузки - то кешируй только его а на остальное - забей. Это будет проще и надёжнее чем придумывать какие-то немыслимые ВЛОЖЕННОСТИ которые никакого
    отношения к техникам кеширования не имеют.
    Ответ написан
    Комментировать
  • Ошибка в rust "failed to run command: "qmake" "-query" "QT_VERSION"?

    Geminix
    @Geminix
    Фуллстек nuxt, .net разработчик
    Вроде ж понятно...

    failed to run command: "qmake" "-query" "QT_VERSION"
    program not found
    Ответ написан
    2 комментария
  • Как rsync сжимает при передаче данных?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Просто на сервере дай бог 10 гб свободного места осталось. Не будет ли он на сервере создавать какие то архивы?
    А передать надо много, гб 200

    Можешь отдельно заархивировать кастомным архиватором и порезать на тома и добавить контрольные суммы для восстановления.
    200 Гб - это тот размер когда стоит дополнительно сделать проверки на целостность.
    Ответ написан
    3 комментария
  • Как rsync сжимает при передаче данных?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Не будет ли он на сервере создавать какие то архивы?

    Нет. rsync -z сжимает на лету.
    Из man rsync:
    --compress, -z
                  With this option, rsync compresses the file data as it is
                  sent to the destination machine, which reduces the amount
                  of data being transmitted -- something that is useful over
                  a slow connection.
    Ответ написан
    Комментировать
  • Сетевое обнаружение?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Сетевое обнаружение работает по MAC на уровне широковещательных запросов Ethernet.
    Соответственно, устройства должны быть в одном широковещательном домене сети.
    Какие у них при этом IP-адреса для WinBox абсолютно всё равно.
    Можно подключиться к любому микротику, вручную указав его IP-адрес, если до этого адреса настроена маршрутизация.
    Ответ написан
    1 комментарий
  • Как продолжить скачивание через rsync?

    SignFinder
    @SignFinder
    Wintel\Unix Engineer\DevOps
    Нужно все-го лишь погуглить по "rsync continue upload", если вы не хотите читать документацию к rsync
    Ответ написан
    Комментировать
  • Как глубже вникнуть или систематизировать знания по java?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Расскажи какие вещи ты уже делал на Java в реальных задача.
    Любое обучение или систематизацию всегда лучше привязать к живым а не искусственным задачам.
    К примеру если ты писал авто-тесты и есть задача - ускорить их финал - то тут можно изучать многопоточку
    принительно к авто-тестам.

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

    xez
    @xez Куратор тега Java
    TL Junior Roo
    1. Эти приставки 'I' для интерфейса - моветон.
    2. Интерфейс описывает поведение. У вас никакого поведения не описано, интерфейс, следовательно, вам не подходит.
    Ответ написан
    2 комментария