Mi vimrc a octubre de 2010

Pincha para ver mi última versión del vimrc comentado.

[Leer...]
tags: [ software libre · linux · programacion · vim ]

Las mejores aplicaciones para Android según Yo (V.3.0, Actualizado 08/2010)

A review of some of my favorite Android apps.

[Leer...]
tags: [ articles · cacharros ]

Ubuntu Linux 10.04 (64bits) on a Sony Vaio VPCEB2X5E

Other names for the model (for Google): VPC EB 2X5E VPCEB 2X5E

Specs

  • CPU: i5 2.40Ghz
  • RAM: 6GB
  • GPU: ATI MobileRadeon HD5650 with 1GB RAM
  • Hard Disk: 320GB 5400 RPM
  • Screen: 15.4’’

Things that worked

  • Ubuntu installed fast and flawlessly, including the Windows 7 partition resizing. If you want to get more space you can delete the second partition (the one marked as “Windows Vista") because is the Sony recovery partition (and on this laptop takes a lot of space).

  • Once installed, I run the propietary driver installation program (is somewhere under Menu->Administration) and it installed the ATI fglrx drivers. A reboot later, I was on a fully 3D accelerated desktop with compiz and the effects automatically enabled. No “beta driver” watermark was shown, no graphical glitches were found and the accelerated effects all work beautifully. Good job on AMD/ATI on this one.

  • The integrated webcam worked perfectly out of the box (tested with Skype), without needing to install anything. Finally I can show my penguin on Chatroulette!

  • No network or WIFI problems.

  • Suspend and hibernate work perfectly. Everything is restored when the computer wakes up.

  • HDMI output works perfectly with my Samsung TV, but if you want to hear anything on the TV you must remember to select HDMI as audio output: click on the sound icon on the taskbar, click on “Sound Settings” under the volume control, choose the “Output” tab and finally select “Redwoord HDMI Audio [Radeon 5600 Series]”.

  • Of the Fn functions the volume/mute keys work (but see below about sound), as does the suspend and the keys for alternating the output (HDMI/monitor/both) and but the ones for the screen brightness one don’t. No problem, since I can changue the gamma of the monitor with xgamma anyway.

Things that didn’t work (with a fix)

  • The Fn functions for the screen brightness doesn’t work.

The only other problem I found is that the sound didn’t work. After a five minutes Google search I found an easy solution; just follow these steps on a terminal:

  1. wget http://ftp//ftp.kernel.org/pub/linux/kernel/people/tiwai/misc/hda-verb/hda-verb-0.3.tar.gz
  2. tar xf hda-verb-0.3.tar.gz
  3. cd hda-verb-0.3
  4. make
  5. sudo cp hda-verb /usr/bin
  6. sudo gedit /etc/rc.local
  7. Add the following line before exit 0 : /usr/bin/hda-verb /dev/snd/hwC0D0 0x19 SET_PIN_WIDGET_CONTROL 0x22
  8. Save and reboot (or run “sudo /usr/bin/hda-verb /dev/snd/hwC0D0 0x19 SET_PIN_WIDGET_CONTROL 0x22” to avoid rebooting)

In order to enable the sound after suspend do:

  • sudo gedit /etc/pm/sleep.d/15_sound
  • Put this content:

    #!/bin/sh

    case “$1” in resume) /home/juanjux/bin/hda-verb /dev/snd/hwC0D0 0x19 SET_PIN_WIDGET_CONTROL 0x22 ;; esac

  • Save
  • Run on a terminal: sudo chmod +x /etc/pm/sleep.d/15_sound

It seem that this problem has already been fixed on recent kernel versions so maybe you won’t need to do it.

Some tuning

I found the screen gamma was to high on the LCD, so testing with the “xgamma” command I found that the setting 0.60 ("xgamma -gamma 0.60") was perfect for me, so I made it permanent adding these lines to /etc/X11/xorg.conf (edit the file as root with sudo):

Section "Monitor"
    Identifier  "Generic Monitor"
    Option   "DPMS"
    Gamma    0.6
EndSection

Conclusion

This is a perfect machine to run Linux in.

Rails y Django

Pues nada ya puedo decir que se Rails sin experiencia. Conozco todo el ORM, el scaffolding, los helpers de AJAX, las funciones de los controladores, las vistas, etc.

Debo decir que sin duda alguna es más potente que Django en cuanto a funcionalidad; tiene cosas más avanzadas en la parte de ORM (aunque la generación de los modelos es más rústica, pero con los scripts que trae al final tardas menos en generar los modelos), hace migraciones casi automáticas hacia delante y hacia atrás, en las plantillas empotras directamente Ruby (no un lenguaje de plantillas), los helpers de AJAX molan, etc. Si miro los cambios de las versiones 1.1 y 1.2 de Django realmente lo que veo es que juegan a hacer catchup con Rails, pero Rails ya va a sacar la 3.0 que tiene mogollón de cosas nuevas. Lo único que Django tiene que no tenga Rails es el admin; pero en Rails hay un módulo que hace un admin más chulo incluso que el de Django (usando AJAX en todo).

Sin embargo…

Empecé a picar el esqueleto de mi proyecto veraniego. Generé los modelos, controladores y demás (con los scripts estos de scaffolding la verdad es que te ahorras muchísimo tiempo haciendo boilerplate, es algo que tendrían que meter en Django sí o sí), empecé a implementar funcionalidad en los controladores, pero…

Pero entonces miré el código. QUE FEALDAD. Que feo es Ruby, como decía mi amigo Miguel, es como otro Perl. En Django uno mira el código, y ve algo escueto, bonito, que hasta alguien que no conozco Python o Django pero sepa programar en cualquier otro lenguaje prácticamente lo entiende.

Así que mi proyecto veraniego va a ser con mi amado Django. Para el tema de integrar AJAX sin meter mucha basura voy a usar Dajax que ayuda mucho.

Ruby Vs Python

I’m learning Ruby, coming from a Python background.

Python is clearer, easier, more mantenible and usually faster.

Ruby is elegant, concise and sometimes misterious.

The thing is clear:

Python is a dog and Ruby is a cat