• У кого трава зеленее и код лучше? Сравнение жизни программистов из Японии с их собратьями из Германии и Америки

    • Перевод
    Я проработал в сфере IT около 25 лет, из которых 12 лет был в Японии, 5 лет в США и около 8 лет в Германии, где и тружусь на данный момент в качестве System Operations Engineer. Поскольку все это у меня прошло в рамках одной компании, я не могу сравнить свой опыт с работой в других корпорациях или сферах разработки, но попробую рассказать о разнице в работе в разных странах. Думаю, эта информация будет полезна для тех, кто собирается стать разработчиком либо искать работу в другой стране. Дисклеймер: вся информация строго субъективна, просьба близко к сердцу не воспринимать.
    Читать дальше →
  • Простейший голосовой помощник на Python



      Для создания голосового помощника не нужно обладать большими знаниями в программировании, главное понимать каким функционалом он должен владеть. Многие компании создают их на первой линии связи с клиентом для удобства, оптимизации рабочих процессов и наилучшей классификации звонков. В данной статье представлена программа, которая может стать основой для Вашего собственного чат-бота, а если точнее – голосового помощника для распознавания голоса и последующего выполнения команд. С ее помощью мы сможем понять принцип работы наиболее часто встречаемых голосовых помощников.
      Читать дальше →
      • +16
      • 7,6k
      • 9
    • История и анализ одной из причин кризиса современной физики

      1. Введение


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

      Скажите, пожалуйста:

      1. Кризис в современной физике продолжается? Он имеет место даже сейчас или же он уже был давно и успешно преодолен, а ученые продвигаются вперед к новым знаниям?
      2. Имеет ли место сегодня «правильный» путь развития науки (без кризиса) или же современная теоретическая физика это не наука, а иллюзия по справедливому замечанию Маху (фантастика или лженаука)?
      3. Чтобы устранить кризис необходимо выполнить следующие условия:

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

      В современных научных критических публикациях нет убедительного описания основных причин кризиса. Некоторые ученые пишут, например, об ограниченности классических теорий, поскольку они, опираясь на классические теории, не смогли дать объяснение новым экспериментальным открытиям. Высказывается мысль о слабом владении философией (теорией познания научной истины).
      Читать дальше →
    • Обзор python-пакета yadirstat — самый простой способ получить статистику из API Яндекс Директ

      • Tutorial
      Здравствуйте, мне приходится собирать статистику из Яндекс Директ и, чтобы упростить работу, я опубликовал свой python-пакет, с помощью которого это можно делать очень просто.

      Сначала вам следует получить токен для своего аккаунта (подробнее тут)

      Пакет yadirstat уже опубликован на pypi — вы сможете установить его с помощью pip

      pip install yadirstat

      Пакет позволяет получить следующую статистику:

      • Статистика по кампаниям
      • Статистика по условиям показов (например, ключевые слова и аудитории)
      • Статистика по поисковым запросам
      Читать дальше →
    • Язык программирования karasic

        Привет, друг.


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


        Читать дальше →
      • Zip-файлы: история, объяснение и реализация

        • Перевод


        Мне давно было интересно, как сжимаются данные, в том числе в Zip-файлах. Однажды я решил удовлетворить своё любопытство: узнать, как работает сжатие, и написать собственную Zip-программу. Реализация превратилась в захватывающее упражнение в программировании. Получаешь огромное удовольствие от создания отлаженной машины, которая берёт данные, перекладывает их биты в более эффективное представление, а затем собирает обратно. Надеюсь, вам тоже будет интересно об этом читать.

        В статье очень подробно объясняется, как работают Zip-файлы и схема сжатия: LZ77-сжатие, алгоритм Хаффмана, алгоритм Deflate и прочее. Вы узнаете историю развития технологии и посмотрите довольно эффективные примеры реализации, написанные с нуля на С. Исходный код лежит тут: hwzip-1.0.zip.
        Читать дальше →
      • Нейросети в трейдинге. Рано хоронить

        Эта статья — мой расширенный ответ на недавнюю публикацию «Мечтают ли нейросети об электроденьгах?», в которой автор многословно и подробно объясняет почему нейросети точно не могут работать в трейдинге и почему предсказание цены невозможно.
        Читать дальше →
      • Полный разбор экзамена ШАД-2019

          Привет! Меня зовут Азат, я студент 3 курса Факультета Компьютерных Наук ВШЭ. На днях ко мне обратился знакомый с Экономики ВШЭ и попросил помочь с решением задач вступительного экзамена в ШАД. Мы с однокурсником Даниилом посмотрели на задания, они показались нам довольно сложными, но очень интересными, захотелось поломать над ними голову. В итоге мы прорешали 1 из вариантов 2019 года и хотим показать наши решения миру.


          Читать дальше →
        • Создание собственного элемента на примере таблицы на C# для Windows Form

          Доброго времени суток!

          В данной статье я опишу создания своих элементов для C# Windows Form.

          Для примера буду создавать таблицу со всем функционалом DataGridView. Позже перейдем на свои элементы. Создание первого элемента разобьем на несколько уроков. В данном уроке произведем от рисовку таблицы, а также: создание столбцов, строк, ячеек.

          Для написания будем использовать .Net FrameWork 4.7.x, среда разработки Visual Studio 2019.

          В первую очередь создадим обычный проект Windows Form. Думаю не нужно это показывать. А уже потом создаем проект «Библиотека элементов управления Windows Form»(Назовем его CustomControl).

          Далее у нас будет создан файл UserControl.cs. Удаляем его и создаем обычный класс TableCustoms.cs.Наш класс будет наследоваться от класса Control.
          Читать дальше →
        • Вредные советы при работе с ANTLR

            Вашему вниманию предлагается набор вредных советов, которые помогут вам создать наиболее производительный парсер. Не забывайте делать все по инструкции, иначе что-нибудь пойдет не так!
            Читать дальше →
          • Добавляем в Jupyter Notebooks красоту и интерактивность

              Многие используют в своей работе Jupyter Notebooks. Но с ростом сложности проекта появляются проблемы. В блокноте появляются ячейки с красными пометками для самого себя «перед запуском укажи число...» или «задай количество итераций исходя из...». Какой-то откат к командной строке получается.

              Да и вывод данных на экран не всегда воспринимается без пояснений сторонним человеком, который привык к красивым таблицам, картинкам и прочим современным элементам интерфейса.
              Читать дальше →
            • Метод решения системы диофантовых уравнений

                Добрый день!


                Как и обещал в первой своей статье, я хочу ознакомить Вас с одним из методов решения системы диофантовых уравнений. Цель статьи ознакомить остальных читателей с этой методикой и донести её в более или менее понятном виде.


                Рассмотрим систему из двух диофантовых уравнений


                image
                и


                image

                Читать дальше →
              • 2019 год на Хабре в цифрах: постов больше, минусуют так же, комментируют активнее


                  Команда Хабра почти в полном составе

                  Мы можем только догадываться, как всё выглядело снаружи, но изнутри Хабра 2019-й показался чертовски насыщенным. Мы по чуть-чуть меняли подход то тут, то там, и все вместе эти мелочи сделали проект более открытым и дружелюбным. Мы «раскрутили гайки» — теперь на Хабр можно репостить из личных блогов, а за посты голосовать дольше; новых авторов встречает специальная страница, заряженная на успех; мы постоянно улучшаем мобильную версию и потихоньку готовимся к релизу PWA. В начале года мы запустили англоязычную версию, и 12 месяцев спустя на нее заходят уже 400 тысяч человек ежемесячно. А в конце года мы сделали ребрендинг и теперь наши проекты-сателлиты по-настоящему стали частью Хабра и доступны по говорящим адресам career.habr.com, freelance.habr.com и qna.habr.com. Заодно в декабре немного видоизменили и навигацию, подчеркнув, что тут есть не только потоки о разработке и администрировании, но и сравнимый по масштабу раздел с научно-популярными статьями, а еще потоки о дизайне, менеджменте и маркетинге. Но что бы мы там ни меняли, главное осталось на месте — во главе угла стоит контент, которые создают участники сообщества. Об этом сейчас расскажем подробнее.
                  Читать дальше →
                • Чем программирование сегодня отличается от программирования 20 лет назад?

                  • Перевод


                  Я увидел этот вопрос на Quora и начал писать ответ. Но ответ получился слишком большим, так что я превратил его в эту статью.


                  Вот часть изменений в случайном порядке, которые я заметил в программировании за последние 20 лет:


                  • Многие концепции, которые были лишь теоретическими 20 лет назад, сегодня широко применяются на практике. Например, такие функциональные парадигмы как неизменяемость объектов, хвостовая рекурсия, ленивые коллекции, сопоставление с шаблоном, функции первого класса и взгляд свысока на тех, кто всё это не использует.
                  • «Десктопным приложением» многие неиронично называют упакованный браузер со страницей по умолчанию и без адресной строки.
                  Читать дальше →
                • Что принёс нам Pandas 1.0

                  • Перевод


                  9 января состоялся релиз Pandas 1.0.0rc. Предыдущая версия библиотеки — 0.25.


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


                  Все изменения можно посмотреть здесь, в статье же мы ограничимся небольшим, менее техническим обзором самого главного.

                  Читать дальше →
                  • +40
                  • 12,8k
                  • 6
                • А что, если земля плоская?

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

                    Наверно это важно, но я не поборник теории плоской земли, да и вообще теории заговоров недолюбливаю примерно все.

                    Тут я планирую порассуждать в контексте «Почему так?» на темы работы нашего сознания в контексте дискуссионного поведения. Не имею планов срыва завес и открытия тайн, но может кому-то станет яснее происходящее в спорах.

                    Ещё одна ремарка: я не имею медицинского образования, но много начитан и в ближайшем круге общения есть некоторое количество психологов. Да и вообще, за последние годы мои юношеские представления о том, как работает сознание, обрели большую обоснованность и терминологическую подкреплённость. Так что ниже тут будет выжимка наблюдений, приправленная дилетантским изложением современных научных взглядов на работу сознания. А моё личное мнение про плоскость земли будет в конце этого опуса.
                    Читать дальше →
                  • n-Queens Completion Problem — линейный алгоритм решения

                      EricGrig


                      Предисловие


                      Я хотел бы начать предисловие со слов благодарности двум замечательным программистам из Одессы: Андрею Киперу (Lohica) и Тимуру Гиоргадзе (Luxoft), за независимую проверку полученных мною результатов, на начальном этапе исследования.

                      1. Статья «Linear algorithm for solution n-Queens Completion Problem» была опубликована в (arXiv.org) в начале первого дня 2020 года. Изначально статья была написана на русском, поэтому здесь представлено базовое изложение, а там — перевод.
                      2. Данная задача, и некоторые другие из множества NP-Complete (задача выполнимости булевых формул (3-SAT), задача о поиске максимальной клики, или клики заданного размера …) в разное время, входили в сферу моих интересов. Я искал алгоритмическое решение на основе различных вычислительных экспериментов, но конкретного успеха не было. Это было похоже на то, как человек пытается научиться подтянутся на турнике на одной руке. Результата нет, но каждый раз появляется надежда, что скоро все получится. Последний раз я решил, что следует подольше остановиться на задаче n-Queens Completion (как одной из представителей семейства) и попытаться что-то сделать. Здесь уместно вспомнить замечательный Одесский анекдот: «В переполненном автобусе, который вечером по ухабистой дороге возвращается в пригород, раздается голос женщины – Мужчина, если уж полностью на меня легли, так сделайте хоть что-нибудь».
                      3. Исследование длилось достаточно долго – почти полтора года. С одной стороны, это связано с тем, что в процессе исследования, рассматривались и другие задачи, с другой – по ходу решения были сложные вопросы, без ответа на которые не удалось бы идти вперед. Перечислю некоторые из них:

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

                      Читать дальше →
                    • Mask-R CNN от новичка до профессионала


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

                      Читать дальше →
                    • Deep Reinforcement Learning: как научить пауков ходить


                      Сегодня я расскажу, как я применил алгоритмы глубинного обучения с подкреплением для управления роботом. Вкратце, поведаю о том, как создать «чёрный ящик с нейросетями», который на входе принимает архитектуру робота, а на выходе выдаёт алгоритм, способный им управлять.


                      Основой решения является алгоритм Advantage Actor Critic (A2C) с оценкой Advantage через Generalized Advantage Estimation (GAE).


                      Под катом математика, реализация на TensorFlow и множество демок того, к каким способам ходьбы сошлись алгоритмы.


                      Читать дальше →
                    • Грокаем PyTorch

                      • Перевод
                      Привет, Хабр!

                      У нас в предзаказе появилась долгожданная книга о библиотеке PyTorch.



                      Поскольку весь необходимый базовый материал о PyTorch вы узнаете из этой книги, мы напоминаем о пользе процесса под названием «grokking» или «углубленное постижение» той темы, которую вы хотите усвоить. В сегодняшней публикации мы расскажем, как Кай Арулкумаран (Kai Arulkumaran) грокнул PyTorch (без картинок). Добро пожаловать под кат.
                      Читать дальше →