Skip to content

Commit

Permalink
Site update at 2024-02-02T21:39:12+0000
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions committed Feb 2, 2024
1 parent 6d81c57 commit 518f9dc
Show file tree
Hide file tree
Showing 74 changed files with 192 additions and 184 deletions.
4 changes: 2 additions & 2 deletions 2017/02/conferencia-bilbostack-2017/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"dateModified": "2017-02-08T21:30:00+01:00",
"inLanguage": "es",

"wordCount": "1405",
"wordCount": "1407",
"license": "https://creativecommons.org/licenses/by-sa/4.0/",
"author": {
"@type": "Person",
Expand Down Expand Up @@ -390,7 +390,7 @@ <h2 id="agile-for-scrummies-empor-jorge-uriarteem">Agile for scrummies <em>por J
</blockquote>
<div class="media media-amazon">
<ul>
<li><a href="3fb69c8c67a77d17456e3a5fca1ce831" title=""></a></li></ul>
<li><a href="https://amzn.to/3SnJD0j" title="Stop Starting">Stop Starting</a></li></ul>
</div>
<p>La combinación de un WIP pequeño junto con un sistema <em>pull</em> en el que no se construye lo no necesario, no se prueba lo que no se puede entregar, no se desarrolla lo que no se puede probar y no se especifica lo no se puede desarrollar produce una reducción de tiempos de entrega, hay mayor predictibilidad y elimina rehacer trabajo.</p>
<div class="reference">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"dateModified": "2017-02-25T23:30:00+01:00",
"inLanguage": "es",

"wordCount": "1273",
"wordCount": "1286",
"license": "https://creativecommons.org/licenses/by-sa/4.0/",
"author": {
"@type": "Person",
Expand Down Expand Up @@ -334,7 +334,7 @@ <h1>Desempaquetado del kit de iniciación a la electrónica para la Raspberry Pi
</div>
<div class="media media-amazon">
<ul>
<li><a href="415695f2e7f3ef590a8f4c93b8bda126" title=""></a></li><li><a href="37e721eaa0be8ec062eef5ee18a5eae8" title=""></a></li></ul>
<li><a href="https://amzn.to/3UIL7p1" title="Freenove starter kit para Raspberry Pi">Freenove starter kit para Raspberry Pi</a></li><li><a href="https://amzn.to/3uiWPM0" title="Freenove ultimate ultimate starter ki para Raspberry Pi">Freenove ultimate ultimate starter ki para Raspberry Pi</a></li></ul>
</div>
<p>La matriz de conexiones o <em>breadboard</em> es una forma cómoda de hacer pruebas sin tener que hacer soldaduras, los puntos en vertical de la mitad superior e inferior están conectados entre si de modo que con los cables macho-macho podamos poner y quitar conexiones. La matriz está numerada horizontalmente con números y verticalmente con letras de forma que cada punto sea identificable individualmente. Las dos filas de puntos superiores suelen usarse para proporcionar un voltaje de 5V y la conexión de tierra, las dos filas de puntos inferiores para proporcionar un voltaje de 3.3V y tierra. La placa está dividida en dos mitades verticalmente de las letras A-D y E-F formando columnas verticales de puntos conectadas en grupos de 5.</p>
<p>Mi intención para este <em>kit</em> es hacer unos pequeños ejemplos usando en cada uno de ellos uno o varios elementos y con el lenguaje de programación Java y la librería <a href="http://rtd.diozero.com/en/latest/">Diozero</a>. Entre los ejemplos estará encender y apagar un LED, usar el <em>display</em> de 16x2 caracteres, el sensor de temperatura y humedad, el sensor de infrarrojos, el motor, los pulsadores, el sensor de movimiento, los detectores de luz, el detector de golpes, etc&hellip;</p>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"dateModified": "2017-02-18T10:00:00+01:00",
"inLanguage": "es",

"wordCount": "986",
"wordCount": "989",
"license": "https://creativecommons.org/licenses/by-sa/4.0/",
"author": {
"@type": "Person",
Expand Down Expand Up @@ -331,10 +331,10 @@ <h1>Ejemplo de RabbitMQ con Java para enviar y recibir mensajes</h1>
<a href="/blog-bitix/2017/02/ejemplo-de-rabbitmq-con-java-para-enviar-y-recibir-mensajes/images/rabbitmq-queue_hu4e54c3cb2be4db8f762ad98e132b349b_66191_2560x1440_fit_q90_h2_box_3.webp" data-gallery="" title="Información de estado de una cola"><img src="/blog-bitix/2017/02/ejemplo-de-rabbitmq-con-java-para-enviar-y-recibir-mensajes/images/rabbitmq-queue_hu4e54c3cb2be4db8f762ad98e132b349b_66191_300x200_fit_q90_h2_box_3.webp" width="274" height="200" alt="Información de estado de una cola" title="Información de estado de una cola" class="&#34; " loading="lazy"></a></p>
</figure>
</div>
<p>Para profundizar más en las aplicaciones basadas en mensajes con RabbitMQ dos buenos libros son <a href="https://amzn.to/2lTGMQc" rel="sponsored">Learning RabbitMQ</a> y <a href="https://amzn.to/2lW9qwF" rel="sponsored">Matering RabbitMQ</a> cubriendo temas más avanzados como <em>clustering</em>, alta disponibilidad, arquitectura, patrones de diseño, seguridad y rendimiento.</p>
<p>Para profundizar más en las aplicaciones basadas en mensajes con RabbitMQ dos buenos libros son <a href="https://amzn.to/4bpjgQe" rel="sponsored">Learning RabbitMQ</a> y <a href="https://amzn.to/3OsxVjU" rel="sponsored">Matering RabbitMQ</a> cubriendo temas más avanzados como <em>clustering</em>, alta disponibilidad, arquitectura, patrones de diseño, seguridad y rendimiento.</p>
<div class="media media-amazon">
<ul>
<li><a href="9bb0705e8a34f246d5530b141b0a690e" title=""></a></li><li><a href="e87eebb622314cdf0c2c14fc32940264" title=""></a></li></ul>
<li><a href="https://amzn.to/4bpjgQe" title="Learning RabbitMQ">Learning RabbitMQ</a></li><li><a href="https://amzn.to/3OsxVjU" title="Mastering RabbitMQ">Mastering RabbitMQ</a></li></ul>
</div>
<div class="alert alert-secondary sourcecode fs-6">
<img src="/blog-bitix/assets/images/icons/terminal.svg" width="64" height="64" alt="Terminal" title="Terminal" class="lozad sourcecode-icon">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"dateModified": "2017-03-25T10:30:00+01:00",
"inLanguage": "es",

"wordCount": "788",
"wordCount": "817",
"license": "https://creativecommons.org/licenses/by-sa/4.0/",
"author": {
"@type": "Person",
Expand Down Expand Up @@ -294,12 +294,12 @@ <h2 id="reloj-analógico">Reloj analógico</h2>
</div>
<div class="media media-amazon">
<ul>
<li><a href="b4520ee6411fb18af5d5eeecf755ca44" title=""></a></li><li><a href="ed6aa74ec469d9de2ae7e841c441410d" title=""></a></li><li><a href="88427cb384e155bfece40c7d66133ea9" title=""></a></li></ul>
<li><a href="https://amzn.to/42qIEBh" title="Reloj despertador de madera">Reloj despertador de madera</a></li><li><a href="https://amzn.to/3SJITnS" title="Reloj despertador analógico despertador silencioso">Reloj despertador analógico despertador silencioso</a></li></ul>
</div>
<p>Otros modelos de relojes digitales de pared y mesa que ví son los siguientes, casi todos tienen como función adicional indicar la temperatura interior y la fecha.</p>
<div class="media media-amazon">
<ul>
<li><a href="bd6a22abb84218e18458f0f33b5c6354" title=""></a></li><li><a href="fc9f4b5c9696b82aa015faf870993e91" title=""></a></li><li><a href="ab0420b22a221629ea512e5d00dca56f" title=""></a></li><li><a href="e4c59a48332124cead194f867605cde6" title=""></a></li></ul>
<li><a href="https://amzn.to/49i0rg1" title="Reloj digital mural con termómetro">Reloj digital mural con termómetro</a></li><li><a href="https://amzn.to/3Urmkp8" title="Technoline WS 8007 reloj digital con pantalla LCD ">Technoline WS 8007 reloj digital con pantalla LCD </a></li></ul>
</div>
<h2 id="pilas-recargables-aa">Pilas recargables AA</h2>
<p>Para completar el pedido compré unas <a href="https://amzn.to/2nxr4tP" rel="sponsored">pilas AA recargables de AmazonBasics</a>, la marca blanca de Amazon, para no estar comprando pilas cada cierto tiempo y no generar residuos que son muy contaminantes si no se depositan en lo puntos de recogida de residuos habilitados. Con las pilas y el cargador en teoría no tendré que comprar más en bastante tiempo. Hay varios modelos de pilas y en <em>packs</em> de 8, también hay de los <a href="https://amzn.to/2nRgS0d" rel="sponsored">tipos AAA</a>, las que compré yo están anunciadas como que duran 1000 ciclos de cargas y descarga con una capacidad aproximada de 2000mAh.</p>
Expand All @@ -318,7 +318,7 @@ <h2 id="pilas-recargables-aa">Pilas recargables AA</h2>
<p>Pilas AA y AAA en Amazon.</p>
<div class="media media-amazon">
<ul>
<li><a href="452a2e62d3e787a6b63d8af73e5f278e" title=""></a></li><li><a href="175ef0a2dea4d5a15c8c231fd006c67d" title=""></a></li></ul>
<li><a href="https://amzn.to/47Wm0lq" title="Amazon Basics pilas AA recargables">Amazon Basics pilas AA recargables</a></li><li><a href="https://amzn.to/3Oqlbu8" title="Amazon Basics pilas AAA recargables">Amazon Basics pilas AAA recargables</a></li></ul>
</div>

</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"dateModified": "2017-03-19T12:00:00+01:00",
"inLanguage": "es",

"wordCount": "1412",
"wordCount": "1438",
"license": "https://creativecommons.org/licenses/by-sa/4.0/",
"author": {
"@type": "Person",
Expand Down Expand Up @@ -307,10 +307,10 @@ <h1>Introducción y ejemplo de cluster de contenedores con Docker Swarm</h1>
<span>cluster-remove.sh</span>
</div>
</div>
<p>Un libro que me ha gustado mucho y que recomiendo leer sobre Docker Swarm es <a href="https://amzn.to/2mIirti" rel="sponsored">The Devops 2.1 Toolkit</a> que lo explica detalladamente y todo el libro está orientado a como usarlo en un entorno de producción. Un libro más introductorio que también he leído y que está bastante bien es <a href="https://amzn.to/2mF3Xtj" rel="sponsored">Docker in Action</a>.</p>
<p>Un libro que me ha gustado mucho y que recomiendo leer sobre Docker Swarm es <a href="https://amzn.to/4bomlQH" rel="sponsored">The Devops 2.1 Toolkit</a> que lo explica detalladamente y todo el libro está orientado a como usarlo en un entorno de producción. Un libro más introductorio que también he leído y que está bastante bien es <a href="https://amzn.to/48XmJ7i" rel="sponsored">Docker in Action</a>.</p>
<div class="media media-amazon">
<ul>
<li><a href="666d0aff3a2629cd87c205370bc5ae87" title=""></a></li><li><a href="9d344246cd59cd65a952305379c2556a" title=""></a></li><li><a href="2101ae950cfcfe9e69b6cc1210e4bf2c" title=""></a></li></ul>
<li><a href="https://amzn.to/48XTJvT" title="Docker: Up &amp; Running: Shipping Reliable Containers in Production">Docker: Up &amp; Running: Shipping Reliable Containers in Production</a></li><li><a href="https://amzn.to/48XmJ7i" title="Docker in Action">Docker in Action</a></li><li><a href="https://amzn.to/4bomlQH" title="The DevOps 2.1 Toolkit: Docker Swarm: building testing deploying and monitoring services inside Docker Swarm clusters">The DevOps 2.1 Toolkit: Docker Swarm: building testing deploying and monitoring services inside Docker Swarm clusters</a></li></ul>
</div>
<p>Finalmente, quizás si estás usando GNU/Linux y VirtualBox como yo al crear los nodos con el comando <code>docker-machine</code> te produzca el siguiente error (quizá se corrija en futuras versiones de Docker o VirtualBox).</p>
<div class="code">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"dateModified": "2017-04-02T12:00:00+02:00",
"inLanguage": "es",

"wordCount": "1095",
"wordCount": "1121",
"license": "https://creativecommons.org/licenses/by-sa/4.0/",
"author": {
"@type": "Person",
Expand Down Expand Up @@ -303,10 +303,10 @@ <h1>Iniciar un stack de servicios en un cluster de Docker Swarm</h1>
<span>docker-compose-stack-app.yml</span>
</div>
</div>
<p>Un libro que me ha gustado mucho y que recomiendo leer sobre Docker Swarm es <a href="https://amzn.to/2mIirti" rel="sponsored">The Devops 2.1 Toolkit</a> que lo explica detalladamente y todo el libro está orientado a como usarlo en un entorno de producción. Un libro más introductorio que también he leído y que está bastante bien es <a href="https://amzn.to/2mF3Xtj" rel="sponsored">Docker in Action</a>.</p>
<p>Un libro que me ha gustado mucho y que recomiendo leer sobre Docker Swarm es <a href="https://amzn.to/2mIirti" rel="sponsored">The Devops 2.1 Toolkit</a> que lo explica detalladamente y todo el libro está orientado a como usarlo en un entorno de producción. Un libro más introductorio que también he leído y que está bastante bien es <a href="https://amzn.to/4bkH5J8" rel="sponsored">Docker in Action</a>.</p>
<div class="media media-amazon">
<ul>
<li><a href="666d0aff3a2629cd87c205370bc5ae87" title=""></a></li><li><a href="9d344246cd59cd65a952305379c2556a" title=""></a></li><li><a href="2101ae950cfcfe9e69b6cc1210e4bf2c" title=""></a></li></ul>
<li><a href="https://amzn.to/3HN3gKx" title="Docker: Up &amp; Running: Shipping Reliable Containers in Production">Docker: Up &amp; Running: Shipping Reliable Containers in Production</a></li><li><a href="https://amzn.to/4bkH5J8" title="Docker in Action">Docker in Action</a></li><li><a href="https://amzn.to/3upxvUA" title="The DevOps 2.1 Toolkit: Docker Swarm: building testing deploying and monitoring services inside Docker Swarm clusters">The DevOps 2.1 Toolkit: Docker Swarm: building testing deploying and monitoring services inside Docker Swarm clusters</a></li></ul>
</div>
<p>Docker Swarm es una opción simple y que está integrada en Docker pero no ofrece todas las funcionalidades de algunas otras opciones que el algunos casos de uso algo más avanzados son necesarias o convenientes. <a href="https://www.nomadproject.io/">Nomad</a> es otra opción simple para gestionar un conjunto de aplicaciones o servicios pero con algunas funcionalidades adicionales que no posee Docker Swarm como escribo en <a href="https://picodotdev.github.io/blog-bitix/2019/04/introduccion-a-nomad-para-gestionar-aplicaciones-y-microservicios/">Introducción a Nomad para gestionar aplicaciones y microservicios</a>.</p>
<div class="alert alert-secondary sourcecode fs-6">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"dateModified": "2017-06-04T12:30:00+02:00",
"inLanguage": "es",

"wordCount": "1415",
"wordCount": "1418",
"license": "https://creativecommons.org/licenses/by-sa/4.0/",
"author": {
"@type": "Person",
Expand Down Expand Up @@ -318,10 +318,10 @@ <h1>Introducción a la base de datos NoSQL MongoDB</h1>
</div>
</div>
<p>MongoDB proporciona controladores para acceder a la base de datos desde los lenguajes de programación más populares como muestro en el artículo <a href="https://picodotdev.github.io/blog-bitix/2017/06/usar-la-base-de-datos-nosql-mongodb-con-java/">Usar la base de datos NoSQL MongoDB con Java</a>.</p>
<p>El libro <a href="https://amzn.to/2qvYqqU" rel="sponsored">MongoDB in Action</a> es un buen material de referencia para dominar esta base de datos NoSQL con consejos prácticos de como guardar la información y como administrar la base de datos para replicar los datos en un <em>cluster</em>, escalar y otros temas administrativos como crear copias de seguridad, rendimiento, seguridad o monitorización.</p>
<p>El libro <a href="https://amzn.to/3UmtZVP" rel="sponsored">MongoDB in Action</a> es un buen material de referencia para dominar esta base de datos NoSQL con consejos prácticos de como guardar la información y como administrar la base de datos para replicar los datos en un <em>cluster</em>, escalar y otros temas administrativos como crear copias de seguridad, rendimiento, seguridad o monitorización.</p>
<div class="media media-amazon">
<ul>
<li><a href="53e36564344401d0a3e0f29a4cef1968" title=""></a></li></ul>
<li><a href="https://amzn.to/3UmtZVP" title="MongoDB in Action">MongoDB in Action</a></li></ul>
</div>
<p><a href="https://picodotdev.github.io/blog-bitix/2017/05/introduccion-a-la-base-de-datos-relacional-postgresql/">La base de datos PostgreSQL</a> es una de las mejores opciones en el ámbito de las bases de datos relacionales y el potente lenguaje SQL, las propiedades ACID o el PL/pgSQL entre otras funcionalidades hará que siga siendo una de las mejores opciones para almacenar de forma persistente la preciosa información. En los casos que la escalabilidad o la estructuración de la información en documentos se un factor determinante MongoDB es una buena opción. Ambas opciones no son excluyentes, según el caso estos dos sistemas de información se podrán combinar para obtener lo mejor de cada uno de ellos.</p>
<div class="reference">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"dateModified": "2017-05-28T12:00:00+02:00",
"inLanguage": "es",

"wordCount": "3353",
"wordCount": "3364",
"license": "https://creativecommons.org/licenses/by-sa/4.0/",
"author": {
"@type": "Person",
Expand Down Expand Up @@ -480,7 +480,7 @@ <h2 id="otras">Otras</h2>
<p>Por todas estas características se considera a PostgreSQL una de las bases de datos relacionales más avanzadas existentes. Hay mucha literatura sobre las bases de datos relacionales desde el lenguaje SQL en general, libros específicos sobre PostgreSQL o como evitar errores diseño al estructurar la información en tablas y columnas.</p>
<div class="media media-amazon">
<ul>
<li><a href="e91efc7d7df2c1cbbccc2793a1e9d0be" title=""></a></li><li><a href="debb8456d091330663a1c10f654fd5b8" title=""></a></li><li><a href="2f3d39f7290758074e90a66beda9e253" title=""></a></li></ul>
<li><a href="https://amzn.to/3OwdLWq" title="Mastering PostgreSQL 15">Mastering PostgreSQL 15</a></li><li><a href="https://amzn.to/3SnZU5A" title="Learning PostgreSQL">Learning PostgreSQL</a></li><li><a href="https://amzn.to/3uhZkhK" title="SQL Antipatterns: Avoiding the Pitfalls of Database Programming">SQL Antipatterns: Avoiding the Pitfalls of Database Programming</a></li></ul>
</div>
<p>En caso de optar por una base de datos NoSQL para persistir la información <a href="https://picodotdev.github.io/blog-bitix/2017/05/introduccion-a-la-base-de-datos-nosql-mongodb/">la base de datos NoSQL MongoDB</a> permite guardar los datos en forma de documentos y conseguir la escalabilidad que las bases de datos relacionales con sus propiedades ACID es difícil.</p>
<div class="reference">
Expand All @@ -501,6 +501,10 @@ <h2 id="otras">Otras</h2>
</p>


<div class="alert alert-info fs-6" role="alert">
<span class="glyphicon glyphicon-info-sign" aria-hidden="true"></span> Este artículo incluye algunos enlaces de afiliado como Amazon que considero relevante en el contenido del artículo y para el lector. En caso de hacer una comprar a través de estos enlaces recibo una pequeña comisión, sin que afecte al precio del producto, que me ayuda a seguir publicando nuevos artículos y realizar <a href="https://picodotdev.github.io/blog-bitix/series/donacion/">pequeñas donaciones a proyectos de software libre</a>. En caso de que el artículo te haya resultado de interés y útil considera realizar la compra a través de alguno de los enlaces de afiliado del artículo, es correcto también ignorarlos.
</div>

</article>
<div>
<hr>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@
"dateModified": "2017-06-11T12:00:00+02:00",
"inLanguage": "es",

"wordCount": "893",
"wordCount": "897",
"license": "https://creativecommons.org/licenses/by-sa/4.0/",
"author": {
"@type": "Person",
Expand Down Expand Up @@ -314,7 +314,7 @@ <h1>Introducción a la base de datos NoSQL Redis</h1>
<p>Para un conocimiento mucho más detallado de las posibilidades de esta base de datos el libro <a href="https://amzn.to/2s9CYfJ" rel="sponsored">Mastering Redis</a> o <a href="https://amzn.to/2rio3vH" rel="sponsored">Redis in Action</a> son un buen inicio.</p>
<div class="media media-amazon">
<ul>
<li><a href="8459459236559fee49442452db7fb5b2" title=""></a></li><li><a href="3d85e30c0781f28d90d25591d5183d0d" title=""></a></li></ul>
<li><a href="https://amzn.to/3w243ob" title="Mastering Redis">Mastering Redis</a></li><li><a href="https://amzn.to/3w1mEkl" title="Redis in Action">Redis in Action</a></li></ul>
</div>
<div class="alert alert-secondary sourcecode fs-6">
<img src="/blog-bitix/assets/images/icons/terminal.svg" width="64" height="64" alt="Terminal" title="Terminal" class="lozad sourcecode-icon">
Expand Down
Loading

0 comments on commit 518f9dc

Please sign in to comment.