<?xml version="1.0" encoding="UTF-8" standalone="no"?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"><channel><title>JP Blog</title><description></description><managingEditor>noreply@blogger.com (JP)</managingEditor><pubDate>Sun, 8 Mar 2026 22:05:33 +0100</pubDate><generator>Blogger http://www.blogger.com</generator><openSearch:totalResults xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">129</openSearch:totalResults><openSearch:startIndex xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">1</openSearch:startIndex><openSearch:itemsPerPage xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">25</openSearch:itemsPerPage><link>http://www.jpromero.com/</link><language>en-us</language><item><title>¿A quién le conviene que apoyes la guerra?</title><link>http://www.jpromero.com/2026/03/a-quien-le-conviene-que-apoyes-la-guerra.html</link><category>educación</category><category>futuro</category><category>idea</category><category>Opinión</category><category>política</category><category>reflexión</category><category>religión</category><author>noreply@blogger.com (JP)</author><pubDate>Sun, 8 Mar 2026 20:44:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-8058212649063175354</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5j7Wynubqf8V7LQXqHsvWzAAjCe0y_yreg1v7UmYrKe2NDxd8X2dEpyDSM-iGNgUQiRYTdq_P2jDSTzfFGJyrfWPn2NrCUklxpV5wX7y0NXEr7DjMKFdWYhSIfxlpjLgZ2d6_zGu6kjWIGNN5cHLdAQtyckjafF1QJSWiwxxB_VOjF4UwHVVXECNrqcKq/s1536/98bbb87e-2cc2-4d8e-a593-5ff9bfd60eaa.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="1024" data-original-width="1536" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5j7Wynubqf8V7LQXqHsvWzAAjCe0y_yreg1v7UmYrKe2NDxd8X2dEpyDSM-iGNgUQiRYTdq_P2jDSTzfFGJyrfWPn2NrCUklxpV5wX7y0NXEr7DjMKFdWYhSIfxlpjLgZ2d6_zGu6kjWIGNN5cHLdAQtyckjafF1QJSWiwxxB_VOjF4UwHVVXECNrqcKq/w400-h266/98bbb87e-2cc2-4d8e-a593-5ff9bfd60eaa.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;Ciertamente, si escuchas que las razones para invadir un país son: quitar a un dictador, ayudar a las mujeres o luchar contra el narcotráfico, suena como algo bueno. Pero &lt;b&gt;hay que cuidarse de lo que te pintan como bueno&lt;/b&gt;, como de los falsos profetas.&lt;/p&gt;&lt;p&gt;Entendamos tres cosas:&lt;/p&gt;&lt;p&gt;a) Que &lt;b&gt;en realidad hay otros intereses mezquinos&lt;/b&gt;, como obtener el petróleo u otro tipo de saqueo, o establecer control imperialista. Es como los gánsteres o «vacunadores» en Ecuador, pero a escala de un país que domina a otro: así como el gánster justifica la extorsión llamándola «protección», y la protección suena a algo bueno, el agresor justifica la invasión con un discurso similar. Y ahora ya ni lo ocultan: Trump ha dicho claramente que lo que quieren es el petróleo. ¿No quieres que un gánster cuide tu negocio, pero sí tu país o el de otro?&lt;/p&gt;&lt;p&gt;b) &lt;b&gt;El relato público de buenas intenciones&lt;/b&gt;. Se usan personas bien intencionadas para sostener la narrativa: llevar médicos, voluntarios y construir un hospital de campaña es una inversión insignificante para tener algo que mostrar y apoyar la historia de buenas intenciones, controlando así el relato público. Incluso se usan ONG que a su vez sirven a grandes corporaciones para evadir o reducir impuestos. Esto se usa como anzuelo para el apoyo público. ¿Caes en esto? ¿Cómo les fue a Afganistán, Irak, Vietnam?&lt;/p&gt;&lt;p&gt;c) &lt;b&gt;Se señala el mal en el agredido ignorando el mal en el agresor&lt;/b&gt;. Se justifica que el matón del patio le pegue a otro porque te cae mal o porque ha hecho algo malo, negando que mata o comete las mismas violaciones que condena. Incluso se justifican sus crímenes pasados, presentes y futuros, cambiando de criterio según convenga sin importar las contradicciones, como quienes votaron a Trump porque iba a bajar los precios, publicar todos los documentos de Epstein y no hacer más guerras, para luego justificar lo contrario. Un ejemplo: dicen que los papeles de Epstein ya se publicaron, pero 1) se publican a cuentagotas mientras afirman cada vez que ya han publicado todo, y 2) están censurados, por lo que no se sabe realmente lo que contienen. Otro ejemplo, el de migrantes que apoyan que Trump expulse a los migrantes indeseados porque ellos no son indeseados, hasta que los expulsan a ellos. Picaron el anzuelo. El egoísmo ciega.&lt;/p&gt;&lt;p&gt;Si no negamos lo anterior, entonces una buena pregunta que suele surgir es: ¿y entonces dejamos que siga el dictador, los cárteles, que se siga matando?&lt;/p&gt;&lt;p&gt;Entendamos otras tres cosas:&lt;/p&gt;&lt;p&gt;a) &lt;b&gt;Controlar el poder&lt;/b&gt;. Estar en contra de una intervención unilateral no es estar a favor del narco ni de los dictadores. Se detecta a un fanático, o el fracaso del sistema educativo, cuando alguien razona con esa lógica. Es como si criticar los fallos del capitalismo automáticamente te hiciera comunista. Ridículo.&lt;/p&gt;&lt;p&gt;Estar en contra de la intervención de uno o un grupo no es necesariamente estar en contra de cualquier intervención; lo que se debe reclamar es que se rijan por reglas como el derecho internacional, un marco que impida que cualquiera intervenga sin apoyo mayoritario y reine la ley de la jungla. El punto es actuar dentro de unas reglas que te protegen a ti y a todos frente a quien acumula demasiado poder, y que se actúe no por intereses mezquinos. ¿Puede la ley moldearse a conveniencia del poderoso? Sí, y ahí es precisamente donde la moralidad y la coherencia sirven para identificar la trampa y luchar por mejorar la ley, actuando siempre dentro de unas reglas cada vez más justas. ¿Por qué el régimen de Irán es malo y el de Arabia Saudí bueno? ¿Por qué se sanciona a Rusia y no a Israel? Es necesaria la discusión y el contraste de posturas con mente abierta para llegar a mejores soluciones. ¿Apoyamos al matón cuando nos conviene, mientras no nos ataque a nosotros? ¿Apoyamos al matón sin pensar en las consecuencias? ¿Entonces quién nos va a defender? ¿Apoyamos la imposición de un país sobre el mundo cuando decimos defender la democracia? ¿No le está pasando a Europa que ha apoyado a EE.UU. y ahora le amenaza? El otro extremo a evitar es negarse a cualquier tipo de intervención.&lt;/p&gt;&lt;p&gt;b) &lt;b&gt;El fanatismo es un problema&lt;/b&gt;. Se acusa a otros de fanáticos cuando ellos mismos lo son, y es lo que se observa en el gobierno de Israel y en sus seguidores, dispuestos a matar. Los nazis empezaron persiguiendo a un grupo selecto; no eran todos los judíos, por lo que si no te afectaba no pasaba nada, y fueron ampliando su alcance conforme ganaban poder, mientras la mayoría permanecía neutral hasta que ya no tenían vergüenza y era público. Lo que no se quiere es que vuelva a ocurrir algo así: hoy dicen que los cristianos son bienvenidos, igual que antes lo decían de los palestinos y musulmanes, pero ya hay quienes llaman antisionistas a los cristianos y los agreden, al tiempo que generan odio hacia los musulmanes. Solo van ganando terreno, en influencia y literalmente en territorio. Su propaganda te dirá que ahora son amigos y por eso les apoyas. No todos los judíos son iguales ni todos los israelíes son iguales; ni todos ellos apoyan al gobierno de Israel. ¿No fueron unos fanáticos los que mataron a Jesús? ¿No te enseña nada eso? La propaganda crea fanáticos. La propaganda crea odio.&lt;/p&gt;&lt;p&gt;c) &lt;b&gt;Se empeñan en seguir cometiendo los mismos errores&lt;/b&gt;. Es reconocido que la CIA se encargó de instalar dictaduras en Latinoamérica y el mundo. Llegan a justificar que era preferible la dictadura a que gobernara alguien elegido democráticamente pero que no les agrada, como Allende en Chile, y aun así dicen defender la democracia, pero solo cuando les conviene. La propaganda les ha cegado con el odio. Es como los religiosos que odian y desprecian a los demás, siendo precisamente incoherentes con las enseñanzas de su propia religión, lo que lleva a una moral cuestionable y a una falta de criterio coherente. ¿Recuerdan a Milei llamando al papa Francisco el Anticristo? Los fanáticos católicos están en contra de Francisco solo porque hablaba de justicia social, igual que etiquetan a cualquiera de socialista o comunista.&lt;/p&gt;&lt;p&gt;&lt;b&gt;Se centran en discusiones sobre el sistema&lt;/b&gt; cuando ese no es el problema de fondo. Unos pueden señalar que en el comunismo la gente pasaba hambre y frío mientras quienes estaban en el poder tenían comida en abundancia, calefacción y comodidad. Pero ese mismo problema se da en el capitalismo: gente pasando hambre y frío mientras quienes manejan los recursos viven con comodidad. No se trata de empobrecer al que tiene, sino de ayudar al que no tiene y de mejorar lo que tenemos, más aún cuando se identifican injusticias e inmoralidades. &lt;b&gt;La humanidad ha progresado cambiando estructuras&lt;/b&gt;. ¿Porque el feudalismo es mejor que la esclavitud seguimos con el feudalismo? ¿Porque el capitalismo sea lo mejor no se puede cambiar? Al final importa poco si el sistema es república, monarquía absoluta o monarquía parlamentaria, si se trata de un país, una tribu o una familia; &lt;b&gt;lo que siempre ha importado es la regla de oro&lt;/b&gt;: no hagas a otro lo que no quieres que te hagan a ti. Ama a tu prójimo como a ti mismo. Si la regla de oro es &lt;b&gt;tratar al otro como quieres ser tratado&lt;/b&gt;, el problema es que constantemente la rompemos desde la ira, el orgullo, el engaño o la codicia. El primer paso es reconocer esto; el segundo, reconocerlo justo después de haber caído en ello y reflexionar; el tercero, reconocerlo en el momento en que estamos en ese estado y detenernos; el cuarto, reconocerlo antes de caer y actuar bien en su lugar. Así se cambia un mal hábito que es la fuente del infierno en la tierra.&amp;nbsp;&lt;/p&gt;&lt;p&gt;Nosotros somos los que permitimos la guerra y el hambre. &lt;b&gt;Nosotros podemos acabar con la guerra y el hambre&lt;/b&gt;. No esperemos a que nos afecte a nosotros. No seamos la mayoría neutral que miraba mientras los nazis ganaban poder. No deshumanicemos al otro. &lt;b&gt;Demos paso a una era de hermandad&lt;/b&gt;, donde los métodos no traicionen los principios, donde tratemos al otro como hermano. El momento es ahora. La decisión es tuya. La decisión es nuestra.&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5j7Wynubqf8V7LQXqHsvWzAAjCe0y_yreg1v7UmYrKe2NDxd8X2dEpyDSM-iGNgUQiRYTdq_P2jDSTzfFGJyrfWPn2NrCUklxpV5wX7y0NXEr7DjMKFdWYhSIfxlpjLgZ2d6_zGu6kjWIGNN5cHLdAQtyckjafF1QJSWiwxxB_VOjF4UwHVVXECNrqcKq/s72-w400-h266-c/98bbb87e-2cc2-4d8e-a593-5ff9bfd60eaa.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>¿Es necesario enseñar religión en el siglo XXI?</title><link>http://www.jpromero.com/2026/02/es-necesario-ensenar-religion-en-el.html</link><category>Brainwriting</category><category>educación</category><category>futuro</category><category>idea</category><category>inteligencia artificial</category><category>Opinión</category><category>política</category><category>reflexión</category><category>religión</category><author>noreply@blogger.com (JP)</author><pubDate>Sun, 8 Feb 2026 19:02:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-8914524610322327789</guid><description>&lt;p&gt;&lt;/p&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5j7Wynubqf8V7LQXqHsvWzAAjCe0y_yreg1v7UmYrKe2NDxd8X2dEpyDSM-iGNgUQiRYTdq_P2jDSTzfFGJyrfWPn2NrCUklxpV5wX7y0NXEr7DjMKFdWYhSIfxlpjLgZ2d6_zGu6kjWIGNN5cHLdAQtyckjafF1QJSWiwxxB_VOjF4UwHVVXECNrqcKq/s1536/98bbb87e-2cc2-4d8e-a593-5ff9bfd60eaa.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="1024" data-original-width="1536" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5j7Wynubqf8V7LQXqHsvWzAAjCe0y_yreg1v7UmYrKe2NDxd8X2dEpyDSM-iGNgUQiRYTdq_P2jDSTzfFGJyrfWPn2NrCUklxpV5wX7y0NXEr7DjMKFdWYhSIfxlpjLgZ2d6_zGu6kjWIGNN5cHLdAQtyckjafF1QJSWiwxxB_VOjF4UwHVVXECNrqcKq/w400-h266/98bbb87e-2cc2-4d8e-a593-5ff9bfd60eaa.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span style="caret-color: rgb(255, 255, 255);"&gt;&lt;br /&gt;&lt;/span&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;span style="caret-color: rgb(255, 255, 255);"&gt;Cuando todo parece fragmentarse, solemos reaccionar cerrándonos, señalando culpables o simplificando problemas complejos.&amp;nbsp;La globalización e internet facilitan la fricción de ideas, de formas de ver la vida; también el bullying, y el aprender —para bien o para mal— una forma de juzgar común.&lt;/span&gt;&lt;/p&gt;&lt;p data-end="1087" data-start="797" style="caret-color: rgb(255, 255, 255);"&gt;«Si en casa no has aprendido, si en el aula no has aprendido, la vida te enseñará», es un dicho común.&lt;br data-end="902" data-start="899" /&gt;Hoy, gran parte de ese aprendizaje está ocurriendo en internet, donde se produce un choque constante de ideas. Pero la pregunta que debemos hacernos es:&amp;nbsp;&lt;strong data-end="1087" data-start="1040"&gt;¿estamos educados para discernir la verdad?&lt;/strong&gt;&lt;/p&gt;&lt;h2 style="text-align: left;"&gt;Conocer es lo que nos hace libres&lt;/h2&gt;&lt;p data-end="1587" data-start="1434" style="caret-color: rgb(255, 255, 255);"&gt;El ser humano no se libera negando lo que no entiende, sino&amp;nbsp;&lt;strong data-end="1512" data-start="1496"&gt;conociéndolo&lt;/strong&gt;.&lt;br data-end="1516" data-start="1513" /&gt;La ignorancia no solo limita el pensamiento, también limita la empatía.&lt;/p&gt;&lt;p data-end="1808" data-start="1589" style="caret-color: rgb(255, 255, 255);"&gt;Aprender es lo que permite crecer. Y crecer implica confrontar ideas distintas, incluso aquellas que no compartimos. No para adoptarlas, sino para comprenderlas, analizarlas y, si es necesario, rechazarlas con criterio.&lt;/p&gt;&lt;h2 style="text-align: left;"&gt;Religión y espiritualidad: conocimiento, no catequesis&lt;/h2&gt;&lt;p data-end="2067" data-start="1875" style="caret-color: rgb(255, 255, 255);"&gt;Cuando se habla de enseñar religión en la escuela, muchos imaginan imposición, dogma o adoctrinamiento. Esa imagen parte de una experiencia histórica concreta, pero no tiene por qué ser así.&lt;/p&gt;&lt;p data-end="2090" data-start="2069" style="caret-color: rgb(255, 255, 255);"&gt;¿Y si se plantea desde otro enfoque?:&lt;/p&gt;&lt;span style="caret-color: rgb(255, 255, 255);"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Un enfoque&amp;nbsp;&lt;strong data-end="2114" data-start="2105"&gt;laico&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Estudio comparado de religiones y tradiciones espirituales&lt;/li&gt;&lt;li&gt;Comprensión de su impacto cultural, ético y filosófico&lt;/li&gt;&lt;li&gt;Análisis crítico de sus luces y sombras&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;p data-end="2274" data-start="2235" style="caret-color: rgb(255, 255, 255); text-align: left;"&gt;&lt;/p&gt;&lt;p data-end="2389" data-start="2276" style="caret-color: rgb(255, 255, 255);"&gt;Enseñar religión no para enseñar qué creer, sino para&amp;nbsp;&lt;strong data-end="2388" data-start="2323"&gt;enseñar a pensar sobre aquello que millones de personas creen&lt;/strong&gt;.&lt;/p&gt;&lt;h2 style="text-align: left;"&gt;Una transición histórica que exige algo más&lt;/h2&gt;&lt;p data-end="2626" data-start="2445" style="caret-color: rgb(255, 255, 255);"&gt;Las sociedades atraviesan ciclos. Las crisis no son solo fallos del sistema, sino señales de que la conciencia colectiva ha cambiado y las instituciones no han sabido acompañarla. Y las religiones, son aún más lentas que las instituciones gubernamentales.&lt;/p&gt;&lt;p data-end="2758" data-start="2628" style="caret-color: rgb(255, 255, 255);"&gt;Creo que estamos dejando atrás una era centrada en el conocimiento técnico para entrar en una etapa donde lo esencial será:&lt;/p&gt;&lt;span style="caret-color: rgb(255, 255, 255);"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;El juicio&lt;/li&gt;&lt;li&gt;La ética&lt;/li&gt;&lt;li&gt;La filosofía&lt;/li&gt;&lt;li&gt;La capacidad de convivir&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;p data-end="2824" data-start="2800" style="caret-color: rgb(255, 255, 255); text-align: left;"&gt;&lt;/p&gt;&lt;p data-end="2906" data-start="2826" style="caret-color: rgb(255, 255, 255);"&gt;No es casualidad que, en paralelo, emerja con fuerza la inteligencia artificial.&lt;/p&gt;&lt;h2 style="text-align: left;"&gt;La IA y el nuevo valor humano&lt;/h2&gt;&lt;p data-end="3110" data-start="2948" style="caret-color: rgb(255, 255, 255);"&gt;Lo que diferencia al ser humano de la máquina es su&amp;nbsp;&lt;strong data-end="3064" data-start="3038"&gt;capacidad de discernir&lt;/strong&gt;, de valorar, de asumir responsabilidad moral. El ser humano usará la inteligencia artificial como herramienta, pero debe tener criterio para decidir cómo y para qué usarla.&lt;/p&gt;&lt;p data-end="3165" data-start="3112" style="caret-color: rgb(255, 255, 255);"&gt;Eso no se improvisa.&lt;br data-end="3135" data-start="3132" /&gt;Se entrena desde la educación.&lt;/p&gt;&lt;p data-end="3283" data-start="3167" style="caret-color: rgb(255, 255, 255);"&gt;Una sociedad que no educa en valores, ética y espiritualidad delega el juicio en algoritmos o en impulsos primarios. Podemos caer en un intelectualismo carente de sentido humanista, sin propósito.&lt;/p&gt;&lt;h2 style="text-align: left;"&gt;El error de los debates simplistas&lt;/h2&gt;&lt;p data-end="3437" data-start="3330" style="caret-color: rgb(255, 255, 255);"&gt;Seguimos atrapados en discusiones: capitalismo o comunismo, derecha o izquierda, nosotros o ellos.&lt;/p&gt;&lt;p data-end="3585" data-start="3439" style="caret-color: rgb(255, 255, 255);"&gt;Pero ningún sistema económico ha erradicado la miseria humana.&lt;br data-end="3504" data-start="3501" /&gt;Porque el problema de fondo no es el sistema, es no seguir la regla de oro, la&amp;nbsp;&lt;strong data-end="3584" data-start="3556"&gt;deshumanización del otro&lt;/strong&gt;.&amp;nbsp;&lt;/p&gt;&lt;p data-end="3679" data-start="3587" style="caret-color: rgb(255, 255, 255);"&gt;Cuando alguien deja de considerar humano al que tiene enfrente, todo se vuelve justificable. La humanidad se ha desarrollado y, gracias a ese desarrollo, han ido surgiendo nuevos sistemas;&amp;nbsp;no es que la humanidad avance gracias a los sistemas. Cuando un sistema se vuelve obsoleto, surgen crisis sociales y, a partir de ellas, nuevos sistemas.&lt;/p&gt;&lt;p data-end="3679" data-start="3587" style="caret-color: rgb(255, 255, 255);"&gt;&amp;nbsp;¿Estamos en una etapa de crisis?&lt;/p&gt;&lt;p data-end="3679" data-start="3587" style="caret-color: rgb(255, 255, 255);"&gt;¿Y, por lo tanto, en proceso de transformar el sistema actual?&lt;/p&gt;&lt;h2 data-end="3742" data-start="3686" style="caret-color: rgb(255, 255, 255);"&gt;Objeciones habituales y respuestas desde cada postura&lt;/h2&gt;&lt;h4 style="text-align: left;"&gt;Objeción desde la izquierda: «La religión es una herramienta de control»&lt;/h4&gt;&lt;p data-end="3932" data-start="3822" style="caret-color: rgb(255, 255, 255);"&gt;Es cierto que históricamente la religión ha sido usada para justificar abusos de poder. Negarlo sería ingenuo.&lt;/p&gt;&lt;p data-end="4013" data-start="3934" style="caret-color: rgb(255, 255, 255);"&gt;Precisamente por eso,&amp;nbsp;&lt;strong data-end="4012" data-start="3956"&gt;no enseñarla deja el terreno libre a la manipulación&lt;/strong&gt;.&lt;/p&gt;&lt;p data-end="4078" data-start="4015" style="caret-color: rgb(255, 255, 255);"&gt;Desde una postura progresista, una educación laica en religión:&lt;/p&gt;&lt;span style="caret-color: rgb(255, 255, 255);"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Desmitifica el poder religioso&lt;/li&gt;&lt;li&gt;Fomenta el pensamiento crítico&lt;/li&gt;&lt;li&gt;Evita que la fe sea monopolio de líderes o instituciones&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;p data-end="4203" data-start="4147" style="caret-color: rgb(255, 255, 255); text-align: left;"&gt;&lt;/p&gt;&lt;p data-end="4294" data-start="4205" style="caret-color: rgb(255, 255, 255);"&gt;Conocer es emanciparse.&lt;br data-end="4231" data-start="4228" /&gt;La ignorancia, en cambio, es el caldo de cultivo del fanatismo.&lt;/p&gt;&lt;h4 style="text-align: left;"&gt;Objeción desde la derecha: «Estamos desbordados, especialmente por el islam»&lt;/h4&gt;&lt;p data-end="4500" data-start="4383" style="caret-color: rgb(255, 255, 255);"&gt;Este miedo existe, en algunos países de Europa, y no se combate negándolo, sino&amp;nbsp;&lt;strong data-end="4499" data-start="4471"&gt;abordándolo con realismo&lt;/strong&gt;.&lt;/p&gt;&lt;p data-end="4573" data-start="4502" style="caret-color: rgb(255, 255, 255);"&gt;Pero la falta de conocimiento&amp;nbsp;&lt;strong data-end="4559" data-start="4532"&gt;no protege la identidad&lt;/strong&gt;, la debilita.&lt;/p&gt;&lt;p data-end="4606" data-start="4575" style="caret-color: rgb(255, 255, 255);"&gt;Desde una postura conservadora:&lt;/p&gt;&lt;span style="caret-color: rgb(255, 255, 255);"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Conocer el islam no implica adoptarlo&lt;/li&gt;&lt;li&gt;Comprender sus diferencias permite defender mejor los valores propios&lt;/li&gt;&lt;li&gt;La integración es más eficaz cuando hay formación, no cuando hay miedo&lt;/li&gt;&lt;li&gt;Una sociedad segura de sí misma no teme estudiar lo que la desafía.&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;p data-end="4860" data-start="4793" style="caret-color: rgb(255, 255, 255); text-align: left;"&gt;&lt;/p&gt;&lt;h3 data-end="4947" data-start="4867" style="caret-color: rgb(255, 255, 255);"&gt;Objeción desde el laicismo radical: «La escuela no debe tocar lo espiritual»&lt;/h3&gt;&lt;div style="text-align: left;"&gt;La laicidad no es negación de lo espiritual, sino neutralidad del Estado.&lt;/div&gt;&lt;p data-end="5109" data-start="5024" style="caret-color: rgb(255, 255, 255);"&gt;Excluir toda reflexión espiritual no es neutralidad, es&amp;nbsp;&lt;strong data-end="5108" data-start="5080"&gt;empobrecimiento cultural&lt;/strong&gt;.&lt;/p&gt;&lt;p data-end="5135" data-start="5111" style="caret-color: rgb(255, 255, 255);"&gt;Desde una postura laica:&lt;/p&gt;&lt;span style="caret-color: rgb(255, 255, 255);"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;La religión es un fenómeno humano, histórico y social&lt;/li&gt;&lt;li&gt;Ignorarla es ignorar una parte esencial de la humanidad&lt;/li&gt;&lt;li&gt;Estudiarla no vulnera la libertad de conciencia, la fortalece&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;p data-end="5313" data-start="5252" style="caret-color: rgb(255, 255, 255); text-align: left;"&gt;&lt;/p&gt;&lt;h3 data-end="5390" data-start="5320" style="caret-color: rgb(255, 255, 255);"&gt;Objeción pragmática: «Hay cosas más urgentes que enseñar religión»&lt;/h3&gt;&lt;p data-end="5452" data-start="5392" style="caret-color: rgb(255, 255, 255);"&gt;La pregunta es: ¿qué es más urgente que aprender a convivir?&lt;/p&gt;&lt;p data-end="5560" data-start="5454" style="caret-color: rgb(255, 255, 255);"&gt;La violencia, la polarización y la deshumanización no se solucionan solo con más matemáticas o tecnología.&lt;/p&gt;&lt;p data-end="5634" data-start="5562" style="caret-color: rgb(255, 255, 255);"&gt;La educación en valores no compite con otras materias,&amp;nbsp;&lt;strong data-end="5633" data-start="5617"&gt;las sostiene&lt;/strong&gt;.&lt;/p&gt;&lt;h2 style="text-align: left;"&gt;Educar para la hermandad&lt;/h2&gt;&lt;p data-end="5764" data-start="5671" style="caret-color: rgb(255, 255, 255);"&gt;No se trata de que todos crean lo mismo.&lt;br data-end="5714" data-start="5711" /&gt;Se trata de que todos aprendan a&amp;nbsp;&lt;strong data-end="5763" data-start="5747"&gt;juzgar mejor&lt;/strong&gt;.&lt;/p&gt;&lt;p data-end="5890" data-start="5766" style="caret-color: rgb(255, 255, 255);"&gt;Una educación que incluya religión, filosofía, ética y espiritualidad no busca uniformar, sino preparar personas capaces de:&lt;/p&gt;&lt;span style="caret-color: rgb(255, 255, 255);"&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Reconocer al otro como humano&lt;/li&gt;&lt;li&gt;Discernir el bien del mal&lt;/li&gt;&lt;li&gt;Asumir responsabilidad moral&lt;/li&gt;&lt;li&gt;Aportar lo que ninguna IA puede replicar&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;p data-end="6025" data-start="5985" style="caret-color: rgb(255, 255, 255); text-align: left;"&gt;&lt;/p&gt;&lt;p data-end="6124" data-start="6027" style="caret-color: rgb(255, 255, 255);"&gt;Si queremos avanzar como sociedad, no basta con saber más.&lt;br data-end="6088" data-start="6085" /&gt;Necesitamos&amp;nbsp;&lt;strong data-end="6123" data-start="6100"&gt;ser más conscientes&lt;/strong&gt;.&lt;/p&gt;&lt;p data-end="6244" data-start="6126" style="caret-color: rgb(255, 255, 255);"&gt;Y eso empieza por atrevernos a educar allí donde durante demasiado tiempo solo hemos reaccionado con miedo o silencio.&lt;/p&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5j7Wynubqf8V7LQXqHsvWzAAjCe0y_yreg1v7UmYrKe2NDxd8X2dEpyDSM-iGNgUQiRYTdq_P2jDSTzfFGJyrfWPn2NrCUklxpV5wX7y0NXEr7DjMKFdWYhSIfxlpjLgZ2d6_zGu6kjWIGNN5cHLdAQtyckjafF1QJSWiwxxB_VOjF4UwHVVXECNrqcKq/s72-w400-h266-c/98bbb87e-2cc2-4d8e-a593-5ff9bfd60eaa.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>El problema de los estándares bajos</title><link>http://www.jpromero.com/2025/04/el-problema-de-los-estandares-bajos.html</link><category>latam</category><category>Opinión</category><category>política</category><category>reflexión</category><author>noreply@blogger.com (JP)</author><pubDate>Wed, 30 Apr 2025 10:26:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-8544871816410894990</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrDKD3lNXKmFeiGKKHOS1BPDG6UonzjNgq4DReYWmtF7g6GMjpvwmyoA8OyOf2YC4K2LjhnvRERQHOOkp8GSUhezoJ8JVteIFUjFHO_emQs3Z4wt-ZZQ7zNm6DbkEpGickcbKgQsd_a-82VLruBpG4I44buuc3hWv0R6EaB_I8A7M2xkWTHKg6HVrY1CkW/s1067/carretera-e6-noruega-suecia-1.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="800" data-original-width="1067" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrDKD3lNXKmFeiGKKHOS1BPDG6UonzjNgq4DReYWmtF7g6GMjpvwmyoA8OyOf2YC4K2LjhnvRERQHOOkp8GSUhezoJ8JVteIFUjFHO_emQs3Z4wt-ZZQ7zNm6DbkEpGickcbKgQsd_a-82VLruBpG4I44buuc3hWv0R6EaB_I8A7M2xkWTHKg6HVrY1CkW/w400-h300/carretera-e6-noruega-suecia-1.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;p&gt;Recuerdo una publicación que decía algo así como que el 70 % de las carreteras españolas no estaban en buen estado. Y la portada mostraba una vía con un par de baches pequeños; se veía mejor que muchas "autopistas" ecuatorianas.&lt;/p&gt;&lt;p data-end="641" data-start="270"&gt;En Ecuador, a una carretera de tierra que no se ha dañado mucho después de ser lastrada la llaman "buena". Si está asfaltada, ya es un lujo.&lt;/p&gt;&lt;p data-end="878" data-start="643"&gt;¿Acaso la población no está acostumbrada a que se hagan parches justo antes de las elecciones para reelegir a la autoridad de turno? Está acostumbrada a la mediocridad. ¡Las pintadas de pasos peatonales no duran ni tres meses al 100 %!&lt;/p&gt;&lt;p data-end="1285" data-start="880"&gt;A veces es mejor tomar con humor que en Latinoamérica estamos acostumbrados a los apagones. Pero ¿hasta qué punto esa misma costumbre mantiene el subdesarrollo? Los estándares son distintos, y mientras no se aspire a mejores, lo "malo" en un lugar seguirá siendo considerado "excelente" en otro. Luego se sueña con tener el nivel de vida de los países más desarrollados, sin adoptar sus estándares de calidad.&lt;/p&gt;&lt;p data-end="1734" data-start="1287"&gt;¿No se decía que los ecuatorianos se malacostumbraron a tener el pasaporte el mismo día? ¿Que si pasaban calor en los buses de Guayaquil, que abrieran las ventanas?&lt;br data-end="1454" data-start="1451" /&gt;También he escuchado despropósitos como pedir una carretera de cuatro carriles por sentido para la parte alta de El Oro. Si ni siquiera hay una carretera decente de un carril por sentido, mucho menos habrá una de cuatro en buenas condiciones, considerando el coste que eso supone.&lt;/p&gt;&lt;p data-end="2355" data-start="1736"&gt;Otro recuerdo que tengo es ver la reacción de distintos grupos al llegar a Nueva York: los latinoamericanos estaban maravillados, porque el nivel es mayor al de muchos países de la región; los europeos, japoneses o surcoreanos, no tanto. Parte era ilusión alimentada por Hollywood, pero también hubo decepción: basura en las calles, cables eléctricos colgando como tallarines, trenes y buses viejos, entradas al metro que parecen cárceles, ratas... ¿Lo que en Latinoamérica es normal? También existe en Europa, claro, y seguramente en los otros lugares, pero es menos frecuente —y sorprende más en una ciudad principal como Nueva York.&lt;/p&gt;&lt;p data-end="2728" data-start="2357"&gt;Debemos conocer más del resto del mundo y entender otras perspectivas. Por eso, para mí, las ideas de enviar becados ecuatorianos a países más desarrollados y captar talento internacional para que viniera a Ecuador representaban una forma de fomentar el intercambio cultural con miras a mejorar la sociedad ecuatoriana.&lt;br data-end="2679" data-start="2676" /&gt;Una visión que, lamentablemente, quedó estancada.&lt;/p&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhrDKD3lNXKmFeiGKKHOS1BPDG6UonzjNgq4DReYWmtF7g6GMjpvwmyoA8OyOf2YC4K2LjhnvRERQHOOkp8GSUhezoJ8JVteIFUjFHO_emQs3Z4wt-ZZQ7zNm6DbkEpGickcbKgQsd_a-82VLruBpG4I44buuc3hWv0R6EaB_I8A7M2xkWTHKg6HVrY1CkW/s72-w400-h300-c/carretera-e6-noruega-suecia-1.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>El problema de exigir certidumbre</title><link>http://www.jpromero.com/2025/04/el-problema-de-exigir-certidumbre.html</link><category>educación</category><category>Opinión</category><category>política</category><category>Prensa</category><category>reflexión</category><author>noreply@blogger.com (JP)</author><pubDate>Tue, 29 Apr 2025 10:34:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-146188977686612904</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1-N_rRKYUduG62pKkzbUvOcqg1M1nFOYeVsqntKFuByUaFnZm9X2byrctmRa8ZfHzq-6tdyM7vp_cjxyBhZo1vqh5C6x233791ZgSFeV709rVpDgs5TMQC94AdKyQ1MA9Q0Hn4FoiqCXVO38OR2nqt91J5yUYMxdyuoevp1-50-fPQlzgDwB7V-jfk1g3/s749/certidumbre.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="726" data-original-width="749" height="388" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1-N_rRKYUduG62pKkzbUvOcqg1M1nFOYeVsqntKFuByUaFnZm9X2byrctmRa8ZfHzq-6tdyM7vp_cjxyBhZo1vqh5C6x233791ZgSFeV709rVpDgs5TMQC94AdKyQ1MA9Q0Hn4FoiqCXVO38OR2nqt91J5yUYMxdyuoevp1-50-fPQlzgDwB7V-jfk1g3/w400-h388/certidumbre.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;h2 style="text-align: left;"&gt;¿Qué provoca la búsqueda de perfección en los líderes?&lt;/h2&gt;&lt;div&gt;¿Hasta qué punto el exigir una aparente perfección y criticar el fallo en quienes están en posiciones de toma de decisiones hace que, por miedo al rechazo o al juzgamiento, estos recurran a la ocultación o a la mentira?&lt;/div&gt;&lt;h2 style="text-align: left;"&gt;La contradicción social: fallar está bien... pero no para todos&lt;/h2&gt;&lt;div&gt;Por un lado, en la sociedad se intenta fomentar que el fallo es parte del aprendizaje y crecimiento, sobre todo en el área del desarrollo personal y de habilidades blandas. Por otro lado, se ataca a quien comete errores; a mi parecer, el ámbito político es el más destacado en este sentido.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Es cierto que ciertas posiciones de liderazgo, como la de los políticos o los médicos, implican vidas en juego y se desea minimizar los fallos, pero ¿somos conscientes de que también habrá errores? Y no necesariamente intencionales o por no seguir un protocolo. A partir de los fallos, la humanidad ha ido añadiendo mejoras. Claro que debe haber sanciones cuando ha sido premeditado o por no hacerlo según un protocolo (pero incluso este último debe ser analizado pues tal vez se identificó que seguir el protocolo llevaba al fallo y realizar algo diferente fue lo mejor —me recuerda en parte a la película Sully—).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Siempre recuerdo una entrevista a niños, donde se les preguntaba qué querían ser de mayores. Varios decían bombero, policía, médico, profesor. Cuando el periodista preguntaba si querrían ser políticos, respondían con un rotundo no. Su reflexión era que los insultan, que sus padres hablan mal de ellos. &lt;b&gt;Los niños no quieren ser tratados mal, por eso no quieren ser políticos.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;También recuerdo, ya en la universidad, hablando con una compañera: le pregunté si se veía en política. Su respuesta fue similar a la de los niños. Dijo que le parecía un ambiente tóxico, donde para saber moverse hay que actuar mal o inmoralmente. &lt;b&gt;¿Cómo vamos a tener buenas personas en puestos políticos si la misma población promueve un rechazo hacia ese sector?&lt;/b&gt;&amp;nbsp;¿No hemos escuchado lo de «todos son ladrones», «todos mienten»? A tal punto que, si un familiar llega a un cargo político, se le dirá: «algo querrás sacar» —de forma despectiva—.&lt;/div&gt;&lt;h2 style="text-align: left;"&gt;El disfraz de seguridad&lt;/h2&gt;&lt;div&gt;Asimismo, el deseo de certidumbre cuando no la hay me lleva a observar que algunos comerciales transmiten con seguridad y confianza —porque así se enseña a comunicar— que su producto o servicio cumple cierta función, cuando en realidad no es así.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;El exigir certidumbre parece conllevar un afán de culpar o menospreciar, lo cual nos lleva al surgimiento de la mentira en el otro por miedo o vergüenza.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Muchas veces lo hacen porque creen que podrán resolverlo más adelante, saliéndose con la suya al imponer a producción plazos imposibles para cumplir lo prometido. O porque tienen algo escueto relacionado con lo que el cliente desea y, por no decir que no lo tienen, dicen que sí lo hacen cuando realmente no hace lo que el cliente quiere. Esto ocurre en el sector empresarial donde hay desesperación por vender. De igual forma, en la política. Los políticos, por su parte, buscan transmitir confianza y certidumbre cuando en realidad no saben algo.&lt;/div&gt;&lt;h2 style="text-align: left;"&gt;La necesidad de cambiar la expectativa&lt;/h2&gt;&lt;div&gt;Y tanto los medios de comunicación como la población exigen certidumbre a los políticos cuando esta no existe.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Creo que se debe educar mejor en este sentido: &lt;b&gt;se debe buscar la verdad&lt;/b&gt;. Y si la verdad es que en un momento no se sabe algo o no hay forma de saberlo, &lt;b&gt;se debe aceptar y entender el porqué&lt;/b&gt;. Y continuar con la búsqueda de la verdad, no de exigir certidumbre.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj1-N_rRKYUduG62pKkzbUvOcqg1M1nFOYeVsqntKFuByUaFnZm9X2byrctmRa8ZfHzq-6tdyM7vp_cjxyBhZo1vqh5C6x233791ZgSFeV709rVpDgs5TMQC94AdKyQ1MA9Q0Hn4FoiqCXVO38OR2nqt91J5yUYMxdyuoevp1-50-fPQlzgDwB7V-jfk1g3/s72-w400-h388-c/certidumbre.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Migrar tweets a BlueSky</title><link>http://www.jpromero.com/2025/03/migrar-tweets-bluesky.html</link><category>code</category><category>código</category><category>memorias</category><category>migrar</category><category>procedure</category><category>terminal</category><author>noreply@blogger.com (JP)</author><pubDate>Mon, 17 Mar 2025 16:34:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-2154115247879140763</guid><description>&lt;p&gt;&lt;/p&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;&amp;nbsp;Exportar datos de Twitter (X)&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKneUKP61psFHULo3MQLk2GWrRScvPctMgwNimf7XfA43nsfAnxGSEgVSmpb7lgjxONUDaPnxhqYoNGKJV8flCpekLU_5VOikydiW4WHw6Yo50E2GWYLFwY2O2lOEvIhLrWDHa49BKQUPjIvWjdCBuds7xGOLKR7s8gki9360nTtfRnRYYxFG1bblgszEo/s1386/Screenshot%202025-03-11%20at%2016.24.10.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="879" data-original-width="1386" height="406" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKneUKP61psFHULo3MQLk2GWrRScvPctMgwNimf7XfA43nsfAnxGSEgVSmpb7lgjxONUDaPnxhqYoNGKJV8flCpekLU_5VOikydiW4WHw6Yo50E2GWYLFwY2O2lOEvIhLrWDHa49BKQUPjIvWjdCBuds7xGOLKR7s8gki9360nTtfRnRYYxFG1bblgszEo/w640-h406/Screenshot%202025-03-11%20at%2016.24.10.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgq97dUAB-vFtzZAubJiS1BgCGmmZu6KfI47OVBKzOJ2EXXS0nx5Pe0LLdaC1Hcw5Lx1HH3f0Zjq2oVtSxnFO77sw_EBxN03c-9TfO3p-NaQ-eoJmEXlA-qJIh0IR-E1ig93IMtg-fqWRD_ZDpkNQkT_T6vGt0yMQIsDnGeVPYOM0sRBCRO3fHL_SV7W-d7/s1583/Screenshot%202025-03-11%20at%2016.24.00.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="882" data-original-width="1583" height="356" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgq97dUAB-vFtzZAubJiS1BgCGmmZu6KfI47OVBKzOJ2EXXS0nx5Pe0LLdaC1Hcw5Lx1HH3f0Zjq2oVtSxnFO77sw_EBxN03c-9TfO3p-NaQ-eoJmEXlA-qJIh0IR-E1ig93IMtg-fqWRD_ZDpkNQkT_T6vGt0yMQIsDnGeVPYOM0sRBCRO3fHL_SV7W-d7/w640-h356/Screenshot%202025-03-11%20at%2016.24.00.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;span style="text-align: left;"&gt;Una vez solicitado se recibirá un email (menos de 24 horas) avisando que los datos están listos.&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Descargar repositorio&amp;nbsp;&lt;a href="https://github.com/marcomaroni-github/twitter-to-bluesky"&gt;https://github.com/marcomaroni-github/twitter-to-bluesk&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Seguir los pasos para ejecutar el programa que vienen en la página anterior. En resumen son:&lt;/li&gt;&lt;/ul&gt;&lt;ol style="text-align: left;"&gt;&lt;ol&gt;&lt;li&gt;Tener instalado NODE&lt;/li&gt;&lt;li&gt;Generar una contraseña en Bluesky para utilizarla con el programa de migración. Ir a configuración - Privacidad y Seguridad - Contraseñas de App - Añadir una nueva.&lt;/li&gt;&lt;li&gt;Una ver copiado el repositorio instalar los paquetes desde la terminal: npm install&lt;/li&gt;&lt;li&gt;Ejecutar el programa. Ejemplo: node app.js --archive-folder /Users/nombreusuario/carpeta-importada-twitter --bluesky-username jp-romero.bsky.social --bluesky-password qwer-asdf-zxccv-1234 --twitter-handles _juanpa --ignore-video-errors&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhKneUKP61psFHULo3MQLk2GWrRScvPctMgwNimf7XfA43nsfAnxGSEgVSmpb7lgjxONUDaPnxhqYoNGKJV8flCpekLU_5VOikydiW4WHw6Yo50E2GWYLFwY2O2lOEvIhLrWDHa49BKQUPjIvWjdCBuds7xGOLKR7s8gki9360nTtfRnRYYxFG1bblgszEo/s72-w640-h406-c/Screenshot%202025-03-11%20at%2016.24.10.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Sociedad de la sabiduría</title><link>http://www.jpromero.com/2015/03/sociedad-de-la-sabiduria.html</link><category>educación</category><category>idea</category><category>Opinión</category><category>reflexión</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 8 Mar 2025 12:28:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-7113085877466225033</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTO7Y1bMxC5vadKxgzPWZm2Bnqlm0ROclo1cXTlyGY6VTWz1ON17RzZo0s-L7egVNvsykaeFP7V_43J19zuc5n9eJVC1gsd5tuDBcgF_l8E9KSh-GyG-vKgNKUVZKsHfagWWrn9wYIGC_CgVVIAQdla-r0LFt2h0DwrKZX7_BBPvW-OtdK82KiraDiWKcy/s1920/unnamed-3.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="1080" data-original-width="1920" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTO7Y1bMxC5vadKxgzPWZm2Bnqlm0ROclo1cXTlyGY6VTWz1ON17RzZo0s-L7egVNvsykaeFP7V_43J19zuc5n9eJVC1gsd5tuDBcgF_l8E9KSh-GyG-vKgNKUVZKsHfagWWrn9wYIGC_CgVVIAQdla-r0LFt2h0DwrKZX7_BBPvW-OtdK82KiraDiWKcy/w640-h360/unnamed-3.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;
Empecemos pensando en: el dato, como la unidad mínima de información, algo que como tal no se considera información pues carece de un sentido si simplemente tenemos: «12», «Juan»; son símbolos que según el lenguaje pueden significar diferentes cosas; incluso podemos reflexionar sobre si cada letra de «Juan» es a su vez un conjunto de datos. En un computador la unidad mínima es el bit que puede ser un «0» o un «1»; pero, según el contexto, como puede ser el sistema de ficheros, la unidad mínima puede ser un bloque, el cual es un número de bytes fijo, y a su vez un byte son 8 bits. ¿Y en el caso del cerebro humano?: tenemos a la neurona como unidad.&amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
«12», «Juan» son símbolos carentes de un significado, pues intuitivamente podemos pensar en que «Juan» es un nombre y además de una persona, pero aquí ya utilizamos otros datos para deducir eso, como «nombre», «persona», «es», y tan solo es un supuesto, es decir, no podemos afirmar ni negar tal reflexión; de igual forma «12» podemos pensar que es, al menos, un número, pero esto no es más que un supuesto. Una vez que damos un significado a los datos entonces hablamos de información; el tener varios datos y además conocer el significado de su relación nos permite tener información que podemos pasar a convertirla en conocimiento mediante la asimilación, reflexión y comprensión de la información. En el caso de un computador la información son datos estructurados, con cierta organización o diseño que mediante reglas simples implementadas por hardware o software se logra tratar la información; el uso de reglas lógicas es lo que permite interpretación de los datos, y dota de un sentido a los datos. Por su parte el cerebro tiene grupos de neuronas que van asociadas a acciones y su trabajo en conjunto da sentido a la labor individual de cada neurona. &amp;nbsp;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
En la actualidad se habla sobre la sociedad de la información, en parte a, el gran boom que se ha logrado gracias a los avances tecnológicos que posibilitan el acceso a grandes cantidades de información. Existe tanta información que es necesario poder aprender a ser unos buenos gestores de información, para saber discernir sobre qué nos es útil y qué no lo es. Por ello es necesario adquirir, también, conocimientos sobre la gestión de la información que tenemos a nuestra disposición, en el sentido más amplio de estas palabras. Esto nos lleva a un nivel superior que va más allá del conocimiento: el de la sabiduría.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Pasamos de esa unidad que es el dato, a la agrupación de datos que pasan a ser información y, de ella obtenemos conocimientos, para finalmente llegar a la sabiduría. La sabiduría se logra a base de la experiencia y, a la reflexión y corrección de las acciones, actitudes o pensamientos. En el caso de los computadores se pasa de un nivel de crear algoritmos con reglas &amp;nbsp;básicas de lógica formal, a algoritmos que buscan una, cada vez mayor, capacidad deductiva; capaz de auto-generar nuevas reglas o modificarlas para así generar conocimiento. Como se ha dicho antes: en base a la experiencia se logra la sabiduría; si es así entonces, puede estar cerca el momento de que los computadores en base a la experiencia también alcancen sabiduría. Claro está, aún queda por mejorar la capacidad deductiva de los computadores. Sin embargo, el ser humano teniendo la capacidad de alcanzar sabiduría, ¿por qué no tenemos una sociedad sabia?&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;2015-03-30&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjTO7Y1bMxC5vadKxgzPWZm2Bnqlm0ROclo1cXTlyGY6VTWz1ON17RzZo0s-L7egVNvsykaeFP7V_43J19zuc5n9eJVC1gsd5tuDBcgF_l8E9KSh-GyG-vKgNKUVZKsHfagWWrn9wYIGC_CgVVIAQdla-r0LFt2h0DwrKZX7_BBPvW-OtdK82KiraDiWKcy/s72-w640-h360-c/unnamed-3.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Posible vs Probable</title><link>http://www.jpromero.com/2015/04/classtwitter-tweet-langes-cosa-son-las.html</link><category>educación</category><category>memorias</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 8 Mar 2025 12:12:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-698371212409105532</guid><description>&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuzoWNtWk6bcV7_KCxeCUROMeRSOc68N-8KrAXmRxqmZxI__RpKqrEonvKeXIRM_zvuukO-dj0A5ba_sJvhw_6ydAC5epj1v4ehtAJ8aroJTShLg77aIDOM4ZYSZAWOP1XaSweODH1UKlN8y5s1jL7eQqwnS_CLFklfWFTiVjk0U6hRSXkYVuuexBc7ZHI/s1280/cube-1963036_1280.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"&gt;&lt;img border="0" data-original-height="672" data-original-width="1280" height="336" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuzoWNtWk6bcV7_KCxeCUROMeRSOc68N-8KrAXmRxqmZxI__RpKqrEonvKeXIRM_zvuukO-dj0A5ba_sJvhw_6ydAC5epj1v4ehtAJ8aroJTShLg77aIDOM4ZYSZAWOP1XaSweODH1UKlN8y5s1jL7eQqwnS_CLFklfWFTiVjk0U6hRSXkYVuuexBc7ZHI/w640-h336/cube-1963036_1280.jpg" width="640" /&gt;&lt;/a&gt;&lt;p data-end="1016" data-start="739"&gt;El pensar en posibilidades y en probabilidades me recuerda a las clases de Inteligencia Artificial, en las que se hablaba de que, por posible, cualquier cosa es posible, como que mañana llueva aunque el pronóstico indique sol. Pero eso ya es una probabilidad basada en datos.&lt;/p&gt;&lt;p data-end="1346" data-start="1018"&gt;Así mismo, es posible que nos ganemos la lotería, pero muy poco probable. También se hablaba de que, en probabilidad, la suma de las distintas opciones es la unidad. Por ejemplo, si la probabilidad de obtener un 1 al lanzar un dado de 6 caras es&amp;nbsp;&lt;strong data-end="1271" data-start="1264"&gt;1/6&lt;/strong&gt;, la probabilidad de que no salga 1 es&amp;nbsp;&lt;strong data-end="1317" data-start="1310"&gt;5/6&lt;/strong&gt;, es decir, el complemento.&lt;/p&gt;&lt;p data-end="1845" data-start="1348"&gt;Pero cuando se trata de posibilidades, su suma no tiene por qué ser 1. Por ejemplo, en una carrera de caballos en la que participan tres caballos: Relámpago puede tener una posibilidad de ganar casi segura (&lt;strong data-end="1562" data-start="1555"&gt;0.9&lt;/strong&gt;), Flash puede que sí o que no (&lt;strong data-end="1601" data-start="1594"&gt;0.5&lt;/strong&gt;), e Isabella seguramente no gane (&lt;strong data-end="1644" data-start="1636"&gt;-0.9&lt;/strong&gt;). Sin embargo, la posibilidad de que Relámpago pierda puede ser&amp;nbsp;&lt;strong data-end="1716" data-start="1709"&gt;0.3&lt;/strong&gt;, la de que Flash pierda&amp;nbsp;&lt;strong data-end="1748" data-start="1741"&gt;0.7&lt;/strong&gt;, y la de que Isabella pierda&amp;nbsp;&lt;strong data-end="1783" data-start="1778"&gt;1&lt;/strong&gt;. Como se puede ver, son valores que no son complementarios.&lt;/p&gt;&lt;p data-end="2008" data-start="1847"&gt;Tomando en cuenta la lógica borrosa, se pone el ejemplo de que con&amp;nbsp;&lt;strong data-end="1923" data-start="1914"&gt;40 ºC&lt;/strong&gt;&amp;nbsp;seguro hace calor (&lt;strong data-end="1948" data-start="1943"&gt;1&lt;/strong&gt;), pero con&amp;nbsp;&lt;strong data-end="1969" data-start="1960"&gt;27 ºC&lt;/strong&gt;&amp;nbsp;es posible que haga calor&amp;nbsp;&lt;strong data-end="2003" data-start="1996"&gt;0.8&lt;/strong&gt;...&lt;/p&gt;&lt;p data-end="2073" data-start="2010"&gt;Posible puede ser cualquier cosa, pero probable es otra cosa.&lt;/p&gt;&lt;p data-end="2176" data-start="2075"&gt;Una cosa son las posibilidades, otra cosa son las probabilidades, y otra diferente, las realidades.&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2015-04-06&lt;/div&gt;&lt;br /&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhuzoWNtWk6bcV7_KCxeCUROMeRSOc68N-8KrAXmRxqmZxI__RpKqrEonvKeXIRM_zvuukO-dj0A5ba_sJvhw_6ydAC5epj1v4ehtAJ8aroJTShLg77aIDOM4ZYSZAWOP1XaSweODH1UKlN8y5s1jL7eQqwnS_CLFklfWFTiVjk0U6hRSXkYVuuexBc7ZHI/s72-w640-h336-c/cube-1963036_1280.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Ellas provocan</title><link>http://www.jpromero.com/2015/06/ellas-provocan.html</link><category>educación</category><category>Opinión</category><category>reflexión</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 8 Mar 2025 12:05:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-5814905156748293611</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxp2EuAaZG7B_NAVuF7N6Z56iNKzktKgTCOXXomZgs08RYmnGR-aoPqpo-x9oegfvfe3rLQPEHsjOy-ASWDT6-Eso5oophRhCRRqZ-4pTqJV7p1V_xrWp4iKxWZQvONt7kghdlHmcjqveDrIYeh-kMwAF7_yJMqvHABzF1PolvjmitdeHxU9C4xDRYzxC7/s1230/468524370_10160715054695779_6237795127039922516_n.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="990" data-original-width="1230" height="258" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxp2EuAaZG7B_NAVuF7N6Z56iNKzktKgTCOXXomZgs08RYmnGR-aoPqpo-x9oegfvfe3rLQPEHsjOy-ASWDT6-Eso5oophRhCRRqZ-4pTqJV7p1V_xrWp4iKxWZQvONt7kghdlHmcjqveDrIYeh-kMwAF7_yJMqvHABzF1PolvjmitdeHxU9C4xDRYzxC7/s320/468524370_10160715054695779_6237795127039922516_n.jpg" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;
Algunos dicen que las mujeres van provocando y otros dicen que no es así. Rápidamente viene a la mente la perspectiva sexual de que van provocando... Pero, eso tan solo es una forma de verlo, propia de la cultura de la sociedad, pues bien, si la sociedad está acostumbrada a que las mujeres vayan sin nada que les cubra, esa sociedad no ve ningún problema en ello, han crecido así. Personalmente, me gusta la existencia de cierto pudor, ese toque de picardía. Que aunque sea tu pareja no se pierda ese toque, no se caiga en rutinas que maten el entusiasmo, que siga provocando esas ganas por ver lo que se esconde bajo la vestimenta, por conocer y vivir experiencias, somos seres experienciales.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Sin limitarnos a esa visión reducida a un aspecto sexual, para mí, las mujeres sí que van provocando. Van provocando sonrisas, alegrías, ganas de abrazarlas. Tanto como a los niños apetece «comérselos a besos», o como suele apetecer abrazar a los adultos mayores que resultan tan lindos. O a cualquier persona que demuestra bondad, solidaridad, provocan aplausos, admiración, felicidad.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
He vivido rodeado de mujeres, tías y abuelas que eran madres, hermanas, primas, amigas... Los momentos más felices suelen venir provocados por compartir junto a mujeres. &amp;nbsp;Claro que van provocando, muchas de ellas provocan un ejemplo a seguir, un ejemplo de trabajo, esfuerzo. Provocan amarlas. Esto no sería vida sin ellas.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;2015-06-01&lt;/div&gt;
</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhxp2EuAaZG7B_NAVuF7N6Z56iNKzktKgTCOXXomZgs08RYmnGR-aoPqpo-x9oegfvfe3rLQPEHsjOy-ASWDT6-Eso5oophRhCRRqZ-4pTqJV7p1V_xrWp4iKxWZQvONt7kghdlHmcjqveDrIYeh-kMwAF7_yJMqvHABzF1PolvjmitdeHxU9C4xDRYzxC7/s72-c/468524370_10160715054695779_6237795127039922516_n.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Entregar algo por entregar</title><link>http://www.jpromero.com/2019/02/entregar-algo-por-entregar.html</link><category>educación</category><category>eficiencia</category><category>Opinión</category><category>reflexión</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 8 Mar 2025 11:57:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-4366048439345698443</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi80E87UaOkMBnHBx7DvX_3jSJXphasK358V6RoE2iVlupGpigUU9LAJ7TnuRQVTch6Wkpsi7p_hogCO1Ek35bvZkTGY7ZUh9ABo4dkAz50ieKwD83wVOyeqKx74Ox5AKI0mgKqx3Xaa2M0cMOZBzoGQUv_47yHUxWGuxOv05jl7_Ds_OawHQXT16lEx1zg/s1500/approved.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="1000" data-original-width="1500" height="426" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi80E87UaOkMBnHBx7DvX_3jSJXphasK358V6RoE2iVlupGpigUU9LAJ7TnuRQVTch6Wkpsi7p_hogCO1Ek35bvZkTGY7ZUh9ABo4dkAz50ieKwD83wVOyeqKx74Ox5AKI0mgKqx3Xaa2M0cMOZBzoGQUv_47yHUxWGuxOv05jl7_Ds_OawHQXT16lEx1zg/w640-h426/approved.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;
Algo que suele ser típico en el ámbito estudiantil es el querer entregar una tarea porque hay una fecha de entrega y en la mayoría de los casos se deja para el final. Así que lo que se hace es intentar entregar algo por cumplir que se ha hecho algo, mas no por realmente hacer ese algo bien. Esta conducta se repite a lo largo de varios años. Por lo que creo se llega a hacer como un hábito, una forma de hacer las cosas que debemos identificar y evitarla cuando sea necesario.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Luego, en el ámbito de trabajo estos hábitos se suelen ver de igual forma. Es decir, se intenta entregar algo porque hay una fecha de entrega y hay que entregar algo. Pero, ¿Está hecho concienzudamente? ¿Está bien? ¿Funciona? ¿Es lo que se necesita? El conflicto está en que no se esté de acuerdo en si algo hay que hacerlo, vale con hacerlo hasta cierto punto, o excelente.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Por un lado en el ámbito educativo lo que se suele tener como objetivo es aprobar la asignatura, más que aprender. Así que muchas veces se busca la nota que sea suficiente. Por otro lado, ¿cuál es el objetivo en el ámbito laboral? ¿Mostrar que se ha hecho algo? Por lo general, hay muchas personas involucradas y por ello hay muchos objetivos. A veces el currito desde su perspectiva parece que busca justificar que ha hecho algo y lo que hizo funciona. Pero, ya no se trata de obtener una nota suficiente. Puede ser obtener un cliente, vender un producto. Entonces, la perspectiva de quien vende, no puede ser algo mediocre. Lo que hizo el currito puede funcionar, pero, ¿funciona para el cliente? ¿le es útil? puede que no.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;¿Se reflexiona en los malos hábitos que se están creando desde las aulas?&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;2019-02-02&lt;/div&gt;
</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi80E87UaOkMBnHBx7DvX_3jSJXphasK358V6RoE2iVlupGpigUU9LAJ7TnuRQVTch6Wkpsi7p_hogCO1Ek35bvZkTGY7ZUh9ABo4dkAz50ieKwD83wVOyeqKx74Ox5AKI0mgKqx3Xaa2M0cMOZBzoGQUv_47yHUxWGuxOv05jl7_Ds_OawHQXT16lEx1zg/s72-w640-h426-c/approved.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Ni posible ni deseable tener el software a su última versión.</title><link>http://www.jpromero.com/2025/03/ni-posible-ni-deseable-tener-el.html</link><category>Brainwriting</category><category>code</category><category>educación</category><category>eficiencia</category><category>Opinión</category><category>procedure</category><category>seguridad</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 8 Mar 2025 11:48:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-2527241986657588688</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3JBpuDDaMqO1F-wJBECtJmxNJcCVNPT2B9EOtpI1lhklGJTzZSgE9gzDpqNKlYDdna6BLvnrLs8LzdQClcvOVP-XDex7awAomvMEP01embgn8dy4bSnOjqvXuhqfejXKcDfIv9APIQeXsvgcYD0YIVVjzpSnMCmIlDB23RVW89QqzgDds03dGkxLoooGW/s1200/20240720094404_caida-de-microsoft-aeropu_amp_w1200.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="800" data-original-width="1200" height="426" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3JBpuDDaMqO1F-wJBECtJmxNJcCVNPT2B9EOtpI1lhklGJTzZSgE9gzDpqNKlYDdna6BLvnrLs8LzdQClcvOVP-XDex7awAomvMEP01embgn8dy4bSnOjqvXuhqfejXKcDfIv9APIQeXsvgcYD0YIVVjzpSnMCmIlDB23RVW89QqzgDds03dGkxLoooGW/w640-h426/20240720094404_caida-de-microsoft-aeropu_amp_w1200.jpg" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cuando se desarrolla un programa para el que utilizamos librerías (paquetes, plugins), otro software a fin de construir nuestro software. Al existir dependencias entre programas tenemos que estar pendientes de las actualizaciones de todas las partes de nuestro software.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Si hacemos una analogía con construir un edificio y construir software diciendo que los ladrillos, columnas son piezas de software que no necesariamente desarrollamos nosotros sino de las que nos servimos como apoyo, la diferencia a destacar es que en el software los elementos no son estáticos, el software está en constante cambio y tenemos que cambiar constantemente los ladrillos de nuestro software. Así se escoja piezas de software altamente utilizadas con una larga duración en el mercado pueden dejar de utilizarse y ser necesario un cambio.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;En el siglo pasado adquiríamos un producto cerrado. Ahora se tiende a servicios que incorporan constantemente cambios.&lt;/div&gt;&lt;h2 style="text-align: left;"&gt;¿Por qué no es posible tener la última versión?&lt;/h2&gt;&lt;p style="text-align: left;"&gt;La última versión no es compatible.&amp;nbsp;&lt;/p&gt;&lt;p style="text-align: left;"&gt;Como estamos integrando varios programas hay dependencias. Cuando se actualiza el software no solo es por mejorar la seguridad, puede darse un cambio de estructura, actualización del lenguaje, funcionalidad, etc. Algunos cambios hace que se produzca un cambio importante que hace que la nueva versión no sea compatible con otras versiones.&amp;nbsp;&lt;/p&gt;&lt;p style="text-align: left;"&gt;Por ejemplo, nuestro software puede no ser compatible con versiones 1.x.x y 2.x.x pero si con la 3.x.x, 4.x.x pero cuando sale la 5.x.x no es compatible porque hay cambio en el lenguaje así que para poder actualizar toca realizar cambios en nuestro software.&lt;/p&gt;&lt;p style="text-align: left;"&gt;Se suele utilizar una forma de nombrado o versionado para indicar cambios menores y por lo tanto si se usa un software 1.1.1 y se pasa a utilizar el 1.2.0 no debe ser problemático pues es un pequeño cambio. Un cambio más grande que puede crear la necesidad de cambio en nuestro código para poder adaptarlo puede ser pasar de un 1.4.10 a 2.0.0. Sin embargo, si se introduce un fallo da igual si es un cambio pequeño 1.1.1 a 1.1.2.&lt;/p&gt;&lt;h2 style="text-align: left;"&gt;¿Por qué no es deseable tener la última versión?&lt;/h2&gt;&lt;div&gt;La última versión tiene fallos.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Sí, la recomendación es que nuestro software esté con las últimas actualizaciones por seguridad. ¿Acaso no pueden introducir algún problema en la última versión? Sí, aunque se haga todo lo posible por evitar esto puede pasar. Así que la solución suele ser liberar una nueva versión que soluciona el fallo pero hasta que pasa eso, que pueden ser horas, meses o nunca, se opta por volver a una versión anterior.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Como caso particular una vez trabajaba con un &lt;i&gt;plugin&lt;/i&gt; para un software costoso, ampliamente utilizado y tanto el programa principal como el &lt;i&gt;plugin&lt;/i&gt; eran desarrollados por la misma empresa. Desde soporte solo se ofreció realizar el trabajo del &lt;i&gt;plugin&lt;/i&gt; por lo que debía enviar mis archivos a ellos. Para mí no era una solución ya que quería tener el control de usar varias veces el plugin. Además, como suele ser lo usual el fabricante tiene las versiones anteriores disponibles, pues este fabricante no las facilitaba. Y el fallo mío fue tampoco &lt;b&gt;tener las versiones anteriores que funcionaron&lt;/b&gt;. Tardaron en sacar la nueva versión sin el fallo casi un año.&lt;/div&gt;&lt;h2 style="text-align: left;"&gt;Realizar actualizaciones puede ser fácil pero no rápido&lt;/h2&gt;&lt;div&gt;Debido a la dependencia que existe entre las distintas piezas de software que integran nuestro programa cuando se actualiza una parte puede afectar a varias y así no funcionar. Entonces, toca buscar la versión más actual posible sin fallos que sea compatible con el resto de programas.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Cuando no es compatible puede ser por un cambio mayor el cual tiene como efecto que debamos hacer cambios en nuestro código para poder hacerlo compatible. ¿Y por qué vamos a querer esto? Porque queremos avanzar con el resto de componentes que ayudan a nuestro software porque las versiones antiguas no se les suele seguir dando soporte, ni mejoras, ni nada.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2022-09-28&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg3JBpuDDaMqO1F-wJBECtJmxNJcCVNPT2B9EOtpI1lhklGJTzZSgE9gzDpqNKlYDdna6BLvnrLs8LzdQClcvOVP-XDex7awAomvMEP01embgn8dy4bSnOjqvXuhqfejXKcDfIv9APIQeXsvgcYD0YIVVjzpSnMCmIlDB23RVW89QqzgDds03dGkxLoooGW/s72-w640-h426-c/20240720094404_caida-de-microsoft-aeropu_amp_w1200.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Contradicciones necesarias</title><link>http://www.jpromero.com/2015/03/contradicciones-necesarias.html</link><category>idea</category><category>Opinión</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 8 Mar 2025 11:40:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-4515458589400015384</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBzOlnMoikp_Bvv3VfUZMzloEvPDxI2OgC2aPes0S_FiQ739kNFFjVmkDYVYuYFpIYi-6vW7g3TeemukZZ0KDnIuz52I68FLlCHBPzixF1Lh0qno5SvmNIsmxmg6A3vCvJmWn1USlLpEDnj4GV4yzx8CXXfAD2hsUcCR7pDdfUq0Fef_Ei1gh41KwJ2xZp/s612/istockphoto-978491812-612x612.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="612" data-original-width="612" height="400" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBzOlnMoikp_Bvv3VfUZMzloEvPDxI2OgC2aPes0S_FiQ739kNFFjVmkDYVYuYFpIYi-6vW7g3TeemukZZ0KDnIuz52I68FLlCHBPzixF1Lh0qno5SvmNIsmxmg6A3vCvJmWn1USlLpEDnj4GV4yzx8CXXfAD2hsUcCR7pDdfUq0Fef_Ei1gh41KwJ2xZp/w400-h400/istockphoto-978491812-612x612.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;
A veces la vida o las personas parecen contradictorias, y no lo es. Tan solo hay diferencias sutiles, que debemos ser capaces de entender. Es por ello, que muchas veces es ahí donde se ve la diferencia entre quienes tienen desarrollada su capacidad de razonamiento, de abstracción. Además, considero que parte de adquirir sabiduría es el entender la necesidad de un equilibrio entre cosas que parecen contradictorias, necesarias a la vez. Incluso concurrentes, y con eso pienso en la concurrencia desde un punto de vista informático, en la cual, es real o simulada, pero necesaria para una mejora de sus acciones, acciones que curiosamente pueden parecer que complican las cosas y contradicen lo que acabo de decir, ya que esa mejora facilita unas cosas gracias a la complejidad de otras.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Uno de los ejemplos que me viene a la mente es el de «República democrática», pues se puede considerar una contradicción si consideramos, por un lado, que una república es la supremacía de la ley sobre todo; esto nos lleva a pensar en una república pura es en la que se respeta la ley sea o no justa, la supremacía de la ley está por encima de todo, pudiendo llegar a la ejecución de un inocente simplemente porque lo manda la ley. Mientras que, por otro lado, una democracia entendida como el poder del pueblo en un Estado, quien tiene la supremacía es el pueblo y el sistema comúnmente utilizado es el de la mayoría prevalece; así que, si la mayoría quiere la ejecución de una persona así debería ser, en una democracia pura y extrema para destacar lo que implicaría tal cosa. Entonces, el decir «república democrática» desde esa perspectiva parece contradictoria porque en la una prevalece la ley y en la otra la voluntad de un pueblo. Y en realidad pueden coexistir, simultáneamente, para permitir que no exista los extremos que implicaría cada una de ellas en su estado puro, como se indica en los ejemplos supuestos.&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div style="text-align: justify;"&gt;
Con respecto a temas ideológicos, muchas personas dicen ser de una tendencia, como por ejemplo de izquierda, y sin embargo, tienen actuaciones de ideología contraria, de derecha. En éste punto, viene a mi mente la lógica borrosa, en la que algo puede tener posibilidades de ser varias cosas a la vez, es decir, se puede hablar de la posibilidad, de que un día llueva con un porcentaje, así como, de la posibilidad de que haga sol, y al ser posibilidades no tienen por qué su suma ser uno, pues no es que sean opuestos. Del mismo modo, creo, una persona puede actuar con un determinado porcentaje con tendencia de derecha y con otro porcentaje con tendencia de izquierda. Y en cada individuo ser diferente. Puede parecer contradictorio, y no es que lo sea o no lo sea —he aquí otra cosa que parece una contradicción—. Puede ser, depende.&lt;br /&gt;
&lt;br /&gt;
Algunas veces podemos ver cómo personas u organizaciones con tintes de una tendencia como puede ser capitalista, de derecha, liberal, etc. financian actividades u organizaciones con tintes de izquierda, pro-ambiente, anti-capitalismo, etc. Sin embargo, lo que se aplica es el tener a sus enemigos aún más cerca, tan cerca que son ellas quién da para su sustento económico y con ello controlas su ámbito de actuar, sumado a que hacen de voceras y por lo tanto, controlan. Control de los ilusos que creen hacer lo que quieren. Muchas veces pueden buscar controlar qué mensaje quieren difundir, otras veces un lavado de imagen, pero, también, captar a personas con buenas intenciones y adoctrinarlas u atraer personas a sus organizaciones; esto es un intentar ganar algo como sea; e incluso algunos, respecto a esto, lo llaman derechización de la izquierda. Estas contradicciones son necesarias para quienes intentan mantener su poder.&lt;br /&gt;
&lt;br /&gt;
La competencia y la colaboración muchas veces las confrontan como si no se pudieran compatibilizar. Y, creo, es justamente lo necesario. La competencia vista como el destruye a tu contrincante, busca el monopolio, etc. es el problema. Tampoco se trata de colabora con tu grupo de amigos para destruir a otros, como si de un oligopolio hablásemos. Se trata de competir sin buscar la desgracia de los demás, incluso, cooperando y ayudando a los demás. Una competencia por sobresalir y mejorar tu versión pasada, mas no de ser mejor que los demás. Y en esa competencia contra uno mismo colaborar con los demás para superarnos. Por ejemplo, practicar un deporte y divertirse, esforzarse en mejorar o estar en forma, en disfrutar de los partidos; compartir experiencias con otros equipos, avances, estrategias, etc. Similar ejemplo con las empresas: cada una puede descubrir o innovar en algo y, al conocer todas las empresas esos avances, incorporarlos mejorando a la par.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;2015-03-07&lt;/div&gt;
</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhBzOlnMoikp_Bvv3VfUZMzloEvPDxI2OgC2aPes0S_FiQ739kNFFjVmkDYVYuYFpIYi-6vW7g3TeemukZZ0KDnIuz52I68FLlCHBPzixF1Lh0qno5SvmNIsmxmg6A3vCvJmWn1USlLpEDnj4GV4yzx8CXXfAD2hsUcCR7pDdfUq0Fef_Ei1gh41KwJ2xZp/s72-w400-h400-c/istockphoto-978491812-612x612.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>¿Invertir en armamento?</title><link>http://www.jpromero.com/2025/03/invertir-en-armamento.html</link><category>Brainwriting</category><category>defensa</category><category>idea</category><category>Opinión</category><category>política</category><category>reflexión</category><category>seguridad</category><author>noreply@blogger.com (JP)</author><pubDate>Fri, 7 Mar 2025 15:48:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-5136372959331308783</guid><description>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjar2fP6fDHUDdLXPclzQYKicIN8-x8Csnrr0kus4WbxFSzx7o_NM8RhFJxtqSpdQq6MzTBoWWAyFE84bgBRKJlZYCQj8AobGhnA7pfh2c7VYf4uEzjKS8kCl5l_Yv6SUOTgqBNZWmeADi0E_XRY4jefEBMSgJHvkZT1rdVNLdeWabvENopEZ6s-6nmCsP-/s1400/0*PxziYjyqXf6FcF9m.jpg" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img alt="Turin Machine from the movie The Imitation Game" border="0" data-original-height="680" data-original-width="1400" height="194" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjar2fP6fDHUDdLXPclzQYKicIN8-x8Csnrr0kus4WbxFSzx7o_NM8RhFJxtqSpdQq6MzTBoWWAyFE84bgBRKJlZYCQj8AobGhnA7pfh2c7VYf4uEzjKS8kCl5l_Yv6SUOTgqBNZWmeADi0E_XRY4jefEBMSgJHvkZT1rdVNLdeWabvENopEZ6s-6nmCsP-/w400-h194/0*PxziYjyqXf6FcF9m.jpg" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Lo de estar en contra de invertir en armamento se puede ver desde una perspectiva propia de quien puede profesar empatía, pero solo en casos de su interés, y no empatiza cuando se queja de que un representante político tenga seguridad, hasta que la persona que se queja o uno de los suyos está en una situación similar, en la que su casa tiene que estar protegida y debe convivir con resguardo policial por su propia seguridad, la de su familia o la de la gente que protesta en su contra.&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Si tenemos una sociedad donde todos son amables y respetan a los demás, ¿cómo nos protegemos de los externos? Es ingenuidad, falta de empatía y de previsión no pensar en ello ni actuar en consecuencia.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Por supuesto que hay otras perspectivas, pero resalto la que parece olvidarse. Claro que se debe invertir más en otras áreas como sanidad, educación, y justicia. ¿Acaso no se pueden encontrar áreas en común con estas áreas? ¡Imaginación y creatividad, por favor!&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;Invertir en armamento no significa invertir en destruir. Es falta de imaginación o una visión limitada pensar así, pues toda herramienta depende del uso que se le dé y no de la herramienta en sí. Que se use para destruir no quiere decir que sea la única forma de hacerlo. Es como si quisiéramos prohibir los cuchillos porque con ellos se puede matar personas.&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;La inversión en armas puede acogerse a dos enfoques con el fin de hacerlo de una mejor forma:&amp;nbsp;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;a) Que no causen daño, como dispositivos que duerman a las personas en vez de quemarlas, o instrumentos que deshabiliten bombas enemigas.&lt;/li&gt;&lt;li&gt;b) Si se pueden prever beneficios añadidos a la sociedad, mejor aún. Mucha de la tecnología de uso común, como microondas, internet, WiFi y computadoras, tiene su origen o mejora en un entorno militar.&lt;/li&gt;&lt;/ul&gt;E incluso añadiría otras reglas por las que puede dirigirse un Estado:&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;ul&gt;&lt;li&gt;Priorizar los negocios con empresas según este orden: locales, comunitarias, aliados y luego el resto.&lt;/li&gt;&lt;li&gt;Trabajar en la transformación de un Estado sustentado en impuestos hacia un Estado que obtiene dividendos. Que el Estado sea inversor en empresas con el fin de obtener ingresos, reduciendo así su dependencia de los impuestos y logrando ingresos a partir de la productividad de las empresas en las que ha invertido. Sí, los impuestos puede ser una forma más fácil de obtener ingresos pero entra en juego la percepción que se puede tener en la forma de obtenerlos o el nombre que lo representa como: impuesto vs dividendo, lo que me trae a la mente otros términos usados en otras áreas como gratuito vs gracias a los contribuyentes, inversión vs gasto, presupuesto vs gasto; el nombre toma importancia en la percepción.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjar2fP6fDHUDdLXPclzQYKicIN8-x8Csnrr0kus4WbxFSzx7o_NM8RhFJxtqSpdQq6MzTBoWWAyFE84bgBRKJlZYCQj8AobGhnA7pfh2c7VYf4uEzjKS8kCl5l_Yv6SUOTgqBNZWmeADi0E_XRY4jefEBMSgJHvkZT1rdVNLdeWabvENopEZ6s-6nmCsP-/s72-w400-h194-c/0*PxziYjyqXf6FcF9m.jpg" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>More inefficient when we take on more projects</title><link>http://www.jpromero.com/2022/09/more-inefficient-when-we-take-on-more.html</link><category>management</category><author>noreply@blogger.com (JP)</author><pubDate>Sun, 25 Sep 2022 15:17:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-9071043565682519034</guid><description>When we work in two projects, and &lt;b&gt;we swap from one to the other we have a cost&lt;/b&gt;. We know that two times 50% equal 100%, but it is not always as a valid analogy to use in some context. When two people work half time that not necessary mean one person can do the same work in a day.&lt;br /&gt;&lt;blockquote&gt;"While it takes one woman nine months to make one baby, nine women can't make a baby in one month."&lt;br /&gt;&lt;br /&gt;From &lt;a href="https://en.wikipedia.org/wiki/Brooks%27s_law"&gt;Brooks's Law&lt;/a&gt;&lt;/blockquote&gt;At the end of the former century it was when we use the term multitasking operatins system with computers that only had one CPU. It appears to work in many tasks at the same time but it is not. What really happen is the CPU work in one task A during certain time, save the status of the task A, then start or continue with a task B during certain time, and so on. That means the computer works for a lapse of time in one task at a time and then in another, then to finish one task it could takes many work lapses on the task. This happen so quickly that seems to do many tasks at the same time. But this &lt;b&gt;context switching have a cost&lt;/b&gt;.&lt;br /&gt;&lt;h2 style="text-align: left;"&gt;Multitasking is not as effective as appears&lt;/h2&gt;Also, &lt;b&gt;people must let all ready to continue a tasks in the future&lt;/b&gt; when is stoping a current task that is not finished yet. Then when they retake on the task it would be easier to continue and to go in a flow state, be productive. &lt;b&gt;Sometimes to change context is necessary&lt;/b&gt; to refresh ideas, let time to creativity, have other perspectives. This is context switching in order to rest some area that need it. If the sight sense is tired then to move to other project does not mean to rest the sight if both projects need an effort of sight.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;For each additional project someone undertakes, he lose up 20% &lt;/b&gt;of his time to the act of context switching. (1). In the next figure we can see if we work in three projects we lost up 40% in context switching instead of doing the work then the time to work would be 20% to each project instead 33,33%.&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;(100% – 20%) / 2 = 40% available to each of the 2 projects.&lt;/li&gt;&lt;li&gt;(100% – 40%) / 3 = 20% available to each of the 3 projects.&lt;/li&gt;&lt;li&gt;(100% – 60%) / 4 = 10% available to each of the 4 projects.&lt;/li&gt;&lt;li&gt;(100% – 80%) / 5 = 4% available to each of the 5 projects.&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTix0Amdobacu7Ng4FRAhZm-FgxEO_LMdErLycRtFcqBRvTgpUnfv24jK8WlyRV8LitD4vtUxGWjqSJlmvLVmRK6VoifgMM-W_ok4JEz4yIzpsQT3FyrJMjL0uX50OlsNOcrKApV9A3G-crhe08DaaEdYzdQ19hJtf6_evPUBpCtL0MAjFE7M0fHIcxA/s1013/Screenshot%202022-09-25%20at%2015.15.22.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="570" data-original-width="1013" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTix0Amdobacu7Ng4FRAhZm-FgxEO_LMdErLycRtFcqBRvTgpUnfv24jK8WlyRV8LitD4vtUxGWjqSJlmvLVmRK6VoifgMM-W_ok4JEz4yIzpsQT3FyrJMjL0uX50OlsNOcrKApV9A3G-crhe08DaaEdYzdQ19hJtf6_evPUBpCtL0MAjFE7M0fHIcxA/w640-h360/Screenshot%202022-09-25%20at%2015.15.22.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;From the side of a client we can think about if we hire someone who is working in many projects, as more they would be less would be the time to our project (it could affect in quality or the time to finish the work).&lt;br /&gt;&lt;h2 style="text-align: left;"&gt;How to cut the cost of switching context?&lt;/h2&gt;First at all, we can &lt;b&gt;delegate, pospone, do it&lt;/b&gt;. For a company to delegate would be assigned it to a free group. Same as a computer uses more than one CPU.&lt;br /&gt;&lt;br /&gt;If we will work on several project then we need to &lt;b&gt;find a way to do the context switching efficiently&lt;/b&gt;, to reduce as much as posible the cost and to do a quick switching and continue where it was paused. We can &lt;b&gt;learn agile frameworks and metrologies&lt;/b&gt; where it is used small task that are atomised, that meas they are divided in small tasks, detailed, understandable to not lost time understanding what is the task and if something is necessary, they have an precisely action to do.&lt;br /&gt;&lt;br /&gt;Brooks' Law is about projects that are behind schedule and if we add manpower, it will cause them to be further behind schedule. Then when we can &lt;b&gt;add manpower at the beginning of a project&lt;/b&gt; with less cost than if we do it in a later time. More later more cost. Also, there are tasks that can do new manpower and it does not necessary cause delay to the project because these tasks are complementary, do not have an impact in others tasks, need to be started, are not complex. &lt;br /&gt;&lt;br /&gt;Just as two part-time people do not necessarily do the work of one. If both people are inexperienced, neither full-timer will do the job of a part-time expert. For this reason, &lt;b&gt;introducing highly qualified personnel&lt;/b&gt;, without being more than necessary, can shorten times if it does not entail the incorporation of other techniques, methodologies whose use or learning of these is another impediment. The &lt;b&gt;knowledge of the tools, knowledge about the needed area, similar projects&lt;/b&gt;, etc. have a great influence.&lt;br /&gt;&lt;br /&gt;So, do not make the mistake of lightly using an engineer, architect, programmer as any other resource (a battery) as a replacement for another without this causing a cost. If in the change of a battery can be repercussions then there can be much more repercussions in the change of people. And &lt;b&gt;the more specialised or complex the project, the more notorious the change in human resources&lt;/b&gt;.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;h4 style="text-align: left;"&gt;References&lt;/h4&gt;&lt;/div&gt;&lt;div&gt;(1) Gerald Marwin Weinberg. &lt;a href="https://www.amazon.es/Introduction-General-Systems-Thinking/dp/0932633498/"&gt;An Introduction to General Systems Thinking&lt;/a&gt;.&lt;br /&gt;Don McGreal, Ralph Jocham. &lt;a href="https://www.amazon.es/Professional-Product-Owner-Leveraging-Competitive/dp/0134686470/"&gt;The Professional Product Owner&lt;/a&gt;.&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiTix0Amdobacu7Ng4FRAhZm-FgxEO_LMdErLycRtFcqBRvTgpUnfv24jK8WlyRV8LitD4vtUxGWjqSJlmvLVmRK6VoifgMM-W_ok4JEz4yIzpsQT3FyrJMjL0uX50OlsNOcrKApV9A3G-crhe08DaaEdYzdQ19hJtf6_evPUBpCtL0MAjFE7M0fHIcxA/s72-w640-h360-c/Screenshot%202022-09-25%20at%2015.15.22.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>How to hide toolbar buttons in Autodesk Forge Viewer?</title><link>http://www.jpromero.com/2022/09/how-to-hide-toolbar-buttons-in-autodesk.html</link><category>Autodesk</category><category>code</category><category>forge</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 24 Sep 2022 12:05:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-1985682616158301596</guid><description>&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjx0O4WcPEKV37qCY4Z4zYtR0z8kHDvGpdIOcj6EKVr28fn1CHjdq2itlpXXzRSoHqc3K7fWOmDDUuB1LxBoYB53h_zWJH12oEliYQ3caGvSqYCCwn-AB20oA2NV03wdI6A-ctZcx5QEj9hzl6-yk-frNdiOK3ra4PI2WqLL074Y5KsbFDuodsyC6n5lQ/s2120/forge.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="884" data-original-width="2120" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjx0O4WcPEKV37qCY4Z4zYtR0z8kHDvGpdIOcj6EKVr28fn1CHjdq2itlpXXzRSoHqc3K7fWOmDDUuB1LxBoYB53h_zWJH12oEliYQ3caGvSqYCCwn-AB20oA2NV03wdI6A-ctZcx5QEj9hzl6-yk-frNdiOK3ra4PI2WqLL074Y5KsbFDuodsyC6n5lQ/w640-h266/forge.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;First, we can print in console the &lt;b&gt;toolbar&lt;/b&gt;&amp;nbsp;variable in order to show &lt;b&gt;controls&lt;/b&gt;&amp;nbsp;values. These are the sections of the toolbar.&lt;p&gt;&lt;/p&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEik1vY7rAFdWsYPEFiQSPiZPntWXOKBekW-w5-Tatq6RctTTouklcXHyM4-7E0dyLnPH4tkagu8JD-DJbk8-fRpqQzlAFhtYBVEytL1Wkha4wrv9e1uDYt7h-sJYoSacVoOrATenxvZW591IpP8TsX_wWuhNkMx3MOvCigNJqCiFBcSF2WyLzsq_OL0CQ/s1994/autodesk-forge-toolbar-console.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="624" data-original-width="1994" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEik1vY7rAFdWsYPEFiQSPiZPntWXOKBekW-w5-Tatq6RctTTouklcXHyM4-7E0dyLnPH4tkagu8JD-DJbk8-fRpqQzlAFhtYBVEytL1Wkha4wrv9e1uDYt7h-sJYoSacVoOrATenxvZW591IpP8TsX_wWuhNkMx3MOvCigNJqCiFBcSF2WyLzsq_OL0CQ/w640-h200/autodesk-forge-toolbar-console.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;Each control:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;navTools&lt;/li&gt;&lt;li&gt;measureTools&lt;/li&gt;&lt;li&gt;modelTools&lt;/li&gt;&lt;li&gt;settingsTools&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Then, if we expand one of them we can see the buttons inside&amp;nbsp;&lt;b&gt;controls&lt;/b&gt;.&amp;nbsp;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7jwDxkfUrwkzBCRcX3w_XnFTF__jFzJBPPyuf468YsEEQlajecEwAKbLouuhlZF-k9bX2idKICbilysP9-JYZ8PrsUCdXShiR6KyEoX08CA1BBo0AZjW2kgzSrG0JZoLzp5UbshfQnT9ImMQZLqn_6EXni1okjaH-syYxRHYmJUhG9i1mvcZo9f8TWg/s1996/autodes-forge-toolbar-console-navTools.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="554" data-original-width="1996" height="178" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7jwDxkfUrwkzBCRcX3w_XnFTF__jFzJBPPyuf468YsEEQlajecEwAKbLouuhlZF-k9bX2idKICbilysP9-JYZ8PrsUCdXShiR6KyEoX08CA1BBo0AZjW2kgzSrG0JZoLzp5UbshfQnT9ImMQZLqn_6EXni1okjaH-syYxRHYmJUhG9i1mvcZo9f8TWg/w640-h178/autodes-forge-toolbar-console-navTools.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;To hide or to remove the camera button we can do this:&lt;/p&gt;
&lt;div id="codigo"&gt;
&lt;pre&gt;&lt;code&gt;&lt;i&gt;this.viewer&lt;/i&gt;.toolbar&lt;b&gt;.getControl('navTools').removeControl('toolbar-cameraSubmenuTool');&lt;/b&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Let's remove some more buttons and see how it is showed.&lt;/p&gt;
&lt;div id="codigo"&gt;
&lt;pre&gt;&lt;code&gt;&lt;i&gt;this.viewer&lt;/i&gt;.toolbar.getControl('settingsTools').removeControl('toolbar-propertiesTool');&lt;br /&gt;&lt;i&gt;this.viewer&lt;/i&gt;.toolbar.getControl('settingsTools').removeControl('toolbar-modelStructureTool');&lt;br /&gt;&lt;i&gt;this.viewer&lt;/i&gt;.toolbar.getControl('settingsTools').removeControl('toolbar-settingsTool');&lt;br /&gt;&lt;i&gt;this.viewer&lt;/i&gt;.toolbar.getControl('modelTools').removeControl('toolbar-explodeTool');&lt;/code&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_Vca3Wx5HlUkHdRLTW26Ayl6goAFKcKRGacbca-PXRwU7z3NG2R92xmeHXhPPqm4kOHSLJV_soGCCfPzdIwRTO-ilD9sZRGO8yVDoiOAEYsP8gj3i8RkB8PZDz47XWMr9RpEukfZaG3uSwezPy5gIrAEdm-qeWJXnJFxvFKNKAKXj32Zd_xgH9g3JGA/s2114/autodesk-forge-toolbar-code-hide-buttons.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="878" data-original-width="2114" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_Vca3Wx5HlUkHdRLTW26Ayl6goAFKcKRGacbca-PXRwU7z3NG2R92xmeHXhPPqm4kOHSLJV_soGCCfPzdIwRTO-ilD9sZRGO8yVDoiOAEYsP8gj3i8RkB8PZDz47XWMr9RpEukfZaG3uSwezPy5gIrAEdm-qeWJXnJFxvFKNKAKXj32Zd_xgH9g3JGA/w640-h266/autodesk-forge-toolbar-code-hide-buttons.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;
&lt;style&gt;
#codigo{
color:#ffffff;
background:#000000;
  overflow-x:scroll;
}
&lt;/style&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjx0O4WcPEKV37qCY4Z4zYtR0z8kHDvGpdIOcj6EKVr28fn1CHjdq2itlpXXzRSoHqc3K7fWOmDDUuB1LxBoYB53h_zWJH12oEliYQ3caGvSqYCCwn-AB20oA2NV03wdI6A-ctZcx5QEj9hzl6-yk-frNdiOK3ra4PI2WqLL074Y5KsbFDuodsyC6n5lQ/s72-w640-h266-c/forge.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>¿Cómo ocultar botones de la barra de menú de Autodesk Forge?</title><link>http://www.jpromero.com/2022/09/como-ocultar-botones-de-la-barra-de.html</link><category>Autodesk</category><category>código</category><category>terminal</category><author>noreply@blogger.com (JP)</author><pubDate>Thu, 22 Sep 2022 13:55:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-1131618464656062472</guid><description>&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjx0O4WcPEKV37qCY4Z4zYtR0z8kHDvGpdIOcj6EKVr28fn1CHjdq2itlpXXzRSoHqc3K7fWOmDDUuB1LxBoYB53h_zWJH12oEliYQ3caGvSqYCCwn-AB20oA2NV03wdI6A-ctZcx5QEj9hzl6-yk-frNdiOK3ra4PI2WqLL074Y5KsbFDuodsyC6n5lQ/s2120/forge.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="884" data-original-width="2120" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjx0O4WcPEKV37qCY4Z4zYtR0z8kHDvGpdIOcj6EKVr28fn1CHjdq2itlpXXzRSoHqc3K7fWOmDDUuB1LxBoYB53h_zWJH12oEliYQ3caGvSqYCCwn-AB20oA2NV03wdI6A-ctZcx5QEj9hzl6-yk-frNdiOK3ra4PI2WqLL074Y5KsbFDuodsyC6n5lQ/w640-h266/forge.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;Podemos empezar imprimiendo en consola la variable &lt;b&gt;toolbar&lt;/b&gt; para ver los valores de &lt;b&gt;controls&lt;/b&gt;. Los cuales son las secciones en las que se divide la barra.&lt;p&gt;&lt;/p&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEik1vY7rAFdWsYPEFiQSPiZPntWXOKBekW-w5-Tatq6RctTTouklcXHyM4-7E0dyLnPH4tkagu8JD-DJbk8-fRpqQzlAFhtYBVEytL1Wkha4wrv9e1uDYt7h-sJYoSacVoOrATenxvZW591IpP8TsX_wWuhNkMx3MOvCigNJqCiFBcSF2WyLzsq_OL0CQ/s1994/autodesk-forge-toolbar-console.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="624" data-original-width="1994" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEik1vY7rAFdWsYPEFiQSPiZPntWXOKBekW-w5-Tatq6RctTTouklcXHyM4-7E0dyLnPH4tkagu8JD-DJbk8-fRpqQzlAFhtYBVEytL1Wkha4wrv9e1uDYt7h-sJYoSacVoOrATenxvZW591IpP8TsX_wWuhNkMx3MOvCigNJqCiFBcSF2WyLzsq_OL0CQ/w640-h200/autodesk-forge-toolbar-console.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;Podemos ver que &amp;nbsp;cada sección se llama:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;navTools&lt;/li&gt;&lt;li&gt;measureTools&lt;/li&gt;&lt;li&gt;modelTools&lt;/li&gt;&lt;li&gt;settingsTools&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;Y si expandimos una de ellas podemos ver que dentro encontramos &lt;b&gt;controls&lt;/b&gt; donde está cada botón de la sección.&amp;nbsp;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7jwDxkfUrwkzBCRcX3w_XnFTF__jFzJBPPyuf468YsEEQlajecEwAKbLouuhlZF-k9bX2idKICbilysP9-JYZ8PrsUCdXShiR6KyEoX08CA1BBo0AZjW2kgzSrG0JZoLzp5UbshfQnT9ImMQZLqn_6EXni1okjaH-syYxRHYmJUhG9i1mvcZo9f8TWg/s1996/autodes-forge-toolbar-console-navTools.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="554" data-original-width="1996" height="178" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7jwDxkfUrwkzBCRcX3w_XnFTF__jFzJBPPyuf468YsEEQlajecEwAKbLouuhlZF-k9bX2idKICbilysP9-JYZ8PrsUCdXShiR6KyEoX08CA1BBo0AZjW2kgzSrG0JZoLzp5UbshfQnT9ImMQZLqn_6EXni1okjaH-syYxRHYmJUhG9i1mvcZo9f8TWg/w640-h178/autodes-forge-toolbar-console-navTools.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;Es decir, si queremos ocultar la cámara de la primera sección tenemos que hacer algo como:&lt;/p&gt;
&lt;div id="codigo"&gt;
&lt;pre&gt;&lt;code&gt;
this.viewer.toolbar.getControl('navTools').removeControl('toolbar-cameraSubmenuTool');
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Vamos a ocultar algunas más y ver el resultado.&lt;/p&gt;
&lt;div id="codigo"&gt;
&lt;pre&gt;&lt;code&gt;this.viewer.toolbar.getControl('settingsTools').removeControl('toolbar-propertiesTool');&lt;br /&gt;this.viewer.toolbar.getControl('settingsTools').removeControl('toolbar-modelStructureTool');&lt;br /&gt;this.viewer.toolbar.getControl('settingsTools').removeControl('toolbar-settingsTool');&lt;br /&gt;this.viewer.toolbar.getControl('modelTools').removeControl('toolbar-explodeTool');&lt;/code&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_Vca3Wx5HlUkHdRLTW26Ayl6goAFKcKRGacbca-PXRwU7z3NG2R92xmeHXhPPqm4kOHSLJV_soGCCfPzdIwRTO-ilD9sZRGO8yVDoiOAEYsP8gj3i8RkB8PZDz47XWMr9RpEukfZaG3uSwezPy5gIrAEdm-qeWJXnJFxvFKNKAKXj32Zd_xgH9g3JGA/s2114/autodesk-forge-toolbar-code-hide-buttons.png" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="878" data-original-width="2114" height="266" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg_Vca3Wx5HlUkHdRLTW26Ayl6goAFKcKRGacbca-PXRwU7z3NG2R92xmeHXhPPqm4kOHSLJV_soGCCfPzdIwRTO-ilD9sZRGO8yVDoiOAEYsP8gj3i8RkB8PZDz47XWMr9RpEukfZaG3uSwezPy5gIrAEdm-qeWJXnJFxvFKNKAKXj32Zd_xgH9g3JGA/w640-h266/autodesk-forge-toolbar-code-hide-buttons.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;
&lt;style&gt;
#codigo{
color:#ffffff;
background:#000000;
  overflow-x:scroll;
}
&lt;/style&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjx0O4WcPEKV37qCY4Z4zYtR0z8kHDvGpdIOcj6EKVr28fn1CHjdq2itlpXXzRSoHqc3K7fWOmDDUuB1LxBoYB53h_zWJH12oEliYQ3caGvSqYCCwn-AB20oA2NV03wdI6A-ctZcx5QEj9hzl6-yk-frNdiOK3ra4PI2WqLL074Y5KsbFDuodsyC6n5lQ/s72-w640-h266-c/forge.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Script para reiniciar audio en Mac</title><link>http://www.jpromero.com/2022/06/script-para-reiniciar-audio-en-mac.html</link><category>automator</category><category>Mac</category><category>script</category><author>noreply@blogger.com (JP)</author><pubDate>Wed, 8 Jun 2022 20:13:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-2219429276292928520</guid><description>&lt;p&gt;Para restablecer el sistema de audio en OS X, la forma en la que lo hacía era buscar el comando para ejecutarlo desde terminal.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;b&gt;sudo -s killall coreaudiod&lt;/b&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;Dado que he necesitado varias veces hacerlo y no recuerdo el mandato lo asigno a un atajo de teclado.&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Abrir Automator para crear un servicio. Escoger opción "Quick Action"&lt;/li&gt;&lt;li&gt;Agregar el paso "Run Shell Script"&lt;/li&gt;&lt;li&gt;Escribir el código:&lt;/li&gt;&lt;/ul&gt;&lt;blockquote&gt;&lt;b&gt;osascript -e 'do shell script "sudo -s killall coreaudiod" with administrator privileges'&lt;/b&gt;&lt;/blockquote&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Indicar "no input" en cualquier aplicación como entrada a recibir&lt;/li&gt;&lt;li&gt;Guardar&lt;/li&gt;&lt;/ul&gt;&lt;div&gt;(De esta forma se ejecuta el comando solicitando la contraseña necesaria para aprobar la acción)&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTKdC0LxJJ7QNrGhXNQUa9U_x9NkOnjhuQZzptKf-TLD8UiQHMTnqIOsupyGv9O_p94J2mpaXjkLxGLGOeS3xu2FwXDafvYJZ-yswkJ0EMZY7dUKAZW59VEFhOQu1uWd5dkCdgWwmnig4h2ZpY24jkhUULfOOAV7HgM9TWW6udFEvlB5mJMPcbfLFV1A/s1062/automator-quick%20action.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="942" data-original-width="1062" height="355" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTKdC0LxJJ7QNrGhXNQUa9U_x9NkOnjhuQZzptKf-TLD8UiQHMTnqIOsupyGv9O_p94J2mpaXjkLxGLGOeS3xu2FwXDafvYJZ-yswkJ0EMZY7dUKAZW59VEFhOQu1uWd5dkCdgWwmnig4h2ZpY24jkhUULfOOAV7HgM9TWW6udFEvlB5mJMPcbfLFV1A/w400-h355/automator-quick%20action.png" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgz_G0q-MqxB9PoZgiIFaDZh4q2RJkt3T6j2LNPI3jlyj2lk1DhZMfXUd2IqGK34Y6fJGFB38c9k59yFpfuvZv9oAKwsu3ippK0LBVuaKjrwLHllm-YwXNnhKO9x1m4IhLcVZF8--FUXHBGb6J7Bbh7Y5LXQZnzY4FpY_R7DtXHCQU6ZsC0aySeBKeWbg/s1982/reiniciar%20coreaudiod.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="848" data-original-width="1982" height="274" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgz_G0q-MqxB9PoZgiIFaDZh4q2RJkt3T6j2LNPI3jlyj2lk1DhZMfXUd2IqGK34Y6fJGFB38c9k59yFpfuvZv9oAKwsu3ippK0LBVuaKjrwLHllm-YwXNnhKO9x1m4IhLcVZF8--FUXHBGb6J7Bbh7Y5LXQZnzY4FpY_R7DtXHCQU6ZsC0aySeBKeWbg/w640-h274/reiniciar%20coreaudiod.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Para agregar un atajo de teclado&lt;/div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Ir a Preferencias del sistema - Teclado - Atajos - Servicios&lt;/li&gt;&lt;li&gt;En el listado debe estar el &lt;i&gt;script&lt;/i&gt; creado anteriormente (Una vez creado como Acción rápida y guardado con el nombre indicado se muestra en esa sección) Agregar una combinación de teclas a utilizar para ejecutar el &lt;i&gt;script&lt;/i&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiovLEMMHOvgwCrPWkUfy7VQZwZFW_wLB3LiNX4z-niYzGSxm1EMD9uN4YFqYs2wcB38xGzTCevQI2eRk_JkvhhPblJw_AeiKlYCPpgrtwmePApff7tbP6XR0IvXWs0UaYr03Og5xqA1G_Jh8sypJmiUCxTOvIkE6dsKC-JuHJIewi09OxlIzLyZP_chA/s1560/crear%20atajo%20de%20teclado%20en%20mac.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="1416" data-original-width="1560" height="580" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiovLEMMHOvgwCrPWkUfy7VQZwZFW_wLB3LiNX4z-niYzGSxm1EMD9uN4YFqYs2wcB38xGzTCevQI2eRk_JkvhhPblJw_AeiKlYCPpgrtwmePApff7tbP6XR0IvXWs0UaYr03Og5xqA1G_Jh8sypJmiUCxTOvIkE6dsKC-JuHJIewi09OxlIzLyZP_chA/w640-h580/crear%20atajo%20de%20teclado%20en%20mac.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Una vez hecho todo esto al usar el atajo de teclado se ejecuta el &lt;i&gt;script&lt;/i&gt; solicitando la autorización necesaria.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi48Bi6XeDE2hRb-Tkr0KuWSUv8t-waWPo9uR0_BtHQ1w8CuMoU-izkYzrQKEQZp8igOh-K5BVZwxKcXXo-VJcOazPulnBTZy7JohQkhrocjZdOMUJrjA890Pgwj8-fXvPSJ_KZdw9sWuPmPzTo0uiJus_GTiopVL1VtwOoOQw9wNfNBS2tXSTn7a_Y8g/s280/autorizacion%20en%20mac.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="280" data-original-width="256" height="280" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi48Bi6XeDE2hRb-Tkr0KuWSUv8t-waWPo9uR0_BtHQ1w8CuMoU-izkYzrQKEQZp8igOh-K5BVZwxKcXXo-VJcOazPulnBTZy7JohQkhrocjZdOMUJrjA890Pgwj8-fXvPSJ_KZdw9sWuPmPzTo0uiJus_GTiopVL1VtwOoOQw9wNfNBS2tXSTn7a_Y8g/s1600/autorizacion%20en%20mac.png" width="256" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;br /&gt;&lt;/i&gt;&lt;/div&gt;&lt;p&gt;&lt;/p&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTKdC0LxJJ7QNrGhXNQUa9U_x9NkOnjhuQZzptKf-TLD8UiQHMTnqIOsupyGv9O_p94J2mpaXjkLxGLGOeS3xu2FwXDafvYJZ-yswkJ0EMZY7dUKAZW59VEFhOQu1uWd5dkCdgWwmnig4h2ZpY24jkhUULfOOAV7HgM9TWW6udFEvlB5mJMPcbfLFV1A/s72-w400-h355-c/automator-quick%20action.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>¿Qué tienen en común la esclavitud y el patriotismo?</title><link>http://www.jpromero.com/2022/03/que-tienen-en-comun-la-esclavitud-y-el.html</link><category>educación</category><category>idea</category><category>política</category><category>reflexión</category><category>seguridad</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 12 Mar 2022 11:25:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-6175385634274463982</guid><description>&lt;p&gt;En la actualidad querer decir que la esclavitud es algo bueno es inaceptable. Algo que solo se les ocurre a algunos pocos pero rechazada por la inmensa mayoría independientemente de religión, raza, ideología política.&lt;/p&gt;&lt;p&gt;Pensemos por un momento en la humanidad hace miles de años, cómo era cuando aún no existía la agricultura, ganadería y solo existían nómadas en busca de alimentos. Grupos pequeños que iban de un lugar a otro y si se encontraban con otros y luchaban por los recursos posiblemente terminaban matando a sus oponentes. Así que si pasamos de matar a dejarle con vida y obligarle a trabajar, esto facilita la vida al conquistador. Puede poner a trabajar a otros. Obliga a los esclavos a construir, arar, y con ello evoluciona. En ese contexto es un paso adelante. En ese contexto la esclavitud puede ser vista como algo positivo y un avance. Por supuesto no es el único punto de vista a tener. El punto es que algo que ahora es totalmente inaceptable y un retroceso en ese entonces era algo aceptable y un avance. Hay que entender el contexto y significado que pudo tener en aquel entonces; así como Tomas Jefferson, fundador de EE.UU., proclamaba la libertad de toda persona pero tenía esclavos, ya que se liberaban los blancos de tener un rey que gobernaba en Inglaterra pero no se liberaba a los negros pues los consideraban inferiores.&lt;/p&gt;&lt;p&gt;Así mismo el patriotismo conectó a las personas a luchar, avanzar, se hizo sinónimo de orgullo y progreso. Y tras ello podemos distinguir elementos como la unión, confraternización, cooperación y demás características o virtudes. Pero también tenemos que distinguir las negativas.&lt;/p&gt;&lt;p&gt;Hay distintas formas de ver un partido de fútbol en un estadio. Una forma puede ser sentados con familiares, amigos, niños, mayores, mezclados los distintos hinchas, avivando sanamente y disfrutando del juego independiente de los resultados. Otra forma puede ser evitando llevar a mujeres, niños, ancianos, teniendo vallas entre el público y el campo, avivando con insultos, los hinchas separados según equipo, siendo obligados a salir una hinchada y luego otra, con fuertes controles policiales, peleas.&lt;/p&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/a/AVvXsEjLBOU6qVRvVs8yY2bGc5dlwqjZYpfDKz3tYhxZr9B0JaPqxVJlv_mf1pZplwT32NpYcobZrk2zZ9iy3uQ_EClPDQjBEdR1Cana4kEinPo_6uD3fPqkEMKS4JZam3oKa6fXVQjQE5CMaNwvFJoTBtogvvrvhEv17XV_tLhUjc0fDg8wc6tt_gMiN5Z4xA=s644" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="362" data-original-width="644" height="225" src="https://blogger.googleusercontent.com/img/a/AVvXsEjLBOU6qVRvVs8yY2bGc5dlwqjZYpfDKz3tYhxZr9B0JaPqxVJlv_mf1pZplwT32NpYcobZrk2zZ9iy3uQ_EClPDQjBEdR1Cana4kEinPo_6uD3fPqkEMKS4JZam3oKa6fXVQjQE5CMaNwvFJoTBtogvvrvhEv17XV_tLhUjc0fDg8wc6tt_gMiN5Z4xA=w400-h225" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;iframe allowfullscreen="" class="BLOG_video_class" height="266" src="https://www.youtube.com/embed/9fDAzIBvYhs" width="320" youtube-src-id="9fDAzIBvYhs"&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;p&gt;Y así como el ejemplo del futbol, hay rivalidades entre grupos que son de un pueblo con el pueblo vecino, de una región con otra región, de un país con otro país, de una religión con otra religión, un grupo político con otro. Un grupo con un sentido de pertenencia e identificación con el grupo vs el otro. Este mismo sentido de pertenencia se da en el patriotismo. Y mientras siga existiendo el patriotismo negativo seguirán existiendo guerras. Seguirá existiendo: esta tierra era nuestra o, es nuestra, o los unos vs los otros.&lt;/p&gt;&lt;p&gt;Así que la esclavitud y el patriotismo &lt;b&gt;son un ejemplo de algo que en su momento sirvió de avance, evolución pero llega un tiempo en que es un retroceso&lt;/b&gt;. Solo sirven algunos elementos con los que se vincularon: unidad, enfoque en objetivos.&lt;/p&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/a/AVvXsEjLBOU6qVRvVs8yY2bGc5dlwqjZYpfDKz3tYhxZr9B0JaPqxVJlv_mf1pZplwT32NpYcobZrk2zZ9iy3uQ_EClPDQjBEdR1Cana4kEinPo_6uD3fPqkEMKS4JZam3oKa6fXVQjQE5CMaNwvFJoTBtogvvrvhEv17XV_tLhUjc0fDg8wc6tt_gMiN5Z4xA=s72-w400-h225-c" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Crear disparadores (Triggers) en Google Cloud</title><link>http://www.jpromero.com/2021/05/crear-disparadores-triggers-en-google.html</link><category>Google</category><category>MySQL</category><category>triggers</category><author>noreply@blogger.com (JP)</author><pubDate>Tue, 11 May 2021 11:30:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-6460160781838464700</guid><description>Tras recibir el error:&lt;div&gt;&lt;p style="background-color: navy; color: #f2f2f2; font-family: Menlo; font-size: 14px; font-stretch: normal; line-height: normal; margin: 0px;"&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;ERROR 1419 (HY000): You do not have the SUPER privilege and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)&lt;/span&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Leí que SUPER no está habilitado en las instancias de Google Cloud. Lo que permiten es configurar &lt;a href="https://cloud.google.com/sql/docs/mysql/flags#console" target="_blank"&gt;Marcas de bases de datos&lt;/a&gt;.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Seguir el procedimiento indicado:&lt;/div&gt;&lt;div&gt;&lt;ul style="text-align: left;"&gt;&lt;li&gt;Abrir la Consola&lt;/li&gt;&lt;li&gt;Ir a la instancia SQL&lt;/li&gt;&lt;li&gt;Editarla (En mi caso pidió activar la API de la consola previamente)&lt;/li&gt;&lt;li&gt;En la sección Marcas agregar el elemento deseado de la lista desplegable.&amp;nbsp;&lt;span style="background-color: #e4e6e8; caret-color: rgb(36, 39, 41); color: #242729; font-family: ui-monospace, &amp;quot;Cascadia Mono&amp;quot;, &amp;quot;Segoe UI Mono&amp;quot;, &amp;quot;Ubuntu Mono&amp;quot;, &amp;quot;Roboto Mono&amp;quot;, Menlo, Monaco, Consolas, monospace; font-size: 13px; white-space: pre-wrap;"&gt;log_bin_trust_function_creators&lt;/span&gt;&lt;/li&gt;&lt;li&gt;Guardar&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFIa_c8QVUFOOQ6B9JoHD4Irs8aq57I64lulMpgCnxaATTxUwcAQz5qNB_WyjmLBVAY8urfSu9VWtNJ6nFRSIZkqhAVFeNe8-y9RlPGZti5OP2pddOZEmpMkRRSjyu4cOOgJlFydGea4gk/s1624/google+cloud-marcas+.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" data-original-height="1386" data-original-width="1624" height="546" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFIa_c8QVUFOOQ6B9JoHD4Irs8aq57I64lulMpgCnxaATTxUwcAQz5qNB_WyjmLBVAY8urfSu9VWtNJ6nFRSIZkqhAVFeNe8-y9RlPGZti5OP2pddOZEmpMkRRSjyu4cOOgJlFydGea4gk/w640-h546/google+cloud-marcas+.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Esperar a que el proceso termine y luego ya se puede crear disparadores. Después se puede eliminar la marca.&lt;/div&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFIa_c8QVUFOOQ6B9JoHD4Irs8aq57I64lulMpgCnxaATTxUwcAQz5qNB_WyjmLBVAY8urfSu9VWtNJ6nFRSIZkqhAVFeNe8-y9RlPGZti5OP2pddOZEmpMkRRSjyu4cOOgJlFydGea4gk/s72-w640-h546-c/google+cloud-marcas+.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>Monitor de actividad Mac no muestra columnas</title><link>http://www.jpromero.com/2020/08/monitor-de-actividad-mac-no-muestra.html</link><category>Mac</category><author>noreply@blogger.com (JP)</author><pubDate>Fri, 7 Aug 2020 12:18:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-7335131812225692852</guid><description> &lt;br /&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHIUglNTQ3k94AuBWke69W_sxmdWoYt3GM3FbPdjqWh5XXIAYSM1y7Vcudev8Z11HjMR1oLqPjeTVfJGob5Tjn4KWjxsrIM3klGm_QqhmI_Kmg-ElwEEwtujL0hQqyD9AvFlg5_WoNuUQ4/s1902/Captura+de+pantalla+2020-08-07+a+las+12.11.24.png"&gt;&lt;img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHIUglNTQ3k94AuBWke69W_sxmdWoYt3GM3FbPdjqWh5XXIAYSM1y7Vcudev8Z11HjMR1oLqPjeTVfJGob5Tjn4KWjxsrIM3klGm_QqhmI_Kmg-ElwEEwtujL0hQqyD9AvFlg5_WoNuUQ4/s640/Captura+de+pantalla+2020-08-07+a+las+12.11.24.png" /&gt;&lt;/a&gt;&lt;div&gt;Lo primero es comprobar que están activadas algunas columnas para mostrar. En el menú Visualización -&amp;gt; Columnas -&amp;gt;&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqVGwbkAjg-vy3GbjzVEutl3nw-ViHv0499w_Xtw7Go3UjK_rmczSBgk4cHgKQq8niP0-FidIENMygD-PmSiYjZsdMR94K_EuOMzJ6vjJMEOnrl3z5oQUYeSVlw4InYg-fsOFt0ElIkDfK/s1098/Captura+de+pantalla+2020-08-07+a+las+12.07.06.png" imageanchor="1" style="display: block; padding: 1em 0px;"&gt;&lt;img border="0" data-original-height="1098" data-original-width="1044" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqVGwbkAjg-vy3GbjzVEutl3nw-ViHv0499w_Xtw7Go3UjK_rmczSBgk4cHgKQq8niP0-FidIENMygD-PmSiYjZsdMR94K_EuOMzJ6vjJMEOnrl3z5oQUYeSVlw4InYg-fsOFt0ElIkDfK/s640/Captura+de+pantalla+2020-08-07+a+las+12.07.06.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;Si están activas pero no se ven. Se cierra el Monitor de actividad. Y abrimos Finder -&amp;gt; Ir -&amp;gt; Ir a carpeta&lt;/div&gt;&lt;div&gt;&lt;img border="0" data-original-height="822" data-original-width="580" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgWNUM4_iyRDDBXVb2v0a2SqmzLJ_NGiUdZuG3bcMrfbVUx22thbH8572v19tUN3iE5Tk_v-_IQd0fpGo88HkYgO6B2Xydj2iNRB2FpG7KtCe-TuGCVDKATlJohlRbi40WGhqzLtrwPpTZZ/s640/Captura+de+pantalla+2020-08-07+a+las+12.14.57.png" /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Introducimos la siguiente ruta al fichero de configuración.&lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;~/Biblioteca/Preferences/com.apple.ActivityMonitor.plist&lt;/blockquote&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYNsAvetvNfiRXjkuFOmHqNbvnSHbFxSLk_ANA0Jqz3Wrd9oOrYbVzykDtzEnZrhKWQ4x6GwdR8blGoR2Df3LvkQQ4NtS0wtN5wYnHviIBHkTtoOLZqOGkQftNOMxOl3FNIE0Cq_hb915z/s852/Captura+de+pantalla+2020-08-07+a+las+12.16.00.png" imageanchor="1" style="display: block; padding: 1em 0px;"&gt;&lt;img border="0" data-original-height="246" data-original-width="852" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYNsAvetvNfiRXjkuFOmHqNbvnSHbFxSLk_ANA0Jqz3Wrd9oOrYbVzykDtzEnZrhKWQ4x6GwdR8blGoR2Df3LvkQQ4NtS0wtN5wYnHviIBHkTtoOLZqOGkQftNOMxOl3FNIE0Cq_hb915z/s640/Captura+de+pantalla+2020-08-07+a+las+12.16.00.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;Borramos el archivo.&lt;/div&gt;&lt;div class="separator" style="clear: both;"&gt;&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtMzMSzqmeFjuz_Of5vnl8jNwA22SbYCdF3itnEg7A7LglxrMhyW_JYL569LpDKWRmuO4d1NPsKMbByaA1yZiuOVHfyifClI8oJqB7m54Z7TKKt2QLi1s0Ki-MoTy8YVZXSbUf_cWH01-m/s1430/Captura+de+pantalla+2020-08-07+a+las+12.17.14.png" imageanchor="1" style="display: block; padding: 1em 0px;"&gt;&lt;img border="0" data-original-height="200" data-original-width="1430" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhtMzMSzqmeFjuz_Of5vnl8jNwA22SbYCdF3itnEg7A7LglxrMhyW_JYL569LpDKWRmuO4d1NPsKMbByaA1yZiuOVHfyifClI8oJqB7m54Z7TKKt2QLi1s0Ki-MoTy8YVZXSbUf_cWH01-m/s640/Captura+de+pantalla+2020-08-07+a+las+12.17.14.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Y abrimos el Monitor de actividad.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="font-size: small;"&gt;Visto en:&amp;nbsp;https://macreports.com/activity-monitor-columns-are-missing-fix/&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiHIUglNTQ3k94AuBWke69W_sxmdWoYt3GM3FbPdjqWh5XXIAYSM1y7Vcudev8Z11HjMR1oLqPjeTVfJGob5Tjn4KWjxsrIM3klGm_QqhmI_Kmg-ElwEEwtujL0hQqyD9AvFlg5_WoNuUQ4/s72-c/Captura+de+pantalla+2020-08-07+a+las+12.11.24.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">1</thr:total></item><item><title>MySQL. agrupar por fecha y contar incluido los ceros cuando no hay datos para una fecha</title><link>http://www.jpromero.com/2020/06/mysql-agrupar-por-fecha-y-contar.html</link><category>MySQL</category><category>SQL</category><category>view</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 27 Jun 2020 13:12:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-6777077302018496258</guid><description>&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjG9wbWV3N1RgV_wi67sCb5I_hsGw823C5_LjYA7yEvdQqD-TDLhv1z5C42NaqA_76K0m5TDKcLCPmJmUhAm7o-aFNlg24-Qy4MwaqDt6mqLXosFOzbRrkPRdLEIfZVbnNB2pjKrN91DfyY/s1400/Captura+de+pantalla+2020-06-27+a+las+13.09.06.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em; text-align: center;"&gt;&lt;img border="0" data-original-height="866" data-original-width="1400" height="388" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjG9wbWV3N1RgV_wi67sCb5I_hsGw823C5_LjYA7yEvdQqD-TDLhv1z5C42NaqA_76K0m5TDKcLCPmJmUhAm7o-aFNlg24-Qy4MwaqDt6mqLXosFOzbRrkPRdLEIfZVbnNB2pjKrN91DfyY/w625-h388/Captura+de+pantalla+2020-06-27+a+las+13.09.06.png" width="625" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;La idea la encontré en &lt;i&gt;stack overflow&lt;/i&gt; "&lt;font size="3" style="border: 0px; box-sizing: inherit; caret-color: rgb(36, 39, 41); color: var(--black-700); cursor: pointer; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif; font-stretch: inherit; font-style: inherit; font-variant-caps: inherit; line-height: 1.35; margin: 0px; padding: 0px; vertical-align: baseline;"&gt;&lt;a class="question-hyperlink" href="https://stackoverflow.com/questions/25804531/mysql-group-by-date-and-count-including-missing-dates" style="border: 0px; box-sizing: inherit; color: var(--black-700); cursor: pointer; font-stretch: inherit; font-style: inherit; font-variant-caps: inherit; line-height: 1.35; margin: 0px; padding: 0px; text-decoration: none; vertical-align: baseline;" target="_blank"&gt;MySQL group by date and count including missing dates&lt;/a&gt;&lt;/font&gt;&lt;font size="3" style="caret-color: rgb(36, 39, 41); color: #242729; font-family: Arial, &amp;quot;Helvetica Neue&amp;quot;, Helvetica, sans-serif;"&gt;".&lt;/font&gt;&lt;/div&gt;&lt;div&gt;Consiste en generar tantos números como días se quiera. En el ejemplo se generan 10 mil filas. Y como se toma como referencia la fecha actual, son 10 mil días hacia atrás. Eso son más de 27 años.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;pre style="text-align: left;"&gt;create view datetable as&lt;br /&gt;select &lt;br /&gt; date_format(adddate(now(),-(a.a + (10 * b.a) + (100 * c.a) + (1000 * d.a))),'%Y-%m-%d') AS date&lt;br /&gt; from (select 0 as a union all select 1 union all select 2 union all select 3 union all select 4&lt;br /&gt; union all select 5 union all select 6 union all select 7 union all select 8 union all select 9) as a&lt;br /&gt; cross join (select 0 as a union all select 1 union all select 2 union all select 3 union all select 4&lt;br /&gt; union all select 5 union all select 6 union all select 7 union all select 8 union all select 9) as b&lt;br /&gt; cross join (select 0 as a union all select 1 union all select 2 union all select 3 union all select 4&lt;br /&gt; union all select 5 union all select 6 union all select 7 union all select 8 union all select 9) as c&lt;br /&gt; cross join (select 0 as a union all select 1 union all select 2 union all select 3 union all select 4&lt;br /&gt; union all select 5 union all select 6 union all select 7 union all select 8 union all select 9) as d&lt;/pre&gt;&lt;pre style="text-align: left;"&gt;; &lt;/pre&gt;&lt;div&gt;Entonces, la idea es realizar un LEFT JOIN con esta vista para así obtener todas las filas incluidas las no relacionadas, y condicionar para el rango de fechas deseado. Por ejemplo, a continuación con una tabla de usuarios.&lt;/div&gt;&lt;div&gt;&lt;pre style="text-align: left;"&gt;select&amp;nbsp;&lt;br /&gt;&amp;nbsp; &amp;nbsp; datetable.date,&lt;br /&gt;&amp;nbsp; &amp;nbsp; count(users.id) users&lt;br /&gt;from&lt;br /&gt;&amp;nbsp; &amp;nbsp; datetable&lt;br /&gt;&amp;nbsp; &amp;nbsp; left join users on datetable.date = date_format(users.createdAt,'%Y-%m-%d')&lt;br /&gt;where&lt;br /&gt;&amp;nbsp; &amp;nbsp; datetable.date&amp;nbsp;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; between date_format('2020-06-20','%Y-%m-%d')&amp;nbsp;&lt;br /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; and date_format('2020-06-30','%Y-%m-%d')&lt;br /&gt;group by&lt;br /&gt;&amp;nbsp; &amp;nbsp; datetable.date;&lt;/pre&gt;&lt;/div&gt;&lt;div&gt;&lt;pre style="text-align: left;"&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;+------------+-------+&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;| date &amp;nbsp; &amp;nbsp; &amp;nbsp; | users |&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;+------------+-------+&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;| 2020-06-20 | &amp;nbsp; &amp;nbsp; 0 |&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;| 2020-06-21 | &amp;nbsp; &amp;nbsp; 0 |&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;| 2020-06-22 | &amp;nbsp; &amp;nbsp; 0 |&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;| 2020-06-23 | &amp;nbsp; &amp;nbsp; 0 |&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;| 2020-06-24 | &amp;nbsp; &amp;nbsp; 0 |&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;| 2020-06-25 | &amp;nbsp; &amp;nbsp; 0 |&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;| 2020-06-26 | &amp;nbsp; 207 |&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;| 2020-06-27 | &amp;nbsp; &amp;nbsp; 0 |&lt;br /&gt;&lt;/span&gt;&lt;span style="font-variant-ligatures: no-common-ligatures;"&gt;+------------+-------+&lt;/span&gt;&lt;/pre&gt;










&lt;/div&gt;&lt;div&gt;Todos los usuarios fuerondatos de alta el 2020-06-26 por eso se ve que ese día tiene los 207 usuarios y el resto de días cero. Aunque en el rango se indica entre el 20 y 30 de junio. La sentencia se ejecuta el 27 de junio que es la fecha actual que toma de referencia en la vista. Por ello, no se ve datos para el 28, 29, 30.&lt;/div&gt;&lt;div&gt;Entendiendo la idea se puede adaptar al problema a resolver.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjG9wbWV3N1RgV_wi67sCb5I_hsGw823C5_LjYA7yEvdQqD-TDLhv1z5C42NaqA_76K0m5TDKcLCPmJmUhAm7o-aFNlg24-Qy4MwaqDt6mqLXosFOzbRrkPRdLEIfZVbnNB2pjKrN91DfyY/s72-w625-h388-c/Captura+de+pantalla+2020-06-27+a+las+13.09.06.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Error de escritorio remoto cifrado CredSSP</title><link>http://www.jpromero.com/2019/05/error-de-escritorio-remoto-cifrado.html</link><category>error</category><category>Internet</category><category>Microsoft</category><category>red</category><category>seguridad</category><category>Windows</category><author>noreply@blogger.com (JP)</author><pubDate>Sat, 4 May 2019 12:09:00 +0200</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-2316943997295530214</guid><description>&lt;blockquote class="tr_bq"&gt;
&lt;br /&gt;
Error de autenticación&lt;br /&gt;
No se permite la función solicitada&lt;br /&gt;
Puede deberse a una actualización de Oracle de cifrado CredSSP.&lt;br /&gt;
Para obtener más información, consulte https://go.microsoft.com/fwlink/?linkid=866660.&lt;/blockquote&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjL3V7udr2ybSjOahj0h5W84N3enlxLo0z6YgPPr2hdBsELaUMC3y29lC0JzywVi4VdWGGZMWRuM-MRFGEBVsCE3YTivMMVs5Fh_DHpAZFsILmA71OXXwAClHzhyphenhyphenDn7G57QTNnMpj9mtLJ7/s1600/credSSP.png" imageanchor="1"&gt;&lt;img border="0" height="227" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjL3V7udr2ybSjOahj0h5W84N3enlxLo0z6YgPPr2hdBsELaUMC3y29lC0JzywVi4VdWGGZMWRuM-MRFGEBVsCE3YTivMMVs5Fh_DHpAZFsILmA71OXXwAClHzhyphenhyphenDn7G57QTNnMpj9mtLJ7/s640/credSSP.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
1) Abrir Símbolo del sistema en modo administrador. (clic derecho en Símbolo del sistema y luego en Ejecutar como Administrador)&lt;br /&gt;
2) Ejecutar el texto:&lt;br /&gt;
&lt;blockquote class="tr_bq"&gt;
&lt;b&gt;reg add "HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\System\CredSSP\Parameters" /f /v AllowEncryptionOracle /t REG_DWORD /d 2&lt;/b&gt;&lt;/blockquote&gt;
&lt;ul&gt;
&lt;li&gt;0 = Forzar Clientes Actualizados —Las aplicaciones cliente que usan CredSSP no podrán recurrir a versiones inseguras.&lt;/li&gt;
&lt;li&gt;1 = Mitigado —Las aplicaciones cliente que usan CredSSP no podrán recurrir a versiones inseguras.&lt;/li&gt;
&lt;li&gt;2 = Vulnerable —Las aplicaciones cliente que utilizan CredSSP va a exponer a servidores remotos a los ataques mediante el apoyo de respaldo a las versiones inseguras.&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Lo que se hace es configurar en modo vulnerable.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-size: x-small;"&gt;Fuente: &amp;nbsp;&lt;a href="https://www.solvetic.com/topic/6208-error-escritorio-remoto-credssp-correccion-de-oracle-de-cifrado/"&gt;https://www.solvetic.com/topic/6208-error-escritorio-remoto-credssp-correccion-de-oracle-de-cifrado/&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjL3V7udr2ybSjOahj0h5W84N3enlxLo0z6YgPPr2hdBsELaUMC3y29lC0JzywVi4VdWGGZMWRuM-MRFGEBVsCE3YTivMMVs5Fh_DHpAZFsILmA71OXXwAClHzhyphenhyphenDn7G57QTNnMpj9mtLJ7/s72-c/credSSP.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>MySQL en SQL Developer</title><link>http://www.jpromero.com/2019/03/mysql-en-sql-developer.html</link><category>adaptador</category><category>Mac</category><category>MySQL</category><category>Oracle</category><category>Windows</category><author>noreply@blogger.com (JP)</author><pubDate>Wed, 6 Mar 2019 19:33:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-6015538638844159710</guid><description>&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhN63OyyTOGQ53RusXXObzsZ2OROZkPgZ9Zc4GhQULnETUJQQQXwxf6LgQvUS-vyqxymkdjwoJBbeJyl6aLWmulbNNwHPPjzsml_EKNtWGC1lIjoTzurmPIkR9M1g4DYksp6qXBNbUAUs4u/s1600/sqldevelopericons.png" imageanchor="1"&gt;&lt;img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhN63OyyTOGQ53RusXXObzsZ2OROZkPgZ9Zc4GhQULnETUJQQQXwxf6LgQvUS-vyqxymkdjwoJBbeJyl6aLWmulbNNwHPPjzsml_EKNtWGC1lIjoTzurmPIkR9M1g4DYksp6qXBNbUAUs4u/s400/sqldevelopericons.png" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Primero, dirígete a la página de descargas de conectores para MySQL &lt;a href="https://www.mysql.com/products/connector/"&gt;https://www.mysql.com/products/connector/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;br /&gt;
En este caso interesa el &lt;b&gt;JDBC Driver for MySQL&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Escoge el sistema operativo en el que se utilizará. Para instalar en MAC:&amp;nbsp;&lt;b&gt;Platform Independent&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt;
Descarga el archivo ZIP en el que se encuentra el .jar&lt;br /&gt;
&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;Segundo, añade el archivo en SQL developer-&amp;gt;Preferencias&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Bases de datos-&amp;gt;Controladores JDBC de Terceros&lt;br /&gt;
&lt;div class="separator" style="clear: both; text-align: center;"&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipiJvIUZIWR8oRbHuOAyeH87SvbXZhtatTUu-WS0FCyPYohHH5uDKSLavp6xMMV1Pc3dw_J_ztsN9XpZ1ojHKFtKAqZaDguqWxMDa3c46fB3ebzuoiYH79NNS4dtTgPaJoC1mVziXuvym1/s1600/Captura+de+pantalla+2019-03-06+a+las+19.17.21.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="265" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipiJvIUZIWR8oRbHuOAyeH87SvbXZhtatTUu-WS0FCyPYohHH5uDKSLavp6xMMV1Pc3dw_J_ztsN9XpZ1ojHKFtKAqZaDguqWxMDa3c46fB3ebzuoiYH79NNS4dtTgPaJoC1mVziXuvym1/s320/Captura+de+pantalla+2019-03-06+a+las+19.17.21.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
Y agrega el archivo .jar&lt;/div&gt;
&lt;div&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdZpLYBWTLlsDxbBQbcuZv9YUjz508xiQcqnOwhKMoJF34nChpebB_AUGXeYeeGqSN0VasT6rUPqnJimb2b_tHo_GtpdgGPe83YArMPGJO_tXPmMj3zYbJlPKFFKPblVBzxSgsHq4TbfnJ/s1600/Captura+de+pantalla+2019-03-06+a+las+19.19.28.png" imageanchor="1"&gt;&lt;img border="0" height="480" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjdZpLYBWTLlsDxbBQbcuZv9YUjz508xiQcqnOwhKMoJF34nChpebB_AUGXeYeeGqSN0VasT6rUPqnJimb2b_tHo_GtpdgGPe83YArMPGJO_tXPmMj3zYbJlPKFFKPblVBzxSgsHq4TbfnJ/s640/Captura+de+pantalla+2019-03-06+a+las+19.19.28.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Al intentar utilizar MySQL con SQL developer puede dar un error:&lt;br /&gt;
&lt;br /&gt;
«Status : Failure - The server time zone value 'AEST' is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specific time zone value if you want to utilize time zone support»&lt;br /&gt;
&lt;br /&gt;
Añade al archivo de configuración &lt;b&gt;my.ini&lt;/b&gt; en la instalación de MySQL después de&amp;nbsp;&lt;b&gt;[mysqld]&lt;/b&gt; la línea.&lt;br /&gt;
&lt;br /&gt;
&lt;b&gt;default-time-zone='+01:00'&lt;/b&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Guarda y reinicia el servicio.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
El archivo &lt;i&gt;my.ini&lt;/i&gt; utilizado fue el de: &lt;i&gt;C:\ProgramData\MySQL\MySQL Server 5.7\my.ini&lt;/i&gt; al tener la instalación en un Windows.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Otras rutas en las que se puede encontrar o crear el archivo de configuración:&lt;/div&gt;
&lt;div&gt;
&lt;div&gt;
&lt;i&gt;C:\Windows\my.ini C:\Windows\my.cnf C:\my.ini C:\my.cnf C:\Program Files\MySQL\MySQL Server 5.7\my.ini C:\Program Files\MySQL\MySQL Server 5.7\my.cnf&lt;/i&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhN63OyyTOGQ53RusXXObzsZ2OROZkPgZ9Zc4GhQULnETUJQQQXwxf6LgQvUS-vyqxymkdjwoJBbeJyl6aLWmulbNNwHPPjzsml_EKNtWGC1lIjoTzurmPIkR9M1g4DYksp6qXBNbUAUs4u/s72-c/sqldevelopericons.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Crear una VPN con Ubuntu server y OpenVPN</title><link>http://www.jpromero.com/2019/02/crear-una-vpn-con-ubuntu-server-y.html</link><category>linux</category><category>red</category><category>Ubuntu</category><category>VPN</category><author>noreply@blogger.com (JP)</author><pubDate>Mon, 25 Feb 2019 21:21:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-3428388360793381315</guid><description>&lt;img alt="Resultado de imagen de open vpn" class="irc_mi" data-iml="1551125738073" height="115" src="https://pngimage.net/wp-content/uploads/2018/06/openvpn-png-6.png" style="margin-top: 97px;" width="400" /&gt;&lt;br /&gt;
Una manera rápida de hacerlo es utilizando los scripts desarrollados en:&lt;br /&gt;
&lt;br /&gt;
&lt;a href="https://github.com/angristan/openvpn-install"&gt;https://github.com/angristan/openvpn-install&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Como bien lo describe, lo primero es descargar el ejecutable y darle permisos de ejecución&lt;br /&gt;
&lt;div&gt;
&lt;div id="codigo"&gt;
&lt;pre&gt;&lt;code&gt;
curl -O https://raw.githubusercontent.com/Angristan/openvpn-install/master/openvpn-install.sh
chmod +x openvpn-install.sh&lt;/code&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Ejecutarlo&lt;/div&gt;
&lt;div&gt;
&lt;div id="codigo"&gt;
&lt;pre&gt;&lt;code&gt;
./openvpn-install.sh&lt;/code&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
La ejecución inicia un entorno guiado vía terminal en la que permite:&lt;/div&gt;
&lt;div&gt;
&lt;ul&gt;
&lt;li&gt;Instalar la VPN&lt;/li&gt;
&lt;li&gt;Agregar un cliente&lt;/li&gt;
&lt;li&gt;Eliminar un cliente&lt;/li&gt;
&lt;li&gt;Desinstalar la VPN&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
&lt;span style="font-size: x-small;"&gt;Probado en:&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-size: x-small;"&gt;Ubuntu server 16.04&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;style&gt;
#codigo{
color:#ffffff;
background:#000000;
}
&lt;/style&gt;</description><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>Montar un disco para compartir con Samba en Ubuntu server</title><link>http://www.jpromero.com/2019/02/montar-un-disco-para-compartir-con.html</link><category>archivos</category><category>código</category><category>disco</category><category>linux</category><category>Mac</category><category>red</category><category>seguridad</category><category>terminal</category><category>Ubuntu</category><category>Windows</category><author>noreply@blogger.com (JP)</author><pubDate>Sun, 24 Feb 2019 13:52:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-1371968112351534139</guid><description>&lt;div&gt;
&lt;img alt="Resultado de imagen de share &amp;quot;files&amp;quot; samba" class="irc_mi" data-iml="1551012696911" height="308" src="https://arcolinux.com/wp-content/uploads/2018/06/samba2.png" style="margin-top: 0px;" width="400" /&gt;&lt;br /&gt;
&lt;h2&gt;
Formatear disco&lt;/h2&gt;
Consultar particiones y sistemas de fichero&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo lsblk -fm&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
Otra forma de consultar los discos y particiones&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo fdisk -l&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
Para gestionar particiones se indica el disco y se opera con las opciones dadas («m» para ver opciones)&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo fdisk /dev/sdb&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
Para crear una partición se presiona «d» y se sigue la guía.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;div&gt;
Formatear la partición&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo mkfs.ext4 /deb/sdb1&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;div&gt;
*Tienen que estar desmontado. La primera vez que se haga lo estará. Pero si se ha montado y se quiere desmontar un disco:&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo umount /dev/sdb1&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
*Si está ocupado no se puede desmontar el disco, se puede consultar qué procesos lo usan previo desmontaje:&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo fuser -vm /dev/sdb1&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPM0eXKEKzp-6MAH1L8SRoJtqUF-9Ms4th9sp6h2dZjkcKyJEzUmuJl9DLff6of8gOLHK3E6UtPQWLuwtGEk-4tecx3sMvKqy9daQ71u6S0d73TgbwD93Mp671keMsYzjzibMyuqsLHOwn/s1600/Captura+de+pantalla+2019-02-24+a+las+11.05.39.png" imageanchor="1"&gt;&lt;img border="0" height="128" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPM0eXKEKzp-6MAH1L8SRoJtqUF-9Ms4th9sp6h2dZjkcKyJEzUmuJl9DLff6of8gOLHK3E6UtPQWLuwtGEk-4tecx3sMvKqy9daQ71u6S0d73TgbwD93Mp671keMsYzjzibMyuqsLHOwn/s640/Captura+de+pantalla+2019-02-24+a+las+11.05.39.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
En el ejemplo, estaba siendo usado por el proceso de Samba, así que detuve Samba y se pudo desmontar. Sino tocaría matar/parar procesos, o forzar el desmontaje.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-size: x-small;"&gt;*Si se da formato NTFS al disco no se puede aplicar la política unix de usuario/grupo a los ficheros impidiendo la gestión por usuario al compartir ficheros&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;h2&gt;
Montar disco&lt;/h2&gt;
Crear carpeta donde alojar el disco&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo mkdir /media/data&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Montar el disco en la carpeta&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo mount /dev/sdb1 /media/data&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Modificar el fichero &lt;i&gt;fstab&lt;/i&gt; para que la configuración quede guardada&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo nano /etc/fstab&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2iYUyYD4OMvTQxn5fvR9Z5vNnzwfawdvo3WQxXyT3rugjIfhD7OImd7TX_6R5tgbQBYDeEGSwW6HkpL9cNVx8Jaj452UmwQvVmOGAFdobsH_96DhKDb8hOymQf-lOFsFdsDqiRRcjD2Hz/s1600/Captura+de+pantalla+2019-02-24+a+las+11.47.24.png" imageanchor="1"&gt;&lt;img border="0" height="58" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg2iYUyYD4OMvTQxn5fvR9Z5vNnzwfawdvo3WQxXyT3rugjIfhD7OImd7TX_6R5tgbQBYDeEGSwW6HkpL9cNVx8Jaj452UmwQvVmOGAFdobsH_96DhKDb8hOymQf-lOFsFdsDqiRRcjD2Hz/s640/Captura+de+pantalla+2019-02-24+a+las+11.47.24.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
En el ejemplo:&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;/dev/sdb1 /media/data ext4 defaults 1 2&lt;/span&gt;&lt;br /&gt;
&lt;h2&gt;
Instalación y configuración de Samba (Ubuntu server 16.04)&lt;/h2&gt;
&lt;div&gt;
Si estamos aquí es porque queremos compartir ficheros. Samba se instaló en Ubuntu y se accede desde Windows, Mac OS X, otros Linux. El proceso indica cómo hacer una carpeta de acceso general y otra de uso bajo usuario y contraseña.&lt;br /&gt;
&lt;br /&gt;
Si no estuviera instalado samba se instala&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo apt install samba&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
Se edita el archivo: &lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;/etc/samba/smb.conf&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;div&gt;
Se descomenta/modifica la línea&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;wins support = yes&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;net bios = MySERVER #nombre del equipo en la red&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Y al final del fichero se añade la configuración de cada carpeta a compartir:&lt;/div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;[publica]&lt;/span&gt;&lt;br /&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;path = /media/data/folderpublic&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;browsable = yes&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;guest ok = yes&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;only guest = no&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;read only = no&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;create mask = 0777&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;directory mask = 0777&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;public = yes&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;&lt;br /&gt;&lt;/span&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;[privada]&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;path = /media/data/folderpriv&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;browsable = yes&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;guest ok = no&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;read only = no&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;create mask = 0770&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;directory mask = 0770&lt;/span&gt;&lt;br /&gt;
&lt;ul&gt;
&lt;li&gt;&lt;i&gt;path&lt;/i&gt; ubicación de la carpeta a compartir&lt;/li&gt;
&lt;li&gt;&lt;i&gt;browsable&lt;/i&gt; si es navegable desde el Explorador de Windows&lt;/li&gt;
&lt;li&gt;&lt;i&gt;guest&lt;/i&gt; si permite la conexión de forma anónima sin usuario y contraseña&lt;/li&gt;
&lt;li&gt;&lt;i&gt;read only&lt;/i&gt; si solo es de lectura o se permite escritura&lt;/li&gt;
&lt;li&gt;&lt;i&gt;create mask&lt;/i&gt; permisos con los que se van a crear los nuevos ficheros&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;
Se tienen que tener la carpeta creada con los permisos adecuados&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo mkdir -p /media/data/folderpublic&amp;nbsp;&lt;/span&gt;&lt;/div&gt;
&lt;div&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo mkdir -p /media/data/folderpriv&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Crear usuario linux y grupo a utilizar para acceso a la carpeta privada&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo useradd userpriv&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo groupadd grouppriv&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Se asigna el grupo al usuario&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo usermod -g grouppriv userpriv&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
*Si se quiere añadir el usuario a grupos adicionales&lt;br /&gt;
&lt;span style="font-family: Courier New, Courier, monospace;"&gt;sudo adduser userpriv otrogrupo&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Se agrega como usuario samba&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo smbpasswd -a userpriv&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Listar usuarios samba&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;pdbedit -L&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Si se quiere eliminar un usuario&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo smbpasswd -x userpriv&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Aplicar permiso de forma recursiva al directorio y subdirectorios (por si los hubiese)&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo chmod -R 775 /media/data/folderpublic&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo chmod -R 775 /media/data/folderpriv&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Cambiamos grupo a la carpeta&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo chown -hR root:grouppriv /media/data/forderpriv&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo chown -hR nobody:nogroup /media/data/folderpublic&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
Reiniciar samba tras los cambios&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo /etc/init.d/samba restart&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
*Para Samba (en caso de necesitar)&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo /etc/init.d/samba stop&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
*Iniciar Samba (en caso de necesitar)&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;sudo /etc/init.d/samba start&lt;/span&gt;&lt;br /&gt;
&lt;h2&gt;
Eliminar credenciales de Windows para conexiones compartidas&lt;/h2&gt;
&lt;div&gt;
Cuando estamos viendo carpetas compartidas Windows ya suele almacenar credenciales y como solo permite una a la vez si luego queremos acceder a otro recurso con credenciales diferentes tendremos problemas de acceso, para ello lo más rápido eliminamos credenciales guardadas.&lt;br /&gt;
&lt;br /&gt;&lt;/div&gt;
- Presionar las teclas Windows + R&lt;br /&gt;
- Escriben en la ventana de Ejecutar: cmd&lt;br /&gt;
- En la ventana que se abre escribir: net use * /del&lt;br /&gt;
- Escriben una ese «S» para confirmar la eliminación de entradas en caso de existir.&lt;br /&gt;
- Pueden cerrar la ventana&lt;br /&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8p-HCWrD7mxrBV1Kx2etN-2vQRMvpBfVjTVhkTX0jj39jRSxnnfqbFEJHoWMkeDELxdS-d24EbZlm-7htZTaJiAEjhUXDr74FDbeaZ9oVs-K6ZRiVzyBDsWfwNS18VI-6XfNt5ARYbhTf/s1600/Captura+de+pantalla+2019-02-24+a+las+12.51.41.png" imageanchor="1"&gt;&lt;img border="0" height="132" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi8p-HCWrD7mxrBV1Kx2etN-2vQRMvpBfVjTVhkTX0jj39jRSxnnfqbFEJHoWMkeDELxdS-d24EbZlm-7htZTaJiAEjhUXDr74FDbeaZ9oVs-K6ZRiVzyBDsWfwNS18VI-6XfNt5ARYbhTf/s400/Captura+de+pantalla+2019-02-24+a+las+12.51.41.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
Cerrar todas las ventanas del Explorador de Windows que están viendo recursos de red.&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
Ahora en la ventana de Ejecutar (Windows+R) escribir&lt;br /&gt;
&lt;span style="font-family: &amp;quot;courier new&amp;quot; , &amp;quot;courier&amp;quot; , monospace;"&gt;rundll32.exe keymgr.dll, KRShowKeyMgr&lt;/span&gt;&lt;br /&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh26yC1USbuAxrlRb310Bc0jGGk71s6Let_t2uBU87gp-PPh73wRvLquOnWr76-UWelDXn-Qy7FOqhUTMM4wfoWa0YCvUNQVuJcJg4Sn8FMeOUWUMnOyDsc4YdROhAZzYQuKGgobcjG8XTI/s1600/Captura+de+pantalla+2019-02-24+a+las+10.47.00.png" imageanchor="1" style="clear: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="221" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh26yC1USbuAxrlRb310Bc0jGGk71s6Let_t2uBU87gp-PPh73wRvLquOnWr76-UWelDXn-Qy7FOqhUTMM4wfoWa0YCvUNQVuJcJg4Sn8FMeOUWUMnOyDsc4YdROhAZzYQuKGgobcjG8XTI/s400/Captura+de+pantalla+2019-02-24+a+las+10.47.00.png" width="400" /&gt;&lt;/a&gt;&lt;br /&gt;
En la ventana que se abre se elimina las credenciales que acceden a recursos compartidos (o se configura una para la conexión que queremos, en mi caso a 192.168.1.5). En el ejemplo no influye ni DriveFS ni GitHub.&lt;br /&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilQAgmtCqUMvt1N-H9-2hKWvGImBuURC5jpFyIpXzn15RixxJF6GVDNayckI9O9MBS8C_HTQZhp4bG3Xm-WSNqAd8_WMDwnDaY95SNQN2SDrga6doCRf485YA1PPo7qffIj8qPvJ2qt4lJ/s1600/Captura+de+pantalla+2019-02-24+a+las+12.53.47.png" imageanchor="1"&gt;&lt;img border="0" height="358" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilQAgmtCqUMvt1N-H9-2hKWvGImBuURC5jpFyIpXzn15RixxJF6GVDNayckI9O9MBS8C_HTQZhp4bG3Xm-WSNqAd8_WMDwnDaY95SNQN2SDrga6doCRf485YA1PPo7qffIj8qPvJ2qt4lJ/s640/Captura+de+pantalla+2019-02-24+a+las+12.53.47.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Reiniciar el servicio de credenciales&lt;/div&gt;
&lt;div&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOBHB3JHWaytTnjZ2ldHQkCXZpVAr1s4Kee9gGWP8DpiQd-gxL8DoPXo5Z9ViZKRf5QPs63vM77Uy5U8EWohsslD-oxqVDMQfkHtepWHD4wZkr7Gc5IfSg3T0uQl5hCYmScHQkfs5zYrRb/s1600/Captura+de+pantalla+2019-02-24+a+las+10.48.29.png" imageanchor="1"&gt;&lt;img border="0" height="326" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiOBHB3JHWaytTnjZ2ldHQkCXZpVAr1s4Kee9gGWP8DpiQd-gxL8DoPXo5Z9ViZKRf5QPs63vM77Uy5U8EWohsslD-oxqVDMQfkHtepWHD4wZkr7Gc5IfSg3T0uQl5hCYmScHQkfs5zYrRb/s640/Captura+de+pantalla+2019-02-24+a+las+10.48.29.png" width="640" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
Una vez hecho esto se podrá iniciar sesión para acceder al recurso. Si se almacenan las credenciales el acceso será directo.&lt;br /&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8hVntFzGRabCVzWg6d1CY29VioUiMxBjhUHGjYYDdDu6bqdbH0DKGWeSf9i05hFCodMHEmPmIDSZRdbQWVzj9KGZOPf2YGiihRkUgldedXr-_Wy9LhfeC8pbcAB8XriQ4dKWbGCUOwfoG/s1600/Captura+de+pantalla+2019-02-24+a+las+11.57.00.png" imageanchor="1"&gt;&lt;img border="0" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8hVntFzGRabCVzWg6d1CY29VioUiMxBjhUHGjYYDdDu6bqdbH0DKGWeSf9i05hFCodMHEmPmIDSZRdbQWVzj9KGZOPf2YGiihRkUgldedXr-_Wy9LhfeC8pbcAB8XriQ4dKWbGCUOwfoG/s320/Captura+de+pantalla+2019-02-24+a+las+11.57.00.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;div&gt;
&lt;br /&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgPM0eXKEKzp-6MAH1L8SRoJtqUF-9Ms4th9sp6h2dZjkcKyJEzUmuJl9DLff6of8gOLHK3E6UtPQWLuwtGEk-4tecx3sMvKqy9daQ71u6S0d73TgbwD93Mp671keMsYzjzibMyuqsLHOwn/s72-c/Captura+de+pantalla+2019-02-24+a+las+11.05.39.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item><item><title>MySQL: crear índice único y no único</title><link>http://www.jpromero.com/2019/02/mysql-crear-indice-unico-y-no-unico.html</link><category>código</category><category>MySQL</category><category>terminal</category><author>noreply@blogger.com (JP)</author><pubDate>Fri, 15 Feb 2019 23:53:00 +0100</pubDate><guid isPermaLink="false">tag:blogger.com,1999:blog-3985904547997554783.post-1781129276314922946</guid><description>Una PRIMARY KEY crea un índice único asociado al campo que es clave primaria, además es NOT NULL por defecto, y por tabla se tiene una sola clave primaria.&lt;br /&gt;
Cuando queremos que un campo o varios sean únicos entonces creamos una &lt;i&gt;constraint&lt;/i&gt; UNIQUE y si queremos que sea un índice no único lo declaramos como KEY pero no en la misma línea del campo porque significaría que declaramos una PRIMARY KEY, y no es lo que queremos.&lt;br /&gt;
&lt;div id="codigo"&gt;
&lt;pre&gt;&lt;code&gt;
create table test(
    clave_primaria    int unsigned not null,
    clave_unica       varchar(128) default null,
    clave_nounica     varchar(128) default null,
    constraint pk_test_claveprimaria primary key(clave_primaria),
    constraint uq_test_claveunica unique(clave_unica),
    key(clave_nounica)
);&lt;/code&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;br /&gt;
&lt;a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_YbQ9xTY-Vf-1p0KHgqkklaaOmfLqV97LDiUthOhvmJNI84yM9f7AVEHNniRMvfSbGsavjQH_7v_P9IkKqyFQmyBZ6bHyFmJtbS39Gm_ciW0p1KtebEqIbmtpyG0n2JpywiGT8PmuwNJh/s1600/Captura+de+pantalla+2019-02-15+a+las+23.45.12.png" imageanchor="1"&gt;&lt;img border="0" height="313" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_YbQ9xTY-Vf-1p0KHgqkklaaOmfLqV97LDiUthOhvmJNI84yM9f7AVEHNniRMvfSbGsavjQH_7v_P9IkKqyFQmyBZ6bHyFmJtbS39Gm_ciW0p1KtebEqIbmtpyG0n2JpywiGT8PmuwNJh/s640/Captura+de+pantalla+2019-02-15+a+las+23.45.12.png" width="640" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;style&gt;
#codigo{
color:#ffffff;
background:#000000;
}
&lt;/style&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;Se ha utilizado&lt;/span&gt;&lt;br /&gt;
&lt;span style="font-size: x-small;"&gt;-MySQL Ver 14.14 Distrib 5.7.23, for Win64&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;</description><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" height="72" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_YbQ9xTY-Vf-1p0KHgqkklaaOmfLqV97LDiUthOhvmJNI84yM9f7AVEHNniRMvfSbGsavjQH_7v_P9IkKqyFQmyBZ6bHyFmJtbS39Gm_ciW0p1KtebEqIbmtpyG0n2JpywiGT8PmuwNJh/s72-c/Captura+de+pantalla+2019-02-15+a+las+23.45.12.png" width="72"/><thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total></item></channel></rss>