Archivo de la categoría Internet

Avast!



Para ser sinceros, todo lo que me atrajo de NOD32 en su día, se ha ido difuminando poco a poco. Es decir, su grado superior de detección, en conjunción con la elevada velocidad de escaneo, son cualidades, que una vez superada la versión 1, poco a poco dejaron de estar en NOD32.

Claro que NOD32 era un software feo en apariencia, y se ha ido mejorando en las sucesivas versiones 2 y 3, pero a costa de conseguir un producto cada vez más lento, y que gracias a las pruebas de AV-Comparatives, no ofrece unos grados de detección espectaculares.

Con la inminente salida de la versión 4, de momento en beta, las cosas parece que no van a ir por buen camino… Sigue sin haber una versión nativa de 64 bits, el consumo de memoria es todavía más alto, y la velocidad de escaneo del módulo residente, puede empezar a considerarse intrusiva.…

Continuar leyendo...

Pretty URL en PHP



Por motivos de posicionamiento en buscadores, nos puede interesar que los parámetros pasados por GET, formen parte de la URL.

Así, en vez de invocar a páginas del estilo index.php?parametro=valor podríamos tener index.php/parámetro/valor.

Por supuesto, esta operación la podemos realizar con el conocido mod_rewrite, o cualquiera de sus ports para Windows, aunque quizás pensemos que su configuración es demasiado tediosa, o bien sencillamente no nos sea posible instalar dicho módulo.

En el fondo, la información relativa a los parámetros, existe para PHP en la variable de servidor que contiene la URL, por lo que podríamos sencillamente, escribir una pequeña función, que transformase los parámetros, en parámetros normales de $_GET:

function URL2GetPairs()
{
$sUrl=utf8_decode(urldecode($_SERVER['URL']));

//En algunos casos URL contiene también el nombre de la página, así que si lo hay se lo quitamos.…

Continuar leyendo...

Novedades en Windows 7



Reconozco que el título del artículo me ha salido bastante pretencioso… Primero, porque voy a hablar de la milestone 3 de Windows 7, que con el kernel 6.1.6801.4106, queda muy lejos de ser la versión definitiva. Segundo, porque según los pantallazos publicados por WinFuture.de, no se ven demasiadas novedades… Salvo Wordpad, que desde su introducción con Windows 95, apenas a recibido actualizaciones.

Parece que la versión en Windows 7, además de la cinta y el interface de Office 2007, incluye algunas funcionalidades adicionales. Por supuesto, nunca será un procesador de textos potente, pero al menos, se aprecia un salto, quizás superior al que transcurrió de Write a Wordpad.…

Continuar leyendo...

Potenciado por WordPress



Ya hemos visto que los mensajes descriptivos, o las buenas traducciones al castellano son cosas que no abundan en el software.

El caso de hoy, pertenece a la pantalla de login en el WP-Admin, aunque algo oculto, el ALT de la imagen puede saltarnos con su irrelevante mensaje de "Potenciado por WordPress"… Y es que si hace unos años traducíamos "Powered by" por "Empujado por" o "Movido por", ahora le toca el turno al "Potenciado por", ¡como si fuera un gestor de blogs tuneado para competición!



Continuar leyendo...

100/100 en Acid3



Aunque fue la gente de Opera, los primeros en crear una versión de su motor, capaz de conseguir los 100 puntos en el test Acid3, parece que finalmente quien pegará primero será la gente de Webkit.

El último Opera disponible (9.61.10463) se conforma con 85 puntos, la última compilación de Chromium 0.3.155.0 build 3972, obtiene los deseados 100 puntos, pero con un aviso de "Linktest failed".

Sin embargo, Safari 3.1.2, combinado con la última compilación de Webkit (37819), si que es capaz de pasar satisfactoriamente el test.

Con todo, parece que la tecnología ya está ahí, lo que queda por ver, es quien lanzará oficialmente en primer lugar, un navegador con este soporte.…

Continuar leyendo...

Usar o no usar mysql_num_rows



PHP incluye la función para MySQL mysql_num_rows, que en base a un recurso procedente de una consulta MySQL, retorna un numérico que representa el total de registros que se han devuelto.

El sentido común indica que utilizar la consulta SQL usando COUNT(*) será probablemente algo más eficiente, basicamente por aquello de que todo lo relacionado con el manejo de los datos, lo gestiona mejor el propio SGBD.

Lo que yo no sabía, era que la diferencia fuera tan grande… Así, para una tabla con aproximadamente 50.000 artículos, el código con mysql_num_rows siguiente, ha requerido 0,175506 segundos, o un poco más de 5 consultas por segundo:

//Contar usando num_rows
$fInicio=microtime(true);
$sSQL="SELECT * FROM articulo ";
$rstListado=mysql_query($sSQL);
$iRows=mysql_num_rows($rstListado);
mysql_free_result($rstListado);
$fFinal=microtime(true);
echo "Contar num_rows: " .


Continuar leyendo...

Windows 2008 x86 y x64 gratis



La iniciativa DreamSpark de Microsoft, permite que estudiantes obtengan productos de la compañía de forma totalmente gratuita. Se imponen las restricciones lógicas que prohiben el uso de el software así obtenido con fines comerciales, o su reventa, aunque por lo demás, son ediciones completas y plenamente funcionales.

Dentro del programa, se ofrecen aplicativos de todo tipo, algunos ya gratuitos por otros medios como las ediciones Express de Visual C# 2008, Visual C++ 2008, SQL Server 2008, o Virtual PC 2007. Otros son versiones anteriores a las actuales, como Visual Studio 2005 Professional, o Windows Server 2003 Standard.…

Continuar leyendo...

Lote óptimo



Gracias al proyecto de digitalización de la Revista ZX, y a raiz de un encuento casual con el listado de programas publicados, me encuentro con que dentro del número 15 de febrero de 1986, en la página 54, aparece lo siguiente:

Lo curioso del caso, es que aunque recuerdo perfectamente haber mandado con cierta periodicidad programas a revistas, aproximadamente de los 10 a los 18 años, empezando con ZX, o Microhobby, y acabando con PC-Actual, mi memoria sólo es consciente de un par de contribuciones que finalmente fueran publicadas. En este caso, en PC-Actual.

Algunos, sobre todo durante la última época, eran pequeños programas en ensamblador o GW-Basic, aunque mi primera época, que fue quizá las más prolífica, consistía unicamente en simples programas para Sinclair BASIC que implementaban ideas propias muy sencillas, o programaban fórmulas que había leído en algún otro sitio.…

Continuar leyendo...

The Ur-Quan Masters



Supongo que todos recordaréis la adictiva saga Star Control de Accolade, que a principios de los 90 se ofreció para la mayoría de sistemas tanto de 8, como de 16 bits, y que continuaría unos años más con Star Control 2 y Star Control 3.

Me gustaba de él, que en su primera versión, era capaz de funcionar en hardware muy limitado, obteniendo el máximo de sus posibilidades en un 286 con 640 Kb. de memoria ejecutando la versión VGA para DOS, y que cabía perfectamente en un disquete, lo que permitía pasar un rato de entretenimiento, en casi cualquier ordenador. Las siguientes versiones, explotaban ya los 32 bits, aunque en el caso de los PC, todavía bajo el socorrido DOS.…

Continuar leyendo...

Tira del día de Garfield en castellano



Hace algo más de tres años, que publiqué en Tira del día de Garfield, un sencillo script para tener acceso diario la última tira de Garfield publicada.

Hoy os lo traigo actualizado y mejorado, obteniendo el contenido de la página en castellano.

El código está basado en la anterior versión, con un par de añadidos, y no es precisamente un buen ejemplo para nada:

<script language="Javascript" type="text/javascript">
var sUrl='';
var dteToday=new Date();

if (dteToday.getFullYear()<100)
{
sUrl+='http://www.garfield-es.com/tiras/tiras/' + (dteToday.getFullYear() + 2000) + '/';
}
else
{
sUrl+='http://www.garfield-es.com/tiras/tiras/' + dteToday.getFullYear() + '/';
}
if ((dteToday.getMonth() + 1)<10)
{
sUrl+='0' + (dteToday.getMonth() + 1 + '/');
}
else
{
sUrl+=(dteToday.getMonth() + 1) + '/';
}
if (dteToday.getYear()<2000)
{
if (dteToday.getYear()<10)
{
sUrl+='ga0' + dteToday.getYear();
}
else
{
sUrl+='ga' + dteToday.getYear();
}
}
else
{
if (dteToday.getYear()<2010)
{
sUrl+='ga0' + (dteToday.getYear() – 2000);
}
else
{
sUrl+='ga' + (dteToday.getYear() – 2000);
}
}
if ((dteToday.getMonth() + 1)<10)
{
sUrl+='0' + (dteToday.getMonth() + 1);
}
else
{
sUrl+=(dteToday.getMonth() + 1);
}
if (dteToday.getDate()<10)
{
sUrl+='0' + dteToday.getDate();
}
else
{
sUrl+=dteToday.getDate();
}
sUrl+='.gif';
document.write('<img src="' + sUrl + '" title="La tira de Garfield de hoy" border=0>');
</script>

var sUrl=''; var dteToday=new Date();

if (dteToday.getFullYear()…

Continuar leyendo...