• Получится ли сохранить файлы в торрентах или IPFS, на десять лет?

    shurshur
    @shurshur
    Сисадмин, просто сисадмин...
    Не сработает. Даже востребованным у пользователей старым раздачам на том же рутрекере уже требуется поддержка со стороны группы хранителей, а чужие непонятные файлы вообще никто никогда хранить не будет. Ну и нужно понимать, что место под хранение данных - оно по определению не бесплатное. Поэтому мечты о том, что кто-то будет просто так, по доброте душевной, хранить твои гигабайты, крайне наивны.
    Ответ написан
  • Почему php не может подключиться к БД?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Чтобы узнать, почему не работает соединение или запрос, надо настроить РНР так чтобы он отображал ошибки, а mydsqli - чтобы оно бросало исключения.
    То есть код должен выглядеть вот так

    <?php
    // видеть все ошибки!
    ini_set('display_errors',1);
    error_reporting(E_ALL);
     // подключаем настройки
    require_once 'connect.php';
    
    // включаем режим информирования об ошибках
    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
    // подключаемся к серверу
    $link = mysqli_connect($host, $user, $password, $database);
    // не забываем установить кодировку, чтобы не было ошибок с кракозябрами
    $mysqli->set_charset('utf8mb4');
       
    // выполняем операции с базой данных
    $query ="SELECT * FROM foo";
    $result = mysqli_query($link, $query);
    // дальше делаем что нужно
    
    // и кстати, в большинстве случаев закрывать подключение не надо


    ЗЫ. На боевом сервере ошибки на экран выводить конечно не стоит, а их надо писать в лог (собственно, именно поэтому все эти die - это ужас). И на боевом сервере display_errors надо отключать, а log_errors наоборот - подключать.
    Если совсем не можешь найти, где у сервера висит лог ошибок, можешь задать свой собственный, с помощью функции ini_set('error_log','/путь/к/файлу');. Но только размещать его надо разумеется в папке недоступной пользователям сайта


    Если же говорить о конкретно этой проблеме, то это очень забавная ошибка, в которой смешалась куча старого карго культ кода, который и сам по себе использовать не стоит, и вдобавок он здесь написан неправильно.

    Если разобраться, то код or die("Ошибка1 " . mysqli_error($link)); очень смешной (это не к тебе претензия, никто не ожидает от тебя понимания таких тонкостей, которые не то что новички, а половина здешних "кураторов" не понимают).
    Что тут происходит?
    слово or die (которое на самом деле вообще нельзя никогда писать) пишут тогда, когда ожидают что в переменной $link будет значение false. Но если в $link будет false, то тогда её бессмысленно подставлять в mysqli_error. Именно поэтому для получения ошибки соединения в мускули есть отдельная специальная функция.

    Но как я говорил выше, применять её не следует, как и or die.
    Ответ написан
    2 комментария
  • Антивирус Касперского встраивает в код сайта свой JS-скрипт и нарушает работу сайта?

    @cheeroque
    как можно решить эту проблему?

    Не пользоваться антивирусом Касперского, например. Тем более бесплатным. Вообще не вижу никакого смысла в дополнительных антивирусах, когда есть Windows Defender.
    Ответ написан
    7 комментариев
  • Mobile only дизайн?

    approximate_solution
    @approximate_solution
    JS Developer. Angular\React\Vue\Ember
    а на десктопе используется фактически мобильная версия

    Что?

    Покажите мне мобильную версию сайта, которая не "разворачивается" контентом для экранов 4к \ 27 дюймов. Хочу посмотреть на этот шедевр дизайна.
    Ответ написан
    2 комментария
  • Почему многие крупные сайты тормозят по самые помидоры?

    @Asapin
    В свободное время ковыряюсь с Rust и Wasm
    Добавлю к вышесказанному: это крупные ритейлеры, которые конкурируют между собой в первую очередь товарами, ценами, и сервисом. Вот серьёзно, кто навсегда перейдёт от мвидео к эльдорадо (или наоборот), только из-за того, что у одного из них сайт на 2 секунды быстрее загружается?

    И порог входа в индустрию очень высокий, что бы опасаться конкуренции с новичком, у которого сайт загружается мгновенно.

    Но при этом они не достаточно крупные, что бы оптимизация загрузки позволила сэкономить большие деньги.

    А в случае с Амазоном - у них тем более нет конкурентов. И пока они будут поддерживать сайт на достаточно приемлемом уровне, никуда пользователи от них не уйдут (я про торговлю, а не про AWS)
    Ответ написан
    3 комментария
  • Почему многие крупные сайты тормозят по самые помидоры?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Все очень зависит. Медленно отдавать данные может бэк, или какие-то его части, медленно может в принципе работать ваше интернет соединение, может фронт жрать как не в себя, могут тормозить внешние ресурсы.

    7 баллов из 100

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

    Для крупного бизнеса, есть более весомые метрики и требования, чем только производительность. Например безопасность, всякие PCI DSS, обработки платежей, системы антифрода, синхронизации между складами, логистика и куча всякого другого, о чем конечный пользователь даже не задумывается.

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

    nki
    @nki
    bezkart.ru готовая система лояльности
    Идеи нельзя запатентовать.
    Ответ написан
    Комментировать
  • Как верстать доступные сайты?

    MrDecoy
    @MrDecoy
    Верставший фронтендер
    То, о чём Вы спрашиваете, официально называется WAI-ARIA.
    Тут можно скачать бесплатно экранного диктора и с помощью него тестировать свои сайты, осуществляя навигацию по ним с помощью табуляции, а так же открывая специальное меню с помощью горячих клавиш (командная кнопка приложения, которую назначите, по умолчанию ins+f7, или f6? Не помню уже точно :-) )

    Доклады Вадима Макеева на ютубе:
    https://www.youtube.com/watch?v=MWJKwn_gKR4
    https://www.youtube.com/watch?v=ssJsjGZE2sc

    Если действительно умеете соблюдать семантику, то, скорее всего, Вы уже сделали достаточно.
    Рускоязычные ресурсы по доступности:
    https://weblind.ru/
    specialbank.ru/guide (В данный момент чёт не работает, но должен)
    Есть курс, где учат именно этому: https://kurmak.info/
    Статья на хабре: https://habr.com/ru/post/40730/ (там внизу есть полезные ссылки)
    Тут можно найти информацию по этому вопросу, в том числе перевод статей из первой ссылки англоязычных ресурсов

    В подкасте Веб-стандарты упоминается об этом очень часто. Тут можно прослушать все выпуски, а так же покопаться в выпусках и поискать упоминания доступности и статьи про это.

    Есть англоязычные ресурсы
    Про доступные компоненты: https://inclusive-components.design/ (нажимаете в хроме справа сверху "перевести страницу" и профит)
    Есть спецификация: https://www.w3.org/TR/wai-aria-1.1/#usage (аналогично, перевод в браузере и профит)
    MDN: https://developer.mozilla.org/en-US/docs/Learn/Acc...
    Ответ написан
    1 комментарий
  • Насколько полное изучение Java c работой над реальными проектам поможет php программисту в его работе?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Несмотря на то что в вопросе немного каша, а в ответах - ад, ответ на вопрос, в общем-то, очевидный.

    В первую очередь с точки зрения простой житейской логики. Есть возможность? Надо воспользоваться. Вылезти из-под своей коряги посмотреть на неё со стороны всегда полезно, в любом деле.
    Возможность узнать что-то новое - всегда полезна. Может быть ты и вправду, как тут вещают некоторые ораторы, проникнешься омерзением к пхп и пойдешь писать на яве.

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

    Хайлоад же проекты - это из немного другой области. Тут идет откат скорее в обратном направлении. Это как с денормализацией - БД должна быть нормализована, но из соображений производительности иногда приходится денормализовывать. ПОСЛЕ того как нормализовал.
    SOLID помогает делать большие проекты управляемыми. Но когда большой проект сталкивается с высокими нагрузками, иногда приходится жертвовать принципами ради производительности. Но тут главное, опять же, не путать направление: СНАЧАЛА делаем правильный дизайн, и только потом в критических точках снижаем накал абстракции, переходим на более низкий уровень. Самый наглядный пример - ORM, когда критические запросы переписываются на чистый SQL.

    Ну и пройти "полный курс" не имеет ничего общего с "полным изучением". С полного курса изучение всегда только начинается.
    Ответ написан
    Комментировать
  • Куда расти, когда везде сложно?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    Пойдите в управдомы (с)
    Ответ написан
    Комментировать
  • Можно ли быть фронтендером в 17?

    GavriKos
    @GavriKos
    Боюсь 12 часов в день будет мало
    Ответ написан
    Комментировать
  • Есть ли сообщество начинающих программистов-единомышленников?

    tundramani
    @tundramani
    русскоязычные люди (бывшие советские граждане) не способны создавать сообщества
    это наша национальная черта - мы не умеем совместно жить и работать
    когда-то давно в ссср могли но сдулись и деградировали
    и до ссср в 1917м государство тоже самоубилось как в 1991м

    например здесь на тостере хорошо помогают
    но тут нет нормального полноценного сообщества
    это сообщество индивидуалистов атомизированных

    хорошее сообщество это община, как семья, как родня
    где старшие заботятся о младших, где стимулируют талантливых

    русская общинность исчезла лет 50 назад
    последний рывок был - индустриализация, война и послевоенное строительство
    и всё, люди из общинных патриархальных деревень были переселены в города, и люди разучились жить

    и всё так потому что в современном обществе главное это деньги
    не творчество наука и изобретение и тд
    всё измеряется деньгами
    деньги это высшая ценность
    это культ бабла и потребления в котором человек человеку волк
    люди стали похожи на паразитов пожирающих биосферу

    с другой стороны ты ничем не ограничен - создавай любую социальную платформу и программируй сообщество
    просто большинство людей тупо не понимают как это делать
    некоторые даже скажут - фу! как можно программировать людей!
    да, люди программируются через обучение и воспитание
    и сообщество программируется через идеологию и закон

    это называется социальное программирование

    некоторые считают что нельзя программировать людей и любые идеологии должны быть запрещены - это философия одноклеточных анархистов-либералов-нигилистов-демократов, то есть невежественных атомизированных людей которых теперь большинство
    Ответ написан
    44 комментария
  • Как избежать повтора инклюдов в ООП PHP?

    @eandr_67
    web-программист (*AMP, Go, JavaScript, вёрстка).
    Во первых, в современном коде файлы никто не инклюдит - много лет назад для автоматической загрузки классов придумали https://www.php.net/manual/ru/language.oop5.autolo.... И во всём коде сайта остаётся 2-3 include, один из которых - внутри генрируемого composer'ом автозагрузчика.

    Во вторых, все современные фреймворки имеют единственную точку входа: файл index.php, которому передаются все обращения к сайту. В этом файле производятся подключение конфига, и инициализация фреймворка. После чего управление передаётся роутеру, который разбирает URL запроса и передаёт управление нужному классу-контроллеру.

    В третьих, для автоматического создания объектов с автоматической же передачей конструктору нужных данных (в том числе и конфигурации) и исключения дублирования создаваемых объектов давным-давно придумали контейнеры внедрения зависимостей (DI) https://elisdn.ru/blog/116/psr7-framework-container (советую посмотреть все уроки этого цикла).
    Ответ написан
    23 комментария
  • Как отслеживать онлайн/офлайн пользователей в собственном расширении Google Chrome?

    @antonwx
    Да всё очень и очень просто на самом деле, никаких отслеживаний сложных даже и не надо. У вас же в расширении есть авторизация? Ну вот и аннулируйте все предыдущие сессии при входе. Таким образом больше одной сессии в принципе будет невозможно создать.
    Ответ написан
    5 комментариев
  • Как улучшить программу с помощью ооп?

    Tim-A-2020
    @Tim-A-2020
    Просто отрендерить данные достаточно этого
    Ответ написан
    4 комментария
  • CMS на JavaScript Node Vue MongoDB как вам такая технология?

    DevMan
    @DevMan
    этих технологий - 100500 и ещё тележка.
    не нужно спрашивать мнения, нужно самому себе ответить: мне подходит или нет.

    цмс есть практически на любом из языков. даже на экзотике (для веба) вроде плюсов.
    но нужно трезво смотреть на вещи: для чего она мне и что я от неё хочу.
    Ответ написан
    Комментировать
  • Как правильно создавать документы для многостраничника?

    firedragon
    @firedragon
    Не джун-мидл-сеньор, а трус-балбес-бывалый.
    /uslugi.html - делаете папкой и кидаете туда index.html
    и
    /uslugi.html/auto - то же папка и тоже Index.html
    Ответ написан
    5 комментариев
  • Как защитить локальное веб-приложение от взлома(ключа продукта)?

    CityCat4
    @CityCat4
    Внимание! Изменился адрес почты!
    Никак. Защитить можно то, на что можно повлиять. На распространение ключей в тырнете Вы никак не повлияете.
    Ответ написан
    2 комментария
  • Как подключить синтез речи к сайту?

    vabka
    @vabka
    Токсичный шарпист
    У Yandex speech kit есть api.
    Вы можете к этому api обращаться, а потом при помощи js воспроизводить сгенерированную речь.
    Тк в speech kit тарификация идёт за количество - лучше кэшировать результат для всех неизменённых текстов.

    UPD: но вообще не вижу смысла в этом. В большинство браузеров уже включена такая функция совершенно бесплатно. Кому это реально надо (например слепым) - уже и так пользуются всякими разными экранными дикторами. Лучше озаботьтесь тем, чтобы экранные диктормы могли корректно прочитать разметку вашего сайта.
    Ответ написан
    Комментировать