Probando minería de zCash con una gtx 960: no es rentable y por qué

No me digas por qué, pero tras meses sin escribir he encontrado esto en borradores. Me olvidé completamente de publicarlo. Hoy ya no es la mitad de útil de lo que sería entonces, pero seguro que te gusta mi aventura. ¡No te la pierdas!

Hasta ahora había estudiado mucho el mundo de la minería, pero no me había metido de fondo en él. He hecho un pequeño estudio, de primera mano, para estudiar tres aspectos principales: ¿de verdad se gana dinero minando? ¿Es cierto que una tarjeta gráfica mediocre (como mi gtx960) no es rentable para minar o solo se ha llegado a esa afirmación por puro márketing? ¿Cómo se mina, qué programas me tengo que descargar y cómo funcionan? ¿Cómo funciona una pool cuando estás en ella? ¿Dónde crear mi cartera? Y muchas otras preguntas a las que encontrarás respuesta en este artículo. Seguir leyendo

Diferentes tipos de SSD y cuál comprar

Hace ya bastante tiempo, os contaba cómo instalar un SSD en vuestro portátil. Han pasado 3 años y, como cabe esperar, las cosas han cambiado bastante. El precio de los SSD ha caído drásticamente, aunque no tanto como cabría esperar. Y sí, aunque los SSD tal y como los conocíamos son más baratos, el marketing se ha encargado de ofrecernos nuevas tipologías que nos harán temblar el bolsillo. Y esto es lo que vengo a contarte hoy: ¿Cuántos tipos de SSD existen? ¿Qué ventajas ofrecen? ¿Qué precios tienen? Quédate y en pocos minutos lo sabrás todo sobre ellos. Seguir leyendo

Conceptos básicos de GitLab CI

Hoy voy a enseñarte a dar tus primeros pasos con algunos conceptos básicos de GitLab CI, que es la herramienta de integración continua de nuestros amigos de GitLab. De esta forma, podrás configurar tu repositorio para construir los proyectos automáticamente cuando hagas push a una rama, por ejemplo. O pasar los tests e, incluso, automatizar despliegues automáticos en tus diferentes servidores de una forma más que sencilla. Seguir leyendo

Instala una unidad SSD en tu portátil sin quitar tu HDD

Actualmente está muy de moda eso de cambiar el disco duro de tu portátil por un disco de estado sólido. El problema que presentaban estos nuevos inventos es el precio, por lo que normalmente los usuarios no podían permitirse unidades de más de 120 o 240 gb. Y esa falta de almacenamiento es lo que a muchos de mis amigos les tira atrás cuando les recomiendo unidades SSD.

Actualización 2020: si quieres sabér más sobre todos los tipos de SSD que existen y cuáles te recomiendo, pásate por este artículo!

¿Tú también quieres tener un ssd en tu portátil sin renunciar a toda la capacidad de almacenamiento de tu HDD actual? Continúa leyendo y verás como hacerlo.

Seguir leyendo

Ejemplo práctico de TDD con Spring Boot

Hoy vas a aprender mucho con este sencillo ejemplo práctico de TDD (Test-Driven Development). Es una metodología de desarrollo de software que consiste, básicamente, en escribir antes los tests que la funcionalidad. De esta forma, conseguimos numerosas ventajas. Para empezar, una gran covertura de código. Y esque, en este caso, la covertura de código es una consecuencia de la metodología, no una simple meta a alcanzar (¿te suenan los assert(true)?). Además, conseguimos un diseño totalmente enfocado a las necesidades y requisitos el proyecto, ya que cada test sería (más o menos) reprensentativo de un caso de uso.

Antes de nada, permíteme avisarte de que este extenso artículo está hecho para gente con una experiencia moderada desarrollando. Si no tienes experiencia con Spring Boot o un framework similar, no sabes lo que es una API rest o cómo funciona por dentro, o no sabes distinguir entre controlardores, servicios, DAOS y POJOS, entonces primero aprende todo eso, coge experiencia, y con todo eso puedes empezar a mejorar tu forma de desarrollar apliando TDD. Seguir leyendo

Primeros pasos con AWS: creando una máquina virtual

Si eres desarrollador, seguramente has oído hablar de los servicios web de Amazon (AWS). Y bueno, si no has oído exactamente algo de Amazon seguro que sí has oído hablar del Cloud Computing, microservicios, serverless, y otros muchos conceptos que, de primeras, sabemos que implican tener una máquina sin acceso físico a ella. Puedes conectarte, administrarla, configurarla, instalar software, y mil cosas más; pero no puedes tocarla.

Para concretar un poquito más, debes saber que, si te creas cuenta nueva en AWS, tienes 12 meses de acceso al programa gratuíto. Este programa incluye, entre otras muchas cosas, la posibilidad de usar una máquina virtual 750 horas al mes. Bueno, o 10 máquinas virtuales 75 horas al més, depende cómo te organices.

Lo que te voy a enseñar en este tutorial es algo que, una vez descubierto, es una tontería enorme. Sin embargo, aprender esto desde cero sin alguien que te guíe y sin tener experiencia en entornos en la nube puede convertirse en algo un poco decepcionante. Seguir leyendo

Ahora tengo macbook, ¿vale la pena el cambio?

Hace unos 6 meses cambié de trabajo. En la nueva empresa trabajan mayoritariamente con Macbook y, tras 6 meses,  firmé por fin un contrato. Con él, vino de regalo un Macbook pro de 15 pulgadas nuevecito, con i7 de 6 núcleos y 12 hilos @2,6Ghz, 16 gb de ram, touch bar y bueno, en fin, todo lo que lleva un Macbook recién estrenado en 2019. Llevo pocas semanas usando este equipo pero, como llevo ya meses pegándome 8 horas diarias con el famoso ecosistema de Apple, hoy voy a contaros qué cosas tiene que lo hacen mejor que los demás, al igual que sus puntos débiles y por qué recomendar o no su compra.

Seguir leyendo

Crear una ventana emergente en Angular 7

A menudo necesitamos insertar datos en cualquier sistema. Normalmente, estos sistemas separan el Back con una API y el front con una aplicación construida en un framework como Angular, que separa la interfaz de usuario de la lógica de negocio. Vamos a ver cómo crear una ventana emergente o pop-up con Angular para interactuar con nuestros servicios.

En nuestro ejemplo tendremos una API construida con SpingBoot que nos permite visualizar una lista de cursos (con los datos correspondientes de su profesor, nivel, horas, etc) y, por supuesto, añadir nuevos cursos. Para escribir los datos que queremos insertar de un nuevo curso, lo más fácil sería optar por hacer otra vista y, con botones, enlazar las diferentes vistas. No obstante, cuando vamos a insertar pocos datos, ¿por qué no crear una ventana emergente o pop-up? Así el usuario no perderá de vista la venatana principal a la que hacen referencia los datos que está insertando. Seguir leyendo

Montecarlo en Python: cómo aproximar por tu cuenta el valor del número PI

Últimamente estoy demasiado matemático. No se si será por los vídeos de derivando o por la cantidad de algoritmos de IA que me estoy metiendo en vena (ambos, segurísimo). Hace un tiempo en un curso online una de las cosas que aprendí como ejemplo para manejar distribuciones aleatorias en Python fue a crear una simulación con el método de Montecarlo para averiguar el valor de PI.

Este método consiste en «simular» dardos disparados aleatoriamente a una diana rodeada a su vez por un cuadrado cuyo diámetro  es igual al lado del cuadrado. Seguir leyendo

Data Science en Python: cargar archivos brutos desde una URL y exportarlos a cualquier formato (xls, csv, json)

A ver, según la wikipedia, el data cleaning es «el acto de descubrimiento y corrección o eliminación de registros de datos erróneos de una tabla o base de datos». Por este significado propiamente dicho, lo que voy a explicar a continuación no estaría dentro del data cleaning. Sin embargo, siendo realmente estrictos, lo que vamos a hacer va a ser la primera limpieza o formateo de los datos. No es tanto corregir datos, sino adecuarlos a un formato que podamos utilizar en nuestro ecosistema (python con pandas en este caso usando dataframes). Utilizaremos dos librerías: pandas y urllib3. La tarea se compone de tres sencillos pasos: la conexión y descarga de los datos en bruto, el formateo en filas y columnas para crear el diccionario y por último la creación del dataframe para exportarlo directamente al formato que queramos. Seguir leyendo

« Entradas anteriores