• Почему при сортиртировке именованная функция быстрее чем анонимная?

    empr
    @empr
    Дело в том, что вы в каждой из 100 000 итераций объявляете эту функцию. Если вы присвоите анонимную функцию переменной за пределами цикла (да, при этом функция по-прежнему будет считаться анонимной), то скорость сравняется.

    $cmp = function ($a, $b) {
        if ($a == $b) {
            return 0;
        }
        return ($a < $b) ? -1 : 1;
    };
    
    for ($i = 0; $i < $count; $i++) {
        usort($arr, $cmp);
    }

    Time: 0.074096918106079
    Time: 0.074237108230591
    Ответ написан
    8 комментариев
  • Имеет ли право сотрудник на оплачиваемый отпуск до года?

    @Oopss
    Статья 122 ТК РФ
    Оплачиваемый отпуск должен предоставляться работнику ежегодно.

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

    До истечения шести месяцев непрерывной работы оплачиваемый отпуск по заявлению работника должен быть предоставлен:

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

    dom1n1k
    @dom1n1k
    Если речь идет не о каких-то очень узкоспецифичных алгоритмах, а о мейнстриме (а удаление шума - это мейнстрим), то всё довольно просто. Есть 3 точки общеизвестные входа:
    - Wikipedia (англоязычная, конечно)
    - StackOverflow
    - Google
    Там можно найти общие описания методов и где-то в подвале - ссылки на публикации первоисточники.

    Например, для удаления шума в одно касание находится статья в вики:
    https://en.wikipedia.org/wiki/Noise_reduction
    А внизу у неё - гора ссылок.
    Ответ написан
    Комментировать
  • В чем отличие настольных мониторов от ноутбучных?

    @amambaru
    Матрицы там те же.
    Отличаются только подключениями.
    У мониторов DVI, DisplayPort, HDMI, D-Sub.
    У ноутбуков LVDS.

    Но цвет фото отличается по другой причине:

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

    Таки мониторы и такие ноутбуки несколько дороже. Процентов на 10-20-30.

    Матрицы типа VA, PLS - более менее внятные цвета дают, но они тоже дороже.
    Скажем, матрица VA имеет глубокий черный цвет и хорошо подходит для текстов.

    В дешевых моделях нотбуков и в дешевых моделях мониторах стоят матрицы типа TN.
    У них плюс - немного потребляют электроэнергии и быстро картинка меняется.
    Хорошо для игр и хорошо для экономии батарей ноутбуков.
    Видимо, потому их еще и ставят в ноутбуки чаще, - ради экономии батарей, а не только из экономии денег.

    Но TN самая отвратная по цветам.
    Ответ написан
    Комментировать
  • Как сейчас лучше делать спойлеры?

    @spike__x
    <details>
       <summary>Спойлер</summary>
       <p>Текст</p>
    </details>
    Ответ написан
    Комментировать
  • Как защитить данные, перед отправкой AJAX?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Фронт - всегда заказывает только: ID и кол-во! (это справедливо для любых покупок и тематик)
    Запомните это как своё имя!
    Ответ написан
    Комментировать
  • Почему в текстовых редакторах используется моноширинный шрифт?

    DDDsa
    @DDDsa
    ['a', 'b', 'c', 'd',
     'e', 'f', 'g', 'h',
     'i', 'j', 'k', 'l',
     'm', 'n', 'o', 'p',
     'q', 'r', 's', 't',
     'u', 'v', 'w', 'x',
     'y', 'z']


    ['a', 'b', 'c', 'd',
    'e', 'f', 'g', 'h',
    'i', 'j', 'k', 'l',
    'm', 'n', 'o', 'p',
    'q', 'r', 's', 't',
    'u', 'v', 'w', 'x',
    'y', 'z']
    Ответ написан
    Комментировать
  • Высоконагруженный проект. Стоит ли переехать с PHP на NodeJS? Или может на что нить ещё?

    tema_sun
    @tema_sun
    Ну вы же точно не в язык уперлись, а в архитектуру и алгоритмы.
    Ответ написан
    Комментировать
  • Высоконагруженный проект. Стоит ли переехать с PHP на NodeJS? Или может на что нить ещё?

    @vanillathunder
    Для фоновых задач достаточно будет добавить очереди, и запустить много процессов. Тык.
    Если есть средства и возможности, то выбирайте любую технологию по своему вкусу.
    P.S. Node js не многопоточный, а асинхронный.
    Ответ написан
    Комментировать
  • Рисование графиков, есть ли интересная статья или пример?

    dummyman
    @dummyman
    диссидент-схизматик
    Из jquerийных простенький morris и посложнее flot.
    Для Анжелы n3. Для любителей Ember Charts.
    Простенькие ChartJS и uvCharts.
    Очень легкий и хорошо разжеванный ChartList.
    Не менее хорошо разжеванный, но платный, ZingChart.
    Поддержку legacy обеспечит FusionCharts - обещают работу на IE6.
    Профессионалам понравится список фичей plotly.
    Вы бы конкретнее указывали какие графики вам нужны. А то все не подходят, а что нужно - секрет. Хотите создавать свою систему - читайте исходники существующих. - Врятли любая статья будет лучше и более полной чем исходники рабочих библиотек.
    Ответ написан
    5 комментариев
  • Как запустить Cron-задачу чаще минуты?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    Стопудово это какая-то тупая задача вообще крона не требующая, эти "секреты" задолбали, напиши нормально - "я не могу сообразить как делать правильно %определенный_функционал%, пришла идея делать неправильно, как сделать правильно?". Нет же, все пишут - "мои лыжи не едут по асфальту, подскажите как приделать к ним колесики и ракетный двигатель, для чего не скажу, это ВеликаяТайна".
    Ответ написан
    Комментировать
  • Есть редактор с возможностью dev кода?

    skobkin
    @skobkin
    Гентушник, разработчик на PHP и Symfony.
    3 комментария
  • Как сказать браузеру не кешировать часть страницы(Last-Modified)?

    gromdron
    @gromdron
    Работаю с Bitrix24
    Если уж говорить на чистоту, то при успешной авторизации Вы не имеете право отдавать тот же Last-Modified, так как страница изменилась. Вообще, если у Вас не новостной блог, то я бы наверное не рекомендовал Вам сильно заморачиваться с этим заголовком - проблем будет больше чем профита. Уж лучше оптимизируйте.
    Ответ написан
    Комментировать
  • Нейроная сеть на бумаге?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    ну вот на пальцах например:
    у тебя фотография эта делится например на 9 секторов
    в каждом из них есть состояние например 1 или 0 (на состояние секторов ты не влияешь, а только оцениваешь)
    допустим данные с этих секторов считывает один нейрон - после того как он считал состояние всех секторов он должен делать вывод - круг это или квадрат
    этот вывод он делает на основе так называемой "решающей функции".
    допустим решающая функция такая - если сумма всех значений всех секторов больше 5 - значит это квадрат если меньше то это круг (решающие функции могут быть сложнее, но важна сама суть поиска решений)
    и суть такая ->
    на сами входящие значения ты не можешь влиять, поэтому чтоб влиять на результат, ты можешь перемножать на определенный коэффициент входящие значения, и варьируя коэффициент умножаемый на входящее значение ты подгоняешь результат "решающей функции" под требуемый результат. Подгонка эта происходит через процесс называемый обратное распространение ошибки.
    на входе 8 единиц (круг), в начале коэффициенты например равны единицы - сумма всех входящих значений умноженных на коэффициент - равна 8, ты проверяешь, соответствует она твой схеме (при которой круг это значения меньше 5) - нет 8 больше 5, значит ты понижаешь немного значения коэффициентов (обычно изменяют значения не сразу на необходимую величину а на небольшое значение, называемой лернинг рейтом) например на 0.1 (есть много других схем изменения коэффициентов), но вот из-за того что ты показываешь примеры с кругом и квадратом, то повышая на 0.1 значения активировавших нейрон входящих сигналов то понижая, у тебя выходит нужная схема, при которой при входе 8 секторов с единицами, 1 центральный ноль, у тебя сумма с коэффициентами выдает в ответе 4.8 например, что соответствует кругу, а значит коэффициент для всех входящих значений равен 0.6
    П. С.
    сама смысловая связь между каким-то классом, и значением больше 5 или меньше 5 - делает баесовская функция в нейроне, здесь же мы эти значения задали самостоятельно.
    Ответ написан
    Комментировать
  • Как постепенно перекочевать из Web в Machine Learning максимально безболезненно?

    AgentProvocateur
    @AgentProvocateur
    Что-то ты не с того конца собираешься дом строить...образно выражаясь. Ты по выбору молотка загоняешься, а нужно по проектированию, архитектуре, инженерным коммуникациям, технологиям строительства и т.д. А молоток покупается в последний момент на строительной оптовке.

    Машинное обучение/нейроинженерия - это область научной деятельности. Специалист по машинному обучению - ученый-математик (часто и вовсе с докторской степенью). Программирование/владение Python - лишь прикладной навык к научным изысканиям. В научные лаборатории путь явно лежит не через изучение применяемых там языков/программ.

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

    А со знанием других языков (php, js, go) python осваивается за 10 дней. Он потому и используется так интенсивно в науке, чтобы на программирование, как на прикладной навык, тратить минимум телодвижений и времени, а максимум на нейроинженерию.
    Ответ написан
    4 комментария
  • Как монетизировать опен-сорс проект?

    @Z-r
    > Как монетизировать опен-сорс проект?

    Проект чего? Программы? Сначала программу по этому проекту придется написать, по-другому едва ли выйдет.

    > опен-сорс

    Это вы не можете вспомнить русского слова на замену английскому эвфемизму «open source» в значении «free», «libre»? Слово это «свободный». :-)

    > устанавливается онлайн-инсталлером

    А! То есть уже написали? То есть вопрос на самом деле звучит так: «Как заработать денег на свободной программе»? Отлично.

    Мне известно четыре основных способа заработка, напрямую связанных со свободными программами:

    — Первый, самый прямой, но от того почему-то всем не менее неочевидный — брать и продавать копии свободных программ. Аудитория: любые конечные пользователи. Примеры: Parted Magic, ряд программок для «Андроида», ну например, «Conversations». Высокоморальность: в полном порядке.

    — Второй — это прекрасно известная всем продажа поддержки. А фактически иногда и просто своего имени, когда какая-то реальная поддержка начинается с сумм несколько больших, чем базовый контракт. Аудитория: преимущественно те, для кого ваша программа есть средство производства, то есть компании и предприниматели. Пример: Canonical. Высокоморальность: в полном порядке.

    — Третий — это продажа исключений из авторского лева. Аудиторией будут разработчики несвободных программ, а программа ваша должна быть библиотекой под (как нетрудно догадаться) авторским левом, причем чаще сильным. Суть в том, что для добрых людей ваш продукт свободен на условиях, скажем, GNU GPL или GNU AGPL, а проприетарщики пусть платят за возможность использовать его в своих шкурных интересах. Примеры: GhostScript, MySQL. Высокоморльность: прихрамывает маленько.

    — Четвертый является просто заработком на несвободных программах, и в этом списке присутствовать бы вовсе не должен, но все его вспоминают (вот сейчас про него помянул тов. CityCat4). Это т. н. free crippleware, то есть полноценная ваша программа несвободна и платна, но у нее есть свободный урезанный вариант. Причем урезано может быть как что-то существенное, так и сущая ерунда. Аудитория: кто угодно. Примеры: Odoo, GitLab, ProcessMaker. Высокоморальность: от невысокой до никакой, смотря сколько отрезано.

    И разумеется, все вышеперечисленно можно комбинировать: Qt, к примеру, и поддержку (обучение) предоставляет, и исключения из авторского лева (причем слабого!) продает, и скромную несвободную часть имеет. А всем известный Red Hat — продает копии свободных программ, предоставляет поддержку и несвобдные программы (Ansible Tower) тоже продает. А иногда и такое бывает: программка для «Андроида» под названием OsmAnd полностью свободна, но поставляется в Гуглоплэе в двух вариантах: полном за копеечку и урезанном бесплатно. Еще раз: обе версии свободны, то есть никакой моральной проблемы здесь нет.

    Выше я перечислил только способы заработка на программах как таковых; а есть еще схемы, где свободные программы участвуют косвенно. Это, надо полагать, не ваш случай, но поскольку я тут не вам одному отвечаю, то надо также упомянуть, что свободная программа вполне может быть:

    — Частью продаваемой услуги — чаще всего услуги специфического хостинга, как редхатовский Openshift или (если ближе к народу) Feedly.

    — Частью продаваемого устройства, причем само устройство может быть как свободным, так и нет. Тысячи их.

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

    lazalu68
    @lazalu68
    Salmon
    google: "css circle progress", первый результат: "Codepen: Pure CSS radial progress bar"

    google: "js scroll percentage", первый результат: "Cross-Browser Method to Determine Vertical Scroll...
    Ответ написан
    Комментировать