Categories
PostgreSQL

PostgreSQL 8.2

Actualización: un comentario muy divertido hecho en slashdot en relación al rendimiento de MySQL vs PostgreSQL 😀

How fast is it against MyISAM?

I've managed to get my PostgreSQL installation tuned to very high speeds simply by switching the database disk over to /dev/null. It runs fast as hell, and the data integrity is basically the same as MyISAM.

Hoy, luego de ocho meses de desarrollo y cinco de integración y pruebas, acaba de liberarse una versión de esta magnífica base de datos.

Categories
.NET ASP.NET

Tip: Determinar en tiempo de ejecución, si una aplicación ASP.NET está en modo “Debug”

Si por algún motivo alguien necesita realizar ciertas acciones (ejm. mostrar información de depuración) cuando una aplicación está en modo Debug, talvez le interese el siguiente código -que comprueba en tiempo de ejecución si la aplicación Web está con la directiva <compilation debug="false"/> en el Web.config:

csharp:

private bool IsDebugMode()
{
    Page p = HttpContext.Current.Handler as Page;
    if (p != null) {
        object[] o = p.GetType().Assembly.GetCustomAttributes(typeof(DebuggableAttribute), true);

        return o != null && o.Length > 0;
    }
    return false;
}

Hay que tener en cuenta que este tipo de cosas se deben evitar en entornos de producción -al igual que tener la aplicación en modo Debug.

Categories
PHP Quiz Seguridad

Cuando los filtros no hacen lo que deberían – Parte 2

La siguiente función era utilizada para validar los datos en una aplicación web -es una versión modificada del método que trae ezSQL

php:

function escape($text) {
        return mysql_real_escape_string(stripslashes(strip_tags($text)), $this->connection);
}

Se usaba de la siguiente manera:

php:

// agregar.php
<?php

if (!empty($_POST['url']) && !empty($_POST['title'])) {
        $sql = "INSERT IGNORE INTO links (url, title) VALUES ('%s', '%s')"; // ignorar los links repetidos
        $db->query(sprintf($sql, $db->escape($_POST['url']), $db->escape($_POST['title'])));
}

?>

php:

// listar.php
<html>

<head>
        <title>Demo</title>
</head>

<body>

<?php $links = $db->get_results('SELECT url, title FROM links'); ?>

<ul>
<?php foreach ($links as $link) : ?>
        <li><a href="<?php echo $db->escape($link->url); ?>">
                <?php echo $db->escape($link->title); ?></a></li>              
<?php endforeach; ?>
</ul>

</body>

</html>

¿Pueden identificar donde está el error?

Nota: la respuesta al quiz sobre validación de datos, todavía queda pendiente a pedido de Victor.

Categories
Firefox Google JavaScript Varios

Google Analytics: urchinTracker is not defined

Muchos de los sitios que usan Google Analytics para manejar sus estadísticas, presentan un -pequeño- error en javascript cuando el visitante usa Firefox.

Google Analytics errors

Google Analytics errors

Para solucionar -realmente- este pequeño error, pueden usar una versión modificada del script de Google Analytics o cambiar lo siguiente para evitar que se muestre el error:

html:

<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>

<script type="text/javascript">
_uacct = "....";
urchinTracker();
</script>

por:

html:

<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>

<script type="text/javascript">
_uacct = "....";
if (typeof(urchinTracker) == 'function') {
  urchinTracker();
}
</script>

Categories
Microsoft Office

Descargas de la versión de prueba de Office 2007

Aunque la versión final de Office 2007 ya está circulando por bit torrent desde hace algún tiempo, revisando el sitio trymicrosoftoffice.com, veo que ya se puede descargar las versiones de prueba de este software. El periodo de prueba será aproximadamente 2 meses, con la posibilidad de aquirir una licencia al término de ésta.