Programando webs para iPhone e iPod Touch

Os dejo una serie de consejos muy útiles para que no tengáis problemas en el desarrollo de sitios web para iPhone. La fuente original en inglés es CatsWhoCode.

Detectar si es iPhone o iPodTouch utilizando JavaScript

if((navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i))) {
    if (document.cookie.indexOf("iphone_redirect=false") == -1) {
        window.location = "http://m.espn.go.com/wireless/?iphone&i=COMR";
    }
}

Detectar si es iPhone o iPodTouch utilizando PHP

if(strstr($_SERVER['HTTP_USER_AGENT'],'iPhone') || strstr($_SERVER['HTTP_USER_AGENT'],'iPod')) {
    header('Location: http://yoursite.com/iphone');
    exit();
}

Definir la anchura del iPhone como el viewport

<meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0;"&mt;

Insertar un icono específico para iPhone

<rel="apple-touch-icon" href="images/template/engage.png"/>

Prevenir que Safari ajuste automáticamente el tamaño del texto al rotar

html, body, form, fieldset, p, div, h1, h2, h3, h4, h5, h6 {
    -webkit-text-size-adjust:none;
}

Detectar la orientación del iPhone

window.onload = function initialLoad() {
    updateOrientation();
}

function updateOrientation(){
    var contentType = "show_";
    switch(window.orientation){
        case 0:
	contentType += "normal";
	break;

	case -90:
	contentType += "right";
	break;

	case 90:
	contentType += "left";
	break;

	case 180:
	contentType += "flipped";
	break;
    }
    document.getElementById("page_wrapper").setAttribute("class", contentType);
}

Aplicar estilos CSS sólo a iPhone e iPod

@media screen and (max-device-width: 480px){
    /* All iPhone only CSS goes here */
}

Cambiar el tamaño de las imágenes para iPhone e iPod automáticamente

@media screen and (max-device-width: 480px){
    img{
        max-width:100%;
        height:auto;
    }
}

Esconder la barra de herramientas por defecto

window.addEventListener('load', function() {
    setTimeout(scrollTo, 0, 0, 1);
}, false);

Utilizar enlaces de tipo especial

<a href="tel:12345678900">Call me</a>
<a href="sms:12345678900">Send me a text</a>

Simular: pseudo clase hover

a:hover, a.hover {
    /* whatever your hover effect is */
}

OkeyKo, mensajes gratis desde el móvil

No son exactamente SMS, y es que OkeyKo se presenta como un nuevo servicio, simple y al mismo tiempo compatible con todos los terminales con soporte Java, que nos permite comunicarnos como si un servicio de mensajería (tipo Messenger, GTalk, etc) pero especialmente orientado al envío de mensajes cortos.

Esta claro que OkeyKo no es una forma directa de enviar SMS ni se trata de una red de microblogging, también podemos encontrarnos en el mercado ciertas aplicaciones que podemos considerar similares, pero es que con este nuevo concepto podremos enviar mensajes a todos nuestros contactos que lo tengan instalado unicamente conociendo su nombre de usuario (@nombre_de_usuario). Es más, una de las ventajas que nos ofrece es que podremos enviar mensajes gratuitamente desde la Web, acceder a un listado de los mensajes enviados con anterioridad, a los recibidos (aunque los leyéramos desde nuestro móvil), e incluso compartir los mensajes que queramos en muros públicos, que sorprendentemente y para nuestro agrado, tienen una interfaz muy parecida a la de Twitter.

A pesar de que la interfaz resulta un poco simple a nivel visual, la aplicación cumple correctamente con su cometido, básicamente transmite una sensación de facilidad de uso que es muy de agradecer. Habrá que ver cómo evolucionan las futuras versiones de este prometedor proyecto que al parecer está teniendo una gran aceptación en su país de origen, Argentina. ¿Tendrá éxito en otros países?

Los mensajes de texto enviados, como ya hemos dicho, no son exactamente mensajes SMS, ya que serían mucho más caros. Para abaratar su coste hasta en un 99%, utilizan las redes GPRS, 3G y WiFi para envíar pequeños paquetes de datos a su servidor. Finalmente son recuperados del mismo cuando el destinatario accede con su cuenta desde su móvil o Internet (con lo que su protocolo de actuación sería similar al de una cuenta de correo).

Lo mejor de mi RSS del 15 al 21 de marzo

Disponible TuxInfo 25: “Instalación de distro Open Solaris. ¡Sencillo!”

Hace hoy un mes anunciábamos la llegada de Tux Info en su número 24, un mes después, os traemos el número 25 que tiene como tema central la instalación de OpenSolaris. Este es el índice del contenido:

  • Editorial.
  • Índice.
  • Pack TuxInfo 25. ¿Cómo obtenerlo?
  • Noticias del mes.
  • Revisiones – Revisión de notebook HP Pavilion dvd4-2028la.
  • Opinión – ¿Quién limita a los limitantes?
  • Nota de tapa – Instalación de distro OpenSolaris. ¡Sencillo!
  • Páginas recomendadas de TuxInfo.
  • Entrevista – Daniel Valfre. Intel y el software libre.
  • Internet – Probando Chromium OS.
  • Tips – ¡BURG! Reemplazando el GRUB por algo mejor.
  • Proyecto Fedora- Público Objetivo: ¿Es Fedora para todos?
  • IT – Orange HRM.
  • Programación móvil – Comenzando a programar para Symbian.
  • Rincón del lector – Informática educativa: GeoGebra.
  • Servidores – Cómo instalar de manera simple un GroupWise para tu empresa.

Y este el enlace a la descarga en PDF.

yEd, otro editor de diagramas web

No es la primera vez que desde este sitio os presentamos editores de diagramas en línea. Normalmente basados en tecnología Flash como Lovely Charts o Cacoo, esta vez os presentamos yEd una herramienta diferente por estar desarrollada con Java Web Start. Aunque en realidad ejecutéis la aplicación desde la web, la aplicación se descarga a vuestro equipo y se ejecuta gracias a la máquina de Java (por eso aunque sea una aplicación que se ejecuta local es multiplataforma).

Entre las cosas a destacar respecto a sus competidoras comentaros:

  • Tiene un interfaz más estándar. Lovely ChartsCacoo tienen un interfaz gráfico un tanto más novedoso, pero a la vez que puede resultar raro y menos funcional.
  • Permite guardar los diagramas en el disco local, sin restricción alguna. Lovely Charts por ejemplo limita a un sólo diagrama en la edición gratuita y además tienes que guardarlos en la web (exportarlos por supuesto sí podemos exportarlos a nuestro disco local en formato imagen tantos como tengamos).
  • Mayor variedad de diagramas a crear.
  • Más facilidad de uso (esto es una opinión personal pero creo que no seré el único).

Lo dicho, os recomiendo que lo probéis y que no hagáis muchos diagramas que ya es viernes y muchos están ya de puente, aunque espero que os facilite el día a día a partir de la semana que viene.

IronPython, una implementación de Python para Mono/.NET

Debido a que utilizo SharpDevelop, software libre para desarrollo .NET en plataformas Windows, en el trabajo hace tiempo ya descubrí que existía la posibilidad de hacer desarrollos para el intérprete de .NET/Mono en lenguaje Python. Posteriormente, hace no mucho viendo un vídeo de Miguel de Icaza, comprobé que el padre de Gnome también hablaba de esta misma posibilidad.

Pasado el tiempo y como veo que es un tema que puede interesar a muchos os presento a IronPython.

¿Qué es IronPython?

Es una implementación del intérprete de Python sobre en entorno de trabajo de .NET/Mono de forma que podemos compilar código Python a código intermedio CLI de entornos .NET/Mono con las ventajas que puede traernos ésto en entornos Windows.

Boo

Los que estéis metido dentro del mundo del software libre en plataformas Windows y sobre todo en el mundo del Proyecto Mono, conoceréis a Boo. Boo es un lenguaje de programación de la familia .NET/Mono con una sintaxis muy parecida a Python pero que no llega a ser exactamente igual. El desarrollador de Python se sentirá cómodo con Boo pero no llegará a poder compilar ni interpretar su código Python directamente.

IronPython

Con IronPython este problema no existe porque de hecho se pueden incluso compilar paquetes de Python, tal como pude leer hace dos días en el blog oficial de desarrollo de SharpDevelop. Las ventajas de usar IronPython son muchas y todo el que esté obligado a desarrollar en Windows por cualquier razón lo debería contemplar como una opción.

Aparte de las ventajas y de la facilidad que nos transmite Python tenemos a nuestra disposición las bibliotecas propias de .NET con las ventajas de integración y facilidad de desarrollo que esto supone en los sistemas de la factoría de Redmond.

Os dejo un enlace a la web oficial de IronPython y os invito a que probéis esta tecnología con el IDE libre para .NET/Mono en Windows, SharpDevelop.

TBO, Programa de creación de cómics (tira)

Para el cuarto concurso universitario de software libre he comenzado a desarrollar un aplicación de edición de cómics, y la última tira está dibujada con este programa.

tbo logo

El proyecto consiste en una herramienta de dibujo simple, dónde puedes añadir páginas, viñetas y objetos a las viñetas. La idea principal es que cualquiera pueda crear un cómic en cinco minutos sin necesidad de saber dibujar, simplemente arrastrando modelos al área de dibujo y añadiendo el texto a estos. Aquí se puede ver un screencast del proyecto funcionando.

El programa está escrito en C usando las librerías GTK+ y Cairo y está pensado para el escritorio gnome. Guarda los ficheros en un formato xml sencillo que puede ser tratado por otras herramientas y tiene la posibilidad de exportar los cómics a png, svg y pdf.

Ahora mismo sólo incluye un par de personajes, los de la tira de linuxhispano, pero añadir un personaje nuevo u objetos es muy simple, tan solo hay que crear una carpeta y dentro todas las subcarpetas que quieras que contengan ficheros .svg que serán los objetos que se importen.

Para colaborar, descargarselo o seguir el desarrollo podéis ir al proyecto en github http://github.com/danigm/tbo.

También estoy empezando a contactar con el proyecto gnome para que TBO sea un proyecto perteneciente a gnome, y proximamente empezaré a moverlo por las distribuciones, empezando por guadalinex, ubuntu, debian, etc. Si algún empaquetador de cualquier distribución lee esto y está interesado en colaborar le estaría muy agradecido.

Conversor de ficheros en línea

Las aplicaciones en línea cada vez ganan más espacio y hoy os traemos un ejemplo más. Se trata de un conversor de ficheros en línea que nos permite convertir, por ejemplo, un fichero ODT a un DOCX o un PSD a JPEG. Como podéis suponer las conversiones se realizan con parámetros por defecto, cuando son necesarios parámetros, pero para salir de un apuro es una gran opción. Su nombre es DocsPal y he llegado a ella gracias a un post aparecido en Kabytes.

La lista completa de conversiones permitidas es la siguiente (podéis verla también en este enlace):

Datos
CSV (Comma Separated Values) a HTML, ODS, PDF, TXT, XLS, XLSX
DOC (Microsoft Word Document) a DOCX, HTML, ODT, PDF, RTF, TXT
DOCX (Microsoft Word 2007 Document) a DOC, HTML, ODT, PDF, RTF, TXT
ODP (OpenDocument presentation) a PDF, PPT, PPTX, RTF
ODS (OpenDocument spreadsheet) a CSV, HTML, PDF, TXT, XLS, XLSX
ODT (OpenDocument Text Document) a DOC, DOCX, HTML, PDF, RTF, TXT
PPT (Microsoft Powerpoint Presentation) a ODP, PDF, PPTX, RTF
PPTX (Microsoft PowerPoint 2007 Presentation) a ODP, PDF, PPT, RTF
PDF (Portable Document Format) a DOC, DOCX, HTML, ODT, RTF, TXT
RTF (Rich Text Format) a DOC, DOCX, HTML, ODT, PDF, TXT
TXT (Text document ) a DOC, DOCX, HTML, ODT, PDF, RTF
XLS (Microsoft Excel Spreadsheet) a HTML, ODS, PDF, TXT, CSV, XLSX
XLSX (Microsoft Excel 2007 Spreadsheet) a HTML, ODS, PDF, TXT, CSV, XLS
Imágenes
BMP (Windows bitmap) a GIF, JP2, JPEG, PNG, PSD, TIFF, TGA
GIF (Compuserve graphics interchange) a BMP, JP2, JPEG, PNG, PSD, TIFF, TGA
JP2 (JPEG 2000 compliant image) a BMP, GIF, JPEG, PNG, PSD, TIFF, TGA
JPEG (JPEG compliant image) a BMP, GIF, JP2, PNG, PSD, TIFF, TGA
PNG (Portable Network Graphic) a BMP, GIF, JP2, JPEG, PSD, TIFF, TGA
PSD (Photoshop document) a BMP, GIF, JP2, JPEG, PNG, TIFF, TGA
TIFF (Tagged image file format) a BMP, GIF, JP2, JPEG, PNG, PSD, TGA
TGA (Truevision Targa Graphic) a BMP, GIF, JP2, JPEG, PNG, PSD, TIFF

Traje

RENFE en Android. Horarios del tren en nuestro terminal.

[caption id="attachment_1961" align="aligncenter" width="314" caption="RENFE en Android"][/caption]

Muchos de nuestros lectores (fuera de España) quizás no conozcan a la Red Nacional de los Ferrocarriles Españoles, RENFE para los amigos, y es que hoy navegando por la red me encuentro con la siguiente entrada en el blog de Jon Segador, el autor de la aplicación que nos permite consultar los horarios de trenes a través de nuestro terminal Android.

La aplicación sirve para toda España, eligiendo el núcleo urbano donde nos encontramos y seleccionando posteriormente nuestra estación de origen y la de destino. A través de esta consulta podremos ver en la pantalla de nuestro Android una lista de todos los horarios de trenes entre estas dos estaciones para el día de hoy.

El autor tiene plantes de incorporar próximamente que se pueda elegir el día de consulta de horarios, pero de momento cumple con su objetivo.

La aplicación es gratuita, la podeis descargar mediante el siguiente código QR o buscando "RENFE" en el Market (la que aparece como gratuita y desarrollada por Jon Segador).

[caption id="" align="aligncenter" width="210" caption="Código QR"][/caption]

Linux Q, la mejor manera de asesorar y ser asesorado sobre Linux

La verdad es que es algo que siempre he echado de menos en habla española, un sitio de preguntas y respuestas sobre problemas relacionados con Linux. La comunidad libre se caracteriza por ser extremadamente comunicativa y ayudar a todos los que tienen problemas, pero no había hasta ahora un medio que facilitara el intercambio de opinión.

El medio ya está aquí, se llama Linux Q y ha sido creado por el autor de rm -rf /. Está basado en la plataforma Qhub, un servicio web orientado a la creación de sitios de preguntas y respuestas. Lleva pocas horas en la red pero ya tiene bastante contenido, por lo que si tenéis dudas o sois capaces de responderlas, no dudéis en pasaros.

El podcast de Linux Hispano – #039 – Cambio de diseño en Ubuntu

¡Hola a todos!

Acaba de lanzarse el trigésimo noveno número de El podcast de Linux Hispano, un podcast quincenal sobre Linux y Software Libre.

Hoy trataremos principalmente del cambio de diseño de Ubuntu así como un análisis de los lenguajes de programación más populares.

GUIÓN:

Opinión: Cambio de diseño en Ubuntu.

Noticias comentadas:
Software Libre para tus propias redes sociales.
Hugo Chávez pide una regulación de Internet.
EyeOS 2.0.

Curiosidades: Análisis de los lenguajes de programación más populares.

Las canciones con licencia libre que se escuchan son Astaris y Leaving All Behind de Karsten Koch.

DESCÁRGATE LA VERSIÓN OGG.
DESCÁRGATE LA VERSIÓN MP3.
ESCÚCHALO ONLINE.

Gracias a todos los correos electrónicos que nos habéis enviado, así como los comentarios, lo hemos leído y contestado todos y gracias a ellos nos esforzamos por mejorar.

¡Espero la opinión de todos vosotros!

Por último, ¡no os olvidéis suscribíos a El podcast de Linux Hispano!

¡Muchas gracias!

[Resultados] La encuesta de la semana #13. Tu tarjeta gráfica

La encuesta de la semana #13. Tu tarjeta gráfica ya tiene los resultados publicados. Como consecuencia del campo otro en la pregunta sobre compatibilidad con vuestro sistema, a destacar las siguientes:

  • Problemas con el driver propietario**
  • Problemas cuando le conecto un monitor o una television al portatil
  • Es lento con efectos visuales
  • Bajo rendimiento
  • Es muy antigua y no hay drivers propietarios compatibles**

**Lo cual no tiene porqué ser un problema

Nuevamente, agradeceros vuestra colaboración. Aquí los resultados:

[caption id="attachment_1944" align="aligncenter" width="581" caption="La encuesta de la semana #13. Tu tarjeta gráfica"][/caption]

Lo mejor de mi RSS del 8 al 14 de marzo

Serial ATA – Maestro y esclavo

[caption id="attachment_1935" align="aligncenter" width="391" caption="SATA - Maestro y esclavo (WTF?)"][/caption]

Esta mañana he ido de compras y me he venido con dos discos duros SATA. Cuando llegué de vuelta me pregunté sobre si eran maestros o esclavos los discos, duda que me surgió a raíz de ver que en la revista de la tienda los diferenciaban, realmente no veía ninguna diferencia, las características eran las mismas pero el precio del esclavo era algo mayor que el del maestro.

Según las especificaciones no existen configuraciones para maestro/esclavo, a diferencia de IDE ó (P)ATA, la interfaz estándar antecesora. Dado que no lograba entenderlo, y con los discos ya funcionando (sin ningún problema), me decido a indagar un poco y resulta que, en efecto, las especificaciones son esas, no existe maestro/esclavo en Serial ATA, ¿y porqué veo esa diferenciación en una revista de informática?

Pues bien, resulta que no tiene nada que ver con la configuracion maestro/esclavo de los discos IDE, esto era necesario para colocar dos discos en un mismo cable. Y es que la mejora (entre otras) de los Serial ATA es que no existe este problema. En este caso se trata de una hazaña y manipulación de los impuestos por parte de la SGAE, y es que los discos esclavos (supuestamente destinados a datos) llevan un canon (WTF?), mientras que los discos maestros (supuestamente destinados al Sistema Operativo) no lo llevan, de ahí la diferencia de precio.

Mucha tela.


1 2 142 143 144 164 165