10.3: ¿Por qué Open Source?
- Page ID
- 61487
\( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)
\( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)
( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)
\( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)
\( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)
\( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)
\( \newcommand{\Span}{\mathrm{span}}\)
\( \newcommand{\id}{\mathrm{id}}\)
\( \newcommand{\Span}{\mathrm{span}}\)
\( \newcommand{\kernel}{\mathrm{null}\,}\)
\( \newcommand{\range}{\mathrm{range}\,}\)
\( \newcommand{\RealPart}{\mathrm{Re}}\)
\( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)
\( \newcommand{\Argument}{\mathrm{Arg}}\)
\( \newcommand{\norm}[1]{\| #1 \|}\)
\( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)
\( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)
\( \newcommand{\vectorA}[1]{\vec{#1}} % arrow\)
\( \newcommand{\vectorAt}[1]{\vec{\text{#1}}} % arrow\)
\( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vectorC}[1]{\textbf{#1}} \)
\( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)
\( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)
\( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)
\( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)
\( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)
\(\newcommand{\avec}{\mathbf a}\) \(\newcommand{\bvec}{\mathbf b}\) \(\newcommand{\cvec}{\mathbf c}\) \(\newcommand{\dvec}{\mathbf d}\) \(\newcommand{\dtil}{\widetilde{\mathbf d}}\) \(\newcommand{\evec}{\mathbf e}\) \(\newcommand{\fvec}{\mathbf f}\) \(\newcommand{\nvec}{\mathbf n}\) \(\newcommand{\pvec}{\mathbf p}\) \(\newcommand{\qvec}{\mathbf q}\) \(\newcommand{\svec}{\mathbf s}\) \(\newcommand{\tvec}{\mathbf t}\) \(\newcommand{\uvec}{\mathbf u}\) \(\newcommand{\vvec}{\mathbf v}\) \(\newcommand{\wvec}{\mathbf w}\) \(\newcommand{\xvec}{\mathbf x}\) \(\newcommand{\yvec}{\mathbf y}\) \(\newcommand{\zvec}{\mathbf z}\) \(\newcommand{\rvec}{\mathbf r}\) \(\newcommand{\mvec}{\mathbf m}\) \(\newcommand{\zerovec}{\mathbf 0}\) \(\newcommand{\onevec}{\mathbf 1}\) \(\newcommand{\real}{\mathbb R}\) \(\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}\) \(\newcommand{\laspan}[1]{\text{Span}\{#1\}}\) \(\newcommand{\bcal}{\cal B}\) \(\newcommand{\ccal}{\cal C}\) \(\newcommand{\scal}{\cal S}\) \(\newcommand{\wcal}{\cal W}\) \(\newcommand{\ecal}{\cal E}\) \(\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}\) \(\newcommand{\gray}[1]{\color{gray}{#1}}\) \(\newcommand{\lgray}[1]{\color{lightgray}{#1}}\) \(\newcommand{\rank}{\operatorname{rank}}\) \(\newcommand{\row}{\text{Row}}\) \(\newcommand{\col}{\text{Col}}\) \(\renewcommand{\row}{\text{Row}}\) \(\newcommand{\nul}{\text{Nul}}\) \(\newcommand{\var}{\text{Var}}\) \(\newcommand{\corr}{\text{corr}}\) \(\newcommand{\len}[1]{\left|#1\right|}\) \(\newcommand{\bbar}{\overline{\bvec}}\) \(\newcommand{\bhat}{\widehat{\bvec}}\) \(\newcommand{\bperp}{\bvec^\perp}\) \(\newcommand{\xhat}{\widehat{\xvec}}\) \(\newcommand{\vhat}{\widehat{\vvec}}\) \(\newcommand{\uhat}{\widehat{\uvec}}\) \(\newcommand{\what}{\widehat{\wvec}}\) \(\newcommand{\Sighat}{\widehat{\Sigma}}\) \(\newcommand{\lt}{<}\) \(\newcommand{\gt}{>}\) \(\newcommand{\amp}{&}\) \(\definecolor{fillinmathshade}{gray}{0.9}\)Objetivos de aprendizaje
Después de estudiar esta sección deberías poder hacer lo siguiente:
- Conoce las principales razones por las que las firmas eligen usar OSS.
- Entender cómo OSS puede impactar beneficiosamente a la industria y al gobierno.
Hay muchas razones por las que las empresas eligen productos de código abierto sobre alternativas comerciales:
Costo: las alternativas gratuitas al costoso código comercial pueden ser un tremendo motivador, particularmente porque el software convencional a menudo requiere que los clientes paguen por cada copia utilizada y paguen más por software que se ejecuta en hardware cada vez más potente. Las tiendas Big Lots redujeron los costos hasta en $10 millones al encontrar OSS viable (Castelluccio, 2008) para atender las necesidades de sus sistemas. El corredor en línea E*TRADE estima que su cambio al código abierto ayudó a ahorrar más de 13 millones de dólares al año (King, 2008). Y Amazon afirmó en las presentaciones de la SEC que el cambio al código abierto fue un contribuyente clave a casi 20 millones de dólares en ahorros tecnológicos (Shankland, et. al., 2001). Empresas como TiVo, que utilizan OSS en sus propios productos, eliminan un costo gastado ya sea desarrollando su propio sistema operativo o licenciando software similar de un proveedor como Microsoft.
Confiabilidad —Hay un dicho en la comunidad de código abierto, “Dados suficientes globos oculares, todos los bichos son superficiales” (Raymond, 1999). Lo que esto significa es que cuanta más gente mire el código de un programa, mayor será la probabilidad de que se capte y corrija un error. La comunidad de código abierto aprovecha el poder de legiones de geeks que están constantemente arrastrando productos OSS, buscando machacar bichos y mejorar la calidad del producto. Y estudios han demostrado que la calidad de los productos populares de OSS supera a los competidores comerciales patentados (Ljungberg, 2000). En un estudio, el Cylab de la Universidad Carnegie Mellon estimó que la calidad del código Linux tenía menos errores que las alternativas comerciales por un factor de doscientos (Castelluccio, 2008)!
Seguridad —Los defensores de OSS también argumentan que al permitir que “muchos ojos” examinen el código, las vulnerabilidades de seguridad de los productos de código abierto salen a la luz más rápidamente y pueden abordarse con mayor velocidad y confiabilidad (Wheeler, 2003). Los concursos de hacking de alto perfil han demostrado con frecuencia la fortaleza de los productos OSS. En un evento de 2008 bien publicitado, los portátiles que ejecutaban Windows y Macintosh fueron pirateados (este último en solo dos minutos), mientras que un portátil con Linux permaneció sin compromisos (McMillan, 2008). Los organismos gubernamentales y los militares a menudo aprecian la oportunidad de examinar los esfuerzos de código abierto para verificar la integridad del sistema (un tema particularmente delicado entre los gobiernos extranjeros recelosos de la legislación como la USA PATRIOT Act de 2001) (Lohr, 2003). Muchos proveedores de OSS ofrecen versiones enfocadas en la seguridad (a veces llamadas endurecidas) de sus productos. Estos pueden incluir sistemas que monitorean la integridad de una distribución de OSS, verificando el tamaño del archivo y otros indicadores para asegurarse de que el código no ha sido modificado y redistribuido por tipos malos que han agregado una puerta trasera, rutinas maliciosas u otras vulnerabilidades.
Escalabilidad: muchos esfuerzos importantes de OSS pueden ejecutarse en todo, desde hardware de productos básicos baratos hasta supercomputación de alta gama. La escalabilidad permite a una empresa escalar desde el inicio hasta el chip azul sin tener que reescribir significativamente su código, potencialmente ahorrando grandes costos de desarrollo de software. No solo se pueden migrar muchas formas de OSS a hardware más potente, sino que también se han optimizado paquetes como Linux para equilibrar la carga de trabajo de un servidor entre una gran cantidad de máquinas que trabajan en tándem. La firma de corretaje E*TRADE afirma que los picos de uso después de los movimientos de la Reserva Federal de Estados Unidos en 2008 inundaron los sistemas de la firma, creando los niveles de utilización más altos Pero E*TRADE acredita sus sistemas escalables de código abierto por mantener el rendimiento mientras los sistemas de la competencia tenían dificultades (King, 2008).
Agilidad y tiempo de comercialización: los proveedores que utilizan OSS como parte de las ofertas de productos pueden omitir segmentos enteros del proceso de desarrollo de software, lo que permite que los nuevos productos lleguen al mercado más rápido que si todo el sistema de software tuviera que desarrollarse desde cero, internamente. Motorola ha afirmado que la personalización de productos basados en OSS ha ayudado a acelerar el tiempo de comercialización de los teléfonos móviles de la firma, mientras que el equipo detrás del esfuerzo de correo electrónico y calendario de Zimbra construyó su primer producto en solo unos meses utilizando unos cuarenta bloques de código libre (Guth, 2006).
Principales conclusiones
- Los beneficios más citados del uso de OSS incluyen bajo costo; mayor confiabilidad; mayor seguridad y auditoría; escalabilidad del sistema; y ayudar a una empresa a mejorar su tiempo de comercialización.
- El OSS gratuito ha resultado en ahorros de costos para muchas grandes empresas en varias industrias.
- El OSS suele tener menos errores que sus contrapartes comerciales debido a la gran cantidad de personas que han mirado el código.
- La enorme exposición al escrutinio por parte de desarrolladores y otras personas ayuda a fortalecer la seguridad del OSS.
- Las versiones “endurecidas” de los productos OSS a menudo incluyen sistemas que monitorean la integridad de una distribución de OSS, verificando el tamaño del archivo y otros indicadores para asegurarse de que el código no ha sido modificado y redistribuido por tipos malos que han agregado una puerta trasera, rutinas maliciosas u otras vulnerabilidades.
- El OSS se puede migrar fácilmente a computadoras más potentes según lo dicten las circunstancias, y también puede equilibrar la carga de trabajo distribuyendo el trabajo en varias máquinas.
- Los proveedores que utilizan OSS como parte de las ofertas de productos pueden omitir segmentos enteros del proceso de desarrollo de software, lo que permite que los nuevos productos lleguen al mercado más rápido.
Preguntas y ejercicios
- ¿Qué ventajas ofrece OSS TiVo? ¿Qué alternativas al OSS podría considerar la firma y por qué supone que la firma decidió por OSS?
- ¿Qué quiere decir con la frase “Dados suficientes globos oculares, todos los bichos son superficiales”? Proporcionar evidencia de que la perspicacia detrás de esta frase es precisa.
- ¿Cómo ha beneficiado OSS a E*TRADE? ¿Amazon? ¿Motorola? ¿Zimbra? ¿Qué beneficios se lograron en cada uno de estos ejemplos?
- Describir cómo OSS proporciona escalabilidad a una empresa. ¿Qué significa esto y por qué esto apela a una firma? ¿Qué problemas podría enfrentar una empresa si los sistemas elegidos no son escalables?
- El sitio Web NetCraft (http://www.netcraft.com) es uno de los muchos que proporcionan una herramienta para ver el tipo de sistema operativo y software de servidor Web que un sitio determinado está ejecutando. Visite NetCraft o un sitio similar e ingrese la dirección de algunos de sus sitios web favoritos. ¿Cuántos ejecutan productos de código abierto (por ejemplo, el sistema operativo Linux o el servidor web Apache)? ¿Algunos sitios muestran su software como “desconocido”? ¿Por qué un sitio podría ser reacio a transmitir el tipo de software que utiliza?
Referencias
Castelluccio, M., “Adopción de código abierto empresarial”, Strategic Finance, noviembre de 2008.
Guth, R., “Trabajo a destajo virtual: trolleando la web para obtener mano de obra gratuita, los advenedizos del software son una nueva fuerza”, Wall Street Journal, 13 de noviembre de 2006.
King, R., “Las empresas conscientes de costos recurren al software de código abierto”, BusinessWeek, 1 de diciembre de 2008.
Ljungberg, J., “Los movimientos de código abierto como modelo de organización”, Revista Europea de Sistemas de Información 9, núm. 4 (diciembre de 2000): 208—16.
Lohr, S., “Microsoft para dar acceso a los gobiernos al código”, New York Times, 15 de enero de 2003.
McMillan, R., “Gone in Two Minutes”, InfoWorld, 27 de marzo de 2008.
Raymond, E., La catedral y el bazar: meditaciones sobre Linux y código abierto por un revolucionario accidental (Sebastopol, CA: O'Reilly, 1999).
Shankland, S., M. Kane, y R. Lemos, “Cómo Linux salvó a Amazon Millions”, CNET, 30 de octubre de 2001.
Wheeler, D., Programación segura para Linux y Unix, 2003, http://www.dwheeler.com/secure-progr...WTO/index.html.