¿Qué programa en mi computadora contiene más líneas de código y más desarrolladores?
Programa |
Líneas de código |
Número de contribuidores |
Núcleo de Linux |
19,2 M |
4037 |
GNU Core Utilities |
93,6 K |
17 |
Bash |
224 K |
1 |
GNOME |
16,3 M |
776 |
Cinnamon |
777 K |
64 |
LibreOffice |
9,51 M |
213 |
Firefox |
22,2 M |
1291 |
Chromium |
25,6 M |
2109 |
Geany |
236 K |
31 |
KiCAD |
908 K |
324 |
Inkscape |
629 K |
92 |
GIMP |
867K |
74 |
Debian |
85,7 M |
123 |
Nunca me he imaginado que el navegador web contiene más líneas de código que cualquier otro programa en mi compu. La complejidad de un navegador web moderno es increíble. El web contiene 25 años de estándares (HTML, XHTML, DOM, JavaScript, CSS, XML, SOAP, WSDL, XSLT, WebGL, WebGPU, tipos de imagines, vídeo y audio, etc) y todo tiene que ser compatible atrás.
La maquina navegador de Firefox (Gecko) ha sido programado desde el año 1997 y la maquina de Chrome/Edge/Opera/Brave (KHTML -> WebKit -> Blink) fue iniciado en 1998. El código debe ser un lío después de 23 años de desarrollo continuo. ¿Puedes imaginar el problema de mantener código que tiene que soportar 25 años de estándares y necesita mucho rendimiento y mucha seguridad?
La Fundación Mozilla creó la nueva lengua Rust porque fue tan difícil escribir código seguro en C++, que ejecuta en muchos cores a la vez.
Me sorprende el número de personas que contribuyen al código de Chromium, pero hay tantas empresas contribuyendo a su desarrollo (Google, Facebook, Microsoft, Opera, Adobe, Intel, IBM, Samsung, etc.) porque hay 3 mil millones de personas en el planeta que utilizan su código. Sin Blink y V8, el mundo virtual dejaría funcionar.
Yo sabia que el núcleo de Linux tiene más desarrolladores que cualquier software del mundo, porque todo el mundo utiliza su software y tiene que soportar 30 arquitecturas diferentes de chips, producidos por cientos de empresas. Hay cientos de empresas que pagan desarrolladores para contribuir al núcleo de Linux.
Lo que me sorprende es el número limitado de desarrolladores de otros programas. ¿Sólo hay un contribuidor de Bash y 17 de GNU Core Utilities? LibreOffice depende de 213 personas, que es un número muy limitado para mantener un programa de 9,5 millones de líneas de código y casi todos son voluntarios porque muy pocas empresas contribuyen a su desarrollo. Me da rabia cuando yo pienso en los millones de desarrolladores que malgastan su tiempo creando apps inútiles de Android y iOS.
No estoy seguro de que consiste todo el código de Debian. Me imagino que la mayoría de su código es prestado de otros proyectos, pero 123 personas no son muchas cuando pensamos que 2/3 de las maquinas utilizando Linux son de la familia Debian (MX Linux, Ubuntu, Mint, elementary, Zorin, Pop!_OS, PureOS, etc.)