Blog Personal de Maxxcan Fox
01/09/2025

Alternativas a Rstudio

Introducción

A día de hoy, está claro que el uso de Rstudio es mayoritario en la comunidad de R, tanto en docencia como en investigación o empresas. Es un software de gran calidad, fácil de usar y que aporta muchísimo al usuario de R. Además su licencia GPL, asegura que el programa siempre sea parte de la comunidad de R y no de la empresa matriz, que es la que lo aloja actualmente.

Pero Rstudio no es perfecto. Su dependencia con Java, una librería cada vez más pesada que hace que los programas escritos usando esta tecnología cada vez sean más pesados y lentos. Por otro lado, Rstudio, está totalmente centrado en R, lo cual es bueno, pero en estadística y todo lo relacionado como el desarrollo de LLM, requiere que se use no solo R sino también Python u otros lenguajes como Clojure, Julia o C.

Sobre la posibilidad de trabajar conjuntamente con R y Python, POSIT, la empresa que aporta mucho al desarrollo de R y otras librerías asociadas, está desarrollando Positron, un nuevo editor, pero que su licencia genera más dudas que certezas acerca del futuro de este editor.

Además, tener distintas opciones acerca a la hora de usar cualquier tecnología, siempre es una buena idea, por lo que exploraremos algunas de estas opciones y como en concreto, una de ellas, supera con creces a Rstudio y a Positron.

Qué es software libre

El concepto de Software Libre, es un concepto que por desgracia muchas personas siguen desconociendo, pero a día de hoy es de vital importancia en el mundo que nos rodea ya que la mayor parte del software que usamos día a día está desarrollado con esa licencia. Pero esa licencia no solo es una forma o manera de identificar un software específico, sino que tiene una serie de implicaciones prácticas y morales, la moralidad también es una práctica, pero bueno, que influye totalmente tanto en las características del software que usamos como de su viabilidad actual y futura.

Qué es Software Libre

El software libre es una serie de licencias, obligaciones que tiene un software al distribuirse que tienen que tener las siguientes garantías o libertades:

  • La libertad de ejecutar el programa como se desee, con cualquier propósito (libertad 0).
  • La libertad de estudiar cómo funciona el programa, y cambiarlo para que haga lo que se desee (libertad 1). El acceso al código fuente es una condición necesaria para ello.
  • La libertad de redistribuir copias para ayudar a otros (libertad 2).
  • La libertad de distribuir copias de sus versiones modificadas a terceros (libertad 3). Esto le permite ofrecer a toda la comunidad la oportunidad de beneficiarse de las modificaciones. El acceso al código fuente es una condición necesaria para ello.

Qué no es software libre

El software libre, no es software gratuito. Esto en sus comienzos y sobre todo en EE.UU, que es el país originario del que desarrollo este movimiento daba mucha confusión, ya que en inglés el software libre es Free Software, y tenía que explicar que el Free no era de Free Beer sino de Freedom. Finalmente, como esta persona llamada Ricard Stallman, y va camino a ser de esas personas que solo se le reconocerá todo lo que ha aportado a la sociedad dentro de cien años después de su muerte, decidió, ya que sabe español, oficialmente hablar de Libre Software, ya que en español no hay la confusión que sí existe en inglés con la palabra "free".

Open Source vs Libre Software

La licencia de Software Libre, no solo es algo legal o ético, sino que impulsó una forma de trabajar y colaborar en el mundo del software totalmente distinta. De que el desarrollo, se haga por unas pocas personas en una empresa, y finalmente se ofrece al usuario un producto final, con un precio cerrado, se pasa a que muchas personas terminan colaborando en el desarrollo de programas que realmente nunca están terminados, pero que evolucionan y mejoran a una velocidad que le es totalmente imposible para el modelo privativo. Este modelo lo explica muy bien Eric Raymon en su ensayo llamado, El bazar y la catedral.

El asunto es que a raíz de cierto momento las grandes empresas observaron este movimiento, y como personas individuales eran capaces de generar software de gran calidad sin una gran infraestructura de trabajo y además y lo más importante, GRATIS.

Así crearon una serie de licencias libres "fake" donde cogen la parte de las tres primeras libertades del Software Libre, pero obvian la última, que es la obligación de entregar el software modificado. Así se aprovechan del trabajo de la comunidad y en cualquier momento, cierran el código, y lo venden o lo utilizan para sus fines propios sin devolver a la comunidad lo que ésta ha hecho por ellos.

Redflags del open source

La forma de desligitimar una idea, movimiento, reivindicación o lo que sea es tan vieja como la propia humanidad y es sencillo saber cuando se está haciendo por parte de un movimiento contrario simplemente si aparecen algunas de estas redflags:

  • Asociar el movimiento que se quiere atacar con algo radical, fanático y/o alejado de la realidad
  • Vincular ese movimiento a otros movimientos o personas que claramente sí son radicales, fanáticos o alejados de la realidad
  • Desligitimar a una persona o grupo de personas que hayan sido las cabezas visibles de ese movimiento en algún momento. Esto se hace con algunas de estas maneras:
    • Ridiculizando a esa persona o grupo de personas
    • Deshumanizando a esa persona o grupo de personas para que el ataque hacia ellos nos resulte indiferente
    • Acusándolos o relacionándolo con algún delito ignominioso, muchas veces relacionado con delitos sexuales y/o hacia menores de edad
  • Abrazando al movimiento contrario, comenzando con apoyarlo pero finalmente desdibujandolo y que nos sea imposible distinguir un movimiento del otro, aunque finalmente terminará imponiéndose el movimiento atacante.

Acerca de Rstudio

RStudio es un entorno de desarrollo integrado (IDE) para el lenguaje de programación R, dedicado a la computación estadística y gráficos. Incluye una consola, editor de sintaxis que apoya la ejecución de código, así como herramientas para el trazado, la depuración y la gestión del espacio de trabajo.

RStudio soporta análisis reproducibles con documentos explicativos con R Markdown. Estos permiten a los usuarios mezclar texto con código en R, Python, Julia, scripts de shell, SQL, Stan, JavaScript, C, C++, Fortran y otros, similar a los Jupyter Notebooks.

Como he comentado Rstudio es un gran software y como es software libre, siempre está en continua evolución. Aún así tiene algunos problemas asociados que vienen de cómo está desarrollado y/o por decisiones a la hora de crearlo.

Problemas de Rstudio

El mayor problema que tiene Rstudio es que está escrito en el lenguaje de programación Java.

Java es un lenguaje que por mucho tiempo, fue el lenguaje preferido de la industria, y en muchos ámbitos sigue siendo por su potencia, avanzada tecnología y sobretodo su facilidad de ser multiplataforma. Pero a su vez tiene grandes problemas que está haciendo que otros lenguajes empiecen a sustituirlo. Veamos:

  • Es un lenguaje con una sintáxis compleja y algo obtusa.
  • Es un lenguaje que requiere de una capacidad de hardware elevada para que funcione bien.
  • Su dualidad con su licencia, teniendo una basada en Software Libre y otra privativa, hace que virtualmente hayan como dos versiones incompatibles de Java y puede llegar a confundir a los desarrolladores y no usarlo óptimamente.
  • Su multiplataforma depende de que Java se compila para una máquina virtual que es que hay que instalar además del programa. Esto añade una capa de complejidad, que hace que los programas escritos con este lenguaje ocupen mucho más espacio y requieren mucho más hardware.

Otros problemas que tiene Rstudio es.

  • Aunque es posible, quitando R y Python, es difícil que use otros lenguajes.
  • Es un software poco modular y por lo tanto difícil de ampliar, extender y colaborar con otras tecnologías.
  • Por lo dicho, de estar programado en Java, es un software lento y que requiere de un hardware más potente.
  • Ocupa bastante espacio
  • Es feo por ser Java, y el uso de temas tampoco hace milagros. (Sí, esto es completamente subjetivo. 😀)

Acerca de Positron

No voy a hablar mucho de Positrón porque no he podido en la actualidad trabajar mucho con él, pero sin usarlo demasiado le veo dos problemas bastante importantes.

Basado en Visual Studio Code

Positron está basado directamente en Visual Studio Code. Tanto es así, que en sus Preguntas Frecuentes, una de ellas es por qué crear un nuevo editor en vez de usar extensiones para Visual Studio Code.

El mayor problema de esto es que hay que recordar que Visual Studio Code, que a su vez viene de Atom, son editores que usan la tecnología V8 de Chrome. Esto quiere decir que usan el motor de un navegador web para hacer un editor. Esto, que puede parecer a día de hoy una solución normal, es añadir una nueva capa de complejidad, tanto en cuánto ocupa el programa, como en los recursos de hardware que requiere que no tiene sentido.

Además, aunque Positron empezó como una serie de extensiones para Visual Code Studio, crear nuevas extensiones, que se hacen en javascript (y no hacerme hablar de ese lenguaje del demonio), es un proceso bastante tedioso y complicado.

Acerca, de la necesidad de que todo el software que se desarrollo, sobretodo si es para labores tan importantes como docencia o desarrollo, sea lo más pequeño, efectivo y liviano a la hora de los recursos de hardware, os invito a que leáis mi libro.

La licencia de software de Positron

Lo que inicialmente me hizo echarme atrás Positron, fue realmente su licencia, no tanto su tecnología.

Positron usa una licencia distinta a la de Rstudio, que es GPL, es decir software libre, la cual es una auténtica trampa.

Como he comentado en la parte de las licencias la empresa Posit, está usando el éxito de Rstudio y cómo éste tiene la licencia GPL, todas las mejoras que tanto esa empresa como la comunidad, deben recaer de nuevo en la comunidad.

Pera a partir de cierto momento, todo lo que ha creado esta empresa usa las licencias libres "fake", principalmente la licencia MIT, que como ya expliqué, permite cerrar el software en cualquier momento, a pesar de que sea la comunidad la principal desarrolladora.

Pero con Positron, han dado un paso más allá. y no contentos con usar una licencia "Open Source", trampa, han decidido crear la suya propia con sus casinos y esas cosas. Esta licencia, hecha específicamente para el beneficio de Posit y sus necesidades, ni siquiera es compatible con otras licencias de software libre o incluso open source.

Y no solo es un tema de código. El ligar Rstudio, que es una magnífica herramienta, aunque como digo, gracias a su comunidad, a esta empresa también le da una muy buena imagen que cara a los usuarios, menos conocedores o preocupados por estos asuntos de licencias, y da la sensación que todo producto que realicen va a ser igual de bueno o más que Rstudio y además que seguirán apoyando de igual manera a su comunidad, pero ya aclarado que este apoyo, fue obligado por la licencia GPL de Rstudio, pero no tiene, y seguramente no será igual con Positron.

Para más información acerca de la licencia de Positron llamada Elastic Licese 2.0, podéis consultarla en su página web.

Otras alternativas

Vivimos en un momento muy difícil para la especie humana y enfrentamos graves problemas que están poniendo directamente en jaque la propia viabilidad de la especie en la tierra. La ciencia, entre otras cosas, tiene un gran papel para ayudar a esta situación, tanto buscando soluciones a los problemas actuales como mejorando mucho la divulgación acerca de estos problemas y la obligación de solucionarlos.

El por qué cuento todo esto, es por dos motivos. Cuando hablo que tanto Rstudio, como Positron, u otras alternativas son software muy pesados, y que requieren mucha memoria, a ciertas personas les parecerá que un programa ocupe unos 500 megas de memoria física y/o requiera unos 8 Megas de memoria RAM, les puede parecer poca cosa.

El asunto es que por desgracia, a día de hoy, la mayor parte del software que se desarrolla lo hacen programadores del primer mundo, principalmente EE.UU, y hay que recordar que somos países ricos. En cualquier otro país, un ordenador como el que he comentado es un lujo inalcanzable.

El hecho de que está demostrado que a día de hoy para la ciencia es imprescindible tener buenas herramientas, y el software es una herramienta fundamental, mientras más personas puedan participar en el desarrollo científico será mucho mejor para toda la humanidad.

Así que las opciones que voy a proponer tienen dos características principales.

  • Son Software Libre, real y completo, sin trampas ni cartón.
  • Son programas que ocupan muy poco espacio y pueden funcionar con ordenadores incluso de hace 15 años, dejando claro que 15 años para los países ricos pueden ser perfectamente los ordenadores actuales para la mayoría del resto de países.

R commander

R commander, tengo que decir que le guardo un cariño especial, ya que fue el primer acercamiento a R desde una interfaz gráfica y fuera de la línea de comando. Aún así, requiere mucho del manejo de ésta, aunque con el tiempo, hemos aprendido que el manejo de la línea de comando más que un problema es una ventaja fundamental para cualquier científico o técnico que se precie.

Así R commander, aunque está claramente limitado al lenguaje R ya que usa un lenguaje de scripting llamado tcl y una extensión para crear interfaces gráficas llamado tk, ahorra mucho tiempo ya que muchas de las funciones estadísticas que hay en R y son de uso muy común están automatizadas con los scripts de tcl y son fácilmente ejecutables usando botones y otros elementos de interfaz gráfica gracias a tk.

Por supuesto, aún así, requiere buenos conocimientos de R y además es bueno saber qué hace realmente cada parte de R commander, es decir, cada script.

Pero como digo, si tienes unos conocimientos básicos de R y vas a usar R para análisis estadísticos básicos y estándares pues con R commander sobra y además como digo es muy liviano.

Nvim

Emacs

Conclusión

Categoría: rstudio emacs vim r programming
RSS
Creative Commons License
Maxxcan.com by Maxxcan Fox is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
Si quieres contactar conmigo puedes hacerlo a través de mi correo maxxcan@disroot.org