Це частина філософії з відкритим кодом: "якщо ти хочеш, щоб щось було зроблено, захопи лопату". Природно, це зменшує навантаження на розробників, якщо користувачі просто самі складають програму. Не потрібно турбуватися про всі ці архітектури, ОС тощо.
Але, якщо ви створюєте продукт на рівні споживачів (Firefox, Paint.NET, Audacity, Keepass тощо), і ви дбаєте про придбання користувачів, завжди, завжди, завжди! включати двійкові файли. Напевно, лише 2% людей, які натрапляють на ваш веб-сайт і цікавляться вашим товаром, збираються:
- Завантажте відповідний клієнт SCM
- Перегляньте цілу копію вихідного дерева
- Завантажте необхідні інструменти IDE або компілятора (легко кілька сотень МБ для деяких проектів)
- Завантажте та встановіть усі необхідні залежності (та встановіть змінні середовища)
- Запустити нову компіляцію (легко 10-хвилинний процес для деяких проектів)
- Майте справу з будь-якими помилками або проблемами або виникають (які, мабуть, у невеликих проектах не задокументовані - "о так, останнє насправді переписується у відділення, а не в магістраль!")
- Видаліть усе або залиште все на своєму комп’ютері та перекомпілюйте для оновлень.
(Очевидно, що на Linux речі набагато безпечніші, але більшість споживачів все ще використовують Windows.)
Новачкам набагато простіше сказати "о, версія Windows! Завантажте. Запустіть".
Однак багато проектів з відкритим кодом не на рівні споживачів; вони орієнтовані на програмістів, які мають набагато більшу толерантність до такого роду випробувань, і тому бінарні файли - "Зроби сам". На мій досвід, програмісти можуть бути такими ж ледачими, як і користувачі. :)