Software
martes, mayo 13, 2008
|
![]() Lo interesante de WakeMaker es que está pensando para ser extremadamente fácil crear aplicaciones web que se comporten casi como aplicaciones tradicionales de escritorio, pero con todas las ventajas del Internet. Las aplicaciones que creas utilizan los últimos adelantos disponibles en la generación actual de navegadores, para permitirte crear aplicaciones totalmente dinámicas con técnicas de AJAX, pero sin tener tú que ser un super programador para tomar ventaja de ello. Cuando creas una aplicación, estas son publicadas a cualquier servidor de Java 2 Enterprise Edition (como puede ser Apache Tomcat, JBoss, Weblogic, Websphere, o cualquier otro servidor compatible con J2EE), y en cuanto a bases de datos soporta casi todo, desde MySQL y PostgreSQ hasta HSQL, Oracle, SQL Server, DB2 o cualquier otra base de datos que sea soportada por las librerías de Hibernate. Lo mejor de todo es que está disponible bajo una doble-licencia, tanto en formato Software Libre ("Open Source") como en formato comercial si deseas un nivel de soporte técnico dedicado a grandes instalaciones. No dejen de ver los videos que muestran lo fácil que es crear aplicaciones en este entorno. Disponible para Windows, Linux y OS X. Página oficial de WaveMaker autor: josé elías |
![]() |
![]() |
lunes, mayo 12, 2008
|
![]() ![]() Este poder ahora ha sido liberado gracias a una nueva librería de programación llamada Processing.js creada por John Resig, el mismo creador de la popular librería de funciones jQuery. Los que saben de esto, reconocerán el nombre Processing, pues es una librería de código libre ya existente para otros entornos, y lo que sucede es que Resig la ha portado ahora para Javascript. Con Processing.js no es solo posible dibujar, sino que transformar, animar e interactuar con el usuario, por lo que hablamos de una posible alternativa a Flash y Java en el navegador, sin necesidad de plugins o salir del entorno nativo del navegador. Lo único a tener en cuenta con esta versión de Processing.js, es que literalmente necesita las últimas versiones de navegadores, como son Firefox 3 beta, la última compilación nocturna de WebKit (que es utilizado tanto en Safari como en Android), y la última versión beta de Opera (todavía esto no funciona con Internet Explorer). Una cosa a tomar en cuenta es que el Processing.js fue creado con Firefox 3, así que es el mejor soportado. Será interesante ver qué rumbo toma esta librería, pues es obvio que Processing.js también compite con otra tecnología nativa que está ya siendo parte de la última generación de navegadores, y hablamos de SVG (Scalable Vector Graphics), que es una manera de dibujar gráficos vectoriales al estilo Flash directamente sobre el componente Canvas. SVG por ejemplo es utilizado por Google Maps hoy día como una de las maneras para dibujarte la ruta a seguir entre dos puntos geográficos, si tu navegador lo soporta. Página oficial del proyecto Processing.js Página oficial del original Processing Si tienes Firefox 3 (que lo recomiendo muchísimo), puedes visitar estos enlaces adicionales: Demostraciones básicas Demostraciones temáticas Otras demostraciones autor: josé elías |
![]() |
![]() |
jueves, mayo 8, 2008
|
![]() Además, si eres usuarios de OS X, esta versión utiliza mucho mejor el interfaz gráfico nativo de esa plataforma. Está disponible para Windows, Linux, OS X y Solaris. Noten que aunque no recomiendo que descargues y utilices programas en estado "beta", lo cierto es que OpenOffice tiene una tradición de lanzar versiones betas de buena calidad (aunque con sus errores, por supuesto, ya que es beta después de todo), por lo que si sabes lo que haces y hay algo en las versiones actuales de OpenOffice que no te gusta, sería recomendable que pruebas esta versión beta a ver si te resuelve el problema. Página de descargas (por ahora en Inglés) autor: josé elías |
![]() |
![]() |
jueves, mayo 1, 2008
|
![]() Según Adobe, esto significa nos mas costos de licencias para sus tecnologías Flash Player y Adobe AIR. Entre las empresas que han participado en hacer esto posible están Adobe, ARM, Intel, Motorola, DoCoMo, Qualcomm, LG, Nokia, Samsung, Toshiba, Sony Ericsson, NBC-Universal, Cisco y Verizon Wireless, entre otros. No duden que con esta medida Adobe piensa contrarrestar el hecho de que Apple se niega a ofrecer a Flash en el iPhone, para de esa manera favorecer a Quicktime en la guerra de formatos multimedia de esta generación. Es hasta factible ahora que alguna empresa porte a Flash para el iPhone y lo ofrezca como un plugin para Safari, aunque hay que ver si Apple aceptaría eso. Página oficial del Open Screen Project autor: josé elías |
![]() |
![]() |
miércoles, abril 30, 2008
|
![]() ¡Gracias a Emmanuel Bretón por el enlace! Enlace a la página autor: josé elías |
![]() |
![]() |
viernes, abril 25, 2008
|
La lista es actualizada mensualmente, y los ratings se basan en el número de ingenieros que conocen el lenguaje a nivel mundial, la cantidad de cursos disponibles sobre el lenguaje, y la cantidad de proveedores de productos y servicios para el lenguaje. Todos estos parámetros son inyectados en los buscadores de Google, MSN, Yahoo y YouTube para calcular los ratings totales. Como dicen ellos, esta lista no es sobre el mejor lenguaje, o sobre el lenguaje con el cual se hayan escrito la mayor cantidad de lineas de código, aunque en mi opinión la lista sí representa tendencias, así como una guía sobre cuáles lenguajes tener en cuenta a la hora de aprender uno nuevo. Algunas cosas interesantes a notar: - Java es el lenguaje mas popular del mundo. - ColdFusion es el que ha experimentado el mayor crecimiento. - C++ está en decadencia, mientras que C continúa activo. Enlace a la lista autor: josé elías |
![]() |
![]() |
miércoles, abril 23, 2008
|
![]() Sun acaba de anunciar que liberará el 100% de Java, añadiendo ahora los módulos faltantes que incluyen algunas librerías de funcionados de cifrado de datos, JavaSound, y algunas funciones para el gestionamiento a través de SNMP. Todo esto será parte próximamente del OpenJDK, y con esto se completan los requerimientos para que Java ahora se pueda empacar libremente por defecto en cualquier distribución de Linux (y otras plataformas). Nota a los que no son técnicos: Java es una tecnología que permite la creación de aplicación que se pueden ejecutar en diferentes entornos (como Windows, OS X o Linux), sin necesidad de modificar la aplicación, es decir, es una tecnología que permite la creación de aplicaciones independientes de plataforma. Fuente de la noticia autor: josé elías |
![]() |
![]() |
martes, abril 8, 2008
|
Google acaba de lanzar una nueva herramienta a la que llama "Google App Engine" ("Motor de Aplicaciones Google") que permite que cualquier persona construya y lance su aplicación en la mismísima infraestructura que Googgle utiliza para crear y lanzar sus propias aplicaciones, es decir, aplicaciones que ejecutan en conjunto con las mismas aplicaciones de Google en sus cientos de miles de servidores distribuidos por el mundo.
Los que tienen tiempo en eliax recordarán que esto es algo que predije algún día Google haría, ya que es la manera de escalar aplicaciones en el futuro. En otras palabras, así como el iPhone y Android están circunnavegando a Windows en el campo de interfaces de usuario y tecnologías móviles, de la misma manera el Google App Engine circunnavegará a Windows en la construcción del motor de aplicaciones tipo servidor. Con el Google App Engine, será posible crear aplicaciones que escalan de manera totalmente automatizada desde uno hasta cientos de millones de usuarios simultáneos, de la misma manera que lo hace el motor de búsqueda de Google, o Google Apps, GMail, o las decenas de otras aplicaciones de Google. Para lograr esto, no solo tendrás acceso a los cientos de miles de servidores de Google, sino que además a las tecnologías que toma ventaja de ellos de manera eficiente, como es GFS (el Google FileSystem), que es un sistema de fichero de archivos totalmente distribuido, o Bigtable, que es un sistema totalmente distribuido para almacenar y buscar datos de manera rápida. Además, tendrás acceso a los APIs de programación de Google para hacer cosas como autenticar usuarios o enviar emails. Todas estas herramientas están disponibles con un SDK (Kit de Desarrollo de Software) que puedes descargar gratuitamente, que te permite no solo desarrollar aplicaciones localmente, sino que probarlas en tu misma máquina antes de subirla a los servidores de Google. El SDK funciona con Windows, OS X o Linux, y es solo 2.4MB. Inicialmente, Google le dará acceso a ejecutar aplicaciones a las 10,000 personas que apliquen primero (es gratuito), ofreciendo solo 500MB de almacenamiento, 10GB de ancho de banda por día, y 200 millones de megaciclos de CPU por día (estos límites se eliminarán en la versión final), lo que según Google es suficiente para probar con aplicaciones que ofrezcan unas 5 millones de páginas web por mes, por usuario (¡como si fuera poco!). Noten que esta es una versión "de muestra", pues el Google App Engine aun está en desarrollo para su consumo masivo en entornos de producción público. Google lo que desea por el momento es retroalimentación de los primeros usuarios para ayudar a definir y refinarlos APIs y funcionalidades del Google App Engine. En un futuro artículo les dejaré saber mis impresiones y análisis sobre el Google App Engine. Por ahora les digo que esta es una de las tecnologías mas revolucionarias en tiempos recientes, y si las herramientas resultan ser lo suficientemente amistosas, es posible que esto califique como una plataforma que pueda establecer un estándar por defecto para el desarrollo de aplicaciones distribuidas por Internet. Página oficial del Google App Engine Anuncio oficial sobre el Google App Engine y breve introducción (en blog oficial) Introducción técnica al Google App Engine Enlace al SDK del Google App Engine Guía para escribir tu primera aplicación para el Google App Engine Documentación técnica del Google App Engine Foro de Discusión para usuarios del Google App Engine SDK Agrégate a la lista de espera después de los primeros 10,000 en este enlace (sí, ya los primeros 10,000 lugares están ocupados) Ejemplos de aplicaciones creadas con el Google App Engine A continuación, un video de cuando esto fue presentado al mundo por primera vez (en Inglés, enlace YouTube): autor: josé elías |
![]() |
![]() |
lunes, abril 7, 2008
|
Para los que aun no lo saben, Adobe ha anunciado que Photoshop CS4 vendrá para Windows en versiones tanto de 32-bit como de 64-bit, pero que para el Mac OS X solo vendrá en 32-bits. Dice sin embargo que CS5 será de 64-bits en OS X.
Aquí hay unas cuantas cosas a notar. La primera es que serán pocos los que beneficiarán de una versión de 64-bits (y que requiere una versión de 64-bit de Windows), pues esto solo ayuda con archivos que midan varios GigaBytes, en cuyo casos el rendimiento se podría multiplicar hasta por 10, siempre y cuando tu PC tenga 32GB de memoria RAM (Adobe da como ejemplo un archivo de 3.4 GB, con una PC de 64-bit de Windows con 32GB de memoria). Es decir, esto es para unos cuantos por ahora (aunque me gustaría ver si de todas maneras algunos plugins se benefician de 64-bits en ciertos tipos de operaciones). Por otro lado, Adobe en realidad estaba creando una versión de 64-bits para OS X, pero utilizaba el interfaz viejo de OS X (Carbon), que Apple tentativamente iba a sacar en modo de 64-bits, hasta que decidió en último momento dejarlo en 32-bits y concentrarse en Cocoa de 64-bits (que es el interfaz moderno). Según Adobe, esta fue una decisión sorpresiva por parte de Apple, por lo que Adobe no tuvo mas remedio que dejar la versión de 64-bit para el CS5 con Cocoa. Sin embargo, es mi opinión que Adobe debió desde hace mucho tiempo atrás (tuvo un par de años de anticipación) adoptar a Cocoa, pero bueno, a alguien le tienen que echar la culpa como dicen... En otras palabras, esta es una mini-pelea entre Apple y Adobe, cuyas relaciones aun siempre han sido buenas, recientemente se han deteriorado un poco debido a la incursión de Apple en industrias que Adobe siempre ha manejado, como es el campo de edición de video y de retoque/gestión de fotografías. Fuente de la noticia autor: josé elías |
![]() |
![]() |
jueves, marzo 27, 2008
|
Adobe acaba de hacer disponible en Internet una versión web de Photoshop a la que llama Photoshop Express (la misma de la cual reportamos en eliax hace unos meses atrás), que es mucho mas que una versión simple de Photoshop que puedes utilizar desde cualquier navegador de Internet para retocar tus fotos (es decir, que no tienes que instalar nada en tu PC, todo funciona dentro del navegador).
Con esta versión, que es totalmente gratuita, además obtienes una cuenta de 2GB de espacio que es suficiente para que almacenes cientos de fotos. Después que tienes las fotos subidas en Internet, aparte de manipularlas puedes también compartirlas con quien desees, creando de paso presentaciones bien atractivas de tus coleccione de fotos. Hasta lo que entiendo el único requerimiento es que tengas flash instalado en tu PC, por lo que esto debe funcionar bien con Windows, OS X o Linux. Y a propósito, todo se ve espectacular, no dejen de probarlo. Para utilizar el programa deben crear un usuario (gratuito), con el cual entran a Photoshop Express para poder utilizarlo. El programa está en versión beta (de pruebas), pero ya está ben funcional y relativamente bien pulido. Enlace a Photoshop Express autor: josé elías |
![]() |
![]() |
miércoles, marzo 19, 2008
|
![]() Los cursos van desde lo básico (por ejemplo, CSS y DHTML) hasta lo avanzado (MapReduce), y les aseguro que sin importar el grado de experiencia que tengan, que aquí aprenderán algo nuevo sin duda alguna. Muy recomendado. Página oficial de Google Code University autor: josé elías |
![]() |
![]() |
domingo, marzo 16, 2008
|
![]() Hasta este momento, yo he sido uno de los que se ha mostrado renuente a desarrollar aplicaciones para plataformas móviles, pues las opciones que tenía eran estas: - WAP: Una tecnología de páginas web para dispositivos móviles, pero ultra-limitado. Es como desarrollar en HTML para cavernícolas. Aun me sorprendo de la gente que evangeliza esta tecnología que obviamente será dejada en el olvido muy pronto. La ventaja de WAP es que el código en el servidor puede ser escrito en cualquier lenguaje y en cualquier plataforma, pero la experiencia del interfaz del usuario es simplemente abismal y arcaica. - Windows Mobile: Hay que admitir que es este es uno de los frameworks mas completos y potentes en el mercado, pero en mi opinión es una simple extensión del paradigma de Windows a la palma de la mano, lo cual creo es el camino incorrecto a seguir. No es que Windows Mobile sea malo o no, sino que su paradigma de cientos de menús y ventanas simplemente no es eficiente en un entorno portátil, y el hecho de que el iPhone haya sido tan exitoso con primeros usuarios es testamento de que hay mejores paradigmas para hacer las cosas. - RIM, Nokia, Palm, SonyEricsson, Symbian. Todos estos ofrecen tecnología propietarias, y sin un rumbo fijo en el mercado. Desarrollar para estas plataformas es un peligro a largo plazo. - J2ME (Java 2 Micro Edition): Esta plataforma hasta el momento ha sido la mejor opción para desarrolladores, pues es la que menos aísla a los programadores de los miles de distintos celulares y sus peculiaridades. Es esta la razón por la cual hasta el momento ha sido la plataforma dominante en cuanto a desarrollo de aplicaciones, en particular juegos sencillos. Sin embargo, la capacidad de programar de manera genérica evita por lo general que tengas acceso a tecnologías avanzadas en celulares de última generación que aun no son soportadas en la máquina virtual de Java. El los últimos meses sin embargo, se ha tornado claro que la gran batalla va a ser librada entre dos nuevos contendientes: El iPhone y Android. Por un lado tenemos al iPhone, el cual uno podría debatir que se ha convertido en el celular inteligente mas popular del mundo, así como el de mayor crecimiento. Su elegante interfaz le ha abierto los ojos no solo al público, sino que a la comunidad de ingenieros de software, quienes ya han creado centenares de aplicaciones nativas y miles de aplicaciones web. Por el otro lado tenemos al nuevo chico del vecindario, Android, una plataforma que planea ofrecer no solo lo mejor de las tecnologías propietarias, sino que hacerlo de una manera totalmente abierta. Analicemos ahora los componentes básicos de ambas plataformas y veamos que es lo que tenemos... Proveedor de la Tecnología El iPhone es 100% Apple, quien lo fabrica y vende. Esto hace que sea bien fácil crear aplicaciones para el iPhone ya que puedes estar seguro que tus programas funcionarán con cualquier modelo del iPhone, ya que son todos virtualmente idénticos. Android, por otro lado, es un conjunto de especificaciones y código de referencia y no un producto en sí, por lo que cualquiera puede desarrollar un celular inteligente con tecnología Android, lo que significa el riesgo en un futuro de que una aplicación no funcione exactamente igual entre un celular y otro. Sin embargo, aparenta que la OHA y Google han pensado bien esto y nos aseguran que ese no debería ser el caso, aunque esto solo lo sabremos en la práctica cuando tengamos celulares con los cuales comparar. Sistema Operativo Apple utiliza el mismísimo corazón del sistema operativo OS X que utiliza en sus Macs de escritorio y portátiles, lo que lo hace no solo bien estable, sino que bastante potente. En el iPhone el sistema operativo es totalmente cerrado y controlado solo por Apple. Android utiliza a Linux como su sistema operativo base, y a Java como su punto de acceso con APIs, lo que es una excelente combinación, ya que provee la estabilidad y flexibilidad de Linux, con la elegancia y facilidad de programación de Java. Lenguaje de Programación iPhone es programado con Objective C, un lenguaje tipo C, orientado a objetos, cuya elegancia es comparable a la de Java. El nuevo SDK permite acceso a los APIs del sistema operativo, pero no a modificar el sistema operativo mismo. Android es programado en Java, pero dependiendo del proveedor, es posible programar directamente en C o hasta en Assembly, pero no es recomendado. El proveedor (es decir, el que fabrique un celular Android) tiene acceso completo al sistema operativo y puede no solo crear drivers compatibles con el API de Android, sino que hasta nueva funcionalidad si lo desea. Interfaz de Usuario Hasta el momento, el interfaz nativo del iPhone aparenta ser el mas elegante e intuitivo. Este se programa con una versión multi-toque de Cocoa (el módulo de interfaz gráfico de OS X) llamado Cocoa Touch con Objective C. En cuanto a aplicaciones tipo web, se utiliza HTML con técnicas estándares de AJAX. En cuanto a Android, para aplicaciones nativas se utilizan componentes nativos que exponen sus APIs a Java, y el grado de complejidad es similar al del iPhone. En cuanto a aplicaciones web, aparte de soportar HTML y AJAX, pueden estar seguros que debido a su arquitectura abierta que pronto podremos también contar con Google Gears, lo que significa aplicaciones web que se pueden utilizar de manera desconectada del Internet, lo que es una gran ventaja. Navegador de Internet El iPhone utiliza una versión especial del mismo Safari que se utiliza en el OS X de las Mac, y es bien asombroso en su funcionamiento y renderizador visual. Sin ni siquiera la menor duda es el mejor navegador de Internet en una plataforma móvil en estos momentos. En cuanto a Android, sucede que utiliza el WebKit, que aunque pocos lo sepan, es el motor interno de renderización en el cual está basado Safari en el iPhone, por lo que pueden esperar una experiencia similar en el despliegue de páginas web. En android, sin embargo, será posible tener acceso en un futuro a páginas con objetos Flash y Java, debido a la arquitectura abierta de Android, así como a navegadores alternativos como Firefox u Opera. Librerias de APIs Ambas plataformas ofrecen un juego de librerías de APIs bastante completo, sin embargo en Android es posible tener acceso mas bajo al sistema operativo, así como a dispositivos externos conectados por puertos de expansión de todo tipo. Restricciones En el iPhone todas las aplicaciones se descargarán por el App Store de Apple, y ya que Apple controlará esta tienda por Internet, hay muchas restricciones que tendrá. Por ejemplo, no se permitirán aplicaciones de VoIP (telefonía por Internet) sobre redes celulares, sino que solo sobre redes WiFi, lo que significa adiós a la utilidad de Skype. Tampoco se permitirá aplicaciones que interpreten código (es decir, adiós a navegadores que compitan con Safari, y a programas que utilicen Javascript o que descarguen objetos ejecutables en demanda, entre otras cosas). En Android, ninguna de estas restricciones aplican, y al contrario, toda la plataforma fue diseñada con amarres que permite que uno defina un módulo por otro (como puede ser, declarar un navegador de Internet alternativo como el preferido sobre el que viene instalado). Facilidad de Uso El iPhone ofrece una experiencia de fácil uso sin paralelo en el mercado, pues ya que Apple controla todo, hay para todo lo que quieras hacer una sola manera de hacer cualquier cosa. Eso significa que es muy fácil sincronizar tu iPhone a tu PC, o comprar canciones, videos y aplicaciones por Internet. Android, por otro lado, no especifica cómo se deban hacer cosas básicas como sincronizar datos o obtener otros módulos o media por Internet, por lo que dependerá del proveedor ofrecer una experiencia placentera, y como ya sabemos, pocos hacen un trabajo cercano al que hace Apple. Sin embargo, esperen que eventualmente surjan maneras de hacer tales cosas que se conviertan en estándar por defecto (como lo hizo Installer.app en el iPhones desbloqueados), pero para eso falta un tiempo y no hay garantías. Rapidez y ventajas de desarrollo El iPhone ofrece un SDK que es asombroso, que incluye un simulador, un debugueador y diagnosticador remoto, y un creador de interfaces gráficos. Su gran limitante: Requiere una Mac con OS X para desarrollar. Sin embargo, es mas fácil utilizar estas herramientas que en el caso de Android. Android por otro lado, ofrece un SDK que es mayoritariamente dependiente de un IDE externo como Eclipse. Sin embargo, ofrece un excelente simulador y tiene interfaces para debugear remotamente. Además funciona en varias plataformas. Por ahora su limitante es que no ofrece una manera gráfica de crear interfaces de usuario, aunque se espera que terceros ofrezcan tales herramientas. Costos de desarrollo En el iPhone el SDK es gratuito, pero si quieres publicar aplicaciones para el iPhone en el AppStore, el costo es US$100 dólares anuales. Así mismo, si no tienes una Mac, tienes que considerar el costo de una Mac para desarrollar. El SDK de Android es totalmente gratuito y sin restricciones en cualquier plataforma. Soporte para desarrolladores Apple será quien dará el soporte primario tanto al iPhone como a las herramientas de desarrollo y la documentación, aunque se espera que surjan portales de terceros que formen comunidades de programadores. En cuanto a Android, Google, el OHA y la misma comunidad serán los que provean todos estos servicios de soporte, y sin duda surgirán empresas que ofrecerán sus servicios comerciales equivalentes a los de Apple, así como comunidades de programadores en portales públicos por Internet. Disponibilidad de Software de terceros El iPhone disfruta de una buena selección de software por la comunidad de hackers que han desbloqueado al iPhone, y pueden estar seguros que muchas de esas aplicaciones saldrán en el oficial App Store en Junio junto con el firmware 2.0, por lo que el iPhone tiene un buen futuro como una plataforma sólida con una saludable selección de programas. Además, Apple se ha esforzado en invitar a muchas empresas comerciales para que creen programas para el iPhone, y muchas han respondido favorablemente, como son EA (Electronic Arts), SEGA, SalesForce, etc. Según Apple, en los primeros 4 días de poner el SDK en Internet, la descargaron unas 100,000 veces. Android, por su parte, también aparenta que tendrá una buena selección de software cuando salga al mercado, en particular debido a lo sencillo que ha resultado programar para la plataforma con el SDK beta de Android. Sin embargo, aun no sabemos de los planes secretos de empresas comerciales para esta plataforma, aunque pueden estar seguros que muchos tienen a Android en sus miras, y es posible que veamos anuncios al respecto cuando empiecen a surgir los primeros modelos de celulares inteligentes con Android a fin de año. Además, es muy posible que la comunidad del Software Libre apoye mas a Android que al iPhone, debido a su naturaleza abierta. Según Google, a la fecha el SDK de Android se ha descargado mas de 750,000 veces desde que se anunció oficialmente hace un par de meses. Futuro y garantía de inversión a largo plazo Con el iPhone el futuro está bien asegurado, pues Apple planea tener al iPhone soportado por un buen tiempo, y el hecho de que ha sido un éxito de ventas y aceptación tan sensacional significa que estamos en una sociedad a largo plazo con el iPhone. En cuanto a Android, aun no podremos comprar celulares Android hasta finales de este año o inicios del próximo, por lo que habría que esperar a ver su aceptación por el público. Sin embargo, el hecho de que Google esté respaldando a Android con todo lo que tiene, y que varias de las empresas fabricantes de celulares del mundo planea soportar la plataforma, aparenta significar que Android tiene un buen futuro por delante, pero no podemos cegarnos y hay que aceptar que el iPhone le lleva una muy buena delantera. Potenciales Clientes de Aplicaciones Ya existen mas de 4 millones de usuarios del iPhone, y para cuando salgan los primeros dispositivos de Android al mercado es muy posible que ya existan 10 millones de iPhones en el mundo, por lo que al menos al corto plazo es mucho mas rentable ofrecer software para la plataforma iPhone. Sin embargo, debido a que Android será ofertado por muchísimos mas proveedores que el iPhone, y en mas mercados, es posible que Android alcance al iPhone en ventas en un par de años, y después hasta lo sobrepase. Aplicaciones Especializadas Si deseas crear aplicaciones que no son tradicionales, el iPhone es limitado a solo las capacidades que Apple te ofrece en sus APIs, pues no tienes acceso (al menos por el momento) ni siquiera al puerto de expansión del iPhone (aunque con ingenuidad nos podemos imaginar integrar equipos externos via WiFi o quizás Bluetooth). Si lo que deseas es crear aplicaciones especializadas, como puede ser integrar lectores de código de barra y RFID, la mejor opción es claramente Android, ya que permite integrarse con todo, de una manera totalmente abierta. Si no existe algo, lo creas tu mismo y lo integras. Es posible que debido a esto Android sea mas adoptado que el iPhone en aplicaciones industriales. Facilidades nativas Todo iPhone, como muchos saben, viene con ciertas particularidades asombrosas, como son un acelerómetro, gráficos en 3D, un sensor de proximidad, un sensor de luz ambiental, una pantalla fenomenal, y un sistema multi-toque para interactuar. Por el otro lado, Android tiene soporte para todas estas tecnología popularizadas por el iPhone, pero no son obligatorias a ser implementadas en todos los celulares Android. Esto significa que los programadores no deben contar con que todo dispositivo tenga estas facilidades, aunque sí tienen manera de saber cuando no están presentes, y de aceptar maneras alternativas de interacción. Esto, aunque puede ser una restricción, también significa que a largo plazo Android podría soportar mas tecnologías que el iPhone, como puede ser soporte nativo para GPS. ¿Qué significa todo esto? Por si no lo han notado aun al leer todo lo anterior, no es fácil elegir una plataforma sobre otra en estos momentos, pues es muy posible que ambas triunfen a largo plazo. A corto plazo si deseas hacer dinero vendiendo aplicaciones, la opción es clara con el iPhone, el cual ya tiene millones de potenciales clientes a los cuales le puedes vender tus creaciones. Si por otro lado tienes una idea revolucionaria que está limitada por la restricciones de Apple con el iPhone, entonces Android es tu mejor opción. Para cualquier otro uso, por ahora es mejor considerar ambas plataformas. Una opción interesante para soportar a ambas plataformas se hará evidente muy pronto (en Junio posiblemente) cuando Sun termine de implementar a Java para el iPhone. Sin embargo aun hay dudas si las restricciones legales que Apple ha impuesto en el iPhone permitan que Java se implemente en ese dispositivo, pero de ser posible, eso significaría que con un poco de organización sería posible crear programas que funcionen en ambas plataformas, siempre y cuando aísles el código nativo de cada plataforma en librerías de funciones que se compilen para cada plataforma en particular. Esto también se haría mas fácil de lo imaginado ya que según Sun, la implementación de Java para el iPhone tomará buena ventaja de sus particularidades nativas (como podría ser el acelerómetro, gráficos 3D, etc). Pero como toda nueva tecnología, hay que esperar y ver para probar lo práctico de todo esto. Ahora unas últimas palabras de reflexión... Mucho dirán que no deberíamos soportar a Apple y su iPhone debido a que lo único que busca es mantener control absoluto de la plataforma, manteniéndola cerrada y siguiendo sus reglas. Sin embargo, hay que entender que a diferencia de muchas otras empresas que crean tecnologías cerradas, Apple lo hace con una elegancia y utilidad tal, que para una gran parte de los usuarios simplemente no les importa que la plataforma sea cerrada o no. Es como si uno viviera en una cárcel, en donde siempre y cuando uno siga las reglas, a uno lo traten como a un rey, ofreciéndole a uno lo mejor de lo mejor, televisores de gran tamaño, lujosos automóviles, casas hermosas y elegantes, y la mejor educación posible. La única restricción es que no puedes salir de la cárcel, pero si estás feliz con todas las comodidades que te ofrecen, es muy posible que muchos decidan quedarse, y eso es precisamente lo que ocurre con el iPhone. Por el otro lado, Android te ofrece toda la garantía de libertad del mundo, pero a cambio de que trabajes para poder tomar ventaja de esa libertad. Es muy parecido a la opción de la píldora roja o azul que Morfeo le hizo a Neo en la película The Matrix, y no crean que filosóficamente una opción sea mejor que otra, pues influye mucho el punto de vista. Yo particularmente prefiero la libertad de Android, pero tampoco puedo negar la elegancia, facilidad y utilidad que Apple me ofrece en el iPhone, pero creo que Apple debe tener mucho cuidado con tratar de mantener el iPhone muy controlado, pues de ser así se arriesga a que la industria deje atrás al iPhone, de la misma manera que hace un par de décadas dejó atrás a la Mac en favor de la libertad que ofrecía Windows en ese entonces (y los resultados se hicieron evidentes). Y noten que al final ni Apple ni Google serán los que ganarán mas con esta guerra que se avecina, sino que nosotros, los consumidores, que seremos beneficiados por los avances que ambas plataformas tratarán de implementar en cada nueva generación de dispositivos para ganarse nuestras mentes, corazones y billeteras... autor: josé elías |
![]() |
![]() |
jueves, marzo 13, 2008
|
![]() Una de esos programas que me gusta configurar a mi antojo es el navegador Firefox, y hoy los envío a que prueben un programa llamado MozBackup que es super útil para dos cosas: Primero, te permite "mudar" la configuración intacta de Firefox de una máquina a otra (desde bookmarks hasta el mismo cache, todo), y segundo, puedes utilizar la herramienta como una manera de hacerle un respaldo a Firefox de vez en cuando (como por ejemplo, justo antes de instalar un nuevo plugin extraño que no conoces, o simplemente para recuperar un bookmark que borraste accidentalmente). Página oficial de MozBackup autor: josé elías |
![]() |
![]() |
martes, marzo 4, 2008
|
![]() Noten que la cantidad, calidad y diversidad de avances que veremos en los próximos 100 años será cientos, miles o millones de veces mayor (en todos los sentidos) que lo que hemos visto en estos últimos 100 (ya que la ciencia y tecnología avanza exponencialmente), pero tomaremos el número 100 por su efecto psicológico en los humanos, aun yo crea que buena parte de lo que predigo sucederá muchísimo antes de esos 100 años. Noten además que una pequeña parte de estas predicciones es necesario que tomen mas de 100 años, posiblemente millones de años, debido a lo que abarcan (como es la re-ingeniería de nuestro Universo). Una nota importantísima para quien lea esto: El hecho de que crea que muchas de estas cosas vayan a ocurrir no significa que esté 100% de acuerdo con todas ellas. Son simplemente cosas que veo ocurrirán en base a patrones actuales y a un par de cables mal conectados en mi cerebro. Así que sin mas esperar, aquí vamos... 1. No dependeremos de una sola fuente de energía, ni de varias en el sentido tradicional, sino que "minaremos" energía de donde sea que esté en nuestro medio ambiente. Con esto quiero decir que tomaremos ventaja de cualquier forma posible de explotar energía, sea caminando, moviendo objetos, del sol, de microorganismos, del aire, del agua, de lo que sea. Lo mas asombroso de todo es que esto avanzará a un grado tal, que todo esto sucederá "tras bastidores" sin darnos cuenta de que estamos minando esta energía. Es como si la energía simplemente "estuviera allí" para todo el mundo. 2. De todo el mundo no adoptar un solo idioma (candidato principal: el Inglés), el número de idiomas será muy reducido, en el orden de 5 o menos. 3. No habrá necesidad de países desde el punto de vista político, ya que el comercio y la comunicación hará que todos los países sean efectivamente uno. Los países existirán mas que nada para apoyar eventos deportivos entre una región y otra. 4. Curaremos la enfermedad de la muerte (sí, para mi la muerte no es una condición a aceptar, sino que una enfermedad para la cual tenemos que encontrar una cura). 5. Una gran parte de la población mundial no se identificará con una religión en particular, sino que mas bien con un Creador, o simplemente serán ateos (ya me imagino los comentarios que recibiré por escribir esto, pero simplemente estoy siendo objetivo y dejando mis pasiones a un lado). 6. En algún momento, el dinero será representado por una única "moneda virtual" mundial, y será 100% electrónica. 7. Inicialmente las computadoras serán totalmente móviles, desapareciendo las computadoras de escritorio y las laptops, pero eventualmente, estas computadoras se integrarán dentro de nuestros cuerpos y de nuestro medio ambiente, y se tornarán invisibles. 8. El ser humano pasará a una etapa en donde controlará su biología interna a tal grado que podrá extender su vida a cientos de años. Después iniciaremos una transformación gradual a un entorno 100% no-biológico, y en paralelo a eso a un entorno de mentes virtuales en mundo virtuales, ya que el planeta completo será una mega-máquina de computación, y viviremos mas en el mundo virtual que en el tradicional, aunque muchos optarán de vez en cuando en salir del mundo virtual a un cuerpo sintético en el mundo físico. 9. Lograremos crear comida similar a la de animales hoy día, pero 100% artificial. Llegará un día en donde nos repugnará saber que comíamos a otros animales muertos. Mas adelante no tendremos necesidad de comer y solo lo haremos como entretenimiento. Hasta será posible ingerir programas informáticos que nos den todo tipo de sensaciones de sabores asombrosos. 10. Nosotros mismos (aun en cuerpos 100% sintéticos, nos seguiremos llamando "humanos") seremos las computadoras mas potentes del mundo, y el intelecto de cada persona individual cuando eso ocurra será mucho mayor que el intelecto de todos los humanos y computadoras combinados hoy día. 11. Viviremos para siempre (o al menos, hasta mientras haya energía para subsistir en nuestro Universo). 12. La materia y la energía eventualmente se convertirán en la "moneda" del futuro, ya que son los recursos básicos del Universo. El modo de intercambio podría ser "ideas", "conocimiento", "experiencias" o "entretenimiento", es decir, cosas que estimulen nuestra curiosidad por patrones nuevos. 13. Haremos "respaldos" de nuestras mentes, tanto en la Tierra como fuera de esta, para proteger nuestra existencia en casos catastróficos. 14. Así mismo podremos clonarnos en cualquier momento de manera casi instantánea, así como fusionarnos con otras mentes (¿será este el equivalente del "amor" en el futuro?). 15. Llegará un momento en donde no habrá ninguna diferencia entre un ser "humano" y uno generado 100% con Inteligencia Artificial. Ambos seremos la misma cosa, y nos reproduciremos de la misma manera (como programas informáticos). 16. Eventualmente, el concepto de "idioma" como lo conocemos será algo obsoleto, ya que podremos comunicar los patrones de exactamente lo que pensamos directamente desde nuestras mentes a otras mentes. 17. Podremos crear cualquier cosa física, tanto en el mundo físico clásico como en el virtual, y lo podremos hacer solo con pensarlo, esto gracias a la nano-tecnología. 18. Cosas como automóviles, aviones y barcos serán obsoletos, ya que nos moveremos a través de una versión futurística del Internet, desde un punto del planeta a otro, de manera casi instantánea. Aunque lo cierto es que no habrá necesidad de "moverse" de un lado del planeta al otro, ya que todo ocurrirá virtualmente, pero si nos da la gana podemos entrar a la red en un lado del planeta, y salir del otro lado en un cuerpo de nuestro diseño. 19. Desaparecerá el tema de los problemas ambientales, pues seremos mucho mas eficientes en reciclar energía, y no tendremos necesidades de automóviles o calles concurridas. 20. Poseeremos la tecnología necesaria para subsistir en el espacio exterior, y por ende es posible que de así desearlo formemos colonias en otros cuerpos cercanos (primero, la Luna), y es posible que comunidades enteras sean enviadas a diferentes puntos del Universo. Estas comunidades no viajarán de la manera tradicional, sino que será una nave en donde su carga es una computadora con mentes virtuales dentro de ella, las cuales a donde sea que lleguen tomarán materia del entorno local para construirse cuerpos físicos de ser necesario. 21. El concepto de "trabajar" no existirá, o evolucionará a lo que hoy denominamos "ser creativos". Las entidades del futuro se distinguirán unas de otras por el grado de intelecto que posean, y por el entretenimiento que le puedan ofrecer a los demás en el tema de las artes y ciencias. 22. Surgirán formas de arte nunca imaginadas, que solo pueden darse en entornos 100% virtuales, y combinarán interactividad, emociones (las emociones será algo que podremos comunicar directamente desde una mente a otra en ese entonces) y sensaciones de todo tipo (aun con sentidos que hoy no nos imaginamos). 23. Es posible que ya entendamos el funcionamiento de nuestro Universo, y que ponderemos la posibilidad de interactuar, viajar o crear otros, en particular para extender nuestra existencia mas allá del final de este Universo. 24. También es posible que decidamos empezar a modificar el Universo mismo para llenarlo de inteligencia, y nosotros fusionarnos con él. Durante este proceso es muy posible que encontremos otras especies de inteligencia en el Universo que están en el mismo proceso que nosotros. 25. Seguirá existiendo el Bien y el Mal. Y ciertamente, si hay algo que pueda evitar que lleguemos a celebrar 100 años mas en este planeta, es alguna persona o entidad que decida utilizar todo el conocimiento acumulado para crear una especie de arma, virus, o catástrofe para acabar con toda la vida en el planeta. Sin embargo, soy optimista y voy a predecir que el Bien sobrevivirá sobre el Mal... Lo bueno de esta predicción es que siempre tendré la razón, pues si me equivoco no habrá nadie en existencia para darse cuenta! :) 26. La Inteligencia Artificial será la más increíble herramienta creada en toda la historia de la humanidad, y nos permitirá optimizar procesos, dominar el mundo cuántico, descubrir nuevas leyes de la naturaleza, resolver grandes problemas logísticos de la humanidad, y permitirnos viajar a otros lugares remotos del cosmos... Eso es todo por ahora, esto lo escribí en unos minutos, pero quien sabe, tal vez regrese de vez en cuando a agregarle unas cosas mas... Actualización 1: Ya que lo mencionan en los comentarios, aquí va el enlace a mi libro "Máquinas en el Paraíso" en donde hablo con mas profundidad sobre varios de estos temas. Actualización 2: Si les gustaron estas predicciones, recomiendo lean la sección de Reflexiones en eliax. autor: josé elías |
![]() |
![]() |
miércoles, febrero 20, 2008
|
![]() ![]() Microsoft acaba de anunciar que empezará a ofrecer sus programas (software) de desarrollo de aplicaciones (inclusive las versiones avanzadas y profesionales) gratuitamente y sin compromiso a estudiantes. Entre los programas que se podrán descargar están Visual Studio Professional Edition (para desarrollo de software), Expression Studio (incluye herramientas de diseño gráfico y de Web), XNA Game Studio 2.0 (para desarrollar juegos para Windows y el Xbox 360), y de paso hasta SQL Server 2005 Developer Edition y Windows Server Standard Edition (sí, Windows Server gratuitamente). Este anuncio fue hecho por el mismísimo Bill Gates, quien dijo (traduzco textualmente del Inglés): "Los estudiantes desearán probar las herramientas de Microsoft porque son mas poderosas que la combinación de Software Libre del sistema operativo Linux, el Servidor Web Apache, la base de datos MySQL, y el lenguaje de programación PHP, en la creación de Websites complejos." Esto, mis amigos, es la primerísima vez (que yo recuerde) que alguien dentro de Microsoft se refiera libremente a herramientas de Software Libre de esta manera, lo que indica que obviamente Microsoft está sintiendo la presión del movimiento Software Libre, y esta es una medida preventiva (y bien ejecutada, hay que admitir), por parte de Microsoft para tratar de minimizar el derrame de programadores que están probando las herramientas alternativas del Software Libre. Una cosa sí creo que tenemos que tener claro, pues hay que dar crédito a quien se le merece: Las herramientas de desarrollo de Microsoft verdaderamente son mas poderosas que sus equivalentes en el mundo Software Libre (aunque eso está cambiando rápidamente), sin embargo, las aplicaciones resultantes son, en mi opinión, mas poderosas y útiles al ser creadas para ser ejecutadas en un ambiente lo mas "Software Libre" posible. Esto lo digo porque por mas bonito, productivo y sexy que sea el entorno de desarrollo, lo cierto es que lo importante son las aplicaciones generadas, y en el entorno de Microsoft casi siempre lo que haces es crear aplicaciones propietarias y atadas a Windows, lo que significa que al utilizar esas herramientas lo que haces efectivamente es casarte a ti (y a los clientes para los cuales creas aplicaciones) con Microsoft y a Windows de por vida. Noten además que aunque el mundo de Software Libre no tiene herramientas de desarrollo tan sofisticadas como las de Microsoft, que el mundo comercial sí las tiene. Por ejemplo, si lo que deseas es diseñar Websites (sea con HTML, ColdFusion, JSP, PHP, ASP, etc), no existe una herramienta ni de Microsoft ni de nadie que se le acerque a Dreamweaver de Adobe/Macromedia. Así mismo creo que pocos dirían que existe una alternativa mejor en el mercado a Photoshop (hablo de software comercial, sí, ya conozco al Gimp). Así mismo si lo que quieres es programar en Java, C, C++ u otros lenguajes, creo que tanto Netbeans como Eclipse han madurado a un nivel tan alto, que hay que buscar muy bien entre los detalles para ver qué ventajas ofrecen las herramientas de Microsoft a los desarrolladores de software. Aun así, veo esto como una buena noticia, pues creo que esto solo puede mejorar el mercado en ambos bandos, al final beneficiándose todo el mundo. Finalmente, antes de que alguien lo note en los comentarios, cuando digo que las herramientas de desarrollo de Microsoft son mejores, me refiero solo a eso, a las herramientas de desarrollo, no estoy hablando del runtime de cosas como PHP, MySQL, Apache, o el mismo Linux, los cuales son equivalentes (o mejor) a cualquier cosa que tenga Microsoft. Fuente de la noticia autor: josé elías |
![]() |
![]() |
jueves, febrero 7, 2008
|
![]() Enlace a la página autor: josé elías |
![]() |
![]() |
"¿Sabes qué es lo bueno de verlo acá?, EL LENTE con el que se ve. Cualquiera puede verlo como unos viejos borrachos haciendo idioteces, pero en este caso es una exaltación a la amistad, al sentimiento, así no parezca."
en camino a la singularidad...
©2005-2025 josé c. elías
todos los derechos reservados
como compartir los artículos de eliax
Seguir a @eliax