Los siete y los días
Siete hombres, a siete pasos de distancia cada uno de sus contiguos, formando un poligono regular del cual cada uno es el vértice. Susurran en vos baja "nuevo orden", siete veces cada minuto.
Cada 7 horas tiran la vieja antorcha y prenden una nueva, o sea aproximadamente 3.4285714 veces por día, 6.857142857 veces, casi siete, solo casi, cada dos días.
Los transeuntes y automovilistas miran con curiosidad, a esos siete hombres desnudos, alrededor de un monumento, en la intersección de Corrientes y 9 de Julio.
Su obsesión es que los ciclos por día,
también reflejen al perfecto siete.
La ceremonia deberá repetirse, hasta que siete ciclos quepan en dos días.
ellos, prisioneros, se saben indignos
el obelisco es su fiscal
su sombra, el verdugo
la corta sombra del mediodia dos veces en siete ciclos, su utopía
siete es la señal que esperan
6.857142857 es para algunos de ellos la escupida de un mundo corrupto,
para otros el reflejo de la indignidad personal,
de una ceremonia una vez mas mal realizada
uno de ellos, el mas viejo,
con las piernas débiles mira una vez mas
el reloj de arena con tapitas de plata
y cadena de oro que lleva al cuello
la sombra del mediodía está llegando
la arena mantiene su desafío
y recuerda el pasar de aquel bibliotecario,
en aquellos años que también honraban al siete
un ciego que con palabras blasfemas,
pretendía maldecir la simetría, y alabar al orden.
El Papa, la Presidenta, y las opciones.
La mujer y el aborto
Hay dos cosas que se mezclan en toda esta discusión sobre el aborto. Se mezcla el derecho a la vida del bebé, con la condena o reivindicación moral de la madre. Son dos cosas muy diferentes. El punto de no permitir el aborto no es castigar a una mujer por una supuesta conducta sexual irresponsable, sino proteger la vida del bebé. Algunos quieren hacer de la madre un ejemplo de castigo: "Que lo tenga y que se la banque, por tarada que se embarazó". Otros quieren hacer de la madre que aborta una heroína de la libertad femenina. En ambos casos se comete el error de convertir la decisión de permitir el aborto o no en un plebiscito sobre la moral sexual y la libertad de la mujer. Y ese no es el asunto importante. Lo importante es que hay otra vida, la del bebé, que debe ser protegida.
Slides de la Rubyconf Uruguay
Acá estan los slides disponibles hasta ahora:
jruby by @headius http://www.slideshare.net/CharlesNutter/rubyconf-uruguay-2010-jruby
rubinius by @brixen http://www.slideshare.net/brixen/rubyconf-uy-2010
redis and ohm by @soveran http://files.soveran.com/simplicity
ActiveRecord identity map by @miloops http://www.slideshare.net/miloops/im-presentation-5598920
Treetop by @softa http://github.com/softa/treetop-slides
webfinger by @blaine http://www.slideshare.net/Blaine/social-software-for-robots
nodejs by @federomero http://www.slideshare.net/outboxlabs/nodejs-y-ruby
clojure by @fru02 http://www.slideshare.net/fbrubacher/clojure-5628563
Ruby culture by @rabble http://www.slideshare.net/rabble/ruby-culture
websockets by @ismasan http://www.slideshare.net/ismasan/websockets-talk-at-rubyconf-uruguay-2010
metaprogramming by @spastorino http://www.slideshare.net/spastorino/metaprogramming-5634072
Lightning talks:
sounds.gd by @leosoto http://www.slideshare.net/leo.soto/soundsgd-lighting-talk-rubyconf-uruguay
graph git history by month
$ ./git_history.rb 2008-03 |######## 5 commits 2008-04 |######################################## 25 commits 2008-05 | 0 commits 2008-06 | 0 commits 2008-07 |#### 3 commits 2008-08 |### 2 commits 2008-09 |############ 8 commits 2008-10 | 0 commits 2008-11 |###### 4 commits 2008-12 | 0 commits 2009-01 |# 1 commits 2009-02 |###################### 14 commits 2009-03 |######## 5 commits 2009-04 |############ 8 commits 2009-05 |############## 9 commits 2009-06 | 0 commits
./git_history.rb 30 vertical # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # 07 08 09 10 11 12 01 02 03 04 05 06 07 08 09 10 11 12 01 02 03 04 05 06 2007 2007 2007 2007 2007 2007 2008 2008 2008 2008 2008 2008 2008 2008 2008 2008 2008 2008 2009 2009 2009 2009 2009 2009
Railscasts downloader script
#!/usr/bin/ruby require 'rss' p 'Downloading rss index' rss_string = open('http://feeds.feedburner.com/railscasts').read rss = RSS::Parser.parse(rss_string, false) videos_urls = rss.items.map { |it| it.enclosure.url }.reverse videos_filenames = videos_urls.map {|url| url.split('/').last } existing_filenames = Dir.glob('*.mov') missing_filenames = videos_filenames - existing_filenames p "Downloading #{missing_filenames.size} missing videos" missing_videos_urls = videos_urls.select { |video_url| missing_filenames.any? { |filename| video_url.match filename } } missing_videos_urls.each do |video_url| filename = video_url.split('/').last p filename p %x(wget #{video_url} -O #{filename}.tmp ) p %x(mv #{filename}.tmp #{filename} ) end p 'Finished synchronization'
autofile, un pequeño script para suites enredadas
Cuando te levantaste dijiste, este va a ser un gran día. Te hiciste un desayuno con todo y llegaste temprano al trabajo.
Mirás la lista de tareas para ver cual agarrás, y lleno de coraje te metés con la tarea difícil.
A pesar de que la suite de tests del proyecto está descuidada, vos querés hacer TDD/BDD. Corrés ./autotest solo para encontrarte un tsunami de fallos y errores.
Un clavo.
Así que, hay mucha mugre en la suite de tests, y no podés quitarla, muchos de esos tests son de otros. Decidís correr solo los tests de lo que estas implementando (si, sé que es feo), pero no querés correrlos manualmente
Y por eso, escribí autofile.rb.
./autofile.rb path/to/your/lonely/test
...y cada vez que escribís en el archivo del test, autofile lo corre de nuevo
#!/usr/bin/ruby @mtime=nil while true current_mtime = File.stat(ARGV.first).mtime if current_mtime != @mtime puts "found change, running test" puts `ruby #{ARGV.first}` @mtime = current_mtime end sleep 0.01 end
autofile, a little script for big hairy test suites
So, when you woke up today, you decided to make this a better day than yesterday; you started with a big healthty breakfast, and arrived to work early.
You look at your todo list to see what needs to be done next, and full of courage take that difficult task at the middle of the list.
Even though your project's test suite has been neglected, you know the way to go is TDD/BDD. You run ./autotest only to be greeted by a tsunami of failing tests and errors.
Bummer.
So, there's a lot of failing stuff on the test suite. You cannot remove it, as it's not yours. You decide to just run the tests for your new stuff (yeah, I know it's an ugly compromise), but don't want to run it manually.
Enter autofile.rb
./autofile.rb path/to/your/lonely/test
...and every time you write to the test file, it gets run again
#!/usr/bin/ruby @mtime=nil while true current_mtime = File.stat(ARGV.first).mtime if current_mtime != @mtime puts "found change, running test" puts `ruby #{ARGV.first}` @mtime = current_mtime end sleep 0.01 end