Redis en Go Hace ya más de quince meses desde que escribimos nuestro primer artículo sobre cómo crear una API REST en Go, en el que dimos vida a uno de nuestros proyectos más populares en GitHub: friendsofgo/gopherapi. Desde entonces, han sido ya varias las implementaciones (MySQL, CockroachDB, in-memory…) que hemos hecho del repositorio principal de dicha aplicación. Sin embargo, hay un tipo de persistencia bastante habitual en el ecosistema Go (y en general en el mundo del desarrollo) del que aún no habíamos hablado: Redis. ...
Empezando con Kubernetes Si eres desarrollador y te vas manteniendo al día seguro que alguna vez habrás oído hablar de Kubernetes o k8s que es su diminutivo, y entiendo que si estás aquí es porque aún te suena a chino. Pues bien lo primero que te voy a recomendar, es si tampoco estás familiarizado con Docker te empapes un poco de él, ya que Kubernetes necesita de él para funcionar y habrá conceptos que quizás no acabes de entender de no ser así. ...
¿Cómo crear presentaciones con Go? La asistencia y participación a conferencias así como los resúmenes que hacemos de las mismas han sido algo habitual desde nuestros inicios. Sin embargo, hoy no estamos aquí para hablar de las conferencias en sí, pero sí de algo estrechamente relacionado con ellas: las presentaciones. Claro que si nos pusiéramos a dar consejos sobre como preparar una presentación o como redactar una propuesta de charla, quizás nos saldríamos de la temática de este blog y tampoco sería lo adecuado. ...
La sentencia defer Aunque aún parece que fue ayer, hace ya más de una semana de la GoRemoteFest, cuyo resumen podéis encontrar aquí, en dónde una de las charlas que más repercusión tuvo en las redes sociales (especialmente en Twitter) fue la charla sobre la sentencia 'defer' de Mat Ryer. Y es, esa misma sentencia, la que nos ha llevado a escribir el artículo de hoy. Pues, pese a que Mat la cataloga como “la mejor funcionalidad de Go”, lo cuál puede ser discutible, lo cierto es que su uso está muy extendido en cualquier aplicación Go y resulta un pelín decepcionante que en un blog como este aún no se hubiera hablado al respecto. ...
GoRemoteFest 2020: la conferencia online de Go - ¡Y montaremos una conferencia de Go! - ¡Venga! ¡Y conseguiremos que Dave Cheney participe! - Si claro… ¡Y tendremos sponsors top como JetBrains! Si hubiéramos tenido que apostar, probablemente nos la hubiéramos imaginado bastante diferente (física, de ámbito nacional, etc), pero la verdad es que ese diálogo (o muy similar) podría extraerse de varias de las conversaciones que tuvimos durante la primera mitad del año pasado, cuándo empezábamos a definir a dónde queríamos llegar con todo esto de Friends of Go. ...
MySQL en Go En algunos lugares del mundo, los ciudadanos siguen confinados debido a la pandemia del coronavirus y desde Friends of Go seguimos predicando el lema #QuédateEnCasa. De hecho, qué mejor ocasión que ésta para seguir aprendiendo Go. Y hoy lo vamos a hacer extendiendo la API de gophers que podéis encontrar en nuestro repositorio y que empezamos a desarrollar en nuestro artículo estrella sobre cómo crear una API REST en Go, que posteriormente mostramos cómo testearla y que recientemente extendimos para darle compatibilidad con CockroachDB. ...
Generics en Go Mucho se ha hablado de generics en Go y es que su ausencia es acusante desde casi el principio del lenguaje, detrás de esto hay tanto mucha gente que apoya que el lenguaje no necesita de esta funcionalidad como mucha más que apoya que deberían ser incluidos cuanto antes. Con este artículo queremos aclarar que no han sido implementados todavía, tranquilos, pero ya tenemos una buena idea de su posible diseño. ...
/x/sync/singleflight y otros amigos Con la excusa de la StayAtHomeConf y la charla sobre el paquete 'context' impartida en la misma, el artículo de la semana pasada estuvo centrado en el paquete '/x/sync/errgroup' cuya principal finalidad es la de proporcionarnos una herramienta de sincronización, propagación de errores y cancelación de contexto para grupos de gorrutinas. Sin embargo, bajo el paraguas de /x/sync/ existen otros paquetes interesantes. Todos ellos centrados en proporcionarnos herramientas de sincronización entre gorrutinas. ...
Errgroup como agrupar tus procesos El pasado domingo 29 de marzo, nuestro querido Joan estaba de speaker en la StayAtHomeConf, y nos explicaba con ejemplos muy claros como utilizar los contextos. Si tenéis ganas de echarle un ojo podéis seguir el siguiente link para ver la charla en cuestión. Pero os voy a contar un secreto, Joan, decidió esta vez no enseñarme la charla para que fuera una sorpresa para mí. Y en cuanto la vi y vi todo el pifostio que había montado, obviamente a sabiendas para el buen explicamiento del paquete context pues se me encendió una bombilla, ¿por qué no profundizar un poco más en el manejo de múltiples peticiones y aprovecharnos también del paquete context? ...
Tests coverage en Go Hoy es un día muy especial, y es que la mayoría de nosotros nos encontramos confinados en casa bajo el lema #QuédateEnCasa. La pandemia mundial que está significando el coronavirus (más técnicamente conocido como COVID-19) ha provocado que muchos estados hayan tenido que declarar el Estado de Alerta. Así que, como no podía ser menos, desde Friends of Go hemos decidido, pese a la excepcionalidad de la situación, no fallar a nuestro compromiso semanal. ...