Sidelab se renueva

Aquellos que nos leen habitualmente (hay alguien ahí?) sabrán que este verano SidelabCode se puso malito… un fallo en un disco duro hizo que nuestra forja se esfumara delante de nuestras narices. Como chicos precavidos teníamos copias de seguridad de todo…. o casi. No vamos a entrar en detalles ahora, el caso es que SidelabCode vuelve a funcionar a pleno rendimiento de nuevo. Podéis echar un vistazo a la página principal de SidelabCode para ver lo que hacemos…

Como véis hemos cambiado un poco el diseño del blog. Nos gustaría personalizar su aspecto un poco más, pero wordpress no nos deja hacer muchas cosas en la versión gratuita. También hemos diseñado un poco la página de la forja. Estamos pendientes de poner un Drupal para hacer una página principal de Sidelab un poco más friendly, pero como siempre hay muchas cosas que hacer, al final siempre queda postergado.

A disfrutar de la nueva imágen…

Las aplicaciones Java y el logging

Vía The Server Side, me he encontrado con el artículo cuyo enlace copio debajo. Se trata de un repaso histórico por las diferentes tecnologías de logging en Java. Aclara muchas zonas grises y permite tomar una decisión razonada sobre cuál de todas ellas nos puede interesar.

Al parecer hay un desarrollador que se ha implementado nada menos que tres apis: log4j, slf4j y logback. En cada nueva implementación ha tratado de solucionar los problemas de apis anteriores. Merece la pena leerlo y no es muy largo.

Java Code Geeks: The Java Logging Mess: http://www.javacodegeeks.com/2011/09/java-logging-mess.html?m=1

Oferta de beca en Sidelab

En Sidelab ofertamos una beca para los alumnos de Ingeniería Informática (2º ciclo) de la Universidad Rey Juan Carlos. Si estás estudiando la titulación doble de II+LADE, también puedes optar a esta beca. Los datos más relevantes de esta beca son los siguientes:

  • Duración: Todo el curso académico 2011-2012 (De Septiembre a Junio) a media jornada.
  • Dotación económica: 470€/mes
  • Requisitos: Estar matriculado de todas las asignaturas (incluido PFC) necesarias para concluir la carrera, tener conocimientos de la tecnología Java y muchas ganas de afrontar nuevos retos tecnológicos.
  • Actividades a realizar en la beca: El objetivo de la beca consiste en el diseño e implementación de aplicaciones con la tecnología Java. Además, aprenderás a utilizar tecnologías de cloud computing, máquinas virtuales, entornos de desarrollo, administración de sistemas linux, sistemas de pruebas, buscadores web, aplicaciones web…
  • Lugar de realización: Laboratorios de la URJC en Móstoles.
  • El trabajo realizado durante la beca podrá ser presentado como Proyecto de Fin de Carrera de Ingeniería Informática.

Si te interesa, mándame un mail a francisco.gortazar@urjc.es con un pequeño resumen de tu cv, con las notas de la titulación, indicando además las asignaturas que te quedan por cursar y tu perfil como programador.

El 7 del 7 sale… Java 7

Desde que Oracle compró a Sun Microsystem pensábamos que Java nunca más iba a ser tan «freak» como era antes… afortunadamente nos equivocamos y todavía siguen teniendo ese puntillo…

Hoy es 7 del 7 y se publica oficialmente Java 7*. Además, los de Oracle nos han obsequiado con unas camisetas (50) sobre la presentación oficial. Aquí os dejo un documento gráfico de Duke flipando con su móvil y su reloj holográfico.

Además, el próximo 14 de Julio tendremos la presentación oficial de Java 7 aquí en Madrid, de la mano de JavaHispano, el grupo de usuarios de Java de Madrid (MadridJUG). Como ponente tendremos a Simon Ritter, un «Java Technology Evangelist» en Oracle.

Ya os contaremos…

*En realidad les ha pillado el toro y sólo les ha dado tiempo a sacar la Java 7 «Release Candidate», pero después de 3 o 4 años de retraso… por unos meses no pasa nada 🙂

Españoles… SidelabCode ha muerto (o casi)

Después de un reinicio limpio del servidor de SidelabCode, el disco duro no responde. Por supuesto tenemos copia de seguridad de… ¿todo?. Desde luego hacemos copias de seguridad, pero no tenemos la certeza que se copie todo lo importante. Posiblemente no tengamos problemas con la información, pero quizás sea necesario reinstalar todo el sistema desde 0 para ponerlo a funcionar de nuevo. Esto es una lección aprendida, no sólo es necesario hacer copia de seguridad, también hay que tener un «plan de restauración».

Lo bueno de tener toda la información de Sidelab en el wiki es que la tenemos centralizada, se copia, con control de acceso… todo está muy bien salvo que sea esa máquina la que muere :). Es la pescadilla que se muerde la cola, hasta que no restauremos la máquina no podremos acceder a la información que nos dice cómo restaurar la máquina.

Pero bueno, que no cunda el pánico. Ya teníamos pensado actualizar la forja de SidelabCode al sistema desarrollado por Arek. Entre otras cosas tiene una consola de administración gráfica, que facilitará enormemente las tareas de administración de la misma (que lo tenía que hacer Patxi «a mano»).

Bueno… seguiré informando, voy a ver si soy capaz de convertir un conjunto de copias incrementales realizadas con sbackup en un conjunto de ficheros «recuperables»…

Mamá, yo de mayor quiero una forja (de desarrollo software)

Cuando alguien se acostumbra a programar con una forja de desarrollo software, ya no se la puedes quitar. Esa sensación de caos que reina en cada programador se reduce sensiblemente cuando usamos una forja. Lo imprescindible es el repositorio de código, por supuesto, pero el wiki y los tickets/issues/bugs/peticiones se utilizan cada vez más y de forma más efectiva.

Cuando trabajas en una empresa, normalmente hay un servidor en algún sitio que tiene instalada la forja. Lo habitual es montarte la forja tu mismo a base de piezas (SVN, Redmine, Apache, Drupal, MySQL, PHP, Maven, Hudson/Jenkinks, Nexus, Git, Sonar, OpenLDAP….), pero es «un poco tedioso». Siempre puedes usar el instalador de SidelabCode, que te instala los programas más importantes de forma automática (y los configura para que trabajen juntos). Aunque siempre se puede mejorar, al menos facilita la labor en caso de tener que reinstalar/actualizar. También hay máquinas virtuales que contienen forjas como AgileBox, aunque quizás la pequeña caída de rendimiento al ejecutarse virtualizado pueda suponer cierto inconveniente. Me gustaría probar a ver que tal va una imagen de esas en un servidor dedicado exclusivamente a la máquina virtual.

Los que no trabajan en una empresa que les proporcione soporte o estén desarrollando un producto fuera del horario de trabajo, tienen un poco más difícil el uso de una forja para proyectos con licencias privativas (Una cosa es estar comprometido con el software libre y otra cosa es que cualquier línea de código que escribas sea open). Poner un servidor detrás del ADSL puede que no sea muy práctico (hay que estar con las IPs dinámicas, DynDNS y esas cosas…) No se cómo andarán las velocidades de subida ahora mismo… pero habrá que contratar alguna línea de «gama alta».

¿No os parece curioso que exista GoogleDocs para documentos privados, GMail para correos privados y GoogleCode sólo aloje proyectos públicos? Bueno… sus razones tendrán, supongo que el apoyo al software libre será una de ellas.

Afortunadamente existen servicios gratuitos en Internet que alojan gratuitamente Redmine y SVN para proyectos privados. La página se llama HostedRedmine y permite proyectos públicos y privados. Tienen algunos plugins e incluso soportan Mylyn… Desde luego es una opción rápida, sencilla y barata de tener tu propia forja, para uso personal o compartido.

Por cierto, si has llegado hasta aquí buscando información de forjas, Redmine, etc… (y no nos conocías de nada… deja un mensaje para saber que te ha servido de algo la info :))

Un saludo

 

 

EclipseGavab tiene nueva página web

Llevando un paso más allá la continua mejora de nuestra forja, SidelabCode, hemos habilitado la posibilidad de que los proyectos puedan tener una página web decente como un mecanismo de publicitación del proyecto. Como es bien sabido, no sólo hay que ser bueno, también hay que parecerlo.

Uno de los primeros proyectos a los que hemos dotado de una web en condiciones es EclipseGavab. Como muchos sabréis EclipseGavab es una distribución de Eclipse desarrollada por Sidelab orientada principalmente a la docencia. Aunque es verdad que en ocasiones esta distribución la hemos utilizado también en contextos donde queríamos, por ejemplo, un entorno de desarrollo en C/C++ para Windows basado en gcc sin necesidad de configuración (algunas de las personas con las que colaboramos no quieren saber nada de administrar un cygwin). Esta distribución con solera (que ha pasado por tres versiones: 0.5, 1.0 y 2.0) se ha ganado el derecho de tener una web en condiciones.

Así pues, la nueva url de EclipseGavab es: http://www.sidelab.es/projects/eclipsegavab/. Está basada en Drupal, un CMS que estamos utilizando bastante en los últimos años y con el que nos sentimos cómodos.

La página contiene algunos recursos para comenzar a utilizar Eclipse con cualquiera de los lenguajes incluidos, y los enlaces a las descargas para los sistemas operativos soportados. De esta forma todo el material relacionado con EclipseGavab está mucho más accesible.

Seminario «¿Cómo ser más productivo en el desarrollo de aplicaciones?» en el GBT de la UPM

El pasado Martes 28 de Junio de 2011 estuvimos impartiendo un seminario para el grupo GBT de la Universidad Politécnica de Madrid.

El seminario tenía por título ¿Cómo ser más productivo en el desarrollo de aplicaciones? y abordaba las cuestiones más relevantes para ser productivo desarrollando. En Sidelab pensamos que las claves para rendir más programando son: Programar mejor y Organizarse mejor. Es decir, siempre hay que ir actualizando los conocimientos sobre programación y además hay que utilizar las metodologías de desarrollo y las herramientas adecuadas para que un proyecto software salga adelante en tiempo y forma.

Te puedes descargar la presentación utilizada en la charla (ten en cuenta que fueron 4 horas).

SidelabCode, una forja multiproyecto/multiusuario lista para llevar

En Sidelab llevamos a cabo multitud de tareas en campos muy diferentes. Impartimos clase en la universidad, colaboramos con empresas, desarrollamos algoritmos heurísticos para optimización, llevamos proyectos de fin de carrera/máster y un largo etcétera. Como puedes imaginar, gestionar de una forma efectiva todas estas tareas no es una tarea sencilla. Por eso, en Sidelab siempre estamos buscando formas de optimizar nuestro tiempo y organizarnos mejor.

Después de varios años usando algunas herramientas colaborativas (SVN, Trac, XWiki, …) llegamos a la conclusión de que necesitábamos una forja en toda regla, con todos los servicios básicos: Redmine, SVN, Apache, gestión de usuarios/proyectos, etc. Este mismo año Patxi ha estado colaborando con Arek (un alumno de proyecto de fin de carrera de la Ingeniería Informática), para instalar la forja SidelabCode en un servidor y crear un instalador que lo haga sólo. En ese mismo proyecto también se ha implementado SidelabCode Admin Tools, un conjunto de aplicaciones para la gestión de proyectos/usuarios de la forja.

Os invitamos a que nos echéis una mano instalando y probando la forja SidelabCode. Seguro que entre todos podemos ir arreglando los problemas que vayan apareciendo. También podemos ir ampliando la funcionalidad que consideremos necesaria. En concreto, el objetivo es instalar Jenkins, Sonar, programas de análisis de código, etc…

Ya nos iréis contando…

Trabaja modelando

¿Quién decía que no se podía hacer dinero dibujando cajitas y flechas?

Eclipse Modeling Job near Bern Switzerland.

Para el lector curioso, Xtext es un proyecto Eclipse orientado a la definición de lenguajes específicos del dominio (DSLs) y los desarrolladores del proyecto han puesto mucho esfuerzo en la generación de herramientas para los lenguajes definidos con Xtext (edición, generación de código, …). Al fin y al cabo los lenguajes necesitan herramientas para ser de utilidad, de otra forma se quedan en puros ensayos teóricos.