tag:blogger.com,1999:blog-297663952024-03-13T19:27:25.534-03:00Strange PatternsAbstract Thoughts and SimplicityGermánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.comBlogger469125tag:blogger.com,1999:blog-29766395.post-34406415654096058202024-01-10T10:02:00.004-03:002024-01-10T10:52:50.007-03:00Dudeney Unbroken Conjunction<p> 536 puzzles, #481, p.192, p.395 :</p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrzbfgC5bnFZKo077wMNdtYcQuHvwdWhJpjyiW6fu1Oo0fp4AQE4UOZZ01_4jswAQeYOI555DvHc_kCM2dTJiA9C8h2GwE0Y-GOyu7jLfTJnNNFF_bkLfoXdk2187tYpBq-cI4qHowvRujR0UOsboQfHgLnr9idLOxmnnqiwQBdLcJRBuSfa8/s548/dudeney1.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="314" data-original-width="548" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjrzbfgC5bnFZKo077wMNdtYcQuHvwdWhJpjyiW6fu1Oo0fp4AQE4UOZZ01_4jswAQeYOI555DvHc_kCM2dTJiA9C8h2GwE0Y-GOyu7jLfTJnNNFF_bkLfoXdk2187tYpBq-cI4qHowvRujR0UOsboQfHgLnr9idLOxmnnqiwQBdLcJRBuSfa8/s16000/dudeney1.png" /></a></div><br /> <p></p><p><span style="font-family: courier;">1 = 1<br />2 = 2<br />3 = 3<br />4 = 1 + 3<br />5 = 3 + 2<br />6 = 3 +3<br /> 7 = 1 + 3 + 3<br />8 = 3 + 3 + 2<br />9 = 1 + 3 + 3 + 2<br /></span><br /></p><p> <br /></p><p> </p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-79361931746315979512023-12-11T22:19:00.001-03:002023-12-11T22:19:20.722-03:00Classic Game Programming on the NES<p>Reviewer:</p><p>Make your own retro video game<br />Tony Cruise<br />MEAP began October 2023 Publication in Spring 2024 (estimated)</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNKF7JnC5MnJOP7LbGi1qnK7FS0N2RhS3fipH1XyEjzvyaT0z43vDSFValVR0hKsnr2AMaEVSbGOJFKxyfAEM1f4m5-5h68BA4RS7kXoZnfzg7rr5J7k5_Ri8HEDevlB_7GDrNzTfMAu-JAeBErZy3-tf6I7NbyUfHCq38-fN_6fGwAXkowGg/s2775/Cruise-MEAP-HI.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="2775" data-original-width="2213" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiNKF7JnC5MnJOP7LbGi1qnK7FS0N2RhS3fipH1XyEjzvyaT0z43vDSFValVR0hKsnr2AMaEVSbGOJFKxyfAEM1f4m5-5h68BA4RS7kXoZnfzg7rr5J7k5_Ri8HEDevlB_7GDrNzTfMAu-JAeBErZy3-tf6I7NbyUfHCq38-fN_6fGwAXkowGg/s320/Cruise-MEAP-HI.png" width="255" /></a></div><br /><p><a href="https://www.manning.com/books/classic-game-programming-on-the-nes">https://www.manning.com/books/classic-game-programming-on-the-nes</a><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-1349150952828303052023-09-13T23:04:00.004-03:002023-09-13T23:04:58.613-03:00Ford Circles<p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9RkV5ducgn-WbpWN5gvCUL433FXQN4Jv1vw0pMBJg3kD5sK4FhPz0-53kcBr0CQGZfNZ-yaVFTj5JJO29RgUNL04bGexf1rDQuMAAcXgkjdEktmK79tZyz4QtXe-30ttfp8mfazrZyrT1hg8R2KUpAe1TB0PpLAmS3fK_FKfrXASXYAMqTCw/s987/Screen-2023-08-24_19-19-33.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="445" data-original-width="987" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi9RkV5ducgn-WbpWN5gvCUL433FXQN4Jv1vw0pMBJg3kD5sK4FhPz0-53kcBr0CQGZfNZ-yaVFTj5JJO29RgUNL04bGexf1rDQuMAAcXgkjdEktmK79tZyz4QtXe-30ttfp8mfazrZyrT1hg8R2KUpAe1TB0PpLAmS3fK_FKfrXASXYAMqTCw/w400-h180/Screen-2023-08-24_19-19-33.png" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVZfNbkWxIu2KPRPcHo5V4aNgHrkqIwqYSfv9pyfDK_hZqWTeMl8Ra-0Ms9fU81OgisA9VGhHWlcBGiwzOypYGT0ZEOKnHBYNgP-CQrbXGUmuvKmZSFxbnswScccyipoae-ixjLwMab2NedcbgLMnmMrm_jllrKYjw8E-Ju7kAV0apyLpJTiA/s931/Screen-2023-08-24_19-19-39.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="452" data-original-width="931" height="194" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjVZfNbkWxIu2KPRPcHo5V4aNgHrkqIwqYSfv9pyfDK_hZqWTeMl8Ra-0Ms9fU81OgisA9VGhHWlcBGiwzOypYGT0ZEOKnHBYNgP-CQrbXGUmuvKmZSFxbnswScccyipoae-ixjLwMab2NedcbgLMnmMrm_jllrKYjw8E-Ju7kAV0apyLpJTiA/w400-h194/Screen-2023-08-24_19-19-39.png" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTChS3QQtU8-fcpAAMlJlCMMBE5df6JdAVQhM7ScFzkzQ9i7xG4E2YIF-H-X6sDhMmMlyDfBvAeHzSH4P9DbgcqrkYN_sdnlrRHg2fRbbWiqE4QC_EM2Rqed5Eqkpo3Qlu76eHa4cjziHMaMO8ArxUjK8tLSoedA7Ida4RSYXsmtFgn55qsw4/s982/Screen-2023-08-24_19-19-47.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="451" data-original-width="982" height="184" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTChS3QQtU8-fcpAAMlJlCMMBE5df6JdAVQhM7ScFzkzQ9i7xG4E2YIF-H-X6sDhMmMlyDfBvAeHzSH4P9DbgcqrkYN_sdnlrRHg2fRbbWiqE4QC_EM2Rqed5Eqkpo3Qlu76eHa4cjziHMaMO8ArxUjK8tLSoedA7Ida4RSYXsmtFgn55qsw4/w400-h184/Screen-2023-08-24_19-19-47.png" width="400" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgyTDrEcvlbwqC3hkArnar1mWlN0AvLCtLFiJd187cKXUU095wScp8g5w6J1MjIRGRFeYeUeTyDV7NXKJWHCUOZcUFb7DdPKB_Xs9L8HhXC8B8lo3uoI5wxxwfRUnqn2z70NL7DAFGvu3-uam87pGhtgQAqNUXewAnB_tZdRMLxowgjlEGEl0/s618/Screen-2023-08-24_19-20-19.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="456" data-original-width="618" height="295" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjgyTDrEcvlbwqC3hkArnar1mWlN0AvLCtLFiJd187cKXUU095wScp8g5w6J1MjIRGRFeYeUeTyDV7NXKJWHCUOZcUFb7DdPKB_Xs9L8HhXC8B8lo3uoI5wxxwfRUnqn2z70NL7DAFGvu3-uam87pGhtgQAqNUXewAnB_tZdRMLxowgjlEGEl0/w400-h295/Screen-2023-08-24_19-20-19.png" width="400" /></a></div><br /> <p></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-70278680707980909912023-08-16T15:27:00.003-04:002023-08-16T15:27:19.215-04:00Polling Consumer<p> El mal entendido HTTP Polling client.<br /></p><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcOSRzTR2IkBThMBZVErlrsW6zFmcdxwddLM3Mp2sPzWLSBN908JFnGUFIr3_Ge47nTTxv6TooSvCA1IbPi663r_ceET2yU5j5doT6HiIfJZ0pzg_4pIHddapdCAhaPJgqAAGOi9QRzrB6JBco8Djv5ynZ0OrB20Y_QlujnNYYuQtDJ53wxuM/s347/PollingConsumerSolution.gif" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="129" data-original-width="347" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcOSRzTR2IkBThMBZVErlrsW6zFmcdxwddLM3Mp2sPzWLSBN908JFnGUFIr3_Ge47nTTxv6TooSvCA1IbPi663r_ceET2yU5j5doT6HiIfJZ0pzg_4pIHddapdCAhaPJgqAAGOi9QRzrB6JBco8Djv5ynZ0OrB20Y_QlujnNYYuQtDJ53wxuM/s16000/PollingConsumerSolution.gif" /></a></div>Mas detalles: <br /><p></p><p><a href="https://www.enterpriseintegrationpatterns.com/patterns/messaging/PollingConsumer.html">https://www.enterpriseintegrationpatterns.com/patterns/messaging/PollingConsumer.html</a></p><br />Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-57282286449752138872023-07-14T09:25:00.003-04:002023-07-14T23:09:53.607-04:00An austere program using C pointers<p> C Cheat Sheet for introduction to Pointers 101:</p><p><br /></p>
<script src="https://gist.github.com/devwebcl/66c30438cc5f4d941198957098ab22cc.js"></script>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-1960548142079544742023-06-24T10:18:00.002-04:002023-06-24T10:22:57.902-04:00Introducing ReScript <p>Technical Reviewer:</p><p><b>Introducing ReScript</b><br />Functional Programming for Web Applications, Danny Yang, Apress 2023.</p><p><br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikzvG0JphlhDZeSYQMOGqLDJTmtxZrdiA1Vgui_YmAn-4-dfwQdtJveU5Xpqor3kmsDKdeEA4jIq6Un8pDTmrUteX6Wx4ir1u5dzWZx6TmvXLaku2obFQ95F2vWfHfa1mjSuqR99D-v7NRVMgWsPC_cms9sD1DwoJuQ56BOKccSWvzBT3eAgM/s1254/rescript.webp" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1254" data-original-width="827" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikzvG0JphlhDZeSYQMOGqLDJTmtxZrdiA1Vgui_YmAn-4-dfwQdtJveU5Xpqor3kmsDKdeEA4jIq6Un8pDTmrUteX6Wx4ir1u5dzWZx6TmvXLaku2obFQ95F2vWfHfa1mjSuqR99D-v7NRVMgWsPC_cms9sD1DwoJuQ56BOKccSWvzBT3eAgM/s320/rescript.webp" width="211" /></a></div><br /><p><a href="https://link.springer.com/book/10.1007/978-1-4842-8888-7">https://link.springer.com/book/10.1007/978-1-4842-8888-7</a><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-53121621922025806252023-06-22T10:22:00.002-04:002023-06-22T10:22:13.496-04:00Contumacia<article id="AenlxU8">
<header class="f" title="Definición de contumacia"><u><b>contumacia</b></u></header>
<p class="n2">Del <abbr title="latín">lat.</abbr> <em>contumacia.</em></p>
<p class="j" id="4SBh6QQ"><span class="n_acep">1. </span><abbr class="d" title="nombre femenino">f.</abbr> <span data-id="ZRvwDLx">Tenacidad</span> <span data-id="c8HoARq|c8HrfrV|c8IFPyp">y</span> <span data-id="EI6YXVm">dureza</span> <span data-id="EuPaWdO">en</span> <span data-id="OH45BSY">mantener</span> <span data-id="b6hEWeB|b6iKApr">un</span> <b><span data-id="G47B9qL">error</span></b>.</p>
<p class="j" id="4SBjNEk"><span class="n_acep">2. </span><abbr class="g" title="nombre femenino">f.</abbr> <abbr class="c" title="Derecho">Der.</abbr> <a class="a" href="https://dle.rae.es/?id=VJnqQuF#DL3G3Up">rebeldía</a> (‖ <span data-id="HZKtGsK|HZL8sZX|HZSVumi">falta</span> <span data-id="BtDkacL|BtFYznp">de</span> <span data-id="9zAP1CD">comparecencia</span> <span data-id="EuPaWdO">en</span> <span data-id="b6hEWeB|b6iKApr">un</span> <span data-id="MbWK64n">juicio</span>).</p></article><article id="AenlxU8"> <article id="Aeo7fgT">
<header class="f" title="Definición de contumaz"><u><b>contumaz</b></u></header>
<p class="n2">Del <abbr title="latín">lat.</abbr> <em>contŭmax, -ācis.</em></p>
<p class="j" id="4SBpUNh"><span class="n_acep">1. </span><abbr class="d" title="adjetivo">adj.</abbr> <span data-id="VJm9hUF">Rebelde</span>, <span data-id="TgypH0M|Th0VLmV">porfiado</span> <span data-id="c8HoARq|c8HrfrV|c8IFPyp">y</span> <span data-id="ZS8ViZp">tenaz</span> <span data-id="EuPaWdO">en</span> <span data-id="OH45BSY">mantener</span> <span data-id="b6hEWeB|b6iKApr">un</span> <span data-id="G47B9qL">error</span>.</p>
<p class="j" id="4SDS05R"><span class="n_acep">2. </span><abbr class="g" title="adjetivo">adj.</abbr> <span data-id="BxLriBU|DgXmXNM">Dicho</span> <span data-id="BtDkacL|BtFYznp">de</span> <span data-id="b67JJSq|b6hEWeB|b6iKApr">una</span> <span data-id="ObWMmRJ">materia</span> <span data-id="QlqTEX0|Qlr66uc|Qltkqeu">o</span> <span data-id="BtDkacL|BtFYznp">de</span> <span data-id="b67JJSq|b6hEWeB|b6iKApr">una</span> <span data-id="YpIehqm|YpTWS0u">sustancia</span>: <span data-id="UkbUarn">Que</span> <span data-id="XNTSeAe|XNVjCmd">se</span> <span data-id="GsQx9ii|GsZ6PSI">estima</span> <span data-id="UOGLw3j">propia</span> <span data-id="Rp1CuT2|RsVKhBv|RwYmdsn|RxSczPr">para</span> <span data-id="WGwwwnE">retener</span> <span data-id="c8HoARq|c8HrfrV|c8IFPyp">y</span> <span data-id="UNDoJOJ">propagar</span> <span data-id="ESraxkH|NWnohQu|NWofhZh">los</span> <span data-id="J9CBwrs">gérmenes</span> <span data-id="BtDkacL|BtFYznp">de</span> <span data-id="b6hEWeB|b6iKApr">un</span> <span data-id="ATnH1L7|ATp5sNO">contagio</span>.</p>
<p class="j" id="4SE9EWw"><span class="n_acep">3. </span><abbr class="g" title="adjetivo">adj.</abbr> <abbr class="c" title="Derecho">Der.</abbr> <span data-id="BxLriBU|DgXmXNM">Dicho</span> <span data-id="BtDkacL|BtFYznp">de</span> <span data-id="b67JJSq|b6hEWeB|b6iKApr">una</span> <span data-id="SjUIL8Z|SjwafWr">persona</span>: <a class="a" href="https://dle.rae.es/?id=VJm9hUF#DL2cEMJ">rebelde</a> (‖ <span data-id="Bxf3Wn7|BxiWP4r">declarada</span> <span data-id="EuPaWdO">en</span> <span data-id="VJnqQuF">rebeldía</span>). <abbr class="d" title="Usado también como sustantivo">U. t. c. s.</abbr></p>
</article></article><p></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-59414984581813692082023-06-04T11:06:00.006-04:002023-11-06T17:58:10.654-03:00#PiDay<p></p><div class="css-1dbjc4n"><div class="css-1dbjc4n r-1s2bzr4"><div class="css-901oao r-18jsvk2 r-37j5jr r-1inkyih r-16dba41 r-135wba7 r-bcqeeo r-bnwqim r-qvutc0" data-testid="tweetText" dir="auto" id="id__ixof76t8e2" lang="en"><span class="css-901oao css-16my406 r-poiln3 r-bcqeeo r-qvutc0">Being mentioned on Knuth's website for celebrating Pi day 2023 and appearing in TAOCP book 4b makes me very proud. </span><span class="r-18u37iz"><a class="css-4rbku5 css-18t94o4 css-901oao css-16my406 r-1cvl2hr r-1loqt21 r-poiln3 r-bcqeeo r-qvutc0" dir="ltr" href="https://twitter.com/hashtag/PiDay?src=hashtag_click" role="link">#PiDay</a></span></div><div class="css-901oao r-18jsvk2 r-37j5jr r-1inkyih r-16dba41 r-135wba7 r-bcqeeo r-bnwqim r-qvutc0" data-testid="tweetText" dir="auto" id="id__ixof76t8e2" lang="en"><span class="r-18u37iz"> </span></div><div class="css-901oao r-18jsvk2 r-37j5jr r-1inkyih r-16dba41 r-135wba7 r-bcqeeo r-bnwqim r-qvutc0" data-testid="tweetText" dir="auto" id="id__ixof76t8e2" lang="en"><span class="r-18u37iz"><a href="https://www-cs-faculty.stanford.edu/~knuth/news23.html">https://www-cs-faculty.stanford.edu/~knuth/news23.html</a></span></div><div class="css-901oao r-18jsvk2 r-37j5jr r-1inkyih r-16dba41 r-135wba7 r-bcqeeo r-bnwqim r-qvutc0" data-testid="tweetText" dir="auto" id="id__ixof76t8e2" lang="en"><span class="r-18u37iz"> </span></div><div class="css-901oao r-18jsvk2 r-37j5jr r-1inkyih r-16dba41 r-135wba7 r-bcqeeo r-bnwqim r-qvutc0" data-testid="tweetText" dir="auto" id="id__ixof76t8e2" lang="en"><span class="r-18u37iz"><a href="https://www-cs-faculty.stanford.edu/~knuth/taocp.html">https://www-cs-faculty.stanford.edu/~knuth/taocp.html</a></span></div><div class="css-901oao r-18jsvk2 r-37j5jr r-1inkyih r-16dba41 r-135wba7 r-bcqeeo r-bnwqim r-qvutc0" data-testid="tweetText" dir="auto" id="id__ixof76t8e2" lang="en"><span class="r-18u37iz"> </span></div><div class="css-901oao r-18jsvk2 r-37j5jr r-1inkyih r-16dba41 r-135wba7 r-bcqeeo r-bnwqim r-qvutc0" data-testid="tweetText" dir="auto" id="id__ixof76t8e2" lang="en"><span class="r-18u37iz"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTANd4TV-F4ZVrCsu0Jljj2uTZ8lK2QYryOrWNZw-yChRh8RiC_ncNt03G_ojDWWUgmPazkbKycTweFmx6sn7yvshxR_gPRxfu-dCr_XvNRlvwXkSQ1VHCR2HpJPzl1cX4WBwY8KKI9wos4U7K_OzOJ9RlyyTakrEMt7EAlU64XrGKC6JJ/s904/knuth5.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="600" data-original-width="904" height="424" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgTANd4TV-F4ZVrCsu0Jljj2uTZ8lK2QYryOrWNZw-yChRh8RiC_ncNt03G_ojDWWUgmPazkbKycTweFmx6sn7yvshxR_gPRxfu-dCr_XvNRlvwXkSQ1VHCR2HpJPzl1cX4WBwY8KKI9wos4U7K_OzOJ9RlyyTakrEMt7EAlU64XrGKC6JJ/w640-h424/knuth5.png" width="640" /></a></div><br /> <br /></span></div></div></div>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-77556325182971619842023-05-30T10:05:00.003-04:002023-05-30T10:05:33.341-04:00Galimatías<p class="n2">Del <abbr title="francés">fr.</abbr> <em>galimatias</em> 'discurso o escrito embrollado', y este del <abbr title="griego">gr.</abbr> κατὰ Ματθαῖον <em>katà Matthaîon</em> 'según Mateo', por la manera en que este evangelista describe la genealogía que figura al comienzo de su evangelio.</p>
<p class="j" id="8AfQS47"><span class="n_acep">1. </span><abbr class="d" title="nombre masculino coloquial">m. <i>coloq</i>.</abbr> <span data-id="N7BnIFO">Lenguaje</span> <span data-id="RHmIfCC">oscuro</span> <span data-id="TgJ7yhD">por</span> <span data-id="ESraxkH|MiZ5vEt|NWnohQu">la</span> <span data-id="L8AcKyN">impropiedad</span> <span data-id="BtDkacL|BtFYznp">de</span> <span data-id="ESraxkH|MiZ5vEt|NWnohQu">la</span> <span data-id="IPhICME">frase</span> <span data-id="QlqTEX0|Qlr66uc|Qltkqeu">o</span> <span data-id="TgJ7yhD">por</span> <span data-id="ESraxkH|MiZ5vEt|NWnohQu">la</span> <span data-id="AHdCwud">confusión</span> <span data-id="BtDkacL|BtFYznp">de</span> <span data-id="ESraxkH|MiZ5vEt|NWnohQu">las</span> <span data-id="KtN78ZO|KtbGpg9|KtzGOfe">ideas</span>.</p>
<p class="j" id="8Ag3saL"><span class="n_acep">2. </span><abbr class="g" title="nombre masculino">m.</abbr> <abbr class="d" title="coloquial"><i>coloq</i>.</abbr> <span data-id="AHdCwud">Confusión</span>, <span data-id="DF5Xi1F">desorden</span>, <span data-id="NDhqOIi|NO5iwRO">lío</span>.</p><p class="j" id="8Ag3saL"> </p><p class="j" id="8Ag3saL">----</p><p class="j" id="8Ag3saL">Un <b>galimatías</b> es un término usado para describir un lenguaje
complicado y casi sin sentido, embrollado, lenguaje oscuro por la
impropiedad de la frase o por la confusión de las ideas. Puede tener
texto cifrado. Se usa cuando alguien trata de expresarse de una forma
complicada. Su aplicación no tiene que ver con connotaciones de
desconocimiento del lenguaje o entonación extranjera. Se refiere a las
personas que inherentemente no hablan de forma clara. <br /></p><p></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-46752389634175563792023-05-29T14:59:00.001-04:002023-05-29T15:36:30.858-04:00Knuth's Punk Font<p>Knuth has a Punk font for Tex/Metafont/Latex project :P</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpbvV_qgVlbeyTU_X2V1t3fSJgFOwh5edakWwtJ9XOYxrkk0gUQ1-3wb2xWsV6yhEzQhjQ-TplckfWv31Ds3yhbcGSlB3TBtUgVOg3C1fvzYbTWefyzcx_0SwrSQUhmDWT_vhLWZ6v_iIPdsiHEXaNRF6wedttL7030XzGnw4hYHiG5sn-/s600/punk.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="200" data-original-width="600" height="107" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjpbvV_qgVlbeyTU_X2V1t3fSJgFOwh5edakWwtJ9XOYxrkk0gUQ1-3wb2xWsV6yhEzQhjQ-TplckfWv31Ds3yhbcGSlB3TBtUgVOg3C1fvzYbTWefyzcx_0SwrSQUhmDWT_vhLWZ6v_iIPdsiHEXaNRF6wedttL7030XzGnw4hYHiG5sn-/s320/punk.png" width="320" /></a></div><p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrrYWousvOYXM_eqVQZpY4ZDVkDkpX-fqjGOusfnaLf587Yoic_BUg0DdwU96AtztEmFZNi5K7RQXdvDxLhWS87FuGUxukTFWGuKdF8OlyYWoMRKWP555pH71zkMuZjp5SOHhOWaDUGGWtl9WE3-g7AFH245PcSX9J_beHlnCKM4EpVagq/s897/Screenshot%20(5113).png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="487" data-original-width="897" height="217" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrrYWousvOYXM_eqVQZpY4ZDVkDkpX-fqjGOusfnaLf587Yoic_BUg0DdwU96AtztEmFZNi5K7RQXdvDxLhWS87FuGUxukTFWGuKdF8OlyYWoMRKWP555pH71zkMuZjp5SOHhOWaDUGGWtl9WE3-g7AFH245PcSX9J_beHlnCKM4EpVagq/w400-h217/Screenshot%20(5113).png" width="400" /></a></div><br /><p><br /></p><p><a href="https://ctan.org/pkg/punk?lang=en">https://ctan.org/pkg/punk?lang=en</a></p><p><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-27845502633670217592023-05-26T15:36:00.003-04:002023-05-26T15:36:53.068-04:00 Architecture Decision Records (ADR)<p></p><p>An Architectural Decision (AD) is a justified software design choice that addresses a functional or non-functional requirement that is architecturally significant.<br /><br />This was done by Michael Nygard, author of release it!</p><p>More details:</p><ul style="text-align: left;"><li><a href="https://adr.github.io/">https://adr.github.io/</a></li><li><a href="https://github.com/mtnygard/adr-tools">https://github.com/mtnygard/adr-tools</a></li><li><a href="https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions">https://cognitect.com/blog/2011/11/15/documenting-architecture-decisions</a></li></ul><p><br /><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-55207289241954287192023-03-14T12:01:00.005-03:002023-03-14T12:02:15.173-03:00Happy Pi day 2023<p><span style="font-family: verdana;"><span style="font-size: xx-small;"> 3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989380952572010654858632788659361533818279682303019520353018529689957736225994138912497217752834791315155748572424541506959508295331168617278558890750983817546374649393192550604009277016711390098488240128583616035637076601047101819429555961989467678374494482553797747268471040475346462080466842590694912933136770289891521047521620569660240580381501935112533824300355876402474964732639141992726042699227967823547816360093417216412199245863150302861829745557067498385054945885869269956909272107975093029553211653449872027559602364806654991198818347977535663698074265425278625518184175746728909777727938000816470600161452491921732172147723501414419735685481613611573525521334757418494684385233239073941433345477624168625189835694855620992192221842725502542568876717904946016534668049886272327917860857843838279679766814541009538837863609506800642251252051173929848960841284886269456042419652850222106611863067442786220391949450471237137869609563643719172874677646575739624138908658326459958133904780275900994657640789512694683983<br /></span></span></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-49025101064552966562023-02-22T17:55:00.008-03:002023-02-22T17:56:31.962-03:00 Modern C++ for Absolute Beginners 2nd ed<p>Technical Reviewer:</p><p>Modern C++ for Absolute Beginners 2nd ed. by Slobodan Dmitrović (Apress, 2023). <br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVZPr8JhTXhzGYwblP7DBkqe62ZekzEIGcEnLzKeurVLV3y32YaNxDURp50u41p4pSrkrbdi_wbyREk3ucs1uP0_AEg8uSKmviL32tdCnEUZNEMwxx9yuIVZwR1RIs_gitVU0vCqlO2z8SIGECkdOpWLF5cMAHq72geGzw7xOCJyKkaRCk/s285/2da%20978-1-4842-9273-0.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="285" data-original-width="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVZPr8JhTXhzGYwblP7DBkqe62ZekzEIGcEnLzKeurVLV3y32YaNxDURp50u41p4pSrkrbdi_wbyREk3ucs1uP0_AEg8uSKmviL32tdCnEUZNEMwxx9yuIVZwR1RIs_gitVU0vCqlO2z8SIGECkdOpWLF5cMAHq72geGzw7xOCJyKkaRCk/s16000/2da%20978-1-4842-9273-0.jpg" /></a></div><p></p><p><a href="https://www.link.springer.com/book/10.1007/978-1-4842-9274-7">https://www.link.springer.com/book/10.1007/978-1-4842-9274-7</a></p><p><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-16234882734195018702023-01-19T09:44:00.002-03:002023-01-19T09:44:19.253-03:00Modern C Up and Running<p>Technical Reviewer:</p><p><br /><b>Modern C Up and Running</b><br />A Programmer's Guide to Finding Fluency and Bypassing the Quirks<br />© 2022 <br /></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcDxRYsaRpVC5YYMZOkQB88ujct58x_SdiSuzftLDMET2lGJ_ki5OpK75yzBKHvXRg0ReoADRZWb2IpIBWp_1UgW9mc0d9FHjotf2fFQoMixRhCmdP4DXToQwCaCeREWYMkych7ORTAGPmxhMElK0Yqlcjx1b7KWb7sm8UYAw6uVw1egRn/s689/accelerated%20C.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="689" data-original-width="454" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhcDxRYsaRpVC5YYMZOkQB88ujct58x_SdiSuzftLDMET2lGJ_ki5OpK75yzBKHvXRg0ReoADRZWb2IpIBWp_1UgW9mc0d9FHjotf2fFQoMixRhCmdP4DXToQwCaCeREWYMkych7ORTAGPmxhMElK0Yqlcjx1b7KWb7sm8UYAw6uVw1egRn/s320/accelerated%20C.png" width="211" /></a></div><br /><p><a href="https://link.springer.com/book/10.1007/978-1-4842-8676-0">https://link.springer.com/book/10.1007/978-1-4842-8676-0</a><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-73799312333226675612023-01-18T08:43:00.008-03:002023-01-18T08:43:43.878-03:00Practical Haskell (2022)<p>Technical Reviewer:</p><p><a href="https://link.springer.com/book/10.1007/978-1-4842-8581-7">https://link.springer.com/book/10.1007/978-1-4842-8581-7</a></p><p>Practical Haskell<br />A Real-World Guide to Functional Programming<br />© 2022</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1oqCFM2DCqt0lOtxEFNGd8PbWpc-F2m-Ocofm90d8jtAPlLtuL6EFCdxrDXjUuZa_i4XZCk46lDwEWrJDJOZfGbF4Id013ZSkHNpIeeokhno2B_-R_fnLDLCSoOa_xzaoetsoob84ruXDEF8wD28IsfvuKqL07PrwzoiKlP9CLZTGWcRs/s688/phaskell.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="688" data-original-width="479" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg1oqCFM2DCqt0lOtxEFNGd8PbWpc-F2m-Ocofm90d8jtAPlLtuL6EFCdxrDXjUuZa_i4XZCk46lDwEWrJDJOZfGbF4Id013ZSkHNpIeeokhno2B_-R_fnLDLCSoOa_xzaoetsoob84ruXDEF8wD28IsfvuKqL07PrwzoiKlP9CLZTGWcRs/s320/phaskell.png" width="223" /></a></div><br /><p><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-5124248500481171142023-01-17T13:45:00.004-03:002023-07-03T09:40:09.759-04:00Programming for Absolute Beginners<p>Technical Proofer:<br /><br />© 2023, Programming for Absolute Beginners, Using the JavaScript Programming Language, Jonathan Bartlett<br /></p><p><a href="https://link.springer.com/book/10.1007/978-1-4842-8751-4">https://link.springer.com/book/10.1007/978-1-4842-8751-4</a></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiB6Yc53p9wiRKB-sxEw9k0hlMm_PTnq_fSB7g0jWCJcD3du3uKNYhPFYQagQ4LM3oLmFsZKVUHsuBW7leRidFKd14xhaOJ6lxo3Ox96_rba7dyAkIFYDFmKJl5c8MamY9x2N-mXULBGKWDtR_3BWwzVVa2ZtSsthjxHn2NArQVnoLtzR8T/s686/pab.png" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="686" data-original-width="485" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiB6Yc53p9wiRKB-sxEw9k0hlMm_PTnq_fSB7g0jWCJcD3du3uKNYhPFYQagQ4LM3oLmFsZKVUHsuBW7leRidFKd14xhaOJ6lxo3Ox96_rba7dyAkIFYDFmKJl5c8MamY9x2N-mXULBGKWDtR_3BWwzVVa2ZtSsthjxHn2NArQVnoLtzR8T/s320/pab.png" width="226" /></a></div><br /><p><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-53738496803380680312022-11-28T09:44:00.004-03:002022-11-28T09:45:29.373-03:00Security Lists rules same subnet<p>It is always mandatory to have an ingress & egress for two nodes even if they are in the same subnet:</p><p>TODO: draw.io</p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmT0aNwnvyT2wQeR3uu_mn0tgj7o2K7tkBsMZqMXsj3J4_Rqful5wfUES7rSpYc56PlfG2acubxfvJ0Wvpt6xV7_0H1VVDrDDvMrGDzATiH1aYrjMmBIx8G2-CE0k7j7CQ9q1RDZTUmfhhQUkWvGMoHZSQJNlRdxasqwS2XOxDAShmX1ou/s2959/2computes-subnet.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1645" data-original-width="2959" height="178" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmT0aNwnvyT2wQeR3uu_mn0tgj7o2K7tkBsMZqMXsj3J4_Rqful5wfUES7rSpYc56PlfG2acubxfvJ0Wvpt6xV7_0H1VVDrDDvMrGDzATiH1aYrjMmBIx8G2-CE0k7j7CQ9q1RDZTUmfhhQUkWvGMoHZSQJNlRdxasqwS2XOxDAShmX1ou/s320/2computes-subnet.jpg" width="320" /></a></div><br /><p><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-27806038526466752912022-10-17T09:23:00.005-03:002022-10-17T09:25:34.591-03:00Nmap cheat sheets<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidtJ9Oa9_X5mEPh4S6xVgAcgxD0c9xbWztRmw22wGHuz04F8GromZ8pR2014N5ZdN8NBXM-o9raZAfsGDvTvJKwQt1-KdLRZMb268_8ybdvv_fpOyzuME7-AP0TjiOZK5tDZdqPA7sY7120arMU3CUSoSJgauh0mEuSGAkpdnsfZ_oTLLa/s680/nmap%20cheat%20sheet.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="453" data-original-width="680" height="213" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEidtJ9Oa9_X5mEPh4S6xVgAcgxD0c9xbWztRmw22wGHuz04F8GromZ8pR2014N5ZdN8NBXM-o9raZAfsGDvTvJKwQt1-KdLRZMb268_8ybdvv_fpOyzuME7-AP0TjiOZK5tDZdqPA7sY7120arMU3CUSoSJgauh0mEuSGAkpdnsfZ_oTLLa/s320/nmap%20cheat%20sheet.jpg" width="320" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivr6c57K4oJQdvKMKz5sanwq4ucJyVIDDOmxdklwmrmF7e861MjyAdb6hMPXaaY7-FRIQLFEanpquSTte8z6QfkVAM6lzkPrUUt666Q8kQPinbWA1LDiCDaf6HxEMoyeufJfb_UEQ13vIK6FHNB-ZSgsgYZ2lLPyTeP-0BIYbXCoP6nAt3/s680/nmap4.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="456" data-original-width="680" height="215" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivr6c57K4oJQdvKMKz5sanwq4ucJyVIDDOmxdklwmrmF7e861MjyAdb6hMPXaaY7-FRIQLFEanpquSTte8z6QfkVAM6lzkPrUUt666Q8kQPinbWA1LDiCDaf6HxEMoyeufJfb_UEQ13vIK6FHNB-ZSgsgYZ2lLPyTeP-0BIYbXCoP6nAt3/s320/nmap4.jpg" width="320" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzX_-LRIS1C9IF_0VMQPGqm8lDZuVn70RPZwso0ac6Kg4JHM9qvEFEAS6WEIRcZM_6Nkt2PkiavjjDOoKpC6G56kPn0_mAdAeR6s-iIRKJK6y0Wc0TgV_wJBApDxCbRlF0jSh8wUY47IcInr7hEiNjp-a8iS4I88mmdDJnfws2aoiIvake/s680/nmap3.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="443" data-original-width="680" height="208" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgzX_-LRIS1C9IF_0VMQPGqm8lDZuVn70RPZwso0ac6Kg4JHM9qvEFEAS6WEIRcZM_6Nkt2PkiavjjDOoKpC6G56kPn0_mAdAeR6s-iIRKJK6y0Wc0TgV_wJBApDxCbRlF0jSh8wUY47IcInr7hEiNjp-a8iS4I88mmdDJnfws2aoiIvake/s320/nmap3.jpg" width="320" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNFwKPywvdKCkaZof-KN4Y4eEf_8ZpZlEo4DvvFIgBjuK5z8mso4VxbFK9XHI8gFZ6KhKNiuCBEezDq_oKs1eaj9jdkwXcqDKjOKaDHOrkBfFUngcAXoQQhOvmbOeDTitGRRxD7qx06soha5vo8QyyI5ga5qAZcN0mF0DBuvO2TG5T6kOS/s680/nmap2.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="680" data-original-width="535" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNFwKPywvdKCkaZof-KN4Y4eEf_8ZpZlEo4DvvFIgBjuK5z8mso4VxbFK9XHI8gFZ6KhKNiuCBEezDq_oKs1eaj9jdkwXcqDKjOKaDHOrkBfFUngcAXoQQhOvmbOeDTitGRRxD7qx06soha5vo8QyyI5ga5qAZcN0mF0DBuvO2TG5T6kOS/s320/nmap2.jpg" width="252" /></a></div><br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhk0N0tXz86MKbB4b0ICm1bCcqVlH1_HdtXs285WB-WcCpNeaEopBLIejJMj5CewnWJCbJt0f8-YYfMJkN-6eUUxt6QqB0nWQzJbovsVC2lgHjdTnBYWe4km2PP_xA76vXyk7jlJTS0wxHHW8p662jX6aYZ8q_YsYzH4nyRNjrhL--EZ5ii/s680/nmap1.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="480" data-original-width="680" height="226" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhk0N0tXz86MKbB4b0ICm1bCcqVlH1_HdtXs285WB-WcCpNeaEopBLIejJMj5CewnWJCbJt0f8-YYfMJkN-6eUUxt6QqB0nWQzJbovsVC2lgHjdTnBYWe4km2PP_xA76vXyk7jlJTS0wxHHW8p662jX6aYZ8q_YsYzH4nyRNjrhL--EZ5ii/s320/nmap1.jpg" width="320" /></a></div><a href="https://www.stationx.net/nmap-cheat-sheet/">https://www.stationx.net/nmap-cheat-sheet/</a><br /><p></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-11394951470783313132022-08-24T10:25:00.008-04:002022-08-24T10:25:50.464-04:00Functional Design and Architecture<p></p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7gQewpv99JsJUGZIOlFGLJFFDjbzSlhnWigeRjnB2GC3NSS4BT9nfOR_eMnufIobQepSuhUIULur1xGXjxXmHCBauuPnhDd91j8fO58RkdYkjZSWSMk5jdbHYS1yBniXOC-SX0-8G7du6pdufWXEJztue3anVGaepUdKvnvBMD_WzMFTf/s570/func%20haskell%20manning%20gonzalez%20morris%20uniq.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="212" data-original-width="570" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7gQewpv99JsJUGZIOlFGLJFFDjbzSlhnWigeRjnB2GC3NSS4BT9nfOR_eMnufIobQepSuhUIULur1xGXjxXmHCBauuPnhDd91j8fO58RkdYkjZSWSMk5jdbHYS1yBniXOC-SX0-8G7du6pdufWXEJztue3anVGaepUdKvnvBMD_WzMFTf/s16000/func%20haskell%20manning%20gonzalez%20morris%20uniq.png" /></a></div> <br /><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAMDRT0Wm5BGR7uGvAkpB7OXOj9nDDDu8ni7tOsf-zfIqtbbmVcODinhgIuLs-_x_j6L3F-31tOUmcUAbEi2_erTffLFZF0GAr_mXcwHTUD4WcnL0qPnlXzje-eLQj5kYfEXhNPG5IoBiaJc5zXK8JdCXigkITRakhsAIV4UtTeZUGKTAf/s320/func%20haskell3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="320" data-original-width="256" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiAMDRT0Wm5BGR7uGvAkpB7OXOj9nDDDu8ni7tOsf-zfIqtbbmVcODinhgIuLs-_x_j6L3F-31tOUmcUAbEi2_erTffLFZF0GAr_mXcwHTUD4WcnL0qPnlXzje-eLQj5kYfEXhNPG5IoBiaJc5zXK8JdCXigkITRakhsAIV4UtTeZUGKTAf/s1600/func%20haskell3.jpg" width="256" /></a></div><br /><p></p><p> </p><p><a href="http://devwebcl.blogspot.com/2021/08/functional-design-and-architecture.html">http://devwebcl.blogspot.com/2021/08/functional-design-and-architecture.html</a></p><p> <br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-10522145867304216312022-07-22T09:40:00.005-04:002022-07-22T09:40:49.356-04:00CORS<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCS93Udd82rHxxZgGYSVa0EZSL7IiK9ohjRUC7bTNQLY93XaC_PRHMVpRmrBC3VAIKP872UmlRC4PH2hi3vNXpLmP3gQJmFaaxE0Qz0uZjieTHRdB8gR8VDTleB3TGRhgjPHJFR1rQDc4KlxSc7tthvKB0IQhXQMDjZca_qqkekYqqHsCQ/s1200/cors.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1200" data-original-width="961" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCS93Udd82rHxxZgGYSVa0EZSL7IiK9ohjRUC7bTNQLY93XaC_PRHMVpRmrBC3VAIKP872UmlRC4PH2hi3vNXpLmP3gQJmFaaxE0Qz0uZjieTHRdB8gR8VDTleB3TGRhgjPHJFR1rQDc4KlxSc7tthvKB0IQhXQMDjZca_qqkekYqqHsCQ/w512-h640/cors.jpg" width="512" /></a></div><p></p><p><a href="https://twitter.com/Rapid_API/status/1550397161351057408/photo/1">https://twitter.com/Rapid_API/status/1550397161351057408/photo/1</a></p><p><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-87717894014863799032022-06-10T09:20:00.012-04:002022-07-20T16:19:07.789-04:00OCI SSL Lbaas <p>Clear post of the different use cases of SSL lbaas in OCI:</p><p><a href="https://www.ateam-oracle.com/post/load-balancing-ssl-traffic-in-oci">https://www.ateam-oracle.com/post/load-balancing-ssl-traffic-in-oci</a></p><ul style="text-align: left;"><li><span style="font-size: xx-small;"><span style="font-size: x-small;"><b>SSL Termination</b>: in this scenario, an organization has deemed that the Backend servers serve just HTTP or TCP based requests, i.e. no HTTPS or SSL requests. However, the client requests (say from browser) still need to be secured. Both these requirements are satisfied by having the Load Balancer play the role of an intermediary where the SSL connection terminates at the Load Balancer and the connections between the Load Balancer and the Backend servers are unsecured.<br /><br />Listener: "Use SSL". <br /><br /></span></span><ol><li><span style="font-size: xx-small;"><span style="font-size: x-small;">The Listener listens on port 443.</span></span></li><li><span style="font-size: xx-small;"><span style="font-size: x-small;">The “Use SSL” check box is selected</span></span></li><li><span style="font-size: xx-small;"><span style="font-size: x-small;">The certificate bundle LB-Cert-1 is chosen.</span></span></li><li><span style="font-size: xx-small;"><span style="font-size: x-small;">The Backend Set “Backend-NoSSL” created in the previous steps is selected to complete the configuration of the Listener.</span></span></li><li><span style="font-size: xx-small;"><span style="font-size: x-small;">“Verify Peer Certificate” in the above figure is used for client authentication.</span></span></li></ol><span style="font-size: xx-small;"><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii07TTuJM0EpJXDZ_xRtL3-z7FQCjojwUROcVCMf8gMkkl3bIHPZEXYEt19mbvCF943aQCN-weWDvyxdw3zouLow93POdKmV52pG0IKwkut1LZP8oDGD2J-aiM_av6uqzRHSMR0nOGB1iOHr3_yKeQiqhJWyz2MyC4COctqqbRUBnwU_No/s1024/ssltermination.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="459" data-original-width="1024" height="179" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEii07TTuJM0EpJXDZ_xRtL3-z7FQCjojwUROcVCMf8gMkkl3bIHPZEXYEt19mbvCF943aQCN-weWDvyxdw3zouLow93POdKmV52pG0IKwkut1LZP8oDGD2J-aiM_av6uqzRHSMR0nOGB1iOHr3_yKeQiqhJWyz2MyC4COctqqbRUBnwU_No/w400-h179/ssltermination.jpg" width="400" /></a></div><br /> <br /></span></li><li><span style="font-size: xx-small;"><span style="font-size: x-small;"><b>SSL Tunneling</b>: In this scenario, it is required that the entire transport channel between the client and the Backend server is secured. In other words, no intermediate entity including the Load Balancer should be able to see any of the contents of either the request or the response.<br /><br />In the below figure, the TCP connection is tunneled through the Load Balancer all the way to a Backend. Thus the SSL connections get terminated at the Backend servers. To illustrate this scenario, I will use a Backend Set comprising of two new Oracle Linux compute instances - lb-ssl-backend-1, lb-ssl-backend-2. Unlike the SSL Termination scenario where the two servers had just Apache HTTP Server installed, here I have installed Apache with mod_ssl package on both the instances.<br /><br /></span></span><span style="font-size: xx-small;"><span style="font-size: xx-small;"><span style="font-size: x-small;">Listener: NOT "Use SSL". <br /><br /></span></span></span><ol><li><span style="font-size: xx-small;"><span style="font-size: xx-small;"><span style="font-size: x-small;">For SSL Tunneling, the “Protocol” field should be “TCP”. This has some ramifications and we will discuss them shortly.</span></span></span></li><li><span style="font-size: xx-small;"><span style="font-size: xx-small;"><span style="font-size: x-small;">Also, the “Use SSL” check box should remain unselected (default) as shown in the figure below.</span></span></span></li><li><span style="font-size: xx-small;"><span style="font-size: xx-small;"><span style="font-size: x-small;">The Backend Set selected is the one which we defined in the previous step.</span></span></span></li></ol><span style="font-size: xx-small;"> </span><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-cXyo3VvVRiEN1VLPrLjVRF0rCDwHhnCEJz3OWhFNI7_eIsYNzwJsBWDc9kxa_cyh1G19RgU8zZScIBJNRPyRS0gdXAtL5SCk9MfBgaYA-1rqqFuHvydYNCOoCKjgcaThD1iivLiMSmWC6D7pvAUP5EpqCsUDXaGl8XEXEyQOoj8Anhus/s869/ssltunneling.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="353" data-original-width="869" height="163" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh-cXyo3VvVRiEN1VLPrLjVRF0rCDwHhnCEJz3OWhFNI7_eIsYNzwJsBWDc9kxa_cyh1G19RgU8zZScIBJNRPyRS0gdXAtL5SCk9MfBgaYA-1rqqFuHvydYNCOoCKjgcaThD1iivLiMSmWC6D7pvAUP5EpqCsUDXaGl8XEXEyQOoj8Anhus/w400-h163/ssltunneling.jpg" width="400" /></a></div><br /></li><li><span style="font-size: xx-small;"><span style="font-size: x-small;"><b>End To End SSL</b>: in this scenario, the SSL connection from the client terminates at the Load Balancer and then a new SSL connection is initiated from the Load Balancer to the Backend server. This configuration is useful if the Load Balancer needs to filter HTTP headers in requests and responses.<br /><br /></span><br /></span><br /><span style="font-size: xx-small;"><span style="font-size: xx-small;"><span style="font-size: xx-small;"><span style="font-size: x-small;">Listener: "Use SSL". <br /></span></span></span></span><span style="font-size: xx-small;"><span style="font-size: xx-small;"><span style="font-size: x-small;">Backend: "Use SSL". </span></span></span><br /><span style="font-size: xx-small;"><span style="font-size: xx-small;"><span style="font-size: xx-small;"><span style="font-size: x-small;"></span></span></span></span><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNszeXZuc4Vh0foFgFVhp4BJLLIHkv5cYeqCRPOUHI6PIjPC2V5_xraxKBPlt0ws6ViHaDx4QsXqrkZXYglUfbIMdW3HunSuHbiAJpvbPqzLdhbcnYpSWqsyqQuzCrQWNyHXacplL17SAIwG6p9dmqz3wmMLDHw3krMWcKmRRQ8E7k3Baa/s839/end2endssl.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="352" data-original-width="839" height="168" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNszeXZuc4Vh0foFgFVhp4BJLLIHkv5cYeqCRPOUHI6PIjPC2V5_xraxKBPlt0ws6ViHaDx4QsXqrkZXYglUfbIMdW3HunSuHbiAJpvbPqzLdhbcnYpSWqsyqQuzCrQWNyHXacplL17SAIwG6p9dmqz3wmMLDHw3krMWcKmRRQ8E7k3Baa/w400-h168/end2endssl.jpg" width="400" /></a></div><br /></li></ul><p><a href="https://www.ateam-oracle.com/post/load-balancing-ssl-traffic-in-oci">https://www.ateam-oracle.com/post/load-balancing-ssl-traffic-in-oci</a></p><p><br /></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-20595136044561378672022-05-24T16:45:00.006-04:002022-05-24T16:45:43.245-04:00Deep Learning<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzg01Ov14kGvy2oOr-Ql5HAvJ3Pizjjx2aJIvOQDABmqkIjbqt2gcqCohKrHiBLV7-rDWCBKUCNXM_mlAt1i2zAQbm0gLQToiLvkRmx3W7WcLyHu9hQem2IE4p_0fbyVSJN48pr-s91Piw8mecQO9XXKAKe08hBgmFW9v5slapFeTB8RUb/s480/Reinforcement%20learning%20.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="212" data-original-width="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjzg01Ov14kGvy2oOr-Ql5HAvJ3Pizjjx2aJIvOQDABmqkIjbqt2gcqCohKrHiBLV7-rDWCBKUCNXM_mlAt1i2zAQbm0gLQToiLvkRmx3W7WcLyHu9hQem2IE4p_0fbyVSJN48pr-s91Piw8mecQO9XXKAKe08hBgmFW9v5slapFeTB8RUb/s16000/Reinforcement%20learning%20.png" /></a></div><br /><p></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-19033658192325344172022-05-16T09:25:00.007-04:002023-07-22T08:03:07.033-04:00Art of Computer Programming, Volume 4B, The: Combinatorial Algorithms <p>New <a href="https://www.amazon.com/Art-Computer-Programming-Combinatorial-Information/dp/0201038064/">Book</a> by Donald Knuth | Aug 15, 2022</p><p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8TNBF2PuvybKAsT4hA0_Fzg2befWtkcCtyeU0V0Y_UQnc1s7ThuiQtuIdf96PJtBI9XvAtK_wHJ0-8MB8TwT6-KAKLH3HO_5z_i3RRYqXRlH07fJp0BF2hkSkwbs5xN64mM9LWTQLS-bUlRZj1WrTbKEsai3pI1mnH8QTaEGlVlucwZKW/s499/fasc-4b.jpg" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="499" data-original-width="343" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8TNBF2PuvybKAsT4hA0_Fzg2befWtkcCtyeU0V0Y_UQnc1s7ThuiQtuIdf96PJtBI9XvAtK_wHJ0-8MB8TwT6-KAKLH3HO_5z_i3RRYqXRlH07fJp0BF2hkSkwbs5xN64mM9LWTQLS-bUlRZj1WrTbKEsai3pI1mnH8QTaEGlVlucwZKW/s16000/fasc-4b.jpg" /></a></div><p></p><ul style="text-align: left;"><li>First printing, September 2022</li><li>Second printing, November 2022</li></ul><p style="text-align: left;"> <br /></p><p style="text-align: left;"><a href="https://www.informit.com/store/art-of-computer-programming-volume-4b-combinatorial-9780201038064">https://www.informit.com/store/art-of-computer-programming-volume-4b-combinatorial-9780201038064</a></p><p style="text-align: left;"><br /></p><p></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-1575016807695573022022-04-27T14:53:00.001-04:002022-04-27T14:53:08.034-04:00Kubernetes Troubleshooting<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikP8Zp8flUUBpH3sDsy-Dlk47cKlwkhBYjbTbhRhsX0LCn0d0ve4uo9iCWrxsRjSjssNzv9Y8VHltXn8cIS-2Jt3dL-64TYy3Zl-MVVACE5N0yH0FCwomyqMXkpSJvEpUhA57-bC5AtYNqp_YdRk832Gk1WKNqjvHQCpqXTl8bv_Lcuaej/s1666/k8s%20troubleshooting.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1666" data-original-width="1190" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEikP8Zp8flUUBpH3sDsy-Dlk47cKlwkhBYjbTbhRhsX0LCn0d0ve4uo9iCWrxsRjSjssNzv9Y8VHltXn8cIS-2Jt3dL-64TYy3Zl-MVVACE5N0yH0FCwomyqMXkpSJvEpUhA57-bC5AtYNqp_YdRk832Gk1WKNqjvHQCpqXTl8bv_Lcuaej/w458-h640/k8s%20troubleshooting.png" width="458" /></a></div><br /><p></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0tag:blogger.com,1999:blog-29766395.post-85980525444602570412022-04-26T09:49:00.001-04:002022-04-26T09:49:03.173-04:00K8s Iceberg<p> </p><div class="separator" style="clear: both; text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj82F6Xyl0qgbRqeFfn3c32T_5uxYQJYr9Nc0LaMeUS0--drx2TWq2Glx-SbHoh9RJNUf8mu7EnSPh9D2Es0IIvp8f7edkQ5cfKvIb2HZuUPWZEHb8cmPyWkbc735EJaI86Eyzfkapza3prg184Fg3sL2X5nt3Y46R1_TKUPmi0q3kzWc7g/s1225/k8s-iceberg.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="1225" data-original-width="780" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj82F6Xyl0qgbRqeFfn3c32T_5uxYQJYr9Nc0LaMeUS0--drx2TWq2Glx-SbHoh9RJNUf8mu7EnSPh9D2Es0IIvp8f7edkQ5cfKvIb2HZuUPWZEHb8cmPyWkbc735EJaI86Eyzfkapza3prg184Fg3sL2X5nt3Y46R1_TKUPmi0q3kzWc7g/w408-h640/k8s-iceberg.png" width="408" /></a></div><br /><p></p>Germánhttp://www.blogger.com/profile/00205043167064365725noreply@blogger.com0