Me van a caer críticas por doquier, pero aquí tenéis a un fan absoluto de emacs. Nunca pude con vi, pero eso al final da igual: cualquiera de los dos es un ejemplo de eficiencia y versatilidad, y parece absurdo hasta dónde hemos llegado en el segmento de los editores de texto.
De hecho un reciente análisis del comportamiento de estos editores demuestra que vi, un editor creado hace más de 40 años, es mucho más eficiente que el todopoderoso Atom, uno de los editores de texto más populares entre usuarios y desarrolladores. Es bonito y potente, cierto, pero tiene un problema: su glotonería de recursos es preocupante.
Lucha de editores de texto
Hay toda una subcultura en el segmento de los editores de texto, y esa afición nuestra de discutir por todo y todos ha convertido a esta en una de las batallas software más encarnizadas de la historia.
Ya no es solo vi vs emacs, ahora es vi & emacs contra todos los demás, porque estos editores creados en los (¿buenos y?) viejos tiempos siguen mostrando cómo funcionaba antes la informática y como lo hace ahora.
Un desarrollador lo demostraba con Vim ("Vi improved"), la versión mejorada de este editor que apareció por primera vez en 1991 para mi adorado Commodore Amiga —fui usuario y defensor a ultranza de dichas máquinas durante casi una década—. Vim es un gran editor, pero su validez o popularidad se ha ido degradando ante la aparición de editores de texto cada vez más llamativos y más atractivos.
Las pruebas lo demuestran: vim es mucho más eficiente
Sublime Text, Code o el célebre Atom se han convertido en los nuevos referentes de los desarrolladores de las nuevas generaciones, pero un análisis de algo tan simple como su uso de recursos demuestra que estas aplicaciones modernas son de todo menos eficientes. Al comparar cuánta memoria necesitaban para abrir un simple programa en C de 60 bytes la respuesta era asombrosa:
(Visual Studio) Code necesita 349 Mbytes de memoria para abrir ese fichero, por los 256 Mbytes de Atom. Vim necesita 5 Mbytes, que no es tampoco poca cosa, mientras que GNU nano, otro de los editores clásicos de entornos Linux, usaba algo menos de 1 Mbyte.
Este desarrollador repetía la prueba con un fichero mucho mayor: un XML de 6 Mbytes, y de nuevo los editores modernos mostraban cómo se las gastan. O más bien, cómo gastan memoria, porque Atom necesitaba la friolera de 845 Mbytes de memoria para abrirlo por 392 de Code o los 12 Mbytes de Vim. En ambos casos Sublime Text se comportaba de forma bastante más comedida.
En esa misma comparación se evaluó el tiempo necesario para abrir el fichero y mover el cursos hasta el final de ese XML gigante. Sublime Text fue casi el más rápido (bien por este desarrollo), mientras que Atom y Code tardaron 20 segundos en dejarnos empezar a hacer algo.
Al hacer una búsqueda y sustitución de una palabra que se repetía 100.000 veces en ese fichero, más de lo mismo: Atom se colgó varias veces, Code tardó 80 segundos, Sublime 6 y Vim solo 4. La sorpresa negativa fue para nano, que tardó 10 minutos en acabar con la tarea.
La culpa la tiene Electron
¿Cuál es la razón de esa falta de eficiencia de Code o de Atom? Una muy sencilla: mientras que Sublime Text está desarrollado de forma nativa, tanto Atom como Microsoft Visual Studio Code se basan en el uso de Electron, una plataforma que hace uso de Node.js para el backend y del navegador Chromium para el frontend.
Aunque la plataforma ofrece una potente infraestructura para que ciertos clientes y aplicaciones tengan una interfaz y unas opciones muy interesantes, también impone unos requisitos enormes a la hora de funcionar. Es cierto que la situación puede haber mejorado un poco tras el salto a Electron 2.0, más rápido y estable, pero aún así ese consumo de recursos sigue siendo demasiado elevado.
No solo Atom o Visual Studio Code utilizan Electron, y hay otros casos famosos como los de Slack o Spotify que han sido criticados por el enorme consumo de recursos que tienen. Bien por las opciones, desde luego, pero si queréis eficiencia en vuestro editor de texto, ya sabéis: nada como vim... o emacs, que seguramente hubiera obtenido resultados similares a este último.
En Xataka | Así es usar la consola Bash de Ubuntu en Windows 10
Ver 80 comentarios
80 comentarios
imf017
Notepad++ y punto. No es tan tosco como los editores de los años 70 ni tan cargado de opciones como Atom. Ahora mismo tengo abiertos 7 ficheros y sólo gasta 9,4 megas.
Goemon
Pues las críticas no te van a caer por donde pensabas, sino por lo mismo de siempre, titular explosivo, lees el artículo y pasa a titular tendencioso, lo que cuentas importa mas bien poco hoy en día y con los recursos que hay, que un editor que hace muchas mas cosas que con los que comparas de hace 40 años consuma mas RAM (¿desproporcionada?, por supuesto), cosa mas que comentada durante décadas y que todo el mundo vive con resignación y como te digo con despreocupación casi total, no merece un artículo como este y menos con ese titular... pero bueno, de algo hay que escribir y que resulte llamativo.
oriolrilo
Javier, hablas en primera persona pero es evidente que no programas (HTML no es un lenguaje de programación), o al menos no en un entorno profesional.
Nadie en 2017 va a preferir un editor/IDE u otro en función de su consumo de memoria o por los segundos que tarden en reemplazar 100.000 instancias de una palabra (¿en serio?). En lugar de eso, se busca que sean entornos que faciliten un desarrollo ágil: refactoring, VCS, shortcuts, etc.
fabian1945
Ahora midamos la cantidad de tiempo que te toma escribir código en uno vs el otro. la cantidad de errores que se cometen, y el tiempo que se ahorra con las demás funciones integradas como git, linter, debugger acceso a bases de datos y etc. De que me sirve que el editor abra el archivo 20ms mas rápido y consuma una decena de mb de ram menos si al final voy a gastar mas tiempo codeando y depurando.
tony.fernandez.7568
Esta claro que los programas actuales son más pesados que nunca, así funciona el progreso. Salen programas que pesan más , que tú máquina actual no puede mover , y todo el mundo en masa los compra. Te llega un archivo de ese formato y no puedes abrirlo. Conclusión lo compras y tu máquina las pasa canutas para moverlo. Conclusión compras otra más potente.
Todo empezó con "nueva versión de programa X", con funciones alucinantes que nadie sabe utilizar ni las ha necesitado nunca pero que "vendrán muy bien". Las empiezan compran en masa y los usuarios de a pie nos toca actualizar todo.
Yo todavía considero el WordPerfect 5.1 el mejor editor de textos jamás creado. Los documentos de 500 páginas se abrían instantáneamente y pesaban menos de 5 megas. Ahora, sin imágenes, mínimo 20-30 megas en Word y comprimido. Ya no digo nada si lo guardo el rtf: 200 a 300 mb.
Esa es la esclavitud del siglo XXI. MANDAMOS AL CAJÓN COSAS Y PROGRAMAS QUE FUNCIONAN A LA PERFECCIÓN SOLO POR TENER LOS ÚLTIMOS Y "NO MEJORES" NOVEDADES QUE SALEN. LA RAZÓN: SIMPLEMENTE POR CAMBIAR, POR ABURRIMIENTO O POR QUE EL MUNDO NOS OBLIGA A HACERLO PARA PODER SEGUIRLO.
Mr. John Doe
¿Y te quejas de memoria usando Ubuntu? deberías utilizar Windows 98, en lugar de Spotify tienes Winamp, que aun sirven las estaciones de radio y el correo, Twitter e Instagram en lugar de malgastar espacio en disco y memoria ram con aplicaciones, deberías abrirlo desde el navegador, Internet Explorer 5 o 6 por supuesto, que esos son super ligeros, seguramente no sean compatibles e inseguros, pero te abren como un tiro. :V
leyendlink
Sublime Text, me parece el mejor, puedes trabajar con grandes proyectos, indexa un gran numero de archivos por que navegar entre el mar de documentos es bastante rapido, lo mismo para buscar funciones y clases(muy rapido encuentro lo que busco), sin mencionar plugins. La verdad para proyectos que no sean Java o . net(C/C++, php, python, javascript), para mi sublime es lo mejor, lastima que cueste 80 dolares.
antoniocaneloni
Yo me di cuenta de eso cuando vi el deluxe paint ii en el flamante nuevo pc de un amigo. El programa estaba muy bien, pero yo me acordaba del Art Studio de Spectrum que con 40K escasas hacía casi lo mismo. El pc de mi colega tenía 8 megas de ram.
De vez en cuando visito páginas de emuladores de spectrum on line y recuerdo toda esa miriada de títulos y en algunos, el nivel de programación era tan, tan alto que sólo se me ocurre la palabra "arte" para definirlos. Lástima que entonces no nos diéramos cuenta de aquello.
rober2393
Pensé que el "editor de texto que machacaba a los demás" era Word.
sam_awara
Aquí hay un error desde el título. Editor de texto es otra cosa, el artículo hace referencia a "editores de código" . Por favor eviten confundir a los lectores.
Yo particularmente uso y recomiendo Brackets.
winuxue
q versión/sabor de ubuntu es esa? se ve interesante!
clintkurosawa
A mi la verdad me importa bien poco que Atom consuma más recursos que Vim en comparación con las prestaciones que me ofrece lo uno y lo otro. Cualquier ordenador actual medianamente potente puede ejecutar al mismo tiempo Atom, Notepad++, Sublime Text, Expresso, Visual Studio, Eclipse, IntelliJ IDEA, Xcode, Brackets, Coda, UltraEdit y hasta el maldito Dreamweaver si nos da la gana. Si es que a veces parece que tenemos más ganas de discutir que uno de la CUP y uno del PP XD
germánhernández
"Me van a caer criticas"
Pues no. Al igual que tú, apoyo el uso de VI (VIM en mi caso). Nunca he probado emacs, asi que no puedo dar opinión sobre el, pero aquella persona que domine los comandos básicos y atajos de VI, muy difícilmente le va a gustar otro editor de texto.
Saludos.
sarpullido
Soy usuario de emacs, pero he trabajado en casi todos los editores normalmente obligado por circunstancias externas que no tienen nada que ver con la edicion (temas de empresa por ejemplo).
La diferencia entre emacs y el resto es que al principio cuesta horrores recordar los shortcuts de teclado, pero poco a poco te vas haciendo, y al final es como si tu cerebro estuviese directamente conectado a la pantalla.
Tus manos no tienen que moverse de la posicion estandar del teclado, ni tienes que usar las cursoras, ni tienes que ir al raton, ni tienes que usar el teclado numerico..., ni tienes que cambiar de ficheros, ni tienes que salir al shell , ni, ni, ni....
El resultado es que sin darte cuenta estas procesando texto a una velocidad tan demencial que cuando te paras a pensar te das cuenta que es una atrocidad...
Luego vas a ver trabajar a algun compañero y te da ganas de arrancarte los ojos de ver la forma tan horrible que tienen de trabajar, en una hora de trabajo pierden 45 minutos, los ves yendo de un lado para otro, dando saltos, haciendo mil cosas a mano que son automaticas en emacs, y sinceramente te desesperas hasta limites insospechados.
Creo que el uso de emacs y vim deberia formar parte de asignaturas del grado de informatica, por que de otra forma estan usando herramientas que no tocan..., es como verles aflojar tornillos con un cortauñas...
Por otra parte tambien habria que analizar la edicion remota, y las ventajas que tienen tambien emacs y vim al respecto.
En definitiva, para mi no existe otro editor que no sea emacs, que por cierto, es el campeon indiscutible en todas las competiciones de hacer cualquier trabajo de edicion en las minimas pulsaciones posibles..., siempre, siempre, siempre sale ganador, y segundo normalmente vim.
Para los que no lo han usado nunca pero quieren cambiar su vida a mejor..., os recomiendo el siguiente tutorial:
https://www.youtube.com/playlist?list=PLxj9UAX4Em-IiOfvF2Qs742LxEK4owSkr
Usuario desactivado
la culpa no es de electrón, la culpa es de que un editor hace muchas más cosas que otro.
si te resalta la sintaxis o te parsea el fichero detectando errores es normal que tarde más y consuma más que si simplemente te decodifica los bytes en forma de caracteres ASCII.
es como si comparas el consumo de batería de tu teléfono fijo con el de tu smartphone, nos ha jodido que el fijo es más eficiente, y si usas uno de rueda ya ni te cuento...
el debate podría ser interesante si se plantease bien, pero centrar el debate en la "eficiencia" de forma exclusiva solo puede calificarse de absurdo.
lrayze
Una cosa es usar un programita de edición de texto para crear un artículo como éste, otra cosa es requerir usar un entorno de desarrollo profesional (IDE) para desarrollar software (sitios web, aplicaciones de escritorio y móviles, etc.). No se pueda comparar el escribir solo texto contra la creación de todo un proyecto de software: manejo de todos los archivos, librerías y otros recursos como imágenes o videos, debugging, levantamiento de un servidor, uso de plugins, pruebas, integración con Github, etc. Los IDEs son grandes y pesados justamente por todas las herramientas y funcionalidades que le aportan al desarrollador de software para hacer más eficiente su trabajo.
rebootedc
EditPlus, jEdit o Notepad++
Y a falta de ellos, el EDLIN del DOS.
elav
Mira mamá, puedo comentar usando mi cuenta de Twitter pero no la de Facebook..
Bueno, al lío. Otro que no se menciona, que también consume lo suyo pero es buenísimo para trabajo de Front-End es Brackets. Eso de poder editar directamente las propiedades CSS de una etiqueta, no tiene precio.
mamptecnocrata
yo tengo en alta estima a Sublime por dos cosas, que los demás lo hacen, pero no usan Electron: permite cambiar la interfaz a algo no tan dark como el negro ni tan incandescente como el blanco; y permiten colorear el texto cuando se usan ciertas palabras clave de determinados lenguajes de programación o maquetado. Capaz vi y emacs lo hacen pero no he tomado el tiempo para estudiar cómo se hace.
guilloar
Perdón por la pregunta off-topic, pero que entorno de escritorio, tema e iconos usas?
memd24
La solucion?
R. Metele mas RAM a tu PC
dariorodt
¡Perdón! pero los gráficos demuestran que el más eficiente es Sublime Text... Siempre cerca de Vim y Nano en eficiencia, pero a años luz en características...
deseiken
Esta muy bien que otros editores consuman poco, pero al final del dia lo que quieres es funcionalidad y depues de probar varios editores Atom esta a otro nivel. No me imagino volver atras usando sublime u otros.
Luis
No me importa que lo abra muy rapido, no me importa que ocupe poco en ram si luego no cumple su cometido, por eso vs code está pegando fuerte, hace lo que necesitas.
petote
Buuuuu.
Los editores de texto y los IDEs son para caguetas. Los programadores de verdad usan martillo y cincel.
Usuario desactivado
¿desde cuando es mas eficiente que una aplicacion utilice menos RAM?
¿para que la has comprado? ¿para que este en desuso? ¿para que tarde mas buscando cosas en el disco o sin buscarlas porque no estan? ¿para que tengas 80 apps cargadas a las que cambias cada 5s? ¿gestionas a mano el uso de memoria virtual, fisica, caches...?
Emacs es un excelente sistema, pero no porque consuma menos recursos.
zerazobz
Este artículo es un chiste, estan dando a entender que el mejor se saca midiendo velocidad.
De que te sirve que tu coche vaya de 0 - 200 en 0.8 seg si te vas a estrellar con la primera pared que encuentres, no vas a poder hacer curvas, etc
Si vamos a buscar al mejor editor de texto a este se le debe de analizar según muchos factores:
-Velocidad de apertura
-Capacidad de búsqueda
-Capacidad de manipulación
-Capacidad de refactor
-Organización de archivos, folder
-Integración con otros plugins
-etc
No he usado Code el cuál me parece una versión reducidad de Visual Studio porque considerar a Visual Studio como un editor de texto no estaría bien cuando es más un IDE.
Si hablamos de solo editores de texto para mi el ganador y por un bastante margen es Sublime Text.
d0lapevich
Vi está disponible predeterminadamente en *TODOS* los unixes y Linuxes que he usado desde el 95 en adelante. Y puede hacer *TODO* lo que hacen los otros. Es gratuito, abierto y estable.
No entiendo bien que estamos discutiendo acá.
wwallace
Articulo fácil, barato, sensacionalista, que demuestra nada e interesa cero.
Por esa regla de tres porque decir que el Word97 es mejor que el actual?.
Espabilar a hacer cosas interesantes, porque entre los refritos de otraa webs y basuras como esta os estais luciendo