• Почему dotnet приложение работающее как сервис в Ubuntu 16.04 не может открыть SQLite БД?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    пользователь www-data имеет права на чтение базы?
    ls -la /var/myapp
    Ответ написан
    Комментировать
  • Полезно ли знание Pascal?

    @stul5tul
    Знание языка программирования - это то же самое, что знание клавиатуры или умения закрывать окна программ, пользуясь крестиком.

    Ничего такого умного в этом нет.

    Важно понимать алгоритмы, паттерны и пр. концепции. А они инвариантны относительно языка. Их вполне можно изучать на примере Pascal или на примере Go.

    Конкретно по Pascal - он относится к самому распространенному классу языков программирования. Поняв принципы программирования в Pascal вы легко поймете принципы программирования в C/С++/JavaScript/Python/PHP/C#/Java/Swift/Ruby/Go/Rust и пр. Эти языки очень похожи.

    Более того, Pascal - это язык со статической типизацией и ручным управлением памятью, что полезно для обучения так как язык вам показывает вам ваши ошибки и позволяет понять концепцию управления памятью.
    Ответ написан
    Комментировать
  • Какой алгоритм выгрузки данных с сервера лучше?

    @d-stream
    Готовые решения - не подаю, но...
    В больших проектах вот прямо такой задчи скорее всего не будет. Даже иногда обратные задачи возникают - "как не дать менеджеру украсть всю клиентскую базу")

    А в остальном - в общем-то "все и сразу" несколько неестественно. Один из вариантов - репорты. То есть формирование отчета по нужному шаблону и критериям. Притом критерии могут быть разные - то "активные в этом месяце", то "уже полгода не покупающие", "накопленные суммы и среднемесячные объемы".

    Ну и "большие" проекты - это в том числе и надежные каналы связи - то бишь даже если тянется десяток гигов - сбой - это чп
    Ответ написан
    2 комментария
  • Какую операционную систему использовать для raspberry pi 4 4gb если я хочу держать на ней web сервер?

    @dimon5gorsk
    Какую хотите. Хоть Распбиан, хоть Армбиан, хоть что еще найдете.

    Но, учитывая что вы задаете такой вопрос, возьмите Распбиан - там хоть форум большой и инструкций много.
    Ответ написан
    2 комментария
  • На ком лежит натяжка шаблона?

    DevMan
    @DevMan
    как договоритесь, так и будет.
    четкого и однозначного деления нет.
    Ответ написан
    Комментировать
  • Как найти библиотеки/софт, которому можно доверять (особо: PHP, JS)?

    @SODINNER
    С чего ты взял что твой код будет лучше и безопаснее? Обычно даже наоборот. Библиотеки - подддерживают десятки или сотни программистов, улучшают, фиксят баги и уязвимости.
    Тебе надо самому тестировать свой продукт, идеальной системы без дыр, которую невозможно взломать, просто несуществует. Дело лишь в том, как много усилий и затрат надо потратить на взлом проекта и будет ли оно того стоит, чтобы за это кто-то взялся.
    Ответ написан
    3 комментария
  • Как найти библиотеки/софт, которому можно доверять (особо: PHP, JS)?

    @rPman
    Надежность бывает разная - кто то говорит об отсутствии ошибок в коде, а кому то нужна надежность от бекдоров.

    Только аудит кода, личный или наемный сторонний специалист/компания, могут дать хоть какие то гарантии, все остальное:
    молиться


    Напоминаю пример - проект криптокошелька (кажется расширения для браузера, если не ошибаюсь для EOS) был атакован одним из разработчиков используемой библиотеки, т.е. пока проект разрабатывался все было ок, как только стал использоваться - злоумышленник добавил в код воровство приватников и после того как разработчики расширения в очередной раз выпустили обновление - потырил кучу денег.
    Ответ написан
    3 комментария
  • Как улучшить page speed?

    Chefranov
    @Chefranov
    Новичок
    Вам же Google по порядку пишет что делать, беретесь за список и делаете по шагам. Чудо-плагинов нет, все ручками. Плагины могут помочь с кешированием или оптимизацией картинок, а вот с уменьшением DOM узлов или долгим выполнением JS уже нет. Надо вручную тему ковырять.
    5eccfe8cda0c8728972169.png
    5eccfe92c1054280220183.png
    Ответ написан
    Комментировать
  • Почему ошибка в выводе (golang)?

    EvgenyMamonov
    @EvgenyMamonov Куратор тега Go
    Senior software developer, system architect
    Он не выводит %
    % - это скорее всего уже ваш шел выводит.
    Добавьте код перевода строки "\n" в конец вот так fmt.Printf ("Hello %v\n", x) и будет то, что вы хотите
    Ответ написан
    Комментировать
  • Имеет ли телефон скругленные углы? если есть, то узнать радиус?

    hzzzzl
    @hzzzzl
    есть трюк для определения айфоновской "челки"
    https://css-tricks.com/the-notch-and-css/
    Ответ написан
    Комментировать
  • FreeRTOS: какие правила хорошего тона?

    bullitufa
    @bullitufa
    электронщик программист (микроконтроллеры и PC)
    Прежде всего смотрите на RTOS (любую) как на инструмент решения Вашей задачи. У любого инструмента есть описание: Курниц (вполне себе актуален и сейчас) и офф мануал в pdf (по-моему бесплатно дают).
    Правильно пользоваться ОС это значит понимать:
    1) разницу в примитивах синхронизации (очередь, мьютекс, семафор) когда и где ими пользоваться
    2) как задавать размер стека и приоритет задачам
    3) что делать в прерываниях и что делать в задачах (в том числе как правильно задавать приоритеты прерываний)
    Это первое что пришло на ум.

    Мне лично, после перехода на ОС, пришлось немного перестраивать мышление при написании кода:
    1) ты никогда не знаешь когда выполнится код в одной задаче по сравнению с соседней задачей.
    2) выполнение задачи могут прервать другие задачи и прерывания
    3) если задача куда-то пишет, а другая читает - значит их нужно синхронизировать
    и т.д.
    Удачи!
    Ответ написан
    1 комментарий
  • Какие есть виды угроз веб-серверу?

    inoise
    @inoise
    Solution Architect, AWS Certified, Serverless
    Стоит познакомиться с OWASP)
    Ответ написан
    Комментировать
  • Почему mikrotik стал пускать по ssh без пароля, и пишет что пароль взломан?

    @KriosDezer
    Роутерос 6.20 в 2014 году вышел. Проходной двор щас твой микротик.
    Ответ написан
    1 комментарий
  • Почему mikrotik стал пускать по ssh без пароля, и пишет что пароль взломан?

    @Myr4ik
    Проверь /system note print. Вероятно, там ты найдешь свое сообщение с "DEVICE HACKED..."
    Учитывая, что "На маршрутизаторе умышленно был выставлено простой пароль...", вполне очевидно, что пароль подобрали, удалили его для учетки "admin" и оставили сообщение в разделе "/system note".

    Дело раскрыто)
    Ответ написан
    3 комментария
  • Аналог top только для сети?

    @Odmino
    iptraf
    Iftop
    Nethogs
    Nagios
    Ответ написан
    Комментировать
  • Способствуют ли СУБД экономии ресурса жесткого диска по сравнению с хранением (небольшого количества) данных в json-файлах?

    gbg
    @gbg
    Любые ответы на любые вопросы
    мы должны перезаписать весь файл целиком
    Если смотреть с этой стороны, то да, что JSON, что XML - абсолютно дурацкие форматы, когда речь идет о хранении данных в процессе их обработки - стоит поменять одно поле, и нужно переписывать весь хвост файла, так как все записи имеют переменную длину.

    С другой стороны, СУБД хранят свои данные в так называемых страницах, размер которых, как правило, кратен размеру кластера на жестком диске. Следовательно, изменение одной записи приведет только к перезаписи группы страниц, относящейся к этой записи, но не к перезаписи всей БД.

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

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

    То есть да, хранить данные в СУБД оптимальнее и быстрее. Еще там есть схема данных, которая проследит за их целостностью, а также функционал фильтрации и агрегации, которые не придется писать заново.
    Ответ написан
    Комментировать
  • Как побороть сонливость и апатию в течение дня?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Перестать играть по ночам :) Нормализовать режим - спать ложиться вечером, а не под утро, вставать утром, а не под вечер :)
    (Эх... у меня никак не получается следовать этому совету...)
    Ответ написан
    1 комментарий
  • Почему дропается база Sqlite на heroku?

    @DollaR84
    На heroku нельзя использовать файлы, так как используется виртуальная файловая система, которая минимум раз в сутки перезапускается. Об этом они сразу предупреждают в описании. На heroku предоставляется база даже в случае бесплатного доступа для обучения, правда всего 5Мб вроде в пакете hobby-dev. Остальные варианты за деньги также можно. Если же вам нужно обязательно использовать файл sqlite - то тогда надо искать другой хостинг, heroku не подойдет.
    Ответ написан
    5 комментариев
  • Как правильно хостить и проигрывать видео в 2020?

    ValdikSS
    @ValdikSS
    То есть получается, что отдача одним файлом и браузерный декод, вышли намного эффективнее чем то, что мы делали через HLS. ¯\_( ツ)_/¯
    Разумеется.
    HLS для VoD используют в двух случаях:
    1. Если нужно, прямо необходимо, автоматически подстраивать качество видео, не выбирая его руками;
    2. Если нужно шифровать куски видео для каждого клиента индивидуально (DRM).

    В остальных случаях, особого резона использовать HLS/DASH нет, т.к. для воспроизведения в браузере он требует media source и javascript-плеер, а обычное HTML5-видео — нет.

    Мы посмотрели кучу стриминговых сервисов, большая часть из них отдавала все свои стримы в формате m3u8, и никаких проблем при этом люди не испытывали. Соответственно назрела куча вопросов о том, как таки стоит делать и в чем могла быть ошибка и как это исправить на будущее.

    Чтобы понять, в чём могла быть ошибка, нужно хотя бы получить какой-то отладочный вывод, или повторить ошибку.
    Во-первых, стандарта HLS «два»: ранний допускает использование контейнера MPEG-TS (.ts), более поздний добавляет поддержку .mp4. MPEG-TS поддерживается лучше, и проще в использовании и на этапе нарезки.

    У меня однажды были точно такие же симптомы, что у вас. Оказалось, что на домене осталась старая DNS A-запись, указывающая на неработающий IP-адрес уже несуществующего сервера. И всё, на удивление, работало, и работало достаточно стабильно, но периодически поток прерывался с ошибками.

    Сложно делать предположения без отладочных данных.

    1) Как правильно хостить файлы на сервере? Нужна ли разбивка при помощи HLS\DASH? Где-то видел что эти технологии нужно использовать в паре, так как каждая из них имеет свою браузерную поддержку.
    Для видеофайлов не требуется какой-то особый подход к размещению на диске. HLS поддерживается только мобильными браузерами (многими, но не всеми), а DASH не поддерживается никакими современными браузерами. Вам в любом случае придётся использовать javascript-плеер, который самостоятельно будет собирать поток из HLS/DASH и воспроизводить через media source, поэтому принципиальной разницы нет. Использовать и HLS, и DASH одновременно точно ни к чему.

    2) Должны ли быть на сервере какие-то специфичные настройки, для эффективной отдачи статического медиа-контента?
    Да не особо. Так как у вас многогигабитный канал, можно попробовать настроить сетевую подсистему (если речь о Linux), а именно увеличить TCP-буферы, буферы отправки и получения, количество conntrack-соединений (может, ошибки соединения возникают по причине лимита conntrack? В dmesg заглядывали?).

    3) Медиа-плеер. Возможно, причина ошибок связана с плеером, который использовали на клиенте?
    Может, безусловно. Плееры содержат достаточно сложный код: парсеры и демуксеры контейнеров, работа с HLS, media source, совместимость с разными браузерами.

    Например, в этом проекте, люди заходили с телевизора, а на tizen flowplayer не работал, от слова совсем.
    Рекомендую попробовать clappr.io — один из немногих, корректно работающих на устаревшем браузере Blackberry.

    4) Шифрование\защита файлов. Как по мне отдача чистых mp4 файлов, небезопасна от слова совсем.
    Зачем нужно защищать ваши файлы, если вы и так их проигрываете? Может, следует подумать о людях и об удобстве просмотра, и предоставить ссылку, которую можно открыть в нормальном видеоплеере, или скачать фильм в виде файла? Не понимаю эту дурацкую тенденцию.
    Ответ написан
    2 комментария
  • Как пакетно скадрировать фотографии по лицу?

    DarkWood
    @DarkWood
    Из бесплатного вот это нашлось: https://sourceforge.net/projects/snfacecrop/
    Ответ написан
    Комментировать