Archive for Enero, 2010

Mr. Ballmer, ¿Firmarías mi mac?

Tras una charla impartida en la Universidad de Trevecca Nazarene, Nashville, uno de los estudiantes preguntó a Steve Ballmer si podía firmar su laptop, una MacBook, a lo que CEO de microsoft accedio entre risas.

Vía alt1040

P.D.:
Soy consciente de que últimamente tengo un poco abandonado el blog. Estoy trabajando en nuevo portal y un framework php open source (basado en codeigniter) que me gustaría publicar a mediados del mes que viene y claro, el tiempo no da para todo. Espero recuperar el ritmo habitual de posts en un par de semanas.

Instalar firefox 3.6 en ubuntu

Serán muchos los usuarios de linux que deseen actualizar a la última versión de mozilla firefox sin esperar una nueva release de su distro favorita. A continuación os dejo las instrucciones para añadir el repositorio que contiene la versión 3.6 del navegador (estable, no daily-build) en ubuntu.

Karmix (9.10) / Lucid (10.4) ejecutar en terminal

sudo add-apt-repository ppa:mozillateam/firefox-stable

Jaunty, Intrepid o Hardy (Asegurarse de reemplazar “VERSION_DE_UBUNTU” por la versión de vuestra distro)

sudo bash -c "echo 'deb http://ppa.launchpad.net/mozillateam/firefox-stable/ubuntu VERSION_DE_UBUNTU main' >> /etc/apt/sources.list"
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys CE49EC21

Y ya solo queda actualizar los repos e instalar el programa:

sudo apt-get update && sudo apt-get install firefox-3.6

Si lo preferís también es posible optar por Swiftfox 3.6, una versión optimizada del navegador para distintos procesadores (disponibles paquetes .deb optimizados para AMD64, AMD anteriores, Intel Prescott y anteriores).

Vía webupd8

Firefox 3.6

Hoy, 21 de enero, es la fecha elegida por mozilla para el lanzamiento de Firefox 3.6. A partir de las 9:30 PST (Pacific Standard Time) podrá descargarse esta nueva versión que promete mejorar la velocidad,estabilidad y experiencia del usuario respecto a versiones anteriores.

Firefox 3.6 cuenta con numerosas mejoras y novedades entre las que destacan:

  • Compatibilidad con la HTML5 File API mediante la cual ya es posible subir ficheros con javascript. También se han añadido eventos Drag and Drop.
  • Se han introducido cambios en el modo en el que se integran las extensiones/software de terceros con firefox que mejoran la estabilidad
  • CSS Gradients-Backgrounds y Web Open Font Format para desarrolladores
  • Nuevos temas visuales (Personas): Más rápido y ofrece previsualización de la nueva apariencia
  • Capacidad de correr script asincrónicamente para mejorar la velocidad de carga de las páginas
  • Firefox 3.6 avisará de plugins desactualizados para mejorar la seguridad
  • Ahora es posible reproducir a pantalla completa los vídeos html5
    fullscreen
  • Mejoras en rendimiento javascript, respuesta general del browser y tiempos de arranque
  • Añadidos mecanismos para evitar que software no compatible cuelgue el navegador
  • Compatible con nuevas técnicas CSS, DOM y HTML5

Hace algún tiempo compare firefox 3.6 beta 4 y 3.5 en un benchmark javascript, la mejora fue muy notable:
firefox_benchmark

Para terminar os dejo un vídeo donde el jefe de desarrollo de mozilla hace un repaso de las novedades incorporadas en esta nueva versión:

Links: página oficial de mozilla firefox

Killer Bean Forever

Después de haber sido el responsable de animación de Matrix Reloaded, Jeff Lew decidió crear su propia película de animación. Durante 5 años, ha estado trabajando 14 horas al día, 7 días a la semana, delante de su ordenador. Afirma haber invertido todos sus ahorros y haberse endeudado al máximo para lograr su sueño, pero finalmente, después de todo este esfuerzo y sacrificio la película ya esta la venta en internet : Killer Bean Forever.

Aquí tenéis la primera escena al completo

Todo un ejemplo de emprendedor

Novedades de jQuery 1.4

El framework javascript más laureado llega con importantes mejoras de rendimiento y nuevas funcionalidades en su reciente versión 1.4.

Lanzado el 14 de enero, coincidiendo con el cuarto aniversario del proyecto, esta versión supone la reescritura de buena parte de las funciones más populares con el objetivo de simplificar el mantenimiento del core y aumentar la velocidad de respuesta del framework.

Setters

Las funciones .attr(),.css(), .attr(), .val(), .html(), .text(), .append(), .prepend(), .before(), .after(), .replaceWith(), .wrap(), .wrapInner(), .offset(), .addClass(), .removeClass(), y .toggleClass() ya aceptan funciones como parámetro facilitando la modificación de los elementos.

// find all ampersands in A's and wrap with a span
$('a').html(function(i,html){
  return html.replace(/&/gi,'&');
});

// Add some information to the title of the anchors
$('a[target]').attr("title", function(i,title){
  return title + " (Opens in External Window)";
});

Serializar parámetros anidados

En jQuery 1.3 {foo: ["bar", "baz"]} era serializado como foo=bar&foo=baz, ahora el resultado quedaría en foo[]=bar&foo[]=baz

De todas formas, aún es posible volver a el comportamiento tradicional:

// Enables for all serialization
jQuery.ajaxSettings.traditional = true;

// Enables for a single serialization
jQuery.param( stuff, true );

// Enables for a single Ajax requeset
$.ajax({ data: stuff, traditional: true });

El método serialize() también reconoce ahora elementos html5 como `datetime` o `range`.

Contexto en llamadas ajax


Read more

No al cierre de páginas webs


Madrid, 4 de diciembre:

El presidente del Gobierno, José Luis Rodríguez Zapatero, ha garantizado hoy en la rueda de prensa tras la reunión con el presidente del Parlamento Europeo, que el Gobierno no se ha planteado en ningún momento cerrar ninguna página web por la vía administrativa y dijo que el Ministerio de Cultura introducirá «las aclaraciones oportunas» en la futura ley de economía sostenible

Pues bien, «las aclaraciones oportunas» se traducen en que las garantías del presidente del gobierno no valen nada hoy. Tras un lavado de cara mínimo de la disposición final primera de la Ley de Economía Sostenible las cosas están igual que estaban y ahora nos toca a los distintos agentes sociales y colectivos afectados hacernos oír y exigir la retirada de esta, o será tarde para arrepentimientos.

Una vez más desde proyecto-f nos unimos a el colectivo de internautas bajo el lema A partir de hoy, Red y Libertad de la campaña Internet no sera otra tele publicado originalmente en red-sostenible.net.

La Red Sostenible somos todos/as. Si quieres adherirte a este texto, cópialo, blogguéalo, difúndelo.

A partir de hoy, Red y Libertad

Consideramos imprescindible la retirada de la disposición final primera de la Ley de Economía Sostenible por los siguientes motivos:

1 -Viola los derechos constitucionales en los que se ha de basar un estado democrático en especial la presunción de inocencia, libertad de expresión, privacidad, inviolabilidad domiciliaria, tutela judicial efectiva, libertad de mercado, protección de consumidoras y consumidores, entre otros.

2 – Genera para la Internet un estado de excepción en el cual la ciudadanía será tratada mediante procedimientos administrativos sumarísimos reservados por la Audiencia Nacional a narcotraficantes y terroristas.

3 – Establece un procedimiento punitivo “a la carta” para casos en los que los tribunales ya han manifestado que no constituían delito, implicando incluso la necesidad de modificar al menos 4 leyes, una de ellas orgánica. Esto conlleva un cambio radical en el sistema jurídico y una fuente de inseguridad para el sector de las TIC (Tecnología de la Información y la Comunicación). Recordamos, en este sentido, que el intercambio de conocimiento y cultura en la red es un motor económico importante para salir de la crisis como se ha demostrado ampliamente

Read more

Contenido relacionado con mysql

Implementar links a post/vídeos/contenido relacionado es, al contrario de lo que pueda parecer, una tarea bastante sencilla.

Para el siguiente ejemplo imaginemos que partimos de una web estilo youtube sobre una base de datos mysql, cada pagina contiene 5 tags, una descripción y titulo. El objetivo será lanzar una consulta a base de datos que devuelva los vídeos relacionados ordenador por su relevancia/parecido.

Antes de nada vamos a tener que añadir indices fulltext a los campos de la bd sobre los que queremos lanzar la consulta (estos indices solo son compatibles con el motor MyIsam y no con InnoDB).

ALTER TABLE videos ADD FULLTEXT(title, description, keywords);

A partir de aquí ya solo queda dividir los tags/descripción/titulo en tokens y lanzar la siguiente consulta:

select * from videos where match(title, description, keywords)
against (‘word1 word2 word3 word4′ in boolean mode)
order by relevance desc

El modificador boolean mode también permite descartar los resultados que contengas ‘xxxx’ palabras. El siguiente ejemplo devuelve los resultados que contengas katrina pero no se refieran al huracán.

select * from videos where match(title, description, keywords)
against (‘+Hurricane -Katrina’ IN BOOLEAN MODE);

Más información sobre búsquedas fulltext mysql

Pantalla AMOLED transparente de samsung

Presentada en CES, las pantallas amoled transparentes de samsung se han convertido en una de las novedades más interesantes del año.

No hay intención de comercializar el prototipo a corto plazo, aunque el modelo mostrado es plenamente funcional, debido al aún altísimo precio de las mismas, pero la tecnología parece tener un futuro prometedor aplicado a conceptos como la realidad aumentada.

Cuenta con una resolución de 1000×600 píxels, tiene 14 pulgadas y un nivel de transparencia del 40%.

Fuente e imagen: gizmodo

Diez tecnologías que no sobrevivieron a la década

La pasada década se caracterizo, entre otras cosas, por el salto de lo analógico a lo digital que convirtió en obsoletas muchas tecnologías que hace no tanto parecían irreemplazables. Por poner un ejemplo, cámaras fotográficas carísimas se vendieron a precios de coste primero y semi-regalados después para financiar parte de la adquisición de un nuevo equipo digital.

En rtve.es han creado un listado de 10 tecnologías que perecieron la pasada década (o están a punto de hacerlo):

  • La fotografía analógica
  • Las cintas de vídeo doméstico
  • El walkman
  • Los módems analógicos
  • Altavista, Yahoo!, GeoCities
  • Los radiocasetes de los coches
  • Las agendas electrónicas (PDA)
  • El fax
  • Los ‘buscas’
  • Los disquetes

Compilar directamente a .deb

Ubucompilator es un programa, licenciado bajo GPL v3, que automatiza el compilado de fuentes y la creación de paquetes .deb a través de una sencilla interface de usuario. Un paso adelante, sin duda, para que más desarrolladores de aplicaciones linux se animen a distribuir paquetes precompilados para distibuciones debian-based junto a las fuentes.

Ademas de ahorrarnos el clásico ./configure –prefix=/usr/local && make && make install , instalar software desde ficheros .deb´s facilita su posterior gestión mediante front ends apt como synaptic.

Funciona sobre ubuntu, linux mint o cualquier otra distro basada en debian (esta incluida).

Descargar ubuntucompilator

Ejecutar CodeIgniter desde línea de comandos

Ejecutar script PHP desde consola se vuelve útil cuando queremos programar la ejecución de un script en Cron (sin pasar por CURL) o necesitamos lanzar script intensivos saltandonos algunas limitaciones como el tiempo máximo de ejecución.

El primer paso sera crear un archivo php en el mismo directorio que nuestro index.php con el siguiente contenido

   if (isset($_SERVER['REMOTE_ADDR'])) {
       die('Command Line Only!');
   }  

   set_time_limit(0);  

   $_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'] = $argv[1];
   require dirname(__FILE__) . '/index.php';

Si estamos trabajando sobre un servidor linux tambien podemos hacer que el script sea auto-ejecutable añadiendo #!/usr/bin/php en la primera línea del fichero.

El siguiente paso es crear un controlador en codeigniter y asegurarnos de que solo es ejecutado desde línea de comandos:

   class Hello extends Controller {  

       function __construct() {
           if (isset($_SERVER['REMOTE_ADDR'])) {
               die('Command Line Only!');
           }
           parent::Controller();
       }  

      // ...
  }

A partir de aquí solo queda ejecutarlo desde línea de comandos. En windows sería algo así:

c:\wamp\bin\php\php5.3.0\php.exe \directorio\cli.php "clase/funcion/parámetro"

Y en Linux:

php /directorio/cli.php "clase/funcion/parámetro"

versión auto-ejecutable en Linux:

/directorio/cli.php "clase/funcion/parámetro"

Vía tutsplus

Google Nexus One lanzado en EEUU

Era un secreto a voces y finalmente se ha confirmado, el teléfono de google nexus one ya se puede comprar en en Estados Unidos, Hong Kong y Taiwan.

El celular, fabricado por HTC, cuenta con una ficha técnica impecable y un precio atractivo: $529 libre y $180 con dos años de permanencia en T-Mobile.

Especificaciones

  • Pantalla AMOLED táctil de 3.7 pulgadas con una resolución de 800×480 pixels
  • Procesador Snapdragon a 1 GHz
  • Sensores de luz para ajustar el brillo automáticamente
  • Memoria interna de 512MB Flash, 512MB en RAM, ranura Micro DS con una tarjeta de 4GB (acepta hasta 32 GB)
  • Receptor GPS, el acelerómetro y la brújula
  • Cámara de 5 megapíxeles con un flash LED
  • Conectividad UMTS, HSDPA, HSUPA, GSM, EDGE de cuatro bandas y Wi-Fi 802.11 b/g/n

Equipado con Android 2.1, el móvil no pasa de los 130 gramos de peso y tiene un grosor de 1,15 centímetros.

Vídeos del terminal

Aplicaciones web


Read more