obra publicada por javier ramirez como ‘Atribución-No Comercial-Licenciar Igual 2.5’ de Creative Commons
proyecto a realizar
youfacetwittflickpoopr Yoozoombaflooh Moonchimpklanx
queridos reyes magos... buscador, generación de pdfs, caché,integración con APIs de terceros, tratamiento de feeds, multi-idioma, Ajax, procesos de fondo, envío de mails, autenticación con roles, backend, foros, chat, edición de texto con formato, popups con estilo, notificación de excepciones, captcha, control de spam, upload de ficheros, creación de thumbnails,creación de gráficas/informes, notificación de excepciones, tests, análisis de rendimiento...
...el típico proyecto
“voy a programarlo todo desde cero, así aprenderé mucho más y tendré el control total del proyecto”
interneeeeeeeeeeeeeeeeee
planificando el proyecto “yo creo que para cuando termine de pagar la hipoteca ya habré terminado la fase I”
gracias de antemano
Se estima que la rueda fue inventada en el quinto milenio a.c. en Mesopotamia wikipedia
no reinventes la rueda..
elige la tuya!! * fotos extraídas de flicker. con licencia CC
no eres especial.. supéralo para (casi) cualquier funcionalidad que no sea propia de la lógica de negocio, existen componentes desarrollados que hacen exactamente lo que necesitas... .. o que podrían hacerlo con unos cuantos cambios.. recuerda.. open source no significa que sea gratis, significa que puedes ver y modificar el fuente
gemas/plugins: dónde buscar => agilewebdevelopment.com/plugins desactualizado a veces, sólo plugins => rubyforge.org sin feedback de usuarios => github.com sin feedback. No especializado en ruby/rails => code.google.com sin feedback. No especializado en ruby/rails => workingwithrails.com toolbox sin feedback. desactualizado => google.com buena suerte!!
objetivos => identificar componentes existentes sobre los que desarrollar un proyecto rails no trivial a día de hoy => ver cuál es la alternativa escogida mayoritariamente en cada categoría => escuchar experiencias de proyectos donde se hayan usado estos componentes en la vida realtm
mecánica => Presentación de la categoría y las alternativas identificadas => Votación mediante papeles de colores => Comentarios del respetable público acerca de los puntos fuertes/débiles de cada alternativa => Si alguien quiere hablar de alguna alternativa no contemplada, perfecto! p.s. no seáis /.{8}/ y participad ;)
framework desarrollo web
Ruby on Rails
! T O H
J2EE + Struts + Tiles + Java Server Faces Hibernate ! T O N
* disclaimer: comparativa humorística para probar la mecánica
file upload
paperclip
! T O H
attachment_fu
! T O N
framework javascript
prototype js
! T O H
jquery + jrails
! T O H
tratamiento imágenes
ImageMagick rmagick minimagick
! T O H
image science
! T O N
internacionalización (vistas)
get_text
gibberish
! T O H * preguntar por globalize, i10n y otras alternativas
! T O N
internacionalización (modelos)
globalize
translate_column / Simplified Translation
! T O N
! T O H
notificación excepciones
exception notifier
! T O H
hoptoad notifier
! T O N
procesos de fondo
beanstalkd
starling (+ simplified_starling)
! T O N
! T O H
buscador (engine, no plugin)
sphinx
! T O H
solr
! T O N
plugin para sphinx
ultra_sphinx
! T O H
thinking_sphinx
! T O N
profiling / rendimiento
ruby_prof + query_reviewer
! T O N
new_relic_rpm
! T O H * preguntar por fireruns tuneUp
test mock objects
FlexMock
! T O N
Mocha
! T O H
factorías de objetos de test
FixtureReplacement
! T O H
factory girl / machinist
! T O N
framework para testing
shoulda
! T O H
rSpec
! T O H
base de datos
postgreSQL
! T O N
mySQL
! T O H
servidor front-end
nginx
! T O H
apache
! T O N
servidor rails
servidor separado mongrel thin
! T O H
passenger
! T O N * preguntar por jRuby en producción
deploy
capistrano
! T O H
vlad / otros
! T O N
texto con formato
markdown BlueCloth
! T O H
BBCode bb-ruby
! T O N
editores WYSIWYG (LQVELQH)
tinyMCE
! T O H
FCKEditor
! T O N
ventanas flotantes/modales
redbox
! T O N
lightbox
! T O H * comentar windows/xilnius
generación pdf basados en ruby:
basados en JAVA:
rfpdf
apache FOP
prawn
flying saucer
OT!
RTeX
N
!
HOT
! T O N
gráficas
gruff
! T O N
google charts gc4r
! T O H
agregador web
hpricot mechanize scrubyt
! T O H
automatización watir firewatir
! T O N * preguntar por engine javascript
lectura de feeds
acts_as_feeder
! T O N
SimpleRSS
! T O H * preguntar por google AJAX Feed API
parser XML
ReXML
libxml
autenticación
restful authentication
* acts_as_authenticated
open_id authentication
gestionar cambios de estado
acts_as state_machine
ad-hoc, observers...
tags
acts_as taggable _on
acts_as taggable _on_steroids
envío masivo de e-mail
ar_mailer en localhost
servicio externo
CAPTCHA
Simple Captcha
ReCAPTCHA
chat
flash juggernaut
comet orbited
* preguntar por irc y xmpp
DRY RESTful controllers
resource controller
resources controller
Scaffolding / Backend
Active Scaffold
Streamlined / Otros
* preguntar por Typus
sanitize de textos
simple _text _fields
white_list
* comentar white_list_formatted_content
obra publicada por javier ramirez como ‘Atribución-No Comercial-Licenciar Igual 2.5’ de Creative Commons