Problemas de rendimiento Macbook Pro + intelliJ

IntelliJ me estaba funcionando extremadamente lento en un Macbook Pro de 13 pulgadas. Llevaba tiempo pensando que era debido a que era un portátil dual core y que intelliJ necesitaba un ordenador más potente. Pero estaba funcionando tan extremadamente lento que ya no era normal.

Y hoy probando vertx en este ordenador he visto que en cada prueba tardaba mucho en arrancar. No solo en compilar, sino en arrancar el servidor. Así que he parado la ejecución mientras esperaba el arranque y he visto que estaba parado en InetAddressImpl#lookupAllHostAddr.

Leer más...

Migrando a Jekyll

Ya llevaba sin escribir por aquí más de un año.

En este tiempo he estado escribiendo en la comunidad que creé sobre kotlin: kotlin.es.

He aprovechado este fin de semana y hoy que es fiesta para migrar mi blog de Blogger a Jekyll. Ha sido una tarea bastante tediosa, y que si tuviese que volver a hacer desde luego trataría de automatizar, tanto la parte de html a markdown como de descarga de imágenes.

En general lo que he hecho ha sido convertir el html que genera blogger, que era bastante nefasto en general incluso para un wysiwyg, y pasarlo a markdown. Quería aprovechar la migración para tener el contenido lo más limpio posible. He hecho uso de to-markdown para automatizar un poco el proceso, pero se dejaba mucho html sin traducir, aún cuando mi objetivo era simplificar el markdown al máximo. También he tenido que descargar todas las imágenes del cdn de blogger al repositorio.

Para realizar todo el proceso he usado Visual Studio Code 1.6.1 y wget.

Y lo he alojado en github como estoy haciendo últimamente con todos mis blogs de desarrollo.

Lo bueno es que aunque en un futuro github tumbase jekyll o el servir páginas estáticas, jekyll permite generar un sitio web estático muy fácilmente y no tiene una base de datos, sino que son todo archivos planos.

En principio ya está todo el contenido migrado, ahora pasaré a migrar los comentarios de Blogger a Disqus, y poco a poco iré refinando el template para que quede todo más apañado.

Leer más...

Nulabilidad en #java y en #kotlin

Hoy voy a hablar sobre la nulabilidad en Kotlin.

Un poco de historia:

Como sabemos, tradicionalmente en los lenguajes de programación los tipos de valor no son nullables, mientras que los tipos de referencia sí lo son. Los tipos por referencia, generalmente objetos, tienen su contenido en una zona de memoria y cuando tenemos ese objeto en la pila o lo pasamos a otra función, con lo que estamos trabajando es con una referencia, con un puntero.

Al final un puntero acaba siendo un número que hace referencia a una posición en la memoria.
Y la referencia nula (o puntero a la posición 0) originalmente no tenía ningún significado en especial. Al principio se aprovechaba toda la memoria que era poco y no había memoria virtual ni traducciones de direcciones ni nada de eso.

Al final generalmente cuando algo había ido mal, acabábamos con punteros que hacían referencia a posiciones inválidas o que no queríamos, que muchas veces eran valores bajos que hacían referencia a partes bajas de la memoria. Por ejemplo si hacíamos un “malloc” que fallaba, esto devolvía NULL, un puntero a la posición 0, y si luego accedíamos en un campo, igual estábamos accediendo a la posición de memoria 96 por ejemplo. Lo cual era bastante peliagudo. Pero con arquitecturas sistemas operativos más modernos, esto empezó a suponer violaciones de acceso y no reinicios del ordenador, bucles infinitos o crashes legendarios. La aplicación petaba y la podíamos volver a arrancar.

Leer más...

Hablemos de Kotlin

Llevo algunas semanas trabajando en Kotlin. Y voy a empezar a escribir una serie de artículos sobre dicho lenguaje, su ecosistema y cosas relacionadas.

¿Qué es Kotlin?

Kotlin es un lenguaje de programación fuertemente tipado desarrollado por JetBrains (los creadores de IntelliJ IDEA).

Ha sido fuertemente influenciado por lenguajes como Scala o C#.

Targetea a la JVM (máquina virtual de Java 6) y a Javascript de forma nativa.

Leer más...

Followup

Llevaba bastante tiempo sin escribir por aquí.

He estado unos meses sabáticos de descanso y desconexión fuera del trabajo, haciendo lo que me rotaba, jugando y finiquitando algunos asuntos personales. Dejé de ser autónomo, y pronto estaré empadronado donde llevo ya viviendo independizado más de un año.

Tengo unos cuantos proyectos en standby y me gustaría retomarlos poco a poco, a la vez que voy cerrando otros. Pero siempre centrándome en mí, y disfrutando de lo que hago. Sin compromisos de tiempos, con calma y nunca con más de dos proyectos personales a la semana.

También me gustaría volver a retomar el escribir los artículos técnicos que solía escribir. Tengo pendientes algunos temas interesantes y en este tiempo han ido saliendo muchas cosas sobre las que vale la pena escribir.

Así que: stay tuned.

Leer más...

Suscribirse via RSS