Ecoer Logo
VOTING POWER100.00%
DOWNVOTE POWER100.00%
RESOURCE CREDITS85.70%
REPUTATION PROGRESS5.29%
Net Worth
0.009USD
STEEM
0.175STEEM
SBD
0.000SBD
Effective Power
3.335SP
├── Own SP
0.000SP
└── Incoming Deleg
+3.335SP

Detailed Balance

STEEM
balance
0.000STEEM
market_balance
0.000STEEM
savings_balance
0.000STEEM
reward_steem_balance
0.175STEEM
STEEM POWER
Own SP
0.000SP
Delegated Out
0.000SP
Delegation In
3.335SP
Effective Power
3.335SP
Reward SP (pending)
0.176SP
SBD
sbd_balance
0.000SBD
sbd_conversions
0.000SBD
sbd_market_balance
0.000SBD
savings_sbd_balance
0.000SBD
reward_sbd_balance
0.000SBD
{
  "balance": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "reward_steem_balance": "0.175 STEEM",
  "vesting_shares": "0.000000 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "5431.449401 VESTS",
  "sbd_balance": "0.000 SBD",
  "savings_sbd_balance": "0.000 SBD",
  "reward_sbd_balance": "0.000 SBD",
  "conversions": []
}

Account Info

namefrexus
id1941858
rank1,134,161
reputation16908371287
created2025-10-09T15:41:12
recovery_accountsteemcurator01
proxyNone
post_count58
comment_count0
lifetime_vote_count0
witnesses_voted_for0
last_post2026-05-20T05:49:42
last_root_post2026-05-20T05:49:42
last_vote_time2025-12-01T21:44:03
proxied_vsf_votes0, 0, 0, 0
can_vote1
voting_power0
delayed_votes0
balance0.000 STEEM
savings_balance0.000 STEEM
sbd_balance0.000 SBD
savings_sbd_balance0.000 SBD
vesting_shares0.000000 VESTS
delegated_vesting_shares0.000000 VESTS
received_vesting_shares5431.449401 VESTS
reward_vesting_balance291.100557 VESTS
vesting_balance0.000 STEEM
vesting_withdraw_rate0.000000 VESTS
next_vesting_withdrawal1969-12-31T23:59:59
withdrawn0
to_withdraw0
withdraw_routes0
savings_withdraw_requests0
last_account_recovery1970-01-01T00:00:00
reset_accountnull
last_owner_update1970-01-01T00:00:00
last_account_update2025-10-11T18:49:48
minedNo
sbd_seconds0
sbd_last_interest_payment1970-01-01T00:00:00
savings_sbd_last_interest_payment1970-01-01T00:00:00
{
  "id": 1941858,
  "name": "frexus",
  "owner": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6ZeHNU7bHHztAqddj54fijJzYdb5ZVj77qfPWXBMF1GB6frreZ",
        1
      ]
    ]
  },
  "active": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM8gnecVigwSQuJvRB3r6XLVFDL2QBZA63huJEbmzjjQvacTCwKD",
        1
      ]
    ]
  },
  "posting": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6JkGZz29Yxh1MpBF3i2wWL7jNn13ASYMpxHT3baRSTXcXSimRu",
        1
      ]
    ]
  },
  "memo_key": "STM79DHvARHTwRoVGEj8ndzNxN7rvxEM84RstEdbYHHM9NKWC2Dz6",
  "json_metadata": "{}",
  "posting_json_metadata": "{\"profile\":{\"website\":\"https://www.frexus.dev\",\"version\":2}}",
  "proxy": "",
  "last_owner_update": "1970-01-01T00:00:00",
  "last_account_update": "2025-10-11T18:49:48",
  "created": "2025-10-09T15:41:12",
  "mined": false,
  "recovery_account": "steemcurator01",
  "last_account_recovery": "1970-01-01T00:00:00",
  "reset_account": "null",
  "comment_count": 0,
  "lifetime_vote_count": 0,
  "post_count": 58,
  "can_vote": true,
  "voting_manabar": {
    "current_mana": "5431449401",
    "last_update_time": 1778560872
  },
  "downvote_manabar": {
    "current_mana": 1357862350,
    "last_update_time": 1778560872
  },
  "voting_power": 0,
  "balance": "0.000 STEEM",
  "savings_balance": "0.000 STEEM",
  "sbd_balance": "0.000 SBD",
  "sbd_seconds": "0",
  "sbd_seconds_last_update": "1970-01-01T00:00:00",
  "sbd_last_interest_payment": "1970-01-01T00:00:00",
  "savings_sbd_balance": "0.000 SBD",
  "savings_sbd_seconds": "0",
  "savings_sbd_seconds_last_update": "1970-01-01T00:00:00",
  "savings_sbd_last_interest_payment": "1970-01-01T00:00:00",
  "savings_withdraw_requests": 0,
  "reward_sbd_balance": "0.000 SBD",
  "reward_steem_balance": "0.175 STEEM",
  "reward_vesting_balance": "291.100557 VESTS",
  "reward_vesting_steem": "0.176 STEEM",
  "vesting_shares": "0.000000 VESTS",
  "delegated_vesting_shares": "0.000000 VESTS",
  "received_vesting_shares": "5431.449401 VESTS",
  "vesting_withdraw_rate": "0.000000 VESTS",
  "next_vesting_withdrawal": "1969-12-31T23:59:59",
  "withdrawn": 0,
  "to_withdraw": 0,
  "withdraw_routes": 0,
  "curation_rewards": 0,
  "posting_rewards": 351,
  "proxied_vsf_votes": [
    0,
    0,
    0,
    0
  ],
  "witnesses_voted_for": 0,
  "last_post": "2026-05-20T05:49:42",
  "last_root_post": "2026-05-20T05:49:42",
  "last_vote_time": "2025-12-01T21:44:03",
  "post_bandwidth": 0,
  "pending_claimed_accounts": 0,
  "vesting_balance": "0.000 STEEM",
  "reputation": "16908371287",
  "transfer_history": [],
  "market_history": [],
  "post_history": [],
  "vote_history": [],
  "other_history": [],
  "witness_votes": [],
  "tags_usage": [],
  "guest_bloggers": [],
  "rank": 1134161
}

Withdraw Routes

IncomingOutgoing
Empty
Empty
{
  "incoming": [],
  "outgoing": []
}
From Date
To Date
2026/05/20 05:49:42
parent author
parent permlinkarquitecturasoa
authorfrexus
permlinkentendiendo-la-arquitectura-soa-sin-ser-programador
titleEntendiendo la Arquitectura SOA sin ser programador
body![_img_podcast_.png](https://cdn.steemitimages.com/DQmUJF1bvewXjqeZ9Peq8zpxLKAWjgD3Aa2GRurofgBf9MN/_img_podcast_.png) ¿Alguna vez has sacado del clóset las luces del árbol de Navidad solo para descubrir que están todas enredadas en un nudo imposible? Y lo peor: si un solo foco se funde, toda la serie se apaga. Esa frustración monumental de no saber dónde está el error es exactamente lo que vivían las grandes empresas de tecnología a finales de los años noventa. Hoy vamos a desenredar esos cables para hablar de la Arquitectura Orientada a Servicios (SOA, por sus siglas en inglés). Y te prometo que, aunque suene a ingeniería avanzada, tiene todo que ver con el sentido común. Imagina a Mateo. Mateo es el orgulloso dueño de "El Gran Bazar", una tienda de cinco pisos donde vende de todo: zapatos, panadería, muebles y ferretería. Al principio, era un éxito. Pero el edificio tenía un diseño terrible: todos los departamentos compartían la misma caja registradora, la misma puerta de entrada y el mismo inventario. Un martes, la tubería del área de pescadería se rompió. Como todo estaba conectado en un solo gran bloque, Mateo tuvo que cerrar la panadería, la zapatería y la ferretería para poder arreglar el tubo. Fue el caos total. En el mundo del desarrollo de software, a esto le llamamos "arquitectura monolítica". Históricamente, las aplicaciones empresariales se construían como un solo bloque gigante e interdependiente (Richards & Ford, 2020). Si fallaba una pequeña línea de código, colapsaba todo el sistema. Así es como surge la necesidad de la arquitectura SOA a finales de los 90 y principios de los 2000, como un esfuerzo para separar estos monolitos en partes manejables (Erl, 2005). Desesperado, Mateo tiene una idea brillante. Decide demoler el megamercado y construir una plaza comercial. Ahora, la panadería es un local independiente y la zapatería es otro. Cada uno tiene su propio espacio y sus propias reglas, pero se comunican a través de pasillos centrales (lo que en SOA se conoce como un Enterprise Service Bus o ESB). Si la tubería de la pescadería vuelve a fallar, la panadería sigue vendiendo pan sin enterarse del problema. Esto nos lleva a la importancia fundamental de SOA. ¿Por qué cambió las reglas del juego? Porque convierte un sistema frágil en piezas independientes llamadas "servicios". Cada servicio encapsula una lógica de negocio específica, promoviendo la reutilización, la interoperabilidad entre diferentes tecnologías y la flexibilidad operativa (Erl, 2005). Permite a las empresas alinear sus sistemas de TI directamente con sus procesos de negocio y crecer sin que el sistema colapse por su propio peso. Pero la tecnología no se detiene. ¿Cuál es la tendencia actual de la arquitectura SOA? Volvamos a la plaza de Mateo. Con el tiempo, mantener esos locales físicos grandes y el enorme pasillo central se volvió pesado y costoso. Hoy, la tendencia es que Mateo ha convertido muchos de esos locales en Food Trucks o servicios de entrega por aplicaciones móviles. Son aún más pequeños, más rápidos, y no dependen de un pasillo central pesado. En el ecosistema del software actual, la arquitectura SOA sentó las bases filosóficas para la evolución hacia los Microservicios (Newman, 2015). Mientras que SOA tradicionalmente dependía de integraciones pesadas y centralizadas (ESB), la tendencia dominante de hoy es descomponer los servicios en unidades aún más pequeñas y autónomas (microservicios), que se comunican mediante APIs ligeras y habitan en entornos en la nube (Richards & Ford, 2020). SOA nos enseñó a separar; los microservicios y la computación cloud-native llevaron esa separación a su máxima agilidad. Los grandes problemas no se resuelven atacando el bloque entero. Se resuelven construyendo sistemas donde cada parte tenga su propio propósito y su propia independencia. Cuando organizas tus piezas, ya sea en código o en tu vida diaria, evitas que el caos de una sola área apague todas tus luces. ----- > [Pulsa aquí para escuchar la versión narrada](https://audius.co/frexus/el-megamercado-del-caos) > [Pulsa aquí si quieres saber más](https://www.frexus.dev/post/arquitectura-soa/) ------ ## Referencia Bibliográfica > Erl, T. (2005). Service-oriented architecture: Concepts, technology, and design. Prentice Hall Professional Technical Reference. > Newman, S. (2015). Building microservices: Designing fine-grained systems. O'Reilly Media. > Richards, M., & Ford, N. (2020). Fundamentals of software architecture: An engineering approach. O'Reilly Media.
json metadata{"tags":["arquitecturasoa","desarrollodesoftware","microservicios"],"image":["https://cdn.steemitimages.com/DQmUJF1bvewXjqeZ9Peq8zpxLKAWjgD3Aa2GRurofgBf9MN/_img_podcast_.png"],"links":["https://audius.co/frexus/el-megamercado-del-caos","https://www.frexus.dev/post/arquitectura-soa/"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #106207489/Trx 73b51a9b38bf9511aec478cc82f0f1f47d2d6bb0
View Raw JSON Data
{
  "trx_id": "73b51a9b38bf9511aec478cc82f0f1f47d2d6bb0",
  "block": 106207489,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-20T05:49:42",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "arquitecturasoa",
      "author": "frexus",
      "permlink": "entendiendo-la-arquitectura-soa-sin-ser-programador",
      "title": "Entendiendo la Arquitectura SOA sin ser programador",
      "body": "![_img_podcast_.png](https://cdn.steemitimages.com/DQmUJF1bvewXjqeZ9Peq8zpxLKAWjgD3Aa2GRurofgBf9MN/_img_podcast_.png)\n\n¿Alguna vez has sacado del clóset las luces del árbol de Navidad solo para descubrir que están todas enredadas en un nudo imposible? Y lo peor: si un solo foco se funde, toda la serie se apaga. Esa frustración monumental de no saber dónde está el error es exactamente lo que vivían las grandes empresas de tecnología a finales de los años noventa. Hoy vamos a desenredar esos cables para hablar de la Arquitectura Orientada a Servicios (SOA, por sus siglas en inglés). Y te prometo que, aunque suene a ingeniería avanzada, tiene todo que ver con el sentido común.\n\nImagina a Mateo. Mateo es el orgulloso dueño de \"El Gran Bazar\", una tienda de cinco pisos donde vende de todo: zapatos, panadería, muebles y ferretería. Al principio, era un éxito. Pero el edificio tenía un diseño terrible: todos los departamentos compartían la misma caja registradora, la misma puerta de entrada y el mismo inventario. Un martes, la tubería del área de pescadería se rompió. Como todo estaba conectado en un solo gran bloque, Mateo tuvo que cerrar la panadería, la zapatería y la ferretería para poder arreglar el tubo. Fue el caos total.\n\nEn el mundo del desarrollo de software, a esto le llamamos \"arquitectura monolítica\". Históricamente, las aplicaciones empresariales se construían como un solo bloque gigante e interdependiente (Richards & Ford, 2020). Si fallaba una pequeña línea de código, colapsaba todo el sistema. Así es como surge la necesidad de la arquitectura SOA a finales de los 90 y principios de los 2000, como un esfuerzo para separar estos monolitos en partes manejables (Erl, 2005).\n\nDesesperado, Mateo tiene una idea brillante. Decide demoler el megamercado y construir una plaza comercial. Ahora, la panadería es un local independiente y la zapatería es otro. Cada uno tiene su propio espacio y sus propias reglas, pero se comunican a través de pasillos centrales (lo que en SOA se conoce como un Enterprise Service Bus o ESB). Si la tubería de la pescadería vuelve a fallar, la panadería sigue vendiendo pan sin enterarse del problema.\n\nEsto nos lleva a la importancia fundamental de SOA. ¿Por qué cambió las reglas del juego? Porque convierte un sistema frágil en piezas independientes llamadas \"servicios\". Cada servicio encapsula una lógica de negocio específica, promoviendo la reutilización, la interoperabilidad entre diferentes tecnologías y la flexibilidad operativa (Erl, 2005). Permite a las empresas alinear sus sistemas de TI directamente con sus procesos de negocio y crecer sin que el sistema colapse por su propio peso.\n\nPero la tecnología no se detiene. ¿Cuál es la tendencia actual de la arquitectura SOA? Volvamos a la plaza de Mateo. Con el tiempo, mantener esos locales físicos grandes y el enorme pasillo central se volvió pesado y costoso. Hoy, la tendencia es que Mateo ha convertido muchos de esos locales en Food Trucks o servicios de entrega por aplicaciones móviles. Son aún más pequeños, más rápidos, y no dependen de un pasillo central pesado.\n\nEn el ecosistema del software actual, la arquitectura SOA sentó las bases filosóficas para la evolución hacia los Microservicios (Newman, 2015). Mientras que SOA tradicionalmente dependía de integraciones pesadas y centralizadas (ESB), la tendencia dominante de hoy es descomponer los servicios en unidades aún más pequeñas y autónomas (microservicios), que se comunican mediante APIs ligeras y habitan en entornos en la nube (Richards & Ford, 2020). SOA nos enseñó a separar; los microservicios y la computación cloud-native llevaron esa separación a su máxima agilidad.\n\nLos grandes problemas no se resuelven atacando el bloque entero. Se resuelven construyendo sistemas donde cada parte tenga su propio propósito y su propia independencia. Cuando organizas tus piezas, ya sea en código o en tu vida diaria, evitas que el caos de una sola área apague todas tus luces.\n\n-----\n\n> [Pulsa aquí para escuchar la versión narrada](https://audius.co/frexus/el-megamercado-del-caos)\n\n> [Pulsa aquí si quieres saber más](https://www.frexus.dev/post/arquitectura-soa/)\n\n------\n\n## Referencia Bibliográfica\n> Erl, T. (2005). Service-oriented architecture: Concepts, technology, and design. Prentice Hall Professional Technical Reference.\n\n> Newman, S. (2015). Building microservices: Designing fine-grained systems. O'Reilly Media.\n\n> Richards, M., & Ford, N. (2020). Fundamentals of software architecture: An engineering approach. O'Reilly Media.",
      "json_metadata": "{\"tags\":[\"arquitecturasoa\",\"desarrollodesoftware\",\"microservicios\"],\"image\":[\"https://cdn.steemitimages.com/DQmUJF1bvewXjqeZ9Peq8zpxLKAWjgD3Aa2GRurofgBf9MN/_img_podcast_.png\"],\"links\":[\"https://audius.co/frexus/el-megamercado-del-caos\",\"https://www.frexus.dev/post/arquitectura-soa/\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/05/13 06:03:12
parent author
parent permlinktechnology
authorfrexus
permlinkel-pilar-de-la-flexibilidad-digital
titleEl Pilar de la Flexibilidad Digital
body@@ -2198,17 +2198,16 @@ sa aqu%C3%AD%5D - (https:/
json metadata{"tags":["programming","soa","development"],"image":["https://cdn.steemitimages.com/DQmRPjzqC6bEc4H6Dmc7BYeHa3646fYW2ubBT2EsAwD54hA/_o0o0_podcast.png"],"links":["https://audius.co/frexus/el-arte-de-los-servicios-independientes","https://www.frexus.dev/post/servicios-nube-aplicaciones-mashup/"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #106007092/Trx ec6899a6f6d9d624311b4a149a37d8fb8356670d
View Raw JSON Data
{
  "trx_id": "ec6899a6f6d9d624311b4a149a37d8fb8356670d",
  "block": 106007092,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-13T06:03:12",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "technology",
      "author": "frexus",
      "permlink": "el-pilar-de-la-flexibilidad-digital",
      "title": "El Pilar de la Flexibilidad Digital",
      "body": "@@ -2198,17 +2198,16 @@\n sa aqu%C3%AD%5D\n- \n (https:/\n",
      "json_metadata": "{\"tags\":[\"programming\",\"soa\",\"development\"],\"image\":[\"https://cdn.steemitimages.com/DQmRPjzqC6bEc4H6Dmc7BYeHa3646fYW2ubBT2EsAwD54hA/_o0o0_podcast.png\"],\"links\":[\"https://audius.co/frexus/el-arte-de-los-servicios-independientes\",\"https://www.frexus.dev/post/servicios-nube-aplicaciones-mashup/\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/05/13 06:02:42
parent author
parent permlinktechnology
authorfrexus
permlinkel-pilar-de-la-flexibilidad-digital
titleEl Pilar de la Flexibilidad Digital
body@@ -2155,16 +2155,17 @@ io!*%0A%0A%3E +%5B Si quier @@ -2197,16 +2197,85 @@ lsa aqu%C3%AD +%5D (https://audius.co/frexus/el-arte-de-los-servicios-independientes)%0A %0A%3E %5BAcce
json metadata{"tags":["programming","soa","development"],"image":["https://cdn.steemitimages.com/DQmRPjzqC6bEc4H6Dmc7BYeHa3646fYW2ubBT2EsAwD54hA/_o0o0_podcast.png"],"links":["https://audius.co/frexus/el-arte-de-los-servicios-independientes","https://www.frexus.dev/post/servicios-nube-aplicaciones-mashup/"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #106007082/Trx 709ac329bf72b11bef5ac4b6496bad2bfc2403f5
View Raw JSON Data
{
  "trx_id": "709ac329bf72b11bef5ac4b6496bad2bfc2403f5",
  "block": 106007082,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-13T06:02:42",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "technology",
      "author": "frexus",
      "permlink": "el-pilar-de-la-flexibilidad-digital",
      "title": "El Pilar de la Flexibilidad Digital",
      "body": "@@ -2155,16 +2155,17 @@\n io!*%0A%0A%3E \n+%5B\n Si quier\n@@ -2197,16 +2197,85 @@\n lsa aqu%C3%AD\n+%5D (https://audius.co/frexus/el-arte-de-los-servicios-independientes)%0A\n %0A%3E %5BAcce\n",
      "json_metadata": "{\"tags\":[\"programming\",\"soa\",\"development\"],\"image\":[\"https://cdn.steemitimages.com/DQmRPjzqC6bEc4H6Dmc7BYeHa3646fYW2ubBT2EsAwD54hA/_o0o0_podcast.png\"],\"links\":[\"https://audius.co/frexus/el-arte-de-los-servicios-independientes\",\"https://www.frexus.dev/post/servicios-nube-aplicaciones-mashup/\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/05/13 05:58:39
parent author
parent permlinktechnology
authorfrexus
permlinkel-pilar-de-la-flexibilidad-digital
titleEl Pilar de la Flexibilidad Digital
body# La Arquitectura Orientada a Servicios (SOA) ![_o0o0_podcast.png](https://cdn.steemitimages.com/DQmRPjzqC6bEc4H6Dmc7BYeHa3646fYW2ubBT2EsAwD54hA/_o0o0_podcast.png) La **Arquitectura Orientada a Servicios (SOA)** representa un paradigma de diseño de software donde las capacidades de negocio se organizan como servicios independientes pero comunicados entre sí. A diferencia de las estructuras monolíticas, las aplicaciones orientadas a servicios se definen por características críticas que garantizan su flexibilidad y evolución a largo plazo. Una de las características fundamentales es el **acoplamiento débil** (*loose coupling*). Según **Erl (2016)**, este principio permite que los servicios mantengan una relación de dependencia mínima, lo que facilita que los cambios internos en un servicio no afecten negativamente a los consumidores del mismo. Esta autonomía es vital para la resiliencia del sistema, permitiendo que las fallas se aíslen y no comprometan la totalidad de la aplicación. Asimismo, la **interoperabilidad** es un pilar de SOA. Los servicios deben poder interactuar independientemente de la plataforma o el lenguaje de programación en el que hayan sido desarrollados. Esto se logra mediante el uso de **contratos de servicio estandarizados**, que actúan como una interfaz técnica compartida (**Papazoglou, 2012**). Estos contratos aseguran que la comunicación sea predecible y consistente, facilitando la **reutilización de servicios**, una ventaja competitiva que reduce tiempos de desarrollo y costos operativos al evitar la duplicidad de funciones (**Newcomer & Lomow, 2005**). --- ## 📚 Referencias Bibliográficas * **Erl, T. (2016).** *Service-Oriented Architecture: Analysis and Design for Services and Microservices*. Prentice Hall. * **Newcomer, E., & Lomow, G. (2005).** *Understanding SOA with Web Services*. Addison-Wesley Professional. * **Papazoglou, M. P. (2012).** *Web Services and SOA: Principles and Technology*. Pearson Education. --- > *Este contenido ha sido estructurado para la comunidad de tecnología y desarrollo. Si te interesa la arquitectura de software, ¡no olvides dejar tu voto y comentario!* > Si quieres escuchar el podcast pulsa aquí > [Accede a más contenido sobre el tema aquí](https://www.frexus.dev/post/servicios-nube-aplicaciones-mashup/)
json metadata{"tags":["technology","programming","soa","development"],"image":["https://cdn.steemitimages.com/DQmRPjzqC6bEc4H6Dmc7BYeHa3646fYW2ubBT2EsAwD54hA/_o0o0_podcast.png"],"links":["https://www.frexus.dev/post/servicios-nube-aplicaciones-mashup/"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #106007001/Trx dc797fae846e94ad6af3fad5d5c92fda3098e428
View Raw JSON Data
{
  "trx_id": "dc797fae846e94ad6af3fad5d5c92fda3098e428",
  "block": 106007001,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-13T05:58:39",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "technology",
      "author": "frexus",
      "permlink": "el-pilar-de-la-flexibilidad-digital",
      "title": "El Pilar de la Flexibilidad Digital",
      "body": "# La Arquitectura Orientada a Servicios (SOA)\n\n\n![_o0o0_podcast.png](https://cdn.steemitimages.com/DQmRPjzqC6bEc4H6Dmc7BYeHa3646fYW2ubBT2EsAwD54hA/_o0o0_podcast.png)\n\n\nLa **Arquitectura Orientada a Servicios (SOA)** representa un paradigma de diseño de software donde las capacidades de negocio se organizan como servicios independientes pero comunicados entre sí. A diferencia de las estructuras monolíticas, las aplicaciones orientadas a servicios se definen por características críticas que garantizan su flexibilidad y evolución a largo plazo.\n\nUna de las características fundamentales es el **acoplamiento débil** (*loose coupling*). Según **Erl (2016)**, este principio permite que los servicios mantengan una relación de dependencia mínima, lo que facilita que los cambios internos en un servicio no afecten negativamente a los consumidores del mismo. Esta autonomía es vital para la resiliencia del sistema, permitiendo que las fallas se aíslen y no comprometan la totalidad de la aplicación.\n\nAsimismo, la **interoperabilidad** es un pilar de SOA. Los servicios deben poder interactuar independientemente de la plataforma o el lenguaje de programación en el que hayan sido desarrollados. Esto se logra mediante el uso de **contratos de servicio estandarizados**, que actúan como una interfaz técnica compartida (**Papazoglou, 2012**). \n\nEstos contratos aseguran que la comunicación sea predecible y consistente, facilitando la **reutilización de servicios**, una ventaja competitiva que reduce tiempos de desarrollo y costos operativos al evitar la duplicidad de funciones (**Newcomer & Lomow, 2005**).\n\n---\n\n## 📚 Referencias Bibliográficas\n\n* **Erl, T. (2016).** *Service-Oriented Architecture: Analysis and Design for Services and Microservices*. Prentice Hall.\n* **Newcomer, E., & Lomow, G. (2005).** *Understanding SOA with Web Services*. Addison-Wesley Professional.\n* **Papazoglou, M. P. (2012).** *Web Services and SOA: Principles and Technology*. Pearson Education.\n\n---\n> *Este contenido ha sido estructurado para la comunidad de tecnología y desarrollo. Si te interesa la arquitectura de software, ¡no olvides dejar tu voto y comentario!*\n\n> Si quieres escuchar el podcast pulsa aquí\n> [Accede a más contenido sobre el tema aquí](https://www.frexus.dev/post/servicios-nube-aplicaciones-mashup/)",
      "json_metadata": "{\"tags\":[\"technology\",\"programming\",\"soa\",\"development\"],\"image\":[\"https://cdn.steemitimages.com/DQmRPjzqC6bEc4H6Dmc7BYeHa3646fYW2ubBT2EsAwD54hA/_o0o0_podcast.png\"],\"links\":[\"https://www.frexus.dev/post/servicios-nube-aplicaciones-mashup/\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
steemdelegated 3.335 SP to @frexus
2026/05/12 04:41:12
delegatorsteem
delegateefrexus
vesting shares5431.449401 VESTS
Transaction InfoBlock #105976726/Trx a4bd11704b6e512a2658983e9695e01c7d98b3b5
View Raw JSON Data
{
  "trx_id": "a4bd11704b6e512a2658983e9695e01c7d98b3b5",
  "block": 105976726,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-12T04:41:12",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "frexus",
      "vesting_shares": "5431.449401 VESTS"
    }
  ]
}
steemdelegated 5.007 SP to @frexus
2026/05/01 19:43:21
delegatorsteem
delegateefrexus
vesting shares8152.774094 VESTS
Transaction InfoBlock #105678812/Trx fdedda12f5e6d747695bc0da7742577d678b5ef8
View Raw JSON Data
{
  "trx_id": "fdedda12f5e6d747695bc0da7742577d678b5ef8",
  "block": 105678812,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-05-01T19:43:21",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "frexus",
      "vesting_shares": "8152.774094 VESTS"
    }
  ]
}
steemdelegated 10.059 SP to @frexus
2026/02/25 19:43:21
delegatorsteem
delegateefrexus
vesting shares16379.848035 VESTS
Transaction InfoBlock #103814291/Trx 0e7f7b500c32aeafcdf412e4f33381b48d6a31b5
View Raw JSON Data
{
  "trx_id": "0e7f7b500c32aeafcdf412e4f33381b48d6a31b5",
  "block": 103814291,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-02-25T19:43:21",
  "op": [
    "delegate_vesting_shares",
    {
      "delegator": "steem",
      "delegatee": "frexus",
      "vesting_shares": "16379.848035 VESTS"
    }
  ]
}
2026/02/13 22:20:45
required auths[]
required posting auths["frexus"]
idfollow
json["follow",{"follower":"frexus","following":"ilovecoding","what":["blog",""]}]
Transaction InfoBlock #103472780/Trx c07db73d0cc480707b57e15507aecdf417765f8e
View Raw JSON Data
{
  "trx_id": "c07db73d0cc480707b57e15507aecdf417765f8e",
  "block": 103472780,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-02-13T22:20:45",
  "op": [
    "custom_json",
    {
      "required_auths": [],
      "required_posting_auths": [
        "frexus"
      ],
      "id": "follow",
      "json": "[\"follow\",{\"follower\":\"frexus\",\"following\":\"ilovecoding\",\"what\":[\"blog\",\"\"]}]"
    }
  ]
}
2026/01/30 19:10:27
parent author
parent permlinkdataanalysis
authorfrexus
permlinkrescatando-el-legado-con-el-poder-del-etl
titleRescatando el Legado con el Poder del ETL
body![o3o.png](https://cdn.steemitimages.com/DQmcXTrjd5aVje3RDDxcpqoWn6uB69LrbekZeLhWksw5Zqq/o3o.png) ### **Objetivo General** El estudiante diseñará y ejecutará un flujo de trabajo de **Extracción, Transformación y Carga (ETL)** utilizando un conjunto de datos desordenado para generar un tablero de control que permita tomar decisiones estratégicas basadas en evidencia. ### **Introducción Contextual** ¡Bienvenido al equipo de analítica de "La Herencia"! Al igual que Mateo, te has encontrado con un desastre: los datos de ventas están en un archivo, el inventario en otro, y las ubicaciones geográficas tienen errores de escritura. Si no logramos consolidar esta información hoy mismo, la empresa seguirá enviando botas de nieve al desierto. **Tu misión es limpiar el caos y encender la luz de la inteligencia de negocios.** ### **Duración Estimada** - **En el aula:** 90 minutos. - **Trabajo independiente:** 60 minutos (Refinamiento de visualización y reporte). ### **Materiales o Recursos Necesarios** - Computadora con conexión a internet. - Software: Microsoft Excel / Google Sheets (para el proceso manual) o Power BI / Tableau (para el proceso automatizado). - Set de datos "La Herencia" (proporcionado por el docente en formato CSV o XLSX). ### **Instrucciones Paso a Paso** #### **1. Extracción (The Hunt)** - Identifica y abre las tres fuentes de datos: `Ventas_2025.csv`, `Inventario_Maestro.xlsx` y `Clientes_Region.csv`. - Verifica que los archivos se abran correctamente y que los encabezados sean legibles. #### **2. Transformación: Limpieza de Ruido** - **Estandarización:** Busca nombres de ciudades mal escritos (ej. "Meksico", "México", "CDMX") y unifícalos bajo un solo nombre. - **Tratamiento de nulos:** Identifica filas con valores vacíos en la columna "Precio" y asígnales el valor promedio o elimínalas si no tienen salvación. - **Conversión de Tipos:** Asegúrate de que las fechas tengan formato de fecha y los valores monetarios sean numéricos. #### **3. Transformación: Enriquecimiento (Merge)** - Utiliza una función de búsqueda (como `BUSCARV` o `Merge` en Power Query) para unir la tabla de ventas con la de inventario usando el **ID de Producto** como llave común. - Calcula una nueva columna llamada **"Stock Crítico"**: Resta las ventas del inventario actual. #### **4. Carga (The Warehouse)** - Carga tus datos limpios y combinados en una nueva hoja de cálculo "Maestra" o en el modelo de datos de tu herramienta de visualización. Este será tu "Data Warehouse" miniatura. #### **5. Visualización (La Luz)** - Crea un gráfico de barras que muestre las ventas por región. - Crea un mapa de calor que identifique dónde hay exceso de stock (productos que no se venden). ### **Recomendaciones** 1. **Cuestiona todo:** Si un dato parece demasiado alto o bajo, probablemente sea un error de carga. 2. **Orden ante todo:** Ponle nombres claros a tus columnas y tablas desde el principio. 3. **Itera:** No intentes que el gráfico sea perfecto a la primera; primero asegúrate de que el dato es correcto. 4. **Piensa en el usuario:** Diseña tu tablero para que el papá de Mateo (que no sabe de tecnología) pueda entenderlo en 10 segundos. 5. **No borres, transforma:** Guarda siempre una copia de los datos originales antes de empezar a limpiar. ### **Posible Problema y Solución Rápida** - **Problema:** "Al intentar unir las tablas, todos los valores me aparecen como `#N/A` o vacíos". - **Solución:** Revisa que el **ID de Producto** en ambas tablas sea del mismo tipo (ambos números o ambos texto). A veces un espacio invisible al final del código rompe la conexión.
json metadata{"tags":["dataanalysis","etlworkshop","businessintelligence","learningbydoing","datacleanup"],"image":["https://cdn.steemitimages.com/DQmcXTrjd5aVje3RDDxcpqoWn6uB69LrbekZeLhWksw5Zqq/o3o.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #103066598/Trx 23ee9a941f3ce7aafdd61b0eb7bcca16d461833b
View Raw JSON Data
{
  "trx_id": "23ee9a941f3ce7aafdd61b0eb7bcca16d461833b",
  "block": 103066598,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-30T19:10:27",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "dataanalysis",
      "author": "frexus",
      "permlink": "rescatando-el-legado-con-el-poder-del-etl",
      "title": "Rescatando el Legado con el Poder del ETL",
      "body": "![o3o.png](https://cdn.steemitimages.com/DQmcXTrjd5aVje3RDDxcpqoWn6uB69LrbekZeLhWksw5Zqq/o3o.png)\n\n\n### **Objetivo General**\n\nEl estudiante diseñará y ejecutará un flujo de trabajo de **Extracción, Transformación y Carga (ETL)** utilizando un conjunto de datos desordenado para generar un tablero de control que permita tomar decisiones estratégicas basadas en evidencia.\n\n### **Introducción Contextual**\n\n¡Bienvenido al equipo de analítica de \"La Herencia\"! Al igual que Mateo, te has encontrado con un desastre: los datos de ventas están en un archivo, el inventario en otro, y las ubicaciones geográficas tienen errores de escritura. Si no logramos consolidar esta información hoy mismo, la empresa seguirá enviando botas de nieve al desierto. **Tu misión es limpiar el caos y encender la luz de la inteligencia de negocios.**\n\n### **Duración Estimada**\n\n- **En el aula:** 90 minutos.\n- **Trabajo independiente:** 60 minutos (Refinamiento de visualización y reporte).\n\n### **Materiales o Recursos Necesarios**\n\n- Computadora con conexión a internet.\n- Software: Microsoft Excel / Google Sheets (para el proceso manual) o Power BI / Tableau (para el proceso automatizado).\n- Set de datos \"La Herencia\" (proporcionado por el docente en formato CSV o XLSX).\n    \n### **Instrucciones Paso a Paso**\n\n#### **1. Extracción (The Hunt)**\n\n- Identifica y abre las tres fuentes de datos: `Ventas_2025.csv`, `Inventario_Maestro.xlsx` y `Clientes_Region.csv`.\n- Verifica que los archivos se abran correctamente y que los encabezados sean legibles.\n    \n\n#### **2. Transformación: Limpieza de Ruido**\n\n- **Estandarización:** Busca nombres de ciudades mal escritos (ej. \"Meksico\", \"México\", \"CDMX\") y unifícalos bajo un solo nombre.\n- **Tratamiento de nulos:** Identifica filas con valores vacíos en la columna \"Precio\" y asígnales el valor promedio o elimínalas si no tienen salvación.\n- **Conversión de Tipos:** Asegúrate de que las fechas tengan formato de fecha y los valores monetarios sean numéricos.\n    \n\n#### **3. Transformación: Enriquecimiento (Merge)**\n\n- Utiliza una función de búsqueda (como `BUSCARV` o `Merge` en Power Query) para unir la tabla de ventas con la de inventario usando el **ID de Producto** como llave común.\n- Calcula una nueva columna llamada **\"Stock Crítico\"**: Resta las ventas del inventario actual.\n    \n\n#### **4. Carga (The Warehouse)**\n\n- Carga tus datos limpios y combinados en una nueva hoja de cálculo \"Maestra\" o en el modelo de datos de tu herramienta de visualización. Este será tu \"Data Warehouse\" miniatura.\n    \n\n#### **5. Visualización (La Luz)**\n\n- Crea un gráfico de barras que muestre las ventas por región.\n- Crea un mapa de calor que identifique dónde hay exceso de stock (productos que no se venden).\n    \n\n### **Recomendaciones**\n\n1. **Cuestiona todo:** Si un dato parece demasiado alto o bajo, probablemente sea un error de carga.\n2. **Orden ante todo:** Ponle nombres claros a tus columnas y tablas desde el principio.    \n3. **Itera:** No intentes que el gráfico sea perfecto a la primera; primero asegúrate de que el dato es correcto.\n4. **Piensa en el usuario:** Diseña tu tablero para que el papá de Mateo (que no sabe de tecnología) pueda entenderlo en 10 segundos.\n5. **No borres, transforma:** Guarda siempre una copia de los datos originales antes de empezar a limpiar.\n    \n\n### **Posible Problema y Solución Rápida**\n\n- **Problema:** \"Al intentar unir las tablas, todos los valores me aparecen como `#N/A` o vacíos\".\n- **Solución:** Revisa que el **ID de Producto** en ambas tablas sea del mismo tipo (ambos números o ambos texto). A veces un espacio invisible al final del código rompe la conexión.",
      "json_metadata": "{\"tags\":[\"dataanalysis\",\"etlworkshop\",\"businessintelligence\",\"learningbydoing\",\"datacleanup\"],\"image\":[\"https://cdn.steemitimages.com/DQmcXTrjd5aVje3RDDxcpqoWn6uB69LrbekZeLhWksw5Zqq/o3o.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/01/26 21:30:33
voteralejandra.seba
authorfrexus
permlinkel-guardian-del-laberinto-adaptativo-un-reto-de-ia
weight10000 (100.00%)
Transaction InfoBlock #102954451/Trx 7e493bf1abeee0d1ec8e9c39990fbb6c6107692b
View Raw JSON Data
{
  "trx_id": "7e493bf1abeee0d1ec8e9c39990fbb6c6107692b",
  "block": 102954451,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-26T21:30:33",
  "op": [
    "vote",
    {
      "voter": "alejandra.seba",
      "author": "frexus",
      "permlink": "el-guardian-del-laberinto-adaptativo-un-reto-de-ia",
      "weight": 10000
    }
  ]
}
2026/01/26 21:30:18
voteralejandra.seba
authorfrexus
permlinkel-guardian-del-laberinto-adaptativo-un-reto-de-ia
weight10000 (100.00%)
Transaction InfoBlock #102954446/Trx 98c0a706ab0bc16b480c98d6ecdad8a3d73b3d0d
View Raw JSON Data
{
  "trx_id": "98c0a706ab0bc16b480c98d6ecdad8a3d73b3d0d",
  "block": 102954446,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-26T21:30:18",
  "op": [
    "vote",
    {
      "voter": "alejandra.seba",
      "author": "frexus",
      "permlink": "el-guardian-del-laberinto-adaptativo-un-reto-de-ia",
      "weight": 10000
    }
  ]
}
2026/01/20 21:55:15
parent author
parent permlinkdba
authorfrexus
permlinkresiliencia-total-automatizacion-y-recuperacion-de-datos
titleResiliencia Total – Automatización y Recuperación de Datos
body![o0o.png](https://cdn.steemitimages.com/DQmSsZVwb4UhCDHHCwdcLCsp2dhwy4hKFyHrNAeBJPYDs9N/o0o.png) Los datos no solo deben estar almacenados; deben estar disponibles y ser confiables. Como futuro Administrador de Bases de Datos (DBA), tu misión es transformar una operación manual y lenta en un sistema automatizado de alto rendimiento. ## El Escenario: "DataSafe Logistics" La empresa **DataSafe Logistics** depende de SQL Server para despachar sus pedidos globales. Sin embargo, su gestión actual es crítica: - **Tiempos de caída:** Si el servidor falla, tardan hasta 6 horas en recuperarse (**RTO**), perdiendo competitividad. - **Datos Sucios:** Al cargar inventarios manualmente, la base de datos se llena de errores e inconsistencias. - **Riesgo Humano:** El olvido de una tarea de mantenimiento ha causado bloqueos en el sistema. ### La Pregunta Clave **¿Cómo puedes diseñar una arquitectura orquestada con PowerShell y dbatools que reduzca el tiempo de recuperación (RTO) a menos de 15 minutos y garantice que no se pierdan datos (RPO cercano a cero)?** --- ### Fase 1: Descubre y Diagnostica Forma tu equipo de **3 a 4 integrantes**. Deberán realizar un diagnóstico profundo de la infraestructura actual: - Identifiquen los "cuellos de botella" y las tareas manuales que más fallan. - Planteen una hipótesis: ¿Qué herramienta de automatización generará el mayor ahorro de tiempo? ### Fase 2: Genera Ideas e Investiga No reinventes la rueda. Investiga cómo las potencias de la industria usan el código abierto: - Explora el módulo **dbatools** y sus más de 700 comandos de automatización. - Aprende a usar el **SQL Server Agent** con pasos de tipo `CmdExec` para mayor robustez. ### Fase 3: Experimenta e Implementa (El Prototipo) Es hora de tirar código. Deberán entregar un sistema funcional que incluya: 1. **Módulo de Recuperación:** Backups automatizados y, lo más importante, ¡verificados! Usa `Test-DbaLastBackup` para asegurar que cada copia realmente funcione. 2. **Módulo de Calidad:** Implementa un proceso de **Data Profiling** para limpiar "datos sucios" antes de que entren a producción. 3. Cálculo de Métricas: Valida tu éxito calculando el Objetivo de Punto de Recuperación (RPO): `RPO ≈ Frecuencia_backup + Tiempo_transferencia + Tiempo_procesamiento` Tu meta es que este valor sea lo más cercano a cero posible.
json metadata{"tags":["dba","automation","abpro","inacap","education","database","dbatools"],"image":["https://cdn.steemitimages.com/DQmSsZVwb4UhCDHHCwdcLCsp2dhwy4hKFyHrNAeBJPYDs9N/o0o.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102782496/Trx 654ee8de65cd450d7e7bd7b07a251828e969e1cb
View Raw JSON Data
{
  "trx_id": "654ee8de65cd450d7e7bd7b07a251828e969e1cb",
  "block": 102782496,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-20T21:55:15",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "dba",
      "author": "frexus",
      "permlink": "resiliencia-total-automatizacion-y-recuperacion-de-datos",
      "title": "Resiliencia Total – Automatización y Recuperación de Datos",
      "body": "![o0o.png](https://cdn.steemitimages.com/DQmSsZVwb4UhCDHHCwdcLCsp2dhwy4hKFyHrNAeBJPYDs9N/o0o.png)\n\n\nLos datos no solo deben estar almacenados; deben estar disponibles y ser confiables. Como futuro Administrador de Bases de Datos (DBA), tu misión es transformar una operación manual y lenta en un sistema automatizado de alto rendimiento. \n\n##  El Escenario: \"DataSafe Logistics\"\n\nLa empresa **DataSafe Logistics** depende de SQL Server para despachar sus pedidos globales. Sin embargo, su gestión actual es crítica:\n\n- **Tiempos de caída:** Si el servidor falla, tardan hasta 6 horas en recuperarse (**RTO**), perdiendo competitividad. \n- **Datos Sucios:** Al cargar inventarios manualmente, la base de datos se llena de errores e inconsistencias.    \n- **Riesgo Humano:** El olvido de una tarea de mantenimiento ha causado bloqueos en el sistema.\n    \n\n###  La Pregunta Clave\n\n**¿Cómo puedes diseñar una arquitectura orquestada con PowerShell y dbatools que reduzca el tiempo de recuperación (RTO) a menos de 15 minutos y garantice que no se pierdan datos (RPO cercano a cero)?**\n\n---\n\n\n### Fase 1: Descubre y Diagnostica\n\nForma tu equipo de **3 a 4 integrantes**. Deberán realizar un diagnóstico profundo de la infraestructura actual:\n\n- Identifiquen los \"cuellos de botella\" y las tareas manuales que más fallan.\n- Planteen una hipótesis: ¿Qué herramienta de automatización generará el mayor ahorro de tiempo?\n    \n\n### Fase 2: Genera Ideas e Investiga\n\nNo reinventes la rueda. Investiga cómo las potencias de la industria usan el código abierto:\n\n- Explora el módulo **dbatools** y sus más de 700 comandos de automatización.    \n- Aprende a usar el **SQL Server Agent** con pasos de tipo `CmdExec` para mayor robustez.\n    \n\n### Fase 3: Experimenta e Implementa (El Prototipo)\n\nEs hora de tirar código. Deberán entregar un sistema funcional que incluya:\n\n1. **Módulo de Recuperación:** Backups automatizados y, lo más importante, ¡verificados! Usa `Test-DbaLastBackup` para asegurar que cada copia realmente funcione.\n    \n2. **Módulo de Calidad:** Implementa un proceso de **Data Profiling** para limpiar \"datos sucios\" antes de que entren a producción.\n    \n3. Cálculo de Métricas: Valida tu éxito calculando el Objetivo de Punto de Recuperación (RPO):\n    \n   \n   `RPO ≈ Frecuencia_backup + Tiempo_transferencia + Tiempo_procesamiento`\n    \n    Tu meta es que este valor sea lo más cercano a cero posible.",
      "json_metadata": "{\"tags\":[\"dba\",\"automation\",\"abpro\",\"inacap\",\"education\",\"database\",\"dbatools\"],\"image\":[\"https://cdn.steemitimages.com/DQmSsZVwb4UhCDHHCwdcLCsp2dhwy4hKFyHrNAeBJPYDs9N/o0o.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/01/20 15:22:57
parent author
parent permlinkspanish
authorfrexus
permlinkel-adn-de-la-mente-descifrando-la-variabilidad-humana
titleEl ADN de la Mente: Descifrando la Variabilidad Humana
body@@ -1891,31 +1891,8 @@ :** -El docente plantear%C3%A1 un %22ca
json metadata{"tags":["psychology","statistics","steemiteducation","writing","science"],"image":["https://cdn.steemitimages.com/DQmNViyNsFN7XGncXt38XUnNtKoRyn7zb3kFym5K3Ubq4Aj/o2o.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102774666/Trx 9e2782c5f620d73834f9a3c5ffd56accbf6636ca
View Raw JSON Data
{
  "trx_id": "9e2782c5f620d73834f9a3c5ffd56accbf6636ca",
  "block": 102774666,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-20T15:22:57",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "spanish",
      "author": "frexus",
      "permlink": "el-adn-de-la-mente-descifrando-la-variabilidad-humana",
      "title": "El ADN de la Mente: Descifrando la Variabilidad Humana",
      "body": "@@ -1891,31 +1891,8 @@\n :** \n-El docente plantear%C3%A1 un\n  %22ca\n",
      "json_metadata": "{\"tags\":[\"psychology\",\"statistics\",\"steemiteducation\",\"writing\",\"science\"],\"image\":[\"https://cdn.steemitimages.com/DQmNViyNsFN7XGncXt38XUnNtKoRyn7zb3kFym5K3Ubq4Aj/o2o.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/01/20 15:21:48
parent author
parent permlinkspanish
authorfrexus
permlinkel-adn-de-la-mente-descifrando-la-variabilidad-humana
titleEl ADN de la Mente: Descifrando la Variabilidad Humana
body@@ -1015,22 +1015,11 @@ * El - grupo elegir%C3%A1 +ige un
json metadata{"tags":["psychology","statistics","steemiteducation","writing","science"],"image":["https://cdn.steemitimages.com/DQmNViyNsFN7XGncXt38XUnNtKoRyn7zb3kFym5K3Ubq4Aj/o2o.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102774643/Trx 4b39be50e437c49da79de2adb2776cfd24786c3e
View Raw JSON Data
{
  "trx_id": "4b39be50e437c49da79de2adb2776cfd24786c3e",
  "block": 102774643,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-20T15:21:48",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "spanish",
      "author": "frexus",
      "permlink": "el-adn-de-la-mente-descifrando-la-variabilidad-humana",
      "title": "El ADN de la Mente: Descifrando la Variabilidad Humana",
      "body": "@@ -1015,22 +1015,11 @@\n * El\n- grupo elegir%C3%A1\n+ige\n  un \n",
      "json_metadata": "{\"tags\":[\"psychology\",\"statistics\",\"steemiteducation\",\"writing\",\"science\"],\"image\":[\"https://cdn.steemitimages.com/DQmNViyNsFN7XGncXt38XUnNtKoRyn7zb3kFym5K3Ubq4Aj/o2o.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/01/19 22:48:57
parent author
parent permlinkspanish
authorfrexus
permlinkel-adn-de-la-mente-descifrando-la-variabilidad-humana
titleEl ADN de la Mente: Descifrando la Variabilidad Humana
body![o2o.png](https://cdn.steemitimages.com/DQmNViyNsFN7XGncXt38XUnNtKoRyn7zb3kFym5K3Ubq4Aj/o2o.png) ## 1. Objetivo General El estudiante logrará transformar constructos psicológicos subjetivos en datos cuantitativos, comprendiendo la importancia de la estadística descriptiva y el uso de baremos para la interpretación clínica y social. ## 2. Introducción Contextual ¿Alguna vez te has sentido "muy estresado" y has descubierto que tu mejor amigo está "peor" que tú? Lo que para uno es un caos, para otro es la norma. En psicología, las palabras como "mucho" o "poco" son peligrosas porque son subjetivas. Esta práctica te permitirá usar la estadística como un lente de precisión para dejar de adivinar y empezar a medir la realidad de un grupo. ## 4. Materiales o Recursos Necesarios - Hojas de papel pequeñas (post-its o recortes). - Calculadora básica o smartphone. - Pizarrón y marcadores. - Software opcional: Excel o Google Sheets. ## 5. Instrucciones Paso a Paso 1. **Definición de la Variable:** El grupo elegirá un constructo psicológico sencillo (ej. "Nivel de motivación actual" o "Nivel de ansiedad ante los exámenes"). 2. **Operacionalización:** Se establece una escala del 1 al 10, donde 1 es el mínimo del rasgo y 10 el máximo. 3. **Recolección Anónima:** Cada estudiante escribe su número en un papel, lo dobla y lo entrega. _La privacidad es clave para obtener datos honestos._ 4. **Tabulación:** Un voluntario anota todos los datos en el pizarrón. 5. **Cálculo de Estadísticos:** - Sumar todos los valores y dividir por el total de participantes (**Media**). - Identificar el valor más frecuente (**Moda**). - Restar el valor mínimo al máximo (**Rango**) para ver qué tan diverso es el grupo. 6. **Creación del Histograma:** Dibujar en el pizarrón un gráfico de barras que muestre cuántas personas eligieron cada número. 7. **Análisis de Baremo:** El docente planteará un "caso externo" (ej. "Un alumno nuevo llega con un 9") y el grupo deberá decidir si ese valor es alto o normal basándose en los datos del salón.
json metadata{"tags":["spanish","psychology","statistics","steemiteducation","writing","science"],"image":["https://cdn.steemitimages.com/DQmNViyNsFN7XGncXt38XUnNtKoRyn7zb3kFym5K3Ubq4Aj/o2o.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102754827/Trx b8277aa7f00c4daff775e6514b83ee7d80e46452
View Raw JSON Data
{
  "trx_id": "b8277aa7f00c4daff775e6514b83ee7d80e46452",
  "block": 102754827,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-19T22:48:57",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "spanish",
      "author": "frexus",
      "permlink": "el-adn-de-la-mente-descifrando-la-variabilidad-humana",
      "title": "El ADN de la Mente: Descifrando la Variabilidad Humana",
      "body": "![o2o.png](https://cdn.steemitimages.com/DQmNViyNsFN7XGncXt38XUnNtKoRyn7zb3kFym5K3Ubq4Aj/o2o.png)\n\n\n## 1. Objetivo General\n\nEl estudiante logrará transformar constructos psicológicos subjetivos en datos cuantitativos, comprendiendo la importancia de la estadística descriptiva y el uso de baremos para la interpretación clínica y social.\n\n## 2. Introducción Contextual\n\n¿Alguna vez te has sentido \"muy estresado\" y has descubierto que tu mejor amigo está \"peor\" que tú? Lo que para uno es un caos, para otro es la norma. En psicología, las palabras como \"mucho\" o \"poco\" son peligrosas porque son subjetivas. Esta práctica te permitirá usar la estadística como un lente de precisión para dejar de adivinar y empezar a medir la realidad de un grupo.\n\n## 4. Materiales o Recursos Necesarios\n\n- Hojas de papel pequeñas (post-its o recortes).\n- Calculadora básica o smartphone.\n- Pizarrón y marcadores.\n- Software opcional: Excel o Google Sheets.\n    \n\n## 5. Instrucciones Paso a Paso\n\n1. **Definición de la Variable:** El grupo elegirá un constructo psicológico sencillo (ej. \"Nivel de motivación actual\" o \"Nivel de ansiedad ante los exámenes\").\n2. **Operacionalización:** Se establece una escala del 1 al 10, donde 1 es el mínimo del rasgo y 10 el máximo.\n3. **Recolección Anónima:** Cada estudiante escribe su número en un papel, lo dobla y lo entrega. _La privacidad es clave para obtener datos honestos._\n4. **Tabulación:** Un voluntario anota todos los datos en el pizarrón.\n5. **Cálculo de Estadísticos:**\n    \n    - Sumar todos los valores y dividir por el total de participantes (**Media**).\n    - Identificar el valor más frecuente (**Moda**).\n    - Restar el valor mínimo al máximo (**Rango**) para ver qué tan diverso es el grupo.\n        \n\n6. **Creación del Histograma:** Dibujar en el pizarrón un gráfico de barras que muestre cuántas personas eligieron cada número.\n7. **Análisis de Baremo:** El docente planteará un \"caso externo\" (ej. \"Un alumno nuevo llega con un 9\") y el grupo deberá decidir si ese valor es alto o normal basándose en los datos del salón.",
      "json_metadata": "{\"tags\":[\"spanish\",\"psychology\",\"statistics\",\"steemiteducation\",\"writing\",\"science\"],\"image\":[\"https://cdn.steemitimages.com/DQmNViyNsFN7XGncXt38XUnNtKoRyn7zb3kFym5K3Ubq4Aj/o2o.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/01/19 07:17:06
parent author
parent permlinkcervantes
authorfrexus
permlinkrescatando-la-base-de-datos-financiera
titleRescatando la Base de Datos Financiera
body![o3o.png](https://cdn.steemitimages.com/DQmTLfijDMhetnaD2rZybrKzWsy1Mvn5KWyoru3p9mpW8pZ/o3o.png) ### Objetivo General El estudiante será capaz de diseñar y ejecutar una estrategia de recuperación de desastres (DRP) básica, comprendiendo el rol vital del **Protocolo WAL**, seleccionando niveles de protección de hardware (RAID) y ejecutando técnicamente una restauración completa tras un fallo catastrófico simulado. ### Contextualización Eres el nuevo DBA de la startup _NovaFintech_. Son las 4:00 PM y el sistema de nóminas está a punto de ejecutarse. Tienes una política de seguridad estricta. De repente, el servidor principal lanza una alerta crítica: **"Fallo en disco 0 - Corrupción de datos inminente"**. Segundos después, la base de datos desaparece. El CEO te mira esperando una solución. Tu misión no es solo recuperar los datos, sino demostrar que tu estrategia de **Bitácora (WAL)** y **Backups** ha funcionado, salvando el dinero de la empresa. ¿Estás listo para activar la Operación Fénix? ### Materiales y Recursos - Computadora con acceso a un SGBD (MySQL, MariaDB, PostgreSQL o SQL Server). _Se usarán comandos genéricos de SQL en este ejemplo._ - Herramienta de línea de comandos o interfaz gráfica (Workbench, pgAdmin, DBeaver). - Editor de texto (Notepad++, VS Code, Notion) para redactar el informe. - "Lápiz y papel" para diseñar la estrategia inicial. ### Instrucciones Paso a Paso #### FASE 1: Diseño de la Fortaleza (Estrategia) 1. **Define tu Nivel de Protección (RAID):** - En un documento de texto, escribe qué nivel de RAID (RAID 1, RAID 5 o RAID 10) elegirías para los servidores de _NovaFintech_. - _Justifica:_ ¿Por qué ese nivel? (Considera velocidad vs. redundancia). 2. **Define tu Política de Backups:** - Escribe tu estrategia: ¿Harás backups completos diarios? ¿Diferenciales? ¿Cada cuánto se respalda el Log de Transacciones (WAL)? - _Meta:_ Establece un **RPO** (Punto objetivo de recuperación) hipotético. Ejemplo: "No podemos perder más de 15 minutos de datos". #### FASE 2: La Calma antes de la Tormenta (Creación de Datos) 3. **Crea la Base de Datos:** - Ejecuta el siguiente script SQL para crear el entorno inicial: ``` CREATE DATABASE NovaFintech; USE NovaFintech; CREATE TABLE Cuentas (ID int, Cliente varchar(50), Saldo decimal(10,2)); INSERT INTO Cuentas VALUES (1, 'Empresa A', 50000.00), (2, 'Empresa B', 75000.00); ``` 4. **Verificación WAL:** - Entiende que esta inserción ya generó entradas en la **Bitácora (Transaction Log/WAL)** antes de escribirse en el disco. El sistema está consistente. #### FASE 3: El Primer Seguro (Backup Completo) 5. **Ejecuta el Backup Full:** - Realiza una copia de seguridad completa de la base de datos `NovaFintech`. - _Nombre del archivo:_ `Nova_Full_Backup_4PM.sql` - _Nota:_ Esto representa tu punto de restauración base. #### FASE 4: La Vida Continúa (Transacciones en el Log) 6. **Simula Actividad Reciente:** - Después del backup, la empresa sigue operando. Ejecuta estas transacciones críticas: ``` INSERT INTO Cuentas VALUES (3, 'Empleado Juan', 2500.00); UPDATE Cuentas SET Saldo = Saldo - 2500.00 WHERE ID = 1; -- Pago de nómina ``` 7. **Simula el Backup del Log (WAL):** - Imagina que tu sistema automático hace un backup del Log cada 10 minutos. Para simular esto manualmente, exporta _solo_ estas últimas transacciones o genera un segundo archivo SQL pequeño con estos cambios. - _Nombre del archivo:_ `Nova_Log_Backup_415PM.sql` #### FASE 5: El Desastre (Fallo Simulado) 8. **Destrucción de Datos:** - Ahora simularás el fallo del disco o un error humano grave (un `DROP` accidental). - Ejecuta: ``` DROP DATABASE NovaFintech; ``` 9. **Verificación del Pánico:** - Intenta hacer un `SELECT * FROM Cuentas`. El sistema debe dar error. **La base de datos ha desaparecido.** #### FASE 6: La Resurrección (Plan de Recuperación) 10. **Paso 1: Restaurar la Base (Full Restore):** - Utiliza tu archivo `Nova_Full_Backup_4PM.sql` para restaurar la estructura y los primeros datos. - Verifica: Si consultas ahora, verás a la Empresa A y B, pero **NO** verás el pago al Empleado Juan. (Datos inconsistentes/incompletos). 11. **Paso 2: Aplicar el WAL (Log Restore):** - Aquí entra la magia del WAL. Aplica (ejecuta) el archivo `Nova_Log_Backup_415PM.sql`. - _Explicación:_ Esto simula la operación **REDO (Rehacer)** del motor de base de datos, volviendo a aplicar las transacciones que estaban en la bitácora pero no en el backup completo. 12. **Verificación Final:** - Consulta la tabla `Cuentas`. ¿Aparece Juan? ¿El saldo de la Empresa A se redujo? Si es así, ¡la recuperación fue exitosa! ### Posible Problema y Solución Rápida - **Problema:** Al intentar restaurar, el sistema dice "Database creates error" o "Database already exists". - **Solución:** Asegúrate de que el script de respaldo incluya la línea `CREATE DATABASE IF NOT EXISTS NovaFintech;` o créala manualmente en blanco antes de importar los datos.
json metadata{"tags":["cervantes","tecnologia","database","tutorial","spanish","education","stem"],"image":["https://cdn.steemitimages.com/DQmTLfijDMhetnaD2rZybrKzWsy1Mvn5KWyoru3p9mpW8pZ/o3o.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102736231/Trx f40549bffa4038316554e490e117a868142a269a
View Raw JSON Data
{
  "trx_id": "f40549bffa4038316554e490e117a868142a269a",
  "block": 102736231,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-19T07:17:06",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "cervantes",
      "author": "frexus",
      "permlink": "rescatando-la-base-de-datos-financiera",
      "title": "Rescatando la Base de Datos Financiera",
      "body": "![o3o.png](https://cdn.steemitimages.com/DQmTLfijDMhetnaD2rZybrKzWsy1Mvn5KWyoru3p9mpW8pZ/o3o.png)\n\n\n### Objetivo General\n\nEl estudiante será capaz de diseñar y ejecutar una estrategia de recuperación de desastres (DRP) básica, comprendiendo el rol vital del **Protocolo WAL**, seleccionando niveles de protección de hardware (RAID) y ejecutando técnicamente una restauración completa tras un fallo catastrófico simulado.\n\n### Contextualización\n\nEres el nuevo DBA de la startup _NovaFintech_. Son las 4:00 PM y el sistema de nóminas está a punto de ejecutarse. Tienes una política de seguridad estricta. De repente, el servidor principal lanza una alerta crítica: **\"Fallo en disco 0 - Corrupción de datos inminente\"**. Segundos después, la base de datos desaparece.\n\nEl CEO te mira esperando una solución. Tu misión no es solo recuperar los datos, sino demostrar que tu estrategia de **Bitácora (WAL)** y **Backups** ha funcionado, salvando el dinero de la empresa. ¿Estás listo para activar la Operación Fénix?\n    \n\n### Materiales y Recursos\n\n- Computadora con acceso a un SGBD (MySQL, MariaDB, PostgreSQL o SQL Server). _Se usarán comandos genéricos de SQL en este ejemplo._\n- Herramienta de línea de comandos o interfaz gráfica (Workbench, pgAdmin, DBeaver).\n- Editor de texto (Notepad++, VS Code, Notion) para redactar el informe.\n- \"Lápiz y papel\" para diseñar la estrategia inicial.\n    \n\n### Instrucciones Paso a Paso\n\n#### FASE 1: Diseño de la Fortaleza (Estrategia)\n\n1. **Define tu Nivel de Protección (RAID):**\n    \n    - En un documento de texto, escribe qué nivel de RAID (RAID 1, RAID 5 o RAID 10) elegirías para los servidores de _NovaFintech_.\n    - _Justifica:_ ¿Por qué ese nivel? (Considera velocidad vs. redundancia).\n        \n2. **Define tu Política de Backups:**\n    \n    - Escribe tu estrategia: ¿Harás backups completos diarios? ¿Diferenciales? ¿Cada cuánto se respalda el Log de Transacciones (WAL)?\n    - _Meta:_ Establece un **RPO** (Punto objetivo de recuperación) hipotético. Ejemplo: \"No podemos perder más de 15 minutos de datos\".\n        \n\n#### FASE 2: La Calma antes de la Tormenta (Creación de Datos)\n\n3. **Crea la Base de Datos:**\n    \n    - Ejecuta el siguiente script SQL para crear el entorno inicial:\n       \n    ```\n    CREATE DATABASE NovaFintech;\n    USE NovaFintech;\n    CREATE TABLE Cuentas (ID int, Cliente varchar(50), Saldo decimal(10,2));\n    INSERT INTO Cuentas VALUES (1, 'Empresa A', 50000.00), (2, 'Empresa B', 75000.00);\n    ```\n    \n4. **Verificación WAL:**\n    \n    - Entiende que esta inserción ya generó entradas en la **Bitácora (Transaction Log/WAL)** antes de escribirse en el disco. El sistema está consistente.\n        \n\n#### FASE 3: El Primer Seguro (Backup Completo)\n\n5. **Ejecuta el Backup Full:**\n    \n    - Realiza una copia de seguridad completa de la base de datos `NovaFintech`. \n    - _Nombre del archivo:_ `Nova_Full_Backup_4PM.sql`\n    - _Nota:_ Esto representa tu punto de restauración base.\n        \n\n#### FASE 4: La Vida Continúa (Transacciones en el Log)\n\n6. **Simula Actividad Reciente:**\n    \n    - Después del backup, la empresa sigue operando. Ejecuta estas transacciones críticas:\n       \n    ```\n    INSERT INTO Cuentas VALUES (3, 'Empleado Juan', 2500.00);\n    UPDATE Cuentas SET Saldo = Saldo - 2500.00 WHERE ID = 1; -- Pago de nómina\n    ```\n    \n7. **Simula el Backup del Log (WAL):**\n    \n    - Imagina que tu sistema automático hace un backup del Log cada 10 minutos. Para simular esto manualmente, exporta _solo_ estas últimas transacciones o genera un segundo archivo SQL pequeño con estos cambios. \n    - _Nombre del archivo:_ `Nova_Log_Backup_415PM.sql`\n        \n\n#### FASE 5: El Desastre (Fallo Simulado) \n\n8. **Destrucción de Datos:**\n    \n    - Ahora simularás el fallo del disco o un error humano grave (un `DROP` accidental).\n    - Ejecuta:\n        \n    ```\n    DROP DATABASE NovaFintech;\n    ```\n    \n9. **Verificación del Pánico:**\n    \n    - Intenta hacer un `SELECT * FROM Cuentas`. El sistema debe dar error. **La base de datos ha desaparecido.**\n        \n\n#### FASE 6: La Resurrección (Plan de Recuperación) \n\n10. **Paso 1: Restaurar la Base (Full Restore):**\n    \n    - Utiliza tu archivo `Nova_Full_Backup_4PM.sql` para restaurar la estructura y los primeros datos.\n    - Verifica: Si consultas ahora, verás a la Empresa A y B, pero **NO** verás el pago al Empleado Juan. (Datos inconsistentes/incompletos).\n        \n11. **Paso 2: Aplicar el WAL (Log Restore):**\n    \n    - Aquí entra la magia del WAL. Aplica (ejecuta) el archivo `Nova_Log_Backup_415PM.sql`.\n    - _Explicación:_ Esto simula la operación **REDO (Rehacer)** del motor de base de datos, volviendo a aplicar las transacciones que estaban en la bitácora pero no en el backup completo.\n        \n12. **Verificación Final:**\n    \n    - Consulta la tabla `Cuentas`. ¿Aparece Juan? ¿El saldo de la Empresa A se redujo? Si es así, ¡la recuperación fue exitosa!\n        \n### Posible Problema y Solución Rápida\n\n- **Problema:** Al intentar restaurar, el sistema dice \"Database creates error\" o \"Database already exists\".\n- **Solución:** Asegúrate de que el script de respaldo incluya la línea `CREATE DATABASE IF NOT EXISTS NovaFintech;` o créala manualmente en blanco antes de importar los datos.",
      "json_metadata": "{\"tags\":[\"cervantes\",\"tecnologia\",\"database\",\"tutorial\",\"spanish\",\"education\",\"stem\"],\"image\":[\"https://cdn.steemitimages.com/DQmTLfijDMhetnaD2rZybrKzWsy1Mvn5KWyoru3p9mpW8pZ/o3o.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
frexuspublished a new post: mi-primera-pwa
2026/01/16 04:33:57
parent author
parent permlinkpwa
authorfrexus
permlinkmi-primera-pwa
titleMi Primera PWA
body![_o1_.png](https://cdn.steemitimages.com/DQmfBUxdaRjYDGN4YgRVK3UdZuwie3UcdueqL74U6adnQ9L/_o1_.png) ### Objetivo de aprendizaje Al finalizar esta práctica, el estudiante será capaz de diseñar e implementar una Aplicación Web Progresiva (PWA) funcional, integrando archivos de manifiesto y Service Workers para habilitar capacidades de instalación y funcionamiento en modo offline. Asimismo, el alumno desarrollará la competencia para optimizar la entrega de recursos web, garantizando una experiencia de usuario fluida, segura y resiliente ante fallos de conectividad, aplicando los estándares modernos de desarrollo web móvil. ### Requisitos previos: * Conocimientos básicos de HTML, CSS y JavaScript. * Un editor de código (como VS Code). * Un servidor local (puedes usar la extensión "Live Server" en VS Code) o xamp. ¡Qué excelente iniciativa! Crear tu primera Aplicación Web Progresiva (PWA) es un hito emocionante en el desarrollo web moderno, ya que permite que tus sitios web se sientan y funcionen como aplicaciones nativas. A continuación, presento una guía práctica paso a paso para que construyas tu primera PWA desde cero. 🚀 Guía Práctica: Mi Primera PWA (Paso a Paso) Requisitos previos: Conocimientos básicos de HTML, CSS y JavaScript. Un editor de código (como VS Code). Un servidor local (puedes usar la extensión "Live Server" en VS Code). ### Paso 1: **Estructura básica del proyecto** * Crea una carpeta para tu proyecto y dentro genera tres archivos esenciales: * index.html: La interfaz. * style.css: El diseño. * app.js: La lógica de registro del Service Worker. * sw.js: El archivo del Service Worker (el corazón de la PWA). ### Paso 2: Crear el Manifiesto de la Aplicación (manifest.json) El manifiesto es un archivo JSON que le dice al navegador cómo debe comportarse tu aplicación al ser instalada (nombre, iconos, colores). ### Paso 3: Registrar el Service Worker en app.js El Service Worker es un script que corre en segundo plano. Primero debemos verificar si el navegador lo soporta y registrarlo. ### Paso 4: Programar el Service Worker (sw.js) para modo Offline Para que tu PWA funcione sin internet, el Service Worker debe "cachear" los archivos. ### Paso 5: Probar y Validar * Abre tu proyecto con un servidor local (HTTPS es obligatorio para PWA en producción, pero localhost está permitido para pruebas). * Abre las DevTools (F12) -> Pestaña Application. * Verifica en "Manifest" que tus datos aparezcan y en "Service Workers" que esté activo. * Prueba el modo Offline: En la pestaña "Network" selecciona "Offline" y recarga. ¡Tu app debería seguir funcionando!
json metadata{"tags":["pwa","serviceworker","progressivewebapps","spanish","technology","steemexclusive"],"image":["https://cdn.steemitimages.com/DQmfBUxdaRjYDGN4YgRVK3UdZuwie3UcdueqL74U6adnQ9L/_o1_.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102647001/Trx 85069df8c9f33ce24aa43c8a7d1d5e787e202dc5
View Raw JSON Data
{
  "trx_id": "85069df8c9f33ce24aa43c8a7d1d5e787e202dc5",
  "block": 102647001,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-16T04:33:57",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "pwa",
      "author": "frexus",
      "permlink": "mi-primera-pwa",
      "title": "Mi Primera PWA",
      "body": "![_o1_.png](https://cdn.steemitimages.com/DQmfBUxdaRjYDGN4YgRVK3UdZuwie3UcdueqL74U6adnQ9L/_o1_.png)\n\n\n### Objetivo de aprendizaje\n\nAl finalizar esta práctica, el estudiante será capaz de diseñar e implementar una Aplicación Web Progresiva (PWA) funcional, integrando archivos de manifiesto y Service Workers para habilitar capacidades de instalación y funcionamiento en modo offline. Asimismo, el alumno desarrollará la competencia para optimizar la entrega de recursos web, garantizando una experiencia de usuario fluida, segura y resiliente ante fallos de conectividad, aplicando los estándares modernos de desarrollo web móvil.\n\n### Requisitos previos:\n* Conocimientos básicos de HTML, CSS y JavaScript.\n* Un editor de código (como VS Code).\n* Un servidor local (puedes usar la extensión \"Live Server\" en VS Code) o xamp.\n\n¡Qué excelente iniciativa! Crear tu primera Aplicación Web Progresiva (PWA) es un hito emocionante en el desarrollo web moderno, ya que permite que tus sitios web se sientan y funcionen como aplicaciones nativas.\n\nA continuación, presento una guía práctica paso a paso para que construyas tu primera PWA desde cero.\n\n🚀 Guía Práctica: Mi Primera PWA (Paso a Paso)\nRequisitos previos:\nConocimientos básicos de HTML, CSS y JavaScript.\n\nUn editor de código (como VS Code).\n\nUn servidor local (puedes usar la extensión \"Live Server\" en VS Code).\n\n### Paso 1: **Estructura básica del proyecto**\n* Crea una carpeta para tu proyecto y dentro genera tres archivos esenciales:\n* index.html: La interfaz.\n* style.css: El diseño.\n* app.js: La lógica de registro del Service Worker.\n* sw.js: El archivo del Service Worker (el corazón de la PWA).\n\n### Paso 2: Crear el Manifiesto de la Aplicación (manifest.json)\nEl manifiesto es un archivo JSON que le dice al navegador cómo debe comportarse tu aplicación al ser instalada (nombre, iconos, colores).\n\n### Paso 3: Registrar el Service Worker en app.js\nEl Service Worker es un script que corre en segundo plano. Primero debemos verificar si el navegador lo soporta y registrarlo.\n\n### Paso 4: Programar el Service Worker (sw.js) para modo Offline\nPara que tu PWA funcione sin internet, el Service Worker debe \"cachear\" los archivos.\n\n### Paso 5: Probar y Validar\n* Abre tu proyecto con un servidor local (HTTPS es obligatorio para PWA en producción, pero localhost está permitido para pruebas).\n* Abre las DevTools (F12) -> Pestaña Application.\n* Verifica en \"Manifest\" que tus datos aparezcan y en \"Service Workers\" que esté activo.\n* Prueba el modo Offline: En la pestaña \"Network\" selecciona \"Offline\" y recarga. ¡Tu app debería seguir funcionando!",
      "json_metadata": "{\"tags\":[\"pwa\",\"serviceworker\",\"progressivewebapps\",\"spanish\",\"technology\",\"steemexclusive\"],\"image\":[\"https://cdn.steemitimages.com/DQmfBUxdaRjYDGN4YgRVK3UdZuwie3UcdueqL74U6adnQ9L/_o1_.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/01/15 20:58:36
parent author
parent permlinkprogramming
authorfrexus
permlinkel-guardian-del-silencio-creando-un-agente-con-conciencia-situacional
titleEl Guardián del Silencio: Creando un Agente con Conciencia Situacional
body![_o4_.png](https://cdn.steemitimages.com/DQmXBk7KFSUu3VxV8cbXsJsb93RMAiRi9kR3A2t3SEQQaV4/_o4_.png) ### Objetivo General El estudiante diseñará e implementará un Agente Inteligente capaz de tomar decisiones autónomas mediante un Árbol de Comportamiento, reaccionando dinámicamente ante la presencia o inactividad del usuario en un entorno virtual. ## Introducción Contextual Imagina que entras a una biblioteca virtual y, al dejar de moverte para leer un libro, el guía del lugar apaga las luces innecesarias para ayudarte a concentrarte, o se acerca silenciosamente para ofrecerte ayuda. Eso no es magia; es IA con adaptabilidad contextual. En esta práctica, dejarás de ser un espectador para convertirte en el arquitecto de esa "chispa de vida" digital. ### Materiales o Recursos * Motor de desarrollo (Unity 3D con Behavior Designer o Unreal Engine con Behavior Trees). También puede realizarse en pseudocódigo o diagramas lógicos si no hay acceso a software. * Asset de personaje simple (un cubo o un modelo humanoide). * Scripting en C# o Blueprints. ### Instrucciones Paso a Paso 1. **Definición del Perfil del Agente** * **Define quién es tu agente**. ¿Es un guardia, un asistente o un animal? Escribe su "Personalidad de Código": * **Nombre**: (Ej: BioBot) * **Misión**: Cuidar la energía del entorno. * **Umbral de paciencia**: 10 segundos de inactividad del usuario. 2. **Diseño del Árbol de Comportamiento (Lógica Visual)** * **Dibuja o mapea la jerarquía de decisiones**. El árbol debe tener un nodo raíz que se divida en dos ramas principales: * **Rama de Actividad**: Si el usuario se mueve -> El agente saluda o patrulla. * **Rama de Inactividad**: Si el usuario está quieto -> El agente inicia una secuencia de "Ahorro de energía". 3. **Creación del Sensor de Inactividad (El Script)** * **Escribe un script que actúe como el "reloj biológico" del agente**. Necesitas una variable que almacene el tiempo transcurrido desde el último movimiento del usuario. * **Lógica**: Si posicionUsuario no ha cambiado en T tiempo, activa la señal IsUserIdle = true. 4. **Implementación de la Reacción en el Entorno** * **Configura qué sucede cuando el agente detecta la inactividad**. No solo debe cambiar el agente, sino el entorno: * **Acción del Agente**: Cambiar animación a "Meditar" o "Dormir". * **Acción del Entorno**: Atenuar las luces globales o cambiar la música a una ambiental más suave. 5. **Pruebas y Ajuste de Umbrales** Ejecuta la simulación. Observa si el tiempo de reacción se siente natural. Si el agente reacciona demasiado rápido, se sentirá nervioso; si tarda demasiado, parecerá desconectado.
json metadata{"tags":["programming","technology","steemexclusive","education","spanish","artificialintelligence","virtualreality","gamedev"],"image":["https://cdn.steemitimages.com/DQmXBk7KFSUu3VxV8cbXsJsb93RMAiRi9kR3A2t3SEQQaV4/_o4_.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102637910/Trx 15c33c556dc32e426f0505afed06c1a23843e53f
View Raw JSON Data
{
  "trx_id": "15c33c556dc32e426f0505afed06c1a23843e53f",
  "block": 102637910,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-15T20:58:36",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "programming",
      "author": "frexus",
      "permlink": "el-guardian-del-silencio-creando-un-agente-con-conciencia-situacional",
      "title": "El Guardián del Silencio: Creando un Agente con Conciencia Situacional",
      "body": "![_o4_.png](https://cdn.steemitimages.com/DQmXBk7KFSUu3VxV8cbXsJsb93RMAiRi9kR3A2t3SEQQaV4/_o4_.png)\n\n\n### Objetivo General\nEl estudiante diseñará e implementará un Agente Inteligente capaz de tomar decisiones autónomas mediante un Árbol de Comportamiento, reaccionando dinámicamente ante la presencia o inactividad del usuario en un entorno virtual.\n\n## Introducción Contextual\nImagina que entras a una biblioteca virtual y, al dejar de moverte para leer un libro, el guía del lugar apaga las luces innecesarias para ayudarte a concentrarte, o se acerca silenciosamente para ofrecerte ayuda. Eso no es magia; es IA con adaptabilidad contextual. En esta práctica, dejarás de ser un espectador para convertirte en el arquitecto de esa \"chispa de vida\" digital.\n\n### Materiales o Recursos\n* Motor de desarrollo (Unity 3D con Behavior Designer o Unreal Engine con Behavior Trees). También puede realizarse en pseudocódigo o diagramas lógicos si no hay acceso a software.\n* Asset de personaje simple (un cubo o un modelo humanoide).\n* Scripting en C# o Blueprints.\n\n### Instrucciones Paso a Paso\n1. **Definición del Perfil del Agente**\n* **Define quién es tu agente**. ¿Es un guardia, un asistente o un animal? Escribe su \"Personalidad de Código\":\n* **Nombre**: (Ej: BioBot)\n* **Misión**: Cuidar la energía del entorno.\n* **Umbral de paciencia**: 10 segundos de inactividad del usuario.\n\n2. **Diseño del Árbol de Comportamiento (Lógica Visual)**\n* **Dibuja o mapea la jerarquía de decisiones**. El árbol debe tener un nodo raíz que se divida en dos ramas principales:\n* **Rama de Actividad**: Si el usuario se mueve -> El agente saluda o patrulla.\n* **Rama de Inactividad**: Si el usuario está quieto -> El agente inicia una secuencia de \"Ahorro de energía\".\n\n3. **Creación del Sensor de Inactividad (El Script)**\n* **Escribe un script que actúe como el \"reloj biológico\" del agente**. Necesitas una variable que almacene el tiempo transcurrido desde el último movimiento del usuario.\n* **Lógica**: Si posicionUsuario no ha cambiado en T tiempo, activa la señal IsUserIdle = true.\n\n4. **Implementación de la Reacción en el Entorno**\n* **Configura qué sucede cuando el agente detecta la inactividad**. No solo debe cambiar el agente, sino el entorno:\n* **Acción del Agente**: Cambiar animación a \"Meditar\" o \"Dormir\".\n* **Acción del Entorno**: Atenuar las luces globales o cambiar la música a una ambiental más suave.\n\n5. **Pruebas y Ajuste de Umbrales**\nEjecuta la simulación. Observa si el tiempo de reacción se siente natural. Si el agente reacciona demasiado rápido, se sentirá nervioso; si tarda demasiado, parecerá desconectado.",
      "json_metadata": "{\"tags\":[\"programming\",\"technology\",\"steemexclusive\",\"education\",\"spanish\",\"artificialintelligence\",\"virtualreality\",\"gamedev\"],\"image\":[\"https://cdn.steemitimages.com/DQmXBk7KFSUu3VxV8cbXsJsb93RMAiRi9kR3A2t3SEQQaV4/_o4_.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
frexuspublished a new post: operacion-fenix-digital
2026/01/15 18:25:51
parent author
parent permlinkeducation
authorfrexus
permlinkoperacion-fenix-digital
titleOperación: "Fénix Digital"
body![_o1o_.png](https://cdn.steemitimages.com/DQme7cwAHqCX1Mq64uDPu3ThgLB4SZgE4DMANs3sETqgK6t/_o1o_.png) ### ¡Llamada de Emergencia! Tu Equipo de Consultores al Rescate Es lunes, 8:00 AM. El aire aún huele a café recién hecho, pero no hay tiempo para disfrutarlo. Tu teléfono suena, una y otra vez. Es **Don Arturo**, el dueño de *"La Gran Tradición"*, una icónica comercializadora de artesanías premium que ha sido el corazón de la comunidad por más de 40 años. Su voz tiembla, apenas audible a través de la línea. **"¡Se acabó! ¡El contrato... se canceló!"**, grita Don Arturo con desesperación. --- ### La Crisis Inminente: $500,000 MXN en Peligro El principal contrato de exportación física, el que sostenía a su negocio y a las 20 familias de artesanos, ha sido *cancelado de forma abrupta*. El plazo es brutal: **15 días**. Si no logran vender su enorme inventario de **$500,000 MXN** a través de internet, "La Gran Tradición" cerrará sus puertas para siempre. Don Arturo es un maestro artesano, un visionario en el mundo físico, pero el universo digital es para él un laberinto desconocido. No sabe qué es un "dominio", le aterra la idea de los fraudes con tarjetas y su sobrino, con buena intención pero poco conocimiento, le sugirió que "solo subiera fotos a Facebook y ya". **¡Aquí es donde entras tú!** Tu equipo y tú han sido contactados de emergencia. Son la última esperanza de "La Gran Tradición". --- ### Tu Misión: Digitalizar y Salvar un Legado Don Arturo les ha entregado las llaves de su negocio... y su futuro. Tienes el conocimiento y las herramientas, pero el tiempo corre en tu contra. Cada decisión cuenta. **Piensa rápido, actúa inteligentemente.** El destino de "La Gran Tradición" y el sustento de 20 familias dependen de tu **visión estratégica en E-commerce**. --- ### La Cuenta Regresiva Comienza... Tienes el poder de transformar un negocio tradicional en un *Fénix Digital*. ¿Estás listo para el desafío? **¡La Operación Fénix Digital ha comenzado!** El tiempo es oro. ---
json metadata{"tags":["education","ecommerce","storytelling","business","spanish"],"image":["https://cdn.steemitimages.com/DQme7cwAHqCX1Mq64uDPu3ThgLB4SZgE4DMANs3sETqgK6t/_o1o_.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102634860/Trx 12340711b64e285d5d09cf4c4efac5fafa1fd7ee
View Raw JSON Data
{
  "trx_id": "12340711b64e285d5d09cf4c4efac5fafa1fd7ee",
  "block": 102634860,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-15T18:25:51",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "education",
      "author": "frexus",
      "permlink": "operacion-fenix-digital",
      "title": "Operación: \"Fénix Digital\"",
      "body": "![_o1o_.png](https://cdn.steemitimages.com/DQme7cwAHqCX1Mq64uDPu3ThgLB4SZgE4DMANs3sETqgK6t/_o1o_.png)\n\n\n### ¡Llamada de Emergencia! Tu Equipo de Consultores al Rescate\n\nEs lunes, 8:00 AM. El aire aún huele a café recién hecho, pero no hay tiempo para disfrutarlo. Tu teléfono suena, una y otra vez. Es **Don Arturo**, el dueño de *\"La Gran Tradición\"*, una icónica comercializadora de artesanías premium que ha sido el corazón de la comunidad por más de 40 años. Su voz tiembla, apenas audible a través de la línea.\n\n**\"¡Se acabó! ¡El contrato... se canceló!\"**, grita Don Arturo con desesperación.\n\n---\n\n###  La Crisis Inminente: $500,000 MXN en Peligro\n\nEl principal contrato de exportación física, el que sostenía a su negocio y a las 20 familias de artesanos, ha sido *cancelado de forma abrupta*. El plazo es brutal: **15 días**. Si no logran vender su enorme inventario de **$500,000 MXN** a través de internet, \"La Gran Tradición\" cerrará sus puertas para siempre.\n\nDon Arturo es un maestro artesano, un visionario en el mundo físico, pero el universo digital es para él un laberinto desconocido. No sabe qué es un \"dominio\", le aterra la idea de los fraudes con tarjetas y su sobrino, con buena intención pero poco conocimiento, le sugirió que \"solo subiera fotos a Facebook y ya\".\n\n**¡Aquí es donde entras tú!** Tu equipo y tú han sido contactados de emergencia. Son la última esperanza de \"La Gran Tradición\".\n\n---\n\n### Tu Misión: Digitalizar y Salvar un Legado\n\nDon Arturo les ha entregado las llaves de su negocio... y su futuro. Tienes el conocimiento y las herramientas, pero el tiempo corre en tu contra. Cada decisión cuenta.\n\n**Piensa rápido, actúa inteligentemente.** El destino de \"La Gran Tradición\" y el sustento de 20 familias dependen de tu **visión estratégica en E-commerce**.\n\n---\n\n### La Cuenta Regresiva Comienza...\n\nTienes el poder de transformar un negocio tradicional en un *Fénix Digital*. ¿Estás listo para el desafío?\n\n**¡La Operación Fénix Digital ha comenzado!** El tiempo es oro.\n\n---",
      "json_metadata": "{\"tags\":[\"education\",\"ecommerce\",\"storytelling\",\"business\",\"spanish\"],\"image\":[\"https://cdn.steemitimages.com/DQme7cwAHqCX1Mq64uDPu3ThgLB4SZgE4DMANs3sETqgK6t/_o1o_.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
armaiaxreplied to @frexus / t8uaj8
2026/01/14 05:42:42
parent authorfrexus
parent permlinkel-guardian-del-laberinto-adaptativo-un-reto-de-ia
authorarmaiax
permlinkt8uaj8
title
body1. Elige tu "Cerebro" A) ML-Agents (Unity). Porque está integrado directamente con el motor, es especializado para aprendizaje por refuerzo en entornos virtuales y permite entrenar al avatar interactuando con el entorno en tiempo real. 2. El Mapa de Datos El entorno debe enviar: Posición (x, y) del avatar y del objetivo (paquete). Distancias a obstáculos en varias direcciones (como un radar). Estado de los sensores (colisión inminente sí/no). Velocidad y dirección actual del avatar. 3. El Sistema de Premios Premio: +100 por recoger un paquete. Castigo: -50 por chocar. Inactividad: Restar -1 por segundo sin movimiento, y otorgar un pequeño premio (+10) por avanzar hacia el objetivo. Preguntas de Reflexión (Evaluación diagnóstica): Diferenciación conceptual: Los scripts con if-else son reglas fijas; la IA aprende y se adapta a situaciones nuevas. Percepción de entorno: Datos como coordenadas, distancias a obstáculos, y detección de colisiones, procesados como vectores de entrada para la red neuronal. Selección de herramientas: Criterios clave: compatibilidad con el motor, documentación, rendimiento (bajo costo computacional) y facilidad de integración. Proceso de aprendizaje: Un entorno para IA suele incluir mecanismos de simulación acelerada, generación aleatoria de escenarios y sistema de recompensas automático. Mantenimiento y pruebas: Verificar primero los datos de entrada (sensores), luego revisar la función de recompensa, y finalmente la física del entorno (colisiones). Impacto de la incertidumbre: Usar lógica difusa o redes neuronales con salidas probabilísticas, evaluando múltiples factores (ej. batería, distancia) de forma continua.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #102590889/Trx d5522bb695bd3ef5b479d71ebd360ae2bbaa6e80
View Raw JSON Data
{
  "trx_id": "d5522bb695bd3ef5b479d71ebd360ae2bbaa6e80",
  "block": 102590889,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-14T05:42:42",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "el-guardian-del-laberinto-adaptativo-un-reto-de-ia",
      "author": "armaiax",
      "permlink": "t8uaj8",
      "title": "",
      "body": "1. Elige tu \"Cerebro\" A) ML-Agents (Unity). Porque está integrado directamente con el motor, es especializado para aprendizaje por refuerzo en entornos virtuales y permite entrenar al avatar interactuando con el entorno en tiempo real.\n\n2. El Mapa de Datos El entorno debe enviar:\n\nPosición (x, y) del avatar y del objetivo (paquete).\n\nDistancias a obstáculos en varias direcciones (como un radar).\n\nEstado de los sensores (colisión inminente sí/no).\n\nVelocidad y dirección actual del avatar.\n\n3. El Sistema de Premios \n\nPremio: +100 por recoger un paquete.\n\nCastigo: -50 por chocar.\n\nInactividad: Restar -1 por segundo sin movimiento, y otorgar un pequeño premio (+10) por avanzar hacia el objetivo.\n\nPreguntas de Reflexión (Evaluación diagnóstica):\n\nDiferenciación conceptual: Los scripts con if-else son reglas fijas; la IA aprende y se adapta a situaciones nuevas.\n\nPercepción de entorno: Datos como coordenadas, distancias a obstáculos, y detección de colisiones, procesados como vectores de entrada para la red neuronal.\n\nSelección de herramientas: Criterios clave: compatibilidad con el motor, documentación, rendimiento (bajo costo computacional) y facilidad de integración.\n\nProceso de aprendizaje: Un entorno para IA suele incluir mecanismos de simulación acelerada, generación aleatoria de escenarios y sistema de recompensas automático.\n\nMantenimiento y pruebas: Verificar primero los datos de entrada (sensores), luego revisar la función de recompensa, y finalmente la física del entorno (colisiones).\n\nImpacto de la incertidumbre: Usar lógica difusa o redes neuronales con salidas probabilísticas, evaluando múltiples factores (ej. batería, distancia) de forma continua.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
frexuspublished a new post: operacion-rescate
2026/01/13 09:41:06
parent author
parent permlinkdatabase
authorfrexus
permlinkoperacion-rescate
titleOperación Rescate
body![practica.png](https://cdn.steemitimages.com/DQmPUQYQVCsTdTxEnxAUBcQvMvfmNRfZSdc9pLmKjpwGdJT/practica.png) ### Objetivo General El estudiante será capaz de implementar una estrategia básica de continuidad de negocio mediante la gestión de respaldos, automatización de tareas y restauración de datos en un entorno relacional, garantizando la integridad de la información ante fallos o ataques. --- ### Introducción Contextual Imagina que eres el único responsable de los datos de una clínica en plena madrugada. Un error humano o un ataque malicioso borra la tabla de pacientes. ¿Qué separa el éxito del fracaso? Tu capacidad técnica para prevenir y reaccionar. En esta práctica, dejarás de ser un usuario para convertirte en un administrador de sistemas, aprendiendo que en el mundo de los datos, "si algo no está respaldado, no existe". --- ### Datos de la Actividad * **Duración estimada:** 60 min (Laboratorio) + 90 min (Investigación). * **Dificultad:** Intermedia. --- ### Materiales y Recursos * Computadora con MySQL o MariaDB instalado. * Terminal de comandos (CMD, PowerShell o Bash). * Editor de texto (VS Code, Notepad++ o similar). * Acceso al repositorio de código de la práctica. --- ### Instrucciones Paso a Paso #### 1. Preparación del Entorno (Seed Data) Antes de proteger, necesitamos ¿qué proteger? Crea la base de datos clinica_frexus y sus tablas relacionales ejecutando el script SQL proporcionado (Médicos, Pacientes y Citas). Asegúrate de insertar los datos de prueba para tener registros reales. Descarga y ejecuta el script SQL inicial. Este creará las tablas de Médicos, Pacientes y Citas. > **[Descarga el Script SQL aquí (GitHub Gist)](https://gist.github.com/ajgutierr3z/7827537fda9f8c0cd9d8c30461358002)** #### 2. Fase de Prevención: El Escudo (Exportación) Crea un respaldo físico de tu base de datos. Este archivo .sql contiene todas las instrucciones necesarias para reconstruir tu clínica desde cero. * **Comando:** `mysqldump -u usuario -p clinica_frexus > respaldo_seguro.sql` * **¿Qué sucede?** Se genera un archivo de texto plano con toda la estructura y datos actuales. **Nota**: Sustituye "usuario" por tu nombre de usuario de MySQL. #### 3. Simulación de Crisis (El Error Humano) Para valorar el respaldo, debemos perder algo. Simula un error crítico eliminando la tabla de pacientes. * **Comando:** `DROP TABLE pacientes;` * **Reflexión:** ¿Qué sucede con las citas médicas? El sistema ha quedado huérfano; la integridad relacional se ha roto. #### 4. Fase de Reacción: El Rescate (Restauración) Es hora de actuar como Mateo. Utiliza tu archivo de respaldo para inyectar nuevamente la información al servidor. * **Comando:** `mysql -u usuario -p clinica_frexus < respaldo_seguro.sql` #### 5. El Centinela (Automatización) Un administrador no espera al desastre; lo previene. Crea el script en Bash (`backup.sh` o `.bat` en Windows ) proporcionado para que el sistema realice la tarea anterior de forma autónoma. Cambia las variables de ruta y contraseña según tu sistema. > **[Descarga el Script bash aquí (GitHub Gist)](https://gist.github.com/ajgutierr3z/b15c7110d94bdca27392dd5abdce9b65)** ### Recomendaciones * **Verifica antes de borrar**: Siempre confirma que tu archivo .sql tiene peso (KB) antes de ejecutar un DROP. * **Documenta en tiempo real**: Toma las capturas conforme avanzas, no intentes recrearlas al final. * **Lee la consola**: Los mensajes de error de MySQL te dicen exactamente qué falta (un punto y coma, una ruta mal escrita, etc.). * **Prueba el script**: Ejecuta tu script de automatización al menos dos veces para ver si genera archivos con nombres distintos. * **Sé reflexivo**: El valor de esta práctica no es el comando, sino entender la responsabilidad de cuidar la información. #### Problema Común y Solución Rápida * **Problema**: Al ejecutar el script de automatización, aparece el error: "Permission denied". Solución: Los scripts en Linux/Mac necesitan permisos de ejecución. Ejecuta en la terminal: chmod +x tu_script.sh y vuelve a intentarlo.
json metadata{"tags":["database","education","sql","programming","frexus","steemiteducation"],"image":["https://cdn.steemitimages.com/DQmPUQYQVCsTdTxEnxAUBcQvMvfmNRfZSdc9pLmKjpwGdJT/practica.png"],"links":["https://gist.github.com/ajgutierr3z/7827537fda9f8c0cd9d8c30461358002","https://gist.github.com/ajgutierr3z/b15c7110d94bdca27392dd5abdce9b65"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102566920/Trx 605921d99e4e9c7150394c3cba131ffc2298da55
View Raw JSON Data
{
  "trx_id": "605921d99e4e9c7150394c3cba131ffc2298da55",
  "block": 102566920,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T09:41:06",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "database",
      "author": "frexus",
      "permlink": "operacion-rescate",
      "title": "Operación Rescate",
      "body": "![practica.png](https://cdn.steemitimages.com/DQmPUQYQVCsTdTxEnxAUBcQvMvfmNRfZSdc9pLmKjpwGdJT/practica.png)\n\n\n### Objetivo General\nEl estudiante será capaz de implementar una estrategia básica de continuidad de negocio mediante la gestión de respaldos, automatización de tareas y restauración de datos en un entorno relacional, garantizando la integridad de la información ante fallos o ataques.\n\n---\n\n###  Introducción Contextual\nImagina que eres el único responsable de los datos de una clínica en plena madrugada. Un error humano o un ataque malicioso borra la tabla de pacientes. ¿Qué separa el éxito del fracaso? Tu capacidad técnica para prevenir y reaccionar. En esta práctica, dejarás de ser un usuario para convertirte en un administrador de sistemas, aprendiendo que en el mundo de los datos, \"si algo no está respaldado, no existe\".\n\n---\n\n###  Datos de la Actividad\n* **Duración estimada:** 60 min (Laboratorio) + 90 min (Investigación).\n* **Dificultad:** Intermedia.\n\n\n---\n### Materiales y Recursos\n\n* Computadora con MySQL o MariaDB instalado.\n* Terminal de comandos (CMD, PowerShell o Bash).\n* Editor de texto (VS Code, Notepad++ o similar).\n* Acceso al repositorio de código de la práctica.\n---\n###  Instrucciones Paso a Paso\n\n#### 1. Preparación del Entorno (Seed Data)\nAntes de proteger, necesitamos ¿qué proteger? Crea la base de datos clinica_frexus y sus tablas relacionales ejecutando el script SQL proporcionado (Médicos, Pacientes y Citas). Asegúrate de insertar los datos de prueba para tener registros reales. Descarga y ejecuta el script SQL inicial. Este creará las tablas de Médicos, Pacientes y Citas.\n\n>  **[Descarga el Script SQL aquí (GitHub Gist)](https://gist.github.com/ajgutierr3z/7827537fda9f8c0cd9d8c30461358002)**\n\n#### 2. Fase de Prevención: El Escudo (Exportación)\nCrea un respaldo físico de tu base de datos. Este archivo .sql contiene todas las instrucciones necesarias para reconstruir tu clínica desde cero.\n* **Comando:** `mysqldump -u usuario -p clinica_frexus > respaldo_seguro.sql`\n* **¿Qué sucede?** Se genera un archivo de texto plano con toda la estructura y datos actuales.\n**Nota**: Sustituye \"usuario\" por tu nombre de usuario de MySQL.\n\n#### 3. Simulación de Crisis (El Error Humano)\nPara valorar el respaldo, debemos perder algo. Simula un error crítico eliminando la tabla de pacientes.\n* **Comando:** `DROP TABLE pacientes;`\n* **Reflexión:** ¿Qué sucede con las citas médicas? El sistema ha quedado huérfano; la integridad relacional se ha roto.\n\n#### 4. Fase de Reacción: El Rescate (Restauración)\nEs hora de actuar como Mateo. Utiliza tu archivo de respaldo para inyectar nuevamente la información al servidor.\n* **Comando:** `mysql -u usuario -p clinica_frexus < respaldo_seguro.sql`\n\n#### 5. El Centinela (Automatización)\nUn administrador no espera al desastre; lo previene. Crea el script en Bash (`backup.sh` o `.bat` en Windows ) proporcionado para que el sistema realice la tarea anterior de forma autónoma. Cambia las variables de ruta y contraseña según tu sistema. \n\n>  **[Descarga el Script bash aquí (GitHub Gist)](https://gist.github.com/ajgutierr3z/b15c7110d94bdca27392dd5abdce9b65)**\n\n\n### Recomendaciones\n* **Verifica antes de borrar**: Siempre confirma que tu archivo .sql tiene peso (KB) antes de ejecutar un DROP.\n* **Documenta en tiempo real**: Toma las capturas conforme avanzas, no intentes recrearlas al final.\n* **Lee la consola**: Los mensajes de error de MySQL te dicen exactamente qué falta (un punto y coma, una ruta mal escrita, etc.).\n* **Prueba el script**: Ejecuta tu script de automatización al menos dos veces para ver si genera archivos con nombres distintos.\n* **Sé reflexivo**: El valor de esta práctica no es el comando, sino entender la responsabilidad de cuidar la información.\n\n#### Problema Común y Solución Rápida\n* **Problema**: Al ejecutar el script de automatización, aparece el error: \"Permission denied\". Solución: Los scripts en Linux/Mac necesitan permisos de ejecución. Ejecuta en la terminal: chmod +x tu_script.sh y vuelve a intentarlo.",
      "json_metadata": "{\"tags\":[\"database\",\"education\",\"sql\",\"programming\",\"frexus\",\"steemiteducation\"],\"image\":[\"https://cdn.steemitimages.com/DQmPUQYQVCsTdTxEnxAUBcQvMvfmNRfZSdc9pLmKjpwGdJT/practica.png\"],\"links\":[\"https://gist.github.com/ajgutierr3z/7827537fda9f8c0cd9d8c30461358002\",\"https://gist.github.com/ajgutierr3z/b15c7110d94bdca27392dd5abdce9b65\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/01/13 08:43:48
voterfumegi
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565775/Trx 2137c2b60439335906c417b5228ea38e5b289d08
View Raw JSON Data
{
  "trx_id": "2137c2b60439335906c417b5228ea38e5b289d08",
  "block": 102565775,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:48",
  "op": [
    "vote",
    {
      "voter": "fumegi",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:45
voterrgau1985
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565774/Trx 035dedc2a2a6fdd92f9c549cbcdf171ed498ffbb
View Raw JSON Data
{
  "trx_id": "035dedc2a2a6fdd92f9c549cbcdf171ed498ffbb",
  "block": 102565774,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:45",
  "op": [
    "vote",
    {
      "voter": "rgau1985",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:39
votergrand.strategy
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565772/Trx 86c68f43f1bfcc4c11aef86a1ac1cdb1ec74e488
View Raw JSON Data
{
  "trx_id": "86c68f43f1bfcc4c11aef86a1ac1cdb1ec74e488",
  "block": 102565772,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:39",
  "op": [
    "vote",
    {
      "voter": "grand.strategy",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:36
voternanobot
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565771/Trx 532ecc2ec228b616a81d2994bfe467c629ccba78
View Raw JSON Data
{
  "trx_id": "532ecc2ec228b616a81d2994bfe467c629ccba78",
  "block": 102565771,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:36",
  "op": [
    "vote",
    {
      "voter": "nanobot",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:27
votercheaperwhale
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565768/Trx 3dc3fa48f27395cfd78ca8aec760933352306eb4
View Raw JSON Data
{
  "trx_id": "3dc3fa48f27395cfd78ca8aec760933352306eb4",
  "block": 102565768,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:27",
  "op": [
    "vote",
    {
      "voter": "cheaperwhale",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:24
voterafro92
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight10000 (100.00%)
Transaction InfoBlock #102565767/Trx f1807e96f14f6bffb08e8eedd6264ff2760997d0
View Raw JSON Data
{
  "trx_id": "f1807e96f14f6bffb08e8eedd6264ff2760997d0",
  "block": 102565767,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:24",
  "op": [
    "vote",
    {
      "voter": "afro92",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 10000
    }
  ]
}
2026/01/13 08:43:24
voterelritze
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565767/Trx 785aba64ede2199d57d8f35196f10373915759c7
View Raw JSON Data
{
  "trx_id": "785aba64ede2199d57d8f35196f10373915759c7",
  "block": 102565767,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:24",
  "op": [
    "vote",
    {
      "voter": "elritze",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:18
votero2rs2015
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565765/Trx bb8380310b7b3ce38f19d0aadbd2e55c1a94338b
View Raw JSON Data
{
  "trx_id": "bb8380310b7b3ce38f19d0aadbd2e55c1a94338b",
  "block": 102565765,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:18",
  "op": [
    "vote",
    {
      "voter": "o2rs2015",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:12
voterfilthywhale
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565763/Trx 1e3adc6fae88a7e387dca644603ce103d8e48841
View Raw JSON Data
{
  "trx_id": "1e3adc6fae88a7e387dca644603ce103d8e48841",
  "block": 102565763,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:12",
  "op": [
    "vote",
    {
      "voter": "filthywhale",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:09
voteryarsb21
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565762/Trx 62ffdeae847ae229ca5f955bac9cf62ad7aae066
View Raw JSON Data
{
  "trx_id": "62ffdeae847ae229ca5f955bac9cf62ad7aae066",
  "block": 102565762,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:09",
  "op": [
    "vote",
    {
      "voter": "yarsb21",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:03
votermutu
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565760/Trx b961283b2c29290a55ecebc59a16f64f1e73123d
View Raw JSON Data
{
  "trx_id": "b961283b2c29290a55ecebc59a16f64f1e73123d",
  "block": 102565760,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:03",
  "op": [
    "vote",
    {
      "voter": "mutu",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:43:00
votercheapwhale
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565759/Trx 110f62f19f74fe87933082076622e5dbd908c0ab
View Raw JSON Data
{
  "trx_id": "110f62f19f74fe87933082076622e5dbd908c0ab",
  "block": 102565759,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:43:00",
  "op": [
    "vote",
    {
      "voter": "cheapwhale",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:54
votermicrobot
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565757/Trx d2b0e921530fc553bdd56b0ae0d4f86549f2cc45
View Raw JSON Data
{
  "trx_id": "d2b0e921530fc553bdd56b0ae0d4f86549f2cc45",
  "block": 102565757,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:54",
  "op": [
    "vote",
    {
      "voter": "microbot",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:51
voterminibot
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565756/Trx 6d6559e1a2317909ea0f20e4d2f97658e475ad22
View Raw JSON Data
{
  "trx_id": "6d6559e1a2317909ea0f20e4d2f97658e475ad22",
  "block": 102565756,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:51",
  "op": [
    "vote",
    {
      "voter": "minibot",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:39
voterdirtywhale
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565752/Trx 77b8c80bea40f4d745ccad0012cb4a200bdb44f4
View Raw JSON Data
{
  "trx_id": "77b8c80bea40f4d745ccad0012cb4a200bdb44f4",
  "block": 102565752,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:39",
  "op": [
    "vote",
    {
      "voter": "dirtywhale",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:33
votervairon
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565750/Trx 27fe006dd115dfe037a4c2bec2b58c7b1b4d19f4
View Raw JSON Data
{
  "trx_id": "27fe006dd115dfe037a4c2bec2b58c7b1b4d19f4",
  "block": 102565750,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:33",
  "op": [
    "vote",
    {
      "voter": "vairon",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:30
voterdrowningwhale
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565749/Trx d285176b23ce6ba0e4e4eff3316a78d3b4d8bf99
View Raw JSON Data
{
  "trx_id": "d285176b23ce6ba0e4e4eff3316a78d3b4d8bf99",
  "block": 102565749,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:30",
  "op": [
    "vote",
    {
      "voter": "drowningwhale",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:27
voterrdstm1985
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565748/Trx b276b8c793dfdafa6b961f479c72f73ff8363cb0
View Raw JSON Data
{
  "trx_id": "b276b8c793dfdafa6b961f479c72f73ff8363cb0",
  "block": 102565748,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:27",
  "op": [
    "vote",
    {
      "voter": "rdstm1985",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:21
voterpornwhale
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565746/Trx c0a2ca2963b0401cad373f011c548227dfd84316
View Raw JSON Data
{
  "trx_id": "c0a2ca2963b0401cad373f011c548227dfd84316",
  "block": 102565746,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:21",
  "op": [
    "vote",
    {
      "voter": "pornwhale",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:18
votermillibot
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565745/Trx bb603b87207e8330a4a7d1d92deb8eec28eac52e
View Raw JSON Data
{
  "trx_id": "bb603b87207e8330a4a7d1d92deb8eec28eac52e",
  "block": 102565745,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:18",
  "op": [
    "vote",
    {
      "voter": "millibot",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:12
voterwetten
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565743/Trx 222589969606f4cbb5c10a3f8bf750498a38c8e6
View Raw JSON Data
{
  "trx_id": "222589969606f4cbb5c10a3f8bf750498a38c8e6",
  "block": 102565743,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:12",
  "op": [
    "vote",
    {
      "voter": "wetten",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:09
voterphoxinus
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565742/Trx 57951deb4d94faa9d97c453ad2436b1da502fe4c
View Raw JSON Data
{
  "trx_id": "57951deb4d94faa9d97c453ad2436b1da502fe4c",
  "block": 102565742,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:09",
  "op": [
    "vote",
    {
      "voter": "phoxinus",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:42:03
votercheapestwhale
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565740/Trx e7d2e5c5df1bd3b3e5560406029ff5e7c750fd0d
View Raw JSON Data
{
  "trx_id": "e7d2e5c5df1bd3b3e5560406029ff5e7c750fd0d",
  "block": 102565740,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:42:03",
  "op": [
    "vote",
    {
      "voter": "cheapestwhale",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:41:57
voterisnochys
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
weight5000 (50.00%)
Transaction InfoBlock #102565738/Trx 983694e1293c7e1ac3e63e9e41e12d2874d5554f
View Raw JSON Data
{
  "trx_id": "983694e1293c7e1ac3e63e9e41e12d2874d5554f",
  "block": 102565738,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:41:57",
  "op": [
    "vote",
    {
      "voter": "isnochys",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "weight": 5000
    }
  ]
}
2026/01/13 08:40:51
parent author
parent permlinkdatabase
authorfrexus
permlinkel-latido-digital-cuando-los-datos-se-niegan-a-morir
titleEl Latido Digital: Cuando los Datos se Niegan a Morir
body![caseuses.png](https://cdn.steemitimages.com/DQmUVg3eY6BZQd7CfnVc12VSbv1CG2ZuPBrjQN2AheX38p4/caseuses.png) En el mundo de la tecnología, solemos creer que los sistemas son estructuras frías de silicio y electricidad. Pero para **Mateo**, un administrador de sistemas en una startup de salud en pleno crecimiento, las bases de datos no eran tablas y registros; eran el **pulso vital** de miles de pacientes. Eran historias clínicas, recetas urgentes y citas que no podían esperar. ### El Silencio de la Medianoche Eran las 2:00 AM de un martes. El teléfono de Mateo vibró con una insistencia violenta. Al abrir su laptop, el frío le recorrió la espalda: el servidor principal de la base de datos relacional no respondía. Un ataque de *ransomware* había logrado penetrar la primera capa de seguridad y estaba cifrando la información en tiempo real. Mateo entró en la consola de administración. El pánico intentó dominarlo, pero su formación se activó como un reflejo. Lo primero que vio fue el **monitor de rendimiento**: el CPU estaba al 100%, consumido por el proceso de cifrado malicioso. El sistema estaba muriendo. ### La Batalla por la Continuidad El conflicto era claro: si pagaban el rescate, alimentaban al criminal; si no lo hacían y no lograban recuperar los datos, la startup quebraría y, lo más grave, los pacientes quedarían a la deriva. Mateo ejecutó el protocolo de **Administración de Seguridad**. Bloqueó todos los accesos externos y aisló la base de datos. Pero el daño estaba hecho: el 40% de las tablas estaban corruptas. Fue entonces cuando la **Automatización de Tareas** que había configurado meses atrás —y que muchos en la oficina consideraban una pérdida de tiempo— se convirtió en su única esperanza. > Cada madrugada, un *script* automatizado realizaba una exportación de datos a un servidor aislado y generaba copias de seguridad (**backups**) incrementales. ### El Camino de Regreso Con manos temblorosas, Mateo inició el proceso de **restauración**. Primero, recuperó el último backup completo del domingo, y luego aplicó los incrementales del lunes. Mientras la barra de progreso avanzaba, Mateo monitoreaba el rendimiento para asegurar que el hardware no colapsara bajo la presión de la reconstrucción de índices. A las 5:45 AM, el sistema volvió a la vida. Las pruebas de integridad confirmaron que no se había perdido ni un solo gramo de información. Los datos habían regresado del abismo. ### Más que Código Al amanecer, mientras el equipo llegaba a la oficina sin sospechar que su mundo digital casi se extingue, Mateo comprendió una verdad fundamental: **Administrar una base de datos no es una tarea técnica, es un acto de responsabilidad ética.** La tecnología es frágil, pero la prevención es invencible. La seguridad no es un muro, es un proceso constante de monitoreo y humildad frente al error.
json metadata{"tags":["database","technology","storytelling","education","steemexclusive"],"image":["https://cdn.steemitimages.com/DQmUVg3eY6BZQd7CfnVc12VSbv1CG2ZuPBrjQN2AheX38p4/caseuses.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102565716/Trx b11500cccc2b5ec2c181b1c6f4aa00de1e4b198c
View Raw JSON Data
{
  "trx_id": "b11500cccc2b5ec2c181b1c6f4aa00de1e4b198c",
  "block": 102565716,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T08:40:51",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "database",
      "author": "frexus",
      "permlink": "el-latido-digital-cuando-los-datos-se-niegan-a-morir",
      "title": "El Latido Digital: Cuando los Datos se Niegan a Morir",
      "body": "![caseuses.png](https://cdn.steemitimages.com/DQmUVg3eY6BZQd7CfnVc12VSbv1CG2ZuPBrjQN2AheX38p4/caseuses.png)\n\n\nEn el mundo de la tecnología, solemos creer que los sistemas son estructuras frías de silicio y electricidad. Pero para **Mateo**, un administrador de sistemas en una startup de salud en pleno crecimiento, las bases de datos no eran tablas y registros; eran el **pulso vital** de miles de pacientes. Eran historias clínicas, recetas urgentes y citas que no podían esperar.\n\n### El Silencio de la Medianoche\nEran las 2:00 AM de un martes. El teléfono de Mateo vibró con una insistencia violenta. Al abrir su laptop, el frío le recorrió la espalda: el servidor principal de la base de datos relacional no respondía. Un ataque de *ransomware* había logrado penetrar la primera capa de seguridad y estaba cifrando la información en tiempo real.\n\nMateo entró en la consola de administración. El pánico intentó dominarlo, pero su formación se activó como un reflejo. Lo primero que vio fue el **monitor de rendimiento**: el CPU estaba al 100%, consumido por el proceso de cifrado malicioso. El sistema estaba muriendo.\n\n\n\n### La Batalla por la Continuidad\nEl conflicto era claro: si pagaban el rescate, alimentaban al criminal; si no lo hacían y no lograban recuperar los datos, la startup quebraría y, lo más grave, los pacientes quedarían a la deriva.\n\nMateo ejecutó el protocolo de **Administración de Seguridad**. Bloqueó todos los accesos externos y aisló la base de datos. Pero el daño estaba hecho: el 40% de las tablas estaban corruptas. Fue entonces cuando la **Automatización de Tareas** que había configurado meses atrás —y que muchos en la oficina consideraban una pérdida de tiempo— se convirtió en su única esperanza.\n\n> Cada madrugada, un *script* automatizado realizaba una exportación de datos a un servidor aislado y generaba copias de seguridad (**backups**) incrementales.\n\n### El Camino de Regreso\nCon manos temblorosas, Mateo inició el proceso de **restauración**. Primero, recuperó el último backup completo del domingo, y luego aplicó los incrementales del lunes. Mientras la barra de progreso avanzaba, Mateo monitoreaba el rendimiento para asegurar que el hardware no colapsara bajo la presión de la reconstrucción de índices.\n\n\n\nA las 5:45 AM, el sistema volvió a la vida. Las pruebas de integridad confirmaron que no se había perdido ni un solo gramo de información. Los datos habían regresado del abismo.\n\n###  Más que Código\nAl amanecer, mientras el equipo llegaba a la oficina sin sospechar que su mundo digital casi se extingue, Mateo comprendió una verdad fundamental: \n\n**Administrar una base de datos no es una tarea técnica, es un acto de responsabilidad ética.**\n\nLa tecnología es frágil, pero la prevención es invencible. La seguridad no es un muro, es un proceso constante de monitoreo y humildad frente al error.",
      "json_metadata": "{\"tags\":[\"database\",\"technology\",\"storytelling\",\"education\",\"steemexclusive\"],\"image\":[\"https://cdn.steemitimages.com/DQmUVg3eY6BZQd7CfnVc12VSbv1CG2ZuPBrjQN2AheX38p4/caseuses.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/01/13 04:06:03
parent author
parent permlinkeducacion
authorfrexus
permlinkel-guardian-del-laberinto-adaptativo-un-reto-de-ia
titleEl Guardián del Laberinto Adaptativo: Un reto de IA
body@@ -44,51 +44,51 @@ DQmS -7Mm6xceR2WfNECby1GHnizgza2j3spkXpvqDftifCHQ +mN35sZMTcN3Lsb5xCq8L2sSck2wRZd8scYLZnVV5RR9 /_o1 @@ -96,16 +96,17 @@ _.png)%0A%0A +%0A ### Int @@ -813,10 +813,8 @@ %0A%0A# -%F0%9F%9A%80 Ret
json metadata{"tags":["tecnologia","inteligenciaartificial","programacion","virtualreality","steemexclusive","docencia"],"image":["https://cdn.steemitimages.com/DQmSmN35sZMTcN3Lsb5xCq8L2sSck2wRZd8scYLZnVV5RR9/_o1o_.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102560231/Trx 95dc172d547d9e1822be5858c4c72d4d74f8a374
View Raw JSON Data
{
  "trx_id": "95dc172d547d9e1822be5858c4c72d4d74f8a374",
  "block": 102560231,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-13T04:06:03",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "educacion",
      "author": "frexus",
      "permlink": "el-guardian-del-laberinto-adaptativo-un-reto-de-ia",
      "title": "El Guardián del Laberinto Adaptativo: Un reto de IA",
      "body": "@@ -44,51 +44,51 @@\n DQmS\n-7Mm6xceR2WfNECby1GHnizgza2j3spkXpvqDftifCHQ\n+mN35sZMTcN3Lsb5xCq8L2sSck2wRZd8scYLZnVV5RR9\n /_o1\n@@ -96,16 +96,17 @@\n _.png)%0A%0A\n+%0A\n ###  Int\n@@ -813,10 +813,8 @@\n %0A%0A# \n-%F0%9F%9A%80\n  Ret\n",
      "json_metadata": "{\"tags\":[\"tecnologia\",\"inteligenciaartificial\",\"programacion\",\"virtualreality\",\"steemexclusive\",\"docencia\"],\"image\":[\"https://cdn.steemitimages.com/DQmSmN35sZMTcN3Lsb5xCq8L2sSck2wRZd8scYLZnVV5RR9/_o1o_.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2026/01/12 22:12:09
parent author
parent permlinkeducacion
authorfrexus
permlinkel-guardian-del-laberinto-adaptativo-un-reto-de-ia
titleEl Guardián del Laberinto Adaptativo: Un reto de IA
body![_o1o_.png](https://cdn.steemitimages.com/DQmS7Mm6xceR2WfNECby1GHnizgza2j3spkXpvqDftifCHQ/_o1o_.png) ### Introducción En el desarrollo de un entorno virtual para entrenamiento industrial (un almacén automatizado), se ha implementado un **avatar robótico** cuya tarea es organizar paquetes que caen de forma aleatoria. Inicialmente, el avatar fue programado con **scripts de rutas fijas**; sin embargo, cuando aparece un obstáculo imprevisto (como un trabajador cruzando o un derrame de material), el avatar colisiona o se detiene indefinidamente, rompiendo la inmersión y la eficiencia de la simulación. ### El Desafío Técnico La empresa desarrolladora decide integrar una capa de **Inteligencia Artificial** para que el avatar no solo "siga órdenes", sino que "perciba y decida". El equipo técnico debe: # 🚀 Reto Diagnóstico: "Configurando la Inteligencia del Guardián" Para resolver el problema de navegación en nuestro almacén virtual, realizaremos este desafío de lógica técnica dividido en tres niveles. No necesitas programar aún, ¡necesitamos tu criterio de ingeniero! --- ### 1. Elige tu "Cerebro" (Selección de Librería) Si tuvieras que elegir una herramienta para dar vida a este avatar en el entorno virtual, ¿cuál elegirías y por qué? * **A) ML-Agents (Unity):** Basado en aprendizaje por refuerzo (el agente aprende por experiencia propia, chocando y recibiendo premios). * **B) TensorFlow / Keras:** Para diseñar modelos de redes neuronales personalizados, más profundos y complejos. * **C) A* Pathfinding (Algoritmos clásicos):** No es una IA que "aprende", pero calcula la ruta más corta matemáticamente de forma infalible. --- ### 2. El Mapa de Datos (Instalación e Integración) Imagina que la librería de IA es un **"GPS externo"** que no puede ver el mundo físico. Tú debes enviarle los datos correctos para que tome decisiones. **Responde:** ¿Qué información específica debe enviarle el entorno virtual a la IA en cada segundo para evitar colisiones? *(Ejemplo: Distancia exacta al muro más cercano, ángulo de visión, posición del paquete, etc.)* --- ### 3. El Sistema de Premios (Entrenamiento) La IA moderna aprende mediante un sistema de **Recompensas y Castigos** (Reinforcement Learning). Como si estuvieras entrenando a una mascota digital, tú defines las reglas del éxito. **Define tu sistema de puntuación:** 1. **Premio:** ¿Cuántos puntos le otorgas al agente por recoger un paquete con éxito? 2. **Castigo:** ¿Cuántos puntos le restas por chocar contra un muro o un obstáculo? 3. **El Dilema de la Inactividad:** ¿Qué pasa si el agente decide quedarse quieto para evitar chocar y así no perder puntos? ¿Cómo lo castigarías o incentivarías para que se mantenga en movimiento? --- > **Nota para el estudiante:** Este reto busca identificar tu capacidad para estructurar problemas complejos antes de escribir la primera línea de código. ¡Tus respuestas muestra qué tan listo estás para el mundo de la IA en entornos virtuales! --- ## Preguntas de Reflexión (Evaluación Diagnóstica) A continuación, se presentan seis preguntas diseñadas para medir el nivel de abstracción y conocimientos previos. 1. **Diferenciación Conceptual:** ¿Cuál es la diferencia fundamental entre un personaje programado mediante **scripts de decisión lógica simple** (ej. *if-else*) y uno que opera bajo un modelo de **Inteligencia Artificial** dentro de un entorno virtual? 2. **Percepción de Entorno:** Para que la IA pueda tomar decisiones dentro del escenario virtual, ¿qué tipo de datos o "sensores digitales" creen que el avatar debe extraer del entorno (coordenadas, vectores de visión, detección de colisiones) y cómo se procesan estos datos? 3. **Selección e Integración de Herramientas:** Al elegir una **librería de IA** (como ML-Agents o TensorFlow), ¿qué criterios técnicos consideran que son más importantes para garantizar que la integración con el motor sea estable y no afecte el rendimiento (FPS) de la simulación? 4. **Proceso de Aprendizaje:** ¿Cómo se diferencia, desde su perspectiva, un entorno virtual diseñado para **uso humano** de uno diseñado específicamente para **entrenar a una IA** mediante el método de prueba y error? 5. **Mantenimiento y Pruebas:** Si tras instalar e integrar la librería, el avatar comienza a girar sobre su propio eje sin avanzar, ¿cuál sería su metodología lógica para identificar si el error está en la **configuración de la librería**, en la **física del entorno virtual** o en los **datos de entrada**? 6. **Impacto de la Incertidumbre:** En un entorno virtual, las decisiones rara vez son "blanco o negro". ¿Cómo creen que se podría programar a un avatar para que tome decisiones basadas en **grados de verdad**? (Ej. decidir si cruzar un obstáculo cuando la batería está "moderadamente baja" e intentar llegar al objetivo que está "algo lejos"). --- ### Notas del Autor Este caso de estudio permite diagnosticar no solo el conocimiento técnico, sino la capacidad de resolución de problemas complejos. Como docente e investigador, considero fundamental que el alumno entienda que la programación de entornos virtuales es la suma de **lógica, matemáticas y creatividad**. **¿Qué opinas sobre el uso de agentes autónomos en la simulación industrial? Te leo en los comentarios.**
json metadata{"tags":["educacion","tecnologia","inteligenciaartificial","programacion","virtualreality","steemexclusive","docencia"],"image":["https://cdn.steemitimages.com/DQmS7Mm6xceR2WfNECby1GHnizgza2j3spkXpvqDftifCHQ/_o1o_.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #102553168/Trx 69d5079c078db7d29705f7ff8cbcf4c1fd189e2b
View Raw JSON Data
{
  "trx_id": "69d5079c078db7d29705f7ff8cbcf4c1fd189e2b",
  "block": 102553168,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2026-01-12T22:12:09",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "educacion",
      "author": "frexus",
      "permlink": "el-guardian-del-laberinto-adaptativo-un-reto-de-ia",
      "title": "El Guardián del Laberinto Adaptativo: Un reto de IA",
      "body": "![_o1o_.png](https://cdn.steemitimages.com/DQmS7Mm6xceR2WfNECby1GHnizgza2j3spkXpvqDftifCHQ/_o1o_.png)\n\n###  Introducción\nEn el desarrollo de un entorno virtual para entrenamiento industrial (un almacén automatizado), se ha implementado un **avatar robótico** cuya tarea es organizar paquetes que caen de forma aleatoria. \n\nInicialmente, el avatar fue programado con **scripts de rutas fijas**; sin embargo, cuando aparece un obstáculo imprevisto (como un trabajador cruzando o un derrame de material), el avatar colisiona o se detiene indefinidamente, rompiendo la inmersión y la eficiencia de la simulación.\n\n###  El Desafío Técnico\nLa empresa desarrolladora decide integrar una capa de **Inteligencia Artificial** para que el avatar no solo \"siga órdenes\", sino que \"perciba y decida\". El equipo técnico debe:\n\n# 🚀 Reto Diagnóstico: \"Configurando la Inteligencia del Guardián\"\n\nPara resolver el problema de navegación en nuestro almacén virtual, realizaremos este desafío de lógica técnica dividido en tres niveles. No necesitas programar aún, ¡necesitamos tu criterio de ingeniero!\n\n---\n\n###  1. Elige tu \"Cerebro\" (Selección de Librería)\nSi tuvieras que elegir una herramienta para dar vida a este avatar en el entorno virtual, ¿cuál elegirías y por qué?\n\n* **A) ML-Agents (Unity):** Basado en aprendizaje por refuerzo (el agente aprende por experiencia propia, chocando y recibiendo premios).\n* **B) TensorFlow / Keras:** Para diseñar modelos de redes neuronales personalizados, más profundos y complejos.\n* **C) A* Pathfinding (Algoritmos clásicos):** No es una IA que \"aprende\", pero calcula la ruta más corta matemáticamente de forma infalible.\n\n---\n\n### 2. El Mapa de Datos (Instalación e Integración)\nImagina que la librería de IA es un **\"GPS externo\"** que no puede ver el mundo físico. Tú debes enviarle los datos correctos para que tome decisiones.\n\n**Responde:** ¿Qué información específica debe enviarle el entorno virtual a la IA en cada segundo para evitar colisiones? \n*(Ejemplo: Distancia exacta al muro más cercano, ángulo de visión, posición del paquete, etc.)*\n\n\n\n---\n\n### 3. El Sistema de Premios (Entrenamiento)\nLa IA moderna aprende mediante un sistema de **Recompensas y Castigos** (Reinforcement Learning). Como si estuvieras entrenando a una mascota digital, tú defines las reglas del éxito.\n\n**Define tu sistema de puntuación:**\n1.  **Premio:** ¿Cuántos puntos le otorgas al agente por recoger un paquete con éxito?\n2.  **Castigo:** ¿Cuántos puntos le restas por chocar contra un muro o un obstáculo?\n3.  **El Dilema de la Inactividad:** ¿Qué pasa si el agente decide quedarse quieto para evitar chocar y así no perder puntos? ¿Cómo lo castigarías o incentivarías para que se mantenga en movimiento?\n\n\n\n---\n\n> **Nota para el estudiante:** Este reto busca identificar tu capacidad para estructurar problemas complejos antes de escribir la primera línea de código. ¡Tus respuestas muestra qué tan listo estás para el mundo de la IA en entornos virtuales!\n\n---\n\n##  Preguntas de Reflexión (Evaluación Diagnóstica)\n\nA continuación, se presentan seis preguntas diseñadas para medir el nivel de abstracción y conocimientos previos.\n\n1. **Diferenciación Conceptual:** ¿Cuál es la diferencia fundamental entre un personaje programado mediante **scripts de decisión lógica simple** (ej. *if-else*) y uno que opera bajo un modelo de **Inteligencia Artificial** dentro de un entorno virtual?\n\n2. **Percepción de Entorno:** Para que la IA pueda tomar decisiones dentro del escenario virtual, ¿qué tipo de datos o \"sensores digitales\" creen que el avatar debe extraer del entorno (coordenadas, vectores de visión, detección de colisiones) y cómo se procesan estos datos?\n\n3. **Selección e Integración de Herramientas:** Al elegir una **librería de IA** (como ML-Agents o TensorFlow), ¿qué criterios técnicos consideran que son más importantes para garantizar que la integración con el motor sea estable y no afecte el rendimiento (FPS) de la simulación?\n\n4. **Proceso de Aprendizaje:** ¿Cómo se diferencia, desde su perspectiva, un entorno virtual diseñado para **uso humano** de uno diseñado específicamente para **entrenar a una IA** mediante el método de prueba y error?\n\n5. **Mantenimiento y Pruebas:** Si tras instalar e integrar la librería, el avatar comienza a girar sobre su propio eje sin avanzar, ¿cuál sería su metodología lógica para identificar si el error está en la **configuración de la librería**, en la **física del entorno virtual** o en los **datos de entrada**?\n\n6. **Impacto de la Incertidumbre:** En un entorno virtual, las decisiones rara vez son \"blanco o negro\". ¿Cómo creen que se podría programar a un avatar para que tome decisiones basadas en **grados de verdad**? (Ej. decidir si cruzar un obstáculo cuando la batería está \"moderadamente baja\" e intentar llegar al objetivo que está \"algo lejos\").\n\n---\n\n###  Notas del Autor\nEste caso de estudio permite diagnosticar no solo el conocimiento técnico, sino la capacidad de resolución de problemas complejos. Como docente e investigador, considero fundamental que el alumno entienda que la programación de entornos virtuales es la suma de **lógica, matemáticas y creatividad**.\n\n**¿Qué opinas sobre el uso de agentes autónomos en la simulación industrial? Te leo en los comentarios.**",
      "json_metadata": "{\"tags\":[\"educacion\",\"tecnologia\",\"inteligenciaartificial\",\"programacion\",\"virtualreality\",\"steemexclusive\",\"docencia\"],\"image\":[\"https://cdn.steemitimages.com/DQmS7Mm6xceR2WfNECby1GHnizgza2j3spkXpvqDftifCHQ/_o1o_.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2025/12/03 21:38:09
voterfrexus
authorzix0u0
permlinkdispositivos-inteligentes-tarea
weight10000 (100.00%)
Transaction InfoBlock #101403241/Trx 59dce53078dba102ee633d2556816b2982aac403
View Raw JSON Data
{
  "trx_id": "59dce53078dba102ee633d2556816b2982aac403",
  "block": 101403241,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-12-03T21:38:09",
  "op": [
    "vote",
    {
      "voter": "frexus",
      "author": "zix0u0",
      "permlink": "dispositivos-inteligentes-tarea",
      "weight": 10000
    }
  ]
}
2025/12/01 21:44:03
voterfrexus
authorleonardodmu
permlinkreflexion-sobre-el-caso-de-estudio-transacciones
weight10000 (100.00%)
Transaction InfoBlock #101345875/Trx 91b571335d8357f052f583ee27ac92112d28cbd4
View Raw JSON Data
{
  "trx_id": "91b571335d8357f052f583ee27ac92112d28cbd4",
  "block": 101345875,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-12-01T21:44:03",
  "op": [
    "vote",
    {
      "voter": "frexus",
      "author": "leonardodmu",
      "permlink": "reflexion-sobre-el-caso-de-estudio-transacciones",
      "weight": 10000
    }
  ]
}
frexusreplied to @asileg / t6m0pj
2025/12/01 21:22:33
parent authorasileg
parent permlinkreflexion-sobre-el-caso-de-estudio-la-odisea-de-distribuir-una-aplicacion-web-progresiva
authorfrexus
permlinkt6m0pj
title
bodyuno de los detalles de las pwa es el poder distribuirlas y / o al menos que los usuario (no tecnicos puedan instalarla desde el navegador)
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101345445/Trx 6c7cfad6372ea0099085f71ba6d6874b8a3805e7
View Raw JSON Data
{
  "trx_id": "6c7cfad6372ea0099085f71ba6d6874b8a3805e7",
  "block": 101345445,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-12-01T21:22:33",
  "op": [
    "comment",
    {
      "parent_author": "asileg",
      "parent_permlink": "reflexion-sobre-el-caso-de-estudio-la-odisea-de-distribuir-una-aplicacion-web-progresiva",
      "author": "frexus",
      "permlink": "t6m0pj",
      "title": "",
      "body": "uno de los detalles de las pwa es el poder distribuirlas y / o al menos que los usuario (no tecnicos puedan instalarla desde el navegador)",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
2025/12/01 21:21:27
voterfrexus
authorasileg
permlinkreflexion-sobre-el-caso-de-estudio-la-odisea-de-distribuir-una-aplicacion-web-progresiva
weight10000 (100.00%)
Transaction InfoBlock #101345423/Trx 8c1fa4c8c6f3d613ce0bfae52605e3194f4bfd62
View Raw JSON Data
{
  "trx_id": "8c1fa4c8c6f3d613ce0bfae52605e3194f4bfd62",
  "block": 101345423,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-12-01T21:21:27",
  "op": [
    "vote",
    {
      "voter": "frexus",
      "author": "asileg",
      "permlink": "reflexion-sobre-el-caso-de-estudio-la-odisea-de-distribuir-una-aplicacion-web-progresiva",
      "weight": 10000
    }
  ]
}
2025/12/01 05:30:57
votermanuel193
authorfrexus
permlinkcuando-la-imagen-cobro-vida-multimedia-e-integracion-grafica-con-moviles
weight10000 (100.00%)
Transaction InfoBlock #101326457/Trx 6fa5c6a0c3081272479990b5e7281b54f098a6c5
View Raw JSON Data
{
  "trx_id": "6fa5c6a0c3081272479990b5e7281b54f098a6c5",
  "block": 101326457,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-12-01T05:30:57",
  "op": [
    "vote",
    {
      "voter": "manuel193",
      "author": "frexus",
      "permlink": "cuando-la-imagen-cobro-vida-multimedia-e-integracion-grafica-con-moviles",
      "weight": 10000
    }
  ]
}
2025/12/01 05:30:45
votermanuel193
authorfrexus
permlinkcuando-la-imagen-cobro-vida-multimedia-e-integracion-grafica-con-moviles
weight10000 (100.00%)
Transaction InfoBlock #101326453/Trx f79f6f259304f579fd6cd433b78d710f8beca80a
View Raw JSON Data
{
  "trx_id": "f79f6f259304f579fd6cd433b78d710f8beca80a",
  "block": 101326453,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-12-01T05:30:45",
  "op": [
    "vote",
    {
      "voter": "manuel193",
      "author": "frexus",
      "permlink": "cuando-la-imagen-cobro-vida-multimedia-e-integracion-grafica-con-moviles",
      "weight": 10000
    }
  ]
}
shunsuireplied to @frexus / t6ited
2025/11/30 04:01:18
parent authorfrexus
parent permlinkentre-pantallas-y-voces
authorshunsui
permlinkt6ited
title
body@@ -183,19 +183,23 @@ o sobre -ell +la mism a, es de @@ -407,17 +407,16 @@ gamos a -e limitarn @@ -416,16 +416,17 @@ imitarno +s con el @@ -555,14 +555,18 @@ os. -Lo m%C3%A1s +Un ejemplo cla @@ -570,18 +570,16 @@ claro es -ta como en
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101295925/Trx 6344820acd299fbe92afaf48831ee15ff877f0b2
View Raw JSON Data
{
  "trx_id": "6344820acd299fbe92afaf48831ee15ff877f0b2",
  "block": 101295925,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-30T04:01:18",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "entre-pantallas-y-voces",
      "author": "shunsui",
      "permlink": "t6ited",
      "title": "",
      "body": "@@ -183,19 +183,23 @@\n o sobre \n-ell\n+la mism\n a, es de\n@@ -407,17 +407,16 @@\n gamos a \n-e\n limitarn\n@@ -416,16 +416,17 @@\n imitarno\n+s\n  con el \n@@ -555,14 +555,18 @@\n os. \n-Lo m%C3%A1s\n+Un ejemplo\n  cla\n@@ -570,18 +570,16 @@\n claro es\n-ta\n  como en\n",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
2025/11/30 03:53:51
votershunsui
authorfrexus
permlinkentre-pantallas-y-voces
weight10000 (100.00%)
Transaction InfoBlock #101295776/Trx c3a685a59726172779e620112fdd565b155574b2
View Raw JSON Data
{
  "trx_id": "c3a685a59726172779e620112fdd565b155574b2",
  "block": 101295776,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-30T03:53:51",
  "op": [
    "vote",
    {
      "voter": "shunsui",
      "author": "frexus",
      "permlink": "entre-pantallas-y-voces",
      "weight": 10000
    }
  ]
}
shunsuireplied to @frexus / t6ited
2025/11/30 03:51:51
parent authorfrexus
parent permlinkentre-pantallas-y-voces
authorshunsui
permlinkt6ited
title
bodyEl caso de Lucía es algo muy particular, ya que en el momento que se empieza a utilizar la tecnologia es de gran ayuda, pero recurriendo a ella sin tener el más mínimo de conocimiento sobre ella, es dejarse llevar por una simple máquina, es decir, que un simple computador, un asistente e incluso hasta las mismas inteligencias artificiales nos pueden llegar a controlador hasta en el futuro. Si no llegamos a elimitarno con el uso de ellas, ya que se crearon para que nos ayudemos con las tecnologías, no para dejar que nos controlen a nosotros mismos. Lo más claro esta como en la película de "Matrix" y "Terminator".
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101295736/Trx 10265f2d17bc4fc8ec0e6eef158e7b9dfd896dd5
View Raw JSON Data
{
  "trx_id": "10265f2d17bc4fc8ec0e6eef158e7b9dfd896dd5",
  "block": 101295736,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-30T03:51:51",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "entre-pantallas-y-voces",
      "author": "shunsui",
      "permlink": "t6ited",
      "title": "",
      "body": "El caso de Lucía es algo muy particular, ya que en el momento que se empieza a utilizar la tecnologia es de gran ayuda, pero recurriendo a ella sin tener el más mínimo de conocimiento sobre ella, es dejarse llevar por una simple máquina, es decir, que un simple computador, un asistente e incluso hasta las mismas inteligencias artificiales nos pueden llegar a controlador hasta en el futuro. Si no llegamos a elimitarno con el uso de ellas, ya que se crearon para que nos ayudemos con las tecnologías, no para dejar que nos controlen a nosotros mismos. Lo más claro esta como en la película de \"Matrix\" y \"Terminator\".",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
2025/11/29 03:57:15
parent authorfrexus
parent permlinkentre-pantallas-y-voces
authorfernandaa
permlinkt6gyxy
title
bodyEl caso de Lucía es un gran recordatorio: la verdadera inteligencia está en la autonomía, no en la automatización. Me encanta cómo pasó de la dependencia a la personalización creativa (¡usando Flutter y Node-RED!). Es clave aprender a diseñar un entorno digital que nos potencie, en lugar de invadirnos.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101267106/Trx f96a1ab83c7f33169e8f1fe92a19ccd0c84969c4
View Raw JSON Data
{
  "trx_id": "f96a1ab83c7f33169e8f1fe92a19ccd0c84969c4",
  "block": 101267106,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-29T03:57:15",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "entre-pantallas-y-voces",
      "author": "fernandaa",
      "permlink": "t6gyxy",
      "title": "",
      "body": "El caso de Lucía es un gran recordatorio: la verdadera inteligencia está en la autonomía, no en la automatización. Me encanta cómo pasó de la dependencia a la personalización creativa (¡usando Flutter y Node-RED!). Es clave aprender a diseñar un entorno digital que nos potencie, en lugar de invadirnos.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
torresj2replied to @frexus / t6gq7h
2025/11/29 00:47:42
parent authorfrexus
parent permlinkentre-pantallas-y-voces
authortorresj2
permlinkt6gq7h
title
bodyEl caso Entre Pantallas y Voces muestra cómo la tecnología puede facilitarnos la vida, pero también cómo puede llegar a saturarnos si no ponemos límites. Lucía pasa de depender de sus dispositivos a encontrar un equilibrio más saludable, integrándolos de forma consciente. El estudio refleja el impacto real de los asistentes inteligentes en nuestros hábitos y emociones, pero desde una perspectiva cercana y cotidiana. Al final, queda claro que la clave no es la herramienta, sino cómo decidimos usarla. Su experiencia demuestra que la tecnología debe adaptarse a nosotros, no al revés.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101263322/Trx 709be3370f6e259a91cbc0b8fe7baf1b3be97831
View Raw JSON Data
{
  "trx_id": "709be3370f6e259a91cbc0b8fe7baf1b3be97831",
  "block": 101263322,
  "trx_in_block": 6,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-29T00:47:42",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "entre-pantallas-y-voces",
      "author": "torresj2",
      "permlink": "t6gq7h",
      "title": "",
      "body": "El caso Entre Pantallas y Voces muestra cómo la tecnología puede facilitarnos la vida, pero también cómo puede llegar a saturarnos si no ponemos límites. Lucía pasa de depender de sus dispositivos a encontrar un equilibrio más saludable, integrándolos de forma consciente. El estudio refleja el impacto real de los asistentes inteligentes en nuestros hábitos y emociones, pero desde una perspectiva cercana y cotidiana. Al final, queda claro que la clave no es la herramienta, sino cómo decidimos usarla. Su experiencia demuestra que la tecnología debe adaptarse a nosotros, no al revés.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
elian20replied to @frexus / t6gkbz
2025/11/28 22:40:51
parent authorfrexus
parent permlinkentre-pantallas-y-voces
authorelian20
permlinkt6gkbz
title
bodyEl caso de Lucía es sobre cómo pasó de usar una pantalla inteligente para sus tareas básicas a depender totalmente de ella, lo que hace que su vida se llene de notificaciones. La frustración la lleva a reconfigurar el dispositivo y programar solo lo esencial para su bienestar. Esto hace que hoy en día la tecnología sea una herramienta útil que ayuda a nuestra vida, pero no debemos depender de ella o que nos quite el control.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101260791/Trx 00fb56b232d69cd478127e2867597216032adc6a
View Raw JSON Data
{
  "trx_id": "00fb56b232d69cd478127e2867597216032adc6a",
  "block": 101260791,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-28T22:40:51",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "entre-pantallas-y-voces",
      "author": "elian20",
      "permlink": "t6gkbz",
      "title": "",
      "body": "El caso de Lucía es sobre cómo pasó de usar una pantalla inteligente para sus tareas básicas a depender totalmente de ella, lo que hace que su vida se llene de notificaciones. La frustración la lleva a reconfigurar el dispositivo y programar solo lo esencial para su bienestar. Esto hace que hoy en día la tecnología sea una herramienta útil que ayuda a nuestra vida, pero no debemos depender de ella o que nos quite el control.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
2025/11/28 15:31:00
voteromar19
authorfrexus
permlinkentre-sensores-y-suenos
weight10000 (100.00%)
Transaction InfoBlock #101252211/Trx 2c0b35af7b1eaf8f8ed177a81f0cc7f0e3c1678b
View Raw JSON Data
{
  "trx_id": "2c0b35af7b1eaf8f8ed177a81f0cc7f0e3c1678b",
  "block": 101252211,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-28T15:31:00",
  "op": [
    "vote",
    {
      "voter": "omar19",
      "author": "frexus",
      "permlink": "entre-sensores-y-suenos",
      "weight": 10000
    }
  ]
}
omar19replied to @frexus / t6fzh8
2025/11/28 15:10:21
parent authorfrexus
parent permlinkentre-pantallas-y-voces
authoromar19
permlinkt6fzh8
title
bodyEl texto aborda cómo la tecnología, especialmente las pantallas inteligentes, puede transformar nuestra vida cotidiana hasta el punto de generar dependencia sin que lo notemos. A través de la experiencia de Lucía, se muestra cómo la comodidad puede volverse invasiva cuando dejamos que los dispositivos tomen demasiado control. Sin embargo, también plantea que la solución no es rechazarlos, sino aprender a usarlos con equilibrio y propósito. La clave está en personalizar la tecnología para que potencie nuestro bienestar en lugar de reemplazar nuestra autonomía. En última instancia, el mensaje invita a reflexionar sobre cómo convivimos con lo digital y a recordar que la verdadera inteligencia está en el uso consciente que damos a nuestras herramientas.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101251799/Trx 2ac266e7cdbf5ad0eea2683a999a983933b327c7
View Raw JSON Data
{
  "trx_id": "2ac266e7cdbf5ad0eea2683a999a983933b327c7",
  "block": 101251799,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-28T15:10:21",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "entre-pantallas-y-voces",
      "author": "omar19",
      "permlink": "t6fzh8",
      "title": "",
      "body": "El texto aborda cómo la tecnología, especialmente las pantallas inteligentes, puede transformar nuestra vida cotidiana hasta el punto de generar dependencia sin que lo notemos. A través de la experiencia de Lucía, se muestra cómo la comodidad puede volverse invasiva cuando dejamos que los dispositivos tomen demasiado control. Sin embargo, también plantea que la solución no es rechazarlos, sino aprender a usarlos con equilibrio y propósito. La clave está en personalizar la tecnología para que potencie nuestro bienestar en lugar de reemplazar nuestra autonomía. En última instancia, el mensaje invita a reflexionar sobre cómo convivimos con lo digital y a recordar que la verdadera inteligencia está en el uso consciente que damos a nuestras herramientas.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
2025/11/26 04:58:33
parent authorfrexus
parent permlinkla-odisea-de-distribuir-una-aplicacion-web-progresiva
authoralex-ovando
permlinkt6bhtk
title
bodyEn este caso pude aprender la importancia de la distribución de un producto, aprendí de una emprendedora muy talentosa la importancia de la promoción en un producto, y veo eso reflejado aquí. También aprendí que existen diversos métodos para que cualquier proyecto llegue al publico objetivo, pero que hay que tener en cuenta el tipo de publico para elegir el o los métodos
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101182111/Trx 55f514b0851a39148987c7c13c367aafb39bf4a0
View Raw JSON Data
{
  "trx_id": "55f514b0851a39148987c7c13c367aafb39bf4a0",
  "block": 101182111,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-26T04:58:33",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "la-odisea-de-distribuir-una-aplicacion-web-progresiva",
      "author": "alex-ovando",
      "permlink": "t6bhtk",
      "title": "",
      "body": "En este caso pude aprender la importancia de la distribución de un producto, aprendí de una emprendedora muy talentosa la importancia de la promoción en un producto, y veo eso reflejado aquí.\nTambién aprendí que existen diversos métodos para que cualquier proyecto llegue al publico objetivo, pero que hay que tener en cuenta el tipo de publico para elegir el o los métodos",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
lmk4treplied to @frexus / t6barj
2025/11/26 02:26:09
parent authorfrexus
parent permlinkla-odisea-de-distribuir-una-aplicacion-web-progresiva
authorlmk4t
permlinkt6barj
title
bodyEsta lectura nos da una lección importante: De nada sirve crear algo si nadie lo verá. Es preciso que una aplicación web progresiva sea visible para los usuarios para que así cumpla su propósito. En este caso de estudio, Mariana descubrió que la mejor manera de ampliar el alcance de su PWA es por medio de tiendas digitales, redes sociales y códigos QR para su difusión.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101179068/Trx 28c1e42672feff0f33c26119df5fc6d8875efcac
View Raw JSON Data
{
  "trx_id": "28c1e42672feff0f33c26119df5fc6d8875efcac",
  "block": 101179068,
  "trx_in_block": 1,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-26T02:26:09",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "la-odisea-de-distribuir-una-aplicacion-web-progresiva",
      "author": "lmk4t",
      "permlink": "t6barj",
      "title": "",
      "body": "Esta lectura nos da una lección importante: De nada sirve crear algo si nadie lo verá. Es preciso que una aplicación web progresiva sea visible para los usuarios para que así cumpla su propósito. En este caso de estudio, Mariana descubrió que la mejor manera de ampliar el alcance de su PWA es por medio de tiendas digitales, redes sociales y códigos QR para su difusión.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
zix0u0replied to @frexus / t6919i
2025/11/24 21:05:42
parent authorfrexus
parent permlinkentre-pantallas-y-voces
authorzix0u0
permlinkt6919i
title
bodyEl caso de Lucía muestra cómo la tecnología puede ayudarnos mucho, pero también puede llegar a dominarnos. Me pareció interesante porque refleja algo que muchas personas vivimos en la actualidad. Creo que es importante aprender a usar la tecnología con equilibrio y no dejar que controle nuestra vida diaria.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101143923/Trx 59487d7bdcc0c01fd5bb1dcea83a7552ea4841f9
View Raw JSON Data
{
  "trx_id": "59487d7bdcc0c01fd5bb1dcea83a7552ea4841f9",
  "block": 101143923,
  "trx_in_block": 9,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-24T21:05:42",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "entre-pantallas-y-voces",
      "author": "zix0u0",
      "permlink": "t6919i",
      "title": "",
      "body": "El caso de Lucía muestra cómo la tecnología puede ayudarnos mucho, pero también puede llegar a dominarnos. Me pareció interesante porque refleja algo que muchas personas vivimos en la actualidad. Creo que es importante aprender a usar la tecnología con equilibrio y no dejar que controle nuestra vida diaria.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
2025/11/24 21:04:39
voterzix0u0
authorfrexus
permlinkentre-pantallas-y-voces
weight10000 (100.00%)
Transaction InfoBlock #101143902/Trx 0d35c473410f08a36b7947c43b58c0f63df7e00c
View Raw JSON Data
{
  "trx_id": "0d35c473410f08a36b7947c43b58c0f63df7e00c",
  "block": 101143902,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-24T21:04:39",
  "op": [
    "vote",
    {
      "voter": "zix0u0",
      "author": "frexus",
      "permlink": "entre-pantallas-y-voces",
      "weight": 10000
    }
  ]
}
asilegreplied to @frexus / t676b5
2025/11/23 20:59:27
parent authorfrexus
parent permlinkla-odisea-de-distribuir-una-aplicacion-web-progresiva
authorasileg
permlinkt676b5
title
bodyEl caso de estudio me ayudo a comprender que para que una PWA tenga éxito no solo debe funcionar bien, sino también ser fácil de encontrar y usar. La forma en que se distribuye influye mucho en su alcance, y combinar distintos métodos, como tiendas, redes sociales o códigos QR, puede ayudar a que más personas la adopten, especialmente en proyectos educativos o sociales.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101115064/Trx 905311f1eefab71647c625736c40bdc4661bda2b
View Raw JSON Data
{
  "trx_id": "905311f1eefab71647c625736c40bdc4661bda2b",
  "block": 101115064,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-23T20:59:27",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "la-odisea-de-distribuir-una-aplicacion-web-progresiva",
      "author": "asileg",
      "permlink": "t676b5",
      "title": "",
      "body": "El caso de estudio me ayudo a comprender que para que una PWA tenga éxito no solo debe funcionar bien, sino también ser fácil de encontrar y usar. La forma en que se distribuye influye mucho en su alcance, y combinar distintos métodos, como tiendas, redes sociales o códigos QR, puede ayudar a que más personas la adopten, especialmente en proyectos educativos o sociales.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
yeni02replied to @frexus / t60cdd
2025/11/20 04:27:15
parent authorfrexus
parent permlinkla-trampa-de-los-bits-alquilados
authoryeni02
permlinkt60cdd
title
bodyplantilla post # Reflexión sobre el caso de estudio: Web 3.0] **Autor:** @yeni02 **Fecha:** [19/11/2025] **Materia:** [Nuevas tecnologías en la educación] **Profesor:** Alfredo de Jesús Gutiérrez Gomez --- ## Caso de estudio He leído y analizado el caso publicado por el profesor: [Enlace al caso de estudio](https://steemit.com/web3/@frexus/la-trampa-de-los-bits-alquilados) En este caso se aborda el tema de **[La trampa de los bits alquilados]**, donde se presenta una situación real o simulada para aplicar los conceptos vistos en clase. --- ## Reflexión personal > En este apartado, escribe tu análisis del caso. > Puedes responder a preguntas como: > - ¿- Pérdida en la Web 2.0: Si mi cuenta principal desapareciera, perdería aproximadamente el 60% de mi trabajo y comunidad, incluyendo proyectos y conexiones construidas a lo largo de varios años. > - La descentralización de la Web 3.0 elimina la “impotencia absoluta” al permitir que los usuarios posean sus datos y contenido, evitando la dependencia de plataformas centralizadas que pueden censurar o cerrar cuentas arbitrariamente. > - El hábito de seguridad digital más importante es la gestión segura de las claves privadas. > - Más allá de las finanzas, el arte, el periodismo y la investigación científica se beneficiarán enormemente de la inmutabilidad de la blockchain, garantizando la autenticidad, la transparencia y la resistencia a la censura. > - No creo que el usuario promedio esté completamente preparado para la responsabilidad total de su identidad digital en la Web 3.0. Se necesita más educación y herramientas intuitivas para facilitar la transición y garantizar la seguridad. > - La diferencia clave es que los “seguidores” en la Web 2.0 son una audiencia pasiva, mientras que una “comunidad” en la Web 3.0 implica participación activa, propiedad compartida y un sentido de pertenencia y colaboración. Ejemplo: > La historia de Javier nos recuerda que la verdadera libertad digital reside en la propiedad y el control sobre nuestras creaciones,la Web 3.0 no es solo una evolución tecnológica, sino una revolución filosófica que nos invita a ser dueños de nuestro futuro digital, en lugar de simples inquilinos de plataformas centralizadas. --- ## Actividades complementarias - **Podcast escuchado:** [Historias que te reta n](https://audius.co/frexus/status-quo-digital) _Tema tratado: [Ventajas de la web.3.0]._ - **Práctica desarrollada:** [Enlace a la publicación en Steem](https://steemit.com/@usuarioalumno/practica1) _Descripción breve: [explica en qué consistió la práctica]._ - **Actividades lúdicas completadas:** - [Sopa de letras](https://www.frexus.dev/report/decode.html?data=HVAVFBQKAwBHQlcyCIELERgcRF5HDBwHChdHQlckAxBHVFcAExAREQEfA1BfWiEBAwFHVFcSBQYMDhwHHyYcCBBRXFAWFwUSOR4ADAcSFVBJWhMcExwBLxoBAgFHQi5RKD0mPTsnNDMpMS8yIj1HVFcwKjMzPVdfRCYqMzA9RF5HKCc8NjsgPDQ3RF5HOyc6NiYqPycyIL8kWllRMTMpNDAnRF5HPDQjNlBJWiI2JEFHVFcxKj0mMzY7JzsrWihfRAYKDBQfMR0XHAZRXEtJWgIcFBYWWk8oRCI3NyU6IzYkPFdfRDE3MSUnKTU3OTO-J1BJWjY_JyQgWllRMj0uPTtRSlAnNDowLTEtOTw9RF5HPDQjNlBJWiIyKj4gLFdfRCUgOkZRSlArNzY2KCY3OTk6PDMhN1cuSlARERgWREhHSEZJUktHVFcABR0XHVdJVENQSllRAQAMHCYaHBdHQkdDSlASChodASEAFBAQEhsKFgZRXENJWhYcFAAAGwEgAx4AGwEaCRwWWk9KSlAQCxAXNRoKDyYcCgcRERodREgDGRkAA15HGxoeFh4ADBwcCD8ADB0cAlBfWhYcCwIJHQEcRF5HGxoeFh4ADBAXJwZHQldBVkBQVURCS0BVLEVBXEJdQkVESEFRSy9RGw) --- ## Evidencias visuales ![Captura del crucigrama](https://url-de-tu-captura.com/cruci.png) --- ## Conclusiones finales **Aprendizaje obtenido:** > Aprendí a mejorar mi habilidad visual con la sopa de letras y también aprendí a usar mejor la página web que se nos indicó **Dificultades enfrentadas:** > se me dificultó trabajar este tipo de paginas en celular ya que es un poco complicado --- ## Backlinks y referencias - [Post original del profesor en Steem](https://www.frexus.dev/tag/steem/) - [Podcast del profesor en DTube ( https://audius.co/frexus/status-quo-digital) - [Mi comentario en el post original](https://steemit.com/@yeni02/comment1) --- *Este post forma parte de la actividad de aprendizaje correspondiente a la unidad [nombre de la unidad]. Publicación realizada con fines educativos como parte del curso de [nombre del curso].*
json metadata{"users":["yeni02"],"image":["https://url-de-tu-captura.com/cruci.png"],"links":["https://steemit.com/web3/@frexus/la-trampa-de-los-bits-alquilados","https://audius.co/frexus/status-quo-digital","https://steemit.com/@usuarioalumno/practica1","https://www.frexus.dev/report/decode.html?data=HVAVFBQKAwBHQlcyCIELERgcRF5HDBwHChdHQlckAxBHVFcAExAREQEfA1BfWiEBAwFHVFcSBQYMDhwHHyYcCBBRXFAWFwUSOR4ADAcSFVBJWhMcExwBLxoBAgFHQi5RKD0mPTsnNDMpMS8yIj1HVFcwKjMzPVdfRCYqMzA9RF5HKCc8NjsgPDQ3RF5HOyc6NiYqPycyIL8kWllRMTMpNDAnRF5HPDQjNlBJWiI2JEFHVFcxKj0mMzY7JzsrWihfRAYKDBQfMR0XHAZRXEtJWgIcFBYWWk8oRCI3NyU6IzYkPFdfRDE3MSUnKTU3OTO-J1BJWjY_JyQgWllRMj0uPTtRSlAnNDowLTEtOTw9RF5HPDQjNlBJWiIyKj4gLFdfRCUgOkZRSlArNzY2KCY3OTk6PDMhN1cuSlARERgWREhHSEZJUktHVFcABR0XHVdJVENQSllRAQAMHCYaHBdHQkdDSlASChodASEAFBAQEhsKFgZRXENJWhYcFAAAGwEgAx4AGwEaCRwWWk9KSlAQCxAXNRoKDyYcCgcRERodREgDGRkAA15HGxoeFh4ADBwcCD8ADB0cAlBfWhYcCwIJHQEcRF5HGxoeFh4ADBAXJwZHQldBVkBQVURCS0BVLEVBXEJdQkVESEFRSy9RGw","https://www.frexus.dev/tag/steem/","https://steemit.com/@yeni02/comment1"],"app":"steemit/0.2"}
Transaction InfoBlock #101009053/Trx acbedec154ea9d2da440872b9aad82327abfe377
View Raw JSON Data
{
  "trx_id": "acbedec154ea9d2da440872b9aad82327abfe377",
  "block": 101009053,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-20T04:27:15",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "la-trampa-de-los-bits-alquilados",
      "author": "yeni02",
      "permlink": "t60cdd",
      "title": "",
      "body": "plantilla post\r\n\r\n#  Reflexión sobre el caso de estudio: Web 3.0]\r\n\r\n**Autor:** @yeni02  \r\n**Fecha:** [19/11/2025]  \r\n**Materia:** [Nuevas tecnologías en la educación]  \r\n**Profesor:** Alfredo de Jesús Gutiérrez Gomez\r\n\r\n---\r\n\r\n##  Caso de estudio\r\nHe leído y analizado el caso publicado por el profesor:  \r\n [Enlace al caso de estudio](https://steemit.com/web3/@frexus/la-trampa-de-los-bits-alquilados)\r\n\r\nEn este caso se aborda el tema de **[La trampa de los bits alquilados]**, donde se presenta una situación real o simulada para aplicar los conceptos vistos en clase.\r\n\r\n---\r\n\r\n## Reflexión personal\r\n> En este apartado, escribe tu análisis del caso.  \r\n> Puedes responder a preguntas como:\r\n> - ¿- Pérdida en la Web 2.0: Si mi cuenta principal desapareciera, perdería aproximadamente el 60% de mi trabajo y comunidad, incluyendo proyectos y conexiones construidas a lo largo de varios años. \r\n> - La descentralización de la Web 3.0 elimina la “impotencia absoluta” al permitir que los usuarios posean sus datos y contenido, evitando la dependencia de plataformas centralizadas que pueden censurar o cerrar cuentas arbitrariamente. \r\n> - El hábito de seguridad digital más importante es la gestión segura de las claves privadas.\r\n> - Más allá de las finanzas, el arte, el periodismo y la investigación científica se beneficiarán enormemente de la inmutabilidad de la blockchain, garantizando la autenticidad, la transparencia y la resistencia a la censura.\r\n> - No creo que el usuario promedio esté completamente preparado para la responsabilidad total de su identidad digital en la Web 3.0. Se necesita más educación y herramientas intuitivas para facilitar la transición y garantizar la seguridad.\r\n> - La diferencia clave es que los “seguidores” en la Web 2.0 son una audiencia pasiva, mientras que una “comunidad” en la Web 3.0 implica participación activa, propiedad compartida y un sentido de pertenencia y colaboración.\r\n\r\nEjemplo:  \r\n> La historia de Javier nos recuerda que la verdadera libertad digital reside en la propiedad y el control sobre nuestras creaciones,la Web 3.0 no es solo una evolución tecnológica, sino una revolución filosófica que nos invita a ser dueños de nuestro futuro digital, en lugar de simples inquilinos de plataformas centralizadas.\r\n\r\n---\r\n\r\n## Actividades complementarias\r\n\r\n-  **Podcast escuchado:** [Historias que te reta n](https://audius.co/frexus/status-quo-digital)  \r\n  _Tema tratado: [Ventajas de la web.3.0]._  \r\n\r\n-  **Práctica desarrollada:** [Enlace a la publicación en Steem](https://steemit.com/@usuarioalumno/practica1)  \r\n  _Descripción breve: [explica en qué consistió la práctica]._  \r\n\r\n-  **Actividades lúdicas completadas:**  \r\n  - [Sopa de letras](https://www.frexus.dev/report/decode.html?data=HVAVFBQKAwBHQlcyCIELERgcRF5HDBwHChdHQlckAxBHVFcAExAREQEfA1BfWiEBAwFHVFcSBQYMDhwHHyYcCBBRXFAWFwUSOR4ADAcSFVBJWhMcExwBLxoBAgFHQi5RKD0mPTsnNDMpMS8yIj1HVFcwKjMzPVdfRCYqMzA9RF5HKCc8NjsgPDQ3RF5HOyc6NiYqPycyIL8kWllRMTMpNDAnRF5HPDQjNlBJWiI2JEFHVFcxKj0mMzY7JzsrWihfRAYKDBQfMR0XHAZRXEtJWgIcFBYWWk8oRCI3NyU6IzYkPFdfRDE3MSUnKTU3OTO-J1BJWjY_JyQgWllRMj0uPTtRSlAnNDowLTEtOTw9RF5HPDQjNlBJWiIyKj4gLFdfRCUgOkZRSlArNzY2KCY3OTk6PDMhN1cuSlARERgWREhHSEZJUktHVFcABR0XHVdJVENQSllRAQAMHCYaHBdHQkdDSlASChodASEAFBAQEhsKFgZRXENJWhYcFAAAGwEgAx4AGwEaCRwWWk9KSlAQCxAXNRoKDyYcCgcRERodREgDGRkAA15HGxoeFh4ADBwcCD8ADB0cAlBfWhYcCwIJHQEcRF5HGxoeFh4ADBAXJwZHQldBVkBQVURCS0BVLEVBXEJdQkVESEFRSy9RGw)  \r\n  \r\n\r\n---\r\n\r\n##  Evidencias visuales\r\n\r\n![Captura del crucigrama](https://url-de-tu-captura.com/cruci.png)  \r\n---\r\n\r\n##  Conclusiones finales\r\n\r\n**Aprendizaje obtenido:**  \r\n> Aprendí a mejorar mi habilidad visual con la sopa de letras y también aprendí a usar mejor la página web que se nos indicó \r\n**Dificultades enfrentadas:**  \r\n> se me dificultó trabajar este tipo de paginas en celular ya que es un poco complicado \r\n\r\n---\r\n\r\n##  Backlinks y referencias\r\n\r\n-  [Post original del profesor en Steem](https://www.frexus.dev/tag/steem/)  \r\n-  [Podcast del profesor en DTube ( https://audius.co/frexus/status-quo-digital)  \r\n-  [Mi comentario en el post original](https://steemit.com/@yeni02/comment1)\r\n\r\n---\r\n\r\n *Este post forma parte de la actividad de aprendizaje correspondiente a la unidad [nombre de la unidad].  \r\nPublicación realizada con fines educativos como parte del curso de [nombre del curso].*",
      "json_metadata": "{\"users\":[\"yeni02\"],\"image\":[\"https://url-de-tu-captura.com/cruci.png\"],\"links\":[\"https://steemit.com/web3/@frexus/la-trampa-de-los-bits-alquilados\",\"https://audius.co/frexus/status-quo-digital\",\"https://steemit.com/@usuarioalumno/practica1\",\"https://www.frexus.dev/report/decode.html?data=HVAVFBQKAwBHQlcyCIELERgcRF5HDBwHChdHQlckAxBHVFcAExAREQEfA1BfWiEBAwFHVFcSBQYMDhwHHyYcCBBRXFAWFwUSOR4ADAcSFVBJWhMcExwBLxoBAgFHQi5RKD0mPTsnNDMpMS8yIj1HVFcwKjMzPVdfRCYqMzA9RF5HKCc8NjsgPDQ3RF5HOyc6NiYqPycyIL8kWllRMTMpNDAnRF5HPDQjNlBJWiI2JEFHVFcxKj0mMzY7JzsrWihfRAYKDBQfMR0XHAZRXEtJWgIcFBYWWk8oRCI3NyU6IzYkPFdfRDE3MSUnKTU3OTO-J1BJWjY_JyQgWllRMj0uPTtRSlAnNDowLTEtOTw9RF5HPDQjNlBJWiIyKj4gLFdfRCUgOkZRSlArNzY2KCY3OTk6PDMhN1cuSlARERgWREhHSEZJUktHVFcABR0XHVdJVENQSllRAQAMHCYaHBdHQkdDSlASChodASEAFBAQEhsKFgZRXENJWhYcFAAAGwEgAx4AGwEaCRwWWk9KSlAQCxAXNRoKDyYcCgcRERodREgDGRkAA15HGxoeFh4ADBwcCD8ADB0cAlBfWhYcCwIJHQEcRF5HGxoeFh4ADBAXJwZHQldBVkBQVURCS0BVLEVBXEJdQkVESEFRSy9RGw\",\"https://www.frexus.dev/tag/steem/\",\"https://steemit.com/@yeni02/comment1\"],\"app\":\"steemit/0.2\"}"
    }
  ]
}
ferrey2replied to @frexus / t603pt
2025/11/20 01:20:18
parent authorfrexus
parent permlinkla-trampa-de-los-bits-alquilados
authorferrey2
permlinkt603pt
title
bodyla Web 3.0 propone un modelo donde el usuario recupera la propiedad, la soberanía digital y el control de sus datos, gracias a tecnologías como blockchain, NFTs, DApps y wallets con claves privadas. En un contexto real, aplicaría estos conocimientos: Protegiendo mis claves privadas como el núcleo de mi identidad digital. Publicando contenido en plataformas descentralizadas para asegurar que no pueda ser borrado o censurado.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #101005319/Trx c4c195d505c84b658339fd677805698ca95dad47
View Raw JSON Data
{
  "trx_id": "c4c195d505c84b658339fd677805698ca95dad47",
  "block": 101005319,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-20T01:20:18",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "la-trampa-de-los-bits-alquilados",
      "author": "ferrey2",
      "permlink": "t603pt",
      "title": "",
      "body": "la Web 3.0 propone un modelo donde el usuario recupera la propiedad, la soberanía digital y el control de sus datos, gracias a tecnologías como blockchain, NFTs, DApps y wallets con claves privadas.\nEn un contexto real, aplicaría estos conocimientos:\nProtegiendo mis claves privadas como el núcleo de mi identidad digital.\nPublicando contenido en plataformas descentralizadas para asegurar que no pueda ser borrado o censurado.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}
frexusupvoted (100.00%) @jess790 / t455v4
2025/11/18 18:16:39
voterfrexus
authorjess790
permlinkt455v4
weight10000 (100.00%)
Transaction InfoBlock #100968126/Trx a6e1488f0fbc860e5ad7b3ac4a84226406bf0c42
View Raw JSON Data
{
  "trx_id": "a6e1488f0fbc860e5ad7b3ac4a84226406bf0c42",
  "block": 100968126,
  "trx_in_block": 5,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-18T18:16:39",
  "op": [
    "vote",
    {
      "voter": "frexus",
      "author": "jess790",
      "permlink": "t455v4",
      "weight": 10000
    }
  ]
}
2025/11/13 17:13:00
voterkfeedgamer5
authorfrexus
permlinkcuando-la-imagen-cobro-vida-multimedia-e-integracion-grafica-con-moviles
weight10000 (100.00%)
Transaction InfoBlock #100823343/Trx d5df59aa0603720e9945b574ce85e847e33e7213
View Raw JSON Data
{
  "trx_id": "d5df59aa0603720e9945b574ce85e847e33e7213",
  "block": 100823343,
  "trx_in_block": 3,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-13T17:13:00",
  "op": [
    "vote",
    {
      "voter": "kfeedgamer5",
      "author": "frexus",
      "permlink": "cuando-la-imagen-cobro-vida-multimedia-e-integracion-grafica-con-moviles",
      "weight": 10000
    }
  ]
}
2025/11/13 16:45:42
parent author
parent permlink-multimedia
authorfrexus
permlinkcuando-la-imagen-cobro-vida-multimedia-e-integracion-grafica-con-moviles
titleCuando la Imagen Cobró Vida: Multimedia e Integración Gráfica con Móviles
body![uno.png](https://cdn.steemitimages.com/DQmVkRTuHnK7WqFErPvifX8YzYSYU9tMzuXDLiFsyTTCLh3/uno.png) > *“A veces, una simple animación puede decir más que mil líneas de código.”* --- Alicia Ramírez siempre había tenido una fascinación por las historias visuales. Mientras estudiaba ingeniería en sistemas, soñaba con unir dos mundos: la programación y el arte. Sin embargo, cada vez que abría su editor de código, las pantallas negras llenas de líneas incomprensibles le parecían un muro imposible de escalar. Hasta que un día, durante una clase sobre **multimedia e integración gráfica con dispositivos móviles**, descubrió algo que cambiaría su manera de ver la tecnología: **el poder de la imagen interactiva**. > “No se trata solo de mostrar información, sino de hacerla sentir”, le dijo su profesor mientras mostraba cómo una aplicación respondía al toque con colores, sonidos y animaciones suaves. Fue en ese momento cuando Alicia decidió que quería crear algo que conectara la emoción humana con la experiencia digital. --- Su proyecto final consistía en desarrollar una app móvil educativa para niños con dificultades de aprendizaje. El reto no era solo técnico —incluir imágenes, sonidos y videos—, sino **hacer que la aplicación fuera intuitiva y atractiva**. Durante semanas, experimentó con bibliotecas de animaciones, compresión de video y formatos de audio compatibles. Pero los problemas comenzaron a multiplicarse: - Los videos tardaban en cargar. - Las imágenes se distorsionaban en diferentes resoluciones. - Y el sistema de audio no sincronizaba con las animaciones. Frustrada, pensó en rendirse. Sentía que su sueño se diluía entre errores de compilación y advertencias de memoria insuficiente. --- Una noche, mientras revisaba el rendimiento de su app en un móvil viejo, su hermano menor se acercó curioso. Sin entender mucho, empezó a presionar botones al azar. De pronto, la aplicación —que hasta entonces parecía un desastre— cobró vida ante los ojos de ambos: una imagen colorida se movió, un sonido suave acompañó el gesto y el rostro del niño se iluminó con una sonrisa. Fue entonces cuando Alicia comprendió que **no necesitaba la app perfecta, sino una app que emocionara**. > “No todo debe ser perfecto… solo tiene que conectar con quien la usa.” Ese momento se convirtió en el punto de inflexión. Reescribió el código, optimizó recursos, implementó técnicas de *lazy loading* y usó herramientas de diseño responsivo. Poco a poco, la aplicación se volvió más ligera, dinámica y accesible. --- La clave estuvo en **integrar los recursos multimedia de forma inteligente**: - Utilizó imágenes vectoriales que se adaptaban a cualquier pantalla. - Implementó sonidos comprimidos sin perder calidad. - Y añadió pequeñas animaciones que guiaban la atención del usuario sin distraerlo. El resultado final fue sorprendente: una app funcional, visualmente atractiva y con un rendimiento óptimo incluso en dispositivos de gama media. Pero más allá del logro técnico, Alicia había aprendido que **la verdadera integración multimedia ocurre cuando la tecnología deja de ser visible y el usuario solo siente la experiencia**. --- Al presentar su proyecto, la sala quedó en silencio. Luego, una ronda de aplausos sinceros llenó el aula. Su profesor la miró y le dijo: > “Alicia, lograste algo más que una aplicación: lograste comunicar.” Ese día comprendió que el diseño multimedia no solo es una cuestión de herramientas, sino de empatía. Cada color, cada sonido y cada transición visual pueden ser puentes entre el mundo digital y la emoción humana. --- Hoy, Alicia trabaja en una startup que desarrolla experiencias interactivas para móviles. Cada vez que inicia un nuevo proyecto, recuerda aquella frase que la acompañó desde su primera app: > **“El código crea la estructura, pero la emoción le da vida.”** --- > *“La tecnología no solo se programa, también se siente.”*
json metadata{"tags":["-multimedia","-desarrollomovil","-innovaciondigital"],"image":["https://cdn.steemitimages.com/DQmVkRTuHnK7WqFErPvifX8YzYSYU9tMzuXDLiFsyTTCLh3/uno.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #100822797/Trx 3471e4999d25422ee15b8089e26c2ab41cd335ff
View Raw JSON Data
{
  "trx_id": "3471e4999d25422ee15b8089e26c2ab41cd335ff",
  "block": 100822797,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-13T16:45:42",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "-multimedia",
      "author": "frexus",
      "permlink": "cuando-la-imagen-cobro-vida-multimedia-e-integracion-grafica-con-moviles",
      "title": "Cuando la Imagen Cobró Vida: Multimedia e Integración Gráfica con Móviles",
      "body": "![uno.png](https://cdn.steemitimages.com/DQmVkRTuHnK7WqFErPvifX8YzYSYU9tMzuXDLiFsyTTCLh3/uno.png)\n\n\n> *“A veces, una simple animación puede decir más que mil líneas de código.”*\n\n---\n\n\n\nAlicia Ramírez siempre había tenido una fascinación por las historias visuales. Mientras estudiaba ingeniería en sistemas, soñaba con unir dos mundos: la programación y el arte. Sin embargo, cada vez que abría su editor de código, las pantallas negras llenas de líneas incomprensibles le parecían un muro imposible de escalar.\n\nHasta que un día, durante una clase sobre **multimedia e integración gráfica con dispositivos móviles**, descubrió algo que cambiaría su manera de ver la tecnología: **el poder de la imagen interactiva**.\n\n> “No se trata solo de mostrar información, sino de hacerla sentir”, le dijo su profesor mientras mostraba cómo una aplicación respondía al toque con colores, sonidos y animaciones suaves.\n\nFue en ese momento cuando Alicia decidió que quería crear algo que conectara la emoción humana con la experiencia digital.\n\n---\n\n\n\nSu proyecto final consistía en desarrollar una app móvil educativa para niños con dificultades de aprendizaje. El reto no era solo técnico —incluir imágenes, sonidos y videos—, sino **hacer que la aplicación fuera intuitiva y atractiva**.\n\nDurante semanas, experimentó con bibliotecas de animaciones, compresión de video y formatos de audio compatibles. Pero los problemas comenzaron a multiplicarse:  \n- Los videos tardaban en cargar.  \n- Las imágenes se distorsionaban en diferentes resoluciones.  \n- Y el sistema de audio no sincronizaba con las animaciones.  \n\nFrustrada, pensó en rendirse. Sentía que su sueño se diluía entre errores de compilación y advertencias de memoria insuficiente.\n\n---\n\n\n\nUna noche, mientras revisaba el rendimiento de su app en un móvil viejo, su hermano menor se acercó curioso. Sin entender mucho, empezó a presionar botones al azar. De pronto, la aplicación —que hasta entonces parecía un desastre— cobró vida ante los ojos de ambos:  \nuna imagen colorida se movió, un sonido suave acompañó el gesto y el rostro del niño se iluminó con una sonrisa.\n\nFue entonces cuando Alicia comprendió que **no necesitaba la app perfecta, sino una app que emocionara**.\n\n> “No todo debe ser perfecto… solo tiene que conectar con quien la usa.”\n\nEse momento se convirtió en el punto de inflexión. Reescribió el código, optimizó recursos, implementó técnicas de *lazy loading* y usó herramientas de diseño responsivo. Poco a poco, la aplicación se volvió más ligera, dinámica y accesible.\n\n---\n\n\n\nLa clave estuvo en **integrar los recursos multimedia de forma inteligente**:  \n- Utilizó imágenes vectoriales que se adaptaban a cualquier pantalla.  \n- Implementó sonidos comprimidos sin perder calidad.  \n- Y añadió pequeñas animaciones que guiaban la atención del usuario sin distraerlo.\n\nEl resultado final fue sorprendente: una app funcional, visualmente atractiva y con un rendimiento óptimo incluso en dispositivos de gama media. Pero más allá del logro técnico, Alicia había aprendido que **la verdadera integración multimedia ocurre cuando la tecnología deja de ser visible y el usuario solo siente la experiencia**.\n\n---\n\n\n\nAl presentar su proyecto, la sala quedó en silencio. Luego, una ronda de aplausos sinceros llenó el aula. Su profesor la miró y le dijo:  \n> “Alicia, lograste algo más que una aplicación: lograste comunicar.”\n\nEse día comprendió que el diseño multimedia no solo es una cuestión de herramientas, sino de empatía. Cada color, cada sonido y cada transición visual pueden ser puentes entre el mundo digital y la emoción humana.\n\n---\n\n\n\nHoy, Alicia trabaja en una startup que desarrolla experiencias interactivas para móviles. Cada vez que inicia un nuevo proyecto, recuerda aquella frase que la acompañó desde su primera app:\n\n> **“El código crea la estructura, pero la emoción le da vida.”**\n\n---\n\n\n> *“La tecnología no solo se programa, también se siente.”*",
      "json_metadata": "{\"tags\":[\"-multimedia\",\"-desarrollomovil\",\"-innovaciondigital\"],\"image\":[\"https://cdn.steemitimages.com/DQmVkRTuHnK7WqFErPvifX8YzYSYU9tMzuXDLiFsyTTCLh3/uno.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
2025/11/12 20:55:18
voteromar19
authorfrexus
permlinkentre-pantallas-y-voces
weight10000 (100.00%)
Transaction InfoBlock #100799035/Trx 4654a07e35b255bc88d6e2b9695feecb657089d7
View Raw JSON Data
{
  "trx_id": "4654a07e35b255bc88d6e2b9695feecb657089d7",
  "block": 100799035,
  "trx_in_block": 2,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-12T20:55:18",
  "op": [
    "vote",
    {
      "voter": "omar19",
      "author": "frexus",
      "permlink": "entre-pantallas-y-voces",
      "weight": 10000
    }
  ]
}
frexuspublished a new post: entre-pantallas-y-voces
2025/11/12 19:15:54
parent author
parent permlinkdispositivosinteligentes
authorfrexus
permlinkentre-pantallas-y-voces
titleEntre Pantallas y Voces
body![uno.png](https://cdn.steemitimages.com/DQmSduSBQVTt8JQUMgouBAsXTuBkh32VwvGrVLbSeWT2cep/uno.png) > “A veces, la tecnología no solo transforma los espacios… sino la forma en que vivimos en ellos.” Cuando Lucía, diseñadora gráfica freelance de 32 años, decidió mudarse a un pequeño departamento en Guadalajara, no imaginaba que una pantalla inteligente cambiaría por completo su relación con la tecnología. Durante años había trabajado rodeada de gadgets: dos monitores, una tableta, su laptop y un sinfín de apps. Pero al llegar la pandemia, su casa se volvió su oficina, su gimnasio y su refugio. Buscando equilibrio y control, compró un Google Nest Hub, pensando que solo le serviría para reproducir música o controlar las luces. > Lo que no sabía era que esa pequeña pantalla sería el centro de su nueva forma de vida. Los primeros días fueron un experimento encantador. Lucía le pedía al asistente que encendiera la cafetera, mostrara el clima o leyera las noticias. Pero pronto empezó a depender de la pantalla para todo. Cada notificación era una interrupción. Cada “Ok Google” parecía reemplazar su propio pensamiento. Su pareja notó que Lucía hablaba más con la máquina que con él. La casa, antes cálida, empezó a sonar como una oficina automatizada: "Luz encendida, tarea pendiente, reunión en 5 minutos." Una noche, durante una videollamada, el sistema se congeló justo cuando presentaba un proyecto importante. Lucía, frustrada, golpeó la mesa. “¡Esto no es inteligencia, es dependencia!”, gritó. Decidió entonces reaprender a convivir con la tecnología. No quería eliminarla, sino humanizarla. Pasó semanas configurando rutinas más simples, integrando solo lo necesario: + Horarios de trabajo sin notificaciones. + Rutinas de descanso con música ambiental. + Control de luces por voz, pero sin automatismos invasivos. Descubrió también el poder de crear sus propias aplicaciones para la pantalla, usando Flutter y Node-RED, adaptadas a su estilo de vida. Desarrolló un pequeño panel que mostraba su estado de ánimo del día (según sus respuestas matutinas), la lista de tareas esenciales y un recordatorio inspirador. > “Hoy puedes empezar de nuevo. Tu entorno digital también puede tener alma.” Lucía entendió que una pantalla inteligente no es solo un asistente visual; es un reflejo de cómo nos relacionamos con el mundo digital. Puede ser un sirviente mecánico, si la dejamos decidir por nosotros. O puede ser un aliado creativo, si la personalizamos para potenciarnos. Hoy, su casa no solo le responde: la acompaña. Y en su escritorio, junto a la pantalla, una nota escrita a mano dice: > “La inteligencia no está en el dispositivo, sino en cómo decidimos usarlo.” El caso de Lucía ilustra un dilema actual: la delgada línea entre automatización y autonomía humana. Las aplicaciones para pantallas inteligentes nos ofrecen poder, comodidad y control visual, pero también nos retan a redefinir nuestra relación con la tecnología. La tendencia hacia dispositivos híbridos —táctiles, parlantes, contextuales— nos empuja a diseñar experiencias donde la voz, la vista y la emoción coexisten. > La tecnología no debe invadir la vida; debe respirar con ella. Lucía ya no ve su pantalla como un espejo de datos, sino como un diálogo constante entre lo humano y lo digital. Cada comando, cada widget, cada luz encendida… es una conversación con su propio orden interior. > “Las pantallas inteligentes no solo iluminan habitaciones; iluminan conciencias.”
json metadata{"tags":["dispositivosinteligentes","iot"],"image":["https://cdn.steemitimages.com/DQmSduSBQVTt8JQUMgouBAsXTuBkh32VwvGrVLbSeWT2cep/uno.png"],"app":"steemit/0.2","format":"markdown"}
Transaction InfoBlock #100797048/Trx 79228399dd45dddb7c79b69d27d388b0147331e3
View Raw JSON Data
{
  "trx_id": "79228399dd45dddb7c79b69d27d388b0147331e3",
  "block": 100797048,
  "trx_in_block": 0,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-12T19:15:54",
  "op": [
    "comment",
    {
      "parent_author": "",
      "parent_permlink": "dispositivosinteligentes",
      "author": "frexus",
      "permlink": "entre-pantallas-y-voces",
      "title": "Entre Pantallas y Voces",
      "body": "![uno.png](https://cdn.steemitimages.com/DQmSduSBQVTt8JQUMgouBAsXTuBkh32VwvGrVLbSeWT2cep/uno.png)\n\n\n> “A veces, la tecnología no solo transforma los espacios… sino la forma en que vivimos en ellos.”\n\nCuando Lucía, diseñadora gráfica freelance de 32 años, decidió mudarse a un pequeño departamento en Guadalajara, no imaginaba que una pantalla inteligente cambiaría por completo su relación con la tecnología.\n\nDurante años había trabajado rodeada de gadgets: dos monitores, una tableta, su laptop y un sinfín de apps. Pero al llegar la pandemia, su casa se volvió su oficina, su gimnasio y su refugio.\nBuscando equilibrio y control, compró un Google Nest Hub, pensando que solo le serviría para reproducir música o controlar las luces.\n\n> Lo que no sabía era que esa pequeña pantalla sería el centro de su nueva forma de vida.\n\nLos primeros días fueron un experimento encantador.\nLucía le pedía al asistente que encendiera la cafetera, mostrara el clima o leyera las noticias. Pero pronto empezó a depender de la pantalla para todo.\n\nCada notificación era una interrupción.\nCada “Ok Google” parecía reemplazar su propio pensamiento.\n\nSu pareja notó que Lucía hablaba más con la máquina que con él.\nLa casa, antes cálida, empezó a sonar como una oficina automatizada: \"Luz encendida, tarea pendiente, reunión en 5 minutos.\"\n\nUna noche, durante una videollamada, el sistema se congeló justo cuando presentaba un proyecto importante.\nLucía, frustrada, golpeó la mesa.\n“¡Esto no es inteligencia, es dependencia!”, gritó.\n\nDecidió entonces reaprender a convivir con la tecnología.\nNo quería eliminarla, sino humanizarla.\n\nPasó semanas configurando rutinas más simples, integrando solo lo necesario:\n\n + Horarios de trabajo sin notificaciones.\n + Rutinas de descanso con música ambiental.\n + Control de luces por voz, pero sin automatismos invasivos.\n\nDescubrió también el poder de crear sus propias aplicaciones para la pantalla, usando Flutter y Node-RED, adaptadas a su estilo de vida.\nDesarrolló un pequeño panel que mostraba su estado de ánimo del día (según sus respuestas matutinas), la lista de tareas esenciales y un recordatorio inspirador.\n\n> “Hoy puedes empezar de nuevo. Tu entorno digital también puede tener alma.”\n\nLucía entendió que una pantalla inteligente no es solo un asistente visual; es un reflejo de cómo nos relacionamos con el mundo digital.\n\nPuede ser un sirviente mecánico, si la dejamos decidir por nosotros.\nO puede ser un aliado creativo, si la personalizamos para potenciarnos.\n\nHoy, su casa no solo le responde: la acompaña.\nY en su escritorio, junto a la pantalla, una nota escrita a mano dice:\n\n> “La inteligencia no está en el dispositivo, sino en cómo decidimos usarlo.”\n\nEl caso de Lucía ilustra un dilema actual: la delgada línea entre automatización y autonomía humana.\nLas aplicaciones para pantallas inteligentes nos ofrecen poder, comodidad y control visual, pero también nos retan a redefinir nuestra relación con la tecnología.\n\nLa tendencia hacia dispositivos híbridos —táctiles, parlantes, contextuales— nos empuja a diseñar experiencias donde la voz, la vista y la emoción coexisten.\n\n> La tecnología no debe invadir la vida; debe respirar con ella.\n\nLucía ya no ve su pantalla como un espejo de datos, sino como un diálogo constante entre lo humano y lo digital.\nCada comando, cada widget, cada luz encendida… es una conversación con su propio orden interior.\n\n> “Las pantallas inteligentes no solo iluminan habitaciones; iluminan conciencias.”",
      "json_metadata": "{\"tags\":[\"dispositivosinteligentes\",\"iot\"],\"image\":[\"https://cdn.steemitimages.com/DQmSduSBQVTt8JQUMgouBAsXTuBkh32VwvGrVLbSeWT2cep/uno.png\"],\"app\":\"steemit/0.2\",\"format\":\"markdown\"}"
    }
  ]
}
asilegreplied to @frexus / t5fq2d
2025/11/09 01:13:24
parent authorfrexus
parent permlinktransacciones-en-aplicaciones-web-progresivas
authorasileg
permlinkt5fq2d
title
bodyEn este caso de estudio se habla sobre cómo manejar transacciones en aplicaciones offline y explica de forma clara la importancia de mantener la consistencia de los datos y cómo los errores pueden afectar emocionalmente al usuario. Como también se menciona la empatía del desarrollador y el uso de indicadores visuales que mejoran la confianza y la experiencia de quienes usan la app.
json metadata{"app":"steemit/0.2"}
Transaction InfoBlock #100689210/Trx 435a28760f47390e58261b64e847df28070e5684
View Raw JSON Data
{
  "trx_id": "435a28760f47390e58261b64e847df28070e5684",
  "block": 100689210,
  "trx_in_block": 4,
  "op_in_trx": 0,
  "virtual_op": 0,
  "timestamp": "2025-11-09T01:13:24",
  "op": [
    "comment",
    {
      "parent_author": "frexus",
      "parent_permlink": "transacciones-en-aplicaciones-web-progresivas",
      "author": "asileg",
      "permlink": "t5fq2d",
      "title": "",
      "body": "En este caso de estudio se habla sobre cómo manejar transacciones en aplicaciones offline y explica de forma clara la importancia de mantener la consistencia de los datos y cómo los errores pueden afectar emocionalmente al usuario. Como también se menciona la empatía del desarrollador y el uso de indicadores visuales que mejoran la confianza y la experiencia de quienes usan la app.",
      "json_metadata": "{\"app\":\"steemit/0.2\"}"
    }
  ]
}

Account Metadata

POSTING JSON METADATA
profile{"website":"https://www.frexus.dev","version":2}
JSON METADATA
None
{
  "posting_json_metadata": {
    "profile": {
      "website": "https://www.frexus.dev",
      "version": 2
    }
  },
  "json_metadata": {}
}

Auth Keys

Owner
Single Signature
Public Keys
STM6ZeHNU7bHHztAqddj54fijJzYdb5ZVj77qfPWXBMF1GB6frreZ1/1
Active
Single Signature
Public Keys
STM8gnecVigwSQuJvRB3r6XLVFDL2QBZA63huJEbmzjjQvacTCwKD1/1
Posting
Single Signature
Public Keys
STM6JkGZz29Yxh1MpBF3i2wWL7jNn13ASYMpxHT3baRSTXcXSimRu1/1
Memo
STM79DHvARHTwRoVGEj8ndzNxN7rvxEM84RstEdbYHHM9NKWC2Dz6
{
  "owner": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6ZeHNU7bHHztAqddj54fijJzYdb5ZVj77qfPWXBMF1GB6frreZ",
        1
      ]
    ]
  },
  "active": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM8gnecVigwSQuJvRB3r6XLVFDL2QBZA63huJEbmzjjQvacTCwKD",
        1
      ]
    ]
  },
  "posting": {
    "weight_threshold": 1,
    "account_auths": [],
    "key_auths": [
      [
        "STM6JkGZz29Yxh1MpBF3i2wWL7jNn13ASYMpxHT3baRSTXcXSimRu",
        1
      ]
    ]
  },
  "memo": "STM79DHvARHTwRoVGEj8ndzNxN7rvxEM84RstEdbYHHM9NKWC2Dz6"
}

Witness Votes

0 / 30
No active witness votes.
[]