• Как из одной ветки перенести определённые файлы в другую ветку?

    @aol-nnov
    git checkout otherBranch -- path/to/file

    но это только содержимое файла с края otherBranch, никакой истории изменений.
    Ответ написан
    Комментировать
  • Почему не работает?

    delphinpro
    @delphinpro Куратор тега CSS
    frontend developer
    https://developer.mozilla.org/en-US/docs/Web/CSS/:...

    1. Применяется только к ссылкам и area
    2. Не все стили применяются (в целях конфиденциальности), тень в список разрешенных не входит.
    Ответ написан
    2 комментария
  • Как посмотреть содержимое TTF?

    @Maxim_Q
    Тут можно шрифт загрузить и посмотреть все символы внутри https://fontdrop.info/
    Ответ написан
    1 комментарий
  • Можно ли отлаживать telegram web app?

    @Redeve
    Веб-макаке не хватит и 640гБ
    Ответ написан
    Комментировать
  • Как сделать auto width для поля input?

    premas
    @premas
    Full-stack web-developer
    В одну строку и без зависимостей это делается так:
    <input type="text" onkeydown="this.style.width = ((this.value.length + 1) * 8) + 'px';">
    Ответ написан
    2 комментария
  • Что быстрее 10 запросов к файлам или 10 к базе?

    @sergey_privacy
    Админ со стажем, начинающий DevOps
    На Ваш вопрос нет однозначного ответа. Аналогично вопросу: что быстрее, поезд или автомобиль? Кто то будет сравнивать советский поезд с бугатти, другой будет сравнивать японские скоростные поезда с жигуленком.

    Базы с поддержкой SQL бывают разные: MySQL, MsSQL, Oracle и т.д. У каждой из них своя методика работы с кэшем, индексами, памятью. Очень многое зависит от размеров базы, размеров таблиц, построения индексов, самого запроса, настроек сервера БД и операционки. Если база нормально сконфигурирована, таблицы с нормальной архитектурой, правильно построены индексы, сервер обладает достаточным количеством памяти, то запрос будет быстрее большинства самопальных решений для работы с файлами.

    Если же файлы проектировала группа высококлассных специалистов, обвязка спроектирована именно под такие запросы, то выигрыш по скорости может быть значительным в этом варианте. Но такой "путь самурая" предполагает перенос объема вычислений в более быструю область сервера: память-процессор. У тебя будет меньше работа с дисковой системой, но вся логика работы приложения должна быть перелопачена под такой вид данных. Без фундаментальных знаний алгоритмов программирования и математики-информатики в целом, такие велосипеды лучше не городить. Теория графов, матрицы, хеши, алгоритмы сортировки должны быть у тебя на уровне выше институтского. Про удобные таблицы на 5-10 полей можешь забыть. У тебя будет куча небольших упорядоченных файлов со списками ключ-значение. Индексы, хеши, хеши по хешам, индексы по хешам и т.д. - это на долгое время будет твой кошмар, который ты должен будешь представлять у себя в голове. Работа с файлами напрямую не имеет смысла, если ты не планируешь создавать высоконагруженное приложение с большими объемами данных. В этом случае у тебя проработка архитектуры хранения данных займет на порядок больше времени, чем проработка архитектуры базы. Предварительный поиск по одному символу, по двум, трем, ссылка на файлы, которые содержат следующую часть, по которой уже идет поиск. Не забудь блокировки файлов, обработку ошибок доступа, обработку оборванных транзакций, уникальность значений, индексов или ключей и т.д. Отсутствие удобных select-ов с join-ами и блэкджеком потребует от тебя проработки возможных видов запросов, чтобы сам вид хранения данных оптимизировать под кастрированные возможности. А из запросов будут только аналоги простейших "SELECT xxx FROM file_yyy WHERE Id=zzz", "UPDATE file_xxx SET yyy WHERE Id=zzz", "INSERT INTO file_xxx yyy=zzz", "DELETE xxx FROM file_yyy WHERE Id=zzz". Этими 4-мя операциями тебе придется обходиться.

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

    JhaoDa
    @JhaoDa
    LaravelRUS Team
    Нет.

    Только описывать их в модели аннотациями/атрибутами и держать этот список в актуальности. Или вот ide-helper умеет добавлять докблок со свойствами, который парсит из БД. Но всё это разной степени костылизация.
    Ответ написан
    Комментировать
  • Из-за чего ошибка 419 (unknown status)?

    @empirikk
    У меня рабочая схема, без form выглядит, не вдаваясь в детали, вот так:
    HTML:
    <div>
    @csrf{{--эта конструкция преобразуется в input c именем _token, пример: <input type="hidden" name="_token" value="tyiV5lsNJy9aA245dke7979aW1otyutV5D">--}}
    <input class='text' type='text'>
    <input type='submit'>
    </div>


    JQuery:
    let someV = $('.text').val();
    let token = $("input[name='_token']").val();
                    $.ajax({
                        type: 'POST',
                        url: '/someurl',
                        data: {
                           '_token': token,
                            "someV" : someV
                        },
                        success:function (res){
                            console.log('F**k yeah');
                        }
    
                    })

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

    @Oleg1345140
    как вариант добавить в схему диод и электролит, диод в разрыв цепи между блютуз и аккумулятором, электролит поле диода параллельно блютузу, диод не даст усилителю вытянуть электролит, электролит даст питание блютузу на время просадки аккумулятора
    Ответ написан
    Комментировать
  • Можно припаять jack 3.5 стерео на один наушник?

    @nehrung
    Не забывайте кликать кнопку "Отметить решением"!
    Теоретически запараллеливать нельзя, на практике - в вашем конкретном случае можно.
    Почему в теории нельзя? Потому что теоретически может случиться такой стереосигнал, когда по каналам будут выданы на выход строго противофазные сигналы. А это хуже чем КЗ, поскольку оба выходных каскада УЗЧ будут работать друг против друга.
    Почему на практике можно? Да потому, то выходная мощность на наушнике - несколько милливатт, от такой мощности ничего не выгорит даже в наихудших условиях. Есть и вторая причина: вероятность появления вышеописанного опасного противофазного стереосигнала исчезающе мала. Чтобы он появился, это какой-то недоброжелатель должен совершить специальную диверсию против вашего усилителя - раздобыть стереогенератор, подключить, да ещё устроить всё это во время вашего отсуствия.
    Ответ написан
    Комментировать
  • Можно ли подключить 4 кулера к простой зарядке?

    @VT100
    Embedded hardware & software.
    Да.
    Но вентиляторы не "дают", а "потребляют". И не 1,8 А, а 2 А.
    Ответ написан
    Комментировать
  • Как дождаться выполнения dispatch'а с передачей в него async action в redux?

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Если вы хотите дождаться выполнения асинхронных вызовов в асинхронных функциях, то их надо делать с использованием ключевого слова await. Вызовы dispatch с передачей обычных объектов действий выполняются синхронно.
    const someCall = () => async dispatch() => {
      dispatch({type: Constant.SOME_OPERATION_1});
      await dispatch(createAccount());
      dispatch({type: Constant.SOME_OPERATION_2});
    };

    export const createAccount = () => async (dispatch) => {
      await request api;
      dispatch({type: SMTH});
      await another request api;
      dispatch({type: SMTH2});
    }


    Так же для обработки неудачных ответов сервера можно использовать try/catch:
    export const createAccount = () => async (dispatch) => {
      try {
        await request api;
        dispatch({type: SMTH});
        await another request api;
        dispatch({type: SMTH2});
      catch (e) {
        // handle error here
      }
    }
    Ответ написан
    2 комментария
  • На каком языке написан Python?

    suguby
    @suguby
    программист, python, django, mysql, git, hg, linux
    ответ в википедии
    https://ru.wikipedia.org/wiki/Python#.D0.A0.D0.B5....
    если в двух словах, то есть много реализаций, стоящий на большинстве систем CPython написан на С.
    Ответ написан
    1 комментарий
  • На каком языке написан Python?

    @VovanZ
    Есть разные реализации питона.
    Например:
    основная реализация - CPython написана на С;
    PyPy написан на RPython (их собственный диалект питона, созданный специально, чтобы написать на нём PyPy);
    Jython написан на Java.

    Подробнее про разные реализации питона можно прочитать здесь: habrahabr.ru/post/209812

    Библиотеки для питона написаны либо на C, либо на самом питоне.
    Ответ написан
    1 комментарий
  • В чем разница между css-loader vs style-loader?

    @Miozzz
    css-loader - преобразовывает CSS - в модуль JavaScript.
    (Входные данные: CSS, Выходные данные: JavaScript)
    style-loader - внедряет CSS, экспортируемый модулем JavaScript, в тег
    Ответ написан
    Комментировать
  • Зачем в React так записывают в state?

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Во-первых в setState в корень предыдущее состояние передавать не нужно, так под капотом к нему так и так подмешается предыдущее состояние, в не зависимости от того, что вы туда передадите. Примерно так:
    state = { ...prevState, ...newState };

    Во-вторых не правильно передавать в setState this.state, так как setState выполняется асинхронно и ваше текущее состояние может успеть измениться. Если надо обновить состояние на основе предыдущего, в setState по-хорошему надо передавать функцию, в которую первым аргументом при вызове придет ваше состояние:
    this.setState(prevState => ({
      some_data: {
        ...prevState.some_data,
        ...input,
      },
    });
    Ответ написан
    3 комментария
  • Как правильно изменять checkbox react?

    Самый лучший вариант - не использовать стейт. Вообще. Зачем он для чекбоксов? Это настолько раздуто и избыточно в 99% случаев, что хочется рвать волосенки на голове каждый раз, когда кто-то это использует. К счастью, React предоставляет uncontrolled inputs, чем я вам и рекомендую воспользоваться. Поскольку каждый раз, когда для таких компонентов используется стейт, означает, что данные сохраняются для последующей обработки, а последующая обработка в 99% случаев - отправка формы или иные ее события.

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

    rockon404
    @rockon404 Куратор тега React
    Frontend Developer
    Первый вариант будет лучше если у вас форма и компонентов много. Можно обрабатывать все одним хандлером:
    const handler = (e) => {
      const { target } = e;
      const value = target.type === 'checkbox' ? target.checked : target.value;
      const { name } = target;
    
      setForm( f => ({ ...f, [name]: value }));
    };

    Второй, если checkbox один и приложение должно как-то реагировать на его изменение. Но хандлер для лучшей читаемости, лучше вынести в переменную. Если это built-in компонент вроде input:
    const handler = () => {
      setX(!x);
    };

    И если это кастомный компонент, то необходимо использовать useCallback, чтобы предотвратить лишние перерисовки:
    const handler = useCallback(() => {
      setX(!x);
    }, []);

    Ну и неконтролируемые компоненты, упомянутые Алексей Николаев, в ряде кейсов могут быть очень удобны.
    Ответ написан
    Комментировать