Задать вопрос
  • Как спрогнозировать следующую дату визита клиента?

    @thenno
    Проектирую, разрабатываю, преподаю.
    Как уже писал выше nirvimel - тут нужно или какое-то простое мат моделирование, или методы машинного обучения. Но есть одна загвоздка - вряд ли вы у Вас что-то получится предсказать, основываясь только временных рядах. Если к этому добавить еще набор известных признаков (например, из анкеты клиента) - можно получить какое-то вменяемое качество. Да и то вряд ли, на самом деле - выборки будут небольшие, а внешних факторов, которые вы никак не сможете учесть - очень много (болезни, командировки, выходы новых сериалов). Но я бы попробовал на вашем месте.

    Уже выше писали про Воронцова, но я добавлю - у него есть достаточно хороший курс на Курсере - https://www.coursera.org/learn/vvedenie-mashinnoe-... Я о нем писал подробнее тут. Если лень смотреть курс - можно поразбираться с библиотеками для Python numpy, sklearn и pandas - но без какой-то нормальной вводной будет тяжело. Я бы остановился на курсе, а потом попробовал что-то сделать с имеющимися данными.
    Ответ написан
    6 комментариев
  • Кто-нибудь пробовал автоматизировать системы заработка в онлайне?

    saboteur_kiev
    @saboteur_kiev Куратор тега Веб-разработка
    software engineer
    Автоматизация кликов лайков была крайне популярна примерно в конце девяностых-начале двухтысячных. С тех пор рекламодатели ввели множество вариантов защиты от накрутки, и конкретно autoIT или простой парсер вас уже не спасет.

    Лично накручивал студентом около 100 баксов в месяц на модеме, а знакомый в один месяц умудрился 800 снять, но в следующий месяц уже фичу прикрыли.

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

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

    @lakegull
    Что значит "типичный юзер"?

    Определите свою целевую аудиторию. Возраст, пол, круг интересов, уровень дохода и т.д.
    Ответ написан
    Комментировать
  • Почему при сложении 1500 чисел, не превышающих 1, printf выдает #INF0?

    Schullz
    @Schullz
    =^.^=
    На некоторой итерации случается следующее:
    rnd = 0;
    t_i = 1.#INF0
    sum=1.#INF0

    Это из-за того, что log(0) стремится к минус бесконечности
    Ответ написан
    1 комментарий
  • Не работает деление в ассемблере. Что я сделал не так?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    mov edx, [arr16] ; заносим в edx первый элемент массива
    mov eax, [arr16+4] ; заносим в eax второй элемент массива

    Начнём с того, что в edx нужно поместить старшую часть делимого, а в eax -- младшую, а на x86 слова в память записываются младшей частью вперёд (little endian).

    Если результат деления не помещается в eax вы получите исключение #DE, а при делении числа 0x0000000100000000 (а именно его вы делите, загрузив в eax 0 а в edx 1) на 1 результат определённо в 32 бита не влезет.

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

    Jump
    @Jump
    Системный администратор со стажем.
    Все сервисы игнорируют просьбы правоохранителей. Ибо лень.
    Все сервисы выполняют требования правоохранителей, Ибо хочется работать, а не иметь проблемы.

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

    @Elizavetta
    Matroid: gamedev/js-разработка
    Все возможно. Просто математики вас на работу не возьмут...
    Опыт программирования маленький и был давно, на перле.

    Не нужно гадать, садитесь за код. Через годик ситуация станет яснее.
    Ответ написан
    Комментировать
  • Верно ли, что чем сильнее "разрознен" массив чисел, тем больше времени займет его сортировка (допустим, пузырьком)?

    @abcd0x00
    Очень похоже на сортировку слиянием и пирамидальную сортировку. Чтобы не изобретать эти сортировки (которые, естественно, быстрее пузырьковой), лучше найди их описание и реализуй каждую по отдельности.
    Ответ написан
    Комментировать
  • Верно ли, что чем сильнее "разрознен" массив чисел, тем больше времени займет его сортировка (допустим, пузырьком)?

    uvelichitel
    @uvelichitel
    habrahabr.ru/users/uvelichitel
    Для сортировки пузырьком
    1. имеет значение не средневзвешенное, а только максимальное отклонение позиции элемента от верной.То есть, другими словами, если вы в отсортированном массиве только поменяете местами крайние элементы, то его сортировка пузырьком займет максимально возможное время.
    2. определенно да.

    Для приведенного подхода(отдельно сортировать части потом слить) применяют сортировку слиянием merge-sort.
    Ответ написан
    Комментировать
  • Я хорошо пишу код, но полный ноль в веб дизайне. Как мне подтянуть скилл?

    khipster
    @khipster
    Никак, я серьезно. Это либо есть, либо этого нет. Технари слишком умные, а хороший дизайнер должен быть тупым чтобы смоделировать поведение очень тупого пользователя.
    Ответ написан
    3 комментария
  • Как при ошибке освободить порты?

    @DuD
    Это самый что ни на есть finally из try
    Ответ написан
    Комментировать
  • Как работать с таблицами >1кк строк?

    @AndrewFoma
    Лично я Pandas могу использовать, но не использую, или крайне редко.
    С данными, которые по своей форме "как бы таблицы", можно легко работать. Просто какие требования вы предъявляете к методам работы с данными. И 200 MB это кстати мало, можно обойтись списками.
    1. Можно нагородить "велосипедов" через списки и словари. Примитивно, список, где каждая запись это словарь, а ключ - наименования столбца (поле), а дальше как фантазия подскажет
    2. Можно использовать sqlite, создавая базу в памяти или на носителе. Смотря какой python и сколько памяти, а уж от sqlite - sql запросы. Несколько миллионов sqlite легко вывозит.
    Поэтому: "велосипед", sqlite или pandas.
    Ответ написан
    2 комментария
  • Как объявить 16-байтное двоичное число в assembler?

    Массив
    Ответ написан
    Комментировать
  • Почему сопроцессор в тысячу раз медленнее процессора?

    jcmvbkbc
    @jcmvbkbc
    "I'm here to consult you" © Dogbert
    Кто подскажет, что я делаю не так?


    Это:
    clock_t strt = clock();
    ...
    clock_t bk1 = clock() - strt;
    ...
    clock_t bk2 = clock() - bk1;

    bk1 -- это разность абсолютных времён, т.е. продолжительность, а bk2 -- это разность абсолютного времени и продолжительности, т.е. абсолютное время.

    Ок, после исправления этого бага я вижу проблему с переполнением стека сопроцессора: fadd не сдвигает стек обратно и fld его очень быстро переполняет.

    С переполнением стека я тоже наблюдаю, что fpu работает ~ в 1000 раз медленнее чем ALU. Но если сбалансировать загрузки, операции и выгрузки так, чтобы стек не переполнялся у меня все работает со сравнимой скоростью. Подозреваю, что там случается исключение, но оно не фатальное и молча глотается ядром.

    Я тестировал следующий код (выкинул вообще всё лишнее):
    #include <stdio.h>
    #include <inttypes.h>
    #include <time.h>
    
    #define MAX_I 4000000
    
    int32_t rezult[64];
    
    void StartPR(int str)
    {
            asm volatile ("mov $4000000, %%eax\n\t"
                          "xor %%ebx, %%ebx\n\t"
                          "xor %%ecx, %%ecx\n\t"
                          "xor %%edx, %%edx\n"
    
                          "circle:\n\t"
                          "add %%eax, %%ebx\n\t"
                          "add %%eax, %%ecx\n\t"
                          "add %%eax, %%edx\n\t"
                          "dec %%eax\n\t"
                          "jnz circle\n\t" ::: "memory");
    }
    
    void StartMMX(int str)
    {
            double v = 4000000;
            asm volatile ("mov $4000000, %%eax\n\t"
                          "fldz\n\t"
    
                          "circle2:\n\t"
                          "fld %0\n\t"
                          "faddp \n\t"
                          "fld %0\n\t"
                          "faddp \n\t"
                          "fld %0\n\t"
                          "faddp \n\t"
                          "fld %0\n\t"
                          "faddp \n\t"
                          "sub $4, %%eax\n\t"
                          "jnz circle2\n\t"
                          "fstp %0" :"+m"(v):: "memory");
    }
    
    void stardThreads(int numOfThread)
    {
            printf("threads: %i", numOfThread);
            int i = 0;
            clock_t strt = clock();
            StartPR(0);
    
            clock_t strt2 = clock();
            clock_t bk1 = strt2 - strt;
    
            StartMMX(i);
            clock_t bk2 = clock() - strt2;
            printf("time block1:%i, block2:%i, tics per second:%i\n", (int32_t)bk1, (int32_t)bk2, CLOCKS_PER_SEC);
    }
    
    int main(int argc, char *argv[])
    {
            int i;
            for (i = 1; i < 9; i++)
                    stardThreads(i);
    
            return 0;
    }


    Результат:
    threads: 1time block1:6949, block2:9311, tics per second:1000000
    threads: 2time block1:4061, block2:7872, tics per second:1000000
    threads: 3time block1:3901, block2:7398, tics per second:1000000
    threads: 4time block1:3615, block2:7045, tics per second:1000000
    threads: 5time block1:3389, block2:6716, tics per second:1000000
    threads: 6time block1:3250, block2:6342, tics per second:1000000
    threads: 7time block1:3189, block2:6036, tics per second:1000000
    threads: 8time block1:3032, block2:5885, tics per second:1000000
    Ответ написан
    4 комментария
  • Как защититься от инсайдеров?

    @Olya_Min
    Студентка Финансового университета
    Вот примерный перечень внутренних документов, который у вас должен быть:
    Положение, в котором вы определяете состав информации, которая является конфиденциальной для вашей организации;
    Положение о сохранении конфиденциальной информации;
    Инструкция о порядке допуска сотрудников к сведениям, составляющим конфиденциальную информацию;
    Положение о специальном делопроизводстве и документообороте;
    Положение о работе с иностранными клиентами и их представителями;
    Обязательство сотрудника о сохранении конфиденциальной информации;
    Памятка сотруднику о сохранении коммерческой тайны.

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

    Вот хороший, учебник по ИБ, он хоть и 2004 года, но основные моменты прописаны хорошо lc.kubagro.ru/zi.pdf

    P.S. Вы говорите об инсайде, но не задумываетесь о том, что может происходить непреднамеренная утечка информации (хотя, если верить исследованиям, именно на неё приходится основная доля потерь конфиденциальной информации).
    Ответ написан
    1 комментарий
  • Как обойти максимальное количество ребер неориентированного взвешенного графа?

    Есть неориентированный взвешенный цикличный граф, задана вершина входа. Необходимо обойти максимальное число вершин а затем вернуться в исходную, при этом не привысив максимально допустимый вес (который тоже задан).

    Если я ничего не путаю но ночь глядя, то это задача коммивояжёра. Странно, что до сих пор про неё никто ничего не упомянул.

    Задача NP-полная, достаточно быстро (что-то около 60-70 вершин) становится трансвычислительной, для 200 вершин ни о каком полном переборе не может быть и речи. Советую посмотреть метод ветвей и границ.
    Ответ написан
    1 комментарий
  • Стоит ли привлекать к защите домашних данных виртуальные машины?

    @viiy
    Linux сисадмин \ DevOps
    Стоит.
    Только вместо kvm и virtualbox используйте LXC.
    Устанавливать проще простого, а производительность сравнима с хост-системой.
    sudo lxc-create -n new-vm -t ubuntu - создадите контейнер "new-vm" с убунтой.

    Основной профит - меньше мусора на основной системе, апдейт софта можно делать не опасаясь что сломаете что-то другое.
    Ответ написан
    1 комментарий
  • Хорошая книга для улучшения памяти, внимания и запоминания информации?

    ThePyzhov
    @ThePyzhov
    iOS Ninja
    На рутрекере есть эта же книга, только в сжатом формате (без воды).
    Ответ написан
    6 комментариев