• Как получить все возможные фрагменты из строки?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    var str = "1234567890";
    var e, r = /.{4}/g; // одно-единственное регулярное выражение
    while(e=r.exec(str)) {
    	console.log(e[0]);
    	r.lastIndex -= 3;
    }
    Ответ написан
    Комментировать
  • Как бороться со стрессом на работе?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    Мозг каждый день кипит так же, как в первый день. Шаг влево шаг вправо, и вот, я уже ничего не знаю и ничего не умею... ощущение, что на работе я как будто не прогрессирую, а наоборот деградирую...

    У меня такое было, когда я только перешел во фронтенд и пытался держать слишком много деталей о языках и инструментах в голове. Со временем понял, что это не имеет смысла - все меняется быстрее, чем я запоминаю. Перешел от мысли "я использую инструменты" к мысли "я делаю штуки" и сразу полегчало, стал держать в голове только общие идеи о том, как что-то делается, или что вообще бывает в какой-то области, а конкретные инструкции по применению отдельных инструментов изучаю по ходу дела. Изменил фокус своего самообразования, если это можно так назвать. В результате все препроцессоры слились в один, новые библиотеки становятся все менее сложными в освоении, поскольку идеи везде плюс-минус одинаковые и.т.д. Решения стало принимать гораздо проще. И аргументировать тоже. Иногда складывается такое впечатление, что у нас в отрасли совсем ничего не появляется нового уже лет пять, а то и больше. Да, я забываю как использовать флексы, путаю call() и apply(), гуглю свои же ответы на тостере, но это не важно. Голова занята решением проблем, в ней теперь нет никакой второстепенной информации и это очень здорово. Статьи писать тоже полезно оказалось - написал, "поставил на полочку", и забыл. А если будет нужно - можно достать и посмотреть. Таким образом вот эта вся фигня с закипанием мозгов практически ушла.
    Ответ написан
    1 комментарий
  • Минимизация CentOS?

    Zoominger
    @Zoominger Куратор тега Системное администрирование
    System Integrator
    3) Если бы вы получили такое задание, то как бы к нему подходили?

    Осилил бы LFS.

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

    @dmshar
    Ну, во-первых. Что делает Winrar:
    "Распаковка архивов RAR, а также ARJ, bz2, CAB, GZ, ISO, JAR, LZH, TAR, UUE, XZ, Z, ZIP, ZIPX, 7z,"
    Таким образом, сама программа умеет работать со множеством разных форматов, т.е при распаковке используется множество разных алгоритмов.
    Во-вторых:
    Хотя архивирование в формат RAR — проприетарное, на официальном сайте RarLab доступен защищённый авторскими правами бесплатный исходный код распаковщика UnRAR, лицензия на который разрешает использовать его в любом ПО. Таким образом, сторонние авторы могут создавать программы, способные распаковывать (но не создавать) RAR-архивы - таким образом, если вам задали такую тему работы, то неплохо бы начать с ознакомлением с этим материалом.
    В-третьих: Начиная с версии 5 в WinRAR добавлена поддержка нового архивного формата RAR5,. Отлично. Лезим сюда: https://www.rarlab.com/technote.htm и изучаем внимательно.
    Затем - углубляем наше понимание:
    saanvi.ru/fac.php?filename=txt/soft/rar5.txt
    Наконец, от тех, кто требуем от вас сам алгоритм просим денег на покупку лицензии у авторов. В противном случае обвиняем их в попытке нарушения авторских прав :-)
    Ответ написан
    1 комментарий
  • Как генерировать последовательность случайных не повторяющихся чисел?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    тебе сначала нужно сгенерировать колоду, а потом из нее вынимать (с удалением) случайную карту,
    пока колода не пуста, вынимать случайную карту и добавлять ее в раздачу.
    Ответ написан
    2 комментария
  • По чём сейчас час времени мобильного разработчика на русскоязычном рынке (фриланс/фирмы)?

    @jamtuson
    Просто наблюдал ситуации когда новостное приложение (лента и еще пару страниц) на iOS за 4 млн. руб. заказывали, а также за 100 тыс. руб. проект на подобии фейсбука (я утрирую) делали на обе платформы.


    Ваш племянник нарисует квадрат за конфетку, а Тема Лебедев нарисует его же за 100к.

    Мне кажется, что невозможно дать однозначный ответ. Смотрите по портфолио, скорости работы и аппетитам программистов. Легко у двух +- одинаковых разработчиков может отличаться рейт лишь по причине, что один живет в Мухосране, а второй в Москве и у них запросы разные.
    Ответ написан
    Комментировать
  • Как решить задачку (шахматная доска, ход конем) без использования js?

    alexbuki
    @alexbuki Автор вопроса
    программист js
    Спасибо всем и особенно profesor08 и Рустам Байназаров
    В итоге так получилось
    Ответ написан
    Комментировать
  • Как возможно по сигналу на RCA выходе определить, включено ли устройство?

    Чисто программно, без физических устройств - никак.
    Если кратко, блочно - то усилитель, интегратор, компаратор - на выходе будет лог.0/1 - нет или есть сигнал.
    В принципе, на транзисторе и одном компараторе плюс мелочёвка можно сделать, а можно и ещё проще, но менее надёжно. Я так когда-то на самодельном усилителе звука поставил на вход подобный детектор - включается усилитель одной нефиксируемой кнопкой, срабатывает реле, схема встаёт на самоблокировку и смотрит наличие сигнала. Как только хоть какой сигнал приходит, заряжается конденсатор, при отсутствии - разряжается. При разрядке ниже определённого уровня происходит отпускание реле, усилитель отключается. По времени экспериментально подобрал номиналы, чтобы около 20-30 минут таймаут вышел. Схемотехника смешанная аналогово-дискретная, но без всяких процессоров, ардиуно и даже без каких-либо счётчиков, максимум простая логика типа 2И-НЕ, и триггер один (вроде бы, уже за 12 лет и забыл, как там сделал).
    P.S. работает и до сих пор, каждый день.
    Ответ написан
    2 комментария
  • Как остановить вращение в нужном месте?

    @lorc
    Ну я бы в момент нажатия на "стоп" определил угол где колесо должно остановиться. Например, с помощью генератора случайных чисел.

    Допустим, в момент нажатия "стоп" угол колеса alpha, а мы хотим чтобы оно остановилось в угле beta, сделав около пяти оборотов. Тогда, если alpha > beta, то нам нужно провернуть колесо на theta = 360 * 5 + beta - alpha градусов.
    Если alpha < beta, то понадобиться например theta = 360 * 6 - beta + alpha градусов.

    Итого, мы знаем скорость вращения speed, знаем количество градусов которое нужно пройти - theta. Знаем что в конце скорость должна быть 0. Надо посчитать замедление а.

    Пришло время математики. За время t колесо провернется на speed * t - a * t * t /2 градусов. Нам надо чтобы оно провернулось на theta.

    Значит, мы имеем уравнение speed * t - a * t * t /2 = theta. Еще мы помним что скорость в конце должна быть равна 0. Значит speed - a * t = 0.

    Подставляем, сокращем. Получаем a = speed * speed / ( 2 * theta). Теперь вы знаете замедление, на которое нужно уменьшать скорость каждый цикл.

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

    @lorc
    Ну на самом деле все логично. Мы делим ставку на вероятность выигрыша. И округляем конечно же вниз:

    1 / 0.01 = 100
    1 / 0.95 = 1.0526 ~= 1.05

    Если предположить что шансы у них честные, то доход казино обеспечивается как раз этим округлением вниз. Во втором случае матожидание выигрыша получается 1.05 * 0.95 = 0.9975 рубля на каждый поставленный рубль.

    Классическая рулетка работает точно так же. Только там добавляется сектор зеро, на котором вы всегда проигрываете. Он и обеспечивает доход казино.
    Ответ написан
    Комментировать
  • Как данные из формы PHP заполнить готовый шаблон в pdf?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Pdf легче всего отрендерить из html: https://wkhtmltopdf.org/
    Ответ написан
    1 комментарий
  • Что нужно знать, чтобы написать простенький парсер на Python?

    Этого будет достаточно для начала:
    1. BeatifulSoup
    2. Scrapy
    Ответ написан
    Комментировать
  • Как спец. программы ускоряют процесс игр?

    GavriKos
    @GavriKos Куратор тега Разработка игр
    Можно подменить системное время его "ускоренным" аналогом. Можно подменить внутренние счетчики (если игра на популярном движке, например).
    Ответ написан
    Комментировать
  • Как спарсить множество текстовых файлов в CSV (excel)?

    @MarvinD Автор вопроса
    Лады, никого не напрягаю, поставил таки в netbeans c++, копаюсь по старой памяти, типа:
    regex maskStr("^<strong>.*");
    ...
    while (getline (inFile,line)) {
            if ( regex_match(line, maskStr) ) {
                sum = sum + x;
                cout << line << '\n';
            }
    }


    Вроде пашет, осталось в цикле директорию проходить и в cvs записывать. Честно говоря, не думал, что современная IDE все так приятно может сделать. Теперь и php и c++ в одном флаконе. Спасибо, NetBeans :)
    ЗЫ: с перепугу поставил даже VS2019 :) но и в NetBeans все компилится неплохо. Посмотрим, как на других компах пойдет, надеюсь, exe и текстовых файлов будет достаточно для переноса.
    Ответ написан
    Комментировать
  • Как найти числа из массива X, в которых нет "нулей"?

    0xD34F
    @0xD34F
    $withoutZero = array_filter($X, function($n) {
      return strpos($n, '0') === false;
    });
    Ответ написан
    Комментировать
  • Какую БД лучше всего использовать для хранения 100 млн записей и больше?

    Stalker_RED
    @Stalker_RED
    Для каждого category будет примерно 50-300 тыс записей.
    тогда логично вынести категорию в отдельную таблицу. Почитайте какой-нибудь учебник о проектировании БД и о нормальной форме, что-ли.

    100 млн записей - это не много, и подойдет почти любая СУБД.
    Ответ написан
    Комментировать
  • Лицензия Commercial Use - это как?

    DevMan
    @DevMan
    коммерческое использование - использование, которое подразумевает получение прибыли. есть прибыль или нет - неважно.

    взломом и вредом никто из вменяемых заниматься не будет. могут:
    - забить
    - судиться
    - занести домен в блэк
    - отказать в суппорте
    - ограничить функционал
    - etc
    Ответ написан
    Комментировать
  • Как максимально корректно определить кодировку текстового файла (из всех существующих)?

    ProgrammerForever
    @ProgrammerForever
    Учитель, автоэлектрик, программист, музыкант
    На c# пользуюсь такой конструкцией, найденной в сети:
    public static Encoding DetectFileEncoding(string fileName)
            {
                byte[] buf = new byte[12000];
                int length;
                using (FileStream fstream = File.OpenRead(fileName))
                {
                    length = fstream.Read(buf, 0, buf.Length);
                }
    
                Ude.CharsetDetector d = new Ude.CharsetDetector();
                d.Feed(buf, 0, length);
                d.DataEnd();
                return Encoding.GetEncoding(d.Charset);
            }

    Сама библиотека
    Ответ написан
    1 комментарий