• Не получается установить библеотеку, что делать?

    fox_12
    @fox_12 Куратор тега Python
    Расставляю биты, управляю заряженными частицами
    Перевести ошибку, можно со словарем - и понять что возможно дело в правах пользователя.
    А еще лучше - почитать про виртуальные окружения, и работать с ними.
    Ответ написан
    Комментировать
  • Как получить случайные числа в C++?

    wataru
    @wataru Куратор тега C++
    Разработчик на С++, экс-олимпиадник.
    srand вызывайте только один раз где-нибудь в начале программы. А потом сколько угодно раз используйте rand.

    srand устанавливает состояние генератора псевдослучайных чисел. В качестве seed вы там используете количество миллисекунд, которое целую миллисекунду одинаковое, поэтому состояние генератора у вас в каждой функции rand_offer одно и то же - поэтому числа и генерируются одни и теже. sleep(1) лечит проблему потому, что следующий вызов посчитает другое значение count_ms.
    Ответ написан
    Комментировать
  • Что делает единичная звездочка в аргументах метода Python?

    Mike_Ro
    @Mike_Ro Куратор тега Python
    Python, JS, WordPress, SEO, Bots, Adversting
    Что делает единичная звездочка в аргументах метода Python?

    namedtuple(
    typename,
    field_names,
    *,
    rename=False,
    defaults=None,
    module=None,
    )

    Ни разу не встречал такое раньше, в документации тоже не смог откопать

    PEP 3102
    Ответ написан
    Комментировать
  • Что делает единичная звездочка в аргументах метода Python?

    @IvanTRG
    В Python звездочка (*) в списке аргументов метода используется для указания, что все аргументы после звездочки должны быть переданы как именованные аргументы. Это означает, что после звездочки все аргументы должны быть указаны с использованием их имен.
    Ответ написан
    Комментировать
  • Какую книгу выбрать для изучения алгоритмов и структур данных?

    Adamos
    @Adamos
    Бестселлер "101 вопрос на Тостере, которые новички даже не пытаются поискать".
    Ответ написан
    Комментировать
  • Как посмотреть массив до применения map?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    И что тут особенного? Объекты в JS копируются по ссылке.
    const a1 = [{ "id": "1" }, { "id": "2" }, { "id": "3" }];
    Здесь создаётся массив, в котором три ссылки на объекты.

    let a3 = [...a1];
    Здесь производится декомпозиция массива и из этих трёх ссылок формируется новый массив. Сами ссылки при этом остаются неизменными.

    let a4 = a1.slice();
    Опять таки, ссылки не меняются и ведут на те же самые объекты.

    const a2 = a1.map(i => {
        i["name"] = "Name" + i["id"];
        return i;
    });
    Здесь в объекты по ссылкам добавляется новое поле и как результат каллбэка возвращается ссылка на объект. Соответственно в a2 те же самые ссылки.

    В результате имеем четыре массива, в которых ссылки на одни и те же объекты.

    Чтобы не менять исходные объекты, надо из них строить новые:
    const a2 = a1.map((o) => ({ ...o, name: `Name${o['id']}` }));
    Ответ написан
    1 комментарий
  • Как можно сделать перенаправление с HTTPS на SSH в Git?

    Vapaamies
    @Vapaamies
    Психанул и снес свои ответы козлам, не отмечающим…
    Если SSH нужен именно для push, в Git поддерживается отдельный pushurl (качать по одному пути, толкать по другому):
    git remote set-url --add --push origin git@github.com:Username/repository
    Ответ написан
    Комментировать
  • Какой смысл ставить мощный Wi-Fi модуль в ограниченный роутер?

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

    мощный Wi-Fi модуль

    А кто тебе сказал, что там мощный wifi модуль?

    PS:

    Как показывает практика, даже в роутерах с WAN/LAN портами скоростью до 100 Мбит/с (если по тарифу 100 Мбит/с) есть смысл в поддержке стандарта 802.11ac Wi-Fi 5 GHz. Так как по Wi-Fi в диапазоне 2.4 GHz практически нереально выжать 100 Мбит/с. А в диапазоне 5 GHz без проблем можно получить эту скорость.


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

    Мне 16. Занимаюсь разработкой 4 года. Работал на фрилансе.
    Подхожу к вакансиям на мидлов, иной раз на синьоров.

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

    Middle/Senior - это не только про умение писать код, но и про ответственность и умение работать при высоком уровне неопределённости.
    Junior - отвечает за код в рамках небольшой задачи, которую ему максимально подробно разжевали, а то ещё и старший товарищ помог в разработке.
    Middle - отвечает за крупный компонент или за целое приложение в целом, причём уже в горизонте на год вперёд.
    Senior - влияет уже в целом на команду и немного на соседние продукты, должен уметь с нуля, без спецификации (только с хотелками от бизнеса) разработать полноценное рабочее решение. Уже претендует на звание Team Lead-а, который уже и за людей отвечает.

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

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

    Как сеньора никто точно не возьмёт.
    Ответ написан
    1 комментарий
  • Почему функция is_palindrome не видит метода .lower()?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    исходное слово тоже к нижнему регистру привести надо, а вообще не надо приводить к нижнему иначе логика неправильная - регистр тоже надо учитывать
    Ответ написан
    Комментировать
  • TypeError: 'int' object is not callable из-за чего происходит эта ошибка?

    @Everything_is_bad
    random_number ("Numbers from 0 to 100: ")ну ты зачем-то сам вызываешь random_number как функцию
    Ответ написан
    2 комментария
  • AI программисты ученые или обычные разработчики?

    Maksim_64
    @Maksim_64
    Data Analyst
    1. Про взаимодействие:
    программирование прикладная дисциплина, и осуществлять работу с так называемым AI может совершенно любой человек. Среди людей работающих с така называемым AI есть физики, химики, биологи, экономисты, финансисты, разработчики игр, веб разработчики, люди не имеющие четкой специализации и т.д.

    2. Про разработку:
    современный AI требует взаимодействия множества разных специалистов.

    3. Итог:
    да есть ученые работающие над созданием AI примеров много, из известных ну например, Yoshua Bengio. Это один из явных примеров именно ученого. Но есть и не ученые работающие именно над созданием новых систем AI, и работают эти люди, как в маленьких компаниях, так и в корпорациях.
    Ответ написан
    Комментировать
  • С чего начать написание своего софта(парсера)?

    NeiroNx
    @NeiroNx
    Программист
    Начать с анализа вывода товаров. Как выводится какие запросы отправляются, какие данные возвращаются. Через консоль отладки браузера.
    Язык вообще не важен, важно знать что ты хочешь получить от сайта и какие есть способы это получить.
    Ответ написан
    1 комментарий
  • Как вообще нужно входить в IT сферу?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    Стоит ли верить тем самым "Топ языков" или нет?

    Нет.
    Если молоток стоит на 1 месте среди инструментов, то это не значит, что он подходит для починки двигателя автомобиля.
    Стоит ли уходить после 9 класса или нет?
    Какие вообще предметы нужно мне сдавать на ОГЭ, чтобы стать разработчиком игр и войти в IT сферу?

    Если ты собрался стать разработчиком игр, то 11 классов - обязательно. Потом в ВУЗ на высшую математику.
    Разработка игр (я имею ввиду всякие серьезные AAA проекты) это по большей части высшая математика: физ. движок, столкновения, рей-трейсинг, теория вероятностей + надо самому быть немного математиком, чтобы быть программистом
    Колледж это лофа, лучше самообучение?

    ВУЗ + самообучение
    ВУЗ - сложные темы по матану, опыт от преподавателей (практикующих), единомышленники/друзья, практика в компаниях
    Самообучение - никто не становится гением без мотивации и постоянных тренировок
    И что же по поводу книг?

    Читай.
    Единственное что могу сказать - практикуйся больше, чем читай. Без практики книги ты не поймешь.
    Так если я изучу C# и C++, смогу ли я делать десктопные, веб и мобильные проги?


    Короткий ответ - да
    Длинный - разработка приложений это навык и опыт. С опытом сможешь делать одно и то же на любом яп

    Вывод по всему лонгриду: доучивайся до 11 класса, иди в ВУЗ и параллельно со всем этим учи программирование. К моменту поступления уже будешь знать чего ожидать и куда копать. Эта нора глубока
    Ответ написан
    4 комментария
  • Почему консоль выводит это значение?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    Вы пытаетесь в качестве имени свойства использовать объект, а JS разрешает там только строки.
    Объект приводится к строке и ваш код превращается в итоге вот в это:
    dwayne['[object Object]'] = 123;
    dwayne['[object Object]'] = 456;
    
    console.log(dwayne['[object Object]']);

    Думаю, тут уже понятно, почему результат именно такой.

    При этом, если бы вы использовали другой синтаксис, то и результат был бы другим:
    dwayne.daniel = 123; // аналог dwayne['daniel']
    dwayne.jason = 456; // аналог dwayne['jason']
    
    console.log(dwayne.daniel);

    Но эти daniel и jason никак не связаны с одноимёнными объектами выше.
    Ответ написан
    1 комментарий
  • Насколько разумно при композиции позволять компоненту управлять родителем?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    С точки зрения ЯП/Рантайма, это приведет к кольцевой зависимости, а это порождает различные баги (например, освобождение памяти), поэтому так лучше не делать.
    С точки зрения проектирования, Car не должен знать о Driver - это Driver должен знать о Car, т.к. он ей управляет. Здесь, по факту, водитель - это контроллер какого-то объекта.
    Ответ написан
    2 комментария
  • Почему на хостинге у многих есть папка public_html и почему она так называется?

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    Раньше, когда трава была зеленее, интернет меньше и добрее, существовало вот такое в настройках веб сервера:

    # UserDir: The name of the directory that is appended onto a user's home
    # directory if a ~user request is received.
    #
    # The path to the end user account 'public_html' directory must be
    # accessible to the webserver userid. This usually means that ~userid
    # must have permissions of 711, ~userid/public_html must have permissions
    # of 755, and documents contained therein must be world-readable.
    # Otherwise, the client will only receive a "403 Forbidden" message.
    #
    # See also: httpd.apache.org/docs/misc/FAQ.html#forbidden
    #


    Т.е. можно было просто получить логин на сервер, где был запущен веб сервер и получить домашнюю страничку вида:
    example.com/~username

    И вот с тех древних времен так и потянулось... Каталог, в котором размещаются файлы сайта - public_html....
    Ответ написан
    4 комментария
  • VS Code творит лютую дичь при компиляции и отладке?

    wataru
    @wataru
    Разработчик на С++, экс-олимпиадник.
    Это называется "оптимизируюший компилятор". Он может выкинуть какие-то строчки, часть кода переписать и перетасовать. Соптимизировать по своему усмотрению. Поэтому для отладки используют специальные debug сборки. Установите компилятору флаг -O0, чтобы отлкючить оптимизацию.

    В закоменченную фунцию он может заходить, если вы не перекомпилировали перед запуском.
    Ответ написан
    7 комментариев
  • Не работает метод querySelectorAll, как исправить?

    alexey-m-ukolov
    @alexey-m-ukolov Куратор тега JavaScript
    Метод querySelectorAll возвращает коллекцию элементов и у неё нет свойства onclick, метода addEventListener и т.п.
    По коллекции нужно итерировать и назначать обработчик события для каждого элемента в отдельности.
    Как это сделать, написано в каждом первом учебнике JavaScript.
    Ответ написан
    Комментировать