Programación

Programación

Programming as Theory Building: el artículo de Peter Naur

Publicado el 18 de May de 2026 en Programación • Etiquetado con programacion, teoria, arquitectura, ia, llm, naur

Las ideas clave del artículo de Christian Ekrem sobre el ensayo de Peter Naur y por qué es más relevante que nunca en la era de la IA generativa.


Seguir leyendo

Rust eBooks Nightly — libros de Rust en EPUB, AZW3, MOBI y PDF

Publicado el 21 de April de 2026 en Programación • Etiquetado con rust, ebooks, epub, calibre, github actions

Un proyecto de Artur Sulej que publica automáticamente las versiones más recientes de los mejores libros de Rust en formatos eBook. Se actualiza daily.


Seguir leyendo

Desactivar git autocrlf

Publicado el 21 de April de 2026 en Programación • Etiquetado con git, windows, wsl, line endings

Si usas Windows (o WSL), Git te está convirtiendo los saltos de línea en silencio. Un solo comando lo arregla.


Seguir leyendo

Instalando skills de GitHub

Publicado el 19 de April de 2026 en Programación • Etiquetado con github, cli, agentes-ia, skills

Comparando gh skill vs npx skills para instalar y gestionar skills de agentes de IA.


Seguir leyendo

Crit: El bucle de revisión para Agentes

Publicado el 22 de March de 2026 en Programación • Etiquetado con ia, agents, review, opencode, productividad

Crit es una herramienta diseñada para cerrar el bucle de revisión de código generado por agentes de IA, proporcionando una interfaz web intuitiva y eficiente.


Seguir leyendo

sem: Control de versiones semántico

Publicado el 15 de March de 2026 en Programación • Etiquetado con cli, versionado, rust, herramientas

Descubriendo sem, una herramienta CLI que entiende la semántica de tu código y te dice qué entidades cambiaron, no solo qué líneas.


Seguir leyendo

os.click: Central de descarga de ISOs de sistemas operativos

Publicado el 12 de March de 2026 en Programación • Etiquetado con linux, windows, iso, sistemas operativos, herramientas

Recordatorio sobre os.click para descargar ISOs oficiales rápidamente.


Seguir leyendo

DeepDiff: La navaja suiza para comparar datos en Python

Publicado el 20 de February de 2026 en Programación • Etiquetado con data, cli, herramientas, diff

Cuando trabajamos con datos estructurados en Python, a menudo necesitamos comparar dos diccionarios, JSONs u objetos complejos para encontrar qué ha cambiado. Si bien la comparación directa (==) es útil, a veces necesitamos entender exactamente qué es diferente: qué claves se han añadido, cuáles se han eliminado, o dónde han cambiado …


Seguir leyendo

Shot-scraper: Capturas de pantalla automatizadas para la web

Publicado el 20 de February de 2026 en Programación • Etiquetado con cli, herramientas, web, scraping, screenshots

¿Alguna vez has necesitado tomar capturas de pantalla de una página web de forma programática? Tal vez para documentar tu proyecto, monitorizar cambios en una UI, o generar imágenes para redes sociales. Existen muchas formas de hacerlo, pero shot-scraper destaca por su facilidad de uso y potencia.

Creada por Simon …


Seguir leyendo

Pandas Styler: Mejora la presentación de tus DataFrames

Publicado el 25 de December de 2025 en Programación • Etiquetado con pandas, data-science, visualizacion, estilo

Descubre cómo el objeto Styler de Pandas te permite aplicar formato condicional y estilos CSS a tus DataFrames para una mejor visualización y presentación de datos.


Seguir leyendo

Reduce el Ruido en tus Logs de Python: Un enfoque inteligente

Publicado el 25 de December de 2025 en Programación • Etiquetado con logging, logs, depuracion, desarrollo

Aprende a configurar el módulo logging de Python para evitar la sobrecarga de mensajes de librerías de terceros, manteniendo tus logs limpios y útiles.


Seguir leyendo

Poe the Poet: Automatizando tareas en proyectos Python con uv

Publicado el 25 de December de 2025 en Programación • Etiquetado con uv, poethepoet, automatizacion, pyproject.toml

Descubre cómo Poe the Poet te permite definir y ejecutar comandos personalizados directamente desde tu pyproject.toml, optimizando tu flujo de trabajo en entornos uv.


Seguir leyendo

Cómo uso git worktrees para trabajo concurrente

Publicado el 23 de July de 2025 en Programación • Etiquetado con git, worktrees, flujo-trabajo, productividad

Un enfoque práctico para usar git worktrees y maximizar la productividad con múltiples contextos de trabajo simultáneos


Seguir leyendo

Búsqueda híbrida con SQLite: vector + texto completo

Publicado el 06 de October de 2024 en Programación • Etiquetado con sqlite, búsqueda, vectores, fts, sql

Combinando búsqueda vectorial y texto completo en SQLite usando Reciprocal Rank Fusion para obtener mejores resultados


Seguir leyendo

Conflación de datos geoespaciales con DuckDB y embeddings

Publicado el 01 de October de 2024 en Programación • Etiquetado con duckdb, geoespacial, embeddings, ollama, h3

Técnicas avanzadas para integrar fuentes de datos geoespaciales usando DuckDB, H3, Ollama y modelos de embeddings


Seguir leyendo

HTTPX: Cliente HTTP moderno para Python

Publicado el 23 de September de 2024 en Programación • Etiquetado con http, httpx, async, requests

HTTPX emerge como el sucesor natural de requests, ofreciendo soporte async, HTTP/2 y una API moderna para aplicaciones Python contemporáneas


Seguir leyendo

Server-Sent Events: Comunicación en tiempo real simplificada

Publicado el 23 de September de 2024 en Programación • Etiquetado con javascript, sse, tiempo-real, web-apis

Server-Sent Events ofrece una alternativa simple y eficiente a WebSockets para comunicación unidireccional servidor-cliente en aplicaciones web


Seguir leyendo

Una de versiones

Publicado el 01 de May de 2017 en Programación


Seguir leyendo

Python: Crear generadores repetibles (repeating generators)

Publicado el 09 de February de 2016 en Programación • Etiquetado con generadores, itertools, decoradores, yield

Técnicas en Python para crear generadores que se pueden iterar múltiples veces, superando la limitación de "una sola vez" de los generadores estándar


Seguir leyendo

Bootstrap: Dos enlaces en la misma fila en dropdown

Publicado el 15 de December de 2015 en Programación • Etiquetado con bootstrap, css, dropdown, flexbox, html

Técnica CSS para colocar dos enlaces en la misma fila horizontal dentro de un menú dropdown de Bootstrap usando flexbox


Seguir leyendo

Galen Framework: Testing automatizado para diseño responsive

Publicado el 13 de November de 2015 en Programación • Etiquetado con galen, testing, responsive, layout, selenium

Galen Framework simplifica el testing automatizado de layouts responsivos verificando la posición y apariencia de elementos across different dispositivos


Seguir leyendo

SQL: Seleccionar filas con valor máximo por grupo

Publicado el 21 de October de 2015 en Programación • Etiquetado con sql, mysql, consultas, window-functions, joins

Técnicas SQL para seleccionar filas completas con el valor máximo de una columna dentro de grupos, comparando rendimiento de subqueries, joins y window functions


Seguir leyendo

Repitiendo una función con hilos

Publicado el 03 de May de 2015 en Programación

Vamos a utilizar hilos en python para ejecutar periodicamente una función


Seguir leyendo

Cierra Google Code

Publicado el 13 de March de 2015 en Programación

Lo dicho, Google anunció el cierre de Google Code.

Hoy mismo recibí el correo avisandome (tenía un proyecto de prueba alojado allí) de que podía mover mis proyectos de forma simple a github, el repositorio de facto hoy en día del software libre (lo siento por bitbucket y sobre todo …


Seguir leyendo

pgcli el descubrimiento de hoy

Publicado el 02 de March de 2015 en Programación • Etiquetado con postgresql

postresql command line


Seguir leyendo

Decorador vista ajax

Publicado el 21 de November de 2014 en Programación • Etiquetado con django

Para obligar que una vista django sea llamada sólo mediante llamamas AJAX.

def ajax_required(f):
    """
    AJAX request required decorator
    use it in your views:

    @ajax_required
    def my_view(request):
        ....

    """
    def wrap(request, *args, **kwargs):
        if not request.is_ajax():
            return HttpResponseBadRequest()
        return f(request, *args, **kwargs)
    wrap.__doc__ = f.__doc__
    wrap.__name__ …

Seguir leyendo

Función genérica para usar como upload_to

Publicado el 11 de October de 2014 en Programación • Etiquetado con django

Los FileField en django necesitan ana función upload_to que determine donde se subirá el fichero. Yo suelo tener en utils.py una función genérica que los deja en una subcarpeta con el nombre del modelo.

import os

def generic_upload_to(instance, filename):
    """
    Generic `upload_to` function for models.FileField and models.ImageField …

Seguir leyendo

Django: enlaces en listado de objectos

Publicado el 21 de May de 2014 en Programación • Etiquetado con django

En mis proyectos suelo usar enlaces a elementos relacionados en el change_list del admin.

Ficheros

utils.py

Tengo esto en utils.py

from django.contrib import admin
from django.contrib.contenttypes.models import ContentType
from django.core import urlresolvers
from django.utils.datastructures import SortedDict
from …

Seguir leyendo

Settings vars processor

Publicado el 08 de January de 2014 en Programación • Etiquetado con django

Lo suelo usar durante el principio de los proyectos.

from django.conf import settings as django_settings
from django.core.exceptions import ImproperlyConfigured


def settings(request):
    """
    Adds the settings specified in settings.TEMPLATE_VISIBLE_SETTINGS to
    the request context.
    """
    new_settings = {}
    for attr in django_settings.TEMPLATE_VISIBLE_SETTINGS:
        try:
            new_settings[attr] = getattr(django_settings, attr)
        except AttributeError …

Seguir leyendo

A vueltas con suse

Publicado el 25 de March de 2013 en Programación

Algunos comandos de zypper para recordar: Para borrar un paquete y también las dependencias:
zypper remove  --clean-deps packate
Listar paquetes huérfanos:
LC_ALL=C zypper se -s | fgrep '(System Packages)'

Cambiar de lugar un virtualenv

Publicado el 24 de October de 2012 en Programación • Etiquetado con python

La opción --relocate no funciona bien. Lo mejor es usar virtualenv-tools.

Depurando Tomcat

Publicado el 24 de October de 2012 en Programación • Etiquetado con java

Se usa Java Platform Debuging Architecture JPDA https://confluence.sakaiproject.org/display/BOOT/Setting+Up+Tomcat+For+Remote+Debugging

Autorelad en plone

Publicado el 27 de July de 2012 en Programación • Etiquetado con zope

Otro recordatorio. Para recargar mientras desarrollo una browserview en plone:
$ when-changed.py *.py -c wget -q -O /dev/null  \
http://admin:admin@localhost:8080/@@reload?action=code
Basta pues con usar when-changed y plone.reload Se que existen extensiones  para el navegador  que recargan una  pestaña cuando cambia un fichero …

Seguir leyendo

Diccionario de español para komodo edit

Publicado el 13 de June de 2011 en Programación

Para instalarlo se siguen estas instrucciones descargando previamente el addon. No he probado a ver si funciona en el perfil de usuario, pero eso estaría mejor.

21/3

Publicado el 22 de March de 2011 en Programación

Han pasado ya tres días 21 en lo que llevamos de año. Ayer, fue un día de reivindicaciones, para exigir la visibilidad necesaria y el respecto que esta sociedad todavía niega. Cuando en el día de hoy se habla de guerra y emisiones radiactivas, yo he aprendido en este último …

Seguir leyendo

scp con compresión

Publicado el 04 de March de 2011 en Programación • Etiquetado con linux, zope

La mejor forma de descargar una zodb:
scp -C -o CompressionLevel=9 user@yoursite.com:~/plonefolder/zinstance/var/filestorage/Data.fs .
Leído en: http://blog.mfabrik.com/2011/03/02/scp-file-copy-with-on-line-compression/

Añadiendo un repositio PPA en karmic

Publicado el 23 de February de 2011 en Programación

Este comandito te añade sola la fuente (ojo, en el directorio /etc/apt/sources.list.d) y pide las claves:
sudo add-apt-repository ppa:chromium-daily

Zen Coding y komodo edit

Publicado el 15 de October de 2010 en Programación • Etiquetado con zope

Mi editor favorito Komodo Edit tiene un plugin de Zen Coding y este funciona muy bien también con plantillas zpt. Por ejemplo: Así una expresión como la siguente
dl>tal:rep[tal:repeat]>dt+dd
Se convierte en el siguiente trozo de html con los nesesarios tabstops:
Muy pero que …

Seguir leyendo

Progreso en un reindexado de zope

Publicado el 18 de September de 2010 en Programación • Etiquetado con zope

Visto en el producto contentleadimage:
from Products.ZCatalog.ProgressHandler import ZLogHandler
ctool.reindexIndex(['hasContentLeadImage'], portal.REQUEST, pghandler=ZLogHandler())
Esto muestra un progreso en la consola si estás ejecutando en primer plano.

Zope y noatime

Publicado el 25 de July de 2010 en Programación • Etiquetado con zope

Una fácil mejora para el rendimiento de un zope con problemas de acceso a disco es no actualizar la fecha de último acceso al fichero de la base de datos Data.fs:
chattr -R +A Data.fs
Simple y efectivo.

Subversion: Añadiendo contenido a un directorio sin descargarlo

Publicado el 16 de July de 2010 en Programación

Caso práctico. Tengo un directorio dev dentro del subversión con un montón de código con sus correspondientes ramas de trunk, branches, tags, etc. Quiero añadir un nuevo producto pero no descargar todo ese enorme directorio dev:
svn co --depth empty https://repositorio/dev dev
cp loquesea nuevo_producto
svn add loquesea …

Seguir leyendo

Restaurando objectos plone borrados

Publicado el 14 de July de 2010 en Programación • Etiquetado con zope

Para esas situaciones donde no funciona el undo, la salvación se llama dm.historical Un claro ejemplo en esta entrada del Blog de Andreas Jung

Completar mientras se depura en zope

Publicado el 28 de April de 2010 en Programación • Etiquetado con web

Siempre tengo que buscar esto en google, para esto tengo el blog:
$ bin/instance debug
>>> import readline, rlcompleter
>>> readline.parse_and_bind('tab: complete')
>>> app.
Display all 760 possibilities? (y or n)
>>> 

Kbabel es Lokalize en kde4

Publicado el 25 de March de 2010 en Programación

Ya era la segunda vez que no encontraba el maravilloso kbabel y es que en kde4 su sucesor se llama lokalize

Descargar una web para visualización local con wget

Publicado el 22 de February de 2010 en Programación

El comando es
$ wget -E -H -k -K -p  http://www.google.es
Con -p hacemos que se descarguen los enlaces requeridos (css, javascript), con -k convertimos los enlaces dentro del html para visualización local (-K copia de seguriad) y con -E aseguramos que los ficheros descargados tengan extensión html …

Seguir leyendo

Plone: Registrar pasos de importación con zcml

Publicado el 27 de January de 2010 en Programación

Registrar un paso de importación con xml el el profile, puede fallar cuando quitas el paquete del buildout. Un paso roto se que queda dentro de portal_setup_tool. En algunas versiones de plone esto da un error, haciendo imposible aplicar el perfil nunca más. En otras versiones (plone 3.2 hacia …

Seguir leyendo

Descargar código de un repositorio publicado con gitweb

Publicado el 04 de January de 2010 en Programación

Quería probar un software disponible en la red (Perfect Sale). Sabía que tenía que usar git clone pero no la url.

No queda claro (al menos a mí) en el repositorio gitweb la url a usar.

Al fin, encontré la solución en un repositorio mejor documentado (gracias).

El protocolo es …


Seguir leyendo

Colores desde web developer tools

Publicado el 10 de November de 2009 en Programación • Etiquetado con web

Últimamente uso tanto firebug que ni me acuerdo de las Web Developer Tools. Escribo esto para recordar que sigue siendo muy útil esta extensión. Por ejemplo, puedo ver los colores (css) usados en una página web a través del menú Información, seleccionando Ver información del color.

Que apache sirva el contenido de un fichero .py

Publicado el 13 de October de 2009 en Programación

Para que el servidor apache de webfaction no intentara ejecutar los scripts python que dejo para la descarga en este blog, me creé un fichero .htaccess y dentro:
removeHandler cgi-script .pl .py .cgi

Cambiar pantalla anunciadora de kde: Ksplash theme generator

Publicado el 20 de September de 2009 en Programación

Lo dicho en la nota anterior sobre KDM Theme Generator aplica también para su aplicación hermana Ksplash theme generator

Cambiar el aspecto de kdm: kdm theme generator

Publicado el 20 de September de 2009 en Programación

KDM Theme Generator es una de esas aplicaciones simples y sencillas (sin interfaz gráfica siquiera), con una utilidad concretísima pero que funciona tan bien que da gloria de usar. Siguiendo las instrucciones de instalación, te crea un tema para KDM basado en el tema plasma activo y tu fondo de …

Seguir leyendo

CSS: Estilos de selección de texto

Publicado el 09 de July de 2009 en Programación • Etiquetado con web

Una de esas declaraciones de CSS3 que ya aceptan muchos navegadores actuales es ::selection. Se puede utilizar así:
p::selection {
	background: #ccaacc; /* Safari */
	}
p::-moz-selection {
	background: #ccaacc; /* Firefox */
}

Manejo de árboles en bases de datos

Publicado el 07 de July de 2009 en Programación

Hay cuatro formas de guardar árboles en bases de datos relacionales:
  1. Adjacency List
  2. Materialized Paths
  3. Nested Sets o Modified Preorder Tree Traversal (MPTT)
  4. Nested intervals
Dejo unos enlaces:

Seguir leyendo

Listar las bases de datos postgres que tengo instaladas

Publicado el 29 de June de 2009 en Programación

Para ello:
pcaro@davinci$ sudo /etc/init.d/postgresql-8.3 start
pcaro@davinci$ sudo su - postgres
postgres@davinci:~$ psql -l

Un servidor web de bolsillo gracias a python

Publicado el 16 de June de 2009 en Programación • Etiquetado con python

Otra cosita para recordar. La forma más simple de servir unos ficheros vía web:
python -m SimpleHTTPServer 8080
Nota: Antes usaba:
python -c "import SimpleHTTPServer;SimpleHTTPServer.test()"
Pero no permite indicar el puerto y es más tedioso de escribir.

Contenedor de Floats: How to IE & FF

Publicado el 21 de May de 2009 en Programación • Etiquetado con web

Espero no olvidar esto más así que dejo la notita. Si tienes un elemento (por ejemplo un div#padre), que contiene sólo flotantes (otros divs por ejemplo), no será capaz IE de calcular bien su tamaño (se ve muy claro con un background). Para que funcione con explorer y firefox …

Seguir leyendo

Comandos útiles en la consola de postgres (pgsql)

Publicado el 30 de March de 2009 en Programación

Otra de las cosas que simpre olvido. Así que lo anoto. Para sacar el resultado de una consulta sql a un fichero desde el pgsql.
  1. \a
  2. \f ,
  3. \o /tmp/salida.csv
  4. select * from ...
Se trata de:
  1. Cambiar entre modo de salida alineado y sin alinear
  2. Definir separador de campos (en …

Seguir leyendo

Cambiar ipython para copiar y pegar luego como doctest

Publicado el 02 de February de 2009 en Programación • Etiquetado con python

Otra de las ordenes que nunca recuerdo. Estando dentro de ipython para cambiar el prompt de forma que luego sea fácil crear doctests: %doctest_mode Esto entra en  el modo doctest de ipython. También puede ayudar %history -tn para recordar los commandos introducidos previamente.

Formatear de la forma más fácil una tarjeta SD en ubuntu

Publicado el 30 de January de 2009 en Programación

Otra anotación para recordar en un futuro. La forma más fácil de formatear una tarjeta SD es:
  1. Identificar el dispositivo (si esta montada la tarjeta lo ves con el comando mount por ejemplo).
  2. Si no lo tienes ya, instalar el paquete dosfstools.
  3. Ejecutar (con el dispositivo desmontado): sudo mkdosfs DISPOSITIVO …

Seguir leyendo

Siempre el último Dragonfly en Opera

Publicado el 30 de January de 2009 en Programación

Para tener la versión de desarrollo de dragon fly en el opera basta con seguir la ruta: about:config -> Developer Tools -> Developer Tools url Luego, introducir la url siguiente http://dragonfly.opera.com/app/cutting-edge/

Feliz Navidad

Publicado el 24 de December de 2008 en Programación

Ni árboles, ni reyes, ni trineos, simplemente eso, Feliz Navidad de corazón para todos.

¿Cómo hacer un "svn export" con git?

Publicado el 14 de November de 2008 en Programación

Si tienes que descargarte un árbol git pero sin los metadatos, porque por ejemplo sólo quieres el código para congerlarlo versionado en el subversion de tu proyecto, lo más fácil es: git clone {clone-url} rm -rf .gitignore .git

svn:ignore

Publicado el 13 de November de 2008 en Programación

Esta entrada  es para recordar los dos comandos: svn propedit svn:ignore ./some_path svn -R propset svn:ignore -F ../.svnignore . donde .svnignore contiene un patron por línea como *.pyc

Reproducir flash con Opera en Ubuntu

Publicado el 12 de November de 2008 en Programación

Traducción de un comentario. A menudo Opera no pude encontrar el reproductor de flas sin tu ayuda. Te mostramos lo que puedes hacer. Primero, asegurate que flash está instalado y funciona en firefox. Una vez confirmado, abre un terminal: $ cd ~/.opera En este directorio verás un archivo denominado pluginpath.ini …

Seguir leyendo

Compartir ficheros gracias a python

Publicado el 08 de November de 2008 en Programación • Etiquetado con python

Para compartir de forma rápida unos ficheros vía web graias a python, lo más fácil es:
python -c "import SimpleHTTPServer;SimpleHTTPServer.test()"

Error con setuptools y subversion 1.5

Publicado el 14 de September de 2008 en Programación • Etiquetado con python

La actual versión de setuptools no se lleva bien el subversion 1.5 (también el actual en mi ubuntu). Normalmente acostumbro a usar virtualenv y me he encontrado con el error:
NameError: global name 'log' is not defined
Ya está arreglado en el desarrollo de setuptools. Una posible solución es …

Seguir leyendo

Editores: Mostrar los números de linea en emacs y en jed

Publicado el 11 de September de 2008 en Programación

Para evitar esos odiosos porcentajes cuandos editas un fichero (¿de verdad le sirven a alguien?) y poner en su lugar el número de la linea en que te encuentras dejo aquí la anotación.
  1. En emacs:
  2. ;; ========== Enable Line and Column Numbering ==========
    ;; Show line-number in the mode line
    (line-number-mode 1)
    ;; Show column-number …

Seguir leyendo

Buscando una fuente para escribir código

Publicado el 22 de July de 2008 en Programación

Varios enlaces interesantes sobre este tema. Personalmente, la Bitstream Vera Sans Mono, me parece una fuente bastante aceptable. Me gusta mucho …

Seguir leyendo

¿Qué ejecutas tu desde la consola?

Publicado el 13 de April de 2008 en Programación

Un meme para ver que ejecutas desde la consola:

pcaro@davinci$ history|awk '{a[$2]++} END{for(i in a){printf "%5d\t%s\n",a[i],i}}'|sort -rn|head
95   sudo
71   ls
67   cd
33   svn
29   dentro
24   clear
18   ssh
15   i2e-cli
14   ps
13 …

Seguir leyendo

Timing en "psql" la consola de postgres

Publicado el 31 de March de 2008 en Programación

Recordar:
timing
También podemos utilizar para más información "explain analyze":
EXPLAIN ANALYZE select ...

Ejecutar comandos en python

Publicado el 04 de March de 2008 en Programación • Etiquetado con python

Hago a menudo pequeños scripts en python. Y muchas de las veces necesito ejecutar algún comando del sistema. Habitualmente importaba el módulo os y llamaba a alguna de sus funciones (las popen). Pero en general no hace falta importar os. Existe un módulo llamado commands (sólo para unix) que permite …

Seguir leyendo

Continuar con una descarga

Publicado el 27 de January de 2008 en Programación

scp no permite continuar con copias que se cortan, pero lo permite rsync. El comando para recordar es: alias scpresume="rsync --partial --progress --rsh=ssh"Eso claro, siempre que tengas rsync

ubuntu, wordpress, php5 y mysql

Publicado el 25 de November de 2007 en Programación

Configurando un wordpress local para pruebas (con lighttpd), me encuentro con el siguiente error: Your PHP installation appears to be missing the MySQL which is required for WordPress. Sabía que php5 no tiene incluido el soporte para mysql pero para mi sorpresa en mi ubuntu yo sí tenía instalado el …

Seguir leyendo

Para aprender javascript

Publicado el 01 de November de 2007 en Programación • Etiquetado con javascript

Para aprender una tecnología todos conocemos nuestro punto de referencia. Pero "El Buscador" no es punto de partida más recomendable para aprender javascript. Existen cientos, miles, millones, de tutoriales donde aprender mal javascript. No hablo de aprender las palabras clave y las sentencias de control. Para eso te vale cualquiera …

Seguir leyendo

¡Que práctico es python!: svnrevisions.py

Publicado el 10 de April de 2007 en Programación • Etiquetado con python

Pongo a continuación un script rápido que hice hace ya un tiempo. En ese momento estaba realizando un backport de código y de forma sucia realicé varios
svn up -rTAL
De esa forma y con unos pequeños cambios obtuve el cambio que necesitaba. Pero después de un rato no recordaba …

Seguir leyendo

Siempre la coma como símbolo decimal en un formulario .net

Publicado el 15 de December de 2006 en Programación • Etiquetado con .net

Entre los muchos lenguajes que me ha tocado codificar (únicamente no me arrepiento de hacerlo en python) se encuentra .net. Es una chusquería que me solicitó un cliente. Quería que en un formulario al pulsar el punto del teclado numérico la entrada fuera una coma (no dependiera de la configuración …

Seguir leyendo

Corrector ortográfico de firefox 2.0 en castellano

Publicado el 14 de November de 2006 en Programación

En la url escribir: about:config Filtras las propiedades por "dic". Y estableces el valor de la propiedad "spellchecker.dictionary" a es_ES.

Primera anotación de prueba

Publicado el 10 de October de 2006 en Programación

Como todo blog que comienza, es de obligado cumplimiento una primera entrada "sólo para probar". En la primera entrada además del maravilloso lorem ipsum aprovecho para felicitar al autor del tema que estoy probando a priori: Orange Dream de Buddha. Por cierto que luego veré si puedo traducir esto :-D …

Seguir leyendo