Django 1.1

Des de fa poquetes hores ja tenim la versió 1.1 de Django. Les novetats es poden trobar a l’anunci oficial de Django 1.1.

Per mi el més interessant són els canvis a l’ORM (les agregacions són una característica llargament esperada) i les millores a l’Admin, que es pot personalitzar sense fer tant esforç com abans.

Enhorabona als “core developers” i a tots els que feim feina amb Django. Tenim cada dia un bastiment més productiu i potent, on tot el que s’afegeix no és per mor del marketing o perquè fa “cool”, sinó perquè realment serveix per a la feina.

Escalabilitat, multiprocessador i GIL

Una de les dèries que tenim com a informàtics (o que hauríem de tenir) és la d’aprofitar el millor possible els recursos que tenim a la nostra disposició.

Això es tradueix algunes vegades en discussions de que si un llenguatge és millor que un altre en l’aprofitament de la màquina, i quan toca a Python, el tema estrella és el GIL, el mecanisme intern que fa servir Python per poder ser multi-fil. GIL fa que les aplicacions que fan un us intensiu dels fils no siguin tan òptimes com podrien ser (potser sí són més segures i més bones de programar, però això és una altra història) i que puguem pensar no facin tan bon us dels múltiples processadors com es podria suposar. En aquests casos el millor potser és llegir un article molt aclaridor, en lloc de començar a pegar destralades.

[Continuar llegint ...]

Portàtil Dell 10" - casi

Dia 15 del mes passat vaig comanar un portàtil Dell de 10" amb disc dur d’estat sòlid de 16 Gb i 2 Gb de RAM i bateria de 6 cel·les i Ubuntu com a sistema operatiu. Total 1,5 Kg de pes. La idea és que fos el portàtil de les reunions i viatges, amb prou autonomia per aguantar un dia normal de feina sense problemes.

Avui m’ha arribat, bé, casi… Ha arribat romput amb un cop d’aquests que fan fredat a la pantalla que és difícil d’explicar. La capsa ja venia copejada, però no foradada i no m’explic com el transportista (UPS) li ha pogut pegar un viatge com aquest a un article que s’ha de manipular com a fràgil.

[Continuar llegint ...]

Eclipse Galileo vs Netbeans Python (trunk) per Python i Django

La publicació de la nova versió d’Eclipse, Galileo ha servir d’excusa per a tornar (al manco temporalment) a Eclipse com a entorn de desenvolupament per Python.

És la versió Galileo d’Eclipse millor que Netbeans? Doncs depèn, al cap i a la fi del que es tracta és de que l’IDE ens faci més productius, però a partir d’aquí ja és una qüestió de preferències personals.

Anem a veure les meves…

[Continuar llegint ...]

Comerç electrònic?

Estic emprenyat! Potser és l’efecte de que se m’acabin les vacances, tot s’ha de dir, però també perquè aquests dies he pogut comparar la diferència que hi ha entre les llibreries on-line espanyoles i les americanes, tot una decepció.

El diumenge 21, comptant que estaria una setmana de vacances, volia llegir dos llibres que m’havien recomanat: “El Economista Naturalista” i “Fest-te bruixot, fest-te savi”, que no tot ha de ser informàtica :) Així que vaig anar cercant a les llibreries on-line espanyoles amb l’esperança de trobar-los i tenir-los en un parell (dos) de dies o potser tres.

[Continuar llegint ...]

Sobre l'edat, la depuració del codi i SOA

Aquesta setmana he trobat un grapat d’apunts molt interessants al Planet de Python, el primer és Programming is not the right thing to do i TDD Anti-Patterns.

El primer article és un comentari a Programmers: Before you turn 40, get a plan B, on tracta la suposada obsolescència dels programadors a partir dels 40 anys.

El segon és una classificació dels principals errors que un pot trobar-se quan programa fent servir la metodologia coneguda com a Test Driven Development.

[Continuar llegint ...]

Django: Guia d'aprenentatge

La pregunta a la que vull intentar respondre en aquest article, és la que fa força gent que vol canviar la manera en que fa aplicacions web i com que ha sentit parlar molt bé de Django, s’atraca a aquest bastiment amb l’esperança de poder millorar la seva productivitat, és a dir: què he de saber per començar a fer webs amb Django?

Primer de tot em de saber què és Django. Django és un bastiment, és a dir, tot un conjunt de llibreries que interactuen entre sí i que estan orientades a fer i mantenir llocs i aplicacions web.

[Continuar llegint ...]

Django i python: orientat a la feina

Avui, mentre explicava a la gent de l’equip web un grapat d’optimitzacions que podem fer per fer que les nostres aplicacions siguin més ràpides i actualitzables, al mateix temps pensava que en la potència que ens està donant Python i Django gràcies a la seva orientació cap a fer les coses com s’han de fer.

La comparació amb Java, l’altre llenguatge que feim servir, no pot deixar d’estar present, i llevat d’excepcions (poques) he de dir que la combinació Python i Django en surt sempre afavorida davant de Java.

[Continuar llegint ...]

I no passa res

En la literatura de gestió de projectes anglosaxona es parla d’un efecte teamicide, és a dir, d’un efecte aniquilador de projectes per referir-se a situacions que per la seva naturalesa més tard o més prest repercuteixen en el rendiment i la cohesió de l’equip de treball, poen-lo dur a la seva destrucció.

Avui parlaré d’una d’aquestes situacions, l’anomenada “no passa res” o en la seva variant de “tanmateix tot seguirà igual”.

[Continuar llegint ...]

nose, per testejadors amb mala memòria

Supòs que ja ningú dubta de la importància dels test unitaris a l’hora de programar. Els tests ens permeten provar que el que feim és correcte i repetir-ho tantes vegades com volguem i de manera controlada.

Els tests són una part important dels mecanismes de refactorització d’aplicacions, ja que ens asseguren que l’aplicació funciona de la mateixa manera abans i després de refactoritzar.

Els test, però, tenen un problema, fins ara els test unitaris s’han d’escriure d’una determinada manera, recordar les llibreries que has d’importar, com fer un testsuite. Per mi això significa anar a la documentació del pyUnit cada vegada o copiar un test anterior. És el que té dedicar-se a gestionar projectes, que no pots tenir al cap coses que sols fas servir de tant en tant, ja que sols dediques una quantitat mínima d’hores a programar.

[Continuar llegint ...]