Resultado de etiquetas “iPhone”

Aquí en Venezuela, muchas cosas son modismos. La gente compra lo que los demás compran. La mayoría no se pregunta si es lo mejor (para el dinero que puede gastar), o si al menos es lo que en realidad necesita.

Aquí, la moda es cualquier cosa menos el iPhone, el otro día la hija de una amiga me preguntó si mi teléfono era un iPod (touch) y sin muchos detalles yo le respondí:

No, es un iPhone. Es como un iPod Touch pero con teléfono, GPS y cámara.

A lo que ella respondió:

Ahh, ese es chimbo, mejor es un BlackBerry.

De necio, le pregunté

¿Por qué?

y me respondió:

El BlackBerry tiene Live Messenger.

Por razones obvias la conversación llegó hasta ahí. No uso Windows Live Messenger ni en mi computadora, y si existiera para Linux tampoco lo usaría, prefiero una sola aplicación que me mantenga conectado a todos los sistemas de mensajerías y redes sociales (cuando me conecto).

El punto es que muchos Venezolanos (jóvenes y adultos) son así. ¿El iPhone es chimbo porque no es el que está de moda aqui o porque no tiene Windows Live Messenger?. El problema es que no están acostumbrados a evaluar un producto por su usabilidad, sino por la cantidad de "features" que tiene, cuando es bien sabido que muchas veces menos es mas, sobre todo en software (que es lo que tienen "adentro" los teléfonos estos).

Algunas de mis razones para tener un iPhone en vez de un BlackBerry

  1. Usabilidad: Después de varios días de uso, leí el manual en línea para ver si había cosas que aún no sabía como hacer en el iPhone. El manual impreso que trae no dice casi nada, porque el iPhone está diseñado "for dummies", se siente como si el teléfono se anticipa a lo que quieres hacer. Cada aplicación está cuidadosamente pensada en el usuario final, además, la pantalla táctil, con multitouch funciona a las mil maravillas.

  2. Menos es mas: Si bien existen cosas que el iPhone no posee, es debido a que en realidad no son de uso tan común, o no dan un valor agregado real a la experiancia de uso. Además, la rápida evolución de su sistema operativo incorpora lo necesario en sus actualizaciones. bold_iphone.jpg

  3. Diseño: "Designed in California. Assembled in China"... el BlackBerry Bold, por ejemplo, es horroroso, el teclado es mas de la mitad del teléfono!!!. El acabado del iPhone es impecable.

  4. Precio: Yo compré mi iPhone 3G de 8GB por algo menos de 2000 BsF. Si se compara por ejemplo con el BlackBerry Storm... vale como 3.700 BsF.

  5. Aplicaciones: En la Apple Store hay de todo y para todos.

  6. Desarrollo: Espero en un futuro cercano comenzar a probar el desarrollo de aplicaciones para el iPhone, es una oportunidad de negocio y creo que puede ser bastante fructífera. logo-apple.jpg

  7. El fabricante: No necesito decir mas... cada producto de Apple está cuidadosamente diseñado, tienen algo que lo identifica como de Apple.

Existen muchas cosas más que no voy a detallar en este artículo, hay muchos reviews en internet. Tampoco quiero decir que nadie deba usar un BlackBerry u otro teléfono, simplemente creo que todos debemos sentarnos y pensar que es lo que nos sirve, lo que se ajusta a nosotros y lo que podemos gastar, pero no comprar por modismos. Por ejemplo, muchas personas se la pasan intercambiando sus pin del BlackBerry. En mi caso, no tengo casi conocidos con BlackBerry (o conocidos que me interese estar en constante contacto) y no me gusta estar pegado en el teléfono escribiendo mensajitos, simplemente prefiero llamar o enviar un SMS.

Saludos!

rails_jqtouch_screenshot.png Hace un par de semanas, publiqué en mi github, un plugin de Rails llamado rails_jqtouch para facilitar el uso de jQTouch con Rails. jQTouch es un plugin de jQuery que facilita el desarrollo de aplicaciones web para dispositivos móviles con navegador Mobile Webkit, como por ejemplo un iPhone de Apple, HTC G1 o Palm Pre.

Hace como un mes, estaba viendo que demostración hacía para el FLISOL Paraguaná 2009, obviamente, por ser desarrollador en Ruby, el tema era algo de Rails (además de poder hacer publicidad para los cursos de Rails!!), pero no es fácil mostrarle a jóvenes (no es que yo me sienta viejo!!, tengo 26 años!!) que están comenzando en este mundo de desarrollo de software las bondades de Rails, así que decidí colocarle un aderezo interesante a la demostración... incluir la participación de mi flamante iPhone 3G :p

El asunto era ¿cómo?, comencé a adentrarme en el desarrollo de aplicaciones web para estos dispositivos, probé varias alternativas que incluían: iUI, rails_iui y tank_engine (los dos últimos cortesía de Noel Rappin (Por cierto me acabo de enterar que ha escrito como 3 libros!!!). Para resumir, ninguno me complació del todo, de repente, me encontré con jQTouch en Ajaxian, el asunto era que no era fácil hacer la demostración de Rails y jQTouch sin un plugin, así que me animé a crearlo y tenerlo listo para el FLISOL. Además era algo importante para mí, ya que nunca había liberado un código fuente y era algo que simplemente debía hacer (antes tenía una camisa de fuerza cuando trabajaba en PDVSA).

Ok... basta de reseñas históricas, vamos a mostrar algunas funcionalidades de jQTouch.

Instalación

Para instalar rails_jqtouch, lo único que hay que hacer es descargarlo desde mi github, o más fácilmente, instalarlo directamente con script/plugin install desde un proyecto de Rails:

script/plugin install git://github.com/rrodrigu3z/rails_jqtouch.git

rails_jqtouch incluye varias tareas rake que facilitan, por ejemplo, la copia de los archivos de jQTouch (javascripts, imágenes, stylesheets, etc) dentro de los directorios correctos del proyecto. En este sentido, el siguiente paso es ejecutar:

rake rails_jqtouch:install

Algunas de las otras tareas disponibles son (ejecutar rake -T para ver todas):

rake rails_jqtouch:jqtouch_version  # Show jQTouch version included
rake rails_jqtouch:clean            # Delete all installed files

Uso: Controladores

Al igual que rails_iui, rails_jqtouch puede reconocer los requests provenientes de navegadores Mobile Safari, para ello se debe incluir en el controlador deseado o en el ApplicationController lo siguiente:

acts_as_iphone_controller

Con esto, habilitamos al controlador para que pueda incluirse la opción :iphone dentro de bloques respond_to, por lo que podemos crear templates con nombres tipo xxxx.iphone.erb.

Ejemplo:

class TareasController < ApplicationController
  acts_as_iphone_controller

  # GET /tareas
  # GET /tareas.iphone
  # GET /tareas.xml
  def index
    @tareas = Tarea.all

    respond_to do |format|
      format.html     # index.html.erb
      format.iphone   # index.iphone.erb
      format.xml  { render :xml => @tareas }
    end
  end

  # Otras acciones ...

end

Uso: Helpers y Vistas

rake rails_jqtouch:install también copia un layout de ejemplo en app/views/layouts/application.iphone.erb, el cual puede ser ser personalizado según las necesidades:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
         "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>Rails JQTouch</title>

    <%= stylesheet_link_tag "jqt/jqtouch" %>
    <%= javascript_include_tag "jquery-1.3.2.min", "jqtouch.min" %> 
    <%= jqtouch_init :status_bar => "black-translucent" %>
</head>
<body>
  <%= yield %>
</body>
</html>

Con jqtouch_init se puede configurar el comportamiento de jQTouch, para detalles de las opciones soportadas, ver la documentación de jQTouch (aunque no hay mucha que se diga aún).

Jqtouch::MobileHelper define helpers que son incluidos de manera automática, y que facilitan la escritura de los templates, los detalles están en la documentación del código. Algunos ejemplos de uso también se pueden ver en los tests. De todas formas colocaré algunos ejemplos y formas de uso aquí en el blog.

<% mobile_page 'home', :selected => true do  %>
  <% mobile_toolbar 'jQTouch' do %>
    <%= mobile_button_to "About", '#about', :effect => 'slideup' %>
  <% end %>

  <%= mobile_list [
      {:name => "Features", :url => "#features"},
      {:name => "Demos", :url => "#demos"},
      {:name => "Docs", :url => "docs.html"},
      {:name => "License", :url => "#license"},
      {:name => "Download &raquo;", :url => "http://www.jqtouch.com/", :target => "_self"} ]  %>

<% end %>


<% mobile_panel 'about' do %>
  <% mobile_pad :style => 'padding-top: 80px' do %>
    <p>jQTouch was created by David Kaneda as a means of easily creating iPhone-styled websites. 
    It is released open source, under the MIT license. It is still in its early stages of development 
    and is currently lacking in documentation. 
    For more information about jQTouch, please contact 
    <a href="http://twitter.com/davidkaneda/">David on Twitter, @davidkaneda.</a></p>

    <%= mobile_back_button 'Close', :class => "grayButton"  %>
  <% end %> 
<% end %>

El listado anterior es un fragmento adaptado con rails_jqtouch del index.html incluido como ejemplo con jQTouch. Algunos de los helpers incluidos en rails_jqtouch son:

  • mobile_page: Genera el wrapper para una página, referenciada por un id.
  • mobile_pad: Genera un div con la clase pad, que sirve de contenedor de elementos de formulario, texto, entre otros.
  • mobile_panel: Es como mobile_page, pero le agrega al div resultante la clase panel.
  • mobile_fieldset: Genera un fieldset, que sirve de contenedor de mobile_rows.
  • mobile_row: Genera un div con la clase row que se utiliza como contenedor de elementos de formulario.
  • mobile_toolbar: Genera la barra de herramientas.
  • mobile_button_to: Genera un botón con los estilos deseados.
  • mobile_back_button_to: Genera un botón para devolverse, útil para ser usado en el toolbar.
  • mobile_list: Genera una lista, típica de aplicaciones para móviles, se puede especificar el nombre y url de cada item.

Como mencioné antes, la documentación está mucho mejor en el código, por lo que pueden generarla con rdoc. Si tengo tiempo, la subo en estos días a algún subdominio para que esté en línea.

Bueno, espero que este plugin sea de utilidad, no soy un experto en desarrollo para dispositivos móviles, pero espero sus comentarios, sugerencias, mejoras, etc. Además, es mi primer código que libero, así que sean gentiles!!! (por si ven algún mamarracho...).

Saludos! y estén pendientes para la siguiente parte de Rails + iPhone.

1

Sobre COTECSO

Somos un equipo pragmático, desarrollamos software de manera ágil y elegante, nos gusta la tecnología, la simplicidad y las cosas bien hechas.
Cerrar