¿Cuáles son las ventajas de usar Rails para una aplicación GIS / mapping? [cerrado]

13

He escuchado algunas cosas buenas sobre Rails , pero todavía no sé mucho al respecto. Solo hay unas pocas preguntas sobre Rails en GIS.SE (y ni siquiera hay una etiqueta Rails).

  1. ¿Vale la pena aprender sobre Rails, desde la perspectiva de un profesional de SIG? (por ejemplo, ¿qué ventajas ofrece Rails al crear un sitio web que contiene la funcionalidad SIG, en comparación con no usar Rails?)

  2. ¿Hay ejemplos de buenos sitios web de SIG / cartografía creados en Rails?

(Todavía no tengo ningún requisito específico en mente, solo quiero saber si invertir tiempo en aprender Rails).

Stephen Lead
fuente

Respuestas:

15
  1. Probablemente no.
  2. Ninguno se destaca.

Su tiempo sería mucho mejor gastado aprendiendo Django / GeoDjango. Django es similar a Rails en que es un marco de aplicación web. Utiliza Python en lugar de Ruby. La funcionalidad geoespacial es mucho más madura que GeoRuby.

Ruby / Rails es una gran plataforma para desarrollar, pero la funcionalidad espacial no está a la par con Django.

Sean
fuente
9

Actualmente estoy desarrollando una aplicación de rieles con algunas capacidades de mapeo, y realmente amo Ruby y RoR, pero lamentablemente hay muy pocos complementos lo suficientemente maduros para un servicio complejo WMS / WFS.

Pero solo quiero agregar que la biblioteca rGeo reciente hace un buen trabajo con las proyecciones (enlaces proj4 y la capacidad de usar otras API), se integra sin problemas con ActiveRecord ORM (lo uso con postgre / postgis, funciona como un encanto), y tiene algunas buenas herramientas para leer archivos de forma, codificar / decodificar GeoJSON ...

m_x
fuente
1
¿Puedes publicar un enlace a tu sitio cuando esté listo? Me encantaría verlo. Gracias.
Stephen Lead
1
actualmente solo hay un mapa, y todo el sitio es un desastre porque lo estoy "facelifting" (y porque soy un gran novato: D), pero puedes echar un vistazo aquí
m_x
7

Estrictamente desde una perspectiva de aprendizaje, aprender algo nuevo siempre vale la pena. Sin embargo, Ruby / Ruby on Rails no es extremadamente popular en el mundo SIG. Debido a la falta de popularidad, le sugiero que elija otro idioma, como Python, si su objetivo es aprender algo nuevo. No creo que encuentre ventajas específicas de SIG para Ruby / Rails, pero ciertamente tiene un atractivo cuando se trata de crear sitios web.

En cuanto a los proyectos, hay enlaces Proj4 para Ruby y GeoRuby

Sasa Ivetic
fuente
5

TLDR; La ventaja de usar ruby ​​para SIG es el mismo ruby. Una vez que aprenda a hacer transformaciones de CRS con él, usar rgeo es muy fácil con chillido.

Trabajar con la rgeogema me pareció muy agradable. Al contrario de casi cualquier otra respuesta para esta pregunta, diría que definitivamente vale la pena investigar si está familiarizado con el rubí. Si no es así, diría que probablemente no haya una ventaja particular basada en algunas de estas otras respuestas, pero Ruby fue excelente para ejecutar scripts mientras cargaba gigabytes de datos de archivos de forma para ejecutar consultas postgis. Por el lado de la base de datos, ha sido un placer absoluto.

La combinación de los enlaces ActiveRecord de rails para postgis, junto con rgeo y la gema chirriante, ha sido solo otro día relativamente fácil en el parque en lo que respecta a una aplicación de rubí.

Para LA introducción a trabajar con SIG en rieles, vea esta charla de rubyconf de Daniel Azuma http://www.youtube.com/watch?v=QI0e2jkUbkk

Azuma trabaja para google pero también escribió la gema rgeo para ruby. rgeo tiene las extensiones rgeo-shapefile y rgeo-geojson (estas son las dos que he usado hasta ahora) que facilitan la conexión a los conjuntos de datos existentes. rgeo-shapefile solo puede leer shapefiles hasta donde puedo decir, pero rgeo-geojson puede leer y escribir.

Aquí está la parte 1 de una publicación de blog de la serie de 11 partes que ha estado escribiendo durante algún tiempo. La serie me ha sido extremadamente útil. http://blog.daniel-azuma.com/archives/60

boulder_ruby
fuente
3

Acabo de enterarme de CartoSet , que ciertamente parece interesante.

Es una nueva solución de geoportal altamente personalizable basada en tecnologías de código abierto ... Cualquiera que necesite publicar y seleccionar un conjunto de datos geoespaciales de manera simple y hermosa. Utiliza Ruby On Rails, Refinery y PostGIS, un marco completo de código abierto, de uso gratuito.

Stephen Lead
fuente
3

Recomiendo usar ambos. Comencé como desarrollador de SIG pero luego comencé el desarrollo de RoR en proyectos con un componente de Mapa.

Es posible que no tenga todas las herramientas que tiene Django, pero con Postgres / PostGIS, GDAL y Leaflet o Openlayers puede hacer casi todo.

Cartodb es una herramienta realmente interesante basada en Ruby on Rails y Postgres. También puede consultar los laboratorios de WCMC para proyectos web SIG creados en Ruby on Rails.

usuario1934667
fuente
2

mirando http://www.mangomap.com es usar ruby ​​on rails.

sareuon
fuente
1

Como desarrollador de rieles que ha tenido cierta experiencia trabajando con integraciones SIG frontales utilizando la API de JavaScript de Arcgis y Google Maps, me parece seguro que ya tengo las necesidades habituales de un sitio web atendido, y puedo centrarme en el javascript solo. Si sus necesidades son similares, creo que cualquier pila puede servir para ese propósito.

Prusswan
fuente
1

Entonces, 3 años después, finalmente me organicé lo suficiente como para aprender algunos Rails.

Mi conclusión inicial es que Rails no ayudará específicamente con una aplicación web SIG, pero hace que todo lo demás sea ​​mucho más fácil.

Rails maneja las tareas y funciones más comunes de una aplicación web, lo que significa que el desarrollador puede concentrarse en los aspectos específicos de GIS, sin tener que escribir toda la "plomería" entre las páginas.

Stephen Lead
fuente
(Otro año después y me estoy volviendo bastante competente con Rails. Realmente lo entiendo ahora, aunque todavía estoy de acuerdo en que no ayuda específicamente con los SIG)
Stephen Lead