Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Mejorando el periodismo con Ruby
Search
dcabo
October 30, 2014
Programming
0
590
Mejorando el periodismo con Ruby
Charla en Madrid.rb el 30 de Octubre de 2014.
Grabación disponible en
http://vimeo.com/111778599
dcabo
October 30, 2014
Tweet
Share
More Decks by dcabo
See All by dcabo
Open Data y Transparencia
dcabo
0
73
Reutilización de datos y transparencia
dcabo
3
340
Preparando datos para su análisis
dcabo
0
620
Intro a Google Refine
dcabo
0
640
Beyond FOIA (FOIA and Technology)
dcabo
1
88
Open Data y Transparencia
dcabo
0
200
¿Dónde van mis impuestos?
dcabo
3
250
Casos prácticos de la reutilización de datos públicos
dcabo
2
130
Against the Spanish odds (the techie side)
dcabo
3
270
Other Decks in Programming
See All in Programming
ふつうのRubyist、ちいさなデバイス、大きな一年 / Ordinary Rubyists, Tiny Devices, Big Year
chobishiba
1
460
Understanding Apache Lucene - More than just full-text search
spinscale
0
120
Rで始めるML・LLM活用入門
wakamatsu_takumu
0
180
S3ストレージクラスの「見える」「ある」「使える」は全部違う ─ 体験から見た、仕様の深淵を覗く
ya_ma23
0
560
How to stabilize UI tests using XCTest
akkeylab
0
130
[SF Ruby Feb'26] The Silicon Heel
palkan
0
110
nuget-server - あなたが必要だったNuGetサーバー
kekyo
PRO
0
250
ベクトル検索のフィルタを用いた機械学習モデルとの統合 / python-meetup-fukuoka-06-vector-attr
monochromegane
2
440
Ruby and LLM Ecosystem 2nd
koic
1
820
ロボットのための工場に灯りは要らない
watany
10
2.9k
コードレビューをしない選択 #でぃーぷらすトウキョウ
kajitack
3
960
Go Conference mini in Sendai 2026 : Goに新機能を提案し実装されるまでのフロー徹底解説
yamatoya
0
590
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
64
53k
Unsuck your backbone
ammeep
672
58k
How to train your dragon (web standard)
notwaldorf
97
6.6k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.4k
The Curious Case for Waylosing
cassininazir
0
270
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
210
WENDY [Excerpt]
tessaabrams
9
36k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
88
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.2k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
230
Transcript
mejorando el periodismo con ruby (…y datos abiertos, transparencia
y periodismo de datos) David Cabo @dcabo
periodismo tertuliano
Open data / datos abiertos - disponible online, gratuita -
procesable por ordenadores - licencia abierta, reutilizable
data-hype “Data is the 21st century’s new raw material”, francis
maude, minister for uk cabinet office.
“Data is the new coal — abundant, dirty and difficult
to mine.”, someone on the internet, after using data. data-reality
None
None
None
None
¿open data? en datos.gob.es
None
registros de visitas en data.gov
influenceexplorer.com
None
los datos no dicen nada
hacen falta periodistas “People don’t consume facts. They consume stories.”,
clay shirky.
un mapa no es una historia
million dollar blocks
periodistas + informáticos + diseñadores + estadísticos
+ ...
all the code that’s fit to printf()
new kids on the block
None
the cool kids are doing it
escarbando en el boe
None
None
None
None
None
None
making of… expresiones regulares: “tenías un problema, ahora tienes dos”
None
title =~ /([Dd]on|[Dd]oña)/ prefix = $1 gender = prefix.index("ñ") ?
‘M’ : ‘H’ Expresiones regulares en ruby
None
None
¿dónde está el contexto?
dondevanmisimpuestos.es
making of… parseando html con nokogiri
None
None
None
None
regex + html => all is lost
doc = Nokogiri::HTML(open(filename)) rows = doc.css('table.S0ESTILO9 tr’) rows.each do |row|
columns = row.css(‘td') .map{|td| td.text.strip} amount = columns[4] … end nokogiri
quienmanda.es
reuniones ‘discretas’ “SI ALGUIEN QUIERE TENER UNA REUNIÓN discreta CONMIGO,
YO LA TENGO”, mariano rajoy, 18 de abril del 2013, en el congreso.
el mundo es un pañuelo
artículos de fondo
None
None
None
automate what you can
making of… mechanize: “no es país para rest”
None
agent = Mechanize.new page = agent.get(company_page_url) board_link = page.link_with(:text =>
/Consejo/) board_html = board_link.click.content # Use nokogiri to get the data mechanize
bola extra: bellingcat, storyful…
¿preguntas? @dcabo