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
570
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
55
Reutilización de datos y transparencia
dcabo
3
270
Preparando datos para su análisis
dcabo
0
380
Intro a Google Refine
dcabo
0
630
Beyond FOIA (FOIA and Technology)
dcabo
1
72
Open Data y Transparencia
dcabo
0
170
¿Dónde van mis impuestos?
dcabo
3
120
Casos prácticos de la reutilización de datos públicos
dcabo
2
120
Against the Spanish odds (the techie side)
dcabo
3
190
Other Decks in Programming
See All in Programming
Scalable Customer Journey Orchestration (CJO)
lewuathe
0
420
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
27
8.5k
MetricKitで予期せぬ終了を検知する話 / Detect unexpected termination with MetricKit
nekowen
1
200
#phpcon_odawara オープン・クローズドなテストフィクスチャを求めて / open closed test fixtures
77web
3
250
大規模UIKitベースアプリへのTCAの段階的導入/gradual-adoption-of-tca-in-a-large-scale-uikit-based-app
takehilo
2
210
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
4
390
GitHub Copilotのススメ
marcy731
1
230
Java 22 Overview
kishida
1
190
SIMD Parallel Programming with the Vector API
josepaumard
0
230
Exploring the Implementation of “t.Run”, “t.Parallel”, and “t.Cleanup”
akarin
1
130
Goのmultiple errorsについて (2024年4月版)
syumai
4
1.2k
From Spring Boot 2 to Spring Boot 3 with Java 21 and Jakarta EE
ivargrimstad
0
610
Featured
See All Featured
Art, The Web, and Tiny UX
lynnandtonic
290
19k
The Power of CSS Pseudo Elements
geoffreycrofte
62
5k
Product Roadmaps are Hard
iamctodd
45
9.7k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
RailsConf 2023
tenderlove
8
560
Code Reviewing Like a Champion
maltzj
515
39k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
26
2.3k
Design by the Numbers
sachag
274
18k
Practical Orchestrator
shlominoach
183
9.7k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
Gamification - CAS2011
davidbonilla
77
4.6k
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