2023-04-21

Sistema Operativo para Desarrollo


Linux, MacOS o Windows, la pregunta persiste entre los desarrolladores de software. En muchos aspectos el sistema operativo de escritorio se ha vuelto un commodity (cualquiera sirve para lo mismo). 

Herramientas comunes para desarrollar software desde el escritorio, están disponibles por igual para los sistemas operativos Linux, MacOS y Windows: 
  • IDEs: Eclipse, NetBeans, Visual Studio Code, Arduino, Android Studio, etc.
  • Lenguajes: Java, Python, PHP, Kotlin, C#, Ruby, C/C++, etc.
  • Bases de Datos: PostgreSQL, SQLite, MySQL, Oracle RDBMS, etc.
Sin embargo, el desarrollo de software cada vez más se realiza utilizando herramientas desde la línea de comandos, y ahí tanto Linux como MacOS tenían la ventaja, porque BASH fue por mucho tiempo la interfaz de línea de comando (o CLI) por excelencia.

Pero además de una CLI programable, los gestores de paquetes fueron los hicieron que muchos programadores abandonaran Windows se cambiaran a Linux, por la facilidad que implica automatizar tareas de instalación y configuración de ambientes de desarrollo. Otros se cambiaron a MacOS aprovechando gestores de paquetes como MacPorts y Brew que de alguna forma igualaban a sus contrapartes en Linux.

Para Windows también surgieron algunos gestores de paquetes como Chocolatey, y Microsoft terminó creando el suyo propio: Windows Package Manager.

Pero PowerShell no es BASH, ni WinGet es el gestor de paquetes que los programadores acostumbran a usar. Ofrecer nuevas herramientas para hacer lo que se hace igual en Linux y MacOS no resolvió el problema.

La solución para Microsoft fue recurrir a un antiguo componente de Windows llamado SFU: Services for Unix, y al hecho que el kernel de Windows siempre ha soportado POSIX (desde NT), y crear algo nuevo llamado WSL: Windows Services for Linux. Nota: solo de Windows 10 en adelante.

Con WSL se ejecuta un kernel de Linux en modo usuario de Windows, de esta forma los programadores de Windows ahora pueden tener un sistema Linux completo ejecutándose al mismo tiempo. Una CLI con Bash, el mismo gestor de paquetes y todos los demás programas a los que ya están acostumbrado a usar. 

Para instalar WSL solo es necesario abrir PowerShell y ejecutar: wsl --install, con eso es suficiente para tener un Ubuntu funcionando al lado de Windows.

No hay comentarios:

Publicar un comentario