Firebug bundle for TextMate

Debugging av javascript i firebug gjør avlusing til en langt mer oversiktlig og ryddig affære. Å benytte en liten leksehjelp som denne bundlen hjelper deg videre fra alert() og console.log(), som fort blir tungvindt i lengden.
Få alle console-funksjonene rett i handa med Firebug bundle for TextMate

Få alle console-funksjonene rett i handa med Firebug bundle for TextMate.

Last ned .dmg-filen, åpne og dobbeltklikk. Ferdig arbeid.

Last ned .dmg-filen, åpne og dobbeltklikk. Ferdig arbeid..

Åpne menyen i TextMate med cmd + D

Via doctyper.com.

Gratis kropp – dyr sjel

Har du lyst til å studere på MIT? Jeg óg.

I følge denne diskutable (i den mest positive forstand) grafen skårer MIT best på ROI over 30 år. Samtidig koster det flesk.
MIT ROI

Å studere på MIT koster flesk, men betaler seg tydeligvis i lengden.

Det virkelig kule er at en del innhold fra utdanningen ved MIT er tilgjengelig på nett. Via MIT OpenCourseWare er fag som «Introduction to Computer Science and Programming» tilgjengelig for alle. Det er faktisk like kult som at bøker er gratis tilgjengelig i offentlige bibliotek. Bare bedre.

denne nettsiden er videoer av alle forelesningene tilgjengelige. Og om du er en eplefantast eller ellers har iTunes kan du laste det samme ned via iTunesU.

Så innholdet, – kunnskapen kan tilegnes gratis. Med hjelp av MITs forelesere på video. Vitnemålet, nettverket og opplevelsen derimot; det forblir for de få.

Perfekt symmetri

Når to roboter kjører samme program for bevegelse, med de samme instrukser på samme tid; er det da to forskjellige, eller den samme bevegelsen?

Her utført til Ravels Boléro. Hvordan oppsettet er forblir meg ukjent, men det som er helt sikkert er at disse krabatene er presise og synkroniserte som kinesiske OL-åpningsseremoni-dansere.

Min gode kamerat Kjartan presenterte for meg en gang elektronisk musikk som perfekt; den er ikke kun presist formulert (som noter på et ark), men også perfekt som matematisk riktig utført (aka spilt av maskinen). Den vil dermed, kunne utføres/avspilles fra «notene» to ganger etter hverandre helt likt. Mennesker upresise, klønete og uforutsigbare vesen kan aldri spille musikk 100% «riktig». En datamaskin som leser en digital fil kan.

Er dette dansens svar på electronica? Måtte ikke dette være en koreografs drøm?

Utvide django admin

Alt i django er mer eller mindre tilgjengelig for å utvides. Koden er åpen, og den som vil knote seg fram til nye løsninger kan bare sette i gang. I denne posten viser jeg hvordan du får tak i verdier fra fra dine modeller fra admin-panelet via change_form.html

Fordelen med rammeverk er selvsagt at noen allerede har tenkt på det aller meste fra før, ulempen er at du ikke vet hva de tenkte da de skreiv koden. Det meste er vell dokumentert et-eller-annet sted, men hvor skal du begynne å leite? Google, så klart, men hvilke søke-termer?

Min klasse i models.py har mange verdier, som dermed er representert med samme kolonne-navn i databasen. Men hvordan henter jeg disse enkeltvis ut når jeg skal redigere objektet fra admin-panelet? Hva heter objektet?
{{ obj.verdi }}, {{ object.verdi }} ?

Hvordan skal man gjette slikt?

Vell, det heter {{ original.verdi }}.
Dette er sakset ut fra min nå redigerte /templates/admin/appname/app/change_form.html (eksempler på appname og app: flatpages/flatpage)

{% block form_top %}
{% if original.url  and original.organization != 'nytimes.com' %}
< iframe src ="{{ original.url }}" width="100%" height="500">     
{% endif %}

Ja, jeg vill ha en iframe som viser nettsiden som er laget, men ikke hvis den ligger hos nytimes.com, for de videresender panelet mitt til sin artikkel.

Nye greier på python-stien

Jeg krangler tidvis med python på sen server som kjører freeBSD, som jeg leier hos subsys.no. Hovedpoenget med prosjektet er å lære django og python for mer effektiv webutvikling/prototyping. Å lære ny teknologi handler ofte, for min del i alle fall, om å sitte fast før jeg får med meg hvordan ting fungerer. Denne posten inneholder info om hvordan legge til foldere på python-stien, slik at importering med «from module import stuff» fungerer. Grunnen til at jeg blogger dette er at jeg glemmer det mellom hver gang det er nyttig, og derfor fint å ha tilgjengelig på nett, for meg og kanskje deg.

I roten på webhotellet mitt (og ditt) ligger det en usynlig fil som heter .bash_profile. Den kan hete andre ting som .bashrc, men i mitt tilfelle altså .bash_profile. Denne kan redigeres med nano, eller andre terminal-baserte editorer.

$ nano .bash_profile

Legg til en ny sti:

export PYTHONPATH=/home/users/dittbrukernavn/mappen_du_vil_adde:$PYTHONPATH

Lagre (ctrl + o i nano).

Du må logge ut og inn igjen via ssh for at dette skal tre i kraft.

For å teste om ting virket kan du printe ut sys.path’n i python:

$ python
Python 2.6.5 (r265:79063, May 21 2010, 00:49:11) 
[GCC 4.2.1 20070719  [FreeBSD]] on freebsd7
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path

det du får ut på skjermen er da en liste over foldere som er på python-stien:
[», ‘/usr/local/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg’, ‘/usr/local/lib/python2.6/site-packages/pytz-2010h-py2.6.egg’, ‘/usr/local/lib/python2.6/site-packages/Pygments-1.3.1-py2.6.egg’, ‘/usr/local/lib/python2.6/site-packages/boto-1.9b-py2.6.egg’, ‘/usr/local/lib/python2.6/site-packages/lxml-2.2.4-py2.6-freebsd-7.3-RELEASE-amd64.egg’, ‘/usr/local/lib/python2.6/site-packages/simplejson-2.1.1-py2.6-freebsd-7.3-RELEASE-amd64.egg’, ‘/usr/local/lib/python2.6/site-packages/Genshi-0.6-py2.6.egg’, ‘/usr/local/lib/python2.6/site-packages/flup-1.0.2-py2.6.egg’, ‘/home/users/dittbrukernavn/mappen_du_vil_adde‘, ‘/usr/local/lib/python26.zip’, ‘/usr/local/lib/python2.6’, ‘/usr/local/lib/python2.6/plat-freebsd7’, ‘/usr/local/lib/python2.6/lib-tk’, ‘/usr/local/lib/python2.6/lib-old’, ‘/usr/local/lib/python2.6/lib-dynload’, ‘/usr/local/lib/python2.6/site-packages’, ‘/usr/local/lib/python2.6/site-packages/PIL’]

Hvori den nye forhåpentligvis er å finne.