• Мой топ бесплатных инструментов для разработчиков

    • Перевод
    Это перевод статьи с ресурса dev.to. Ее автор Fayaz Ahmed делится списком своих любимых инструментов для разработчиков.



    Я разрабатываю такие проекты, как Tvflix, GSON, Appy Dev, а также множество различных микропроектов, поэтому увлекаюсь поиском бесплатных инструментов для моей работы.

    Это мой личный список, но вы можете его дополнить другими удачными инструментами. Здесь перечислены некоторые из моих любимых.
    Читать дальше →
    • +9
    • 21,8k
    • 9
  • Убунту OpenBox, установка и настройка

    С возрастом всё больше становится жалко времени на бесплодные ёрзанья мышкой; всё больше раздражения вызывает загружаемый с каждой DE какой-то бесконечный хлам, который съедает время и ресурсы с малопонятными целями. И начинается традиционное нисхождение: от KDE к XFCE, потом к LXDE. Наверное, когда-нибудь я дойду и до голой консоли на десктопе. Но пока меня остановил OpenBox.



    Читать дальше →
  • Создание бесшовных карт шума

    • Перевод
    image

    Создать бесшовное изображение в Photoshop легко: обрезать изображение, взять обрезанную правую и нижнюю части, а потом приклеить их слева и сверху при помощи инструмента «Ослабить» (Fade). Но для правильной реализации бесшовных карт шума придётся хорошенько подумать.

    Если у вас есть базовое представление о шуме Перлина, то вы знаете, что он состоит из интерполированных случайных чисел. В основном он используется в двух измерениях. Но также он полезен и в одном измерении (например, при движении), в трёх измерениях (цилиндрическое и сферическое преображение 3D-объектов), и даже в четырёх или пяти измерениях.

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

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

    • Перевод
    • Tutorial

    image


    Сегодня я поделюсь с вами пошаговым руководством как написать свой babel плагин. Вы сможете использовать эти знания для автоматизации правок, рефакторинга или кодогенерации.

    Читать дальше →
    • +14
    • 3,4k
    • 2
  • Теория относительности в картинках

    • Tutorial
    В своей статье я хотел бы рассказать о теории относительности. Эта теория не требуется в представлении. С самого своего создания она была окутана ореолом тайны, поскольку полностью подрывает наши привычные представления о пространстве и времени. Все мы в школе учили формулы теории относительности, но мало кто действительно понимал их. И это не удивительно, ведь человеку, чтобы по-настоящему понять какую-то теорию во всей её красоте, полноте и непротиворечивости, не достаточно знать формулы. Нужно иметь какой-то визуальный ориентир, нужна динамика, чтобы было что-то, что можно повертеть в руках. Я решил восполнить этот пробел и написал небольшую программку, в которой можно «повертеть в руках» пространство-время. Мы, как настоящие исследователи, с помощью небольших экспериментов попытаемся выяснить основные свойства этой загадочной материи.
    Под катом много картинок (и ни одной формулы).
    Читать дальше →
  • Как Хабр взаимодействует с госорганами и другими заявителями. Transparency report за все года

      Привет, Хабр! Наконец-то представлюсь — меня зовут Алексей Шевелёв, и в Хабре я руковожу отделом по борьбе работе с пользователями (куда входит фидбек через форму обратной связи по всем проектам), попутно являясь комьюнити-менеджером. Иногда мне приходится взаимодействовать с разными государственными службами. Сегодня я расскажу, как это происходит.


      Читать дальше →
    • Дайджест свежих материалов из мира фронтенда за последнюю неделю №398 (13 — 19 января 2020)

        Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.

        Читать дальше →
      • Каким станет электронный документооборот после вступления в силу изменений в закон об электронной подписи?

        Приветствую вас, друзья!

        Недавно я ознакомился с новым законом, который вносит существенные поправки в сферу электронного документооборота, а именно в 63-ФЗ «Об электронной подписи» (далее — ЭЦП). Внедрение изменений предполагается за счет использования IT-технологий, например, они коснулись способов хранения электронного ключа, теперь он будет храниться в облачном сервисе.

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

        Речь идет о законе № 476-ФЗ «О внесении изменений в Федеральный закон «Об электронной подписи». 28 декабря он был опубликован на официальном интернет-портале www.pravo.gov.ru, а значит прошел все стадии подписания и рассмотрения. Он вступит в законную силу 1 июля 2020 года, кроме п.14 ст.1, он начнет действовать 1 января 2022 года.


        Читать далее...
      • Охота за уязвимостями на 7% эффективнее

          «За что я люблю Россию, так это за низкие налоговые ставки» — анонимуc

          С ростом дохода у охотника за уязвимостями все более остро становится вопрос о налогах. После определенных сумм мне стало жалко отдавать 13% (даже несмотря на то, что у коллег из США это вообще 30%). К тому моменту я уже слышал об упрощенке для ИП и решил провести ресерч, чтобы понять как я могу уменьшить сумму налога законными способами.

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

          image
          Читать дальше →
        • Наборы и конструкторы для начинающих электронщиков 6-10 лет. Что доступно в магазинах

            После серии моих публикаций, мне посыпались вопросы, а что я могу порекомендовать для детей 6-10 лет, которым родители хотели бы показать «основы» радиоэлектроники? Я посмотрел что есть в масс-маркете и составил свой список. Он не окончательный и я надеюсь в комментариях вы выскажете свое мнение о нем и предложите свои варианты.


            Читать дальше →
          • [Обновлено в 10:52, 14.12.19] В офисе Nginx прошел обыск. Копейко: «Nginx был разработан Сысоевым самостоятельно»

              Другие материалы по теме:


              Eng version
              Что значит наезд на Nginx и как это отразится на индустрииdeniskin
              Open source — наше всё. Позиция Яндекса по ситуации с Nginxbobuk
              Официальная позиция Программных комитетов Highload++ и других IT-конференций на претензии к Игорю Сысоевуolegbunin


              По информации от одного из сотрудников, в московском офисе опенсорс-разработчиков Nginx проводят обыски в рамках уголовного дела, истцом по которому выступает Рамблер (ниже официальный ответ пресс-службы компании по этому вопросу и подтверждение наличия претензий к Nginx). В качестве доказательств приводится фото постановления о производстве обыска в рамках уголовного дела, возбужденного 4 декабря 2019 года по статье 146 УК РФ «Нарушение авторских и смежных прав».

              Фото постановления о производстве обыска


              Как предполагается, истцом выступает компания Рамблер, а ответчиком пока «неустановленная группа лиц», а в перспективе — основатель Nginx Игорь Сысоев.

              Суть претензии: Игорь начал работу над Nginx, будучи сотрудником Рамблера, а только после того, как инструмент стал популярен, основал отдельную компанию и привлек инвестиции.

              Почему Рамблер вспомнил о своей «собственности» только спустя 15 лет — неясно.
              Читать дальше →
            • Что нового можно ожидать от Node.js в 2020 году?

              • Перевод
              В 2019 году Node.js исполнилось 10 лет. Количество пакетов, доступных в реестре npm, пересекло отметку в 1 миллион. С каждым годом объём загрузок самой платформы Node.js увеличивается на 40%. Ещё одной важной вехой для Node.js стало то, что этот проект присоединился к OpenJS Foundation. Благодаря этому можно ожидать улучшения состояния и стабильности проекта, а также, в целом, положительных сдвигов в области взаимодействия членов JavaScript-сообщества.



              Несложно заметить то, что за короткий отрезок времени, за год, в мире Node.js произошло много всего интересного. Каждый год Node.js набирает обороты. У нас нет причин рассчитывать на что-то другое в 2020.

              В следующих релизах Node.js нас ждёт множество интересных возможностей. Этот материал посвящён наиболее значительным новшествам платформы, которые могут появиться в ней в 2020 году.
              Читать дальше →
            • Всё про налоги для IT-фрилансеров. Налоговая нагрузка ИП на разных режимах. Часть 3


                Это третья, заключительная часть из цикла. В предыдущей статье мы подробно рассказали об УСН, патенте и налоге для самозанятых. В этой части рассчитаем налоговую нагрузку для ИП с доходом 100, 200 или 300 тыс. руб. в месяц на разных режимах.


                Также вы можете зарегистрироваться в онлайн-бухгалтерии 1С: БизнесСтарт и самостоятельно поиграться с цифрами в калькуляторе, чтобы посмотреть какой режим выгоднее для вас.

                Читать дальше →
              • Как оценить уровень владения английским языком



                  На Хабре много статей о том, как самостоятельно изучать английский язык. Но вот вопрос, а как оценить свой уровень при самостоятельном изучении? Понятно, что есть IELTS и TOEFL, но эти тесты почти никто не сдает без дополнительной подготовки и эти тесты, как говорят, оценивают не сколько уровень владения языком, а скорее умение проходить эти самые тесты. Да и использовать их для контроля самообучения будет накладно.

                  В этой статье я собрал различные тесты, которые проходил сам. При этом я сверяю свою субъективную оценку владения языком с результатами тестов. А также сравниваю результаты между разными тестами.
                  Читать дальше →
                • Часто задаваемые вопросы о системах типов

                  • Перевод
                  Автор статьи, перевод которой мы сегодня публикуем, говорит, что источником вдохновения для её написания послужил этот пост и комментарии к нему. По его словам, IT-специалисты имеют неправильные представления о типах, используют некорректную терминологию и, обсуждая вопросы, связанные с типами, приходят к ошибочным выводам. Он отмечает то, что не является защитником статической системы типов. Единственное, что его беспокоит — это правильное использование терминов. Это позволяет вести конструктивные дискуссии. Автор говорит, что написал этот материал спонтанно, но надеется на то, что в нём нет ошибок. Если же он что-то и напутал — он просит дать ему об этом знать.



                  Давайте раз и навсегда разберёмся во всём том, что вызывает неразбериху при разговорах о системах типов.
                  Читать дальше →
                • Скрипт настройки Windows 10

                  Давно хотел поделиться своим скриптом по автоматизации настройки Windows 10 (на данный момент актуальная версия 18363), да все руки не доходили. Возможно, он будет кому-то полезен целиком или только его части. Конечно, будет проблематично описать все пункты настройки, но постараюсь выделить самое важное.

                  Если кому-то интересно, то добро пожаловать под кат.
                  Читать дальше →
                • Применяем github actions для CI и автоматическая публикация на npm

                  • Tutorial

                  Github actions


                  Привет, Хабр. Это статья о том как автоматизировать ваш проект с помощью github actions.
                  Автоматизация будет делиться на:


                  • CI — над каждым коммитом будут проведены тесты
                  • Publish — при релизе публикуем версию в npm
                  Читать дальше →
                • Сравнение React Native и Flutter с точки зрения их применения в реальных проектах

                  • Перевод
                  Чем React Native отличается от Flutter, за исключением того, что речь идёт о разных фреймворках, в основу которых положены разные технологии? На что ориентироваться тому, кто не знаком с этими инструментами для разработки кросс-платформенных приложений, но хочет выбрать один из них для своего очередного проекта?



                  Автор статьи, перевод которой мы публикуем, говорит, что в последнее время ему попадалось множество сравнений React Native и Flutter. Во всех этих сравнениях речь шла о таких вещах, которые, на самом деле, особого значения не имеют. Например — о языках, используемых для разработки проектов, или об инструментах командной строки. Здесь будет сделано сравнение React Native и Flutter с точки зрения реального положения дел, с точки зрения того, что имеет значение для настоящих проектов. Это сравнение призвано снабдить всех желающих сведениями, которые помогут им выбрать именно то, что им нужно.
                  Читать дальше →
                • Нарастающий итог в SQL

                  • Tutorial
                  Нарастающий (накопительный) итог долго считался одним из вызовов SQL. Что удивительно, даже после появления оконных функций он продолжает быть пугалом (во всяком случае, для новичков). Сегодня мы рассмотрим механику 10 самых интересных решений этой задачи – от оконных функций до весьма специфических хаков.
                  Читать дальше →
                • TDD: как правильно писать спецификации (describes)

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

                    Однако они очень важны.

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

                    Каким образом мы могли бы сделать наши утверждения лучше?
                    Читать дальше →