Mostrando entradas con la etiqueta Android. Mostrar todas las entradas
Mostrando entradas con la etiqueta Android. Mostrar todas las entradas

viernes, 3 de abril de 2015

Android al ataque de los PC...revisitado


Va a ser 2 años que sigo este tema, y tengo que reconocer que el ataque que me habría gustado presenciar, no alcanzo a ser batalla de Sistemas Operativos y menos una guerra.

Por lo menos no me equivoque en la razón: Google sigue empujando su ChromeOS como Sistema Operativo para PC.  Hay toda una nueva generación de Chromebook, ChromeBox, ChromeBase y ahora ChromeBit. Los pocos proveedores de PC tradicional que se lanzaron inicialmente con Android, ahora usan ChromeOS y solamente quedan proveedores de mini-PC, principalmente fabricantes chinos menos reconocidos, que eligen el robotcito.

Pero todo no esta completamente perdido para Android, ya que desde mi entrada anterior, ocurrieron 3 eventos importantes:
  • Google empezó a fusionar Android con ChromeOS.   Recientemente permite correr aplicaciones Android sobre Chrome (incluyendo en Chrome version Windows).  Y también permite correr chrome-apps, aplicaciones basadas en tecnología web, sobre Chrome versión Android de tal forma que no se puedan distinguir de las aplicaciones nativas.
  • Microsoft empezó a portar su suite Office fuera de Windows y en particular sobre Android.  Se rumorea también que permitirá correr las apps Android en Windows 10.
  • Google saco varias nuevas versiones de Android como Android Wear, Android Auto y Android TV...pero no Android PC.  Eso es en contraste a lo que percibi en el 2013, algo de desinterés de parte de Google por Android. 
Por mi parte, no veo ninguna razón técnica, para no usar Android como Sistema Operativo para PC.  Estoy escribiendo esta entrada usando un all-in-one de 21 pulgadas basado en Android.  Mi experiencia con este equipo ha sido buena para un uso recreativo, me refiero a perder tiempo en las redes sociales, escuchar música, ver películas/series, leer libros o bucear la internet. Yo no soy gamer, pero si tengo campaneros que lo son y que afirman que los juegos Android se ven espectacular en 21 pulgadas.   Para el trabajo en la casa, sigo con Windows o Linux, conectando mi all-in-one como segundo monitor del laptop.  No uso Android para trabajo, principalmente porque algunos programas como Google Docs son inestables en mi all-in-one y que no hay IDE de desarrollo bueno para el lenguaje Scala en Android o en la Web.

En 6 meses más, tendré que ponerme en campaña para renovar este all-in-one, principalmente porque su parte "PC", la CPU, la memoria y el espacio en disco duro, empieza a envejecer en comparación de las normas actuales.  Como puedo recuperar el monitor, una box externa es suficiente.  Todo bien, pero de nuevo, ¿con que sistema operativo?

Android TV

Es como demasiado recreativo el tipo de uso.  Me gustaría tener la capacidad de solucionar algunas emergencias laborales, como completar un documento, dar soporte a un proceso que se cayo el fin de semana, etc, todo eso sin necesidad de llevar todos los días el PC de la oficina a la casa y de vuelta.

Finalmente, incluso para uso recreativo, Android TV depende de servicios en internet que no están habilitados en Chile o que tienen catálogos añejos en comparación a los de EE.UU.

Windows/Linux

Exactamente al revés del caso anterior, demasiado serio el tipo de uso.  Ojala el trabajo queda en la oficina, junto con el laptop PC.

ChromeOS

Si ChromeOS puede correr las aplicaciones Android que me interesan, se transforma en un candidato serio.

Lo que tengo que averiguar es si soporta el modo "offline" para música y vídeos.  El streaming no es opción con mi ancho de banda "campestre"

Android

La gran ventaja de Android sobre ChromeOS es la flexibilidad.  Se instalan algunas apps y se parece a Windows o Linux.

No obstante, el mundo de los Android PC es relativamente "underground" y existe el riesgo que algunas apps corren mal, como me pasa con Google Docs.  En este caso las soluciones se demoran bastante en llegar.

Lo que va a mitigar algunos de los problemas anteriores:
  • al soportar las apps de Android sobre ChromeOS, Google empuja los fabricantes validar que sus aplicaciones funcionan bien con ratón/teclado y un monitor más grande,
  • mirar Android TV sobre una TV de 40 pulgadas a 3 metros de distancia es equivalente a mirar un monitor de 21 pulgadas desde un metro de distancia.  De nuevo, eso va a obligar los fabricantes de apps hacer mejor uso del espacio disponible y adoptar input no basado en touch, en particular para los juegos.
  • Para poder correr chrome-apps, Google ha mejorado bastante la estabilidad de Chrome version Android.

En resumen, Android no esta al ataque de los PC, esta al ataque de ChromeOS.  Así que mi concejo para Google, es que termine de fusionar los 2 sistemas operativos y nos olvidamos del problema.

viernes, 20 de diciembre de 2013

Java pende de Android

Un tema recurrente en las entradas de blog es "Java is dead" o Java es el nuevo COBOL.  Aquí va mi opinión sobre el tema.

Primero no veo por donde podría morir pronto Java.  Son demasiadas las aplicaciones y las empresas que dependen de Java para que eso ocurra.  Quizás, en 10 años más se dejara de usar Java para desarrollar nuevas aplicaciones y, en 20, se dejara de mantener aplicaciones viejas.

"Java es el nuevo COBOL" tiene un poco más de peso.  La evolución del lenguaje se puso lentísima, hay un especie de statu-quo entre JEE y la suite Spring y no aparecen frameworks Java nuevos.  Si comparo con lo que pasa en la comunidad Scala, Java es  aburrido.  No obstante, el lenguaje se sigue usando para crear aplicaciones entretenidas y me refiero a su uso en el mundo móvil, el cual mantiene vivo el lenguaje.

Para argumentar voy a usar el indice TIOBE.  En este indice, las curvas de C# y Visual Basic, lenguajes competidores a Java en Windows, están francamente a la baja en los últimos años.  Al mismo tiempo, Objective-C, el viejo lenguaje que Apple refloto para iOS, iPhone e iPad, salio de la oscuridad y compite con los lenguajes más populares.  Esta claro que Java se sostiene gracias a Android, sino estaría dando la misma curva descendiente que C# y Visual Basic.

Y Oracle esta demandando a Google por el uso de Java en Android!  En este juicio, Oracle perdió la primera ronda pero va por la apelación.  Los argumentos que usan, como la legitimidad de usar Copyrights para las definiciones de las API's estándares, podrían obligar a Google pagar varios billones de dolares de compensación:  hay que recordar que Oracle pidió 6 billones de dolares para evitar entrar a juicio.

Google no puede quedarse los brazos cruzados:
  • Lanzo dos lenguajes, Go para system programming y Dart para interfaz al usuario.  Dart entro en el proceso de estandarización con ECMA, el mismo grupo de Javascript y C#
  • Creo las chrome-apps que son una forma de desarrollar aplicaciones desktop con Javascript/Dart, CSS y HTML.  Estaría pronto listo una forma de empaquetar chrome-apps para Android e iOS.
  • Tiene AngularJS y Angular Dart, frameworks MVC para aplicaciones single-page en browser,
  • Puso Chrome como el browser por defecto en Android 4.4
  • Sigue empujando ChromeOS como sistema operativo para notebook, y desktop, a pesar que Android es un SO muy capaz para PC.  Tienen un porcentaje de mercado lo suficientemente interesante para crear interes en sus chrome-apps y todas las nuevas API's.
  • Junto el grupo de desarrollo Android con el de ChromeOS y varias figuras históricas detrás del robotcito, como Andy Rubin, se fueron a otros proyectos en Google.
A mi, no me falta mas signos: están contados los días de Java como lenguaje preferido para aplicaciones Android.  Si con un lenguaje decente (no estoy hablando de Javascript) puedo desarrollar aplicaciones en Android, iOS, Desktop y Web, no tengo donde perderme.

En resumen, si Oracle se sale con la suya en el juicio:
  • Dart va a reemplazar Java para desarrollo en Android,
  • Java estará estancado en el servidor de aplicación como COBOL lo es en mainframe CICS.
Por mi parte, es bastante poco lo que desarrollo ahora con Java.  Y si el desarrollo sobre browser conquista el mundo móvil, tengo la alternativa de usar Scala-js.

Update: 28/01/2014: las chrome-apps se pueden ejecutar en desktops, iOS y Android

jueves, 15 de agosto de 2013

Android al ataque de los PC

Con 80% de las ventas de smartphone y 63% de las ventas de tablet, Android se consolida como el Windows de los equipos móviles.  Es un tema casi cerrado.

En el mundo de los PC, la interfaz Metro de Windows 8 acerca la UI Desktop PC tradicional al mundo Móvil Touch y entra en colisión con los OS nativos de este mundo.  Llega una nueva evolución de PC's que, además del teclado y ratón, usan monitores touch y donde Windows, Android, Linux Desktops, MacOS e iOS se pueden enfrentar.

El éxito de Android en este mercado, se ve bastante dìficil
  • las aplicaciones Android están diseñadas para el touch y son optimizadas para pantallas relativamente chicas.  Es suficiente probar un emulador de Android en Windows con un PC con teclado, ratón y un monitor de 21 pulgadas, para darse cuenta que a muchas aplicaciones les sobra espacio y que el ratón es un muy pobre reemplazo del touch.
  • Google no demuestra ningún interés para soportar Android  en equipos tipo PC.  De hecho, para laptop PC, su solución es ChromeOS, como en el Chromebook Pixel, y es basada en el uso de su browser Chrome como interfaz primaria.  Tampoco se sabe de avances concretos para fusionar Android y ChromeOS.
  • No se a que punto Google está interesado en Android mismo en el largo plazo:
    • Samsung es el gran ganador en el mercado de los smartphone basados en Android, tanto que se transforma en un gran competidor para Google, o, por lo menos, en un problema.
    • Amazon y fabricantes de China se basan en Android pero no en las aplicaciones de Google como Play, Maps, Search quitándole toda posibilidad de monetizar Android.  El mayor riesgo con Samsung es que podría hacer exactamente lo mismo en algunos mercados importantes como China e India.
    • el uso de Java como lenguaje de programación trae problemas legales con Oracle. El lenguaje alternativo de Google para el desarrollo de UI es Dart y, por el momento, este lenguaje tiene como objetivo el browser.  Su otro lenguaje, Go, esta orientado al "system programming" como reemplazo a C.  Se ve lejano entonces como Google podría no depender de Java en Android.
    • los mensajes de marketing de Google enfatizan los productos "Chrome", "Play" y "Nexus" sobre "Android".  Durante su última conferencia I/O, Google no anuncio nada de Android y se enfocó en los servicios Google Play.  Cuando finalmente anunciaron Android 4.3, fue en la misma presentación donde lanzaron Chromecast y el nuevo Nexus 7.  Claramente la énfasis comunicacional no es "Android".
No obstante, fuera de Google, hay varios actores de la industria que sí se interesan en usar Android o, por lo menos, quieren soportar las aplicaciones Android en equipos tipo PC.


Fabricantes de PC

Los fabricantes de PC están confrontados a un problema serio:
  • su mercado primario está en pleno declive.  Tienen que entrar en el mercado de las UI basadas en touch, incluyendo smartphone y tablet, pero sin abandonar a sus PC's  Para eso, ya inventaron varias categorías intermedias:
    • híbridos laptop/tablet o equipos donde el monitor se separa del teclado o donde el teclado se guarda por debajo del monitor, 
    • all-in-on con pantalla detachable ofreciendo un tablet enorme,
    • all-in-one con pantalla reclinable hasta quedar horizontal, llamados tabletop.
  • Windows 8 era el SO natural para todos estos nuevos equipos pero no ha tenido el éxito esperado.  El modo "desktop clásico" sigue siendo el más usado y los usuarios pidieron y obtuvieron la vuelta del menú inicio en 8.1.  Aun como sucesor natural de Windows 7 para PC tradicional, Windows 8 se vende lentamente comparando con Windows Vista.   Windows RT, la versión Metro "pura", es un fracaso de proporciones épicas y los desarrolladores no se entusiasman con las API's WinRT, necesarias para generar aplicaciones con la Metro UI.
Entonces, varios proveedores buscan en Android una solución para sus soluciones compatible con touch:

Fabricantes de "smartphone convergentes"

Son smartphone que conectados a un monitor, teclado y ratón, sirven como desktop. Los 2 màs conocidos son:
  • El Motorola Atrix que funciona con Android en modo smartphone y con Firefox en modo desktop.
  • El proyecto Ubuntu Edge propone usar Android en modo smartphone y Ubuntu en modo desktop.  Como comparte el mismo kernel de Linux, puede correr las aplicaciones Android en forma nativa.
Tengo que reconocer que no entiendo porque Google, ahora dueño de Motorola, no saca un "Atrix Pixel" basado en una fusión ChomeOS/Android.  


Fabricantes de Android Mini-PC

Son sticks que se conectan a monitores y son fácilmente transportables. Creo que su uso como Desktop PC es limitado mientras no usen monitores con interfaz touch.

Es probable que sus primos tecnológicos, como las consola de juego Android (tipo Ouya) y los Android TV Box.(media center.basados en XBMCtendrán éxito antes.  Si es asi, podria haber un efecto contagioso para los Mini-PC.  Y, de nuevo, Google no va en esta dirección, ya que luego del fracaso del Nexus-Q, lanzaron Chromecast, un stick basado en Chrome.


Conclusión

Veo montones de fabricantes interesados en adoptar Android para PC.  Al mismo tiempo, veo a Google muy poco interesado en este mercado.

Si tengo que apostar por el éxito de uno de los productos, voto por el HP Slate 21 y el Gateway N1-2400.

domingo, 10 de marzo de 2013

Los Android Mini PC y Android TV stick...

...son otra categoría de dispositivos que, al parecer, le esta yendo bien.  No tengo cifras de ventas pero es suficiente ver la cantidad de productos que salen a la venta, como en esta pagina que informa de las ultimas novedades y donde hay algo nuevo cada 5 días.

Esta evaluación permite hacerse una idea de lo que son estos productos.  En resumen, son dispositivos que caben en un bolsillo, reciben su energía vía USB y se conectan a un televisor o monitor vía HDMI.  "TV stick" se refiere a un uso tipo Media Center para jugar, ver vídeos, escuchar música. Algunos vienen con un control remoto físico y otros con una app para smartphone.  "Mini PC" se refiere a un uso tipo PC desktop y se necesita ratón y teclado inalambricos.  Casi todos vienen con Android pre-instalado pero existen distribución de Linux como picuntu para los que todavía creen en el éxito de los Desktop Linux.  Finalmente, los benchmark indican que son equivalentes a las tablets top del mercado.

Mi laptop actual es como un desktop que se mueve entre el escritorio de la casa y el de la oficina.  Si dejo estacionado un monitor, teclado, ratón y los distintos cables en cada destino, tengo un PC mucho más fácil de transportar.  Además, debido al precio (entre 60 US$ y 110 US$) puedo renovarlo cada año para quedar al top de la tecnología.  Considerando que no es necesario renovar el monitor tan frecuentemente, obtengo un costo total de uso (TCO en las siglas ingles) mucho más bajo que un laptop.

Parece atractivo, resta saber si puedo hacer desarrollo en la nube, con el IDE corriendo en el Mini PC y el compilador en un servidor remoto.  Tema para investigar empezando por ver el estado del arte de los IDE sobre Android





miércoles, 22 de octubre de 2008

Android ya esta en mano de sus compradores

T-Mobile ya esta entregando a sus clientes el HTC Dream. Este smartphone es basado en el sistema operativo Android de Google y licenciado como Open Source.

Hay muchos artículos hoy en la internet para los que quieren saber más. Solamente quiero agregar algunos comentarios desordenados:
  • Las revistas gringas no dejan de comparar este aparato con el iPhone. Esta ultima comparación es muy relevante para los programadores.
  • Las revistas gringas no comparan Android con Symbian. Curioso, porque Symbian sigue siendo el SO para smartphone más usado del mundo (más del 50% según el tío gartner)
  • Varios otros fabricantes de smartphone han anunciados que van a lanzar modelos con Android. Eso es interesante, porque empieza un mercado equivalente a los primeros PC con MS-DOS. Symbian también es portable a multiples aparatos: Nokia, Sony-Ericsson, Samsung, etc y los gringos no hablan de Symbian...curioso ¿Será porqué son demasiado nacionalistas? Quizás no, porque tampoco hablan de MS Windows Mobile.
  • Google tiene el tiempo a su favor. Tienen el peso suficiente para aguantar una primera salida no tan perfecta (un poco como Microsoft cuyas versiones 1.0 siempre dan penas).
  • El modelo de negocio se ve muy interesante. Google gana con más usuarios conectados a sus servicios en línea empezando por el search. Los fabricantes de hardware se dedican a negociar con los carriers. Los programadores ganan el 70% por sus aplicaciones (el 30% restante va para el carrier).
  • Técnicamente, Android esta bien pensado. Quizás es porque fue diseñado con limitaciones de hardware mucho menos restringidas que sus antecesores y puede usar una máquina virtual Java que entrega un nivel de abstracción alto. En comparación, Symbian nació para smartphones mucho menos potentes que los actuales y tiene que usar el lenguaje C con API's de bajo nivel. El iPhone es tan reciente como Android y a pesar de eso no es multi tarea...no se porque los gringos comparan Android con un SO tan malo y tan cerrado.
  • El lenguaje Scala funciona para Android. ¡Otra ventaja de este lenguaje!
  • ¡Por fin, las revistas gringas van a dejar de hablar solamente del iPhone!