Mentre ci sono certamente molte decisioni economiche, sociali e pratiche da prendere quando si decide se un sistema dovrebbe essere open source, ci sono situazioni in cui è impossibile, puramente dal punto di vista tecnico, aprire il codice?
Essenzialmente; una funzionalità che, quando il codice è reso pubblico, invalida / riduce la funzionalità di tale funzione.
Alcuni esempi a cui posso pensare:
- Barare in Quake - una volta che il gioco è stato rilasciato come open source, l'id ha dovuto rilasciare un -source 'wrapper' per convalidare il codice client al fine di prevenire imbrogli.
- Reddit - mentre la maggior parte della fonte del sito di notizie sociali Reddit è disponibile, i loro meccanismi anti-spam non lo sono. Se gli spammer sapessero come hanno funzionato, sarebbero più facili da aggirare.
Entrambi i problemi legati alla sicurezza e entrambi derivanti dall'utilizzo di implementazioni, gli esperti di sicurezza probabilmente disapprovano (Quake: fidarsi del cliente, Reddit: sicurezza attraverso l'oscurità). Se ci sono alternative praticabili a queste implementazioni è un'altra questione ...
Quali altri esempi ci sono di questo? Ci sono quelli che non sono legati alla sicurezza? Sono tutti dovuti a "soluzioni alternative" per far funzionare i nostri sistemi con la tecnologia che abbiamo?