Entradas de marzo de 2023
BRIEF, el Visual Studio de los ochenta

En un anuncio de la archiconocida revista BYTE aparecido en el número de agosto de 1985 se podía leer algo así como «¡Avance en la edición de programas! Logra un 20 % más de productividad». El llamativo reclamo era por cuenta del software conocido como BRIEF —acrónimo de Basic Reconfigurable Interactive Editing Facility—, un editor de texto para programadores que se hizo muy popular en la década de los ochenta y principios de los noventa. Fue un programa muy adelantado para su tiempo, pues incluía, entre otras características, edición mediante el uso de ventanas WYSIWYG, gestión de expresiones regulares o un potente lenguaje de macros.
Lanzado originalmente (por 195 $) para el MS-DOS de Microsoft y, después, para IBM OS/2 y Microsoft Windows, BRIEF fue diseñado y desarrollado por UnderWare Inc., una compañía fundada en Providence, Rhode Island (EE UU), por David Nanian y Michael Strickman, y publicado por Solution Systems en 1985. En 1990, y visto el éxito que recabó, la compañía contrató a Eric Perkins para desarrollar la versión OS/2 y la de Windows lo más rápido posible. En sólo seis meses, el equipo formado por el propio Perkins y por Blake Nelson y Jeff Simpson, trabajando en estrecha colaboración con los desarrolladores originales, consiguió llevar BRIEF a esas dos plataformas utilizando una arquitectura MVC. Fue precisamente esta versión la que se mostró en la COMDEX de Las Vegas de 1991, algo que impactó de tal manera a la gente de Borland que, posteriormente, la compañía tejana compraría BRIEF y el conjunto completo de herramientas de software de Solutions Systems.

En una época en que la memoria RAM y otros recursos eran escasos, BRIEF se convirtió en una herramienta muy poderosa. Podía editar programas de cualquier tamaño, ofrecer múltiples niveles de deshacer/rehacer, gestionar varios archivos al mismo tiempo y hacerlos visibles en diferentes ventanas.
Disponía, como ya hemos dicho, de un lenguaje de macros similar a LISP y otro inspirado en C, teclado completamente configurable, edición de plantillas y sangría inteligente, tamaño de archivos sólo restringido por el espacio en disco, depurador y compilador interno con soporte para todos los principales compiladores del momento, almacenamiento en caché EMS para todos los archivos y macros, soporte para ratón, operaciones de edición completas y búsqueda y reemplazo de expresiones regulares, entre otras muchas singularidades.

Lo que quizá más llamaba la atención era aquel completo lenguaje de macros, como decíamos inicialmente basado en LISP y luego usando una sintaxis similar a C. Y es que, además, muchas de las funciones propias del editor usaban dichas macros, lo que permitía a los usuarios personalizar los flujos de trabajo existentes a su voluntad, algo similar al actual Sublime Text.
Más de treinta años después, BRIEF sigue vivo y muy vigente en SourceForge por medio del llamado GRIEF, un clon en modo consola para plataformas Unix, Windows y Mac. También en la web de Brief Editor y a través del proyecto CRiSP, un producto comercial en este caso.
Manual de desarrollo en MicroPython para la placa BBC micro:bit

El autor de este humilde blog se complace en presentarles su libro ‘Manual de desarrollo en MicroPython para la placa BBC micro:bit‘, una obra de consulta y aprendizaje ideal para todos aquellos que se quieran iniciar o deseen profundizar en la programación de tarjetas micro:bit en lenguaje MicroPython.
La placa o tarjeta micro:bit es un sistema de hardware integrado, de código abierto, basado en la arquitectura informática ARM y diseñado por la BBC británica con un objetivo eminentemente educacional. Es una computadora de bolsillo que te introducirá en el mundo del desarrollo informático, interactuando de manera conjunta con el software y el hardware.
Python es un lenguaje de programación interpretado simple, de propósito general y orientado a objetos. Además, es también de código abierto. Por su lado, MicroPython es una implementación ágil y eficiente de Python 3.0 —su última versión mayor, por el momento— que incluye un pequeño subconjunto de las bibliotecas estándar del lenguaje padre, la sintaxis y funcionalidad completa, y que, además, está optimizado para ejecutarse en microcontroladores y en entornos restringidos, como en el interior de micro:bit, entre otros.
Con este ‘Manual de desarrollo en MicroPython para la placa BBC micro:bit’ aprenderás de una forma sencilla e intuitiva cómo programar una tarjeta micro:bit para que haga lo que tú quieras. Las posibilidades son infinitas, desde un sensor de humedad para tus plantas hasta un detector de CO2 para controlar el aire que respiras, pasando por un timbre inalámbrico, un medidor de pasos, un generador de voz, mover un motor o encender luces led. ¡Y mil cosas más!

Estás ante el manual de programación en MicroPython para micro:bit en español más completo del mercado. Cuenta con 284 páginas, fotografías, esquemas gráficos, ejemplos de código fuente y aplicaciones prácticas:
- Explicaciones detalladas, amenas y muy completas de todas y cada una de las características de la tarjeta micro:bit y de sus componentes, así como del lenguaje MicroPython.
- Infinidad de ejemplos prácticos de código fuente en MicroPython que sirven de explicación a cada uno de los capítulos, epígrafes y apéndices de información contenida en el libro.
- Rigurosos esquemas de conexión que explican los pormenores de la interacción de micro:bit con elementos externos, cables, pinzas, placas protboard, placas de pruebas, etcétera.
- Descripción minuciosa de proyectos completos de aplicación con fotografías, código fuente, explicaciones, conexiones y hojas de especificaciones de componentes.
Disponible, en Amazon, en tres formatos, a saber: Tabla blanda, tapa dura y versión Kindle.
CONTENIDO GENERAL DE CAPÍTULO PRINCIPALES.
CAPÍTULO 1. La placa BBC micro:bit
CAPÍTULO 2. Programando la placa micro:bit
CAPÍTULO 3. Lenguaje Python para principiantes
CAPÍTULO 4. ¡Hola, mundo!
CAPÍTULO 5. El objeto display
CAPÍTULO 6. El objeto accelerometer y la gravedad
CAPÍTULO 7. Orientación: el objeto compass
CAPÍTULO 8. Los botones de micro:bit, la clase Button y sus dos instancias
CAPÍTULO 9. Generando sonido (los módulos audio y music) y captándolo
CAPÍTULO 10. El módulo speech, porque micro:bit habla y canta.
CAPÍTULO 11. Manejando el tiempo: el módulo utime
CAPÍTULO 12. El sistema de archivos local de micro:bit
CAPÍTULO 13. Administración del sistema de archivos local: el módulo os
CAPÍTULO 14. Los pines de entrada y salida: analógicos, digitales, I2C, SPI y UART
CAPÍTULO 15. Temperatura y otros asuntos internos de micro:bit
CAPÍTULO 16. Comunicación entre dispositivos: redes cableadas y redes inalámbricas
CAPÍTULO 17. Entorno de programación REPL
APÉNDICE A. Referencia del lenguaje Python
APÉNDICE B. Secuencias de escape
APÉNDICE C. Conectividad Bluetooth
APÉNDICE D. El runtime de micro:bit
APÉNDICE E. Actualizar el firmware de micro:bit y compilar MicroPython
APÉNDICE F. WebUSB en micro:bit
APÉNDICE G. Especificaciones técnicas de micro:bit V2 (frente a V1)
APÉNDICE H. Economizar memoria a la hora de programa
BIBLIOGRAFÍA
¡Disfrútalo, y a desarrollar para micro:bit!

