• В защиту swap'а [в Linux]: распространенные заблуждения

    • Translation
    Прим. перев.: Эта увлекательная статья, в подробностях раскрывающая предназначение swap в Linux и отвечающая на распространённое заблуждение на этот счёт, написана Chris Down — SRE из Facebook, который, в частности, занимается разработкой новых метрик в ядре, помогающих анализировать нагрузку на оперативную память. И начинает он своё повествование с лаконичного TL;DR…

    Читать дальше →
  • Нейросети и глубокое обучение: онлайн-учебник, послесловие: существует ли простой алгоритм для создания интеллекта?

    • Translation

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

    Было очень много споров по поводу того, могут ли компьютеры в принципе достичь уровня человеческого интеллекта. Я не буду рассматривать этот вопрос. Несмотря на дебаты, я считаю, что не существует серьёзных сомнений в возможности создания разумного компьютера – хотя эта задача может оказаться чрезвычайно сложной, и, возможно, выйти далеко за пределы существующих технологий – а текущие критики однажды окажутся в положении виталистов прошлого.
    Читать дальше →
  • Построение пакета RPM для Rosa Linux на практике

    Если Вы уже давно пользуетесь операционной системой Linux и хоть немного разбираетесь в программировании, рано или поздно Вам может понадобиться собрать программу из исходного кода. Может быть, нужной программы не окажется в репозиториях дистрибутива. Или в этих репозиториях программа старой версии, а Вам нужна самая свежая. А может, Вы создали новую программу и хотите поделиться ей с другими пользователями.


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


    Надеюсь, эта статья поможет быстрее разобраться со сборкой пакета RPM для Rosa Linux или для другого дистрибутива, использующего менеджер пакетов RPM (Mandriva, RedHat). Или хотя бы подскажет, где искать информацию.


    Здесь я покажу, как создавать пакеты RPM на своём локальном компьютере, на простом примере. Будем собирать программу xkb-switch в операционной системе Rosa Linux. Исходники программы будем брать с GitHub.



    Читать дальше →
  • Я написал эту статью, ни разу не посмотрев на клавиатуру

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

      Первой в списке стояла слепая печать, которую давно откладывал. Теперь считаю её необходимой для каждого, для кого код и конфигурация – профессия. Под катом расскажу как перевернулся мой мир, и поделюсь советами как перевернуть ваш. Заодно приглашаю поделиться своими рецептами и мнениями.


      Читать дальше →
    • Тридцать шесть градусов красоты

        Сеточные системы координат, в которых плоскость делится на одинаковые симметричные элементы — на квадраты, треугольники, шестиугольники, достаточно известны. Им соответствуют квадратная, треугольная, шестиугольная симметрия. Но еще существует симметрия десятиугольная.

        В ней плоскость не делится на десятиугольники, вместо этого все линии расположены под углами кратными 36°. Координаты в этой системе можно записывать целыми числами, по два целых числа на горизонтальное и вертикальное направление.



        Расскажу как это нарисовать.
        Читать дальше →
      • Генетика сорта Романеско: фрактальная математическая модель экспрессии генов



          Что общего между снежинкой, капустой Романеско, морской звездой, молниями и деревьями? Так сразу и не скажешь, но с математической точки зрения у всех этих объектов есть общая черта — фрактальность. В глазах математика все в нашем мире подчиняется законам «царицы наук». Любое явление, процесс или объект можно выразить в математической форме, что позволяет его проанализировать под новым углом, так сказать. Многие годы ученые пытаются создать идеальную математическую репрезентацию генов, их взаимосвязи и процессов, в которых они участвуют. Сегодня мы поговорим о том, как фракталы помогли заложить фундамент совершенно новой математической модели генов человека с позиции онкологических заболеваний. Что такое фрактал, чем он так важен для генетиков и математиков, и как новая математическая модель может помочь современной медицине? Ответы будем искать в докладе исследовательской группы. Поехали.
          Читать дальше →
          • +24
          • 4.9k
          • 2
        • Это Karma, детка, или почему атака на беспроводные сети, которая должна была кануть в лету, все еще жива


          Сегодня беспроводные точки доступа окружают нас повсюду: в кафе, ресторанах, в торговых центрах и в транспорте. Это перестало быть чем-то необычным, и мы спокойно подключаемся к незащищенной сети или постоянно держим включенным режим поиска знакомых точек вокруг. Именно поэтому в последнее время количество атак, нацеленных на этот сегмент, неуклонно растет. Неудивительно, ведь получение доступа к трафику пользователя открывает огромное поле действий атакующему. Сегодня мне хотелось бы рассмотреть одну из таких атак под прозаичным названием Karma, придуманную еще в 2005 году, но в настоящий момент все еще актуальную.

          Читать дальше →
        • Возможности Python 3, достойные того, чтобы ими пользовались

          • Translation
          Многие программисты начали переходить со второй версии Python на третью из-за того, что уже довольно скоро поддержка Python 2 будет прекращена. Автор статьи, перевод которой мы публикуем, отмечает, что основной объём Python 3-кода, который ему доводилось видеть, выглядит как код со скобками, написанный на Python 2. По его словам, он и сам грешит чем-то подобным. Здесь он приводит примеры некоторых замечательных возможностей, доступных лишь тем, кто пользуется Python 3. Он надеется, что эти возможности облегчат жизнь тем, кто о них узнает.



          Все примеры, приведённые в этом материале, написаны с использованием Python 3.7. В описании каждой возможности имеются сведения о минимальной версии Python, необходимой для её применения.
          Читать дальше →
        • Разрабатываем теорию алгоритмов как проект с открытым исходным кодом

            Есть проблема:


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

            нужно много рук


            Под катом попытка решения проблемы с использованием странных на первый взгляд инструментов: Android-смартфон, markdown, Epsilon Notes, динамическая книга, Termux, git, bitbucket, Хабр.

            Читать дальше →
          • Квантовая механика: конец войны интерпретаций

              Квантовая механика окружена ореолом таинственности. Зачастую, этот ореол возникает из-за того, что популярные источники излагают материал, не придерживаясь какой либо определенной интерпретации, а иногда пытаются втиснуть современные факты в прокрустово ложе старой Копенгагенской интерпретации.

              Читать дальше →
            • Хабрамегарейтинг: лучшие статьи и статистика Хабра за 12 лет. Часть 2/2

                Привет, Хабр.

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



                Кому интересны результаты, прошу под кат.
                Читать дальше →
              • 15 книг по машинному обучению для начинающих

                  Сделал подборку книг по Machine Learning для тех, кто хочет разобраться, что да как.
                  Добавляйте в закладки и делитесь с коллегами!

                  Книги по машинному обучению на русском


                  1. «Математические основы машинного обучения и прогнозирования» Владимир Вьюгин.

                  О чем

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

                  2. «Верховный алгоритм» Педро Домингос.

                  О чем

                  Книга, благодаря которой даже ничего не смыслящие в математике и статистике люди поймут, что такое алгоритмы машинного обучения и каково их применение в жизни. Профессор Педро Домингос рассказывает о пяти основных школах Machine Learning и о том, как они используют идеи из различных областей научного знания — нейробиологии, физики, статистики, биологии, — чтобы помогать людям решать сложные задачи и упрощать рутину с помощью алгоритмов.
                  Читать дальше →
                • Новый алгоритм в 200 раз ускоряет автоматическое проектирование нейросетей



                    ProxylessNAS напрямую оптимизирует архитектуры нейронных сетей для конкретной задачи и оборудования, что позволяет значительно увеличить производительность по сравнению с предыдущими прокси-подходами. На наборе данных ImageNet нейросеть проектируется за 200 GPU-часов (в 200−378 раз быстрее аналогов), а автоматически спроектированная модель CNN для мобильных устройств достигает того же уровня точности, что и MobileNetV2 1.4, работая в 1,8 раза быстрее.

                    Исследователи из Массачусетского технологического института разработали эффективный алгоритм для автоматического дизайна высокопроизводительных нейросетей для конкретного аппаратного обеспечения, пишет издание MIT News.

                    Алгоритмы для автоматического проектирования систем машинного обучения — новая область исследований в сфере ИИ. Такая техника называется «поиск нейронной архитектуры (neural architecture search, NAS) и считается трудной вычислительной задачей.
                    Читать дальше →
                    • +17
                    • 8.2k
                    • 1
                  • Как я Telegram ломал

                      Как-то раз я взломал один из серверов telegram. Не то чтобы это было нечто интересное, да и сами уязвимости стандартные. Удивление скорее вызывает факт того, как телеграм относится к безопасности и почему на протяжении многих лет уязвимостями так никто и не воспользовался. Но, не ошибается тот, кто ничего не делает!


                      Читать дальше →
                    • Вирус герпеса вызывает синдром Альцгеймера, другие вирусы — инфаркт и диабет

                        Прием антивирусных препаратов против герпеса в 10 раз снижает заболеваемость синдромом Альцгеймера. 80 процентов людей старше 40 имеют вирус герпеса и большинство не знают об этом.

                        Ученые уже секвенировали больше 5500 вирусов, которые могут заразить млекопитающих. Возможно в природе существует еще 320 000.

                        Cytomegalovirus (CMV)


                        Эта группа вирусов включает вирусы простого герпеса, вирус ветряной оспы (который вызывает ветряную оспу и опоясывающий лишай), цитомегаловирус и вирус Эпштейна-Барра (который вызывает мононуклеоз). До 90 процентов взрослых были инфицированы вирусом Эпштейна-Барра.

                        CMV обычно лежит в состоянии покоя и безвреден в организме, но может вызвать инфекции, в том числе вирусную сердечную инфекцию. Вирусы распространяются при контакте с жидкостями организма инфицированного человека. Они также могут передаваться от беременной женщины к плоду во время беременности.
                        Читать дальше →
                      • Как развернуть односвязный список на собеседовании

                          Привет, Хабр.


                          Я тут на днях сходил на собеседование в одну серьёзную фирму, и там мне предложили перевернуть односвязный список. К сожалению, эта задача заняла весь первый раунд собеседования, а по окончанию интервьювер сказал, что все остальные сегодня заболели, и поэтому я могу идти домой. Тем не менее, весь процесс решения этой задачи, включая пару вариантов алгоритма и последующее их обсуждение, а также рассуждения о том, что вообще такое переворачивание списка, под катом.


                          image

                          Читать дальше →
                        • Ну Apple, BLEee

                            Компания Apple активно внедряет в массы идею о том, что теперь-то с приватностью данных пользователей их продукции всё в порядке. Но исследователи из Hexway выяснили, что стандартный и активно используемый механизм Bluetooth LE (BLE) позволяет узнать довольно много о твоем айфончике.


                            Если Bluetooth включен, то любой человек в радиусе действия сигнала может узнать:


                            • состояние устройства;
                            • информацию о заряде;
                            • имя устройства;
                            • состояние Wi-Fi;
                            • доступность буфера;
                            • версию iOS;
                            • номер телефона.

                            Читать дальше →
                          • Математическое расследование, как подделывали выборы губернатора в Приморье 16 сентября 2018 года

                              Во втором туре выборов губернатора Приморского края 16 сентября 2018 года встречались действующий и.о. губернатора Андрей Тарасенко и занявший второе место в первом туре коммунист Андрей Ищенко. В ходе подсчета голосов на сайте ЦИК РФ отображалась информационная панель с растущим числом обработанных протоколов и голосов за кандидатов.

                              Публикация подробных данных по участкам на официальном сайте ЦИК www.izbirkom.ru замерла после ввода 1484 (95.74%) протоколов и не возобновлялась до самого конца. Поэтому когда в трансляции лидер голосования вдруг поменялся с Ищенко на Тарасенко, было неясно, как именно это могло произойти. В СМИ просто писали «после обработки 99,03% протоколов лидер сменился».

                              Однако, располагая промежуточными суммарными данными из информационной панели, с помощью простой математики и программирования можно подробно установить, что именно происходило с протоколами в ночь после выборов. Используем Python, Colab от Google и Z3 theorem prover от Microsoft Research. Ну и добьём всё обычной дедукцией.


                              И что же там можно расследовать?
                            • 12 концепций JavaScript, о которых нужно знать

                              • Translation
                              • Tutorial
                              JavaScript — это сложный язык. Если вы, на любом уровне, занимаетесь JavaScript-разработкой, это значит, что вам жизненно необходимо понимать базовые концепции этого языка. В материале, перевод которого мы сегодня публикуем, рассмотрены 12 важнейших концепций JavaScript. Конечно, JavaScript-разработчику нужно знать гораздо больше, но без того, о чём мы будем сегодня говорить, ему точно не обойтись.


                              Читать дальше →