• Почему же так тяжело привлекать деньги в опенсорс?

    • Перевод
    Это 4-я статья из цикла переводов текстов зарубежных представителей опенсорс движения. Значительная часть предыдущих статей была посвящена анализу причин, мешающих разработчикам активнее участвовать в OS проектах.


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

    Было бы очень интересно узнать об опыте читателей – пользовались ли вы какими-либо из описанных автором сервисами/инструментами? Какие увидели преимущества/недостатки, что сработало/не сработало?

    Приятного чтения!
    Читать дальше →
    • +27
    • 4,9k
    • 4
  • Ваш пакет Composer сломан: обновите идентификатор лицензии

      image


      Если вы, как и я:


      • являетесь мэйнтейнером какой-либо библиотеки или фреймворка;
      • ваша библиотека или фреймворк выпущены под какой-либо свободной лицензией
      • ваша библиотека или фреймворк доступны к установке через Composer и размещены на сервисе Packagist;

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

      Загляните под кат, чтобы узнать, что нужно сделать уже сегодня!
      • +26
      • 5,3k
      • 8
    • pdbe — помощник встроенного Python-дебаггера и процесса отладки


        Привет, Хабрахабр! В этой статье буду делиться собственным опытом отладки большой незнакомой системы, но со стороны собственно написанного инструмента — pdbe. Он поможет с самого начала проекта разобраться в потоке выполнения кода в проекте. Если вам интересно, что спрятано под капотом и какие фичи вы можете использовать — прошу под кат.
        Читать дальше →
      • Перевод книги «Социальная архитектура»: Глава 5. Дизайн, разработка, инновации

        • Перевод
        «Размер и разнообразие сообщества является ключевым фактором.»

        imageДавайте рассмотрим инновации, которые Википедия определяет как «развитие новых ценностей посредством решений, которые отвечают новым требованиям, не явным потребностям или потребностям старых клиентов или рынков в новых способах добавления стоимости». На самом деле это значит решать проблемы более дешевым способом. Звучит просто, но истории рухнувших технологических гигантов говорят об обратном. Я постараюсь объяснить, почему команды часто понимают это не правильно, и предложу способ, как нужно создавать что-то инновационное.
        Читать дальше →
      • Wine 3.0 и много плюшек

          На Хабре незамеченным прошел выход 3-й версии Wine — открытой реализации Win32 API. Трудно найти другой проект с открытыми исходниками, за исключением ядра, который бы так много значил для пользователей Linux, MacOS, FreeBSD и других POSIX-совместимых ОС. Каждый успех разработчиков Wine приводит к тому, что множество новых игр и приложений становятся доступны для пользователей Linux.


          Wine


          В этом плане Wine 3.0 явно не разочаровал: поддержка Direct3D 10 и 11, графический драйвер Android, поток команд Direct3D, реализован криптографический стандарт AES, новый уровень поддержки Direct Write и Direct2D — вот основные результаты. По итогам более 6000 внесенных правок произошло много интересного, включая переход дефолтной версии с Windows XP на Windows 7.


          • 4586 приложений с высшим, платиновым статусом. Работают без нареканий.
          • 3918 приложений с золотым статусом. При минимальных настройках и внешних DLL работают без нареканий.
          Читать дальше →
        • Неявность

          • Перевод

          Часто, когда я обсуждаю дизайн Rust на RFCs или на internals-форуме с другими пользователями, я замечаю характерные высказывания насчет явности. Обычно что-то в духе:


          Мне не нравится <дизайн возможности X>, потому что он менее явный. Всякая магия уместна в <другом языке Y>, а Rust — это явный язык, так что следует использовать <дизайн возможности Z>.

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


          В своей опубликованной ранее в этом году заметке Аарон пытался докопаться до сути вопроса явности, обсуждая размер контекста (reasoning footprint). Он попытался разбить понятия "явность" и "неявность" на составные части, чтобы подготовить почву для суждения о явности дизайна той или иной возможности. Я же хочу изложить немного другой взгляд на проблему и попытаюсь очертить в общих словах, что мы подразумеваем под словом "явный".


          Английский — довольно нечеткий язык, в котором прилагательные имеют множества контекстно-зависимых значений, например, как используется слово "нечеткий" (fuzzy) в предыдущем предложении. Слово "явный" тоже многозначно, так что я не могу утверждать наверняка, что кто-то неправильно использует это слово. Однако я предлагаю выражать свои мысли при обсуждении "явности" более четко, чтобы все лучше понимали, о чем именно идет речь.

          Читать дальше →
        • AdBlock похитил этот баннер, но баннеры не зубы — отрастут

          Подробнее
          Реклама
        • Замок или Город

          • Перевод
          Я собираюсь обсудить два основных архетипа большой организации — замок и город — и сравнить их. А что насчет вашего проекта? Это замок или город?

          image

          Замок


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

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

          Устройство Замка строится как бесконечный ряд особых случаев, накапливающихся со временем, иногда уничтожаемых или же перестраиваемых, но всегда воспринимающихся как единое целое. Нет никакой последовательной структуры, никакой регулярности, только план, который всегда является несколько устаревшим. Вам может потребоваться много лет, чтобы узнать расположение Замка и если вы не являетесь одним из главных людей в Замке или слугой, то этот поиск будет абсолютно бесполезным, так как вы в любом случае не можете пойти куда-то без приказа или разрешения.
          Читать дальше →
        • История взлома одного WordPress плагина — или о том, как вы допускаете уязвимости в своих проектах

            Давным давно, когда я был молод и писал сайты на PHP, я написал SEO плагин для маскировки внешних ссылок для Wordpress. Поскольку с воображением у меня плохо, то назвал его WP-NoExternalLinks. За всю историю у него было 360.000 установок и, кажется, до 50.000 активных установок.

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

            Читать дальше →
          • Chromium: другие ошибки

              Доставка ошибокМы завершаем цикл статей, посвященных рекомендациям по написанию качественного кода на примере ошибок, найденных в проекте Chromium. После написания 6 статей, у нас всё ещё остаётся много нерассмотренных ошибок. Эти ошибки разнородны и про них сложно составить материал на определённую тему. Поэтому в этой седьмой статье будут просто выбраны и рассмотрены наиболее интересные дефекты.

              Как я писал в вводной статье, просматривая отчёт, выданный анализатором PVS-Studio, я заметил около 250 ошибок в проекте Chromium и использованных в нём библиотеках. Отчёт я смотрел достаточно бегло, поэтому, на самом деле, ошибок можно найти намного больше.

              После вводной статьи я написал еще 6, где рассматривал различные паттерны ошибок. Писал я эти статьи, писал, и всё равно, у меня остаётся около 70 примеров ошибок. Сделать на основании оставшихся багов статьи на разные темы я затрудняюсь. Возможно, я устал. Впрочем, есть и другая причина — меня ждёт отчёт о проверке XNU и мне не терпится им позаниматься.
              Читать дальше →
            • Вышел GitLab 10.4 c динамическим тестированием безопасности приложений и бета-версией Web IDE

              • Перевод

              Картинка для привлечения внимания


              В первом релизе 2018 года мы внесли улучшения в процессы планирования, тестирования, развертывания и работы с мерж-реквестами. Кроме того, в данный релиз включены новые возможности тестирования безопасности, а также первая версия Web IDE, который является частью нашего амбициозного проекта Complete DevOps.


              Читать дальше →
              • +24
              • 5,2k
              • 4
            Самое читаемое