Software Libre y GNU linux
Bienvenidos al Blog de zkorpio. sitio para tratar temas acerca de Software libre.

Luego de haber pasado un tiempo desde la época de C, C++, Visual Basic 6.0, Visual.net C#, Visual j++, (todos entornos Microsoft que es lo que dan en la U.) he estado buscando un lenguaje de programación con el cual especializarme y que lleve en escencia la filosofía de software libre o el opensource.

Luego de haber pasado un tiempo desde la época de C, C++, Visual Basic 6.0, Visual.net C#, Visual j++, (todos entornos Microsoft que es lo que dan en la U.) he estado buscando un lenguaje de programación con el cual especializarme y que lleve en escencia la filosofía de software libre o el opensource.

Despues de pasarme un buen tiempo consultando con expertos en diferentes áreas de la Arquitectura de Software, visitando foros en los que se llevan a cabo calurosas discusiones acerca de "que lenguaje es el mejor" y tambien tratando de ver las nuevas tendencias pude llegar a la conclusión de que los lenguajes orientados a objetos son lo mas práctico al momento, y uno de los mas completos, funcionales y productivos que he podido encontrar es Java, despues de su liberación se espera avances mas rápidos en cuanto a tecnología de desarrollo web y móvil respecta; esto junto a un IDE que esta sonando mucho en la web como lo es Netbeans aspiro jugaran un papel importantísimo en cuanto a productividad se refiere. Me he comprado el libro thinking java versión español cuarta edición 2007 el mismo tiene unas 1000 hojas y se ve muy completo, cuando lo termine posteare mis experiencias al respecto.

El problema ahora mismo con este lenguaje es que la curva de aprendizaje es un poco larga justamente por las posibilidades que nos ofrece, por esta razón tambien he buscado uno que me pueda brindar rapidez en desarrollo web para usarlo bajo el modelo de prototipos o XP (Extreme Programming), obviamente que sea orientado a objetos, para poder ofrecer a mis clientes un desarrollo rápido, efectivo y que se pueda ajustar a sus necesidades (asi como las mias por supuesto).


Encontré un Maravilloso lenguaje de scripts dinámico llamado Ruby, que junto al framework llamado Rails definitivamente rompen paradigmas sobre como desarrollar software.

Con Ruby on rails (RoR) podemos desarrollar aplicaciones web de una forma realmente rápida, segura cuyo lema es "convención sobre configuración", cuya base formúla que si hay algo en desarrollo que es repetitivo entonces "Para que repetirlo?"; Este lenguaje/framework a diferencia de otros lenguajes cuyo Marketting nos hacen ver como si fueran la panacéa, se ha desarrollado siguendo las sugerencias y experiencias REALES de los desarrolladores quienes venían perdiendo mucho tiempo en el ciclo de vida del Software (desarrollo, mantenimiento, migraciones, escalabilidad); Asi que podemos decir que con RoR podemos ahorrarnos todos los problemas que por mas de 10 años los desarrolladores con experiencia les ha tocado sufrir al respecto.

Pero bueno no todo lo que se lee o escucha en la web tiene por que ser cierto asi que me he dedicado a leer un excelente libro que por un corto periodo de tiempo se esta regalando en la web; este se llama Build Your Own Ruby on Rails Web Applications de Patrick lenz que he notado es super práctico y te lleva de la mano en la creación de una web de opiniones completa.

Son unas 450 hojas en Inglés, voy por la 220 y uff me ha cambiado por completo la forma de pensar como programador. El hecho de ver al software con una perspectiva de MVC (modelo, vista, controlador) me permite facilmente separar la lógica de negocio/programación; Asi, con el modelo pienso como estará estructurada mi base de datos, en la vista sobre como estará la presentación visual orientada a mi cliente, y en el controlador como voy a interactuar entre el modelo y las vistas; A futuro, si deseo hacer cambios en la parte gráfica me remito a las vistas, si hay un cambio de mi bdd me dirijo al modelo etc... Con esto no pierdo tiempo entre miles de líneas de código porque aparte Ruby es un lenguaje super intuitivo que se asemeja a nuestro con lo que me ahorro muchas líneas redundantes muchas veces en otros lenguajes; Esto acompañado de helpers, generadores de código (por lo general repetitivo) me hacen ver una sola palabra: PRODUCTIVIDAD! Hasta ahora voy fascinado, les recomiendo leerse este libro que aunque está en inglés bien vale la pena para reforzar conocimientos de lenguaje extrangero ;) Este es el link que descarga directa, espero lo sepan aprovechar pues lo ofrecen gratis por 36 dias mas:

enlace libro RoR

En todo caso si desean una copia impresa del mismo me pueden contactar a: escorpio_ec@yahoo.com
Para muestra un botón, aca el video de como crear un blog con ruby on rails en 15 minutos:
Continua...

 

Hace un par de días me atreví a actualizar mi Ubuntu Feisty Fawn al renovado Gutsy Gibbon y aprovechar de esta forma mucha de las mejoras que nos ofrece el software libre.

No representó gran dificultad esta tarea, nada mas un update-manager

Hace un par de días me atreví a actualizar mi Ubuntu Feisty Fawn al renovado Gutsy Gibbon y aprovechar de esta forma mucha de las mejoras que nos ofrece el software libre.

No representó gran dificultad esta tarea, nada mas un update-manager -d desde mi consola y con privilegios de root; aunque lo tuve que hacer un par de veces pues me generaba un error en algunos sources list; luego de esto obtuve un mensaje que se me avisaba que habian paquetes obsoletos que necesitaría desinstalar ej: beryl y otros mas, al constatar que ninguno de estos iba a afectar a lo que ya tenía instalado en mi sistema acepté la condición y luego de algunas horas de descarga tenía mi nuevo Ubuntu casi totalmente funcional.

Y digo casi totalmente funcional pues una de mis aficiones es trabajar bajo el entorno 3d que nos ofrece beryl, pero luego haberse terminado la fusión entre Beryl y Compiz, ahora el paquete en Gnu-linux se llama compiz-fusion, entonces lo único que tuve que hacer es instalar desde mi consola este paquete: apt-get install compiz-fusion y listo, mi sistema mas funcional, estable y rápido que Feisty en mi amd de 64 bits.

Continua...