UnAngelo blog

…se io fossi un angelo
Subscribe

Archive for the ‘1’

Wikipedia:Comunicato 4 ottobre 2011 – Wikipedia

October 04, 2011 By: (author unknown) Category: 1, Italia

Shared by ianus
...leggi italiane... DEL CAZZO!

Cara lettrice, caro lettore,

in queste ore Wikipedia in lingua italiana rischia di non poter più continuare a fornire quel servizio che nel corso degli anni ti è stato utile e che adesso, come al solito, stavi cercando. La pagina che volevi leggere esiste ed è solo nascosta, ma c'è il rischio che fra poco si sia costretti a cancellarla davvero.

Il Disegno di legge - Norme in materia di intercettazioni telefoniche etc., p. 24, alla lettera a) recita:

«Per i siti informatici, ivi compresi i giornali quotidiani e periodici diffusi per via telematica, le dichiarazioni o le rettifiche sono pubblicate, entro quarantotto ore dalla richiesta, con le stesse caratteristiche grafiche, la stessa metodologia di accesso al sito e la stessa visibilità della notizia cui si riferiscono.»

Negli ultimi 10 anni, Wikipedia è entrata a far parte delle abitudini di milioni di utenti della Rete in cerca di un sapere neutrale, gratuito e soprattutto libero. Una nuova e immensa enciclopedia multilingue, che può essere consultata in qualunque momento senza spendere nulla.

Oggi, purtroppo, i pilastri di questo progetto — neutralità, libertà e verificabilità dei suoi contenuti — rischiano di essere fortemente compromessi dal comma 29 del cosiddetto DDL intercettazioni.

Tale proposta di riforma legislativa, che il Parlamento italiano sta discutendo in questi giorni, prevede, tra le altre cose, anche l'obbligo per tutti i siti web di pubblicare, entro 48 ore dalla richiesta e senza alcun commento, una rettifica su qualsiasi contenuto che il richiedente giudichi lesivo della propria immagine.

Purtroppo, la valutazione della "lesività" di detti contenuti non viene rimessa a un Giudice terzo e imparziale, ma unicamente all'opinione del soggetto che si presume danneggiato.

Quindi, in base al comma 29, chiunque si sentirà offeso da un contenuto presente su un blog, su una testata giornalistica on-line e, molto probabilmente, anche qui su Wikipedia, potrà arrogarsi il diritto — indipendentemente dalla veridicità delle informazioni ritenute offensive — di chiederne non solo la rimozione, ma anche la sostituzione con una sua "rettifica", volta a contraddire e smentire detti contenuti, anche a dispetto delle fonti presenti.

In questi anni, gli utenti di Wikipedia (ricordiamo ancora una volta che Wikipedia non ha una redazione) sono sempre stati disponibili a discutere e nel caso a correggere, ove verificato in base a fonti terze, ogni contenuto ritenuto lesivo del buon nome di chicchessia; tutto ciò senza che venissero mai meno le prerogative di neutralità e indipendenza del Progetto. Nei rarissimi casi in cui non è stato possibile trovare una soluzione, l'intera pagina è stata rimossa.

Dichiarazione Universale dei Diritti dell'Uomo
Articolo 27

«Ogni individuo ha diritto di prendere parte liberamente alla vita culturale della comunità, di godere delle arti e di partecipare al progresso scientifico e ai suoi benefici.

Ogni individuo ha diritto alla protezione degli interessi morali e materiali derivanti da ogni produzione scientifica, letteraria e artistica di cui egli sia autore.»

L'obbligo di pubblicare fra i nostri contenuti le smentite previste dal comma 29, senza poter addirittura entrare nel merito delle stesse e a prescindere da qualsiasi verifica, costituisce per Wikipedia una inaccettabile limitazione della propria libertà e indipendenza: tale limitazione snatura i principi alla base dell'Enciclopedia libera e ne paralizza la modalità orizzontale di accesso e contributo, ponendo di fatto fine alla sua esistenza come l'abbiamo conosciuta fino a oggi.

Sia ben chiaro: nessuno di noi vuole mettere in discussione le tutele poste a salvaguardia della reputazione, dell'onore e dell'immagine di ognuno. Si ricorda, tuttavia, che ogni cittadino italiano è già tutelato in tal senso dall'articolo 595 del codice penale, che punisce il reato di diffamazione.

Con questo comunicato, vogliamo mettere in guardia i lettori dai rischi che discendono dal lasciare all'arbitrio dei singoli la tutela della propria immagine e del proprio decoro invadendo la sfera di legittimi interessi altrui. In tali condizioni, gli utenti della Rete sarebbero indotti a smettere di occuparsi di determinati argomenti o personaggi, anche solo per "non avere problemi".

Vogliamo poter continuare a mantenere un'enciclopedia libera e aperta a tutti. La nostra voce è anche la tua voce: Wikipedia è già neutrale, perché neutralizzarla?

Gli utenti di Wikipedia

Turn Pax Rails into Sliding Doors

October 04, 2011 By: Jules Category: 1


Materials: Besta Rails, Shower Clamps, Ikea cabinet handle, Plexiglas sheets

Description: Removed all conventional doors in my house. I hung 70" BESTA rails ($25)over the door openings. I then used shower door clamps ($6.each) to slide into the Besta railing. I had my local plastics company cut me a 1/2 inch sheet of frosted Plexiglas with beveled edges ($90). I also had them put holes in the Plexiglas for the Ikea cabinet handle.


~ gr8vines, San Diego

iPhone 5 'on sale on 14 October' | Technology | guardian.co.uk

October 04, 2011 By: (author unknown) Category: 1

Shared by ianus
An all-new iPhone 5, and an "iPhone 4S
Thanks to http://www.guardian.co.uk/technology/2011/oct/04/iphone-5-on-sale-14-october#
iPhone 5 launch
The iPhone 5 is to go on sale on 14 October, according to mobile network sources

Mobile phone networks have been told to expect two new iPhones and announce prices on Thursday, with the first phones available only in-store on Friday 14 October.

Negotiations with Apple over pricing will begin at 6pm this evening, when Tim Cook takes the stage for his first product launch as chief executive.

"All we know is, there will be two devices, we will put our pricing in to Apple as soon as Tim Cook goes on stage, and we hope to get agreement to announce prices on Thursday," said a source at one UK operator, who also confirmed the 14 October shipping date.

Kindle Fire, el nuevo tablet de Amazon costará 199 dólares, pero sólo en EEUU

September 28, 2011 By: (author unknown) Category: 1, españa

Shared by ianus
Thanks to: http://www.xataka.com/tablets/kindle-fire-el-nuevo-tablet-de-amazon-costara-199-dolares-pro-solo-en-eeuu

Amazon por fín ha puesto punto y final a las especulaciones sobre su nuevo tablet con el lanzamiento, hace sólo unos minutos del Kindle Fire, su primer tablet. La compañía apunta directamente al corazón del iPad con un precio de sólo 199 dólares. La mala noticia es que, de momento, sólo saldrá a la venta en Estados Unidos. En España habrá que esperar a que estén en funcionamiento todos los servicios online de música, vídeo en streaming o almacenamiento.

Técnicamente, el Kindle Fire es un tablet con pantalla de 7 pulgadas y una variante del sistema operativo Android especialmente cocinada por Amazon. También tiene, por supuesto, acceso privilegiado a la Amazon App Store y vendrá con 30 días gratuitos de acceso a la subscripción premium de la compañía.

Aún no se conocen todos los detalles técnicos de este tablet, pero los pocos que se conocen son muy prometedores. Empecemos por su pantalla, una IPS de 7 pulgadas con una densidad de píxel de 169ppp que debería traducirse en una resolución de, al menos, 720p. La pantalla es multitáctil y está protegida con cobertura GorillaGlass.

Bajo la pantalla encontramos un procesador de doble núcleo a, suponemos, 1Ghz. La memoria interna será de 8GB no ampliables, pero dispondrá de acceso ilimitado a Amazon Cloud Storage. Físicamente, el Kindle Fire es un poco más grande que el Kindle 3G. No se han detallado dimensiones, pero sí que su peso es de 414 gramos.

Kindle Fire

Comic for September 25, 2011

September 25, 2011 By: (author unknown) Category: 1

Tags: ,

Las mejores aplicaciones para controlar el Wifi de tu Android

September 14, 2011 By: orion Category: 1, españa, google




Sin duda el WiFi es la principal conexión inalámbrica que usamos en nuestro Android, y llega un punto en que es necesario tener un control absoluto sobre ella. Con las aplicaciones que os presentamos hoy podréis gestionar, controlar y administrar el WiFi de vuestro Android sin límites. No os perdáis estas cuatro geniales aplicaciones tras el corte.

WiFi Finder



Con WiFi Finder podremos buscar de entre una base de datos de más de 500,000 redes WiFi abiertas en 144 países para poder conectarnos a ellas. Todas las redes WiFi en la base de datos de WiFi Finder son de acceso público y gratuito, y lo mejor de todos, es que son accesibles sin necesidad de tener conexión a internet, por lo que vayamos donde vayamos podremos saber cual es la red WiFi más cercana sin necesidad de activar nuestra tarifa de datos en Roaming.



WiFi Analyzer

WiFi Analyzer es una potente herramienta con la que podremos medir la calidad de las diferentes redes WiFi que esten a nuestro alrededor, pudiendo medir la intensidad de estas redes, el tráfico que están llevando a cabo y el número de usuarios que están usando dicha red.




Gracias a WiFi Analyzer, podremos conectarnos a la red que esté más vacía, con menos tráfico y con mejor señal, para así tener la mejor experiencia posible con nuestra conexión WiFi.

Wifi Analyzer se puede descargar directamente desde el Android Market de forma gratuita y requiere de Android 1.5+ para funcionar.

GOWEX WiFi Free



GOWEX WiFi Free es una buena recopilación de hotspots WiFi gratuitos en España. Cuenta con miles de puntos de acceso repartidos por todo el pais y con su localización exacta, de forma que estemos donde estemos del pais, podremos saber cual es el punto de acceso más cercano






WiFi Manager

WiFi Manager es una completísima aplicación de gestión de las redes WiFi a nuestro alcance. Funciona principalmente a través de los widgets que incorpora la aplicación, que en muy poco espacio en el escritorio de nuestro Android nos ofrecerá mucha información y todo aquello que necesitamos saber sobre las redes WiFi a nuestro alcance.


Con WiFi Manager también podremos buscar redes inalámbricas cercanas abiertas, y con su modo radar podremos comprobar cual es la que nos 0frece una mejor intensidad de señal y conexión. En cuanto a los widgets, la aplicación viene con dos. El primero de ellos nos ofrece una información detallada del estado de nuestra conexión WiFi y el segundo nos permitirá cambiar entre nuestras redes WiFi preferidas con tan solo un “click”.

WiFi Manager está disponible en el Android Market de forma gratuita y requiere de Android 1.6+ para funcionar.

Amazon.es empieza a funcionar, llega el día del Juicio Final al comercio electrónico español

September 14, 2011 By: no-reply@microsiervos.com (Wicho) Category: 1, españa, juegos, libros

Página principal de Amazon.es

Tras años de espera –mi primer pedido a Amazon.com es de septiembre de 1996 y creo que desde entonces estoy enganchado– desde hace un minuto por fin está en funcionamiento Amazon.es.

Así que por fin los que nos dedicábamos a hacer pedidos y recomendar las tiendas de Amazon de los Estados Unidos y del Reino Unido disponemos de una alternativa más cercana en la que tan siquiera necesitaremos darnos de alta de nuevo y que no se verá sometida al azar del proceso de pasar por aduana como sucedía con los pedidos a EEUU.

Categorías Amazon.esIgual que su progenitora ha cambiado en todos estos años y ha dejado de ser sólo la mayor librería de Internet, Amazon en España no sale sólo con libros en todas las lenguas oficiales del país y en inglés y otros idiomas.

También incorpora las categorías de cine, series y música, informática, videojuegos, electrónica de consumo, pequeños electrodomésticos, juguetes y relojes, con un catálogo que hará palidecer el de más de uno de sus competidores en cuanto a su extensión, que según la carta de presentación de Jezz Bezos, fundador de Amazon, está formado entre otras cosas por 2,5 millones de libros en español, 130.000 DVD, 450.000 CD y unos 65.000 gadgets.

Sin embargo, y dado que en España el precio de los libros está regulado por la Ley 10/2007, de 22 de junio, de la lectura, del libro y de las bibliotecas, Amazon no podrá realizar aquí el tipo de ofertas a las que nos tiene acostumbrados en cuanto al precio de estos, aunque sí en sus otras líneas de producto y en libros de editoriales no españolas.

Pero en cualquier caso, y teniendo en cuenta lo mal que lo ha estado haciendo su competencia, y este no es más que un ejemplo de muchos, puede que no lo necesite.

Amazon ha visto claro que las cuando menos curiosas políticas de gastos de envío de su competencia y su escasa habilidad a la hora de cumplir plazos de entrega le dan una enorme oportunidad de diferenciarse, y ahí está una de sus apuestas principales en nuestro país.

Tarifas de envío a España

Para empezar, los gastos de envío estándar son unos más que competitivos 2,99 euros por envío –independientemente del número de ítems que este incluya– con un plazo de entrega de 3 a 5 días.

La opción de 2 a 3 días sube a los 5,99 euros, mientras que la de 1 día son 8,99 euros, siempre por envío.

La principal salvedad es que para las Islas Canarias, Ceuta y Melilla la única opción que ofrecerá es la de envío estándar de 3 a 5 días, pero sin sobrecoste alguno, algo que los habitantes de esos lugares están más que acostumbrados a sufrir.

Por otro lado, si un pedido incluye libros por un valor de 19 euros o más, los gastos de envío estándar para estos serán gratis, aunque se seguirán pagando los gastos de envío correspondientes al resto de los ítems del pedido si los hubiera.

Amazon Premium

Y también está la posibilidad de contratar Amazon Premium para los envíos al territorio nacional, que por 14,95 euros al año da gastos de envío gratis en todos los pedidos del año, salvo en el caso de que se opte por el servicio de 24 horas, en cuyo caso el coste de este pasa a ser de 2,99 euros.

Amazon España también enviará pedidos al resto del mundo, aunque con ciertas limitaciones, pues no enviará productos electrónicos y pequeños electrodomésticos, juguetes y relojes fuera de Europa.

En este caso, los envíos estándar son de 6 euros por pedido a Europa y latinoamérica, y de 14 a Brasil, Estados Unidos y Japón, aunque los plazos de entrega son un poco más largos, mientras que los express serán de 14 euros a la Unión Europea y 20 euros al resto del mundo.

Amazon España tiene además también preparada su red de distribución para asegurarse de que los envíos llegan en el tiempo estipulado, otro factor muy importante en la satisfacción del cliente.

Para esto, cuentan con dos transportistas que se encargarán de hacer llegar los pedidos a los clientes independientemente de donde estén los artículos que los formen en los centros de distribución que la empresa tiene por toda Europa.

Así, es posible que un pedido se entregue dividido en dos paquetes, que incluso podrían no llegar en el mismo día, pero siempre sin coste adicional alguno.

Finalmente, en cuanto a atención al cliente, Amazon.es tendrá un centro de atención propio en español, no subcontratado, con el que tienen como objetivo mantener el estándar de empresa con mejor atención al cliente.

Si hay que poner un pero a esta gran noticia es que en el lanzamiento de Amazon.es faltan los libros electrónicos para su plataforma Kindle.

Obviamente a estas alturas esto no es por problemas técnicos de ningún tipo ni por deseo de Amazon, sino porque las negociaciones pertinentes con las editoriales involucradas no están todavía terminadas, pero todo parece indicar que sólo es cuestión de meses que la situación cambie.

Cesta de la compra de Amazon.es

Así que ha llegado el momento de la verdad para el comercio electrónico en España, y salvo meritorias y escasísimas excepciones que hace años que lo están haciendo bien, va a pillar a muchos con los pantalones bajados.

Más de un gran nombre tendrá que ponerse las pilas –y mucho– si pretende estar a la altura en servicio y amplitud de catálogo de Amazon.

Y por fin se demostrará de una vez que si el comercio electrónico en España no ha crecido en la forma deseada no es precisamente por culpa de los compradores; comprar los regalos de estas navidades va a ser sin duda mucho más fácil.

Por mi parte, no puedo más que decir que: «¡Por fin!»

# Enlace Permanente

Microsiervos { Ecología + Fotografía + Juegos + Ciencia + Internet + Aviones + WTF }

Thinking Like a Web Designer

September 13, 2011 By: Tim Bray Category: 1

[This post is by Roman Nurik, who is passionate about icons, with input from me and a bunch of the Framework engineers. —Tim Bray]

The number of people working on mobile apps, and specifically Android, is growing fast. Since modern mobile software-development is a relatively new profession, the community is growing by sucking in experts from related domains, one being web design and development.

It turns out that familiarity with web UI development, particularly using modern HTML5 techniques, can be a great primer for Android UI development. The Android framework and SDK have many analogues to tools and techniques in the Web repertoire of HTML, CSS, and JavaScript.

In this blog post, we’ll walk through a few web development features and look for matches in the world of Android UI development.

Device resolutions and physical sizes

One of the most important aspects of both Android UI design and web design is support for multiple screen resolutions and physical sizes. Just as your web app needs to work on any physical display and inside any size browser window, your native app needs to run on a variety of form factors, ranging from 2.5” phones to 10” tablets to (possibly) 50” TVs.

Let’s look at some ways in which CSS and Android allow for flexible and adaptive layouts.

Providing custom layouts for different resolutions

CSS3 media queries allow developers to include additional stylesheets to target different viewport and screen configurations. For example, developers can provide additional style rules or override existing styles for mobile devices. Although the markup (layout hierarchy) remains the same, CSS3 has several sophisticated techniques for completely transforming the placement of elements with different stylesheets.

Android has long offered a similar mechanism in resource directory qualifiers. This extends to many different types of resources (layouts, images or ‘drawables’, styles, dimensions, etc). Thus you can customize the view hierarchy as well as styling depending on device form factor, A base set of layouts for handsets can be extended for tablets by placing additional layouts in res/layout-xlarge or res/layout-sw600dp (smallest width 600 density-independent pixels) directories. Note that the latter syntax requires Android 3.2 or later.

Below is a CSS3 example of how one could hide a ‘left pane’ on smaller devices and show it on screens at least 600 pixels wide:

#leftPane {
  display: none;
}

@media screen and (min-device-width:600px) {
  #leftPane {
    display: block;
  }
}

The same could be accomplished on Android using multiple layout directories:

res/layout/foo.xml:

<FrameLayout>
  <!-- a single pane -->
  <View android:id="main_pane">
</FrameLayout>

res/layout-sw600dp/foo.xml:

<LinearLayout android:orientation="horizontal">
  <!-- two panes -->
  <View android:id="left_pane">
  <View android:id="main_pane">
</LinearLayout>

As a side note, if you plan on creating multi-pane layouts, consider using fragments, which help break up your screens into modular chunks of both layout and code.

There are also other neat ways of using resource directory qualifiers. For example, you could create values/dimens.xml and values-sw600dp/dimens.xml files specifying different font sizes for body text, and reference those values in your layouts by setting android:textSize="@dimen/my_body_text_size". The same could be done for margins, line spacing, or other dimensions to help manage whitespace on larger devices.

‘Holy grail’ layouts

Web developers have long dreamt of an easy way to build a ‘holy grail’ 5-pane layout (header/footer + 3 vertical columns). There are a variety of pre-CSS3 tricks including position:fixed, float:left, negative margins, and so on, to build such layouts but CSS3 introduced the flexible box module, which simplifies this tremendously.

Figure: An archetypal “holy grail” layout

It turns out that grail is pretty holy for Android tablet apps, too, and in particular for tablets held sideways in landscape mode. A good approach involves the use of LinearLayout, one of the simplest and most popular of the Android layouts.

LinearLayout has this neat way to stretch its children to fit the remaining space, or to distribute available space to certain children, using the android:layout_weight attribute. If a LinearLayout has two children with a fixed size, and another child with a nonzero layout_weight, that other child view will stretch to fill the remaining available space. For more on layout_weight and other ways to make layouts more efficient (like switching from nested LinearLayouts to RelativeLayout), check out Layout Tricks: Creating Efficient Layouts.

Let’s take a look at some example code for implementing such a ‘holy grail’ layout on Android and on the web:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/container"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <!-- top pane -->
    <View android:id="@+id/top_pane"
        android:layout_width="match_parent"
        android:layout_height="50dp" />

    <LinearLayout android:id="@+id/middle_container"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal">

        <!-- left pane -->
        <View id="@+id/left_pane"
            android:layout_width="300dp"
            android:layout_height="match_parent" />

        <!-- center pane -->
        <View id="@+id/center_pane"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1" />

        <!-- right pane -->
        <View id="@+id/right_pane"
            android:layout_width="300dp"
            android:layout_height="match_parent" />

    </LinearLayout>

    <!-- bottom pane -->
    <View android:id="@+id/bottom_pane"
        android:layout_width="match_parent"
        android:layout_height="50dp" />

</LinearLayout>

Note: Android tablet apps in landscape will generally show an action bar as the top pane and will usually have neither a right nor bottom pane. Also note that the action bar layout is automatically provided by the framework as of Android 3.0, and thus you don’t need to worry about positioning it.

And here’s an example implementation using the CSS3 flexible box model; notice the similarities:

<style>
  html, body { margin: 0; height: 100%; }

  #container {
    height: 100%;
    display: -webkit-box; /* like LinearLayout */
    display:    -moz-box;
    -webkit-box-orient: vertical; /* like android:orientation */
       -moz-box-orient: vertical;
  }

  #top, #bottom { height: 50px; }

  #middle {
    -webkit-box-flex: 1; /* like android:layout_weight */
       -moz-box-flex: 1;
    display: -webkit-box;
    -webkit-box-orient: horizontal;
       -moz-box-orient: horizontal;
  }

  #left, #right { width: 300px; }

  #center {
    -webkit-box-flex: 1;
       -moz-box-flex: 1;
  }
</style>

<div id="container">
  <div id="top"></div>
  <div id="middle">
    <div id="left"></div>
    <div id="center"></div>
    <div id="right"></div>
  </div>
  <div id="bottom"></div>
</div>

Layered content

In CSS, with position:absolute, you can overlay your UI elements. On Android, you can use FrameLayout to achieve this. The child views in a frame layout are laid out on top of each other, with optional layout_gravity attributes indicating alignment with the parent frame layout.

Below is a contrived example of a FrameLayout with three children.

Figure: Example FrameLayout with three children (2 with top-left and 1 bottom-right alignment)

Figure: Isometric view of the example FrameLayout and its children.

The code for this example is as follows:

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="300dp"
    android:layout_height="200dp">

    <!-- bottom-most child, with bottom-right alignment -->
    <View android:layout_gravity="bottom|right"
        android:layout_width="100dp"
        android:layout_height="150dp" />

    <!-- middle child, with top-left alignment -->
    <View android:layout_gravity="top|left"
        android:layout_width="200dp"
        android:layout_height="175dp" />

    <!-- top-most child, with top-left alignment →
    <!-- also stretched to fill vertically -->
    <View android:layout_gravity="top|left"
        android:layout_width="100dp"
        android:layout_height="match_parent" />

</FrameLayout>

Scrollable content

HTML, by default, flows in reading order and scrolls vertically. When content extends beyond the bottom of the browser, scrollbars automatically appear. Content panes can also be made individually scrollable using overflow:scroll or overflow:auto.

Android screen content isn’t scrollable by default. However, many content Views such as ListView and EditText offer scrolling, and any layout can be made scrollable by wrapping it in a ScrollView or HorizontalScrollView.

It’s also possible to add custom scrolling to views by using methods like View.scrollTo and helpers like Scroller in response to touch events. And for horizontal, snap-to-page-bounds scrolling, one can use the excellent new ViewPager class in the support library.

Below is an example of a ScrollView containing a single TextView child and the code needed to implement something like this.

Figure: A TextView inside a ScrollView, scrolled about half way.


<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <!-- the scrollable content -->
    <TextView android:layout_gravity="bottom|right"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:padding="32dp"
        android:textSize="48sp"
        android:text="The\nquick\nbrown\nfox\njumps\nover..." />

</ScrollView>

Custom layouts

Sometimes the positioning and layout behaviors you can achieve with CSS aren’t enough to achieve your desired layout. In those cases, developers fall back on JavaScript coupled with absolute positioning to place and size elements as needed.

Programmatically defined layouts are also possible on Android. In fact, they’re sometimes the most elegant and/or performant way of implementing a unique or otherwise tricky layout. Not happy with nesting LinearLayouts for implementing a 2x3 grid of navigation icons? Just extend ViewGroup and implement your own layout logic! (see an example DashboardLayout here). All the built-in layouts such as LinearLayout, FrameLayout, and RelativeLayout are implemented this way, so there generally aren’t the same performance implications with custom layouts as there are with scripted layout on the web.

Device densities

Web designers have long dealt with the reality that display densities vary, and that there wasn’t much they could do about it. This meant that for a long time web page graphics and UI elements had different physical sizes across different displays. Your 100px wide logo could be 1” wide on a desktop monitor or ¾” on a netbook. This was mostly OK, given that (a) pointing devices such as mice offered generally good precision in interacting with such elements and (b) browsers allowed visually-impaired users to zoom pages arbitrarily.

However, on touch-enabled mobile devices, designers really need to begin thinking about physical screen size, rather than resolution in pixels. A 100px wide button on a 120dpi (low density) device is ~0.9” wide while on a 320dpi (extra-high density) screen it’s only ~0.3” wide. You need to avoid the fat-finger problem, where a crowded space of small touch targets coupled with an imprecise pointing tool (your finger) leads to accidental touches. The Android framework tries really hard to take your layout and scale elements up or down as necessary to work around device-density differences and get a usable result on a wide range of them. This includes the browser, which scales a 160px <img> at 100% browser zoom up to 240px on a 240dpi screen, such that its physical width is always 1”.

Developers can achieve finer-grained control over this browser scaling by providing custom stylesheets and images for different densities, using CSS3 media query filters such as -webkit-max-device-pixel-ratio and <meta> viewport arguments such as target-densitydpi=device-dpi. For an in-depth discussion on how to tame this mobile browser behavior see this blog post: Pixel-perfect Android web UIs.

For native Android apps, developers can use resource directory qualifiers to provide different images per density (such as drawable-hdpi and drawable-mdpi). In addition, Android offers a special dimension unit called ‘density independent pixels’ (dp) which can (and should!) be used in layout definitions to offset the density factors and create UI elements that have consistent physical sizes across screens with different densities.

Features you don’t have out of the box

There are a few features that web designers and developers rely on that aren’t currently available in the Android UI toolkit.

Developers can defer to user-driven browser zooming and two-dimensional panning for content that is too small or too large for its viewport, respectively. Android doesn’t currently provide an out-of-the-box mechanism for two-dimensional layout zooming and panning, but with some extra legwork using existing APIs, these interactions are possible. However, zooming and panning an entire UI is not a good experience on mobile, and is generally more appropriate for individual content views such as lists, photos, and maps.

Additionally, vector graphics (generally implemented with SVG) are gaining in popularity on the Web for a number of reasons: the need for resolution independence, accessibility and ‘indexability’ for text-heavy graphics, tooling for programmatic graphic generation, etc. Although you can’t currently drop an SVG into an Android app and have the framework render it for you, Android’s version of WebKit supports SVG as of Android 3.0. As an alternative, you can use the very robust Canvas drawing methods, similar to HTML5’s canvas APIs, to render vector graphics. There are also community projects such as svg-android that support rendering a subset of the SVG spec.

Conclusion

Web developers have a number of different tools for frontend layout and styling at their disposal, and there are analogues for almost all of these in the world of Android UI engineering. If you’re wondering about analogues to other web- or CSS-isms, start a conversation out there in the Android community; you’ll find you’re not alone.

Por prometer, que no quede

September 07, 2011 By: Ignacio Escolar Category: 1, españa

España necesitó los 10 años de crecimiento y burbuja inmobiliaria de 1995 a 2005 para crear 6,4 millones de empleos, así que si alguien te promete crear 3,5 millones de empleos en 4 años que empiezan con uno de estancamiento, en realidad te está llamando idiota.

Susomán, en los comentarios

Ducati – Diavel AMG Special Edition

September 06, 2011 By: (author unknown) Category: 1

Shared by ianus
...quien me la regala?
Thanks to: http://www.ducati.es/news/diavel_amg_special_edition/2011/09/05/2245/index.do
Ducati y Mercedes AMG se enorgullecen de presentar la Ducati Diavel AMG Special Edition durante la celebración de la 64º edición del International Motor Show de Frankfurt, Alemania del 15 al 25 de Septiembre. El buque insignia de la familia Diavel en 2012 supone un tributo a la ma...
Tags: , , , ,