jueves, 4 de diciembre de 2014

Servidores de Aplicaciones para Ruby

Servidores de Aplicaciones para Ruby 

"De acuerdo a Wikipedia  Ruby es un lenguaje de programación interpretado, reflexivo y orientado a objetos, creado por el programador japonés Yukihiro "Matz" Matsumoto, quien comenzó a trabajar en Ruby en 1993, y lo presentó públicamente en 1995. Combina una sintaxis inspirada en Python y Perl con características de programación orientada a objetos similares a Smalltalk. Comparte también funcionalidad con otros lenguajes de programación como Lisp, Lua, Dylan y CLU. Ruby es un lenguaje de programación interpretado en una sola pasada y su implementación oficial es distribuida bajo una licencia de software libre"
Se denomina servidor de aplicaciones a un programa de computación que ejecuta ciertas aplicaciones, en este artículo se mencionan una parte de los que permiten ejecutar aplicaciones elaboradas en los frameworks de Ruby:  Ruby On Rails, Sinatra, JRuby, Ramaze, Padrino, NYNY, Nancy, Grape, Cuba, Camping, entre otros . 

Existen muchos servidores les voy a citar alguno de ellos: 

Mongrel: fue el primer servidor web utilizado por Twitter. Es servidor web HTTP para ruby, ya no lo mantienen como proyecto. 

Thin: es un servidor web que une 3 de las mejores bibliotecas de Ruby en la historia de Internet: Mongrel parser, Event Machine y Rack. Más información en http://code.macournoyer.com/thin/ 

"Rack es un tipo de middleware. Se ubica entre su aplicación web y el servidor web. Maneja todas las llamadas API específicas al servidor, pasa la solicitud HTTP y todos los parámetros del entorno en un hash, y entrega la respuesta de su aplicación de vuelta al servidor. En otras palabras, su aplicación no necesita saber cómo hablar con el servidor HTTP, necesita saber cómo hablar con Rack"
Trinidad: permite ejecutar Ruby en un contenedor Tomcat . Apache Tomcat (anteriormente también Jakarta Tomcat) . Más información en https://github.com/trinidad/trinidad/wiki 

TorqueBox: permite ejecutar Ruby en un contenedor JBoss. JBoss es un servidor de aplicaciones Java EE de código abierto implementado en Java puro. Más información en http://torquebox.org/

Unicorn: es un servidor HTTP para aplicaciones basadas en Rack y por lo tanto Ruby. Más información en http://unicorn.bogomips.org/ 

Puma: es un servidor HTTP para aplicaciones basado en Rack, fuertemente inspirado por el servidor web Mongrel. Más información en http://puma.io/ 

Phusion Passenger: es un servidor de aplicaciones que se puede integrar directamente con Nginx ó Apache. Es denominado servidor de aplicaciones políglota, ya que soporta las aplicaciones escritas en varios lenguajes de programación. Más información en http://www.phusionpassenger.com

En un próximo artículo les voy a presentar como se hace la instalación y configuración de Phusion Passenger+NGINX sobre Debian 7.

Los invito a que expresen sus preguntas o comentarios sobre el tema.

miércoles, 3 de diciembre de 2014

NGINX Servidor ligero de alto rendimiento

NGINX 

 Es un servidor ligero de alto rendimiento, funciona como servidor para aplicaciones web y como proxy para protocolos de correo electrónico. 

NGINX es utilizado por grandes empresas de internet como: tumblr, WordPress.com, Instagram, Yahoo, YouTube, Pinterest, Zynga, SourceForge, GitHub, DropBox, Intel, NetFlix y entre otras compañías, como por ejemplo algunos CDN (Content Delivery Network), Cloudflare, NetDNA/MaxCDN, Cachefly, ProCDN/MediaTemple

Este diagrama muestra a NGINX en su posición de mercado en el TOP 10K Sites  en términos de popularidad y el tráfico en comparación con los servidores web más populares.

http://trends.builtwith.com/web-server


Les puedo citar dos escenarios donde he tenido la oportunidad de utilizar NGINX sobre servidores con Linux (Debian GNU/Linux) : 
  • Servidor Web junto con Phusion Passenger para implementar ambientes de producción para programas elaborados en Ruby on Rails y PHP. 
  • Proxy de correo electrónico utilizando el protocolo IMAP. El NGINX facilitó la implementación de un Cliente de Correo Web, cuyos usuarios tenían sus cuentas en múltiples servidores distribuidos geográficamente. 
  Los invito a que expresen sus preguntas o comentarios sobre el tema.

Premios al Software Libre 2014 Portal Programas

El mejor software libre de 2014
Pulse clic sobre la imagen para ampliar la información

Premios al Software Libre 2014

Nuevamente nos llegan Los Premios PortalProgramas al software libre, por sexto año consecutivo podemos conocer que opinan los usuarios y los expertos. 

Para los que no conocen que es el software libre he tomado esta información de Wikipedia.
"Software libre (en inglés free software, aunque esta denominación a veces se confunde con «gratis» por la ambigüedad del término free en el idioma inglés, por lo que también se usa libre software) es la denominación del software que respeta la libertad de todos los usuarios que adquirieron el producto y, por tanto, una vez obtenido el mismo, puede ser usado, copiado, estudiado, modificado, y redistribuido libremente de varias formas."

Hay muchas personas, países, instituciones y empresas que han adoptado el Software Libre. Por ejemplo yo utilizo la distribución (Conjunto de Software ) Debian con el escritorio GNOME. En mi país natal (Venezuela) en las instituciones de gobierno se promueve el uso de CANAIMA, una distribución basada en Debian.

El Proyecto Canaima está compuesto por un grupo de participantes provenientes de diferentes instituciones públicas y particulares, activistas del Software Libre y ciudadanos en general. 

Espero que esta información les ayude ha mantenerse actualizado. 

martes, 2 de diciembre de 2014

¿Que dice el mercado sobre los Lenguajes de Programación?

¿Que dice el mercado sobre los Lenguajes de Programación?

Cuando yo estudié en la universidad los lenguajes de programación eran : Basic, Pascal, Cobol, Dbase / Foxpro, C, Ensamblador, Prolog y C++.

Cuando comencé a trabajar se utilizaba Visual Foxpro y Visual Basic. Bases de Datos Oracle. Herramientas de Oracle como  Developer Forms, Report y PL/SQL.

Al llegar la Web comenzamos a utilizar HTML, PHP, Java y JavaScript. Frameworks de desarrollo como Apache Turbine, strut, spring, symfony, catalys, Ruby On Rails entre otros. 

Los servidores de aplicaciones tales como : IAS de Oracle y Jboss. Los web server como Apache y  Nginx integrado con los módulos para PHP, Ruby y Perl.

 Ahora ¿En que lenguaje debo actualizarme para continuar en el mercado laboral ?

Lo importante es conocer las tendencias, hacia donde se esta moviendo la tecnología, de forma que no nos tome desprevenidos.  Y enfocarte en los que más te gusten, porque hay lenguajes que pensaba ya no se utilizaban, pero siguen vivos.

En este sentido estuve investigando un poco y he encontrado una buena referencia del ranking que Gartner elabora sobre los lenguajes de programación más utilizados. 

A mi particularmente me gustan los primeros 10 lugares:
 
1. Java 
2. JavaScript 
3. Python 
4. C 
5. PHP 
6. C++ 
7. Ruby 
8. C# 
9. Perl 
10. Objective-C.

Espero que esta información les ayude ha mantenerse actualizado. 

¿Es fácil encontrar trabajo por internet en Chile?

¿Es fácil encontrar trabajo por internet ? 

En mi caso particular me parece que es una excelente opción ya que estos sitios web tienen muchos años funcionando y han generado confianza entre los que buscan empleo y las empresas que hacen "Reclutamiento Digital". 
 
Si usted navega en internet encontrará que hay un abanico de sitios web que le permiten hacer la búsqueda y llegar más rápido a las empresas. Las plataformas como Linkedin, Trabajando, Laborum, Bolsa Nacional de Empleo, Computrabajo, Bumeran, Indeed, Adecco junto con los sitios web de las empresas se han convertido en el mayor aporte de profesionales y técnicos para el reclutamiento en los últimos años en Chile. 
 
A continuación voy colocar los enlaces que he utilizado personalmente en la búsqueda de empleo: cl.linkedin.com , www.trabajando.com , www.laborum.cl , www.bne.clwww.indeed.cl , www.adecco.cl  , www.computrabajo.cl y www.bumeran.cl.

Les deseo mucha suerte y espero que esta información les ayude ha conseguir empleo. 



lunes, 1 de diciembre de 2014

Personal Branding - Parte II

LLevar tu Curriculum en linkedin

Continuando con las tareas para desarrollar nuestra Marca Personal, vamos a incorporarnos a la red social Linkedin.

Linkedin es la principal red social para empresas y profesionales del mundo. En la actualidad cuenta con más de 300 millones de usuarios registrados. A diferencia de otras como facebook que es para divertirse, LinkedIn es para manejar nuestra carrera profesional, nuestro curriculum, es un sitio social que proporciona más seriedad ante posibles empleos, clientes, o compañeros de profesión. 

Puedes descubrir en ella oportunidades profesionales, tratos de negocios y nuevas empresas.

Para acceder a esta red social, debemos iniciar nuestro navegador e introducir la dirección web www.linkedin.com 

Aca les dejo una dirección de un curso sobre como utilizar linkedin, en el Sitio Web conocea.com

Mi curriculum en linkedin

 

Los invito a que expresen sus preguntas o comentarios sobre el tema.
  

domingo, 30 de noviembre de 2014

Personal Branding - Parte I

 Personal Branding ó Marca Personal


Soy un ingeniero de sistemas que vine a Chile desde Venezuela hace un par de meses con la esperanza de mejorar la calidad de vida de mi familia, la decisión de migrar es puramente personal. Un aspecto importante al momento de buscar trabajo, es conocer que en Chile el número de profesionales que se gradúan cada año se incrementa de manera significativa, entonces la búsqueda de empleo no es fácil. De este modo, desarrollar una marca personal es esencial para encontrarlo. 

Aquí les comparto un vídeo muy interesante sobre "Marca Personal".



Empiezo entonces por cambiar mi presencia en las redes sociales, voy a construir una red profesional para llegar a más personas y empresas, haciendo uso de plataformas libres en internet. 

Este tema es bastante amplio. Continuaré desarrolladolo en los próximos artículos, los invito a que expresen sus preguntas o comentarios sobre el tema.