Задать вопрос
  • Страницы сайта не попадают в индекс Google несколько месяцев. В чём причина?

    vpetrov
    @vpetrov
    частный SEO-специалист
    Несколько исходных данных:
    • Поисковые системы - это по факту рекламные, коммерческие системы. Им неинтересно уже тратить ресурсы на сбор информации без какой-то выгоды для себя, а затраты там суровые.
    • Для оценки контента они используют вспомогательные сигналы - пользовательские, ссылочные и т.п.

    В общем, чтобы страница попала не просто в топ, а в выдачу вообще - надо эти самые сигналы обеспечить. Любыми средствами: покупка рекламы, привлечение трафика из соцсетей, поведенческие боты (да, это вроде как не одобряется), ссылки с серьёзных доноров.
    Технически - можно попробовать инструментарий типа Google Indexing API. С одной учетки можно загонять в индекс 200 страниц в сутки, процесс пары минут. У Яндекса есть аналог, но там обычно проблем технического плана нету пока.
    Основная проблема: если Гугл так и не увидит ценности страниц для индекса - выбросит, поэтому принудительная индексация не отменяет работы над созданием этих самых сигналов ценности страницы. Ну, и разумеется, надо дорабатывать контент, если есть проблемы. Чисто по заветам Елены Першиной ("делайте свой сайт лучше").
    Ответ написан
    1 комментарий
  • Какой процессор лучше: i7-640m или i5-580m?

    pindschik
    @pindschik
    ФЫВА ОЛДЖ
    Оба хуже.

    Этим изделиям более 12 лет.
    spoiler
    6565ab4a71554293018587.jpeg

    Фактически на сколько быстро работают мобильные процессоры - больше зависит от решения производителя ноутбука (теплового пакета и системы охлаждения). Разница может достигать и 2-х раз. При чем не в пользу более "топового".
    Это просто рулетка...
    А что на счет шины - боюсь там просто неверные данные. Процессоры сделаны из одного кристалла и выпиленные из одной вафли. Они полностью технологически одинаковы, оба мобильные. Только небольшая маркетинговая разница.

    А возраст данных процессоров - это уже за гранью добра и зла и он обоснованно может требоваться только в случае, когда требуется именно древнее железо для обеспечения нормального функционирования другого древнего решения (например - для узкоспециализированного ПО).
    Если же вы покупаете "новый" ноутбук на ОЗОН и там такие варианты - откажитесь от затеи. Новые изделия не бывают на старых и БУ компонентах.
    Ответ написан
    Комментировать
  • Какой дистрибутив Linux поставить на слабый ноутбук для начинающего пользователя?

    axifive
    @axifive
    Software Engineer
    32-битные вам не нужны. Этот процессор 64-битный, можно любой x86-64 дистрибутив ставить.
    Из легковесных: lubuntu, xubuntu
    Ответ написан
    Комментировать
  • Есть ли возможность получить читаемый текст?

    yakovlev_13
    @yakovlev_13
    Шаманство, экзорцизм и некромантия.
    pdf24 toolbox - вот эта прога сносно перекодировала. Что-то придётся поправить конечно, но результат есть

    spoiler
    655c6d52f0208059533717.jpeg
    Ответ написан
    Комментировать
  • Хочу реализовать проект калькулятора подписок в валюте, с конвертацией валют из одной в другую; есть подводный камень. Как его решить?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    1) https://www.cbr.ru/currency_base/
    2) учись , можешь ORM в помощь (это в Питоне), но можно и на сырую (RAW Data)
    поля там должны быть Decimal или Finance - не Float ни в коему случае, а лучше вообще INT и потом менять разряд
    3) опа! да ты и сам волокешь , я за Decimal
    4) ты не представляешь глубину и сложность вопроса, поверь ... бухгалтера засовывают язык в жопу при попытке конкретики. Ну что тебе скажу - один из бух метдов по GAAP / МФСО - тупо курс на 31.12. года и учет остатков в нем...
    как сделаешь так сделаешь - считай на конец периода, или на максимуме. Короче , повторю, проблема непроста:
    можешь считать каждый день, но по итогу сумма у тебя не будет равная сумме в другой с каким-то коэффициентом. )))
    Если же это не касается бухучета - то есть строгости - можно счиатть как угодно )))
    5) запросы к базе фигня в сравнении с методолгией, повторюсь - единой нет, спроси целевого буха и делай как он скажет

    короче - начни считать каждый день - как ЦБРФ ставит курс на СЕГОДНЯ основываясь на ВЧЕРА, а там как пойдет...
    Ответ написан
    Комментировать
  • Совместимость NVME и Z77?

    VoidVolker
    @VoidVolker
    Dark side eye. А у нас печеньки! А у вас?
    Совместимости и поддержки нет и не будет. Завести можно только если в биос добавить ручками драйвер. Вот тут тема с модифицированным биосом и инструкцией по прошивке (классический способ добавки поддержки NVME там, где её нет - где-то работает, где-то нет, где-то проще, где-то сложнее): https://forums.overclockers.ru/viewtopic.php?f=1&t...
    Будьте готовы, что если что-то пойдет не так, то придется покупать новую материнскую плату или нести окирпичившуюся плату спецам для ремонта. Имеет смысл заниматься этим только ради искусства и веселья. В производительности разница не настолько большая будет - проще и быстрее будет просто два любых саташных диска в рейд поставить.
    Вот еще тема на СО: https://ru.stackoverflow.com/questions/1144143
    Плата не
    Ответ написан
    Комментировать
  • Как хранится c++ struct в памяти и как определить размер вручную?

    @Mercury13
    Программист на «си с крестами» и не только
    Выяснилось, что на компьютерах с разрядностью 16 и более бит минимальной единицей памяти стоит делать всё равно 8-битный байт: это сильно упрощает работу с узкими типами данных, как в памяти, так и на вводе-выводе. Например, канал RGB8 или кодовая единица UTF-8 — байт. Считаем для простоты, что разрядность 16, порядок Intel.

    Чтобы загрузить 2-байтовое число в 2-байтовый регистр, есть ДВА варианта.
    1. ОЗУ, кэш и другие устройства хранения передают нижний байт данных на нижний байт шины, верхний, соответственно, на верхний.
    2. Байты, чьи номера кратны двум, соединяются только с нижним байтом шины, не кратные — только с верхним. А уж процессор как-то разбирает, что делать, если двухбайтовое число сидит по нечётному адресу и считывается за два обращения к шине.

    Более простым оказался второй подход: он упрощает схемотехнику всех сидящих на шине, кроме процессора. В частности, дешифраторы становятся на 1 бит меньше, и упрощается топология. А процессор — в нём и так микропрограммное управление, и в нём и так до хрена соединений, и если обратился к байту (!) по адресу условно 4, вероятно, скоро потребуется адрес 5 и его один хрен стоит закэшировать.

    Но это значит, что доступ к 2-байтовым числам по нечётному адресу (1-2, 3-4, 5-6) будет медленнее, чем по чётному (0-1, 2-3, 4-5). И потому по умолчанию двухбайтовые числа располагаются именно по ЧЁТНЫМ адресам, и структура { char a; short b; char c; } будет иметь длину 6 байт (0 — a, 1 — выравнивание, 2,3 — b, 4 — c, 5 — выравнивание), а структура { short b; char a; char c; } — всего 4 байта (всё упаковано плотно).

    Но это приводит к двум вещам.
    1. Если нужно сочетать скорость и компактность, надо чётко выравнивать структуры данных. Обычно подобная ручная оптимизация делается для мелких частых структур.
    2. Если кусок памяти подготавливается в памяти, а потом отправляется на устройство, надо принудительно отключить выравнивание. Если в предыдущем примере формат файла так устроен, что байт 0 — a, байты 1 и 2 — b, байт 3 — c, то можно написать
    #include <iostream>
    
    struct Q1 { char a; short b; char c; };
    struct __attribute__ ((packed)) Q2 { char a; short b; char c; };
    
    int main()
    {
        std::cout << sizeof(Q1) << ' ' << sizeof(Q2) << '\n';   // 6 4
    }

    Q1 (или более оптимизированную short-char-char) использовать для хранения в памяти, а Q2 — для записи в файл, раз уж у него такой формат.

    Да, почему компилятор сам этого не делает? Это нарушает совместимость компиляторов. В Си++ до 20 включительно он имел право кое-что переставить, если в struct/class были поля с разными правами доступа (но никто по факту не делал), в 23+ больше не имеет права.

    Ну а алгоритм прост.
    1. Длина := 0, выравнивание := 1
    2. Для каждого поля: позиция := длина, округлённая по выравниванию[i]; длина := позиция+длина[i]; выравнивание := max{выравнивание; выравнивание[i]}
    3. Общая длина := длина, округлённая по общему выравниванию

    Существует очень простой способ уменьшить выравнивание: отсортировать поля по убыванию выравнивания.

    Для того же Q1:
    0. Длина = 0, выравнивание = 1
    1. char a: длина округляется до 0, затем 1, выравнивание = 1
    2. short b: длина округляется до 2, затем 4, выравнивание = 2
    3. char c: длина округляется до 4, затем 5, выравнивание = 2
    4. Общая длина округляется до 6. Ну а выравнивание = 2
    Ответ написан
    Комментировать
  • Какие есть самые распространённые причины появления багов?

    "самой распространённой причины" не существует. Она будет сильно зависеть от конкретного продукта и процессов разработки.

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

    2. Не полная спецификация. Например в спецификации не было описано, как система будет себя вести при ошибках - разработчик при реализации решил додумать сам.
    Либо ещё может произойти из-за того что спецификация сама себе противоречит или её нельзя реализовать в полной мере за адекватное время.

    3. Разработчик ошибся при реализации спецификации и не достаточно протестировал перед передачей тестировщику. Например бага может не быть в happy path или каком-то определенном подмножестве данных, но при этом на каких-то граничных случаях баг происходит.

    4. Регресс. Разработчик нормально реализовал спецификацию, но тестировщик проверил только новую фичу и не стал проверять регресс - в итоге новая фича работает, а какая-то старая - сломалась, из-за того что её задели при разработке.

    5. Несоответствие среды выполнения на этапе разработки, тестирования и в продакшене.
    Например разрабатывали и тестировали на мощном железе, а при работе на слабом - всё плохо. Или сетевые задержки приводят к ошибкам, или на целевой машине стоит старая версия ОС, браузера, каких-то ещё зависимостей и поведение совсем меняется.

    6. Во время разработки у заказчика поменялись планы. Старая спецификация больше не отвечает новым требованиям. Нужны доработки.

    Чтобы минимизировать вышеперечисленное, нужно:
    1. Плотное общение между разработчиком, аналитиком, и QA.
    2. QA должен начинать тестирование ещё на этапе спецификации
    3. Разработчик должен сообщать аналитику о всех случаях, когда он не может что-то реализовать или о каких-то пробелах.
    4. Разработчик должен сообщать QA о возможном регрессе в других фичах.
    5. Должны быть автотесты, чтобы уменьшить нагрузку на QA и чтобы минимизировать шанс на регресс
    6. Тестирование должно обязательно производиться на том оборудовании и в том окружении, на котором система будет потом работать.
    7. Чем чаще релизы - тем лучше.
    Ответ написан
    1 комментарий
  • Нормально ли keras тдёт на windows?

    Maksim_64
    @Maksim_64
    ML Engineer
    Ну смотри, tensorflow - это операции с тензорами. Keras - это просто интерфейс для нейронок. Так вот tensorflow версии > 2.10 не поддерживает Windows GPU. То есть на сегодняшних версиях ты не сможешь использовать GPU для операций с тензорами.

    Изучать то можно, но если сегодняшняя библиотека не поддерживает windows, то в чем смысл, все не стоит на месте. И инвестируя свое время в изучение инструмента, ты должен быть уверен что сможешь использовать его завтра.
    Ответ написан
    2 комментария
  • Как настроить автоматический выход из windows 10 при отключении от RDP?

    pindschik
    @pindschik
    ФЫВА ОЛДЖ
    Я бы ковырял в таком направлении:
    Вместо проводника при входе запускайте .bat с двумя командами - первая запуск mstsc, вторая - выход из системы. Окно батника спрячьте за пределы рабочего стола.
    Кроме того - назначьте в планировщике проверку наличия процесса mstsc в текущем контексте. Если нету - выполнять логаут.
    Ответ написан
    Комментировать
  • Как запретить играм засорять директорию "Документы"?

    snaiper04ek
    @snaiper04ek
    Не стреляйте в эникея, он админит как умеет
    Нет, установка на другой диск проблемы не решит.
    Игры пишут свои сейвы туда, куда считают нужным. Хотят - в документы, хотят - в AppData, захотят - сунут в programm data, раньше иногда писали в свою же папку.
    Ноги у твоего вопроса растут оттуда, что ты документы используешь для хранения документов, а туда ещё и игры пишут свои сейвы. Вообще, не только игры, а многие программы. Поэтому, если у тебя много игр/программ постоянно устанавливаются, то эта директория является мусоркой по умолчанию, ты же когда игру удаляешь, не удаляешь за ней все сейвы?

    Значит, решением будет не хранить свои файлы в документах. Храни, не знаю, в музыке, в изображениях. В конце-концов: на рабочем столе.
    Так же, можешь где угодно создать папку, на любом диске, и эту папку закрепить в быстрый доступ, например, по этому гайду: https://windows-school.ru/publ/dobavlenie_ehlement...
    Ответ написан
    Комментировать
  • Почему не запускается вин 10 на интегрированной видеокарте?

    Stalker_RED
    @Stalker_RED
    Попробуйте отключить сломанную видеокарту, загрузить в безопасном режиме, снести видео драйвера, и потом загрузить в обычном.

    Заранее скачайте утилиту для полного удаления виеодрайверов.
    Ответ написан
    Комментировать
  • Почему браузеры и curl дают разные результаты?

    ValdikSS
    @ValdikSS
    На сайте используется TLS Fingerprint (вероятно, JA3) как один из индикаторов сессии в системе перед веб-сервером, вероятно, это анти-DDoS.
    Так как браузер и curl используют разные SSL-библиотеки и передают разные наборы шифров, сервер предлагает вам пройти challenge.
    Ответ написан
    5 комментариев
  • Анонимность, шифрование при использовании IOS?

    CityCat4
    @CityCat4
    Жил да был черный кот за углом...
    Не существует проблемы "некоей" анонимности. Есть либо выдуманная анонимность, которой хочется просто потому что хайповая тема, либо реальный сценарий, где есть реальная модель нарушителя.

    Но яббл одновременно и лучший и худший выбор для этого.

    Лучший - потому что он реально немало прилагает усилий к тому, чтобы достичь некоей сферической "анонимности".
    Худший - потому что при этом он сам будет знать про Вас все и это никак не изменить, не отключить и вообще ничего не сделать.

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

    pindschik
    @pindschik
    ФЫВА ОЛДЖ
    Есть два основных способа:
    - через свой сервис, который соответственно работает с привилегиями localsystem и обновляет что хочет (напр продукты Adobe)
    - через планировщик задач (напр Chrome)
    Нужный сервис/задача создается с запросом UAC при (первой) установке приложения, т.е. однократно.

    "Надежность" UAC - понятие относительное. оно повышает безопасность, да. Вот только проблема в том, что система безопасная на 99% и на 1% небезопасная - это система на 100% уязвимая, и следовательно на 100% небезопасная.
    Ответ написан
    Комментировать
  • Почему некоторые программы запускаются и обновляются без диалогового окна UAC?

    Если программа лезет в какие-то системные папки / требует привелегий администратора, то UAC будет.
    Если программа не требует привелегий администратора, то UAC не будет.
    Очень много программ сейчас ставятся в %AppData% - для доступа к этой папке не нужны права администратора, в отличие от Program Files
    Ответ написан
    Комментировать
  • Как узнать, что веб-адрес официальный?

    @SunTechnik
    В частных случаях может помочь:

    1. Если на сайте сертификат типа OV, c валидацией организации. ( сравните сертификат qna.habr.com и cnews.ru у последней - проставлено поле организации)

    2. Посмотреть на кого зарегистрирован домен через whois (но тут и чаще путаница и сложнее разобраться)
    Ответ написан
    Комментировать
  • Как узнать, что веб-адрес официальный?

    paran0id
    @paran0id
    Умный, но ленивый
    Что касается сертификатов, бывают ssl-сертификаты с organization validation, когда в адресной строке зеленое поле с названием компании. Стоят дорого (притом что обычные - бесплатны), поэтому используются там, где это действительно важно - например, в банках.
    Ответ написан
    3 комментария
  • Как узнать, что веб-адрес официальный?

    Нет, в общем случае никак.
    Ответ написан
    Комментировать