2010-02-13 7 views
5

Parece ser muy contraproducente en el sentido de que muchas gemas se romperán en las ventanas. He estado lidiando con tantos problemas de gemas mysql y ruby-mysql (fallas seg que ocurren en la gema misma, una clase llamada UnixSocket aparentemente no funciona bien en máquinas Windows, etc.).Desarrollar en Ruby, en una máquina con Windows, ¿es demasiado contraproducente?

¿Estoy perdiendo el tiempo aquí? ¿Debo pasar a un lenguaje de scripting diferente?

+8

Uno podría preguntar si debe pasar a un sistema operativo diferente ...;.?) – DGM

+0

usted me dice .... – Zombies

+0

¿Qué tipo de proyectos está trabajando en la mayoría de de Ruby funciona perfectamente bien en varias plataformas. Es posible que Ruby se adapte perfectamente a su proyecto si no necesita gemas/módulos específicos que no funcionen bien en Windows. –

Respuesta

8

Tengo muy poca experiencia con Ruby en Windows, pero cuando comencé con Ruby, estaba en Windows y tuve la impresión general de que no era un sistema nativo de Windows.

Así que después de muchos años de usar principalmente Windows, entrar en Ruby me llevó a volver a mi sistema original, Unix, esta vez a Linux. Ruby corrió con menos molestias y correr bash en su entorno nativo fue mejor que Cygwin. Yo era feliz.

Luego mi nuevo empleador me hizo cambiar a la Mac. Ahora estoy realmente mimado, pero realmente feliz.

Me doy cuenta de que esto es subjetivo pero ISTM que Linux era mucho mejor que Windows y que la Mac es mucho mejor que Linux. Todavía podría ejecutar Windows en VMWare Fusion si quisiera, pero no es así. Tengo algunas VM de Linux.

Creo que lo que estoy tratando de decir es que hay una razón por la que Ruby no se implementa mejor en Windows. El tipo de gente que dirige Ruby es ... Estoy tratando de pensar en una palabra no peyorativa aquí ... que probablemente no se encuentre en Windows.

Así que este es un punto de inflexión para usted. Sí, .net es un entorno sofisticado y bien documentado, sí, Windows ha sido confiable durante varios años, y sí, es un sistema respetable en este momento. Sí, ejecuta Stack Overflow y algunos de los gurús son chicos de Windows. Pero es solo una especie de prueba de fuego para ... maldición, perder esa palabra otra vez ...

Mucha gente ejecuta Windows porque simplemente no saben qué más ejecutar. Linux es una buena alternativa si tiene que comprar el sistema usted mismo. Y si usted o su empleador pueden pagarlo, la Mac (Unix por debajo) le ofrece todo lo que Linux hace más el mundo específico de Mac.

Es hora de elegir ... :-)

+0

Hm, supongo que me gustan las ventanas porque estoy acostumbrado a muchas de las aplicaciones y juego un poco sobre ellas ... Y bueno, cuando llego a casa me gusta la simplicidad de las ventanas, supongo. ... Pero consideraré Linux como parece que estoy haciendo más en el desarrollo casero (donde antes Windows era mejor para mí) ... – Zombies

+0

Además, ¿debería ejecutar una distribución de Linux en VirtualBox para mi desarrollo de Ruby? – Zombies

+2

Esa podría ser la forma más sencilla de configurar un entorno de desarrollo. Luego, puede ejecutar toda la GUI de Linux o realizar una instalación Linux sin GUI y luego abrir las ventanas de Cygwin o Putty en el cuadro MSWindows de su host y enviarlas al host de Linux. – DigitalRoss

1

he estado desarrollando con Ruby en Windows desde hace varios años, incluyendo la construcción y el despliegue de "empresa" Rieles intranet aplicaciones en ejecución en contra de Oracle, MySQL y SQL Server en tanto Servidores Windows y Solaris.

De acuerdo, hay algunas gemas que han compilado componentes cuyos autores no han creado versiones de Windows: está bien, es una plataforma de código abierto y no tienen que hacerlo si no lo desean. Del mismo modo, tiene derecho a (a) ignorar las bibliotecas que no tienen versiones mswin32 o mingw32 o (b) devolver algo compilándolas usted mismo.

En cuanto a la joya de MySQL, IIRC en Windows necesita el adaptador de "Ruby puro", que no utiliza la API MySQL C: http://github.com/tmtm/ruby-mysql o gem install ruby-mysql

+0

Sí, intenté exactamente eso, pero me estaba fallando porque la versión db de MySQL era demasiado reciente. – Zombies

+0

Pero sí lo tengo trabajando ahora y uso la gema ruby-mysql. – Zombies

0

no creo que estás perdiendo el tiempo. He trabajado con dos tipos que han realizado grandes proyectos en las aplicaciones de Ruby on Rails con Windows XP, como proyectos importantes a largo plazo. Parece que no les importa en absoluto. Ambos trabajaron en él usando NetBeans IDE. (Tiene una versión específica de Ruby.)

Lo intenté yo mismo cuando comencé con Ruby y no tuve muchos errores o problemas con las gemas, aunque hubo algunas cosas que funcionaron torpemente. Usualmente había una solución.

Decidí que prefería usar OS X o CentOS Linux para el desarrollo de Ruby. Pero sé con certeza que trabajar en Windows es posible.

Una cosa a tener en cuenta es que el 90% de la comunidad Ruby está en OS X y se implementa en Linux, por lo que obtendrá más ayuda si está en uno de esos sistemas operativos.

Otra cosa a tener en cuenta es que todo el universo y la cultura de Ruby está muy orientado hacia la línea de comandos de Unix utilizando el shell bash. Todos tus tutoriales y cosas van a suponer de alguna manera. Van a tener instrucciones como "Vaya al shell y ejecute # rake db:migrate y será mucho más fácil seguir esas instrucciones si tiene un shell completo con finalización de comandos, historial de comandos, etc. Así que si quiere trabajar en Windows se puede intentar algo así como la instalación de MinGW

Cuestiones relacionadas