Creando aplicaciones web con Sinatra y Ruby: más allá de los Rieles.

Hola y bienvenido. En esta entrada voy a dar una breve introducción a Sinatra y Ruby, el cual es posiblemente el segundo framework más utilizado del lenguaje.

Sinatra y Ruby

En la actualidad, cuando se escucha o se lee acerca del lenguaje de programación Ruby, suele interpretarse erróneamente como Ruby on Rails, esto gracias a la falta de conocimiento de muchos pseudo-programadores que piensan que son una misma cosa. Así que definamos conceptos, Rails  es un marco de trabajo (framework para los puristas), del lenguaje Ruby, el cual nos permite desarrollar aplicaciones web. Fue usado en sus inicios por Twitter, así que debe ser bueno ¿cierto?

Rails nos brinda todo para que podamos desarrollar aplicaciones robustas, proporcionándonos desde un inicio una estructura siguiendo la arquitectura MVC (Modelo-Vista-Controlador), y muchas otras cosas, pueden visitar su documentación si es que aún no lo conocían para ver más detalladamente sus bondades, yo aquí los espero…

¿Listos? Bien, continuemos…a estas alturas podrás estarte preguntando, ¿por qué utilizar otro framework cuando Rails nos proporciona tanto? La respuesta es sencilla, Porque Rails nos proporciona tanto. ¿No quedó claro? Dejame explicarte un poco más.

Sinatra y Ruby

Sinatra se define a si mismo como un DSL para crear aplicaciones web en Ruby con un mínimo esfuerzo. Esto lo logra quitándonos características las cuales según nuestro proyecto, no necesitamos, pero es mejor que veamos código cierto.

Lo primero que debemos hacer es instalar la gema de Sinatra.

Sinatra y RubyUna vez que termina de instalarse, vamos a ver lo sencillo que es de utilizar,

Cuando utilizamos Rails, debemos generar un proyecto, hacer un par de configuraciones y ponernos a codificar, con Sinatra y Ruby nos olvidamos de esto y vamos directo al código, en mi caso crearé un archivo llamado test-sinatra.rb.

Lo primero que haremos para probar la sencillez y poder de Sinatra es crear una ruta.

# test-sinatra.rb
require 'sinatra'

get '/' do
  '<h1>Mi primer Ruta definida con Sinatra :D!<h1>'
end
Sinatra y Ruby

Sinatra y Ruby

Y al ejecutar esto desde la consola, debemos tener una salida similar a esto:
Sinatra y RubyLo cual significa que nuestro servidor Sinatra está funcionando. Ahora, si desde tu navegador accedes a http://localhost:4567/ deberías tener una salida similar a esta:
Sencillo cierto, en Sinatra, una ruta no es más que un método HTTP
junto a un patrón de coincidencia de URL, donde cada ruta debe estar asociada a su bloque.
Por lo tanto, las siguientes rutas son validas:

get '/' do
  # bloque de código
end

post '/' do
  # bloque de código
end

put '/' do
  # bloque de código
end

patch '/' do
  # bloque de código
end

delete '/' do
  # bloque de código
end

options '/' do
  # bloque de código
end

link '/' do
  # bloque de código
end

unlink '/' do
  # bloque de código
end

Un punto que hay que cuidar con Sinatra, es que las rutas coinciden en el orden en que
son definidas, esto quiere decir que la primer ruta que coincida con la solicitud
del cliente es la que será invocada.

De igual forma, podemos tener rutas dinámicas, las cuales nos permiten definir parámetros
con nombre, los cuales serán accesibles desde el hash params.

get '/hola/:nombre' do
 # http://localhost:4567/hola/Mushr00m
 # params['nombre'] es 'Mushr00m'
 "<h1>Hola, #{params['nombre']}!</h1>"
end

Ahora, para realizar la prueba de esto, debemos detener nuestro
servidor y volver a ejecutarlo. Al hacer esto podemos probarlo ingresando a
http://localhost:4567/hola/:nombre dónde, debemos sustituir :nombre, con
la cadena que deseemos. Debes tener una salida similar a:

Sinatra y Ruby

Nota como en la URL sustituí :name por Programadores, y esto es lo que imprimió el mensaje,
genial ¿cierto? 😀

Eso no es todo, Sinatra nos permite crear las rutas de distintas maneras,
utilizando parámetros de bloque, condiciones, expresiones regulares, además de otras
peculiares formas que Sinatra nos permite.

Como espero poder haber mostrado, Sinatra es una muy buena opción para
crear aplicaciones web rápidamente y de una forma sencilla. Además de esto,
podemos servir archivos de plantillas, les recomiendo lean la documentación oficial,
o si gustan, escribiré otra entrada para profundizar un poco más en este excelente framework.

Y bien, Sinatra es una excelente opción y alternativa a Rails, como framework para desarrollar
aplicaciones web utilizando Ruby, y no se crean, con Sinatra podemos tener las caracteristicas
que nos brinda Rails con a penas un poco de esfuerzo extra.

Espero te sirva esta entrada, cualquier comentario, sugerencia o punto de mejora que encuentres
te estaré agradecido si lo dejas en los comentarios.
Saludos 😀

Ejercicios de Programación: Calculemos el Factorial de un número

Calculemos el factorial de un número

Debido a qué me encuentro cansado después de un largo día en el trabajo, será una entrada breve, pero siempre con el objetivo de compartir algo por día, para así también me sirva como repaso, en esta ocasión, simplemente voy a mostrarles algunas maneras que conozco para calcular el Factorial de un número, claro, utilizando el lenguaje Python.

Nota: Para poder realizar la solución de un problema, primero que nada debemos entenderlo, en este caso, el problema es obtener el factorial de un número cualquiera, a estas alturas espero sepas como se calcula el factorial de un número, pero si no es así, déjame mostrarte. El factorial de un número, se calcula multiplicando este número por todos los números anteriores a él hasta el 1. Esto es:

6! = 6 * 5 * 4 * 3 * 2 * 1, lo que nos da como resultado 720.

Sabiendo esto, veamos que opciones tenemos con Python para llevar a cabo esta operación.

Nota 2: Para simpleza de la entrada, todas las formas que veremos, las probaremos calculando el factorial del número 6, obviamente el procedimiento será el mismo para cualquier número.

Haciéndolo de forma “sucia”

print(6 * 5 * 4 * 3 * 2 * 1)

Utilizando la función built-in de Python

from math import factorial
factorial(5)

Utilizando un ciclo “while”

def fact_1(n):
    factorial_total = 1
    while n > 1:
        factorial_total *= n
        n -= 1
    return factorial_total

Utilizando recursividad

def fact_recursividad(n):
    if n > 1:
        return n * fact_recursividad(n - 1)
    else:
        return 1

Utilizando recursividad y el operador ternario 😀

def fact_ternario(n):
    return n * fact_ternario(n - 1) if n > 1 else 1

EDICIÓN (24/04/2016):
Gracias a la observación de Daniel en los comentarios, añado la forma elemental para
realizar el procedimiento.
Saludos.

def fact(n):
    if n == 0:
        r = 1
    else:
        r = n * fact(n - 1)
    return r

Ahora, si ejecutas el código podrás notar que todos devuelven el mismo resultado para cualquier número, pero podemos observar que tenemos diferentes maneras de programar la solución.

Factorial: Resultados

 

 

 

 

Puedes encontrar el código utilizado en esta entrada, comentario de mejor foma en el siguiente repositorio de Github https://github.com/TheMushrr00m/factorial-python 😀

Si tienes alguna duda, no dudes en dejar tu comentario, si te parecio interesante o tienes algún punto en el que piensas que podría mejorar algo, por favor no dudes también en dejar tu comentario, de igual forma comparte la entrada para que pueda llegar a alguien a quien le pueda resultar útil. Saludos.

Valores Truthy y Falsy

Hola a todos, hace tiempo que no escribo en el blog, pero pienso que es buen momento para retomarlo, y que mejor que hacerlo sobre algo que me llamó la atención estos días, los valores Truthy y Falsy.

Para quienes me conocen, no es secreto que mi lenguaje favorito, aquél con el que comencé en la programación, y con el que me gusta hacerlo todo siempre que se me permite es Python.

Pero últimamente he estado trabajando mucho con Javascript, en especial, ganando experiencia con su nueva especificación ECMAscript 2015,.

Algo que me llamó la atención, fue leer acerca de la expresión que establece el titulo de esta entrada, los valores Truthy y Falsy. Todos conocemos que en los lenguajes de programación, tenemos los valores “booleanos” True y False, así que se podrán estar preguntar, ¿de qué rayos está hablando? Bien, en palabras fáciles de digerir, podemos decir que cada elemento del lenguaje tiene un valor booleano intrinsico-primitivo.

Valores Truthy y Falsy

Valores Truthy y Falsy

 

 

 

Teniendo primeramente los valores que ya todos conocemos True y False, pertenecientes a la clase bool, nos encontramos con lo siguiente:

Valores Falsy

None  # Valor None perteneciente a la clase NoneType.
0  # Valor 0 perteneciente a la clase int.
""  # Valor cadena vacía perteneciente a la clase str.
[]  # Valor lista vacía perteneciente a la clase list.
()  # Valor tupla vacía perteneciente a la clase tuple.
{}  # Valor diccionario vació perteneciente a la clase dict.

Así que no te convence eso…puedes probarlo por ti mismo, en el intérprete de Python prueba utilizando bool() para evaluar cada uno de esos datos, verás que todos evaluarán como False…¿ahora me crees?

Dicho esto, cualquier otro valor, es considerado un valor Truthy . Sencillo ¿cierto?

 

Valores Truthy y Falsy

 

 

 

 

 

 

 

 

En el caso de JS no existe mucha diferencia con respecto a Python,

Como valores Falsy (además de false)  tenemos:

0  // (cero) de la clase Number.
NaN  // (Not a Number) de la clase Number.
""  // (cadena vacía) de la clase String.
null  // de la clase Object.
undefined  // de la clase Undefined.

Valores Truthy:

En JS al igual que Python, cualquier otro valor diferente a los anteriores, es considerado como verdadero o Truthy además de algunos valores que pueden resultar curiosos como:

Infinity  // Number(Al igual que NaN, son números especiales de JS)
"0" , "true", "false"  // String
function(){}  // Function
[]  // Object (Array)
{}  // Object

Y bien, es todo por ahora, mi nuevo propósito es publicar una entrada por día,
por más pequeña que sea, para ganar ese habito, y poder yo mismo mejorar en la programación,
y como persona, puesto que una vez me dijeron qué cada día se aprende algo nuevo, y que si
esto no se cumplía, es porque estaba desaprovechando mi tiempo.

Así que es todo por hoy, espero les sirva está información, si tienen algún comentario no
duden en escribirlo, y si les parece interesante el articulo, sería un gran gesto que lo compartieras.

Si quieren saber un poco más sobre esto, aplicado a JS,
una buena referencia es el siguiente articulo:

Saludos 😀

Curso Python – Herramientas necesarias

Hola a todos los lectores:

 

En esta ocasión les dejo este que es el segundo video del “Curso Python”.

En este vídeo les muestro la forma de instalar las herramientas necesarias para el curso, las cuales son, el interprete del lenguaje de programación Python, y un editor de textos, el cual, en mi elección, será el editor Sublime Text.

Espero sus comentarios.

Cualquier sugerencia es recibida.

Hasta la próxima. Saludos.

Curso Python – Presentación

Hola a todos los lectores:

En esta ocasión, les dejo este vídeo que realicé como presentación del nuevo “Curso Python”, el cuál estaré impartiendo durante un tiempo.

En este curso les mostraré lo básico de la programación, utilizando este, que a mi parecer es actualmente uno de los mejores lenguajes.

Para llevar a cabo este curso, no se necesitarán conocimientos previos de programación.

Espero que dejen sus comentarios y que puedan compartir los vídeos.

Bien, espero les sirvan y compartan las aplicaciones que realicen 😀

Saludos.

Personalizar el prompt en Arch Linux

En esta ocasión quisiera mostrarles lo sencillo que es personalizar el prompt en Arch Linux (Y en cualquier otra distro). Hago énfasis en Arch ya que es la Distro que utilizo desde hace mucho tiempo y con la que me encuentro demasiado contento, se las recomiendo. 😀 Muchos podrán decir:

Para que hacer esto si ni siquiera utilizo la Terminal o Shell

Bueno, tienen mucha razón, aunque en ese caso mi respuesta sería…

Por la misma razón que son usuarios de alguna distribución GNU/Linux, (Mucho mejor si utilizan Arch créanme) por el simple hecho de aprender…

Y es que no existe otro motivo, por lo menos no se me ocurre en este momento ademas del simple hecho de aprender algo nuevo, ademas, aunque no utilicen la terminal para su trabajo del día a día, podría apostarles que en mas de una ocasión, por el motivo que sea, han tenido que abrir esa fea pantalla negra con letras en color blanco (En la mayoría de los casos) y teclear comandos Like a Hacker. xD

Desde que utilizó Arch, (Hace ya un buen tiempo) me incliné por utilizar la terminal para realizar las cosas, es muy divertido, pero no me había dado por personalizarla, esto debido a que no soy mucho de estarle modificando la apariencia a la distro, aunque hace unos días comencé a hacerlo, y fue donde miré la Konsole y me dije, ¿y por qué no?.

Bien, a lo que vinieron, para poder personalizar el prompt de nuestra terminal, únicamente debemos realizar cambios en nuestro archivo “.bashrc”, el cual comúnmente se encuentra en su carpeta $HOME, como esta entrada habla sobre como podemos personalizar el prompt de nuestra terminal, todo lo que hagamos de ahora en adelante lo realizaremos en ella. Como primer paso les recomiendo que hagan un respaldo de su archivo “.bashrc” original, esto podemos realizarlo con el comando “cp .bashrc /lugar-donde-guardaran-el-respaldo”, en mi caso quedaría

 cp ~/.bashrc ~/bashrc 

Con el comando anterior, únicamente copie mi archivo cambiándole el nombre dentro de mi carpeta $HOME. Después de esto, abren su archivo desde su editor favorito en terminal, en mi caso es nano, así que utilizo el comando:

 nano .bashrc 

Una vez que abran el archivo les debe aparecer el contenido de este, el mio se encuentra de la siguiente manera actualmente:

#
# ~/.bashrc
#

#if not running interatively, don't do anything
[[ $- != *i* ]] && return

alias ls="ls --color=auto"
#PS1='[\u@\h \W]\$ ‘
#Add RVM to PATH for scripting
export PATH="$PATH:$HOME/.rvm/bin"

Lo importante en este archivo es esa linea que se encuentra comentada “#PS1='[\u@\h \W]\$ ‘” ya que es la que nos muestra la configuración actual de nuestro prompt. Se lo que piensan, “Que rayos significa eso”, lo sé, es difícil de digerir a simple vista, pero de verdad es mas sencillo de lo que parece, déjenme mostrárselos.

Primero se encuentra PS1=, esta es la variable global que utiliza el sistema para poder modificar el prompt así que no le cambien ese nombre, supongo que en todas las distros será así, pero por lo menos en Arch si es de esta manera, luego se abren comillas simples y se comienzan a introducir los “argumentos” que no son mas que caracteres especiales que representan la información que deseamos que aparezca en nuestro prompt.

Después tenemos el símbolo “[“, luego aparece “\u“, esto nos muestra nuestro nombre de usuario, después aparece “@” que no es mas que el arroba para dividir nuestro nombre de usuario del nombre de nuestro equipo, el cual aparece despues con “\h” luego viene un espacio y nos encontramos con “\W“, que no es otra cosa sino lo que hace que se muestre el directorio en el que nos encontramos situados actualmente, se cierra “]“, y nos encontramos el queridisimo y famoso signo de dolar que nos muestra que nos encontramos como usuarios normales. Sin olvidar cerrar las comillas simples una vez terminamos de escribir nuestros argumentos. Podemos observarlo en esta imagen…

Prompt por defecto

Prompt por defecto

En mi caso, una vez que lo he modificado me quedo así: (les recomiendo que esa linea la dejen comentada y creen una nueva en la parte inferior del archivo)

 PS1='\[\e[33;1m\]┌\[\e[34;1m\][\[\e[0;1m\]\u\[\e[34;1m\]@\[\e[31;1m\]\h\[\e[34;1m\]]\[\e[33;1m\]┐\[\e[34;1m\]\[\e[0;1m\] → \[\e[34;1m\][\[\e[32;1m\]\W\[\e[34;1m\]]\[\e[0;1m\]\$ '

Disculpen si no se los explico, lo hago de esta manera para que analicen un poco y vean que es cada cosa. Y como una imagen vale mas que mil palabras…

Mi prompt ya modificado

Mi prompt ya modificado

Como comentario: Si quieren probar únicamente antes de hacer cualquier cambio, no modifiquen el archivo aun, pueden teclear en la consola directamente

 PS1=' '

Y dentro de las comillas ir poniendo su configuración,una vez que se sientan con la confianza de probarlo presionan [ENTER] y deberán ver los cambios.
Como les decía, estos cambios al no encontrarse en su archivo .bashrc se perderan una vez que cierren la terminal, así que cuando yase sientan seguros completamente de realizar los cambios, pueden modificar el archivo sin problema, recuerden que cuentan con un respaldo, porque lo hicieron ¿cierto?.
Lo sé, algo minimalista y sin tanto adorno, pero así son mis gustos, sin embargo espero que ustedes pongan a volar su imaginación y hagan algo increíble con su prompt ya que en verdad, he visto que se pueden realizar cosas grandiosas. Y bien, creo que ha sido todo por ahora…solo bromeo, por aquí les dejaré algunos de los “argumentos” que pueden utilizar para modificar su prompt, sacados directamente desde la ArchWiki.

\a     carácter de campana ASCII (07)
\d     la fecha en formato día mes día (p.ej.,"mié jul 02")
\D{format}
    el formato es proporcionado a strftime(3) y el resultado es in    sertado en la cadena del indicador; un formato vacío resulta      en una representación de fecha especifica local. Las llaves       son requeridas.
\e     caracter de escape ASCII (033)
\h     el nombre del host hasta el primer `.'
\H     el nombre del la máquina completo (FQDN)
\j     el número de trabajos actualmente gestionados por el              interprete
\l     el nombre base del dispositivo de terminal del interprete
\n     carácter de nueva línea
\r     retorno de carro
\s     el nombre del interprete, el nombre base de $0 (el                fragmento que sigue a la última diagonal)
\t     la hora actual en formato 24-horas HH:MM:SS
\T     la hora actual en formato 12-horas HH:MM:SS
\@     la hora actual en formato 12-horas AM/PM
\A     la hora actual en formato 24-houras HH:MM
\u     el nombre del usuario actual
\v     la versión del pquete bash (p.ej., 2.00)
\V     la versión del paquete bash + el nivel de parche                  (p.ej., 2.00.0)
\w     el directorio actual de trabajo, con el directorio $HOME          abreviado con una tilde
\W     el nombre base del directorio actual de trabajo, con el directorio $HOME abreviado con una tilde
\!     el número del comando actual en el histórico
\#     el número de comando del comando actual
\$     si el UID efectivo es 0, un #; en otro caso, $
\nnn   el caracter correspondiente al número en octal nnn
\\     una diagonal invertida
\[     inicio de una secuencia de caracteres no imprimibles que          pueden usarse para ingresar una secuencia de control en el        indicador de la terminal
\]     fin de una secuencia de carácteres no imprimibles

También les dejo algunas combinaciones de colores…

Negro       0;30     Gris Obscuro  1;30
Azul        0;34     Azul Claro    1;34
Verde       0;32     Verde Claro   1;32
Cyan        0;36     Cyan Claro    1;36
Rojo        0;31     Rojo Claro    1;31
Purpura     0;35     Fiuscha       1;35
Café        0;33     Amarillo      1;33
Gris Claro  0;37     Blanco        1;37

Una vez que hayan modificado a su gusto su prompt, solo es cosa de volver a abrir la terminal para ver sus cambios definitivos, o ejecutar el comando bash.

Espero les sirva de algo, creo que es la entrada mas larga que he escrito, pero debo confesarles que me divertí mucho, espero ustedes también lo hagan, y bueno, sigan pasando por el blog.

Hasta la próxima entrada.

Saludos.

“Visual Studio Code” – Editor Multiplataforma por parte de Microsoft

Buen día a todos los lectores del blog, déjenme felicitarlos ya que tienen buen gusto 😀

En esta entrada, quiero dar mi punto de vista y no tanto hacer eco de esta noticia, que desde el día de ayer a estado en boca de todos los que nos desenvolvemos en las actividades cotidianas de Internet y la informática.

Hablo de la noticia que dieron los chicos de Microsoft el día de ayer en su conferencia BUILD 2015, acerca de su nuevo editor de código Visual Studio Code el cual es multi-plataforma, esto es, que puede correr bajo Windows, GNU/Linux y OS X.

Visual Studio Code

Visual Studio Code – Portada del Sitio

En lo personal, luce exactamente igual a editores que ya tienen un tiempo entre nosotros  y que a mi me gusta mucho utilizar, como Brackets, Sublime Text o Atom.

Creo que no es novedad comentar que soy un fiel usuario de Arch Linux y esto no se que tan beneficioso pueda ser para nosotros los usuarios de sistemas GNU/Linux.

Llevamos mucho tiempo escuchando noticias acerca del espionaje y de la falta de privacidad que nos proporcionan las grandes empresas de Internet así es, Microsoft pertenece a estas empresas, .

Si son observadores, en la imagen que puse arriba estoy mostrando la portada del sitio oficial de Visual Studio Code, y como podrán notar en la parte justo arriba de donde se muestra el vídeo de presentación del editor, vemos el siguiente mensaje…

By installing Visual Studio Code, you agree to the terms and data collection described here

No lo sé, pero no confío en estas recopilaciones de datos por parte de Microsoft.será que en realidad solo les interesa lo que suceda en torno a su editor…

Pero como les comenté al inicio de esta entrada, únicamente quería dar una opinión acerca de Visual Studio Code, que por lo que pude observar es que ofrece características necesarias para el día a día de nosotros los desarrolladores, ademas de que es compatible con muchos lenguajes de programación.

Pero les comento que lo probé en la versión de Windows, (Si, tengo una partición con Windows ya que mi trabajo como administrador SAP me hace necesitarlo, así como la Universidad, ya que, aunque le mostré al profesor que podía desarrollar los programas que me solicitaban en el lenguaje C# utilizando Xamarin, este me “pidió” obligo a tener que utilizar Visual Studio) y como no podía ser de otra forma, el aspecto visual es excelente, pero cuando lo probé en mi partición y sistema principal “Arch“, su integración con KDE no fue la mejor que podríamos esperar, por ejemplo, la barra de menú no se visualizaba, lo sé, poca cosa, pero es algo que debo comentarles.

Además de que por lo que noté solo se encuentra en versión 64 bits, corrijanme por favor si estoy equivocado, y debemos recordar que es software privativo.

Y tu… ¿Ya probaste Visual Studio Code?

Si desean probar este editor u obtener un poco mas de información, pueden hacerlo visitando el sitio oficial de visual studio code.

Y eso es todo por hoy, espero sus comentarios al respecto, sus experiencias o lo que quieran decirme.

Saludos.

Estructura de Datos – Listas Ligadas (Enlazadas) en Lenguaje C

Hola a todos los que lleguen a leer esta entrada.

En esta ocasión les dejo un video-tutorial que tuve que realizar en mi materia de Estructura de Datos, en el cual, debía mostrar como implementar las listas ligadas en el lenguaje de Programación C.

Aclaró que tal vez ustedes puedan tener otra forma para realizarlo, o al ver el vídeo se les ocurra alguna manera mas eficiente, si es así, quedo abierto a leer sus comentarios al respecto.

También les dejo la presentación que utilicé en el vídeo, se que es algo simple pero intenté explicar todo durante el vídeo, en fin, para algo podría servirles.

Listas Ligadas Simples (Presentación)

Y por si no fuera suficiente para ustedes, también les dejo el código fuente que realicé y se muestra en el vídeo, les recomiendo utilicen el IDE que yo utilizo, el cual es “Code Blocks“, a mi parecer es la mejor opción para escribir código C, claro, esto si no lo hacen desde algún sistema *nix, si es así, les recomiendo que lo hagan a lo hardcore desde terminal con Nano, Vim o Emacs. en Windows.

Code Blocks Logo

Si se animaron a probarlo, pueden descargarlo directamente desde su Sitio Web.

Y bien, espero sus comentarios sobre el vídeo, claro, siempre y cuando no sean acerca de la edición del vídeo, o de la forma en que hablo, les comento que lo realicé 2 horas antes de ir a la Universidad, estaba desvelado y no estaba 100% concentrado.

Era broma, si quieren comentar lo que sea no duden en hacerlo.

Saludos.

Curso de Programación Ruby – (Presentación)

Curso de Programación Ruby.

Presentación del Curso

Curso de Programación Ruby

Curso de Ruby

Este curso pretendo que sea ameno y didáctico, y espero que sirva para todas aquellas personas que estén interesadas a introducirse en el mundo del desarrollo de software a poder cumplir este objetivo, y que pronto comiencen a desarrollar sus propias aplicaciones.

Este curso será utilizando el lenguaje de programación Ruby . Esta dedicado para cualquier persona interesada en el mundo de la programación, desde chicos a grandes, sin importar si ya tienen experiencia con algún otro lenguaje.

Bien, sin mas por el momento los dejo con la presentación del Curso.

El objetivo es finalizar el curso en menos de un mes, los invito a que estén pendientes del blog y que se suscriban a mis redes para que se enteren al momento de que se publiquen las demas entradas del curso. 😀

Habilitar WebIDE en nuestro navegador Firefox

“¿Quieres aprender como habilitar WebIDE y comenzar a desarrollar webapps directamente en el navegador?

Hola, en esta entrada vengo rápidamente a dejarles el vídeo, en el cual les muestro el nuevo IDE que los desarrolladores de Mozilla están integrando en nuestro navegador Firefox y la forma correcta para que puedan habilitar webide en Firefox, el cual esta pensado para el desarrollo de aplicaciones para Firefox OS y la forma en como podemos habilitarlo si aun no lo tienen activo

Déjenme comentarles también que es una excelente herramienta para todos aquellos que estén interesados en desarrollar aplicaciones para el sistema operativo móvil Firefox OS, y/o cualquier proyecto web que tengan entre manos.

Cualquier comentario al respecto del vídeo, por favor no duden en dejarlo.

Si quieren mas información acerca del proyecto, visiten su sitio web.

Saludos.