REALbasic

Cuando compré el iMac comencé a mirar como programar para OS X. Uno de los entornos de desarrollo disponibles que me llamó mucho la atención fue REALbasic, que es un producto con unas capacidades fuera de lo común, consistentes en poder realizar software multiplataforma simplemente compilando un proyecto dado indicando la plataforma para la cual se quisiera tener el ejecutable. REALbasic puede generar aplicaciones para entornos Windows, Mac y Linux. El entorno es un IDE no muy pesado, con unas opciones claras y bastante sencillo de utilizar. El lenguaje que utiliza es una evolución de BASIC orientado a objetos y el acceso a datos puede ser con una versión propia de SQLite o bien se puede conecta a distintos servidores SQL.

REALbasic es un producto comercial desarrollado por una empresa llamada REALsoftware y con sede en Austin – Texas. Existen dos versiones de REALbasic, una standard y otra denominada profesional. La edición standard incluye en entono de desarrollo en una de las plataformas soportadas, la generación de ejecutables para esa plataforma y el acceso a bases de datos SQLite. El precio de la edición standard es de 75 € en las versiones para Windows y Mac. La edición standard para Linux es gratuita. La edición profesional sí permite realizar ejecutables para las tres plataformas soportadas y añade además conectividad con diversos motores de bases de datos relacionales, encriptado AES 256 para la base de datos SQLite, depuración desde un equipo remoto, controles contenedores, auto-detección de aplicaciones en red, sockets y soporte de SSL. La edición profesional cuesta 400 €.

Desde mi punto de vista el entorno tiene carencias, sobre todo la falta de un generador de informes aunque existe un componente de terceros denominado On-Target Reports que cuenta con conexión para su uso con REALbasic. Sin embargo, lo que menos me gusta de REALbasic es su modo de distribución: cada tres meses lanzan una versión del producto, empaquetando en ese momento las funcionalidades que tienen disponibles. No hay un planning de versiones que diga qué estan haciendo o que características van a implementar en cada versión sino que lo anuncian un par de semanas antes de lanzar cada versión. Cuando compras una licencia tienes derecho a actualizaciones durante seis meses, y luego hay un plan de actualizaciones que sale más económico que ir pagando cada vez. Uno de los puntos fuertes de REALbasic es su documentación. El producto se entrega con varios manuales muy completos y multitud de programas de ejemplo.

Uno de los puntos a favor de REALbasic es cuenta con una comunidad bastante activa. Existen unos foros donde los programadores comparten experiencias y plantean problemas que encuentran en sus desarrollos. Existen multiples componentes de terceros que añaden extensiones y funcionalidades al entorno de desarrollo, entre los que destacan los plugins de Monkeybreadsoftware. El contrapunto de los plugins comerciales se encuentra en RBDevZone que aglutina tanto noticias sobre REALbasic y plugins gratuitos. También hay una publicación bimensual llamada RBdeveloper y recientemente se ha formado la Asociación de Profesionales de REALbasic.

Hay muchos blogs en inglés de desarrolladores de REALbasic, pero no he encontrado apenas sitios en castellano que hablen sobre este entorno de desarrollo. Mi intención es usar la versión de evaluación hasta conseguir un cierto dominio del lenguaje y realizar algún pequeño programa para uso personal. Si esto fructifica compraré la edición standard para Mac y liberaré los programas como software libre.

a vueltas con los libros de programación

El lanzamiento de StackOverflow, el nuevo proyecto conjunto entre los supergurús Joel Spolsky y Jeff Atwood ha recibido varios post de sus autores a modo de justificación. No cuentan exactamente en que va a consistir el sitio, pero si que es un sitio de preguntas y respuestas que va a estar relacionado con el aprendizaje de la programación. Según Spolsky los programadores hemos dejado de leer libros y el mercado de libros es muy pequeño comparado con el creciente número de programadores. Atwood da una vuelta de tuerca más, justificando ese bajo nivel de lectura en varios motivos como el bajo nivel de los libros que se editan actualmente, la inversa relación entre calidad y número de páginas, y el abuso de la formula aprende en 24 horas.

Creo que problema no es tanto la mala calidad de los libros de programación, sino el tipo de libros que se editan. A groso modo yo hago la siguiente división entre libros relacionados con la programación:

  1. Libros específicos. Son los libros de lenguajes o de sistemas. Cuando los compras sabes que están destinados a quedar obsoletos en un cierto tiempo, pero los necesitas para el día a día o bien para aprender algo nuevo. La mayoría de libros que se publican pertenecen a esta categoría, y son los que se compran más habitualmente, pero también son los más facilmente reemplazables por tutoriales o por manuales descargados de internet. Los últimos libros que he comprado pertenecen a esta categoría, y son  Mac OS X Leopard y Beginning REALbasic aunque con este último se me ha ido la mano. En otro post contaré porqué.
  2. Libros de metodologías. Desde los clásicos de ingeniería de software a los de metodologías, UML o pruebas de software.
  3. Los libros de buenas prácticas. Aquí englobo desde los libros de diseño de interfaces, Peopleware, Pragmatic Programmer, No me hagas pensar y similares. Este grupo de libros es cuantitativamente mucho menor que los anteriores y se editan pocos libros de este tipo. Para mi la falta de este tipo de  lecturas es la gran carencia de la mayoría de los programadores.
  4. Libros de temas colaterales. Si quieres dedicarte a vender software debes aprender de cosas como economía, marketing e incluso sociología. Ultimamente se han puesto muy de moda libros de economía como Freakonomics o El economista camuflado. Precisamente estoy leyendo este último y el próximo que tengo ya comprado para leer es La economía Long Tail, que creo que es casi de lectura obligatoria para cualquiera que se dedique a vender algo en internet.

Yo no tengo nada claro cual es el problema con los libros de informática en Estados Unidos, pero si que hay cosas que me llaman la atención sobre el mercado de los libros de informática en España. Lo primero es que la mayoría de libros editados son del grupo 1 y 2 citados anteriormente. Apenas hay libros del grupo 3 editados en castellano, y si quieres leer alguno lo tienes que hacer inevitablemente en inglés, y esto es algo que no entiendo porque los libros de este grupo no tienen una caducidad tan acusada como los libros de lenguajes o metodologías. Los libros del grupo 4 sí se traducen en su mayoría, pero por editoriales que no editan libros de informática. Sobre las editoriales que editan libros de informática casi mejor ni hablar. No se quien elegirá los titulos a publicar pero desde luego a mi me parece alucinante la proliferación de títulos sobre Photoshop y otras herramientas de diseño gráfico. Se ve que se venden bien, porque todos los meses hay novedades sobre la versión 200X HIJK del programa de marras. Pero lo de traducir los libros de buenas prácticas ni se les pasa por la cabeza.Así que entre una cosa y otra no queda más narices que ir a morir a Amazon, donde por cierto en vez de ir a comprar libros a veces parece que vaya a pescar. Muchas veces puedes encontrar libros a menos de un tercio de su precio de tarifa, con lo que antes de comprar un libro siempre hago varias incursiones para ver su cotización. Ahora mismo mientras escribo esto he comprado un libro de 39,95$ por 11,95$, con lo que puesto en casa me cuesta al cambio menos de 16€. En España los precios de los libros son fijos, y no conozco ningún sitio donde hagan descuentos con lo que todavía te puedes encontrar libros de Windows98 a su precio original.