• Python и быстрые HTTP-клиенты

    • Translation
    В наши дни, если вы пишете некое Python-приложение, то вам, скорее всего, придётся оснащать его функционалом HTTP-клиента, который способен общаться с HTTP-серверами. Повсеместное распространение REST API сделало HTTP-инструменты уважаемыми жителями бесчисленного множества программных проектов. Именно поэтому любому программисту необходимо владеть паттернами, направленными на организацию оптимальной работы с HTTP-соединениями.



    Существует множество HTTP-клиентов для Python. Самым распространённым среди них, и, к тому же, таким, с которым легко работать, можно назвать requests. Сегодня этот клиент является стандартом де-факто.
    Читать дальше →
    • +44
    • 11.6k
    • 3
  • Занимательная практика для разработчика

    • Translation
    Человек остается начинающим в течение 1000 дней. Он находит истину после 10000 дней практики.

    Это цитата Оямы Масутацу, которая довольно хорошо излагает суть статьи. Если вы хотите быть классным разработчиком — приложите усилия. В этом весь секрет. Проводите много часов за клавиатурой и не бойтесь практиковаться. Тогда вы вырастите как разработчик.

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

    (предыдущие списки заданий для тренировки: 1) 8 учебных проектов 2) Еще список проектов, на чем потренироваться)

    Проект 1: Pacman


    image

    Создайте свою версию Pacman. Это отличный способ получить представление о том, как разрабатываются игры, понять основы. Используйте JavaScript-фреймворк, React или Vue.

    Вы узнаете:

    • Как передвигаются элементы
    • Как определить какие клавиши нажимать
    • Как определить момент столкновения
    • Вы можете не останавливаться на достигнутом и добавить управление движением призраков

    Пример этого проекта вы найдете в репозитории GitHub

    «Мастер совершает больше ошибок, чем новичок — попыток»
    Читать дальше →
    • +16
    • 13.2k
    • 1
  • Линейная регрессия и градиентный спуск

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

    При этом есть все основания полагать, что показатель Y зависит от показателя X. Это положение может быть как научной гипотезой, так и основываться на элементарном здравом смысле. К примеру, возьмем продовольственные магазины.

    Обозначим через:

    X — торговую площадь(кв. м.)

    Y — годовой товарооборот(млн. р.)

    Очевидно, что чем выше торговая площадь, тем выше годовой товарооборот(предполагаем линейную зависимость).

    Представим, что у нас есть данные о некоторых n магазинах(торговая площадь и годовой товарооборот) — наш датасет и k торговых площадей(X), для которых мы хотим предсказать годовой товарооборот(Y) — наша задача.

    Выдвинем гипотезу, что наше значение Y зависит от X в виде: Y = a + b * X

    Чтобы решить нашу задачу, мы должны подобрать коэффициенты a и b.
    Читать дальше →
  • Обзор методов отбора признаков

    • Translation


    Правильный отбор признаков для анализа данных позволяет:

    • повысить качество моделей машинного обучения с учителем и без, 
    • уменьшить время обучения и снизить требуемые вычислительные мощности,
    • а в случае входных данных высокой размерности позволяет ослабить «проклятие размерности».

    Оценка важности признаков необходима для интерпретации результатов модели.

    Мы рассмотрим существующие методы отбора признаков для задач обучения с учителем и без. Каждый метод проиллюстрирован open source-реализацией на Python, чтобы вы могли быстро протестировать предложенные алгоритмы. Однако это не полная подборка: за последние 20 лет было создано множество алгоритмов, и здесь вы найдёте самые основные из них. Для более глубокого исследования ознакомьтесь с этим обзором.
    Читать дальше →
    • +33
    • 4.8k
    • 4
  • Нескучный туториал по NumPy

    • Tutorial
    Меня зовут Вячеслав, я хронический математик и уже несколько лет не использую циклы при работе с массивами…

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

    Не забываем про

    import numpy as np

    и поехали!
    Читать дальше →
  • Как выглядело бы Московское метро в трехмерном мире

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

    • Схема должна быть удобной и простой для запоминания и ориентирования
    • Схема должна соответствовать географии города

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

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


      Среди читающих этот текст, конечно, много специалистов. И, конечно, все отлично разбираются в своих областях и хорошо оценивают перспективность разных технологий и их развитие. При этом история (которая «учит тому, что она ничему не учит») знает немало примеров, когда специалисты уверенно делали разные прогнозы и промахивались о-о-о-очень сильно: 

      • «У телефона слишком много недостатков, чтобы его можно было серьезно рассматривать, как средство коммуникации. Устройство не представляет для нас никакой ценности», — писали специалисты Western Union, тогда крупнейшей телеграфной компании в 1876 году. 
      • «У радио нет будущего. Летательные аппараты тяжелее воздуха невозможны. Рентгенография окажется обманом», — зажигал Уильям Томсон лорд Кельвин в 1899, и можно, конечно, шутить, что британские ученые зажигали еще в XIX веке, но мы еще долго будем измерять температуру в Кельвинах, и сомневаться в том, что многоуважаемый лорд был хорошим физиком, причин нет. 
      • «Кто, черт возьми, захочет слышать, как актеры говорят?», — говорил про звуковое кино Гарри Ворнер, основавший Warner Brothers в 1927, один из лучших экспертов по кино того времени. 
      • «Нет причин, по которым кому-то нужен домашний компьютер», — Кен Олсон, основатель корпорации Digital Equipment в 1977, незадолго до взлета домашних компьютеров…
      • В наше время ничего не поменялось: «Нет никаких шансов, что iPhone получит значительную долю рынка», — писал в USA Today гендиректор Microsoft Стив Балмер в апреле 2007 перед триумфальным взлетом смартфонов.

      Можно было бы радостно потешаться над этими прогнозами, если бы ваш покорный слуга сам, например, не ошибался довольно серьезно в своей области. И если бы не видел, как массово ошибаются многие и многие эксперты. В общем, наблюдается классическое «никогда такого не было, и вот опять». И опять. И опять. Более того, эксперты и специалисты обречены на ошибки во многих случаях. Особенно когда дело касается проклятых экспоненциальных процессов. 
      Кому интересно, добро пожаловать под кат!
    • Пишем telegram-бота на python с помощью библиотеки telebot часть 1

      Внимание, вышла вторая часть статьи, рекомендую к прочтению



      Лирическое отступление


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

      Установка и настройка


      Для начала давайте скачаем сам python. Сделать это можно на официальном сайте. Не забудьте поставить галочку add to PATH во время установки! После установки python'a нам понадобится хороший редактор кода. На помощь приходит компания JetBrains со своим бесплатным PyCharm. Мы уже близко, осталось скачать библиотеку telebot. Для этого заходим в командную строку и пишем:

      pip install pytelegrambotapi

      Если всё прошло успешно, мы можем продолжать!
      Читать дальше →
    • Всё, что Вы хотели знать о слайсах

        Маленькое вступление. Уверен, что каждый, кто использовал питон некоторое время, полюбил выражения в прямоугольных скобочках. В этой статье я хочу от «а» до «я» рассказать о срезах. Для начала немного о терминологии: в английском языке их называют «slice». Я буду называть их то «слайсами», то «срезами», как в моем понимании этого слова. Будем все учиться на примерах. Для меня, такой метод был бы самым удобным, быстрым и простым.
        Разве есть, что-то, чего я не знаю про эти скобочки?
      • Как найти работу с релокацией в Европу: практический гайд для IT-специалистов

        • Translation
        Сам по себе поиск работы в сфере IT достаточно прост. Что же касается поиска вакансий с возможность релокации, здесь уже сложнее. Несмотря на то, что технологические компании по всему миру сейчас активно нанимают разработчиков и других IT-специалистов из-за рубежа, поиск таких вакансий забирает достаточно много сил и времени.

        В этой статье я решил собрать наиболее популярные сайты/ресурсы, на которых реально найти вакансии с переездом в страны Европы.

        Джоб-борды для IT-специалистов и нишевые сайты


        AngelList


        На сегодняшний день AngelList является одним из наиболее популярных сайтов по поиску работы в стартапах по всему миру. Процесс поиска вакансий с релокацией на этом сайте очень прост – во вкладке «Compensation» выбираем опцию «Company Will Sponsor Visa». Чтобы сузить полученный список вакансий до максимально релевантных, можно использовать фильтры «Role» и «Location».

        image

        Glassdoor


        Многие из вас, наверное, хотя бы раз сталкивались с сайтом Glassdoor. Прежде всего, Glassdoor известен как ресурс, на котором можно почитать отзывы инсайдеров о том или ином работодателе, а также о процессе собеседования и заработных платах в интересующей компании. Помимо этого, на сайте есть огромное количество вакансий в разных странах мира, и не только для IT-специалистов.

        Чтобы найти вакансии, которые предлагают релокейт, пишем в поисковой строке relocation developer или relocation и название интересной вам позиции. Чтобы сузить результаты поиска, уточняем город/страну, куда хотели бы переехать.

        image

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

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

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

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



          Сейчас я ведущий аналитик в группе больших данных в QIWI, но еще три года назад я был довольно далек от датасайнс и об искусственном интеллекте слышал только из новостей. Но потом все изменилось, во многом благодаря Coursera и Kaggle.

          Итак, обо всем по порядку.
          Читать дальше →
        • 50 оттенков matplotlib — The Master Plots (с полным кодом на Python)

          • Translation
          Те, кто работает с данными, отлично знают, что не в нейросетке счастье — а в том, как правильно обработать данные. Но чтобы их обработать, необходимо сначала проанализировать корреляции, выбрать нужные данные, выкинуть ненужные и так далее. Для подобных целей часто используется визуализация с помощью библиотеки matplotlib.



          Встретимся «внутри»!
          Читать дальше →
        • Как оптимизировать pandas при работе с большими datasetами (очерк)

          • Tutorial
          Когда памяти вагоны и/или dataset небольшой можно смело закидывать его в pandas безо всяких оптимизаций. Однако, если данные большие, остро встает вопрос, как их обрабатывать или хотя бы считать.

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

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

          В качестве инфо-основы будет использоваться ранее переведенная статья с Хабра, в которой намешано много интересного.
          Читать дальше →