Saltar a contenido

Index

Tres podcast de JavaHispano sobre legislación

Si eres desarrollador hay un par de aspectos de la legislación de las que deberías tener ciertas nociones. Propiedad intelectual, LOPD, LSSICE, Licencias de Software, Software Libre,… son conceptos que si bien seguramente no tienes porque dominar, al menos te deberían sonar. Ultimamente he oído tres podcasts de JavaHispano donde tocan alguno de estos aspectos que no está de más escuchar:

  • Propiedad intelectual del software. Que responde a preguntas como ¿Qué derechos tiene un programador asalariado sobre el software que escribe? con respuestas como basicamente ninguna a no ser que pacte previamente.
  • Ley de Protección de Datos Personales (LOPD): Desde que es la ley hasta que debería saber un desarrollador para que sus programas estén adaptados a la ley. O sentencias y explicaciones como que Internet no es considerado por la ley una fuente accesible al público y por tanto, a pesar de que alguien ponga una dirección de correo en una web un tercero no tiene legitimidad para emplear ese correo en una campaña de publicidad.
  • Introducción y reflexiones sobre Software libre. ¿Qué es el software libre?. Diferencias entre la OSI y la FSF. Tipos de licencias, … El podcast es bastante opinativo como ellos mismos reconocen y no estoy de acuerdo con algunas de las cosas que dicen. Pero si no tienes mucha idea es una buena introducción.

Y tu. Conoces otras fuentes básicas de legislación, licencias, etc. que todo desarrollador de software debería leer.

Lo que está en juego en Siria

Lo que está en juego en Siria es una serie de tres artículos (1, 2, 3) imprescindibles aparecidos en el blog de Guerras Postmodernas que trata de explicar las causas y el ritmo actual del conflicto desde una perspectiva amplia alejándose de los, ya demasiados, comentarios acerca del imperialismo yanki.

Tampoco os perdais el paralelismo entre la guerra cívil siria y la guerra civil española, basándose en la tesis de que ambas se convirtieron en guerras de intermediarios (proxy war).

Libro: Beggining Ruby: From novice to proffesional de Peter Cooper

He terminado estos días de leer el libro de Peter Cooper, Beginning Ruby: From Novice to Professional (Expert’s Voice in Open Source)
, es una segunda edición del 2009 publicada por Apress. El libro se puede comprar desde la página del autor.

Tiene 658 páginas, pero entre espacios en blanco, índice de referencias, índice de contenidos y secciones prescindibles para quien ya sepa algo de programación se queda en bastantes menos. Además, es fácil de leer.

Si ruby no es el primer lenguaje que aprender mi recomendación es empezar por el apéndice A. De un vistazo rápido tienes una gran parte de la sintaxis básica del lenguaje, que ya te permite empezar a hacer alguna prueba.

A partir de ahí lo más fácil es leer el libro en orden, es fácil identificar aquellas secciones prescindibles, como la de instalar ruby en distintos sistemas operativos del capítulo 1, la introducción a ppo del 2, los operadores básicos del 3,… Sobre todo en los primeros capítulos hay cosas básicas que pueden saltarse, y a partir de la mitad del libro algunas cosas muy específicas que se pueden leer en diagonal, simplemente saber que existen y volver a ellas si en algún momento te hace falta.

Me gusta del libro que empieza despacio, siendo asequible para alguien con poca experiencia previa en programación pero avanza rápido y gradual hacia temas más avanzados cubriendo un montón de aspectos del lenguaje que pueden hacer falta. Incluye comentarios sobre estilo del código, tests automáticos (esta parte podía estar un poquito mejor) y desarrollo web, incluido un capítulo sobre rails que te da para dar los primeros pasos en ese framework.

También me gusta que hay bastantes pequeños snippets de código autoejecutables y dos capítulos enteros de aplicaciones un poco más completas, el capítulo 12 en el que desarrollas un bot con el que dialogar es una gozada.

Lo que menos me gusta es que a pesar de que cubre ruby 1.9, se nota que está escrito para la 1.8 y luego actualizado.
En definitiva un buen primer libro para quien ya sepa programar y quiera aprender como ruby puede solucionar alguna de sus necesidades

Libros de ruby para principiantes

Tras mi rápida visita a Ruby a través del Mr Neighborly’s humble little ruby book he estado buscando otros libros para principiantes que me dieran una visión más amplia del lenguaje. Recopilo algunos de los libros que se suelen recomendar con mis propias impresiones sobre lo que he leído de ellos. No he leído ninguna así que puedo equivocarme en las apreciaciones, si no estás de acuerdo deja un comentario.

Beginning Ruby: From Novice to Professional, Second Edition

.
Está reconocido como uno de los mejores libros para novatos, avanza desde las cosas más sencillas hasta cubrir hasta iniciarte en temás más complejos como ruby on rails o testing. Combina bastantes ejemplos pequeños de código con algunos más grandes.

The Ruby Programming Language

.
Considerado más bien de nivel intermedio, busca transmitir las interioridades del lenguaje, aunque se suele considerar como uno de los mejores libros para aprender. Uno de los autores del libro es Yukihiro Matsumoto el creador de Ruby.

  • Versión de Ruby empleada: 1.8 y 1.9
  • Páginas: 448
  • Año de la última edición: 2008

Programming Ruby: The Pragmatic Programmer’s Guide

Fue el primer libro en inglés publicado sobre Ruby y es probablemente el libro más referenciado. Pero se ve que también tiene unos cuantos detractores. Hay una cuarta edición del libro publicado por ahora como borrador que cubre la versión 1.9 y la 2.0. Para ruby 1.8 se puede comprar la segunda edición.

La primera edición del libro sobre ruby 1.6, de 2001 se puede consultar online en ruby-doc y en rubycentral

  • Versión de Ruby empleada:1.9 y 2.0
  • Páginas: 1000
  • Año de la última edición: 2013 (en borrador)

The Well-Grounded Rubyist

Entre nivel inicial e intermedio, parece pensado pensado para quien tiene cierta idea y quiere conocer las particularidades del lenguaje con más profundidad. Muestra un montón de pros y contras del lenguaje y sus idioms pero no llega a desarrollar un proyecto de código concreto. Es otro de los libros más mencionados.

  • Versión de Ruby empleada: 1.9
  • Páginas: 487
  • Año de la última edición: 2009

Conclusiones

Lo que yo estoy buscando es un libro fácil de leer y que tenga algún ejemplo realista de código y no pequeños snippets, por ello me he decidido darle una oportunidad al Beggining Ruby. Trataré de contar que tal está cuando lo acabé.

Referencias

Otros libros

Sobre Ruby también hay bastantes libros gratuítos:

y si lo que buscas es algún libro más avanzado, estos son los que suelen recomendar:

Plugin de análisis de redes en gvSIG 1.x

Una pregunta habitual en las listas de correo de gvSIG es si hay alguna herramienta para realizar análisis de redes. En Cartolab hemos estado buscando enlaces a algunos recursos del plugin llamado «piloto de redes» que es el más empleado para estos análisis para poder compartirlos.

El plugin de piloto de redes (a veces también se lo llama «network extension«, «análisis de redes» o «extGraph«) es mantenido por Scolab y dispone de una página web en la forja de join-up, pero parece desactualizada.

Instalación

La última versión de este plugin es compatible con la versión 1.12 de gvSIG, y se puede instalar desde el administrador de complementos.

Herramientas -> Administrador de complementos -> Seleccionamos org.gvsig.graph y seguimos las instrucciones.

Resumen de uso

  1. Se carga una capa de líneas con los líneas conectadas, sin repetir y digitalizadas en el sentido de la circulación.
  2. Si queremos un análisis mas acertado deberíamos como mínimo un atributo donde esté definido el coste y otro en el que esté definido el sentido. El coste representa cuanto cuesta recorrer ese tramo en las unidades que nosotros queramos, distancia, tiempo,… En el campo sentido Asignamos un valor al sentido que se puede seguir por esa línea (el de la digitalización, ambos sentidos, contrario a la digitalización)
  3. A continuación vamos a Red->calcular topología de red que nos generará un fichero .net en el mismo direcotorio que la capa original con esa red. Aquí podemos decidir asignar cierta tolerancia a nuestra capa, por si los nodos no están perfectamente conectados,…
  4. En la siguiente pantalla, emparejamos los campos que nos solicitan. No es necesario rellenarlos todos. Si escogemos sentido le diremos que valor corresponde a de cada sentido posible.
  5. Cuando se carga la red nos preguntará por el campo que tiene un identificador para las geometrías, por ejemplo los nombres de las calles.
  6. Con la red cargada tenemos las opciones de introducir paradas, barreras o realizar los análisis. Las paradas se pueden administrar desde Red->Gestión de paradas. Son puntos de inicio, fin o de paso intermedio obligatorio de un cálculo de rutas. También se comportan como puntos a partir del cual determinar el equipamiento más cercano,… Las barreras son puntos por los que se impide el paso.
  7. Entre cálculo y cálculo recordar Red -> Borrar -> «Eliminar lo que nos interese»

Videotutoriales

  • Una serie de cuatro vídeos (unos 10, 15 minutos en total) con lo más básico del la extensión de redes para calcular rutas óptimas. Emplea la versión 1.1.2 de gvSIG pero permite ver lo más importante.
  • Vídeo de 6 minutos, demostrativo de varias de las funcionalidades de la extensión. . Cálculo de rutas. Matriz de distanticas y tiempos. Punto más cercano. Árbol de recubrimiento mínimo. Área de servicio. Está bien para de un vistazo saber todo lo que hace.

Manuales

Otros recursos