Mostrando entradas con la etiqueta Programación. Mostrar todas las entradas
Mostrando entradas con la etiqueta Programación. Mostrar todas las entradas

25/2/09

Palm has WebOS

Pues si, no es coña, Palm ha desarrollado un nuevo sistema operativo para sus PDA/SmartPhones, el WebOS (como diria Federico "Manda huevos"). La verdad es que, por las descripciones ya que aún no se ha lanzado ningún modelo con este sistema, parece bueno. Explico así a groso modo:

-Núcleo Linux
-Navegador basado en WebKit (tipo Safari)
-Interface HTML 5 + Javascript
-SDK Libre con un Framework al que han puesto por nombre (no perderse la coña tipo Austín Power) "Palm Mojo".

No se que ha pasado el Palm de un tiempo a esta parte, pero tengo que reconocer que los nuevos responsables son la caña de España. Han pensado en todo, hasta tienen pensada una AppStore tipo Apple para sus modelos.

Como se que lo quereis (venga tonta, que te va a gustar;)) aqui pongo una fotica del prototipo y próximo lanzamiento de Palm con 2 WebOS: El Palm Pre

Guapo, guapo, tipo iPhone pero en bueno (¡¡¡¡con bluetooth y todo!!!) . Además, y como los chicos piensan en todo, han dejado el primer capítulo del libro "Palm® webOS™: Developing Applications in JavaScript Using the Palm Mojo™ Framework" de O'Really para abrir boca en su web de sesarrolladores.

Por desgracia el SDK aún no esta disponible, pero es una buena noticia que una marca como Palm sace un Sistema Operativo Basado en Linux para sus dispositivos.

Congratulemos todos y que cunda el ejemplo (siempre he soñado con un "Microsoft Linux" a ver para cuando;))

12/2/09

Compiler or not Compiler, That is the question.

Leo en Barrapunto que se discute ( no solo ahora, siempre) sobre el futuro de los lenguajes de programación. Compilados o interpretados, nativos o bajo maquina virtual, estructurados, o funcionales, con destructores o con recolector de basura, con orientación a objetos o a eventos, etc.. (y es un etc muy largo).

Para mi, el futuro es cuando menos incierto pero me atrevo (oso decir, valga la redundancia) que el futuro de los lenguages no esta en los lenguajes sino en las APIs que utilizan. Y si dos lenguages usan las mismas APIs me pregunto ¿sería uno más estable que el otro? ¿acaso funciona mejor un programa en c# que en c++ si utilizan las APIs de Microsoft? La respuesta es obvia, si existe alguna diferencia, esta es despreciable, hablando puramente en rendimiento, no entrare aqui en la facilidad de programación pues eso dependera del programador.

Cual sería mi solución pues, seria no tanto el lenguage como un API común para todos, así cada uno podría diseñarse un lenguage a medida, ¿que dificultad podria tener diseñar un lenguage que llamara a las mismas APIs que otro? Solo tendriamos que cambiar las palabras reservadas, decidir como invocamos a las APIs y llamalo X, o si somos superchulos X++ o X#, si nos da por nombres creativos llamemoslo "Ornitorrinco le la Jungla amazónica"++.

Hemos llegado a un punto en que el rendimiento del compilador se convierte en casi irrelevante, y si no lo es pues se crea un preprocesador y fuera. Si las APIs son comunes solo necesitamos que el Sistema Operativo objetivo las soporte y despues como si queremos invocarlas desde un archivo de proceso por lotes o un script de cualquier pseudolenguaje (bash, vbs...).

Bueno, a lo que vamos, que se potencien las APIs de lo que hay y que se deje de joder al personal con lenguajes que no proponen nada más que ventajas parciales para algunas tareas. Si quieren innovación que inventen la programación por voz, que como única ventaja es no teclear, eso si es una ventaja "de proposito general".

Agur gente.

27/1/09

Keep It Simple, Stupid

Bueno, aqui vamos otra vez, hoy voy a comentar un poquillo lo simple. La simplicidad debería dominar nuestras vidas, sin grandes complicaciones que nos creamos nosotros mismos al querer hacer más de lo que podemos abarcar nos complicamos muchas veces innecesariamente.

Uno de los principios más reconocidos de la ingeniería actual y, por extensión de la Ingeniería Informática, es la simplicidad, cuanto más simple menos problemas y más sencillos de localizar y solucionar. Esta forma recibe el nombre de K.I.S.S. acronimo de, cervantinamente hablando, Mantenlo Simple Estupido.

Cree mi mente truculenta que debería ser así la traducción, incluyendo el insulto, para hacernos ver lo estupido que es complicarse innecesariamente. Todo lo que se hace se puede hacer de dos formas, simple y complicado, empezare por describir la complicada:

  • Complicado: Dicese de complicar innecesariamente cualquier cosa que tengamos que hacer por poner un sencillo ejemplo para que todos lo entiendan "Windows Vista". Microsoft se complico demasiado la vida con este sistema, muchas veces la simplicidad no es cuestión de menos opciones sino de opciones ya conocidas. Pregunta de examen: ¿Es más sencillo manejar Office 95 ú Office 2007?. Respuesta: Office 95 porque si no lo sabes manejar seguramente manejarías Office 97/xp/2003 que mantienes el mismo diseño, complejo pero conocido. Mejor lo malo conocido.
  • Simplicidad: Dicese de lo más simple y sencillo. Ejemplo Mac OS X. Da igual que no lo hayamos manejado nunca, la lógica del sistema es aplastante. Icono de texto=Editor de Texto, Icono de Foto=Visor de Foto, Icono de Red= entorno de red, Icono de Disco Duro=Disco Duro. Simple por sencilla lógica.
Mantenerlo simple es sencillo, no complicarse la vida, usar siempre versiones de librerías contrastadas, lenguajes sencillos de entender, estructuras de datos lógicas, abstracción cuando es necesaria. Simple.

Y si queremos complicar un poco más, divide y venceras, un programa complejo puede subdividirse en unos cuantos simples, simplicidad al poder.

Si aplicaramos la simplicidad a nuestra vida diaria seríamos un poco más felices y, sobre todo, menos, mucho menos, estresados.

Keep It Simple, Stupid.