lunes, 17 de marzo de 2008

¿Por que usar Software Libre y no Windows?

¡Facilísimo! Que tu ordenador funcione con un sistema de fuentes abiertas y con software libre te permite tener el control, las herramientas para mejorarlo, repararlo, adaptarlo. No dependes de empresas que cambian sus políticas, programas y técnicas. Ahorras bastante dinero en licencias. Tu ordenador irá más rápido. ¡Dejarás de ser un esclavo del software! Además, ¿cuántos usuarios envían dudas a Microsoft y nunca reciben respuestas?

Pero todos mis amigos usan Windows... ¿Sere la oveja negra?

¡Amigo, además puedes hacerte rico! Con software libre no sólo ahorras dinero, sino que ganas dinero. Yo le llamo la técnica del cirujano. ¿Cómo se hace rico un cirujano? Siendo muy bueno. A nosotros no nos interesa el concepto de software propietario. Fomentamos que el dueño del software lo licencie, con código abierto. Pero sí nos interesa ofrecer software libre como servicio. Cobrar por adaptarlo, repararlo, mejorarlo. Sobre todo adaptarlo, hacerlo perfecto para una necesidad concreta. XD

sábado, 29 de diciembre de 2007

Cambio radical: El procesamiento multi-core ofrece innovadoras posibilidades a las empresas

Intel ha asumido el compromiso de ayudar a los desarrolladores a utilizar nuevas técnicas y a aprovechar las funciones de los nuevos procesadores mediante formación, capacitación y nuevos productos para el desarrollo de software. Nuestro objetivo es lograr que la próxima generación de desarrolladores "piense en paralelo". Este cambio será una evolución gradual; es indudable que no se producirá de la noche a la mañana. A medida que los diseñadores, ingenieros de software, arquitectos de sistemas y desarrolladores de soluciones comprendan el concepto vinculado con la capacidad de ejecutar varios subprocesos de manera simultánea, se abrirán nuevos horizontes en términos de lo que podrán hacer las computadoras.
Asimismo, el diseño de aplicaciones de subprocesos amplía las posibilidades de la comunidad de desarrollo de software y los usos innovadores que ya están surgiendo y dan una pauta de su potencial. Un investigador de la Universidad de California, San Diego, hace poco realizó una demostración de una aplicación que ejecuta subprocesos y que permitirá salvar las vidas de las personas. Las erupciones volcánicas en la isla de Java, Indonesia, periódicamente amenazan a los habitantes de una de las zonas con mayor densidad poblacional del mundo. Para evaluar los niveles de amenaza y ayudar a elaborar los planes de evacuación, el investigador diseñó una aplicación de subprocesos y que simultáneamente recupera datos topográficos, mapas satelitales de la región, datos sobre la actividad sísmica y demás información relacionada. Al combinar y estratificar las imágenes y los datos, generó un mapa tridimensional fotorrealista que ilustra con claridad las líneas de fallas, las zonas en peligro y los posibles riesgos para los centros poblados. Los geólogos, los urbanistas, el personal de atención de emergencias, los servicios de información y demás actores de la región de Java ahora cuentan con una herramienta de subprocesos que puede ayudar a salvar vidas y evaluar los riesgos materiales. Los datos de la aplicación se actualizan periódicamente en función de los movimientos volcánicos. Las autoridades gubernamentales, con la ayuda de esta información, pueden adoptar medidas de protección en favor de las personas que corren el riesgo de perder sus hogares.


Diseño de aplicaciones preparado para el futuro

Los subprocesos pueden aprovechar los diseños de los procesadores actuales y futuros de maneras que los desarrolladores recién ahora están comenzando a entender. Por ejemplo, si una aplicación está configurada para la tecnología Hyper-Threading (HT), podrá ofrecer ventajas inmediatas en un sistema dual-core debido a que sencillamente fue escrita para utilizar dos subprocesos. Se espera que la aplicación esté escrita para crear más de dos subprocesos de modo que pueda utilizar un procesador superior a uno con tecnología HT o dual-core. En condiciones ideales, un programa se escribe y prepara para crear, al menos, tantos subprocesos como procesadores haya. Al contar con un programa preparado para utilizar subprocesos adicionales, mediante los núcleos o la tecnología HT, es posible incrementar el desempeño de la aplicación según la cantidad de procesadores. Al diseñar aplicaciones para procesadores dual-core y quad-core, los desarrolladores suelen pensar en el uso de dos o cuatro subprocesos, bajo la influencia de los conceptos relativos al funcionamiento que tenían las plataformas en el pasado. No obstante, si los desarrolladores diseñan programas para todos los subprocesos posibles, cuando surjan núcleos adicionales, la aplicación se ejecutará a mayor velocidad y con mayor eficacia. La práctica de diseñar programas con una cantidad de subprocesos superior a la cantidad de núcleos disponibles básicamente prepara el diseño de la aplicación para el futuro y ofrece un retorno de la inversión realizada en tiempo y esfuerzos que, una vez lanzada al mercado la aplicación, perdura en el tiempo.
“Al aprovechar la amplia gama de herramientas de desarrollo de software de Intel para subprocesos y su vasta experiencia, pudimos apreciar un 70% de aumento del desempeño cuando nuestros mp3 y códecs SURROUND de mp3 se ejecutaron en tecnología móvil Intel® Centrino® Duo. Gracias a ello los consumidores pueden disfrutar aún más del placer de escuchar música.”
—Rocky Caldwell, Gerente General de licencias de mp3, Thomson

En condiciones óptimas, los desarrolladores y los diseñadores de software no deberían plantearse si necesitan tecnología dual-core o quad-core. En cambio, al diseñar aplicaciones resulta práctico y eficaz considerar cuántas tareas pueden realizarse en paralelo. Si los desarrolladores diseñan aplicaciones tomando en consideración la mayor cantidad posible de subprocesos desde el inicio, sacarán provecho de la guía de Intel en los próximos años. Si se diseña con el único fin de paralelizar dos tareas (considerando que el objetivo es el dual-core), se perderán las ventajas de los próximos adelantos de los procesadores. A medida que se introducen en el mercado plataformas nuevas con mayor capacidad, las aplicaciones diseñadas para la mayor cantidad posible de subprocesos podrán ejecutarse a mayor velocidad.

lunes, 3 de diciembre de 2007

lunes, 26 de noviembre de 2007

La desinformación es un peligro para el software libre.

¿Cuales son los enemigos del software libre?
La respuesta a esta pregunta sería muy amplia. El software libre tiene muchos enemigos (gran parte se resumiría a Microsoft). Sin embargo el día de hoy quiero hablar respecto a cierto tipo de peligro para el software libre y que indirectamente nos perjudica a todos, principalmente a las empresas que basan su negocio sobre el software libre: La desinformación. Es decir, a la gente que cree que sabe todo acerca del software libre (y defiende a capa y espada lo que «sabe» acerca del software libre) y en realidad no tiene una idea muy clara respecto de lo que está hablando.

No sería apropiado mencionar nombres de personas, ni empresas, ni tampoco pondré enlaces, porque mi intención no es señalar ni perjudicar, sino solo concientizar de un problema del que adolece el software libre.

Hay algunas personas, en algunas empresas, que «predican» de manera compulsiva acerca del software libre. Sin emabargo, y muy lamentablemente, pareciera desconocen que es realmente el software libre. Me refiero a personas que suponen que porque Red Hat Enterprise Linux no se puede descargar gratis, éste deja de ser software libre, desconociendo además que los fuentes están disponibles al público. Me refiero a personas que no entienden que hay una gran diferencia entre la libre y gratuito. Se trata de personas que creen que algo que es software libre debe ser gratuito, y que, además de todo, se presentan a las puertas de las empresas, que solicitan servicios que involucran software libre, como presuntos Directores Generales presentando una idea totalmente equivocada de lo que es el software libre y que, a fin de cuentas, terminan por contribuir a que el software libre se vea de la forma que no debe ser.

Este tipo de personas terminan quedando mal ante las empresas que lamentablemente los contrataron, porque cuando uno trata de representar algo que en realidad no es, las cosas terminan por caer por su propio peso. Lo malo es que se llevan el prestigio del software libre y la comunidad por delante.

Personalmente, como promotor de la filosofía de la Free Software Foundation, me resulta incómodo el que ciertas personas se abanderen tras el software libre y divulguen conceptos totalmente equivocados que terminan por deformar la imagen del software libre.

¿Que se puede hacer al respecto? La respuesta no es denunciar, ni desprestigiar. La respuesta es simple: hacer que este tipo de empresarios se tomen la molestia de documentarse un poco acerca de lo que es realmente el software libre, particularmente con el material publicado por la Free Software Foundation. En resumen: enderezarlos por el buen camino del software libre. Una evangelización.

Si uno va a tratar de vender un producto es natural que al menos se entienda como funciona dicho producto. Es decir, si alguien se quiere dedicar a vender software libre, lo natural debe ser que se entienda a la perfección lo que es el software libre. Lo mismo que con un vendedor de automóviles: se debe conocer que características tiene el vehículo para poder realizar una venta éxitosa. Solo imaginemos a un vendedor que trata de covencer a un comprador un vehículo con información falsa, incorrecta o inexacta y que además concreta la venta de ese modo... pobre del cliente cuando descubra que el vehículo no hace o es lo que le dijo el vendedor. Demos gracias porque algunas personas no se dedican a vender aviones, ni maquinaria pesada.