Archivo de la categoría Programación

Actualización a SPHPBlog 0.4.4e



Aprovechando que el equipo de bitacoras.com, ha estado migrando el servicio a una nueva infraestructura, he decidido complicar todavía más el asunto actualizando el software de mi blog.

He instalado la versión 0.4.4e de Simple PHP Blog, con importantes cambios de código que realicé entre ayer y hoy.

La nueva programación es experimental, ya que por falta de tiempo, no he podido comprobar el funcionamiento tanto como sería deseable.

El objetivo ahora es ir estabilizando la versión 0.4.4, para poderla liberar como final.

Por otro lado, llevaba un tiempo probando funcionalidades en mi servidor de desarrollo, pero sin testearlas expuestas al público.…

Continuar leyendo...

Lentitud de ejecución



Supongo que os habéis dado cuenta de que últimamente mi bitácora tardaba muchísimo en cargar.

Hablo del orden de 45 segundos, o más, el problema estaba con el artículo Weather Pixie, que incluye una imágen remota, y que se genera dinámicamente.

Cuando la imagen se incluye en un tag [ img ], Simple PHP Blog, necesita saber sus dimensiones para reescalarla, y eso es lo que enlentecía tanto toda la operatividad.

La solución ha pasado por reemplazar todos los [ img ] a URL remotas, por <img> de HTML. Había 5 o 6 artículos afectados.

Cuando tenga algo de tiempo para dedicarlo a SPHPBLog, parchearé el código de la función implicada blog_to_html, para que en el caso de que se especifiquen las medidas con los atributos witdh y height, no sea necesario leerlos del propio archivo.…

Continuar leyendo...

strpos vs strstr



Encontrar si una cadena contiene otra subcadena, es una tarea de programación habitual.

En PHP, tenemos dos funciones que nos sirven para este propósito: strpos, que retorna la posición; y strstr, que retorna la subcadena.

He creado un sencillo programa que se encarga de medir los tiempos de ejecución de las dos funciones:

<?php
$sTest='1234567890 1234567890 1234567890
1234567890 1234567890 test
1234567890 1234567890 1234567890
1234567890 1234567890 1234567890';

$fInicio=microtime(true);
for ($iCont=0; $iCont<10000; $iCont++)
{
$iPos=strpos($sTest, 'test');
$iPos=strpos($sTest, 'test');
$iPos=strpos($sTest, 'test');
$iPos=strpos($sTest, 'test');
$iPos=strpos($sTest, 'test');
$iPos=strpos($sTest, 'test');
$iPos=strpos($sTest, 'test');
$iPos=strpos($sTest, 'test');
}
$fFin=microtime(true);
echo 'strpos: ' .…

Continuar leyendo...

Operaciones de bits en PHP



En la actualidad, las operaciones a nivel de bits, no son demasiado utilizadas. En cambio, hace no demasiados años, se utilizaban con gran frecuencia para optimizar operaciones aritméticas.

No quiero entrar en detalles de demasiado bajo nivel, pero a una CPU, le suele costar menos operar con los bits independientes de un número, que realizar una operación como una multiplicación.

Podemos rotar a la izquierda (<<) para multiplicar por potencias de 2; rotar a la derecha (>>) para dividir entre potencias de dos; utilizar la Y a nivel de bits (&) para averigüar el módulo de potencias de dos, …

Hoy en días, los procesadores son cada vez más rápidos, y con lenguajes interpretados, como PHP, tenía la curiosidad de si seguiría siendo más eficaz.…

Continuar leyendo...

El objeto RegExp



El objeto RegExp, disponible para scripts ASP, VBScript, y JScript entre otros, es injustamente poco conocido, a pesar de ser tremendamente útil.

Nos permite manipular cadenas usando expresiones regulares con sintaxis Perl.

No soy un experto en expresiones regulares, aún así, esta clase nos puede solucionar rápidamente muchos problemas, que usando por ejemplo, Replace nos llevaría un buen rato.

Su uso es tan sencillo como:

<%
Option Explicit
Dim sCadena
Dim oRegular

Set oRegular=New RegExp
With oRegular
.Global=True
.Pattern="(.\d{4})"
sCadena=.Replace(sCadena, ".0000")
End With
Set oRegular=Nothing
%>

El código anterior, buscaría dentro de sCadena, cualquier ocurrencia de un punto seguido de 4 dígitos, y lo reemplazaría por el literal .0000.…

Continuar leyendo...

Limpieza y actualización



Tengo 35 megas de espacio reservado en el hosting que gentilmente me ofrecen totalmente gratis, desde bitacoras.com, y me queda menos de 2 megas disponibles.

Hasta marzo, no tienen previsto ampliar los discos, por lo que he tenido que hacer limpieza de lo que tenía almacenado: idiomas adicionales de Simple PHP Blog, copias de seguridad, temas no utilizados, …

Después de toda la criba, he conseguido disponer de 3 megas libres.

En principio no he eliminado ningún contenido, y todo debería seguir funcionando como hasta ahora. Si encontráis algún fallo, o echáis en falta algún contenido, por favor, comunicádmelo para que pueda restaurarlo de mis copias de seguridad locales.…

Continuar leyendo...

Reflexiones Misioneras



¿Es una impresión mía? ¿O es que la gente de Reflexiones Misioneras, ha fusilado todo el diseño de Macromedia?

Al menos el backend lo han programado ellos mismos en ASP… ¡O eso quiero creer!…

Continuar leyendo...

Actualización a SPHPBlog 0.4.3



Aunque el nivel de parcheo de la 0.4.2 de mi weblog, era equivalente a la recién aparecida versión 0.4.3 de Simple PHP Blog, he decidido actualizar, para así poder detectar fallos sobre la versión actual de los usuarios.

Realmente el proyecto está avanzando tremendamente rápido este último mes.

¡Se me olvidaba! No os perdáis la futura 0.4.4, con unos interesantísimos añadidos que ha desarrollado mi compañero Ridgarou; y alguna que otra sorpresita que nos reservamos Alex y yo.

De momento tenéis la 0.4.3 en www.bigevilbrain.com/sphpblog/development/index.php?basedir=files%2F0.4.3%2F.



Continuar leyendo...

Trabajo en el SPHPBlog



Entre el domingo y hoy, he podido dedicar 4 o 5 horas al desarrollo de funcionalidades para Simple PHP Blog, que ya están totalmente integradas en la base de código del 0.4.2, y serán incluídas en la siguiente versión inestable si no se detectan mayores problemas.

– Por fin se he corregido el segundo Expendiente X con el año 2005, al mismo tiempo he aprovechado para toquetear un poco el código, haciendo que se aproveche del caché de entradas, con lo que también será algo más veloz.
– Añadido un capcha a los comentarios para evitar el spam. El método es todavía bastante rudimentario, pero de momento servirá.…

Continuar leyendo...

Actualización a Simple PHP Blog 0.4.2



Está disponible el nuevo SPHPBlog 0.4.2 final.

Alex ha enfatizado en esta nueva versión cambios en la apariencia del blog, que ahora es más atractivo y sencillo de leer, y mejoras en la validación del código HTML.

Yo solamente he añadido el cache de artículos disponibles para acelerar la velocidad de ejecución.

Además acabo de actualizar, mi weblog, a la nueva versión.

Como temas urgentes que quedan pendientes por desarrollar, es el problema con el año 2005 y el calendario que han reportado algunos usuarios, que está en la lista de deberes mía y de Alex. Arjan tiene pendiente intentar evitar el SPAM por trackbacks, comprobando que realmente se está enlazando a la bitácora.…

Continuar leyendo...