Cómo instalar paquetes de bower y npm en Yii2

Actualmente cuando trabajas en el frontend (la parte visual) de una página web utilizas código Javascript para realizar ciertas acciones tales como: animaciones, validaciones, interacciones, etc. Y con el auge de popularidad de este lenguaje, existen muchas librerías y complementos que facilitan el desarrollo. Por eso, hoy en día es normal que si realizas una aplicación en Yii2, utilizarás componentes visuales para manejar calendarios, validaciones de correo, manejo de modales, etc.

A pesar de existir una cantidad notable de extensiones de Yii2 para instalar complementos adicionales, no se puede comparar a la calidad y cantidad de librerías y frameworks disponible en npm y bower. Además, si eres un programador de Javascript, estarás acostumbrado(a) estas herramientas y te sentirás limitado en Yii2. Sin embargo, existe una forma de instalar software de npm/bower en tu aplicación utilizando composer, de esta manera puedes gestionar tus dependencias de Javascript y PHP en una sola herramienta.

Instalación del plugin de composer

Asumiendo que ya tienes instalado composer, solo debes instalar el complemento composer-asset-plugin mediante el siguiente comando:


php composer.phar global require "fxp/composer-asset-plugin:~1.1.1"

Agregando dependencias en tu aplicación de Yii2

Una vez instalado el complemento, para instalar los paquetes debes agregar al nombre del paquete original el prefijo npm-asset/ o bower-asset/ dependiendo del caso. De esta forma, si quieres instalar combodate debes colocar como nombre bower-asset/combodate. Luego con hacer php composer.phar update instalarás las dependencias requeridas en la carpeta /vendors.

Ejemplo para instalar un paquete de npm:


{
  "require": {
    "npm-asset/el-paquete-npm": "dev-master"
  }
}

Para instalar un paquete de Bower:


{
  "require": {
    "bower-asset/el-paquete-de-bower": "dev-master"
  }
}

¡Y listo! una vez que tienes las dependencias, puedes incluirlas en tu plantilla de vista o crear un Assets, la opción recomendada de Yii2 para el manejo de archivos/liberías externas, pues te permite definir dependencias y en que momento cargarlas, para optimizar la carga de tu sitio web.

Espero que te sirva esta guía y puedas disfrutar de todo el poder de Javascript para aplicarla en las vistas de tu aplicación realizada en Yii2, un gran framework de PHP.

Hace 5 años en esa fecha: Mi reacción ante el problema de Playstation Network

Hace 8 años en esa fecha: Propaganda del Flisol 2008

El FLISOL 2016 regresa a San Cristóbal, Táchira

El FLISOL es un festival que se realiza el mismo día en diferentes ciudades de Latinoamérica desde el 2005. San Cristóbal (ciudad donde vivo), ha tenido la oportunidad de participar desde sus inicios hasta el 2011, siendo el mas grande del país en varias ocasiones. Este año podemos volver a realizarlo luego de 5 años de ausencia gracias a la colaboración de la comunidad local y profesores de la UNET.

El evento se realizará en el auditorio de la biblioteca de la UNET, desde las 8:00am hasta las 5:00pm, contaremos con una gran variedad de charlas, mesas de trabajo y voluntarios para instalar distribuciones como: Fedora, Ubuntu, Debian, Xanadú, entre otras. También puedes asistir para conocer a otros usuarios y profesionales del Software Libre, conocer las comunidades locales y como unirte a ellas.

Afiche del Flisol 20016 del Táchira

Afiche del Flisol 20016 del Táchira

 

Por mi parte, estaré dando una charla de Mozilla Venezuela probablemente sobre como protegerte en Internet utilizando tecnologías libres, instalaré distribuciones y de pronto trataré de reclutar gente para la comunidad de Mozilla Venezuela.

Para mas información, horario de las charlas y demás cosas, puedes visitar el sitio oficial del FLISOL San Cristóbal. ¡Asiste e invita a tus amigos! Necesitamos asistencia para seguir haciendo este tipo de eventos y renovar la comunidad con nuevas generaciones.

 

Editado:

Ayudame a seleccionar el tema a exponer votando en esta encuesta: https://twitter.com/skatox/status/722050589031534592

Entrevista a Linus Torvalds en un evento TED

Linus Torvalds es una leyenda en el mundo informático al iniciar el desarrollo de Linux y GIT, dos proyectos que cambiaron al mundo y son utilizados probablemente todos los días por cualquier programador. Aparte de sus proyectos, también es conocido por sus fuertes discusiones y opiniones en proyectos de software libre, ganándose el odio de muchas personas y siendo el centro de atención de sitios de noticias sobre software libre.

Linus Torvalds, el creador de Linux y GIT

Linus Torvalds, el creador de Linux y GIT

Pues la organización TED le hizo una buena entrevista donde habla de sus proyectos, sus ideas, como ve el futuro y demás. Me gustó porque no se enfocan solo en su trabajo sino en la parte emocional, además que es raro ver a Linus en eventos o fuera de las listas de correo. Así que te recomiendo verla a continuación y aprendas mas sobre esta leyenda viviente del desarrollo de software.

Si prefieres verlo en el sitio de TED, haz clic aquí.

Mi opinión sobre la campaña Microsoft ♥ Linux

Desde hace unos meses Microsoft ha estado cambiando su imagen, en parte porque durante la presidencia de Steve Ballmer perdió su reinado ante compañías como Apple, Google, entre otros. Sigue siendo el líder y la empresa mas importante de la informática, pero no llega al mismo nivel que tenía durante los 90s.

En los últimos años vimos cosas como que Microsoft empezó a colaborar en el kernel Linux aportando código (de hecho estuvo por encima de mucha compañías por un tiempo), se unió a la Linux Foundation, cosa que sorprendió a muchos. En estos días, anunció la liberación de Chakra su interprete de Javascript bajo código abierto, compró Xamarín (la empresa de Miguel de Icaza) y ahora permite una licencia gratuita, próximamente habrá SQL Server para Linux y la última que generó gran sorpresa, la inclusión de Ubuntu dentro de Windows 10 para tener una terminal de Linux dentro de ese sistema operativo, todo esto bajo la campaña Microsoft ♥ Linux.

Microsoft ama Linux

Quién hubiese imaginado hace 18 años que Microsoft lanzaría esta campaña

Las nuevas generaciones de programadores o usuarios de software libre lo ven como algo bien, ya que creen que Microsoft está abriéndose y ahora es mas amigable. Pero yo no creo que sea así, pues siguen siendo la misma empresa y conservan su cultura organizacional de dominar todo sector de la informática. Antes de compartirles mi opinión, veamos la situación actual con la empresa.

La mayoría de servidores usan Linux

Si revisan las estadísticas, la mayoría de servidores en Internet corren Linux y 99% de las supercomputadoras corren en Linux, ademas muchos de los clientes de Azure (la plataforma de la nube de Microsoft) lo utilizan para tener sus servidores Linux en ellos, esto significa que ninguna de esas instalaciones puede utilizar tecnologías de Microsoft, perdiendo gran cuota del mercado y saben que mucha gente no le gusta tener Windows Server como solución empresarial, por esta razón se van a la competencia, por ejemplo, alguien que desee usar un gestor de base datos y utilice Linux en sus servidores, podrán usar soluciones como MySQL, SQL Lite, Oracle DB, Postgres…pero no SQL Server. Así que la liberación de una versión para esta plataforma corresponde a necesidad de expandirse en el mercado.

En el móvil

Las plataformas móviles están lideradas por Android y iOS, donde la principal forma de desarrollar en ellas es Java y Swift/Objetive C respectivamente, Windows 10 Mobile no ha logrado despegar mucho y por lo tanto la plataforma de desarrollo con .NET es casi ausente en el sector móvil. Por ello, compraron Xamarin una plataforma que permite llevar software escrito en .NET a Android y iOS, así pueden expandir e impulsar sus tecnologías a las plataformas móviles.

Atraer los desarrolladores

Este es el punto mas importante he visto, he estado en conferencias internacionales, eventos de software libre y de Mozilla, he tenido la oportunidad de visitar, trabajar en varias empresas y el patrón que he visto es que si no usan tecnología de Microsoft en sus productos, no utilizan Windows en sus equipos, por esta razón vemos que si desean trabajar por ejemplo, con Ruby o Javascript, observarán que casi todo se hace a través de la línea de comandos, control de versiones y acceso a servidores se hace a traves de SSH que funciona por consola (de hecho GIT es un programa de consola), herramientas de manejo de dependencias de software (que se usan actualmente en todas las tecnologías) se hacen por la terminal.

Por esta razón, muchos programadores hoy en día compran una Mac o instalan Linux en sus equipos para tener una mejor experiencia de desarrollo y aumentar la productividad. Por ello, Microsoft se vio obligada a incorporar una terminal de Linux en su sistema operativo para soportar todas estas tecnologías y evitar la migración de usuarios a UNIX/Linux. Ademas, al ser un Linux real (Ubuntu), no es necesario migrar el software existente sino ya viene compatible con todo lo que existe (esta es la diferencia con Cygwin).

Palabras finales

En conclusión, pueden ver que todo lo que han hecho para “amar Linux” (o código abierto) ha sido solo para expandir el terreno perdido y dominar el mercado y volver a ser el Microsoft de Bill Gates, que dominaba todo sector de mercado (lo cual es normal en cualquier empresa), solo que en el caso de Microsoft, recodemos que atacaba fuertemente al software libre y Linux como se descubrió en los documentos de halloween del 98.

Si Microsoft de verdad amara Linux, tuviese su cliente de Skype actualizado , y no lo hubiese abandonado desde hace año y medio.

Hace 7 años en esa fecha: The Free Software Song

Hace 10 años en esa fecha: Screenshots de varios Sistemas Operativos

Breve opinión sobre OS X luego de usarlo 3 meses

Linux ha sido mi sistema operativo principal desde finales del 2004, aunque en el 2006 usé Mac OS X por un tiempo y en el 2010 por trabajo me tocaba usar Windows. Desde enero desde este año, mi empleador me regaló una Mac mini para solucionar problemas en el navegador Safari, así que decidí usarlo por un tiempo como sistema operativo principal para ver cómo me iba.

Migración

Antes estuve usando Gnome 3 como interfaz principal en mi portátil (KDE 5 en la de escritorio) principalmente por el soporte a pantallas de alta resolución (HiDPI), esta interfaz es muy parecida a la de OS X por lo que la migración al nuevo sistema no me afectó, sin embargo, el funcionamiento interno del sistema si me costó.

Escritorio de Gnome, similar al de OS X

Escritorio de Gnome, similar al de OS X

Luego de varios años sin usar OS X, no noté grandes diferencias en la interfaz, pues mantiene la misma estructura, no por falta de innovación sino que funciona tal como está y no es necesario cambiarla, a diferencia de la Windows donde cambia en cada versión para brindar una buena interfaz pero como siempre, no parece correcta (aunque la de Windows 10 luce bien). La usabilidad de OS X es muy buena, realmente está diseñada para ser fácil de usar, por ejemplo, estaba buscando en el dock el “menu principal” y  Launchpad empezó a saltar para indicarme que ese es el ícono que andaba buscando.

Luego de usarlo por tres meses, ya me siento cómodo para dar mis opiniones sobre el uso de este sistema así que les comparto las ventajas y desventajas de de OS X.

Ventajas

  • La interfaz del sistema y de sus aplicaciones es muy limpia, sencilla y fácil de usar.
  • Posee una gran gama de aplicaciones, se pueden instalar tanto las aplicaciones que generalmente suelen encontrarse en Windows por su popularidad como aplicaciones de código abierto, digamos que es la unión de ambos mundos, agregando obviamente, las aplicaciones que sólo están disponibles para Mac OS.
  • ¡Es UNIX! Cuando ejecutas los comandos por consola, se nota que es un verdadero UNIX y se respeta la sintaxis /estructura de estos sistemas operativos.
  • Respecto a Archlinux, sé que las actualizaciones no me van a dañar el sistema o voy a perder tiempo leyendo si debo hacer pasos adicionales para actualizar.
  • El sistema operativo incluye buenas aplicaciones por defecto, por ejemplo el cliente de correo Mail me parece una excelente herramienta. También me gusta como desde aplicaciones nativas puedo acceder a mi información en la nube, la sincronización de la data es buena y todo automático.

Desventajas

  • El sistema está diseñado para que necesites un Magic Mouse o Magic Trackpad para aprovechar atajos de acciones, no se pueden configurar por teclado o utilizando dispositivos similares.
  • La personalización de la interfaz es casi nula.
  • El manejo de ventanas me parece muy sencillo, no se puede hacer muchas cosas desde el teclado y operaciones sencillas como dividir las ventanas por la mitad, requieren varios clics, a diferencia de otros S.O. que se puede hacer desde el teclado (incluso Windows es mejor)
  • No existe una forma centralizada de instalar aplicaciones, o las instalo manualmente, a través de la App Store o por Homebrew. En el caso de la App Store, me molestó que pide una tarjeta de crédito para crear una cuenta y a su vez acceder a la instalación de aplicaciones y mantenimiento del sistema.
Captura de pantalla de OS X "El capitan"

OS X es un buen sistema operativo para el usuario promedio y un poco avanzado

Básicamente esas son mis breves opiniones, como resumen, usar OS X me hace sentir que es un híbrido de Linux con Windows, en el sentido que tengo todas las aplicaciones y facilidad de uso de Windows, pero con el poder y terminal de Linux (bueno en este caso UNIX). Respecto al hardware, me parece un buen equipo, me gusta que la Mac mini no suena nada, no sé si tiene ventilador pero hasta los momentos me cuesta acostumbrarme al silencio del aparto jejee.

Recomiendo el sistema OS X para un usuario promedio, pero un usuario avanzado que le gusta acceder a cualquier parte de su sistema operativo, probablemente encuentre OS X muy cerrado para sus gustos.

Hace 6 años en esa fecha: ¿Cómo funciona Google?

Hace 8 años en esa fecha: Compilar un Mplayer optimizado para el PS3