Bienvenidos a e-Bastón Blanco, un blog que os ofrece la ayuda que necesitáis para desenvolveros en el mundo digital. Me llamo Javier, tengo retinosis pigmentaria y soy ingeniero informático. Mi resto visual es prácticamente nulo, y utilizo el PC con el lector de pantalla abierto y gratuito NVDA.
Como entrada inaugural para este proyecto personal, me gustaría dejaros unos cuantos consejos a aquellos que, en mi misma situación, queráis acercaros al mundo del desarrollo software. Ya me hubiera gustado encontrar algo así a mí hace más de diez años, cuando empecé mi pequeña aventura entre ceros y unos. Espero que os sirva para aterrizar de forma más suave que yo.
Mi experiencia
Antes de nada, os cuento un poco mi experiencia. Empecé a programar con unos quince años, cuando todavía iba a secundaria. Por aquel entonces, todavía tenía resto visual. Mi primera aproximación fue el lenguaje de programación Pascal. Nos lo enseñaron en clase de tecnología y yo, un chaval con afición por los videojuegos y bastante creatividad, empecé a estudiar por mi cuenta para hacer las cosas a las que me gustaba jugar. Claro, que enseguida me di cuenta de que no era tan fácil como había pensado. Pero me sirvió para saber que aquella era una actividad que me gustaba y se me daba bastante bien.
A los dieciocho empecé la universidad. Allí me reencontré con mi viejo amigo Pascal, aunque mis ojos ya no tenían la agudeza de antaño. Había empezado a utilizar el lector de pantalla Jaws, pero el entorno de desarrollo de Free Pascal en Turbo Visión no era del todo accesible. Aun así, me manejaba. Los problemas de verdad vinieron con Java y otros lenguajes, para los que había mil y un IDEs. Por aquel entonces, apenas empezaba a controlar el ordenador por teclado y lector, así que me resultaba muy complicado acostumbrarme a cada nueva interfaz, muchas de ellas inaccesibles. Así pues, la primera solución que hallé fue utilizar el bloc de notas, Notepad++ después, y compilar mis programas por consola de comandos.
Era un engorro y tardaba mucho más que mis compañeros. No obstante, creo que tuvo algo bueno. Aprendí a realizar todo el proceso de manera manual. Buscaba siempre tener los menores errores posibles para no tener que repetir el proceso. Me acostumbré a leer con cuidado la documentación en vez de dejarme ayudar por el asistente de autocompletado del editor. Poco a poco, descubrí que había herramientas, como Make, que me ayudaban a automatizar el proceso. Refinaba mi flujo de trabajo y cada vez me encontraba más cómodo.
Entonces empecé a descubrir IDEs accesibles. Eclipse fue mi compañero durante muchísimos años. Me encantaba la versatilidad que tenía, aunque es verdad que la integración dependía mucho del plugin de turno que tuviera que utilizar. Posteriormente, tuve que apañármelas con Android Studio y Visual Studio por motivos del guion. Poco a poco, parecía que las herramientas se adaptaban cada vez más a mis necesidades. Sin duda, al echar la vista atrás, creo que hoy vivimos en un mundo mucho más preparado para un desarrollador ciego que hace apenas diez años.
Los entornos que recomiendo
Obviamente, todo depende del caso concreto. Sin embargo, en términos generales, creo que Windows 10 + NVDA + Visual Studio Code son, hasta ahora, la opción más accesible que he encontrado. VS Code es un entorno moderno y adaptable a muchas necesidades de desarrollo. Es gratis, personalizable y muy ligero, superando en mucho a otros rivales en cuanto a tiempos de carga se refiere. Lo mejor es que prestan bastante atención a los aspectos relacionados con la accesibilidad. Sin ir más lejos, en la última versión liberada el mes pasado, se ha mejorado de forma notable la accesibilidad de varios componentes de la interfaz con el lector de pantalla.
¿Podemos usar VS Code en otros entornos? Actualmente, la accesibilidad en Linux está soportada sólo en la beta y no puedo deciros qué tal funciona. Aun así, Orca me parece un lector de pantalla inferior en prestaciones a NVDA o Jaws. Por otra parte, he podido probar VS Code en MacOS. Vaya por delante que nunca he sido un usuario de la manzana y que mi experiencia es limitada. Aun así, VoiceOver me ha parecido mucho más engorroso de usar que las alternativas que encontramos en Windows. Además, tuve problemas con el foco y algunos elementos emergentes de VS Code, motivo por el que pedí a mis jefes que me proporcionaran un PC con Windows para trabajar. De hecho, la configuración que os menciono es la que se recomienda en la documentación oficial de VS Code.
Eclipse sigue siendo una buena opción. Aunque es más pesado y se siente menos moderno que VS Code, en desarrollo para Java ofrece un soporte ligeramente mejor. Lo he probado tanto en Windows como en Linux, y en ambos sistemas me ha dado buenos resultados. En cambio, en MacOs apenas logré hacer nada. Por lo que he visto en internet, el soporte de la accesibilidad en este sistema de Eclipse es muy pobre.
También para Java, IntelliJ es una buena opción. Podéis encontrarlo gratuito para proyectos de Android y aplicaciones de escritorio. Android Studio está basado en él, así que también podéis utilizarlo. Para aplicaciones empresariales con servidores, hay que utilizar la versión de pago, pero podéis obtener una licencia gratuita si estáis en periodo educativo. Con la última versión de NVDA parece que se ha terminado la pesadilla con el Java Access Bridge y podemos utilizar los programas de Java en 64 bits sin problemas.
Por supuesto, si vais a trabajar con tecnologías .Net, Visual Studio es vuestro amigo. Podéis descargaros la versión Community de manera gratuita. No he llegado a desarrollar mucho con él. pero no me he topado con problemas de accesibilidad bloqueantes.
Y si lo que queréis es desarrollar para los sistemas de la manzana, tampoco tenéis muchas alternativas. MacOS y XCode son la única opción. No es una opción mala, al contrario. El entorno es perfectamente accesible, al menos para los usuarios que sepan utilizar las funciones más avanzadas de VoiceOver. Como ya he dicho, personalmente no me gusta. Estoy demasiado hecho al esquema de navegación que ofrecen el resto de sistemas. Pero lo he usado y he podido desarrollar con más o menos comodidad.
Esto es todo por hoy. Espero que este repaso a los principales entornos de desarrollo os sea útil. ¡Nos vemos en la próxima entrada!
Deja una respuesta