• Законы программирования

    • Перевод

    Законы, теории, принципы и закономерности, полезные для разработчиков


    Введение


    Перевод репозитория github.com/dwmkerr/hacker-laws

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

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

    Законы


    Закон Амдала


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

    • Tutorial

    image


    “Разработка API сложна, Postman делает её лёгкой” © Postdot Technologies, Inc

    Когда видишь описание инструментов Postman — захватывает дух, просыпается чувство всевластия над своим будущим детищем. Кажется, что и взрощенные в прошлом "монстры" наконец-то падут перед тобой!


    В этой статье мы расскажем о Postman и попробуем написать свой первый скрипт.

    Читать дальше →
  • Решение забавной задачки на JavaScript

    • Перевод
    Наша история начинается с твита Томаша Лакомы, в котором он предлагает представить, что такой вопрос встретился вам на собеседовании.



    Мне кажется, что реакция на такой вопрос на собеседовании зависит от того, в чём конкретно он заключается. Если вопрос действительно в том, каково значение tree, то код можно просто вставить в консоль и получить результат.

    Однако если вопрос в том, как бы вы решили эту задачу, то всё становится достаточно любопытным и приводит к проверке знаний тонкостей работы JavaScript и компилятора. В этой статье я попробую разобрать всю эту неразбериху и получить интересные выводы.
    Читать дальше →
  • Настраиваем домашний почтовый сервер и уходим с «бесплатной» почты

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

    Читать далее
  • 37 источников тест-идей

    • Перевод

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

    Что самое первое, что мы изучаем в тестировании? - Правильно, тест-идеи, которые являются базой для всего тестирования в дальнейшем! Возможно, кому-то покажется, что это очень простая тема - берем требования, пишем на основе требований тесты и тестируем. НО мой практически опыт (15 лет) показывает, что все не так просто, и тесты на основе требований — это в лучшем случае одна треть из того, что можно и нужно протестировать. А две третьих - то, что не отражено в требованиях, что необходимо собирать по крупицам во всем что окружает проект: окружение, код, домен и т.д. На сколько успешным будет подобный сбор чаще всего зависти от опыта тестировщика, кто этим занимается. Но даже опыт тестировщика не может быть гарантией того, что все возможные области будут покрыты. А если в проекте нет опытных тестировщиков, что же делать? Выпускать проект недотестированным?

    Читать далее
  • Ретроспектива решений прошлого, которое влияет на наше настоящее и будет влиять на будущее


      Размер крупа лошади два тысячелетия назад определил размер ракетных двигателей сегодня.

      Задумывались ли вы о том, как каждое наше решение определяет будущее? Иной раз не на один год, десятки, сотни, тысячи лет. Почему мы не можем делать двигатели ракет больше? Почему байт равен именно 8 битам, а не 7 или 16, а может даже 48? А ведь он был равен этим числам раньше! Почему виртуальный терминал Linux до сих пор имеет скорость порта подключения? Давайте поговорим о том, как какое-то решение в прошлом определяет наше настоящее, и как же мы можем повлиять на наше будущее.
      Читать дальше →
    • Так какими же должны быть идеальные шахматы?

      Так какими же всё таки должны быть идеальные шахматы?

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

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

      Так какими же они должны быть?
    • Не так страшен черт, как его малюют: как мы перевели разработку ЦФТ-Банк на платформу CFT Platform IDE (Admin 2.0)


        Финансовые компании находятся в поисках лучших решений, которые оптимизируют внутренние процессы разработки, разовьют IT-инфраструктуру в соответствии с требованиями бизнеса и позволят им выводить на рынок лучшие конкурентные продукты. Так, два года назад мы ступили на путь перевода разработки ЦФТ-банк на платформу CFT Platform IDE. Среди коллег по цеху ходят слухи, что это процесс невероятной сложности, ввиду чего не решаются приступить к делу. На своем примере мы докажем, что это вполне подъемный процесс и для вашей команды.

        Читать дальше →
      • Анатомия GNU/Linux

        Какое-то время назад на Хабре была небольшая волна постов на тему «Почему я [не] выбрал Linux». Как порядочный фанатик я стриггерился, однако решил, что продуктивнее что-нибудь рассказать о своей любимой системе, чем ломать копии в комментариях.

        У меня сложилось впечатление, что многие пользователи GNU/Linux слабо представляют, из чего сделана эта операционная система, поэтому утверждают, что она сляпана из попавшихся под руку кусков. В то же время, архитектура большинства дистрибутивов является устоявшейся и регламентируется рядом стандартов, включая стандарт графического окружения freedesktop.org и Linux Standard Base, расширяющий стандарты Unix. Мне при знакомстве с GNU/Linux несколько лет назад для погружения не хватало простой анатомической карты типичного дистрибутива, поэтому я попробую рассказать об этом сам.

        Читать далее