• Почему Python не видит файлы в Linux как в Windows?

    Vindicar
    @Vindicar
    RTFM!
    Если файл лежит в папке со скриптом - надо открывать его, используя путь к пкапке со скриптом, а не надеяться на то, что текущий каталог совпадёт. Под виндой тоже всё зависит от способа запуска скрипта.
    Так что читай про sys.argv[0] и модуль pathlib. Пригодится.
    Ответ написан
    2 комментария
  • Почему запрос из постороннего источника заблокирован?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Убедитесь, что ваш сервер правильно отвечает на запросы OPTIONS. Добавьте OPTIONS в список Access-Control-Allow-Methods.
    CORS Preflight
    Ответ написан
    4 комментария
  • Фреймворки для кросс-платформенной разработки. Практикуют ли переписывание под разные платформы?

    DevMan
    @DevMan
    например тот же ксамарин.

    а вообще практика обычна - ядро пилится на одном, гуишки на нативе под платформу.
    Ответ написан
    4 комментария
  • Фреймворки для кросс-платформенной разработки. Практикуют ли переписывание под разные платформы?

    @res2001
    Developer, ex-admin
    Под плюсы довольно много кросс-платформенных библиотек для GUI, самая известная, видимо, Qt.
    Сам язык и его стандартная библиотека вполне кросс-платформенны. Но в разных компиляторах и в разных реализациях стандартной библиотеки могут быть свои нюансы.
    Ответ написан
    Комментировать
  • Как создать динамичный поддомен?

    @maksam07
    И какая максимально-возможная длинна поддомена?

    Максимальная длина доменного имени со всеми поддоменами не может превышать 255 символов.

    Учитывайте, что в домене еще разрешены определенные символы. Просто "юзернейм" не подойдет, его нужно будет дополнительно отфильтровать под требования адресной строки
    Ответ написан
    Комментировать
  • Безопасен ли OpenAPI в FastApi?

    @Everything_is_bad
    Нет никаких "серверов OpenAPI", это обычный CDN, ну и ничего не мешает держать эти файлы у себя. https://fastapi.tiangolo.com/how-to/custom-docs-ui...

    После неоторых раздумий и проверок, появилась вероятность что запросы к чужому серверу делаются ради получения странички и стилей, но я не верен. Все еще жду ответа по безопасности и отправляемым данным.
    ну если ты с таким простым не справился, как ты хочешь доказывать что-то про "по безопасности и отправляемым данным"? Будешь отвечать, что тебе на этом сайте сказали, что документация безопасна или как?
    Ответ написан
    1 комментарий
  • Почему у черной дыры есть электрический заряд?

    Vindicar
    @Vindicar
    RTFM!
    Причина раз: правило сохранения заряда. Электрический заряд нельзя создать и уничтожить, только перераспределить в пространстве.
    Причина два: с точки зрения внешнего наблюдателя тело будет падать в чёрную дыру за бесконечное время. Его влияние на окружающую вселенную - например, испущенный свет - будет бесконечно ослабевать, но никогда не станет нулевым. При этом с точки зрения падающего тела, падение займёт очень даже конечное (и не слишком большое) время. Относительность - она такая.
    Ответ написан
  • Что начать читать?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    Сейчас меня будут бить

    Лично я бы посоветовал бы вас начать с C++. Сразу кажу, не из-за того что... Да чёрт его знает. В двух словах. Питон отличается от других языков программирования (Императивно - Декларативных), так что не очень хороший старт. Почему? Потому что у вас будет направление только Питон и, масимум Реакт. Я НЕ ГОВОРЮ ЧТО ЭТО ПЛОХОЙ СТЕК.

    Для примера, почему я предлагаю начать с C++. Вы детально разберёте работу с памятью, типами данных, структурами и алгоритмами. Отсюда у вас буде уже очень мощная база для выхода куда угодно, та хоть в микроконтроллеры. Вообще отсюда можно идти уже во многих направлениях, C#, php, Java и т.д.

    Но опять же, это моё субъективное мнение, что я считаю C++ лучше чем Python

    UPD: да и C++ могли лучше прокачивает чем Python. На Python обычно очень много школьников начинают, на C++ работают инженеры)) Илон Маск начинал с программирования на C++ )))
    Ответ написан
    21 комментарий
  • Что начать читать?

    Adamos
    @Adamos
    Но вообщем, все это мне жутко надоело, и теперь я хочу стать IT-инженером.

    Это всё равно, что хотеть быть инженером, вместо того, чтобы что-то проектировать или хотеть быть писателем, вместо того, чтобы писать (с)

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

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    Обработчиков у вас в любом случае 200 вешается.
    Вся разница в том, что в первом случае они ссылаются на двести функций, а во втором на одну.
    Создание функции требует определённых ресурсов, поэтому оверхед есть. Будет ли он заметным — это другой вопрос. Ответ на него зависит от того, что на самом деле в вашем коде происходит. На компьютере вы, скорее всего, разницы никогда не почувствуете, а вот на очень слабом телефоне при огромном количестве функций может начать тормозить.

    P.S. Проще использовать делегирование в таких случаях.
    Ответ написан
    Комментировать
  • Как сделать функцию ping?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    1 комментарий
  • Как выявлять показатели (логи, метрику, дейтсвия пользователя) в приложении?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Это называется метрики приложения.
    Реализовать можно несколькими способами, в зависимости от требования:
    - Для онлайн показателей (количество ошибок приложения, кол-во активных пользователей) можно реализовать через счетчики - грубо говоря, приходит пользователь -> увечиличиваем счетчик
    - Для статичтических данных - нужно делать запросы в БД, т.к. онлайн такое вряд-ли реализуется (приложение может рестартануть и метрики потеряются) - это SQL (если данные в реялционке) или язык для своего хранилища

    Чаще всего вижу такое решение:
    - Приложение отслеживает внутрениие метрики и отдает их в Prometheus формате
    - Prometheus приложение собирает эти метрики
    - Grafana получает метрики из Prometheus и строит по ним дашборды
    - Grafana делает запрос в БД для получения статистики и строит по ним дашборды

    В общем, смотри пару Prometheus/Grafana

    P.S. анализ логов для получения метрик - плохая затея, не надо так
    P.P.S. метрики, логирование, действия пользователя и т.д. - в общем случае называется observability - возможность понимать что происходит в приложении/системе и т.д.
    Ответ написан
    Комментировать
  • Где хранить docker images после сдачи проекта?

    ky0
    @ky0
    Миллиардер, филантроп, патологический лгун
    Зачем хранить образы после сдачи проекта? У вас есть Dockerfile, в случае чего ничего не стоит развернуть всё заново.

    Если же вы про какие-то сакральные данные - как их хранить, после сдачи проекта решает клиент. Тратить на это свои деньги, конечно же, не стоит.
    Ответ написан
    2 комментария
  • Как сделать скачивание файла через js?

    yarkov
    @yarkov Куратор тега JavaScript
    Помог ответ? Отметь решением.
    А завтра я захочу чтобы файл с моего сайта сразу в C:/windows/system32 молча сохранялся, минуя загрузки. Вам норм будет?
    Дурацкий вопрос и хотелка такая же.
    Ответ написан
    3 комментария
  • Как понять эти селекторы?

    Get-Web
    @Get-Web Куратор тега CSS
    Front-End Developer
    К элементу у которого есть оба класса:
    <div class="class-1 class-2">
        Some text
    </div>

    Если бы между ними был пробел .class-1 .class-2 тогда стиль применялся бы к .class-2 который находится внутри .class-1
    <div class="class-1">
    	<div class="class-2">
    		Some text
    	</div>
    </div>
    Ответ написан
    Комментировать
  • Как реогранизовать процесс разработки в IT-продукте?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Первый вариант - если есть прибыль, нанять людей, чтобы написать все с нуля, но уже масштабирование сразу предусмотреть в архитектуре. Зависит от сложности проекта, конечно.

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

    Разделить разработку и поддержку.

    Разработка - на тестовом енвайрнменте с тестовыми данными
    Поддержка - ограниченным кругом доверенных специалистов.
    Ответ написан
    Комментировать
  • Что делать с ошибкой OperationalError: no such column?

    Vindicar
    @Vindicar
    RTFM!
    Блин, да когда же вы читать научитесь, а?
    Никогда не используй f-строки для формирования sql-запроса, это либо даёт невалидный SQL (как в твоём случае), либо оставляет лазейку для SQL-инъекции.
    Используй подстановку параметров. Про это буквально в каждом мануале по работе с БД пишут, но ведь читать - не модно.
    cursor.execute("INSERT INTO masseges (id, massege) VALUES (NULL, ?)", (text,) )

    Ну и да. Правильно пишется message, если речь о сообщениях.
    Ответ написан
    2 комментария
  • Можно ли сделать git merge, чтобы в главной ветке появился только коммит слияния?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    1. git merge feature --squash
    2. git commit

    Проблему решает --squash флаг при merge, только останется закоммитить это дело
    Ответ написан
    Комментировать
  • Как в addEventListener в функцию передать переменные, если необходимо так же удалять созданный эвент?

    IvanU7n
    @IvanU7n
    nothing interesting here
    если нужно удалить обработчик после однократного срабатывания, есть once в третьем параметре

    если логика удаления другая, то есть вариант:
    const handler = handlePasteImage.bind(null, whatever);
    addEventListener('paste', handler, { capture: true, });

    в handlePasteImage() придёт (whatever, event), а удалять нужно handler

    или
    const handler = {
      whatever: whatever,
      handleEvent(event) {
        handlePasteImage(event, this.whatever);
      },
    };
    addEventListener('paste', handler, { capture: true, });

    в handlePasteImage() придёт (event, whatever), а удалять нужно опять же handler
    Ответ написан
    Комментировать
  • Есть ли реальный профит от использования актуальных фронтенд-технологий?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    В 2016-м году, делали нечто, что потом начали люди называть SPA - но за счёт аяксов, которые грузят что нужно. При этом сохраняется структура страниц на сервере, и нет и не было проблем с индексацией.

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

    Ускоряет жизнь тем, кто не умеет в вёрстку, остальным - замедляет.
    1. Стильно, модно, молодёжно. Других не могу придумать. Вроде бы как должно работать быстрее, но практика этого не показывает (или настолько незначительно, что конечному пользователю - пофиг, будет работать аякс или вьюшная реактивность).

    На определенном этапе разработки, стоимость поддержки проекта на чистом js начнёт обгонять проект на react/vue. Пользователю будет конечно пофиг, т.к. он не найдёт в ПС Ваш SPA сайт.
    Собственно, а зачем это всё нужно, если профит, кажется - нулевой

    Для ускорения разработки, а ключевое слово здесь "кажется".

    P.S. в некоторых ситуациях действительно быстрее и дешевле написать некоторые функции на чистом js и не тащить весь react стек в проект, но это больше исключение, чем правило.
    Ответ написан
    2 комментария