Sigo con las cosas que no le interesan a nadie aunque para mi son sumamente importantes. Mientras más aprendo, más importantes e interesantes las encuentro.
Recordarán que hace unos días tuve el problema de convertir mi antiguo weblosg de Blurty a un formato moderno y cómodo a la vista.
Con ayuda de la inteligencia artificial de Gemini, más un día y medio dándome cabezasos pude hacerlo usando Python y ahora lo pueden leer -y descargar si quieren- en este link de mi servidor.
Están las carpetas con las entradas de los años 2003, 2004 y 2005, son las primers publicaciones que subí a Internet, cuando me visitaban cuatro gatos y podía escribir con más libertad y soltura. También está el código Python para cambiar el formato de html, que hice con Gemini.
Entonces me pregunté ¿por que no intentar de nuevo cambiar la codificación del respaldo de mi blog? Se trataba solo de insertar una etiqueta a cada archivo html.
Inserté una a mano usando el editor Komposer y funcionó perfecto. El problema era que tenía que hacerlo con 240 archivos html grandes, si insertaba las etiquetas a mano y las subía una a una al servidor me iba a demorar un par de años.
También había tratado antes de hacerlo con inteligencia artificial, probé con Gemini, Copilot, Claude pero todas abortaron a poco de empezar por falta de capacidad.
En fin, el asunto no resultó tan sencillo como imaginaba, probé nuevamente con Gemini y estuve horas dandome vuelta hasta que vi que estaban completamente enredados, pese a que creían tener la solución, ninguno de sus scripts funcionaba.
Luego traté con Git-Copilot y desde el principio ne entregó código más limpio y simple, aunque tampoco funcionaba. Pero ya tenía la idea que la cosa iba bien encaminado. Aprendí y me entretuve un montón.
Para hacerlo usé el siguiente prompt:
tengo unas páginas en html en mi servidor tombrad.com/archivoblog/2005 con problems de codificación, me dijiste que había que insertar la etiqueta <meta charset="UTF-8"> en cada página, lo hice manualmente en una página y funcionó bien. Luego te pedi un programa en Python para insertar esa etiqueta automáticamente en todas las páginas del subdirectorio y me dio el script que adjunto, Pero al ejecutarlo sigue mal la codificación pese a que tienen la etiqueta insertada ¿qué puede haber salido mal? También adjunto una página modificada con el script que no funcionó. Una pista adicional es que los archivos a convertir se ven perfectamente en modo local, desde mi disco duro. Las páginas las bajé del archivo Bloger usando "guardar como" ¿puedes sugerir un script de Python que si funcione?
Ya sabía que para una buena respuesta, que no se enrede y se pierda, hay que dar todos los detalles importantes y hay que pedir algo muy concreto, a peticiones generales da respuestas basura. La respuesta esta vez fue la misma que me había dado antes, cuando no pudo hacerlo:
"Lo que describes es un caso muy típico: el problema no está en la etiqueta <meta charset="UTF-8"> en sí, sino en cómo están guardados los archivos en disco..."
Luego me dio varias conjeturas sobre lo que pudo haber salido mal la vez anterior y me entregó un script en Python. que como era de esperar, no funcionó. Entonces me propuso:
¿Quieres que te prepare una variante del script que detecte automáticamente la codificación de cada archivo (usando chardet o charset-normalizer) para no tener que adivinar manualmente?
Si por favor, fue mi respuesta
- El
documento es XHTML (tiene namespaces), y tu <head> comienza con
<link> y no aparece ninguna meta de charset.
- Si en el servidor el encabezado HTTP incluye un Content-Type con un charset que no es UTF‑8, el navegador va a obedecer ese header por encima del <meta> del documento. Eso por sí solo puede romper todo aunque el archivo esté bien convertido.... etc.
La inteligencia artificial es tremendamente útil para escribir código de computación, porque casi todo el conocimiento de programación práctica está en la web -en Github y similares- así es que incluso un ignorante que sabe muy poco de Python como yo puede diseñar una solución con cierta facilidad.
muy interesante tema, a la mayoría nos debe parecer así, y hay una IA especializada en programación, no recuerdo su nombre, pero dicen que es muy buena, si se me ilumina una neurona paso el dato
ResponderBorrary estoy malo pal trago, sigo afectado de la celebración del domingo, la edad me pasa la cuenta
Todas las IA sirven como asistentes de la programación, y por lo que he visto, algunas funcionan mejor que otras, pero depende mucho de como presentamos el problema en el prompt. Yo supongo que Git-Copilot debería ser la mejor porque Microsoft compró a Github, que es la base de código más masiva que existe.
BorrarNo se muy bien como es eso, pero creo que Github lo creó Linus Tovalds -el tipo de Linux- cuando se enojó con los problemas que tenía Subversion, que era la aplicación de control de versiones que usaba todo el mundo en los 2000.
Cuando yo hice mis chapuzas en la empresa de Stephen (Round Sparrow creo que se llamaba, o E-snipe) tuve que aprender a usar Subversion ¡era un enredo de pesadilla! Eso fue en 2006, antes que apareciera Github, que es como la casa mundial de los programadores.
Linus nunca usó Subversion, sino un programa comercial (BitKeeper) que había regalado una licencia gratis al proyecto Linux. Un día estos gallos revocaron esa licencia y como la necesidad es la madre de la inventiva nació git. Fin.
BorrarQue raro, recuerdo clarito un video donde hablaba pestes de Subversion y presentaba Git como la solución a los problemas de este. Claro que la memoria es fragil y los años son muchos, y yo no debería discutir de esas cosas con un computin de a deveras como mister Pipa, pero en fin (como decía JMS jaja)
BorrarEL Blogger esta genial, en mi opinion, tambien aparecen los comentarios y es ultra interesante darle una mirada a ese sentido comun ante cada tema y como va formandose y modificando.
ResponderBorrar¡Hasta yo mismo me entretengo leyendo las desgracias que me pasaban hace más de 20 años!
BorrarSiempre tuve la idea de hacerme un respaldo local, ahora que tengo el zip lo guardo como hueso de santo en mi servidor NAS y en varios discos duros que tengo para respaldo
NULLA DIES SINE LINEA de Tomas Brdanovic
Borrar¿Puede usted Don Tomás, archivar sus entradas de este blog por temas?
BorrarClasificar por temas 8000 entradas sería solo teóricamente posible, al menos manualmente.
BorrarPero podría ser un desafío interesante tratar de hacerlo con la IA, habría que experimentar un poco, tal vez se pueda
Un reto para Don Tomas of Python magic methods!
Borrarsi queremos clasificación por temas, que el trabajo bruto lo haga la IA
ResponderBorrar