viernes, 16 de enero de 2015

El problema de instalar Yeoman en Ubuntu.



El problema de instalar Yeoman en Ubuntu.


Bueno, el día de ayer me topé con un problema al querer instalar yeoman de manera global sobre mi distro ubuntu 14.04. A continuación describo los pasos que use para instalar yeoman, los problemas que tenia y como lo solucioné.

Antes de continuar consideremos lo siguiente:
  • Node.js v0.10.x+ 
  • npm (which comes bundled with Node) v2.1.0+ 
  • git 

Problemas: 

Problemas de permisos al instalar yeoman de manera global.

Al instalar yeoman, bower y grunt desde npm no se puede acceder al comando una vez terminada la instalación.

npm install --global yo bower grunt-cli

Solución:

Despues de darme cuenta de que la instalacion de yeoman me mandaba errores de permisos seguí las recomendaciones que vienen en la página de yeoman sobre los permisos de root al instalar paquetes, por ello me instalé el script:

https://github.com/glenpike/npm-g_nosudo

Después de esto aún no funcionaba.

Buscando en los errores que me devolvía npm al tratar de instalar yeoman me percate que me aparecía algo parecido a esto:


sh: 1: node: not found
npm ERR! error installing ...
npm WARN This failure might be due to the use of legacy binary "node" 
npm WARN For further explanations, please read
npm WARN /usr/share/doc/nodejs/README.Debian
npm WARN 
npm ERR! error installing ...

donde los ... es el paquete que instalaba.

Buscando por stack overflow encontré la solución, resulta que ubutnu tiene un paquete llamado node (como nos pudimos dar cuenta si instalamos node a través de apt-get) y cuando se ejecuta el comando node en la instalación de los paquetes npm se manda a llamar al otro programa que nada tiene que ver con nuestra instalación de node.js. En lugar de llamarse a node debía de haberse llamado a nodejs. La solución fue simple, instalar otro paquete que corrigiera el problema de los symlinks, en este caso instale nodejs-legacy.

Después de lo anterior probé si se solucionaba el problema pero no aun no :/ así que seguí buscando.

Luego al ver que aun no podia ejecutar yo, bower ni grunt desde la consola volví a buscar una solución y me topé con esto:

echo prefix = ~/.node >> ~/.npmrc
echo 'export PATH=$HOME/.node/bin:$PATH' >> ~/.bashrc
. ~/.bashrc

Después de esto ya pude acceder directamente a los comandos yo, grunt y bower:

$ yo
[?] ==========================================================================
[?] ==========================================================================
We're constantly looking for ways to make yo better! 
May we anonymously report usage statistics to improve the tool over time? 
More info: https://github.com/yeoman/insight & http://yeoman.io
==========================================================================: Yes
[?] What would you like to do? (Use arrow keys)
‣ Install a generator 
  Find some help 
  Get me out of here! 


Toda una odisea, bueno les dejo las referencias de mi busqueda para que no pasen por el mismo dolor de cabeza.

https://github.com/sindresorhus/guides/blob/master/npm-global-without-sudo.md

https://github.com/glenpike/npm-g_nosudo

http://plaidzooks.tumblr.com/post/36894116867/using-node-js-on-debian-ubuntu-systems

http://truthyfalsey.com/yeoman-working-ubuntu/


Actualizado....

Me siguió dando problemas la configuración anterior, opte por volver a instalar node ahora con nvm


Ya con la instalacion de node a traves de nvm ya no me dio problemas la instalación y uso de yo, grunt y bower. ;)  



domingo, 17 de marzo de 2013

Recursos para iniciar

Para iniciar necesitamos algo de documentación para poder adelantarnos si es necesario o simplemente para repasar o revisar de que el que escribe este blog no se le pase nada o diga mentiras ;)

La pagina en la que yo me inicie aprendiendo sobre web fue la siguiente:

http://librosweb.es/

En lo personal, esta pagina se me hace muy completa, te explica con muchos ejemplos y buena base teórica como funciona HTML, CSS y JavaScript, entre otras tecnologías.

Una muy buena pagina si queremos conocer mas a fondo las tecnologías web que se desarrollan por parte del equipo de mozilla (los creadores de Firefox):

https://developer.mozilla.org/es/

Otra muy buena opcion para documentarnos, me atrevo a decir que es la competencia del developer network del mozilla.

http://www.html5rocks.com/en/


Los estandares W3C y WhatWg

http://www.w3.org/wiki/Main_Page

http://www.whatwg.org/specs/web-apps/current-work/multipage/

Editores de texto para probar los ejercicios:

http://codepen.io

http://jsbin.com

¿Porque JS hoy en día?

Como primer post vamos a mencionar algunas de las aplicaciones que tiene este lenguaje que a muchos no les gusta pero que a muchos otros como yo le encanta y le sigue sorprendiendo.

Es mas que conocido que javascript (de aquí en adelante lo llamare js o JS) es un lenguaje que se utiliza en los navegadores para poder programar la parte de front (http://es.wikipedia.org/wiki/Front-end_y_back-end), de modo que sea mas fácil e interactiva la participación de un usuario en un sitio web.

Si no tienes idea de donde o como es que funciona js en tu navegador o en las paginas que visitas te recomiendo que aprietes en este momento la tecla F12, esto provocara que tu navegador abra el editor o las herramientas de desarrollador donde podrás encontrar una consola de javascript. En la consola de js tu puedes probar funciones y código js sobre la pagina actual. Ejemplo:

Nota:

Para los usuarios de Firefox: Es necesario que instales firebug para facilitar las pruebas que haremos a lo largo de los tutoriales y publicaciones.

Para los usuarios de Chrome: Ya esta por defecto en el navegador.

Para los usuarios de Internet Explorer: Mejor bajen Firefox y/o Chrome, es desesperante usar el editor que tiene este navegador.

Introduce en la consola de js lo siguiente: alert("Hola estoy aprendiendo a usar la consola de js"); luego aprieta enter o el boton de ejecutar script. Podrás ver como brinca una pequeña ventana donde sale el texto que pusimos arriba.

Así como salio esta pequeña ventana por una linea de código tan simple, hay muchísimas lineas de código presentes en una pagina web (por ejemplo en este blog), las cuales controlan todos esos efectos que hacen mas agradable la navegación.

En este post no hablaremos de lo que podemos hacer con esta consola, este post es únicamente para que nos demos cuenta de las diversas aplicaciones que tiene js.

Algunas aplicaciones de js:
  1. Web front-end: Navegadores, plugins de navegadores, paginas web, animaciones en paginas web, AJAX, etc.
  2. Web Back-end: (Como servidor web) Node.js, Common.js
  3. Desktop apps: Common.js, Titanium
  4. Smart Phone: Titanium, Phonegap
  5. Juegos, simulacion y animacion: WebGl, processing.js, Three.js, box2d.js
  6. Imagenes SVG: raphael.js
    Entre otras....

Como vemos en la lista anterior las aplicaciones de js estan avanzando y ahora abarca muchas mas cosas de las que nos mencionan usualmente en la escuela (cronometros y validaciones).

Conforme avance el blog presentare muchas mas formas de utilizar js.

¡Gracias por visitar el blog!






El inicio

Después de bastante tiempo de tener a la iglesia javascriptista dentro de Facebook he decidido que ya es tiempo de pasarlo a un medio mas accesible para los usuarios que detestan estar en esa red social por la perdida de tiempo que esto representa (ya sea viendo publicaciones, memes, husmeando en muros ajenos, etc). Para los que no conocen que es la iglesia javascriptista, es simplemente un grupo de desarrolladores, diseñadores, computologos, informaticos, mercadologos, profesores y  estudiantes que tenemos alguna relación con las nuevas tecnologías web, de modo que entre nosotros compartamos links, tutoriales, libros gratuitos, ofertas de trabajo, concursos y otros recursos relacionados con el diseño y programación web.

Como estudiante y aprendiz de programador recopilo información que puede ser de utilidad ya sea para mi como para cualquier otra persona que la necesite, y el medio en que lo hacia anteriormente era por medio de las publicaciones del grupo en Facebook, de modo que ya sea yo como cualquier otra persona que quisiera aprender un poco o enseñar sobre el tema tuviera los recursos para hacerlo.

Les comparto los liniks de el grupo y la pagina de facebook donde podrán encontrar mas información.

https://www.facebook.com/groups/iglesia.javascriptista/?bookmark_t=group

https://www.facebook.com/IglesiaJavaScriptista?bookmark_t=page

Lamentablemente en la pagina de Facebook casi no hay información  pero pueden encontrar a muchos miembros así como recursos útiles en el grupo.

Sean bienvenidos a mi humilde blog, ojala sea de su agrado.