• Как делать список квадратов?

    longclaps
    @longclaps
    Я сейчас тебе всё объясню.
    Если ты дочитал до места, которое слабо понимаешь - отлистывай книгу назад до страницы, где понимал всё сильно. И с этой страницы читай заново.
    Ответ написан
    1 комментарий
  • Как проверить в JSON наличие определенного поля?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    так
    'action' in json.loads(<строка с json>)

    >>> a = '{"type": "message_new", "object": null}'
    >>> b = '{"type": "message_new", "object": null, "action":{"type": null}}'
    >>> 'action' in json.loads(a)
    False
    >>> 'action' in json.loads(b)
    True
    Ответ написан
    1 комментарий
  • Где может пригодиться физика программисту?

    @CHolfield
    Вы что, миллениал чтоли прости Г-споди? Геймдев, робототехника... Жизнь не ограничивается ИТ. Фундаментальные науки это как бы законы природы в нашей части вселенной, что значит "где физика может пригодиться?"? Вы меня шокируете)
    Ответ написан
    4 комментария
  • Как без NodeJS изучать современный JavaScript?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Просто скачать zip-архив ноды и распаковать туда, куда у вас есть право на запись и где вам будет удобно. Всё, можно пользоваться.
    Ответ написан
    Комментировать
  • Как вы относитесь к флексам в гридах?

    @coderxx
    keep calm and learn js
    Я вам больше скажу - оно так и задумывалось.
    Ответ написан
    4 комментария
  • Надежда ли такая привязка по ПК?

    profesor08
    @profesor08
    Сделай авторизация через свой сервис, а там и управляй подпиской, если она есть, то ок, если нет то не ок. Но раз возник такой примитивный вопрос с нагугленным примером, то лучше сконцентрироваться на разработке качественного софта, которым люди захотят пользоваться, а не думать, как им это максимально затруднить.
    Ответ написан
    Комментировать
  • Как можно сделать цикл с условием?

    @lvv85
    Пример для "Работа"
    =СУММЕСЛИ(B:B;"Работа";F:F)
    Ответ написан
    1 комментарий
  • Сколько можно зарабатывать на C++ в 14 лет?

    @Noortvel
    Студент, изучаю C++ второй год, никто не берет на работу. Хороший ответ?
    Ответ написан
    5 комментариев
  • Как взять рандомный, уникальный элемент из массива?

    Правильный способ - отсортировать рандомно массив и потом брать элементы по-очереди с первого. Гуглите по ключевому слову Shuffle.

    array.Shuffle();
    
    foreach (var randomItem in array) {
        Console.WriteLine( randomItem );
    }
    Ответ написан
    Комментировать
  • Post и Get запросы, какая между ними разница и что лучше и для каких целей?

    socengel
    @socengel
    7 лет native php в продакшене, онлайн 20000+,
    Общего между ними то что они работают одинаково. Разницы между ними технически никакой. А вот идеологические различия есть.

    Я расскажу о них в контексте PHP. Прошу заметить что протокол HTTP к PHP имеет косвенное отношение потому что он создавался для обмена html страницами а PHP просто расширяет возможности и того и другого.

    GET запрос используется чтобы получить данные а POST чтобы отправить. (Напоминаю что технически они работают одинаково).

    Поэтому в контексте PHP опираясь на эту идеологию сделали следующим образом:
    1. При каждом запуске PHP по умолчанию создаются суперглобальные массивы ($_GET, $_POST).
    2. Если в строке запроса есть вопросительный знак(?). То все что после него считается параметрами GET запроса они представлены в формате 'ключ'='значение' и в качестве разделителя используется знак амперсанда (&)
    Пример:
    GET /index.php?name=Андрей&surname=Галкин
    это строка запроса, тут 2 параметра. эти параметры попадут в массив $_GET.
    3. $_POST заполняется другим способом. содержимое этого массива заполняется из "заголовков запроса". То есть из места, скрытого от глаз в явном виде. Всю рутину по созданию таких заголовков берет на себя браузер. Хотя иногда и что-то редактируется в заголовках в ручную.

    Чаще всего пост запрос используется в формах (для отправки данных).

    Например у нас есть форма для входа 2 поля логин и пароль.

    Представим что мы используем GET метод. Тогда при отправке формы мы перейдем на следующий адрес /login.php?login=Андрей&password=123 согласитесь что так передавать такую информацию совсем не безопасно. Любой может открыть ваш браузер и начиная вводить адрес сайта он из истории может увидеть ваши пароли и логины.

    А вот если бы мы указали методом POST то мы бы получили следующий запрос:
    POST /login.php (login=Андрей&password=123) то что в скобочках было бы скрыто и никак не сохранено в браузере.

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

    В общем подводя итог:
    GET - это чтобы получить определенную страницу в определенном виде ( сортировка, текущая страница в блоге, строка поиска и т.п. ).
    POST - для оправки данных которые не влияют на отображение страницы, в том плане что эти данные влияют только на результат выполнения скрипта ( логины, пароли, номера кредиток, сообщения и т.п. ).

    И еще одна хорошая новость их можно комбинировать, например
    POST /index.php?page=login (login=Андрей&password=123) Думаю я уже достаточно объяснил что из этого получится и какие параметры в какой массив попадут.
    Ответ написан
    2 комментария
  • Как изменить курсор печати с "_" на " | "?

    usdglander
    @usdglander
    Yipee-ki-yay
    Кнопку insert на клавиатуре найди и нажми её, господи!
    Ответ написан
    Комментировать
  • Машинные константы и асимптотический анализ алгоритмов?

    @res2001
    Developer, ex-admin
    По моему речь о характеристиках ЦП, влияющих на производительность, например, тактовая частота, размер кэша и проч.
    Игнорировать их можно потому, что алгоритм с логарифмической сложностью будет выполняться быстрее на более медленном устройстве - как раз описанный случай. Для каждых двух разных аппаратных конфигураций и алгоритмов размер входных данных, при котором алгоритм с логарифмической сложностью будет выигрывать у линейного, будет разным и его нужно подбирать опытным путем.
    Просто примите к сведению и продолжайте изучение, это не то на чем требуется заострять внимание.

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

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    machine dependent constants - это количество тактов на один цикл алгоритма и тактовая частота процессора.
    Предположим, что линейный алгоритм O(n) работает на быстром компьютере и каждый цикл выполняется за 1 наносекунду, то есть общее время будет 1×n. Логарифмический алгоритм O(log n) работает на медленном компьютере и каждый его цикл занимает 100 наносекунд, общее время 100×log(n) Посмотрим, как будет меняться время алгоритма при изменении n.
    n    | O(n) | O(log n)
    1    |    1 |   100
    10   |   10 |   200
    100  |  100 |   300
    1000 | 1000 |   400

    То есть, в интервале от 100 до 1000 есть значение n, после которого логарифмический алгоритм работает быстрее даже на более медленном компьютере.
    В общем случае значение n можно получить из равенства a×n = b×log(n)
    Ответ написан
    1 комментарий
  • Проверять вёрстку на переполнение?

    qork
    @qork
    { background: #F00B42 }
    https://habr.com/company/htmlacademy/blog/254171/
    Вёрстка проходит тест на переполнение контентом. Вёрстка не ломается:
    • При добавлении в элементы большего количества текста.
    • При использовании картинок с неподходящими размерами.
    • Текст не должен выпадать из объектов.
    • Переполнение контентными блоками не приводит к нарушению сетки.


    Тоже по теме:
    https://habr.com/company/2gis/blog/246831/
    https://isqua.ru/blog/2016/06/19/crash-test-viorstki/

    Можно быстро смотреть результат при включенном designMode
    https://developer.mozilla.org/ru/docs/Web/API/Docu...
    Ответ написан
    Комментировать
  • Можно ли по книгам из серии "Математика в техническом университете" изучать математику для ML?

    @dmshar
    Математика - она едина. А разные книги просто по-разному ее излагают: разные аргументы, разные стили изложения, немного разная последовательность тем, разные акценты, разная глубина обсуждения конкретных тем и пр. Нет лучших и худших книг (кстати, и видеокурсов - тоже). Разным людям индивидуально может больше подходить стиль одной книги или лектора, другим - другие. Не факт, что если кто-то тут напишет "это суперучебник" то для вас он подойдет. И наоборот, если кто-то скажет "отстой" - то мы не знаем, это книга плохая, или мозги написавшего просто были не способны ее воспринять.
    Так что если у вас есть выбор - просто пробуйте. Берете одну книгу, изучаете, смотрите, как "заходит" материал именно в вашу голову. Если все ОК, то и хорошо. Что-то пошло "не так" - пробуем другую книгу.
    Если вдруг потом вы обнаружите, что какого-то фрагмента знаний, который вам друг оказался нужным не было в том учебнике, по которому вы учились - а так бывает, и не редко - то вот именно "потом" и "доберете" недостающий материал по каким-то другим источником. Это неприменно будет, но будет сильно "потом".
    Другое дело, что самостоятельное изучение, очевидно (по вопросу) - "с нуля", это весьма непростой и тернистый путь. И скажу откровенно, не многие в состоянии его осилить. Но будем считать, что вы из числа этих немногих. Удачи.
    Ответ написан
    Комментировать
  • Как лучше сверстать блок с ячейками?

    Figment
    @Figment
    Странный вопрос. С чем умеешь работать, то и используй. Тут нет одного правильного ответа.
    Если хочется попробовать что-то новое, бери Grid, если надо быстрее, можно взять Bootstrap. (4 как раз на флексах работает)
    Ответ написан
    Комментировать
  • Как отказаться от абсолютных путей?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Использовать относительный путь.
    Либо использовать переменную/конфиг с чем-то типа $MY_APP_HOME, которая указывает на папку с вашей программой. Настраивается один раз при установке и затем что-то типа $MY_APP_HOME/answers/*.txt
    Ответ написан
    Комментировать
  • Как отказаться от абсолютных путей?

    delphinpro
    @delphinpro
    frontend developer
    // Создаем свойство в форме
    
    private
      AppPath: string;
    
    // при создании вычисляем его
    
    procedure TfmMain.FormCreate(Sender: TObject);
    begin
      AppPath := ExtractFilePath(Application.ExeName);
      //…
    
    // потом используем
      DBName := AppPath + '\' + 'base.sqlite';
    Ответ написан
    Комментировать
  • Как работает .map в python'e?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    И в Python'е можно через map:
    words = ['hello', 'world']
    with_exclamation = list(map(lambda s: s + '!', words))

    Но более идиоматично воспользоваться списковым включением:
    with_exclamation = [s + '!' for s in words]
    Ответ написан
    Комментировать