jueves, 29 de enero de 2015

Les presento a Phonegap

En esta oportunidad hablaremos de lo que es Phonegap y porque darle algo de espacio para su aprendizaje.

En palabras simples Phonegap es un entorno de ejecucion web (similar a un navegador) pero que permite el acceso a ciertas funciones propias del móvil (cámara, acelerometro, etc.).

Lo que hace diferente y poderoso a Phonegap, es que puede compilarse a distintas plataformas (Android, iOS, Blackberry, Windows, etc.) con un solo código fuente.

Desde que se inicio el boom de los smartphones, siempre a quedado ese recelo de para que plataforma implementar, siendo que implementar para todas las plataformas en lenguaje nativo toma tiempo y cuesta mucho dinero, es por esto que nace Phonegap.

Otra ventaja sobresaliente es el lenguaje en que se desarrolla, que es similar al de un sitio web
  • HTML
  • CSS
  • JS
Por supuesto no todo es color de rosa, si bien Phonegap es funcional, no iguala ni se acerca en rendimiento a una aplicación nativa, asi que si estas pensando en hacer un juego o alguna aplicación de alto rendimiento, mejor que veas otras opciones.

 Otras opciones pueden ser herramientas como el SDK Corona o Titanium, pero lo dejo a su elección.

Si conocen otra herramienta o quieren aclarar algo, por favor sientase con la libertad de hacerlo.

Yo me despido y será hasta la próxima vez.

miércoles, 28 de enero de 2015

Si vas a aprender PHP, mejor que sea con un Framework

PHP y sus frameworks - Minty
PHP es el lenguaje de programación web del momento, es facíl darse cuenta con la cantidad de proveedores disponibles y el precio al que se oferta su alojamiento (caso muy distinto en comparación con las alternativas como JSP y ASP).

¿Qué tiene de especial o diferente PHP?

PHP a diferencia de JSP o ASP que son compilados, PHP es un lenguaje de ejecución, es decir, que cada que se llama a un archivo PHP este se ejecuta con el fin de realizar su trabajo.

Ventajas y desventajas siempre existiran, aunque no las debatiremos por ahora, es evidente que a PHP le queda un tiempo más antes de ser desplazado por otros lenguajes, asi que es hora de que le des una oportunidad.

¿Vale la pena aprender PHP?

Como revisamos previamente, estara un tiempo más entre nosotros, no obstante, hasta hace no mucho estuvo por desaparecer gracias a alternativas como Python y Ruby, entonces, ¿Vale la pena invertir tiempo en aprender PHP? la respuesta es si, pero no sólo PHP.

PHP hace todo lo que debe, pero tiene la sintaxis y orden menos amigables de todos los lenguajes, es por esto que ha perdido terreno frente a los lenguajes citados previamente, pero estos lenguajes que rivalizan con PHP cuentan con algo que a PHP le hacia falta, un Framework.

La definicion de framework es bastante larga y confusa, asi que por motivos prácticos e introductorios, diremos que es un conjunto de librerias que nos automatizan procesos.

Python y Ruby alcanzaron la fama gracias a sus Frameworks especializados (Django y Rails respectivamente), los cuales agilizaban el desarrollo exponencialmente y PHP tampoco se quedo atrás, aunque con una comunidad tan grande era normal que los esfuerzos por generar un framework se separaran hasta generar multiples frameworks, que aunque agilizaban el desarrollo no estaban lo suficientemente trabajados para recuperar el terreno perdido por PHP.

Ejemplos de esto son Smarty y Cake PHP, que generaron una revolución uno por la organización y otro por la automatización, pero que respectivamente fallaban en el campo en que triunfaba el otro.

Es ahora que han surgido Frameworks perfectamente funcionales y estables que hacen temblar a la comunidad de Python y Ruby, con una sintaxis mas agradable y orientados a crear sistemas estables:

Entre los que podemos nombrar están:
  • Laravel: Presume de su estabilidad y facilidad para pruebas.
  • Symfony: El que tiene la comunidad mas grande y la mayor cantidad de bundles (componentes).
  • Yii: El que más automatiza ABM (a traves de sus widgets).
  • Falcon: El más rápido (Veloz respuesta al tener su nucleo programado en C)
Y son solo algunos, mencionare a CodeIgniter, que tiene una comunidad bastante grande tambien y KumbiaPHP, que si bien aun no pruebo, presume de tener una gran comunidad  y que ademas es de habla latina (para aquellos que odian el inglés).

Es muy aconcejable que aprendas PHP junto con alguno de los frameworks mencionados, laboralmente porque es más competente aquel que sabe manejar un framework a medias que un experto en PHP puro, además que todos los frameworks funcionan sobre PHP, es decir, terminaras aprendiendolo de un modo u otro.

Un ultimo consejo, personalmente me inclino por Laravel y su ORM (Eloquent), aunque me gusta más el motor de plantillas de Symfony (Twig) y el hecho que Laravel funciona con PHP 5.4, me vi forzado a mezclar las cosas que mas me gustaron, por ello uso la siguiente combinación:

SilexPHP + Motor de plantillas Twig + ORM Eloquent Standalone.

Funcionan como magia para versiones menores o iguales a PHP 5.3.

Es todo por ahora, pero espero que te haya sido de ayuda y si tienes algun comentario sugerencia nos lo hagas saber.

viernes, 23 de enero de 2015

Imágenes vs. Vectores

En está publicación vamos a hablar acerca de lo que son los vectores y sus diferencias con respecto a las imágenes tradicionales, el porque y cuando usarlos, ademas de alguno que otro sitio donde conseguirlos.

Primero fijemos nuestra atención en las imágenes, ya sean jpg, gif o png, tienden a tener un comportamiento similar, millones de píxeles unidos de manera ordenada con una posicion y un color, que nos ayudan a definir una imagen.

Ahora bien, como definimos un vector? pues es un conjunto de trazos y formas, que unidos forman una imagen o un objeto.

Suena algo confuso, pero seguro se entendera mejor con un ejemplo, imaginen una linea negra de 1 px de grosor y de unos 10 cm de largo, como seria graficado en cada escenario?

Como imagen, seria una sucesion de puntos de 1 px por el largo de 10 cm, mientras rellenaria el campo faltante con un fondo blanco o transparente.

En caso de un vector, se almacenaria como una ecuación por asi decirlo, seria algo como en el eje x, del punto A al punto B trazar una linea, el fondo queda en vacio y se rellena con transparencia.

¿Cúal es la ventaja de esto?
La mayor antetodo, es que al ser una ecuación, es totalmente escalable, si la desean de 100 cm, incrementan la ecuacion x10 veces, sin ninguna perdida de calidad y con un tamaño equivalente.

¿Y la desventaja?
Degradados, sobras y demas, dificilmente pueden ser representados de manera vectorial y en muchos casos llegan a pesar mucho  mas que una imagen.

Entonces ¿Cúando deberia usar vectores?

La repuesta es siempre que puedas, porque los vectores no pierden su calidad, ya sea para iconos, o formas enormes, en peso no hay competencia, ademas de que mantienen una calidad inmejorable.

Tambien es muy recomendable para gigantografías.

¿Cúando no usarlo?

Cuando no tengas compatibilidad (IE 8), o cúando necesites usar una foto.

¿Dónde encuentro vectores?

Existen muchos recursos para obtener vectores, pero entre mis favoritos puedo citar:


Es todo por ahora y que aprovechen esos vectores.

lunes, 19 de enero de 2015

Anime, de todos los colores y sabores

 
 
De todo corazón, escribimos nuestro primer post acerca del anime.
 
Aun recuerdo la epoca en que acababa las tareas a velocidad luz, para poder ver mis animes favoritos, aquellos que estuvieron presentes en mi infancia y cuyas aventuras me transportaban a un mundo mas divertido llego de acción y comedia.
 
Todos habremos disfrutado del algún anime en nuestra infancia o juventud, incluso quizas sin saber que lo que estabamos viendo era anime. Y no es para menos, siendo reconocido como un arte hoy en día, el anime decanta un aire distinto y mas cuidado del que encontramos en las animaciones occidentales.
 
 Tambien acompaña armonicamente, tramas bien elaboradas, una linea cronológica y la evolución mental que sufren los personajes con quienes nos identificamos.

Es cierto que es animación por donde lo veas, pero no te confundas si no eres un fanático, en el anime encontrarás más de lo que crees.

Que lo adorable de los personajes no te engañe, el anime es un genero completo y como tal puede abarcar:
  • Romance
  • Comedia
  • Erotismo
  • Drama
  • Deportes
  • Historia
  • Accion
  • Violencia
  • Sexo
  • Tabues
Y te aseguro que existe un anime perfecto para ti, que incluye lo que mas te apasiona y ademas lo sabe explotar como debe ser.

Si no me crees, escribe en los comentarios y te ayudaremos a encontrar uno que sea de tu agrado, te aseguro que si incluso existe un manga sobre abogados y juicios, mas que seguro que haya uno para ti.

Hasta la próxima.

¿Fuentes de inspiración Web? Los premios de la web

El desarrollo de paginas web, mezcla el arte del diseño con la funcionalidad y la programación, y es precisamente por ello, que a veces uno se estanca en cuanto a ideas nuevas.

La clasica estructura de 3 columnas, el blog estilo blogger te cansa, pero irremediablemente una gran cantidad de sitios sigue el mismo paradigma.

¿Es el miedo a la innovación lo que acaba con nuestro espiritu diseñador? Probablemente, pero solo aquel que arriesga a algo nuevo y romper con los esquemas tradicionales es el que triunfa.

Los modistas tienen desfiles, los arquitectos exposiciones, e incluso los actores tienen los Oscares, entonces ¿Qué nos queda a nosotros?, que tal los Awwwards.

No es que me paguen por hacerles publicidad (aunque eso quisiera), pero en este sitio siempre he encontrado una fuente de inspiración, ideas innovadoras y nuevas fronteras que romper.

El sitio en si consiste en basicamente calificar páginas, un puntaje del 1 al 10, en el cual se evalua diseño, funcionalidad y adaptabilidad. ¿Y quien lo evalua? pues tu mismo, el usuario.

Es altamente recomendable, tanto para si no sabes como romper el esquema, conocer nuevas librerias o si simplemente te sientes el puto amo del diseño web, poner a juicio tus mejores trabajos.

Si resultas ganador, se te proporcionara un pequeño reconocimiento para que presumas la gloria de tu sitio a tus competidores.

Sin duda no creo que sea el unico en su clase, pero es el que me ha servido.

Si conoces otro, avisame en los comentarios para que lo incluyamos en una proxima reseña.

Hasta la próxima.

lunes, 12 de enero de 2015

Recordamos a Mega Man con mucho cariño

 
Aprovecho esta ocasión para recordar a aquel que fue el hero de mi infancia y en el que pase varias tardes desarrollando la coordinacion mano ojo, no hablo de otro sino del Bombardero Azul.
 
Creado por Capcom, el robot azul lleva mas de 20 juegos en su haber desde su primera aparicion como Rockman para la consola NES (Nintendo Entertainment System) en el año 1987.

Entre los mas caracteristico del juego se encontraba la habilidad de obtener los poderes de los jefazos para poder usarlos como ventaja y como olvidar su maravillosa banda sonora, que a pesar de estar limitada a los 8 bits, te mantenian con la emocion durante todo el juego.

Hasta donde se, tuvo distintas versiones, entre las cuales puedo citar
  • Mega Man
  • Mega Man X
  • Mega Man Zero
  • Mega Man ZX
  • Mega Man Battle Network
  • Mega Man Starforce
Siendo las primeras 3 mis preferidas, las jugue hasta poder vencer a todos los enemigos con el clasico cañon.

Lastimosamente Capcom y su creador Keiji Inafune tuvieron sus diferencias, hasta que finalmente Mega Man fue abandonado en el olvido.

El año pasado cumplio 25 años de trayectoria y paso por completo desapercibido, sin duda una lastima para un juego que marco tantas generaciones.

En otra ocasion, haremos un repaso de lo que fue y lo que sera de este singular personaje, pero por ahora me despido de ustedes.

AngularJS y porque empezar a crear APIs

Para todos aquellos que no estan familiarizados, AngularJS es el frontend framework desarrollado por Google, esta completo en Javascript y de manera similar a otros frameworks como Backbone o JQuery, no sirve para facilitar el manejo del DOM y crear vistas dinamicas.

No soy un experto en AngularJS pero hasta ahora parece muy prometedor.

Sin duda la caracteristica mas sobresaliente para mi es el doble Data Binding, ¿en qué consiste? pues para tratar de ponerlo simple, imaginen que tienen una tienda de manzanas, con su aparador con manzanas y un letrero que indica cuantas manzanas tienen en stock.

En la programación normal, si usted vende una manzana, tiene que ir hasta el letrero y reducir la cantidad.

Usando otros frameworks como Backbone, es como si contratara a alguien mas que revisa cuantas manzanas usted vende y modifica el letrero.

¿Pero y si el letrero tambien pudiera cambiar la cantidad de manzanas?

Es ahi donde entra AngularJS, el letrero como la cantidad de manzanas se vuelve uno solo, de modo que si vende una manzana automaticamente el letrero descuenta, y de igual manera, si incrementa la cantidad en el letrero, las manzanas apareceran con magia.

En este ejemplo, la manzana puede ser un objeto o un arreglo, y el letrero seria la vista o HTML, en este caso un input.

Si el objeto o arreglo se modifican el valor del input cambiará, y de igual forma, si modifican el input, el objeto tambien cambiará.

Les dejo la idea para iniciar, pero AngularJS trae muchas ventajas que veremos en otra ocasión.

domingo, 11 de enero de 2015

SSSpwn el exploit de la 3DS que me dejo boquiabierto

Aunque he de admitir que soy una persona que se impresiona facilmente, no deja de lado la creatividad y veracidad con la que este exploit fue creado.
Para aquellos algo ajenos a este ambito, una pequeña explicación y hacer notar que si bien no estoy a favor de la piratería, tampoco la combato, dire que estoy en una posición neutral.
Como habran notado, las ultimas consolas han pasado de ser solo consolas a pequeños ordenadores, con un entorno bastante definido y caracteristicas especificas para la reproducción de juegos y algo más.
Es en este algo más que los desarrolladores tratan de crearse un espacio y desarrollar aplicaciones que usen la potencia que las consolas nos pueden dar, pero tal y como ese espacio puede usarse para extender la funcionalidad normal de la consola, tambien puede ser utilizada para vulnerar y piratear juegos.
Es por esto que las compañias fabricantes blindan el acceso para los desarrolladores, de modos que solo aquellos con licencia puedan crear algo para su consola.
Claro que al igual que ningún sistema es perfecto, su blindaje tiene fugas y es cuando algun desarrollador las encuentra que nace un Exploit.
Los Exploits nos permiten a los desarrolladores, ejecutar nuestras propias aplicaciones en las consolas, aunque no tengamos los permisos de la empresa propietaria y es increible algunos de los exploits que han sido hallados hasta ahora, entre uno de los que mas me sorprendio, se encuentra el exploit para la Wii de nintendo, el cual se cargaba a traves de una partida del juego 'The legend of Zelda'.
Hace mas de 1 mes se anuncio el primer exploit para vulnerar la consola 3DS, algo que esperaba pero el modo fue algo fascinante.
El exploit fue bautizado como SSSpwn y se ejecuta con una 3DS en cualquier version de firmware y el juego Cubic Ninja, el proceso en si, consiste en la lectura de un código QR a traves del juego, una vez leido el código el canal de Homebrew se ejecuta.
Sin duda este exploit traera mucha controversia, pero el exploit no es maligno, sino la llave de acceso para cualquiera que desee explotar al maximo lo que la 3DS tiene para ofrecernos.

sábado, 10 de enero de 2015

¡Javascript por todas partes!



Si el título te confundió, no entres en pánico, no se trata de un ataque o algo parecido, ¿o tal vez si?
Javascript es el lenguaje por excelencia para el manejo del frontend de cualquier sitio, mejora exponencialmente la experiencia del usuario si es utilizado apropiadamente.
Al menos así fueron sus inicios.
En la actualidad, Javascript se ha posicionado en casi todos los entornos de desarrollo imaginables:
•    Puedes desarrollar un sitio web completo utilizando Javascript tanto para el frontend como para el backend.
•    Puedes desarrollar una aplicación móvil utilizando Titanium, es un entorno, pero el lenguaje de codificación es Javascript.
•    Incluso según leía las últimas semanas, ya puedes programar robots usando Javascript.
Si deseas comenzar a experimentar con Javascript, hay mucha documentación en línea y de manera gratuita, pero a nivel personal, yo sugeriría que comiences a ver Javascript con JQuery, si bien no aprenderás Javascript a profundidad, te dará una idea clara de la sintaxis y el procesamiento síncrono y asíncrono del lenguaje.
No es que le haga propaganda o ame Javascript, de hecho le tengo cierto recelo por su complejidad y fragilidad (aunque es solo mi opinión), pero es innegable que es una de esas tecnologías que persistirá por un buen tiempo y valdría la pena enfocarse en aprender a usarla.

viernes, 9 de enero de 2015

Brackets, mi editor favorito



Todos los que estamos metidos de cabeza en el desarrollo web tendemos a quedarnos un editor de texto que nos de la mayor cantidad de ventajas y a la vez, la mayor velocidad de desarrollo.
Desde el humilde notepad++, hasta monstruos complejos como Adobe Dreamweaver, cada quien con su gusto.
En cuanto a su seguro servidor, mi editor favorito pasó de ser Dreamweaver a Brackets.
Brackets es un editor de código abierto y desarrollado usando tecnologías web, es decir, está hecho con Javascript utilizando como base el motor v8 de Node.
Ligero potente y con una vasta librería de complementos, lo convierten en una opción bastante tentadora a tener en cuenta.
Quizás lo más llamativo de este editor, sea que gracias a que viene de la mano de Adobe, uno de sus complementos más populares es Extract, el cual nos permite extraer imágenes y estilos directamente del PSD, sin necesidad de otra aplicación.
Para finalizar les dejo el link para que descarguen Brackets si quieren probarlo.
http://brackets.io/ 
Hasta la proxima.

¿Teléfonos modulares? Claro que si, de la mano de Google

Para todos los que no tienen idea de que es un teléfono modular, no se sientan apenados, es algo que aún no existe, así que no deben ser los únicos.
Un teléfono móvil celular, es como su nombre lo dice, un móvil compuesto por módulos o bloques, que de manera similar a una computadora, nos da la capacidad de cambiar o reemplazar algunos de estos módulos por otros de distintas prestaciones.
El proyecto Ara es bastante reciente, data del año 2013 cuando se presentó la idea del móvil modular a través de la iniciativa Phoneblocks, en aquel entonces, solo era una idea que fue acogida por el equipo de Motorola.
En el año 2014, hubo muy pocos avances o quizás muy reservados por parte de Motorola en esta iniciativa y no fue hasta que Motorola fue comprada por Google que esta iniciativa dio su mayor avance.
Google absorbió gran cantidad de las patentes de Motorola y posteriormente la vendió, y como han de imaginar, una de las patentes que Google mantuvo para sí mismo fue la iniciativa de los teléfonos modulares.
Esta iniciativa paso a denominarse Proyecto Ara y en el resto del 2014, avanzó a pasos agigantados.
Ya hubo la presentación de un prototipo funcional y entre las noticias más relevantes, se confirmó que a excepción de la pantalla y el procesador, todos los módulos pueden ser reemplazados incluso mientras el móvil se encuentra en funcionamiento.
Y no para menos, ya se publicó la documentación para que cualquiera (que tenga el conocimiento) sea capaz de desarrollar sus propios módulos.
Su lanzamiento aún es una incógnita, pero todo apunta a que hasta finales del 2015 podremos empezar a ver los primeros teléfonos modulares.
Por mi parte comenzare a ahorrar, no solo porque la iniciativa sea interesante, sino porque da la impresión de que podría ser el último teléfono que compremos y de  ahí en adelante solo compremos partes para ajustarlos a nuestras necesidades.
Los dejo con un video informativo del proyecto Ara publicado hace más o menos 7 meses, espero que lo disfruten y conmigo será hasta la próxima vez.

¡Saludos a todos!

Sean bienvenidos a este nuevo blog auspiciado por la empresa de desarrollo Web Minty con su central en Bolivia (Latinoamérica).
Como ya te debes haber dado idea, este blog tocará temas de todos los ambitos de la tecnología, es decir, ciencia, computación, desarrollo web y curiosidades tecnológicas.
Adicionalmente, tambien presentaremos noticias acerca de juegos, anime y controversias según se ajuste a la época.
Creemos firmemente que la web es por y para los usuarios, asi que si tienes algún tema que te gustaria se presentará en el blog, puedes escribir a la siguiente dirección de correo:
Damos por iniciado este blog y esperamos la pasen muy bien leyendo los artículos que presentemos.