<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Iker Perez de AlbenizIker Perez de Albeniz - mi propio egolog sobre tecnología y frikadas varias</title>
	
	<link>http://www.ikeralbeniz.net</link>
	<description>mi propio egolog sobre tecnología y frikadas varias</description>
	<lastBuildDate>Mon, 23 Apr 2012 10:03:03 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/IkerPerezDeAlbeniz" /><feedburner:info uri="ikerperezdealbeniz" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item>
		<title>Control de dispositivos VISA a través de Ethernet en Linux</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/xLrNzPZsxO4/</link>
		<comments>http://www.ikeralbeniz.net/2012/04/23/control-de-dispositivos-visa-a-traves-de-ethernet-en-linux/#comments</comments>
		<pubDate>Mon, 23 Apr 2012 10:01:42 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[Manuales]]></category>
		<category><![CDATA[agilent]]></category>
		<category><![CDATA[anritsu]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[ethernet]]></category>
		<category><![CDATA[hp]]></category>
		<category><![CDATA[libreria]]></category>
		<category><![CDATA[visa]]></category>
		<category><![CDATA[vxi11]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=721</guid>
		<description><![CDATA[Gran parte de los equipos utilizados en sistemas de telecomunicaciones como los analizadores de espectros, osciloscopios, etc. han utilizado mayormente el sistema GPIB para comunicarse entre ellos y un PC. 

GPIB es un estándar de bus digital con corto alcance diseñado por HP para conectar dispositivos de teste y medidas con PCs. Este sistema fue diseñado para ser robusto y fiable en entornos industriales, pero tiene el problema que en sistemas GNU/Linux su integración no es trivial (instalación de módulos en el kernel...) y su mantenimiento es cuestionable. Aparte como se he comentado, es un bus de corto alcance, lo cual establece ciertas limitaciones lógicas que no permite aprovechar el nivel tecnológico actual, como podría ser controlar un analizador de espectro remoto a través de una conexión 3G.]]></description>
			<content:encoded><![CDATA[<p>Gran parte de los equipos utilizados en sistemas de telecomunicaciones como los analizadores de espectros, osciloscopios, etc. han utilizado mayormente el sistema GPIB para comunicarse entre ellos y un PC. </p>
<p><a href="http://es.wikipedia.org/wiki/GPIB" target="wikipedia">GPIB</a> es un estándar de bus digital con corto alcance diseñado por HP para conectar dispositivos de teste y medidas con PCs. Este sistema fue diseñado para ser robusto y fiable en entornos industriales, pero tiene el problema que en sistemas GNU/Linux su integración no es trivial (instalación de módulos en el kernel&#8230;) y su mantenimiento es cuestionable. Aparte como se he comentado, es un bus de corto alcance, lo cual establece ciertas limitaciones lógicas que no permite aprovechar el nivel tecnológico actual, como podría ser controlar un analizador de espectro remoto a través de una conexión 3G.</p>
<p>Es por eso que cada vez mas equipos disponen de una interfaz Ethernet que ofrecen nuevas funcionalidades de control y diseño de infraestructuras de control y medida.</p>
<p>El protocolo utilizado para controlar dichos dispositivos es conocido como <a href="http://www.vxibus.org/" target="vxi">VXI11</a>. aunque en muchos caso lo mas fácil es buscar por Ethernet <a href="http://www.ni.com/visa/" target="ni">VISA</a> (Virtual Instrument Software Architecture) que es el estándar que engloba todo los protocolos de control de hardware de medida.</p>
<p>En <a href="http://optics.eee.nottingham.ac.uk/vxi11/" targe="vxi11">esta pagina encontrareis mas información sobre VXI11</a> y referencias a las empresas implicadas en el desarrollo y mantenimientos de estas tecnologías. Además se encuentra <a href="http://optics.eee.nottingham.ac.uk/vxi11/source/vxi11.tar.gz" target="vxi11">el código fuente en el que nos basaremos</a> para nuestro <em>howto</em>.</p>
<p>El código que podéis descargar <a href="http://dl.dropbox.com/u/15629561/ikeralbeniz.net/libvisa_src.zip" target="dropbox">aquí</a> es el mismo que esta en la pagina anterior, salvo que se han añadido los archivos  libvxi11.cpp y libvxi11.h y se ha modificado el Makefile para generar la librería libvisa.so</p>
<p><a href="http://dl.dropbox.com/u/15629561/ikeralbeniz.net/libvisa_src.zip" target="dropbox">http://dl.dropbox.com/u/15629561/ikeralbeniz.net/libvisa_src.zip</a></p>
<p>El contenido de libvxi11.cpp es el siguiente:</p>
<pre class="brush: c++">

#include &quot;libvxi11.hpp&quot;

#define BUF_LEN 100000

using namespace std;

CLINK		*clink;

extern &quot;C&quot; int visaConnect(const char * device_ip)
{
    clink = new CLINK;
    int response = -1;
    try {
        response=vxi11_open_device(device_ip,clink);
    }catch( char * str ) {
      cout &lt;&lt; &quot;Exception raised: &quot; &lt;&lt; str &lt;&lt; &#039;\n&#039;;
    }
    return response;
}

extern &quot;C&quot; int visaSend(const char * command)
{
    int response= vxi11_send(clink, command);
    return response;
}

extern &quot;C&quot; long visaReceive(char buffer[], int buffer_length)
{
    long bytes_returned = vxi11_receive(clink, buffer, BUF_LEN);
    return bytes_returned;
}

extern &quot;C&quot; int visaClose(const char * device_ip)
{
    int response=vxi11_close_device(device_ip,clink);
    return response;
}
</pre>
<p>Lo único que hacemos es exponer cuatro funciones básicas para el manejo de equipos de medida a través de Ethernet/VXI11.</p>
<p>En caso de querer utilizar esta librería en c++ solo seria necesario incluir el archivo libvxi11.h y la librería libvisa.so.</p>
<pre class="brush: c++">
#ifndef LIBVXI11_HPP_INCLUDED
#define LIBVXI11_HPP_INCLUDED

#include &lt;iostream&gt;
#include &quot;vxi11_user.h&quot;

using namespace std;

extern &quot;C&quot; int visaConnect(const char * device_ip);
extern &quot;C&quot; int visaSend(const char * command);
extern &quot;C&quot; long visaReceive(char buffer[], int buffer_length);
extern &quot;C&quot; int visaClose(const char * device_ip);

#endif // LIBVXI11_HPP_INCLUDED
</pre>
<p>En caso de querer usarlo en .Net deberíamos crear una clase VISA y mediante DLLImport exponer los mismos métodos.</p>
<pre class="brush: c#">
using System;
using System.Text;
using System.Runtime.InteropServices;
using System.ComponentModel;
using System.IO;

namespace MyProject
{
	public class VISA
	{
		public const string libpath = &quot;libvisa.so&quot;;

		[DllImport(libpath)]
		public static extern int visaConnect(string device_ip);		

		[DllImport(libpath)]
		public static extern int visaSend(string command);

		[DllImport(libpath)]
		public static extern int visaReceive(byte[] buffer, int buffer_length);

		[DllImport(libpath)]
		public static extern int visaClose(string device_ip);
	}
}
</pre>
<p>Espero que este post os sea de gran ayuda.</p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/xLrNzPZsxO4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2012/04/23/control-de-dispositivos-visa-a-traves-de-ethernet-en-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2012/04/23/control-de-dispositivos-visa-a-traves-de-ethernet-en-linux/</feedburner:origLink></item>
		<item>
		<title>El resurgimiento del P2P???</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/mhpTkEtqgtw/</link>
		<comments>http://www.ikeralbeniz.net/2012/02/20/el-resurgimiento-del-p2p/#comments</comments>
		<pubDate>Mon, 20 Feb 2012 20:10:01 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[Noticias]]></category>
		<category><![CDATA[bittorrent]]></category>
		<category><![CDATA[megaupload]]></category>
		<category><![CDATA[p2p]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=711</guid>
		<description><![CDATA[Ya se veia venir, pero al final esta ocurriendo. Tras el cierre de MegaUpload, parece que el P2P esta resurgiendo, y ademas con fuerza. En mi caso hace dos semanas reinstale mi cliente de BitTorrent y todavía no iba excesivamente bien, lo achaqué a que no compartia muchos archivos y que la gente con lo servicios de Descarga Directa habría dejado de usar estos servicios de forma masiva. Este finde pasado, la cosa ha cambiado sustancialmente, mis descargas bajaban a 4Mb/s de media, lo cual  me pico la curiosidad y me puse a buscar estadísticas de trafico.]]></description>
			<content:encoded><![CDATA[<p>Ya se veia venir, pero al final esta ocurriendo. Tras el cierre de MegaUpload, parece que el P2P esta resurgiendo, y ademas con fuerza. En mi caso hace dos semanas reinstale mi cliente de BitTorrent y todavía no iba excesivamente bien, lo achaqué a que no compartia muchos archivos y que la gente con lo servicios de Descarga Directa habría dejado de usar estos servicios de forma masiva. Este finde pasado, la cosa ha cambiado sustancialmente, mis descargas bajaban a 4Mb/s de media, lo cual  me pico la curiosidad y me puse a buscar estadísticas de trafico.</p>
<p><center><br />
<img src="https://lh6.googleusercontent.com/-IQspRtcmmh4/T0NSP6WDsRI/AAAAAAAAAO8/BElE4DgfPQ8/s506/europe.thelastmonth.bytes.total.line.png" alt="Estadísticas globales" /><br /><br />
<i>Estadísticas del trafico trafico total los últimos 30 dias</i><br />
<br /><br />
<img src="https://lh6.googleusercontent.com/-wdktlEo4suQ/T0NP__3zJuI/AAAAAAAAAOk/ip-O8zqCNQ4/s506/europe.p2p.thelastweek.bytes.total.line.png" alt="Estadísticas 7 días" /><br /><br />
<i>Estadísticas de trafico P2P los últimos 7 dias</i><br />
<br /><br />
<img src="https://lh4.googleusercontent.com/-JmMsfjywdoo/T0NPyM3A36I/AAAAAAAAAOQ/9e-yyG1gVqM/s506/europe.p2p.thelastmonth.bytes.total.line.png" alt="Estadísticas 30 días" /><br /><br />
<i>Estadísticas de trafico P2P los últimos 30 dias</i><br />
</center></p>
<p>La tendencia ascendente todavia es muy poco pronunciada, pero las redes sociales se empiezan a llenar de tweets de gente comentando su vuelta al P2P y lo bien que va. </p>
<p><center><br />
<img src="https://lh6.googleusercontent.com/-IuKHn1kiwl0/T0NRaxl7MhI/AAAAAAAAAPI/zW53qMrcSgk/s520/vicrotsanchez.jpg" alt="victor p2p" /><br />
<img src="https://lh4.googleusercontent.com/-od44Y7KqV74/T0NRaz5l-_I/AAAAAAAAAPE/Rt3KolvShXg/s520/gallir.jpg" alt="Gallir p2p" /><br />
</center></p>
<p>En pocos dias volveremos a ver de nuevo los datos de trafico y comprobaremos si es cierto que el P2P esta resurgiendo.</p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/mhpTkEtqgtw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2012/02/20/el-resurgimiento-del-p2p/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2012/02/20/el-resurgimiento-del-p2p/</feedburner:origLink></item>
		<item>
		<title>Obtener drivers USB Samsung sin instalar Kies</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/WaMSSQp-yJA/</link>
		<comments>http://www.ikeralbeniz.net/2011/08/22/obtener-drivers-usb-samsung-sin-instalar-kies/#comments</comments>
		<pubDate>Mon, 22 Aug 2011 20:38:46 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Movil]]></category>
		<category><![CDATA[adb]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[drivers]]></category>
		<category><![CDATA[kies]]></category>
		<category><![CDATA[samsung]]></category>
		<category><![CDATA[usb]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=644</guid>
		<description><![CDATA[Los que desarrollamos para Android en sistemas operativos como GNU/Linux o MacOs X no solemos tener problemas para acceder a los teléfonos a través de USB, bien para instalar aplicaciones o acceder a los logs a través de <a href="http://developer.android.com/guide/developing/tools/adb.html" target="android">ADB</a>. El problema lo tenemos cuando queremos hacer esto mismo en sistemas Windows y nos encontramos que al conectar el móvil al PC nos aparece un mensaje de dispositivo desconocido o que no encuentra los drivers.

En mi caso, hace poco he me hecho con un <a href="http://es.wikipedia.org/wiki/Samsung_Galaxy_S_II" target="wiki">Samsung Galaxy SI II</a> con el que estoy haciendo unas pruebas. Y lo primero que hice fue buscar los drivers para poder conectarme vía ADB. Mi sorpresa fue encontrar un montón de referencias a un paquete instalador de drivers para dispositivos Samsung que no me funcionaba. Otras referencias me indicaban que instalara <a href="http://en.wikipedia.org/wiki/Samsung_Kies" target="wiki">Kies</a>, un software de Samsung para acceder al dispositivos, sincronizar y demás herramientas que suelen ofrecer las empresas fabricantes de teléfonos móviles. Por supuesto, no estaba dispuesto a instalar todo una <em>suite</em> para instalar unos drivers USB, por lo que pensé que quizás seria posible obtener los driver del propio paquete de instalación de Kies.]]></description>
			<content:encoded><![CDATA[<p>Los que desarrollamos para Android en sistemas operativos como GNU/Linux o MacOs X no solemos tener problemas para acceder a los teléfonos a través de USB, bien para instalar aplicaciones o acceder a los logs a través de <a href="http://developer.android.com/guide/developing/tools/adb.html" target="android">ADB</a>. El problema lo tenemos cuando queremos hacer esto mismo en sistemas Windows y nos encontramos que al conectar el móvil al PC nos aparece un mensaje de dispositivo desconocido o que no encuentra los drivers.</p>
<p>En mi caso, hace poco he me hecho con un <a href="http://es.wikipedia.org/wiki/Samsung_Galaxy_S_II" target="wiki">Samsung Galaxy SI II</a> con el que estoy haciendo unas pruebas. Y lo primero que hice fue buscar los drivers para poder conectarme vía ADB. Mi sorpresa fue encontrar un montón de referencias a un paquete instalador de drivers para dispositivos Samsung que no me funcionaba. Otras referencias me indicaban que instalara <a href="http://en.wikipedia.org/wiki/Samsung_Kies" target="wiki">Kies</a>, un software de Samsung para acceder al dispositivos, sincronizar y demás herramientas que suelen ofrecer las empresas fabricantes de teléfonos móviles. Por supuesto, no estaba dispuesto a instalar todo una <em>suite</em> para instalar unos drivers USB, por lo que pensé que quizás seria posible obtener los driver del propio paquete de instalación de Kies.</p>
<p>Por lo tanto, lo primero que hice fue buscar Kies en Google y acceder a <a href="http://www.samsung.com/es/support/mobilesoftwaremanual/mobilesoftwaremanual.do?page=MOBILE.SOFTWARE.MANUAL" target="kies">la pagina oficial de Kies</a> donde descargué el software para Windows</p>
<p><a href="http://org.downloadcenter.samsung.com/downloadfile/ContentsFile.aspx?CDSite=UNI_ES&#038;CDCttType=SW&#038;ModelType=N&#038;ModelName=FM_UPDATE&#038;idyn=N&#038;VPath=SW/201105/20110512115717796/Kies_2.0.2.11071_128_2.exe">http://org.downloadcenter.samsung.com/downloadfile/ContentsFile.aspx?CDSite=UNI_ES&#038;CDCttType=SW&#038;ModelType=N&#038;ModelName=FM_UPDATE&#038;idyn=N&#038;VPath=SW/201105/20110512115717796/Kies_2.0.2.11071_128_2.exe</a></p>
<p>Por otro lado me descargué también el <a href="http://legroom.net/software/uniextract" target="uextract">UniversalExtractor</a>, el cual es un software capaz de desempaquetar instaladores, y ya que al fin y al cabo un instalador no es mas que un contenedor de binarios con instrucciones de donde copiarlos, no tiene mayor misterio acceder a su interior (la otra opción es instalar Kies coger el driver y desinstalarlo después).</p>
<p><a href="http://legroom.net/scripts/download.php?file=uniextract161">http://legroom.net/scripts/download.php?file=uniextract161</a></p>
<p>Une vez instalado el UniversalExtractor, accedemos a nuestro directorio de descargas y extraemos el instalador de Kies seleccionando la opción &#8220;<strong>Instalshield /b Interconector</strong>&#8220;</p>
<p><img alt="" src="https://lh6.googleusercontent.com/-SoQsOP_jX2g/TlOBFeXlkSI/AAAAAAAAAMk/pxcXw98r46w/uniextractor.png" class="aligncenter" width="367" height="445" /><img alt="" src="https://lh4.googleusercontent.com/-eGU4g2HlJPo/TlOBFY_n6OI/AAAAAAAAAMg/_lKeyMMeo1E/uniextractor2.png" class="aligncenter" width="336" height="205" /></p>
<p>Lo que hará que se nos cree una carpeta <strong>Kies_XXXXXX\ uni_xuemcfc\</strong></p>
<p>Dentro de esta carpeta tendremos otro instalador MSI &#8220;<strong>Samsung Kies.msi</strong>&#8220;. Que volveremos a extraer de manera parecida pero esta vez con la opción &#8220;<strong>MSI Instalador Administrativo</strong>&#8220;.</p>
<p><img alt="" src="https://lh5.googleusercontent.com/-I__2sDcgGlU/TlOBFUK8iJI/AAAAAAAAAMo/vIykv6eNTv8/uniextractor3.PNG" class="aligncenter" width="336" height="220" /></p>
<p>Al desempaquetar el MSI obtendremos el contenido del instalador de Kies y si indagáis encontrareis que el instalador de los Drivers USB esta en <strong>Samsung Kies\program files\Samsung\Kies\USB Driver</strong> con el nombre de <strong>SAMSUNG_USB_Driver_for_Mobile_Phones.exe</strong></p>
<p>Ejecutáis el instalador y pronto veréis como Windows va reconociendo vuestros dispositivos móviles. </p>
<p>El nombre del instalador de drivers es el mismo que el que en foros anteriores había encontrado e instalado pero que no me funcionaban. Esto se debía a que eran versiones anteriores del instalador de drivers que no contenían los drivers compatibles con el Samsung Galaxy S II. Por tanto en vez de alojar el instalador en un repositorio y enlazarlo en foros, he creído mas interesante mostrar como obtener la ultima versión del instalador de drivers a partir del instalador de Kies.</p>
<p>Espero que os haya sido de utilidad.</p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/WaMSSQp-yJA" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2011/08/22/obtener-drivers-usb-samsung-sin-instalar-kies/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2011/08/22/obtener-drivers-usb-samsung-sin-instalar-kies/</feedburner:origLink></item>
		<item>
		<title>Desproteger Web-Fonts con Google Docs</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/-QOK9UeKxiQ/</link>
		<comments>http://www.ikeralbeniz.net/2011/05/24/desproteger-web-fonts-con-google-docs/#comments</comments>
		<pubDate>Tue, 24 May 2011 15:41:08 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[docs]]></category>
		<category><![CDATA[fonts]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[obfuscate]]></category>
		<category><![CDATA[protection]]></category>
		<category><![CDATA[web-fonts]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=637</guid>
		<description><![CDATA[Como comente en un articulo anterior, la ultima versión de <a href="http://es.wikipedia.org/wiki/Css" target="wiki">CSS</a> (CSS3) permite utilizar fuentes propias en nuestras paginas Web gracias al elemento <strong>@fotn-face</strong>. Por eso muchos diseñadores Web utilizan esta ultima formular para intentar dificultar el acceso a la fuente, en caso de que esta haya sido desarrollada por el. Aun así es relativamente sencillo poder copiar la fuente y usarla en nuestra Web, pero.. ¿y usarla en nuestro PC?]]></description>
			<content:encoded><![CDATA[<p>Como comente en un articulo anterior, la ultima versión de <a href="http://es.wikipedia.org/wiki/Css" target="wiki">CSS</a> (CSS3) permite utilizar fuentes propias en nuestras paginas Web gracias al elemento <strong>@fotn-face</strong>. Por tanto si disponemos de una fuente <em>MiFuente.ttf</em> podremos utilizarla en nuestra página Web de la siguiente manera.</p>
<pre class="brush: css">
@font-face {
	font-family:Mifuente;
	src: url(‘MiFuente.ttf’);
}

@font-face {
	font-family: Mifuente;
	font-weight: bold;
	src: url(&#039;MiFuente.ttf’);
}
</pre>
<p>Que luego podremos usarla de igual manera que otras fuentes</p>
<pre class="brush: css">
body{
	font-family: Mifuente;
}
</pre>
<p>Al igual que en las imágenes es posible utilizar la etiqueta data y adjuntar la fuente en <a href="http://es.wikipedia.org/wiki/Base64" target="wiki"><em>base64</em></a>.</p>
<pre class="brush: css">
@font-face {
	font-family: &#039; Mifuente &#039;;
	src:          url(data:font/truetype;charset=utf-8;base64,AAEAAAAQAQAABAAARkZUTVtQ+h4AAAEMAA………..AMrRFmwFCs=) format(&#039;truetype&#039;);
}
</pre>
<p>Por eso muchos diseñadores Web utilizan esta ultima formular para intentar dificultar el acceso a la fuente, en caso de que esta haya sido desarrollada por el. Aun así es relativamente sencillo poder copiar la fuente y usarla en nuestra Web, pero.. ¿y usarla en nuestro PC? En este caso seria tan sencillo como coger todo el stream en base64 y decodificarlo. Existen librerías para todos los lenguajes de programación que permiten convertir de/a base64, pero si queréis ir a los sencillo, tenéis un montón de conversores online disponibles. Yo recomiendo el siguiente ya que permite convertir a un binario.</p>
<p><a href="http://www.motobit.com/util/base64-decoder-encoder.asp">http://www.motobit.com/util/base64-decoder-encoder.asp</a></p>
<p>En la imagen siguiente podemos ver como podemos convertir una fuente en base64 a un binario TTF.</p>
<p><img class="aligncenter" src="https://lh4.googleusercontent.com/-J1VsIWSQ5jo/TdvJjnKaPSI/AAAAAAAAAIg/JHa81qRBwn8/base64-fotn.png" alt="" width="618" height="500" /></p>
<p>Una vez tenemos la fuente podremos usarla con todas nuestra aplicaciones (Si estamos en Windows deberemos arrástrala a la carpeta FONTS). Aun así, algunos diseñadores de fuentes, utilizan técnicas de ofuscación que permiten que una fuente pueda ser utilizada en nuestra Web pero no en nuestro PC. Y esto es posible porque existe software capaz de alterar la estructura interna de las fuentes de tal forma que puede ser reenderizada por los navegadores pero no por los PCs.</p>
<p>En estos casos deberemos realizar los siguientes pasos:</p>
<ol>
<li>Usando Gmail nos enviaremos la fuente (con extensión TTF) a nosotros mismos</li>
<li>Gmail nos mostrara nuestro adjunto con las típicas opciones de VER o DESCARGAR</li>
<li>Pulsaremos VER y se nos mostrara la fuente con el visualizador de fuentes de Google Docs</li>
<li>En el menú FILE pulsaremos en PRINT (PDF)</li>
<li>Cancelaremos la impresión y guardaremos el PDF</li>
</ol>
<p><img class="aligncenter" src="https://lh6.googleusercontent.com/_YsgLljqoEIQ/TdvLIoswkFI/AAAAAAAAAIk/2RrAcMXqmjM/font-gmail.jpg" alt="" width="545" height="160" /><img class="aligncenter" src="https://lh3.googleusercontent.com/_YsgLljqoEIQ/TdvLshqFkcI/AAAAAAAAAIo/qDfROf8aS8U/font-gmail2.jpg" alt="" width="417" height="423" /></p>
<p>Ya tenemos nuestra fuente en formato PDF, por lo que ahora necesitaremos convertirla de PDF a otros formatos que nos sean mas útiles. Para ello usaremos otro servicio online:</p>
<p><a href="http://onlinefontconverter.com/myfonts.php">http://onlinefontconverter.com/myfonts.php</a></p>
<p>Este servicio nos permitirá convertir nuestra fuente en PDF a una gran variedad de fuentes, entre las cuales nos interesa:</p>
<ul>
<li><strong>OTF</strong>: Formato Open Source de nuestra fuente, 100% compatible con sistema GNU/Linux</li>
<li><strong>TTF</strong>: Formato típico de fuente que solemos tener instalado en sistemas Windows</li>
<li><strong>DFONT</strong>: Formato de fuente para MAC</li>
<li><strong>SVG</strong>: Formato de fuente VECTORIAL propuesto por W3C, muy útil si utilizas <a href="http://inkscape.org/" target="ink">inkscape</a> ya que es posible modificarla.</li>
</ul>
<p><img class="aligncenter" src="https://lh4.googleusercontent.com/_YsgLljqoEIQ/TdvM1oM-TMI/AAAAAAAAAIs/rtt2AYQQZkY/font-converter.jpg" alt="" width="526" height="405" /></p>
<p>Espero que este truco os sea de gran utilidad <img src='http://www.ikeralbeniz.net/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/-QOK9UeKxiQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2011/05/24/desproteger-web-fonts-con-google-docs/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2011/05/24/desproteger-web-fonts-con-google-docs/</feedburner:origLink></item>
		<item>
		<title>Empezando con Windows Phone 7</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/USPTmQ19Ob8/</link>
		<comments>http://www.ikeralbeniz.net/2011/03/21/empezando-con-windows-phone-7/#comments</comments>
		<pubDate>Mon, 21 Mar 2011 12:55:24 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[Movil]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[Windows Phone 7]]></category>
		<category><![CDATA[developer]]></category>
		<category><![CDATA[movil]]></category>
		<category><![CDATA[phone]]></category>
		<category><![CDATA[phonegap]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[xp]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=625</guid>
		<description><![CDATA[Estos días me ha dado por intentar probar a desarrollar algo para Windows Phone 7. Más concretamente, quería probar<a href="http://blog.mrlacey.co.uk/2010/08/wp7dev-phonegap-and-windows-phone-7.html" target="betapg"> las implementaciones BETA que existían de PhoneGap para Windows Phone 7</a>, por lo que rápidamente me hice con una versión de <a href="http://www.microsoft.com/visualstudio/en-us/" target="msvs">Visual Studio 2010</a>.

<a href="https://github.com/mrlacey/phonegap-wp7" target="github">Me baje el código fuente de los ejemplo de PhoneGap</a> y lo primero que me di cuenta era que la instalación de VS 2010 no viene con las herramientas de desarrollo de aplicaciones para terminales móviles. Al final, encontré que lo que necesitaba era un complemento llamado "<a href="http://www.microsoft.com/downloads/es-es/details.aspx?FamilyID=04704acf-a63a-4f97-952c-8b51b34b00ce" target=",sdn">Windows Phone 7 Developer Tools</a>", que encontré en esta dirección: 

<a href="http://download.microsoft.com/download/1/7/7/177D6AF8-17FA-40E7-AB53-00B7CED31729/vm_web.exe" target="msdown">http://download.microsoft.com/download/1/7/7/177D6AF8-17FA-40E7-AB53-00B7CED31729/vm_web.exe</a>

Lamentablemente al intentar instalarlo me decía que no era posible, ya que era necesario tener Windows Vista o 7 instalado. Al final conseguí hacerlo funcionar en XP realizando los siguientes pasos:

<ul>
<li>Descargamos <em>Windows Phone 7 Developer Tools</em> (<strong>vm_web.exe</strong>)</li>
<li>Extraemos el contenido de el instalador, lanzado una consola, posicionándonos en el directorio donde se encuentra la aplicación vm_bex.exe  y ejecutándola de la siguiente manera:<strong> vm_web.exe /x &#60;directorio_donde_lo_extraeremos&#62;</strong></li>
<li>Abrimos <strong>&#60;directorio_donde_lo_extraeremos&#62;\baseline.dat</strong> con un editor de texto</li>
<li>Buscamos la sección <strong>[gencomp7788]</strong></li>
<li>Cambiamos los valores de la sección <strong>InstallOnLHS</strong> y <strong>InstallOnWinXP</strong> a 0.</li>
<li>Guardamos y cerramos <em>&#60;directorio_donde_lo_extraeremos&#62;\baseline.dat</em></li>
<li>Ejecutamos el instalador lanzando el siguiente comando: <strong>&#60;directorio_donde_lo_extraeremos&#62;\setup.exe /web</strong></li>
</ul>
De esta manera se nos lanzara el instalador y podremos instalar las herramientas de desarrollo móvil a nuestros VS 2010.

NOTA: En Windows XP no es posible ejecutar el emulador, pero si compilar y desarrollar. En caso de querer probar la aplicación, deberéis disponer de un terminal con Windows Phone 7 y a la hora de <em>Debugear</em> seleccionar "Windows Phone / Device".]]></description>
			<content:encoded><![CDATA[<p>Estos días me ha dado por intentar probar a desarrollar algo para Windows Phone 7. Más concretamente, quería probar<a href="http://blog.mrlacey.co.uk/2010/08/wp7dev-phonegap-and-windows-phone-7.html" target="betapg"> las implementaciones BETA que existían de PhoneGap para Windows Phone 7</a>, por lo que rápidamente me hice con una versión de <a href="http://www.microsoft.com/visualstudio/en-us/" target="msvs">Visual Studio 2010</a>.</p>
<p><a href="https://github.com/mrlacey/phonegap-wp7" target="github">Me baje el código fuente de los ejemplo de PhoneGap</a> y lo primero que me di cuenta era que la instalación de VS 2010 no viene con las herramientas de desarrollo de aplicaciones para terminales móviles. Al final, encontré que lo que necesitaba era un complemento llamado &#8220;<a href="http://www.microsoft.com/downloads/es-es/details.aspx?FamilyID=04704acf-a63a-4f97-952c-8b51b34b00ce" target=",sdn">Windows Phone 7 Developer Tools</a>&#8220;, que encontré en esta dirección: </p>
<p><a href="http://download.microsoft.com/download/1/7/7/177D6AF8-17FA-40E7-AB53-00B7CED31729/vm_web.exe" target="msdown">http://download.microsoft.com/download/1/7/7/177D6AF8-17FA-40E7-AB53-00B7CED31729/vm_web.exe</a></p>
<p>Lamentablemente al intentar instalarlo me decía que no era posible, ya que era necesario tener Windows Vista o 7 instalado. Al final conseguí hacerlo funcionar en XP realizando los siguientes pasos:</p>
<ul>
<li>Descargamos <em>Windows Phone 7 Developer Tools</em> (<strong>vm_web.exe</strong>)</li>
<li>Extraemos el contenido de el instalador, lanzado una consola, posicionándonos en el directorio donde se encuentra la aplicación vm_bex.exe  y ejecutándola de la siguiente manera:<strong> vm_web.exe /x &lt;directorio_donde_lo_extraeremos&gt;</strong></li>
<li>Abrimos <strong>&lt;directorio_donde_lo_extraeremos&gt;\baseline.dat</strong> con un editor de texto</li>
<li>Buscamos la sección <strong>[gencomp7788]</strong></li>
<li>Cambiamos los valores de la sección <strong>InstallOnLHS</strong> y <strong>InstallOnWinXP</strong> a 0.</li>
<li>Guardamos y cerramos <em>&lt;directorio_donde_lo_extraeremos&gt;\baseline.dat</em></li>
<li>Ejecutamos el instalador lanzando el siguiente comando: <strong>&lt;directorio_donde_lo_extraeremos&gt;\setup.exe /web</strong></li>
</ul>
<p>De esta manera se nos lanzara el instalador y podremos instalar las herramientas de desarrollo móvil a nuestros VS 2010.</p>
<p>NOTA: En Windows XP no es posible ejecutar el emulador, pero si compilar y desarrollar. En caso de querer probar la aplicación, deberéis disponer de un terminal con Windows Phone 7 y a la hora de <em>Debugear</em> seleccionar &#8220;Windows Phone / Device&#8221;.</p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/USPTmQ19Ob8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2011/03/21/empezando-con-windows-phone-7/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2011/03/21/empezando-con-windows-phone-7/</feedburner:origLink></item>
		<item>
		<title>Iconic Stroke: una fuente de iconos muy interesante</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/N7jkilkN1vw/</link>
		<comments>http://www.ikeralbeniz.net/2011/03/16/iconic-stroke-una-fuente-de-iconos-muy-interesante/#comments</comments>
		<pubDate>Wed, 16 Mar 2011 15:24:13 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[HTML5]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[css3]]></category>
		<category><![CDATA[diseño]]></category>
		<category><![CDATA[fonts]]></category>
		<category><![CDATA[fuentes]]></category>
		<category><![CDATA[html5]]></category>
		<category><![CDATA[iconic]]></category>
		<category><![CDATA[stroke]]></category>
		<category><![CDATA[ux]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=604</guid>
		<description><![CDATA[En las ultima semanas tengo el blog un poco parado ya que estoy a tope con otros proyectos. Entre ellos, algunos relacionados, como no, con aplicaciones móviles. Uno de estos proyectos lo estoy realizando junto a <a href="http://soyjavi.com/" target="jj">Javier Jimenez</a> que es un experto en <a href="http://es.wikipedia.org/wiki/HTML_5" target="wiki">HTML5</a>, <a href="http://es.wikipedia.org/wiki/Javascript" target="wiki">JavaScript</a> y todo lo relacionado con <a href="http://es.wikipedia.org/wiki/Experiencia_de_usuario" target="wiki">UX</a> en general. 

Diseñando una aplicación, a Javi se le ocurrió la idea de usar una fuente de Iconos en vez de imágenes para aligerar la aplicación y que fuera mas fácil de diseñar y trabajar con transparencias etc... La fuente en cuestión es la <strong>Iconic Stroke</strong> y las posibilidades que ofrece creo que son muy interesantes, no solo de cara a no tener que usar imagenes, ya que <a href="http://es.wikipedia.org/wiki/Hojas_de_estilo_en_cascada" target="wiki">CSS3</a> nos permite usar fuente propias, sino que, de cara a diseñar iconos también nos puede ser de gran ayuda. Por eso os dejo aquí un link de donde podéis descargar esta fuente y un ejemplo de los iconos, cargando la fuente con CSS3.

<center><a href="http://googlefontdirectory.googlecode.com/hg/iconic/IconicStroke.ttf">http://googlefontdirectory.googlecode.com/hg/iconic/IconicStroke.ttf</a>

<div style="padding:5px;border:1px solid #FF0000;background: #F9A7A7;color:#FF0000;">Solo veréis los iconos si usáis un navegador que soporte CSS3 como Firefox, Crome o Safari. </div>

    <table class="iconstable">
         <tr class="iconfont"><td>!</td><td>"</td><td>#</td><td>$</td><td>%</td><td>&#038;</td><td>'</td><td>(</td><td>)</td><td>*</td></tr>
         <tr><td>!</td><td>"</td><td>#</td><td>$</td><td>%</td><td>&#038;</td><td>'</td><td>(</td><td>)</td><td>*</td></tr>
         <tr class="iconfont"><td>+</td><td>,</td><td>-</td><td>.</td><td>/</td><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td></tr>
         <tr><td>+</td><td>,</td><td>-</td><td>.</td><td>/</td><td>0</td><td>1</td><td>2</td><td>3</td><td>4</td></tr>
         <tr class="iconfont"><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td><td>:</td><td>;</td><td><</td><td>=</td><td>></td></tr>
         <tr><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td><td>:</td><td>;</td><td><</td><td>=</td><td>></td></tr>
         <tr class="iconfont"><td>?</td><td>@</td><td>A</td><td>B</td><td>C</td><td>D</td><td>E</td><td>F</td><td>G</td><td>H</td></tr>
         <tr><td>?</td><td>@</td><td>A</td><td>B</td><td>C</td><td>D</td><td>E</td><td>F</td><td>G</td><td>H</td></tr>
         <tr class="iconfont"><td>I</td><td>J</td><td>K</td><td>L</td><td>M</td><td>N</td><td>O</td><td>P</td><td>Q</td><td>R</td></tr>
         <tr><td>I</td><td>J</td><td>K</td><td>L</td><td>M</td><td>N</td><td>O</td><td>P</td><td>Q</td><td>R</td></tr>
         <tr class="iconfont"><td>S</td><td>T</td><td>U</td><td>V</td><td>W</td><td>X</td><td>Y</td><td>Z</td><td>[</td><td>\</td></tr>
         <tr><td>S</td><td>T</td><td>U</td><td>V</td><td>W</td><td>X</td><td>Y</td><td>Z</td><td>[</td><td>\</td></tr>
         <tr class="iconfont"><td>]</td><td>^</td><td>_</td><td>`</td><td>a</td><td>b</td><td>c</td><td>d</td><td>e</td><td>f</td></tr>
         <tr><td>]</td><td>^</td><td>_</td><td>`</td><td>a</td><td>b</td><td>c</td><td>d</td><td>e</td><td>f</td></tr>
         <tr class="iconfont"><td>g</td><td>h</td><td>i</td><td>j</td><td>k</td><td>l</td><td>m</td><td>n</td><td>o</td><td>p</td></tr>
         <tr><td>g</td><td>h</td><td>i</td><td>j</td><td>k</td><td>l</td><td>m</td><td>n</td><td>o</td><td>p</td></tr>
         <tr class="iconfont"><td>q</td><td>r</td><td>s</td><td>t</td><td>u</td><td>v</td><td>w</td><td>x</td><td>y</td><td>z</td></tr>
         <tr><td>q</td><td>r</td><td>s</td><td>t</td><td>u</td><td>v</td><td>w</td><td>x</td><td>y</td><td>z</td></tr>
         <tr class="iconfont"><td>{</td><td>&#124;</td><td>}</td><td>~</td><td></td><td></td><td></td><td></td><td></td><td></td></tr>
         <tr><td>{</td><td>&#124;</td><td>}</td><td>~</td><td></td><td></td><td></td><td></td><td></td><td></td></tr>
    </table>
</center>]]></description>
			<content:encoded><![CDATA[<p>En las ultima semanas tengo el blog un poco parado ya que estoy a tope con otros proyectos. Entre ellos, algunos relacionados, como no, con aplicaciones móviles. Uno de estos proyectos lo estoy realizando junto a <a href="http://soyjavi.com/" target="jj">Javier Jimenez</a> que es un experto en <a href="http://es.wikipedia.org/wiki/HTML_5" target="wiki">HTML5</a>, <a href="http://es.wikipedia.org/wiki/Javascript" target="wiki">JavaScript</a> y todo lo relacionado con <a href="http://es.wikipedia.org/wiki/Experiencia_de_usuario" target="wiki">UX</a> en general. </p>
<p>Diseñando una aplicación, a Javi se le ocurrió la idea de usar una fuente de Iconos en vez de imágenes para aligerar la aplicación y que fuera mas fácil de diseñar y trabajar con transparencias etc&#8230; La fuente en cuestión es la <strong>Iconic Stroke</strong> y las posibilidades que ofrece creo que son muy interesantes, no solo de cara a no tener que usar imagenes, ya que <a href="http://es.wikipedia.org/wiki/Hojas_de_estilo_en_cascada" target="wiki">CSS3</a> nos permite usar fuente propias, sino que, de cara a diseñar iconos también nos puede ser de gran ayuda. Por eso os dejo aquí un link de donde podéis descargar esta fuente y un ejemplo de los iconos, cargando la fuente con CSS3.</p>
<p><center><a href="http://googlefontdirectory.googlecode.com/hg/iconic/IconicStroke.ttf">http://googlefontdirectory.googlecode.com/hg/iconic/IconicStroke.ttf</a></p>
<div style="padding:5px;border:1px solid #FF0000;background: #F9A7A7;color:#FF0000;">Solo veréis los iconos si usáis un navegador que soporte CSS3 como Firefox, Crome o Safari. </div>
<table class="iconstable">
<tr class="iconfont">
<td>!</td>
<td>&#8220;</td>
<td>#</td>
<td>$</td>
<td>%</td>
<td>&#038;</td>
<td>&#8216;</td>
<td>(</td>
<td>)</td>
<td>*</td>
</tr>
<tr>
<td>!</td>
<td>&#8220;</td>
<td>#</td>
<td>$</td>
<td>%</td>
<td>&#038;</td>
<td>&#8216;</td>
<td>(</td>
<td>)</td>
<td>*</td>
</tr>
<tr class="iconfont">
<td>+</td>
<td>,</td>
<td>-</td>
<td>.</td>
<td>/</td>
<td>0</td>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
<tr>
<td>+</td>
<td>,</td>
<td>-</td>
<td>.</td>
<td>/</td>
<td>0</td>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
<tr class="iconfont">
<td>5</td>
<td>6</td>
<td>7</td>
<td>8</td>
<td>9</td>
<td>:</td>
<td>;</td>
<td><</td>
<td>=</td>
<td>></td>
</tr>
<tr>
<td>5</td>
<td>6</td>
<td>7</td>
<td>8</td>
<td>9</td>
<td>:</td>
<td>;</td>
<td><</td>
<td>=</td>
<td>></td>
</tr>
<tr class="iconfont">
<td>?</td>
<td>@</td>
<td>A</td>
<td>B</td>
<td>C</td>
<td>D</td>
<td>E</td>
<td>F</td>
<td>G</td>
<td>H</td>
</tr>
<tr>
<td>?</td>
<td>@</td>
<td>A</td>
<td>B</td>
<td>C</td>
<td>D</td>
<td>E</td>
<td>F</td>
<td>G</td>
<td>H</td>
</tr>
<tr class="iconfont">
<td>I</td>
<td>J</td>
<td>K</td>
<td>L</td>
<td>M</td>
<td>N</td>
<td>O</td>
<td>P</td>
<td>Q</td>
<td>R</td>
</tr>
<tr>
<td>I</td>
<td>J</td>
<td>K</td>
<td>L</td>
<td>M</td>
<td>N</td>
<td>O</td>
<td>P</td>
<td>Q</td>
<td>R</td>
</tr>
<tr class="iconfont">
<td>S</td>
<td>T</td>
<td>U</td>
<td>V</td>
<td>W</td>
<td>X</td>
<td>Y</td>
<td>Z</td>
<td>[</td>
<td>\</td>
</tr>
<tr>
<td>S</td>
<td>T</td>
<td>U</td>
<td>V</td>
<td>W</td>
<td>X</td>
<td>Y</td>
<td>Z</td>
<td>[</td>
<td>\</td>
</tr>
<tr class="iconfont">
<td>]</td>
<td>^</td>
<td>_</td>
<td>`</td>
<td>a</td>
<td>b</td>
<td>c</td>
<td>d</td>
<td>e</td>
<td>f</td>
</tr>
<tr>
<td>]</td>
<td>^</td>
<td>_</td>
<td>`</td>
<td>a</td>
<td>b</td>
<td>c</td>
<td>d</td>
<td>e</td>
<td>f</td>
</tr>
<tr class="iconfont">
<td>g</td>
<td>h</td>
<td>i</td>
<td>j</td>
<td>k</td>
<td>l</td>
<td>m</td>
<td>n</td>
<td>o</td>
<td>p</td>
</tr>
<tr>
<td>g</td>
<td>h</td>
<td>i</td>
<td>j</td>
<td>k</td>
<td>l</td>
<td>m</td>
<td>n</td>
<td>o</td>
<td>p</td>
</tr>
<tr class="iconfont">
<td>q</td>
<td>r</td>
<td>s</td>
<td>t</td>
<td>u</td>
<td>v</td>
<td>w</td>
<td>x</td>
<td>y</td>
<td>z</td>
</tr>
<tr>
<td>q</td>
<td>r</td>
<td>s</td>
<td>t</td>
<td>u</td>
<td>v</td>
<td>w</td>
<td>x</td>
<td>y</td>
<td>z</td>
</tr>
<tr class="iconfont">
<td>{</td>
<td>|</td>
<td>}</td>
<td>~</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>{</td>
<td>|</td>
<td>}</td>
<td>~</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
<p></center></p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/N7jkilkN1vw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2011/03/16/iconic-stroke-una-fuente-de-iconos-muy-interesante/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2011/03/16/iconic-stroke-una-fuente-de-iconos-muy-interesante/</feedburner:origLink></item>
		<item>
		<title>XML, JSON… Protocol Buffers</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/wDWwneluxBE/</link>
		<comments>http://www.ikeralbeniz.net/2011/02/21/xml-json%e2%80%a6-protocol-buffers/#comments</comments>
		<pubDate>Mon, 21 Feb 2011 20:54:13 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Google App Engine]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[buffer]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[JSON]]></category>
		<category><![CDATA[protocol]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=572</guid>
		<description><![CDATA[El intercambio de información en los sistema distribuidos o en cualquier tipo de servicio, es un tema clave, para lo cual, a lo largo de los años han surgido un montón de soluciones y tecnologías. Hasta ahora la formula mas utilizada era el formato <a href="http://es.wikipedia.org/wiki/Extensible_Markup_Language" target="wiki">XML</a>, en muchos caso envueltos de una capa extra de gestión, como son el caso de <a href="http://es.wikipedia.org/wiki/Simple_Object_Access_Protocol" target="wiki">SOAP</a> o <a href="http://es.wikipedia.org/wiki/Windows_Communication_Foundation" target="wiki">WCF</a> impulsados por Microsoft. En general XML sigue siendo claro dominador a la hora de proveer información estructurada. Los feeds de nuestra Web, Sitemaps o muchos proyectos de OpenData proporcionan información en este formato.

A pesar de ello, XML para muchos es un formato engorroso, su interpretación o extracción de la información, a pesar de que existen muchas librerías que lo facilitan, suele traer de cabeza a muchos desarrolladores y cada vez, tiene mas presencia la tecnología <a href="http://es.wikipedia.org/wiki/JSON" target="wiki">JSON</a> a la hora de acceder a servidores de datos, APIs, etc.. la facilidad para generar y recuperar la información que ofrece JSON esta haciendo que sea estándar de facto en prácticamente todos los servicios que permiten interactuar con servicios terceros. Empresas como Facebook o <a href="http://www.mywot.com/wiki/API" target="wot">WOT</a>, apuestan por JSON para el acceso a la información, sobre todo cuando esta se genera de forma dinámica. Aun así en la mayoría de los casos sigue estando opcional el acceso s los datos en XML.

En este articulo trato de presentar <a href="http://code.google.com/intl/eu/apis/protocolbuffers/docs/overview.html" target="protobuff">Protocol Buffers</a>, una solución que pretende ser mas optima, en lo que respecta a trafico de datos, y mas opaca, si lo que interesa es que la información no viaje de forma totalmente visible. Personalmente, creo que lo mas interesante de este sistema es que reduce considerablemente el volumen de trafico generado en cada petición de información, lo cual es muy interesante si lo que queremos es desarrollar un servicio explotado por aplicaciones móviles, donde podemos conseguir aplicaciones mas fluidas, si conseguimos que el tiempo de conexión sea el menor posible.

En mi caso, Protocol Buffers me parece una solución interesante, ya que suelo usar <a href="http://code.google.com/intl/eu/appengine/" target="gae">Google App Engine</a>, como web service generador de datos, y para terminales móviles suelo trabajar con Android, para el cual existen librerias. Además hay que tener en cuenta que muchas de las aplicaciones de serie en Android como el Market usan Protocol Buffers internamente (a pesar de que oficialmente la SDK de Android no ofrece acceso a dichas librerías).

En próximos post explicare como manejar Protocol Buffers en python.]]></description>
			<content:encoded><![CDATA[<p>El intercambio de información en los sistema distribuidos o en cualquier tipo de servicio, es un tema clave, para lo cual, a lo largo de los años han surgido un montón de soluciones y tecnologías. Hasta ahora la formula mas utilizada era el formato <a href="http://es.wikipedia.org/wiki/Extensible_Markup_Language" target="wiki">XML</a>, en muchos caso envueltos de una capa extra de gestión, como son el caso de <a href="http://es.wikipedia.org/wiki/Simple_Object_Access_Protocol" target="wiki">SOAP</a> o <a href="http://es.wikipedia.org/wiki/Windows_Communication_Foundation" target="wiki">WCF</a> impulsados por Microsoft. En general XML sigue siendo claro dominador a la hora de proveer información estructurada. Los feeds de nuestra Web, Sitemaps o muchos proyectos de OpenData proporcionan información en este formato.</p>
<p>A pesar de ello, XML para muchos es un formato engorroso, su interpretación o extracción de la información, a pesar de que existen muchas librerías que lo facilitan, suele traer de cabeza a muchos desarrolladores y cada vez, tiene mas presencia la tecnología <a href="http://es.wikipedia.org/wiki/JSON" target="wiki">JSON</a> a la hora de acceder a servidores de datos, APIs, etc.. la facilidad para generar y recuperar la información que ofrece JSON esta haciendo que sea estándar de facto en prácticamente todos los servicios que permiten interactuar con servicios terceros. Empresas como Facebook o <a href="http://www.mywot.com/wiki/API" target="wot">WOT</a>, apuestan por JSON para el acceso a la información, sobre todo cuando esta se genera de forma dinámica. Aun así en la mayoría de los casos sigue estando opcional el acceso s los datos en XML.</p>
<p>En este articulo trato de presentar <a href="http://code.google.com/intl/eu/apis/protocolbuffers/docs/overview.html" target="protobuff">Protocol Buffers</a>, una solución que pretende ser mas optima, en lo que respecta a trafico de datos, y mas opaca, si lo que interesa es que la información no viaje de forma totalmente visible. Personalmente, creo que lo mas interesante de este sistema es que reduce considerablemente el volumen de trafico generado en cada petición de información, lo cual es muy interesante si lo que queremos es desarrollar un servicio explotado por aplicaciones móviles, donde podemos conseguir aplicaciones mas fluidas, si conseguimos que el tiempo de conexión sea el menor posible.</p>
<p>En mi caso, Protocol Buffers me parece una solución interesante, ya que suelo usar <a href="http://code.google.com/intl/eu/appengine/" target="gae">Google App Engine</a>, como web service generador de datos, y para terminales móviles suelo trabajar con Android, para el cual existen librerias. Además hay que tener en cuenta que muchas de las aplicaciones de serie en Android como el Market usan Protocol Buffers internamente (a pesar de que oficialmente la SDK de Android no ofrece acceso a dichas librerías).</p>
<p>En próximos post explicare como manejar Protocol Buffers en python.</p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/wDWwneluxBE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2011/02/21/xml-json%e2%80%a6-protocol-buffers/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2011/02/21/xml-json%e2%80%a6-protocol-buffers/</feedburner:origLink></item>
		<item>
		<title>Curso de Iniciación de Google App Engine</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/Y_1ac53hCog/</link>
		<comments>http://www.ikeralbeniz.net/2011/02/17/curso-de-iniciacion-de-google-app-engine/#comments</comments>
		<pubDate>Thu, 17 Feb 2011 13:09:05 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[Google App Engine]]></category>
		<category><![CDATA[Noticias]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[#status]]></category>
		<category><![CDATA[bilbao]]></category>
		<category><![CDATA[curso]]></category>
		<category><![CDATA[engine]]></category>
		<category><![CDATA[gae]]></category>
		<category><![CDATA[gtug]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=581</guid>
		<description><![CDATA[<img alt="" src="http://code.google.com/intl/eu/appengine/images/appengine_lowres.png" class="alignleft" width="142" height="109" />Este sábado dentro de las iniciativas llevadas a cabo por <a href="https://groups.google.com/group/gtug-bilbao?pli=1" target="gtugb"><strong>GTUG (Google Technology User Group) Bilbao</strong></a>, se va a llevar a impartir un curso de iniciación a la plataforma <a href="http://code.google.com/intl/eu/appengine/docs/" target="gae"><strong>Google App Engine</strong></a>. El curso será este Sábado 19 de Febrero en la sede de <a href="http://www.creativityzentrum.com/seccion_colab.html" target="colab">Creativity Zentrum Bilbao</a> a las diez de la mañana.

El curso básicamente va a ser una introducción a la plataforma y se realizará la guía "<a href="http://code.google.com/intl/eu/appengine/docs/python/gettingstarted/" target="gaestart">Getting Started</a>" de forma interactiva, mientras se resuelven dudas realizando todos los ejemplos y alguna prueba mas que pueda ser de interés. Se supondrá que los usuarios tienen cierto conocimiento en Python, aunque al tratarse de un lenguaje muy sencillo con tener conocimientos en lenguajes orientados a objetos seria suficiente.

Así que si no tenéis planes para este sábado a la mañana y siempre habéis tenido ganas de hincarle el diente a este servicio de Google no lo dudéis y confirmar vuestra asistencia en el siguiente enlace: <a href="http://doodle.com/wm7a4ucbaf4xhmxi" target="doodle">http://doodle.com/wm7a4ucbaf4xhmxi</a>

<h2>Asociacion Creativity Zemtrum Bizcaya</h2>
<iframe width="600" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.es/maps?f=q&#38;source=s_q&#38;hl=eu&#38;geocode=&#38;q=Creativity+Zentrum+bilbao&#38;aq=&#38;sll=40.396764,-3.713379&#38;sspn=13.545514,19.753418&#38;ie=UTF8&#38;hq=Creativity+Zentrum&#38;hnear=Bilbo,+Bizkaia,+Euskadi&#38;t=h&#38;cid=5281189555633316491&#38;ll=43.265956,-2.927771&#38;spn=0.021875,0.049782&#38;z=14&#38;iwloc=A&#38;output=embed"></iframe><br /><small><a href="http://maps.google.es/maps?f=q&#38;source=embed&#38;hl=eu&#38;geocode=&#38;q=Creativity+Zentrum+bilbao&#38;aq=&#38;sll=40.396764,-3.713379&#38;sspn=13.545514,19.753418&#38;ie=UTF8&#38;hq=Creativity+Zentrum&#38;hnear=Bilbo,+Bizkaia,+Euskadi&#38;t=h&#38;cid=5281189555633316491&#38;ll=43.265956,-2.927771&#38;spn=0.021875,0.049782&#38;z=14&#38;iwloc=A" style="color:#0000FF;text-align:left">Ikusi mapa handiagoa</a></small>
]]></description>
			<content:encoded><![CDATA[<p><img alt="" src="http://code.google.com/intl/eu/appengine/images/appengine_lowres.png" class="alignleft" width="142" height="109" />Este sábado dentro de las iniciativas llevadas a cabo por <a href="https://groups.google.com/group/gtug-bilbao?pli=1" target="gtugb"><strong>GTUG (Google Technology User Group) Bilbao</strong></a>, se va a llevar a impartir un curso de iniciación a la plataforma <a href="http://code.google.com/intl/eu/appengine/docs/" target="gae"><strong>Google App Engine</strong></a>. El curso será este Sábado 19 de Febrero en la sede de <a href="http://www.creativityzentrum.com/seccion_colab.html" target="colab">Creativity Zentrum Bilbao</a> a las diez de la mañana.</p>
<p>El curso básicamente va a ser una introducción a la plataforma y se realizará la guía &#8220;<a href="http://code.google.com/intl/eu/appengine/docs/python/gettingstarted/" target="gaestart">Getting Started</a>&#8221; de forma interactiva, mientras se resuelven dudas realizando todos los ejemplos y alguna prueba mas que pueda ser de interés. Se supondrá que los usuarios tienen cierto conocimiento en Python, aunque al tratarse de un lenguaje muy sencillo con tener conocimientos en lenguajes orientados a objetos seria suficiente.</p>
<p>Así que si no tenéis planes para este sábado a la mañana y siempre habéis tenido ganas de hincarle el diente a este servicio de Google no lo dudéis y confirmar vuestra asistencia en el siguiente enlace: <a href="http://doodle.com/wm7a4ucbaf4xhmxi" target="doodle">http://doodle.com/wm7a4ucbaf4xhmxi</a></p>
<h2>Asociacion Creativity Zemtrum Bizcaya</h2>
<p><iframe width="600" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.es/maps?f=q&amp;source=s_q&amp;hl=eu&amp;geocode=&amp;q=Creativity+Zentrum+bilbao&amp;aq=&amp;sll=40.396764,-3.713379&amp;sspn=13.545514,19.753418&amp;ie=UTF8&amp;hq=Creativity+Zentrum&amp;hnear=Bilbo,+Bizkaia,+Euskadi&amp;t=h&amp;cid=5281189555633316491&amp;ll=43.265956,-2.927771&amp;spn=0.021875,0.049782&amp;z=14&amp;iwloc=A&amp;output=embed"></iframe><br /><small><a href="http://maps.google.es/maps?f=q&amp;source=embed&amp;hl=eu&amp;geocode=&amp;q=Creativity+Zentrum+bilbao&amp;aq=&amp;sll=40.396764,-3.713379&amp;sspn=13.545514,19.753418&amp;ie=UTF8&amp;hq=Creativity+Zentrum&amp;hnear=Bilbo,+Bizkaia,+Euskadi&amp;t=h&amp;cid=5281189555633316491&amp;ll=43.265956,-2.927771&amp;spn=0.021875,0.049782&amp;z=14&amp;iwloc=A" style="color:#0000FF;text-align:left">Ikusi mapa handiagoa</a></small></p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/Y_1ac53hCog" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2011/02/17/curso-de-iniciacion-de-google-app-engine/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2011/02/17/curso-de-iniciacion-de-google-app-engine/</feedburner:origLink></item>
		<item>
		<title>Archivos DEX (Dalvik Executable): La Tabla de Tipos</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/9XRYi_-rarU/</link>
		<comments>http://www.ikeralbeniz.net/2011/02/14/archivos-dex-dalvik-executable-la-tabla-de-tipos/#comments</comments>
		<pubDate>Mon, 14 Feb 2011 20:17:30 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Internals]]></category>
		<category><![CDATA[Tecnologia]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[dalvik]]></category>
		<category><![CDATA[dex]]></category>
		<category><![CDATA[internals]]></category>
		<category><![CDATA[tipos]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=553</guid>
		<description><![CDATA[Seguimos desenmarañando la estructura de los archivos Dex y ahora nos toca la tabla de tipos, es decir, los diferentes tipos de datos que utiliza nuestra aplicación a analizar. En este caso al igual que hicimos con la <a href="http://www.ikeralbeniz.net/2011/01/30/archivos-dex-dalvik-executable-la-tabla-de-strings/" target="strings">tabla de strings</a>, <a href="http://www.ikeralbeniz.net/2011/01/28/archivos-dex-dalvik-executable-la-cabecera/" target="header">obtenemos el offset y numero de elementos en la tabla de tipos de la cabecera</a>. En el caso que estamos analizando la tabla de tipos comienza en <strong>0x000001AC</strong> y tiene <strong>28 (0x0000001C) elementos</strong>. Recorriendo de 4 en 4 bytes obtenemos las posiciones en la tabla de strings que identifican los tipos a usar: 2,7,8,9,10..]]></description>
			<content:encoded><![CDATA[<p>Seguimos desenmarañando la estructura de los archivos Dex y ahora nos toca la tabla de tipos, es decir, los diferentes tipos de datos que utiliza nuestra aplicación a analizar. En este caso al igual que hicimos con la <a href="http://www.ikeralbeniz.net/2011/01/30/archivos-dex-dalvik-executable-la-tabla-de-strings/" target="strings">tabla de strings</a>, <a href="http://www.ikeralbeniz.net/2011/01/28/archivos-dex-dalvik-executable-la-cabecera/" target="header">obtenemos el offset y numero de elementos en la tabla de tipos de la cabecera</a>. En el caso que estamos analizando la tabla de tipos comienza en <strong>0x000001AC</strong> y tiene <strong>28 (0x0000001C) elementos</strong>. Recorriendo de 4 en 4 bytes obtenemos las posiciones en la tabla de strings que identifican los tipos a usar: 2,7,8,9,10..</p>
<ol  start="0">
<li>elemento 2 de la lista de STRINGS: I</li>
<li>elemento 7 de la lista de STRINGS: Landroid/app/Activity;</li>
<li>elemento 8 de la lista de STRINGS: Landroid/os/Bundle;</li>
<li>elemento 9 de la lista de STRINGS: Landroid/text/Editable;</li>
<li>elemento 10 de la lista de STRINGS: Landroid/view/View$OnClickListener;</li>
<li>elemento 11 de la lista de STRINGS: Landroid/view/View;</li>
<li>elemento 12 de la lista de STRINGS: Landroid/widget/Button;</li>
<li>elemento 13 de la lista de STRINGS: Landroid/widget/EditText;</li>
<li>elemento 14 de la lista de STRINGS: Landroid/widget/TextView;</li>
<li>elemento 15 de la lista de STRINGS: Lcom/marakana/NDKDemo$1;</li>
<li>elemento 16 de la lista de STRINGS: Lcom/marakana/NDKDemo;</li>
<li>elemento 17 de la lista de STRINGS: Lcom/marakana/NativeLib;</li>
<li>elemento 18 de la lista de STRINGS: Lcom/marakana/R$attr;</li>
<li>elemento 19 de la lista de STRINGS: Lcom/marakana/R$drawable;</li>
<li>elemento 20 de la lista de STRINGS: Lcom/marakana/R$id;</li>
<li>elemento 21 de la lista de STRINGS: Lcom/marakana/R$layout;</li>
<li>elemento 22 de la lista de STRINGS: Lcom/marakana/R$string;</li>
<li>elemento 23 de la lista de STRINGS: Lcom/marakana/R;</li>
<li>elemento 24 de la lista de STRINGS: Ldalvik/annotation/EnclosingClass;</li>
<li>elemento 25 de la lista de STRINGS: Ldalvik/annotation/EnclosingMethod;</li>
<li>elemento 26 de la lista de STRINGS: Ldalvik/annotation/InnerClass;</li>
<li>elemento 27 de la lista de STRINGS: Ldalvik/annotation/MemberClasses;</li>
<li>elemento 28 de la lista de STRINGS: Ljava/lang/CharSequence;</li>
<li>elemento 29 de la lista de STRINGS: Ljava/lang/Integer;</li>
<li>elemento 30 de la lista de STRINGS: Ljava/lang/Object;</li>
<li>elemento 31 de la lista de STRINGS: Ljava/lang/String;</li>
<li>elemento 32 de la lista de STRINGS: Ljava/lang/System;</li>
<li>elemento 37 de la lista de STRINGS: V</li>
</ol>
<p>Estos strings usan una sintaxis concreta y pueden traducirse a una forma mas común de definir los tipos mediante la siguiente tabla.</p>
<table class="descriptor">
<thead>
<tr>
<th>Syntax</th>
<th>Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td>V</td>
<td><code>void</code></td>
</tr>
<tr>
<td>Z</td>
<td><code>boolean</code></td>
</tr>
<tr>
<td>B</td>
<td><code>byte</code></td>
</tr>
<tr>
<td>S</td>
<td><code>short</code></td>
</tr>
<tr>
<td>C</td>
<td><code>char</code></td>
</tr>
<tr>
<td>I</td>
<td><code>int</code></td>
</tr>
<tr>
<td>J</td>
<td><code>long</code></td>
</tr>
<tr>
<td>F</td>
<td><code>float</code></td>
</tr>
<tr>
<td>D</td>
<td><code>double</code></td>
</tr>
<tr>
<td>L<i>nombre/completo/Clase</i>;</td>
<td>la clase <code><i>nombre.completo.Clase</i></code></td>
</tr>
<tr>
<td>[<i>descriptor</i></td>
<td>Array de elementos <code><i>descriptor</i></code>, es posible crear arrays de arrays, con limite de profundidad 255<br /><b>Ejemplo: </b>[I &#126; array de ints (int[])
  </td>
</tr>
</tbody>
</table>
<p>Por tanto, la tabla, nos quedaria de esta manera:</p>
<ol  start="0">
<li>int</li>
<li><a href="http://developer.android.com/reference/android/app/Activity.html" target="androidapi">android.app.Activity</a></li>
<li><a href="http://developer.android.com/reference/android/os/Bundle.html" target="androidapi">android.os.Bundle</a></li>
<li><a href="http://developer.android.com/reference/android/text/Editable.html" target="androidapi">android.text.Editable</a></li>
<li><a href="http://developer.android.com/reference/android/view/View.OnClickListener.html" target="androidapi">android.view.View.OnClickListener</a></li>
<li><a href="http://developer.android.com/reference/android/view/View.html" target="androidapi">android.view.View</a></li>
<li><a href="http://developer.android.com/reference/android/widget/Button.html" target="androidapi">android.widget.Button</a></li>
<li><a href="http://developer.android.com/reference/android/widget/EditText.html" target="androidapi">android.widget.EditText</a></li>
<li><a href="http://developer.android.com/reference/android/widget/TextView.html" target="androidapi">android.widget.TextView</a></li>
<li>com.marakana.NDKDemo.1</li>
<li>com.marakana.NDKDemo</li>
<li>com.marakana.NativeLib</li>
<li>com.marakana.R.attr</li>
<li>com.marakana.R.drawable</li>
<li>com.marakana.R.id</li>
<li>com.marakana.R.layout</li>
<li>com.marakana.R.string</li>
<li>com.marakana.R</li>
<li><a href="http://www.androidjavadoc.com/1.0_r1_src/dalvik/annotation/EnclosingClass.html" target="androidapi">dalvik.annotation.EnclosingClass</a></li>
<li><a href="http://www.androidjavadoc.com/1.0_r1_src/dalvik/annotation/EnclosingMethod.html" target="androidapi">dalvik.annotation.EnclosingMethod</a></li>
<li><a href="http://www.androidjavadoc.com/1.0_r1_src/dalvik/annotation/InnerClass.html" target="androidapi">dalvik.annotation.InnerClass</a></li>
<li><a href="http://www.androidjavadoc.com/1.0_r1_src/dalvik/annotation/MemberClasses.html" target="androidapi">dalvik.annotation.MemberClasses</a></li>
<li><a href="http://developer.android.com/reference/java/lang/CharSequence.html" target="androidapi">java.lang.CharSequence</a></li>
<li><a href="http://developer.android.com/reference/java/lang/Integer.html" target="androidapi">java.lang.Integer</a></li>
<li><a href="http://developer.android.com/reference/java/lang/Object.html" target="androidapi">java.lang.Object</a></li>
<li><a href="http://developer.android.com/reference/java/lang/String.html" target="androidapi">java.lang.String</a></li>
<li><a href="http://developer.android.com/reference/java/lang/System.html" target="androidapi">java.lang.System</a></li>
<li>void</li>
</ol>
<p>Otro recurso mas, que sera utilizado junto a la tabla de strings para desensamblar el resto de estructuras de nuestra aplicación.</p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/9XRYi_-rarU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2011/02/14/archivos-dex-dalvik-executable-la-tabla-de-tipos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2011/02/14/archivos-dex-dalvik-executable-la-tabla-de-tipos/</feedburner:origLink></item>
		<item>
		<title>Entrevista en NickDutNik</title>
		<link>http://feedproxy.google.com/~r/IkerPerezDeAlbeniz/~3/GQoUyIirqhU/</link>
		<comments>http://www.ikeralbeniz.net/2011/02/06/entrevista-en-nickdutnik/#comments</comments>
		<pubDate>Sun, 06 Feb 2011 18:40:53 +0000</pubDate>
		<dc:creator>Iker</dc:creator>
				<category><![CDATA[Android]]></category>
		<category><![CDATA[Noticias]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[bizkaibus]]></category>
		<category><![CDATA[entrevista]]></category>
		<category><![CDATA[etb]]></category>
		<category><![CDATA[nickdutnik]]></category>
		<category><![CDATA[tv]]></category>

		<guid isPermaLink="false">http://www.ikeralbeniz.net/?p=555</guid>
		<description><![CDATA[Como anuncié a bombo y platillo semanas antes y publiqué (no lo suficiente) en las redes sociales, el día 2 de Febrero (2011) aparecía en el programa <a href="http://www.nickdutnik.com/" target="ndn">NickDutNik</a> de ETB producido por <a href="http://www.factoria.me/" target="factoria">Factoria Crossmedia</a>. En la entrevista presentaba mi <a href="http://www.ikeralbeniz.net/2011/01/10/disponible-la-aplicacion-de-bizkaibus-para-android-desde-el-market/" target="_blanck">aplicación de Bizkaibus para Android</a> y además explicaba las razones y motivaciones que me llevaron a desarrollar esta aplicación. Pinchando en la imagen podéis ver el video de la entrevista.


<a href="http://www.nickdutnik.com/es/iker-perez-de-albeniz" target="ndn"><img src="https://lh5.googleusercontent.com/_YsgLljqoEIQ/TUpxD2JX2sI/AAAAAAAAAF0/6VRo-l3VL3M/nikdutnik.png" class="aligncenter" width="520" height="330" frameborder='0'></a>]]></description>
			<content:encoded><![CDATA[<p>Como anuncié a bombo y platillo semanas antes y publiqué (no lo suficiente) en las redes sociales, el día 2 de Febrero (2011) aparecía en el programa <a href="http://www.nickdutnik.com/" target="ndn">NickDutNik</a> de ETB producido por <a href="http://www.factoria.me/" target="factoria">Factoria Crossmedia</a>. En la entrevista presentaba mi <a href="http://www.ikeralbeniz.net/2011/01/10/disponible-la-aplicacion-de-bizkaibus-para-android-desde-el-market/" target="_blanck">aplicación de Bizkaibus para Android</a> y además explicaba las razones y motivaciones que me llevaron a desarrollar esta aplicación. Pinchando en la imagen podéis ver el video de la entrevista.</p>
<p><a href="http://www.nickdutnik.com/es/iker-perez-de-albeniz" target="ndn"><img src="https://lh5.googleusercontent.com/_YsgLljqoEIQ/TUpxD2JX2sI/AAAAAAAAAF0/6VRo-l3VL3M/nikdutnik.png" class="aligncenter" width="520" height="330" frameborder='0'></a></p>
<img src="http://feeds.feedburner.com/~r/IkerPerezDeAlbeniz/~4/GQoUyIirqhU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.ikeralbeniz.net/2011/02/06/entrevista-en-nickdutnik/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.ikeralbeniz.net/2011/02/06/entrevista-en-nickdutnik/</feedburner:origLink></item>
	</channel>
</rss><!-- Dynamic page generated in 0.789 seconds. --><!-- Cached page generated by WP-Super-Cache on 2012-05-12 21:55:12 -->

