lunes, 7 de octubre de 2013

Euler tenemos un problema



Hola, me acabo de encontrar un problemilla que emplea iteradores de una manera fácil y sobre todo ahorra mucho código


En concreto es este

Description:
If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.
Finish the solution so that it returns the sum of all the multiples of 3 or 5 below the number passed in

Descripcion:
 Si listamos todos los números naturales menores a 10 que son de 3 o 5, obtenemos 3,5,6 y 9. La suma de estos múltiplos es 23.
Termina la solución para que devuelva a suma de los múltiplos de 3 y 5 menores a un numero dado.

Mi solución fue esta

def solution(number)
  mul = (1...number).select { |n| n % 3 == 0 or n % 5 == 0}
  mul.inject(:+)
end


Y eso es todo, en otro lenguaje como C y sus derivados me hubiese llevado muchas mas lineas, no lo creen?

Este y otros problemas están disponibles en Project Euler, de que otra forma se les ocurre resolverlo? hubiese dejado todo en una sola linea pero  me parecía que podría volverse ilegible, ustedes que piensan?

domingo, 28 de julio de 2013

Como implementar AngularJS en Ruby on Rails



Debido a que la mayoría de la documentación, información y/o ejemplos que encuentro en linea esta en ingles, lo cual no me molesta pero no es mi lengua madre, he decidido escribir este blog con la finalidad de poner ejemplos sencillos y fáciles de entender e implementar, para dummies.

Si yo puedo aprenderlo te aseguro que tu también :D

Vamos al grano.

Primero necesitamos crear una aplicación (app) en Rails - si ya tienes creado uno sáltate este paso

$ rails new nombre_de_mi_app

Después necesitamos descargar AngularJS en la siguiente dirección

http://angularjs.org/

Ahora vamos a la carpeta de nuestra aplicación y localizamos la siguiente ruta

app/assets/javascript

y en esa carpeta pegamos el archivo de AngularJS, que se llamara algo así como angular.min.js



Y eso ha sido todo, ya puedes empezar a utilizar AngularJS en tu aplicación, espero poder incluir pronto un ejemplo.

Si te gusta experimentar intenta recrear los ejemplos que se encuentran en la pagina oficial de angular

Au revoir!