Estoy aprendiendo Ruby on Rails con miras a un cambio de carrera en el desarrollo web. Soy reacio a cambiar a una Mac, pero me han dicho que es la mejor opción para el desarrollo. ¿Es esto cierto?

Bueno, es controvertido.
TL; DR Usa lo que sabes mejor, te ayudará a ser más eficiente.

En primer lugar, si ya se siente cómodo con su PC que ejecuta un sistema operativo con el que se siente cómodo, la transición a MAC puede ser bastante dolorosa. Es un sistema operativo completamente nuevo que necesita aceptar y eso es un gran problema. Puede ser tan eficiente en una PC (más eficiente en realidad si lo conoce realmente bien) que en una Mac en la que es nuevo.
En segundo lugar, Mac cuesta más dinero que una PC de potencia compatible. Es cuestionable comprar la cosa si realmente no sabe que necesita hacerlo. Personalmente utilizo dos PC, ambas ejecutando Win 7 y no he encontrado ningún problema que no pueda ser superado, y no hay tareas que me gustaría resolver en Mac.
La mejor opción para el desarrollo es la opción que lo hará sentir más cómodo y podrá hacer más en menos tiempo. Entonces, en lugar de tratar de encontrar la mejor opción para el desarrollo, obtenga más información sobre su máquina actual y pruebe algunos trucos que ahorran tiempo (cortes de tiro, etc.)

Contraataque: ¿mejor que qué?
¿Mejor que usar Windows? Estoy totalmente de acuerdo. Para la mayoría de los lenguajes de programación, usaría un sistema Unix (excepción: C # y todas las cosas de asp .net). ¿Por qué? Está más cerca de la tecnología del servidor. La mayoría del servidor ejecuta una distribución de Linux. Puede haber errores en las ventanas que no ocurren en Linux y viceversa. Siempre es bueno desarrollar una tecnología de servidor cercana a usted y, por lo general, debido a la rentabilidad, el servidor que ejecuta su aplicación de rieles no es Windows.

¿Mejor que Linux? No. La razón ya se mencionó.

¿Vienes de Linux o Windows? Si es lo último, entonces quizás haya un caso para mudarse. Linux, por otro lado, tiene todas las utilidades que los desarrolladores encuentran útiles en OSX. Hay algunas diferencias, pero son mucho más similares que diferentes.

Ahora, personalmente, elegí el Macbook Pro porque

  1. Estaba frustrado con la mala calidad de las computadoras portátiles de otros fabricantes.
  2. Retina. Esto parece un requisito extraño, pero cuando mira el texto todo el día, la tipografía limpia y nítida es un espectáculo (¡ja!) Para los ojos doloridos.

De lo contrario, vivo en la terminal y rara vez me voy. Excepto por Internet. Me gustan las fotos.

Para muchos lo es. La mayoría de las personas se están implementando en Linux en producción, y cuando trabajas con una Mac, es muy parecido a UNIX en la línea de comandos. (Obviamente, si está implementando Windows en producción, quédese con un entorno de todo Microsoft). Por supuesto, puede solucionar este problema instalando una VM Linux en su PC con Windows, pero una vez que comience a solucionarlo, eventualmente se dará cuenta Que estás haciendo un trabajo extra.

Otra razón es que si vas a trabajar como parte de un equipo y todos los demás en ese equipo están usando una Mac, entonces realmente no quieres ser el tipo extraño que queda afuera usando diferentes herramientas de los demás. Esto te retrasará.

Finalmente, existen las debilidades con el propio Windows: es mucho más propenso a los virus, requiere más memoria, tarda una eternidad en arrancar, etc. Pequeños inconvenientes que realmente se acumulan con el tiempo cuando usa su computadora todo el día.

Si bien muchos coinciden en que Mac es una mejor plataforma para desarrollar que la PC. No estaría de acuerdo (ya que prefiero PC sobre Mac), excepto por el hecho de que en el caso remoto necesita ejecutar un software exclusivo de Windows (Digamos: Visual Studio) puede virtualizar fácilmente Windows en una Mac usando Virtualbox o Paralells. Al revés (ejecutar un software Mac-Only en Windows) mientras sea posible, la virtualización de mac es muy complicada.

Arranque dual su sistema operativo Windows con Linux Ubuntu. ¡Es impresionante!

¡Sí, ayuda!
Pero en caso de que no pueda pagarlo, puede instalar un Ubuntu en su PC / computadora portátil.

No. Usa aquello con lo que te sientas cómodo, así eres más eficiente.

More Interesting

He progresado en HTML y CSS. Codeacademy alinea JavaScript como el siguiente, FreeCodeCamp enumera JQuery como el siguiente. ¿Cuál es el mejor siguiente paso y por qué?

¿Cómo lidian los programadores de lenguaje de script (PHP, JavaScript y Python) con el mal soporte de autocompletar en IDEs?

Estoy trabajando en un sitio porno. ¿Cómo obtengo contenido para agregar al sitio?

Acabo de leer sobre perfect.org. ¿Crees que es posible que IOS Swift también se use en la web?

¿Por qué siento la necesidad de entender todo en el desarrollo web / móvil?

Acabo de crear un .html simple y será la única página en mis servidores. ¿Cómo es que cada vez que escribo el dominio que está vinculando al proveedor de alojamiento?

Mi sitio de wordpress se ha visto afectado por un ataque de Acutenix incluso con los formularios Captcha instalados. ¿Qué tengo que hacer?

Conozco Flask bastante bien y me gusta. ¿Hay alguna razón por la que me molestaría en aprender Django?

Terminé de aprender Python como principiante, ¿qué debo hacer para mejorar mis habilidades en programación y Python?

Quiero ser competente en HTML, CSS, JavaScript y PHP. ¿Debo aprenderlos de forma secuencial o simultánea? Si es simultáneo, ¿hasta qué punto debería sumergirme en cada idioma antes de comenzar a aprender el siguiente?

Estoy escribiendo un libro titulado desarrollo web en asp.net para principiantes. ¿Qué te gustaría que contuviera? Escribir en la última versión (asp.net 5)

Estoy interesado en el desarrollo web. ¿Qué curso debo seguir: J2EE-Struts con Hibernate Framework o J2EE-Hibernate con Spring Framework? ¿Cuál es la diferencia entre los dos?

Cómo instalar MySQL en un servidor compartido usando solo FTP

Si creara una aplicación móvil o web que sirviera a más de 5 millones de personas, ¿cómo haría para diseñar una aplicación de este tipo?

Sé HTML5, CSS3, JavaScript, jQuery lo suficiente como para hacer un trabajo. Sin embargo, no me considero un experto en estas áreas. ¿Cómo puedo mejorar?