API API API

Me encantan los API's, el hecho de poder programarte tus cosillas usando servicios externos de forma cómoda es algo que me hace feliz :).

Para los que no lo sepan, una API es digamos una herramienta para poder acceder a datos de otros programas de forma cómoda sin tener que meterse en el código fuente del programa en sí. Se usa mucho por ejemplo en páginas web con datos, por ejemplo Flickr, el cual contiene muchos datos de fotografías, pues con la API de flickr puedo crearme mis programas usando esos datos.

Cada vez aparecen más API's, Google por ejemplo ofrece un montón de métodos para poder acceder a sus datos, y el éxito de Facebook se debe a su API, que gracias a ella hay tantas "mini aplicaciones" que puedes instalar en tu perfil.

La semana pasada haciendo un poco de I+D me topé con una serie de API's que me llamaron mucho la atención ya que tienen que ver con los móviles, y además, son ofrecidos por Movistar. El sitio donde están se llama Open movilforum y ofrece una serie de API para poder enviar SMS, acceder al servicio de Localizame (que te dice la localización de cualquier móvil que tenga activado el servicio), Copiagenda (que hace una copia de tu agenda del SIM) , MMS y algunos más. Con esto, por ejemplo, me puedo crear un programa que acceda por ejemplo a los datos de mi agenda SIM, localizar a alguien o enviarle un sms desde mi PC, o meter en mi blog un sistema para que la peña me envíe SMS, o que por cada comentario que deje alguien se me envíe el comentario por SMS al móvil, etc... vamos, que hay un montón de posibilidades. También te puedes descargar proyecto que ha hecho la gente, como uno que he visto que me ha gustado mucho, el cual consiste en que en una discoteca puedas pedir canciones enviando un SMS y el DJ iría recibiendo esas peticiones en su PC o se van metiendo en la cola de reproducción automáticamente.

Lo que mas mola es poder crearte una aplicación mezclando varios API's, puedes meter Flickr, Google, Facebook, SMS, etc en un saco y crearte una aplicación que centralize todos esos servicios en uno solo.

Hoy he visto que Last.fm también ha sacado una API o no se si la tenía ya, pero ha lanzando un sitio que se llama Build Last.fm en el cual puedes descargar aplicaciones que usen la API de Last.fm.

¿No son geniales los API's?

Se buscan programadores

Curioso el debate que se ha estado realizando esta última semana acerca de los programadores.

Empezó por un un artículo de Enrique Dans colgado en Libertad Digital y le siguieron en Error 500 y en Yogur Griego.

Parece ser que las empresas necesitan programadores, que no hay y no saben dónde buscarlos. Cada vez hay más proyectos que no se llevan a cabo por falta de personsas capaces de desarrollarlos.

El otro día en un bar hablé con una persona de Holanda que tenía una empresa donde realizaban diseños y aplicaciones web para Empresas e Instituciones. Me contó que tenía un programador con el que de momento había realizado todo el trabajo, él mismo se encargaba del diseño y el programador creaba el sistema. Me contó que había estado desarrollando la idea de un sistema nuevo dedicado a la educación, un sistema grande y novedosos y que había presentado a las personas responsables de la educación en Holanda los cuales lo vieron con muy buenos ojos y están deseando verlo funcionar.

¿Cuál es el problema? El proyecto es grande y requiere mucho tiempo y sólo tiene a un programador y no encuentra a más para poder desarrollar el proyecto. Lo cual es una gran pena ya que tiene mucho futuro.

Algo similar comenta Dans en su artículo, donde se están ideando cantidad de proyectos que se quedan en nada por falta de "obreros" que puedan construirlo.

¿Realmente no hay programadores en España? Yo creo que si, sólo hay que mirar un poco en la blogosfera y verás que hay cantidad de personas que se dedican a la programación, igual no de forma profesional, pero si personal o como "hobbie". Yo se de algunos casos que viendo lo que han hecho las empresas deberian suplicar por tenerlos en plantilla, pero a las empresas no les gusta suplicar, y menos a un programador.

Viendo las ofertas que hay, sobretodo en Infojobs no me extraña que no se encuentren programadores, las ofertas son una basura y a veces se pasan con las exigencias. Y ahí está el problema, mucha gente no sabe lo que es programar, no tiene por qué saberlo, pero eso tampoco conlleva que se les deba desprestigiar.

Esta situación era bastante conocida en España y mas o menos, mientras hacía el ciclo formativo de DAI sabía lo que me esperaba. Curiosamente pude ir a Berlin, y ahí la cosa es bien diferente, que aunque no tengan salario mínimo, tienen un salario medio que es el doble que el de España, y ahí si que valoran a un programador.

Me acuerdo cuando me pidieron que empezase con un proyecto en PHP y empecé a tocar código y la cara de sorpresa cuando vieron que me manejaba con PHP, luego metí algo de Javascript y algo de AJAX (o AJAH) usando mootools. Les encantó y ahora están deseando que vuelva ya que quieran que siga con el proyecto ya que si tienen que contratar a alguien de fuera les costaría mucho dinero... mucho dinero, contratar a uno programador cuesta mucho dinero dicen... ¡si en España son la mano de obra más barata! O eso se piensa...

En todo caso, parece ser que la escasez de programadores se están notando, y sabiendo que hay proyectos que necesitan "obreros" para construirlos a ver qué van a hacer, si van a dejarlos así, o si van a cambiar un poco la situación.

Berlin, primeras despedidas

Ayer fui mi último día de trabajo en la empresa donde he estado realizando las prácticas. Por un lado debo reconocer que tenía ganas de acabar ya que era ir todas las mañanas a trabajar y no ver ni un duro (o euro), pero por otro lado he de admitir que lo he pasado bien, tanto a mi como a mi compañero nos han tratado muy bien, hemos trabajado de lo que debíamos, nada de llevar cafés ni tonterias, hemos aprendido y ha sido una experiencia realmente genial. Nuestra tutora se ha portado genial con nosotros, una persona digna de admiración, muy trabajadora y divertida, simpática y ayudando en todo.

Como despedida mi compañero y yo le compramos "un regalito" a nuestra tutora, el cual consistía en un "kit de chupito", un limón, sal, dos vasos de chupito y una botella de tequila. El motivo de esto era porque tanto en la fiesta de la empresa como otra noche que nos invitó a tomar cocktails vimos que siempre pedía chupitos, y muchas veces se tenía que quedar por la noche o lo fines de semana en la empresa acabando algunos trabajos, así que pensamos que sería divertido regalarla el kit de chupito para poder darle un trago de vez en cuando mientras curra por las noches. Realmente triunfamos je je.

Aunque ella tampoco nos dejó con las manos vacias, lo primero fue en la despedida con la jefa de personal, la cual no regaló un bolígrafo y una pluma con el nombre de la empresa. Pero luego cuando acabamos de trabajar nos fuimos a tomarnos unas cervezas por ahí, y mi tutora y su compañero misteriosamente habían desaparecido. Al rato volvieron con una sorpresa para mi y mi compañero... Cesta con cerveza Tachan!!!!

Una cesta con 8 tipos de cerveza diferente, incluido los posa vasos je je.

En la foto no se aprecia del todo la dimensión de la cesta, pero cada botella es de medio litro, y pesa mucho je je. Ahora el problema es tomar una decisión de qué hacer con la cesta, ya que me da pena dejarlo aquí, pero llevarlo en el avión de vuelta tampoco es que sea algo fácil, y las botellas también me las quiero quedar... difícil elección.

Aquí hay otro foto donde se pueden apreciar mejor las botellas: 8 maravillas

Lo más seguro que es nos volvamos a ver a finales de septiembre, ya que parece ser que los "azubis" (aprendices) alemanes que están en la empresa son incapaces de acabar los proyectos que empezamos mi compañero y yo, ya que meterle a un tio que sólo sabe algo de VBA y JAVA un proyecto con HTML, CSS, Javascript, PHP, MySQL, XML y AJAX es un poco duro. No es por echarme flores, pero manejar esa combinación ha hecho que adquiriera una mirada de admiración por parte de muchos de la empresa y que en parte se hayan vueltos dependientes de mi para poder acabar ese proyecto que quieren poner en producción, ya que parece ser que encontrar un programador freelance que maneje AJAX (si luego es una tontería) es tanto difícil como muy caro, y como siempre digo, yo soy bueno, bonito (ejem) y barato :)

Pues eso fueron las prácticas, prácticamente ya puedo decir que soy Técnico Superior en Desarrollo de Aplicaciones Informáticas ya que ya he pasado el curso teórico y el práctico, y con buenas notas además. Estoy contento y feliz por esto, el ciclo de FP que he hecho me ha gustado mucho y me ha ofrecido muchísimas oportunidades y experiencias y después de haber estado casi año y medio antes sintiéndome realmente inútil y sin futuro ahora hay en mi una sensación de alegría y seguridad, he hecho lo que debía hacer y lo he hecho bien, y saber eso es una de las mejores sensaciones que una persona pueda tener.

Ahora sólo me falta disfrutar de estos últimos 3 días que me quedan en Berlin.

Requisitos de Internet Explorer: paciencia

Se necesita paciencia para trabajar con este navegador, pero mucho, y es que la cantidad de bugs que trae de serie son realmente molestos, llegan a ser tan molestos que me hacen perder un día intentando arreglar un problema que yo pensaba que tenia algo que ver con mi código de JS, aún funcionando con Opera y Firefox, a IE no le daba la gana de hacer lo que tenía que hacer.

Al final, como siempre, haciendo unos "retoques" sucios se consiguen evitar estos fallos de IE, pero es que realmente me saca de quicio.

Deberían catalogar a IE como el producto menos productivo de la historia, hay que ver la cantidad de tiempo que le hace perder a uno, deberían prohibirlo... eso, prohibir usar IE, otra ley que impondré el día que domine el mundo, prohibiré lo paraguas y usar Internet Explorer, todo sea por un mundo mejor.

La era de las apliciones web

Leo en Error 500 un artículo titulado El futuro de la web y el escritorio que mas o menos es un resumen de los proyectos de varias compañias grandes de Internet sobre las aplicaciones web.

Qué es una aplicación web? Pues viene a ser una aplicación, como cualquier otro programa que se tiene dentro del ordenador, pero que en vez de estar guardado/instalado en el ordenador está metido en una página web, pero que tampoco es una página web, aunque se muestra como tal, no lo es, ya que tiene funciones de aplicación.

Un ejemplo: Hotmail, Gmail.

No son páginas web? Se pueden considerar como tales, pero Internet ha cambiado y ya no todo lo que se muestre como página web es "página web", si no que pueden tener otras definiciones. una página web viene a ser una página estática, con la cual el usuario no puede interactuar, tan sólo ver, tal como sería la pagina web de El Pais que tan sólo contiene información, pero ninguna función para el usuario que lo visita.

La tecnología web ha evolucionado de tal forma que ahora se pueden hacer maravillas mezclando varios lenguajes de programación para crear aplicaciones disponibles desde Internet sin necesidad de instalación alguna por parte del usuario. Si eres usuario de Gmail seguramente habrás visto Google Docs, una suite Ofimática al estilo Microsoft Office que dispone de Hojas de Calculo (Excel), procesador de textos (Word) y creo que están acabando también su aplicación para presentaciones (Powerpoint). La diferencia con el Office es que estás aplicaciones están disponibles desde la web, Internet, y además, gratis! (y esperemos que siga así).

Aunque en funciones no lleguen a la altura de las aplicaciones que vienen con Microsoft Office tiene una gran ventaja, el cual es una de las ventajas que va a impulsar las aplicaciones web, y es que no requieren ninguna manipulación por parte del usuario, se actualiza sólo, y además, los documentos siempre los tendrás disponibles estés donde estés.

Pero esta nueva idea no sólo se está impulsando en la red pública, como Internet, si no que también en muchos países de Europa las empresas están empezando a usar aplicaciones vía web para realizar sus gestiones. Esto se hace ya que permite realizar cambios en la misma aplicación y que una vez implementados estos cambios no haga falta pasar por cada PC de la empresa para meter esos nuevos cambios, lo cual ahorra mucho tiempo y dinero a la empresa y además permite trabajar desde cualquier puesto ya que la información se guarda en un servidor y no en cada maquina.

Aunque también hay desventajas a la hora de trabajar con aplicaciones web en una red pública, y es que normalmente para acceder a esta información se requiere una cuenta y una contraseña, y si estas se pierden, se pierde la información, o peor, puede pasar en manos de otras personas. O que le pase algo a los servidores donde estés alojados estos documentos y los perdamos también. En mi caso, suelo guardar las cosas sin mucha importancia en Google Docs por ejemplo manteniendo una copia en mi PC.

El hecho de que ahora se estén impulsando las aplicaciones web es gracias al gran desarrollo y avance en los lenguajes de programación que permiten hacer maravillas. Juntando XHTML, CSS, PHP, MySQL, Javascript y AJAX se pueden hacer aplicaciones completas con cantidad de funciones y que además sean rápidos y eficientes.

Una de las maravillas que llevo usando mucho últimamente es una librería o framework de Javascript llamado mootools, una serie de herramientas, funciones y clases de JS que agilizan muchísimo la creación de aplicaciones web, realmente es una maravilla.

Habrá que ver como evoluciona el tema, pero yo estoy seguro que en el futuro habrán muchísimas aplicaciones disponibles desde la web. En mi caso, en la empresa donde estoy haciendo las prácticas tenían una aplicación web para la gestión de proyectos y de usuarios, el cual era un poco chapuza ya que se hizo con prisas y el cual estoy renovando ahora completamente, haciendo uso de los lenguajes que antes he comentado y no es por echarme flores, pero realmente esta quedando muy bien, aunque eso si, no podría haberlo realizado sin la librería mootools, el cual recomiendo a cualquier programa web que le eche un vistazo porque realmente tiene mucho potencial.

Tiempo UNIX en Javascript

Cuando uno diseña páginas web a veces le surgen problemas con el código y no sabe cómo resolverlas de manera directa.

El otro día me surgió uno de esos problemas, y era que necesitaba calcular el tiempo en formato UNIX actual con Javascript, ya que tenía una función al que le pasaba una fecha UNIX por PHP y necesitaba hacer calculos con ellos.

Con PHP es fácil, la función time() te devuelve la fecha en formato UNIX, pero con Javascript no es tan fácil, o por lo menos no lo parece a primera vista.

Buscando por google no daba con la solución, buscaba "javascript unix timestamp", o "javascript unix time" y sólo encontraba alguna referencia al método parse() del objeto Date() de Javascript, pero no me servía.

Curiosamente vi un sitio donde se hizo una pregunta similar, y le respondieron: "convierte Date() en número".

El problema viene por una diferencia de conceptos, por decirlo de alguna manera. Resulta que se puede obtener la fecha actual en números con JS con el método getTime() del objeto Date(), pero se diferencia con el tiempo UNIX en que esa función devuelve el número de milisegundos que han pasado desde el 1 de enero de 1970, a diferencia del tiempo UNIX que calcula el número de segundos que ha pasado desde la misma fecha.

Entoces, para obtener la fecha en formato UNIX con JS se debe hacer lo siguiente:

var mydate = new Date(); var strDate = mydate.getTime()/1000; strDate = Math.ceil(strDate);

Puede sonar a tonteria, pero yo me tiré un par de horas averiguando esto...

proyecto look and sense

A principios de curso nos dijeron que tendriamos que realizar un proyecto para Entornos Gráficos el cual consistiria en una página web comercial.

Como no tenía nada en mente pues pensé en algo simple y tonto, un servicio de alquiler de coches personalizables. El tema me dada igual, el contenido no me lo he trabajado, pero la idea era hacer una página web que pudiera ofrecer información útil y cómoda a los visitantes y facilidad de manejo administrativo para el cliente que encarga la página.

El diseño fue uno de mis mayores problemas, y es que a mi lo que me gusta es la programación, así que lo dejé en algo simple, aunque creo que la final lo simple puede quedar bastante bien.

El resultado lo podeis ver en proyectodai.agarrate.net.

Si a alguien le interesa ver la zona de administración, le puedo pasar la clave para entrar y que así lo pueda ver ya que creo que está realmente bien conseguido usando una interfaz en AJAX que agiliza mucho las cosas.

Otro dato importante es el hecho de que el código sea válido, siempre es muy importante en una página web comercial que se pueda ver bien en todos los navegadores, y no sólo en IE como nos tienen acostumbrados.

No es gran cosa, pero me han dado un 8 para proyecto, supongo que el buen diseño interno del sitio habrá dado algunos puntos :)

Así que... ánimo a los webmasters a que no dedican tanto al diseño visual, ya que creo que una página web que esté bien estructura y que sea funcional tiene muchos mejores resultados que una página web con muchos colores, efectos e imágenes (como por ejemplo la página web de Movistar, que es un caos).

¡Hola!,
bienvenido al blog personal de Nils van der Burg, desarrollador de aplicaciones web y diseñador web. Para contactar conmigo accede al formulario de contacto.
Etiquetas
Comentarios