Blog Feed

programación

¿Qué es un algoritmo?

En el ámbito de las tecnologías de la información y la comunicación (TICs) una de las tareas más importantes es el desarrollo de programas de computación. Podemos definir al algoritmo como un procedimiento de cálculo que consiste en seguir un conjunto ordenado y finito de instrucciones que conduce a la solución de un problema. El lenguaje algorítmico se trata de un lenguaje rígido con pocas instrucciones que sirven para expresar lo que queremos que la computadora haga.

Por lo tanto, podemos pensar en un algoritmo como una receta o guión que hay que seguir para resolver un problema determinado, normalmente a partir de una información que tenemos de entrada.

Un algoritmo nos indica las acciones que hay que seguir para resolver un problema concreto, pero necesitamos un autómata (procesador) que sea capaz de ejecutarlo en un entorno afectado. Un programa de computación es sólo la codificación de un algoritmo en un lenguaje que la computadora entiende.

Podríamos pensar en una lavadora como un autómata; es una máquina capaz de realizar una tarea de manera autómata, en este caso, lavar la ropa.

Si le pedimos a la lavadora que lave la ropa, la lavadora seguirá el siguiente proceso:

  • utilizar agua y jabón del cajón.
  • calentar el agua a 40 grados.
  • dar vueltas durante 20 minutos. Es decir, lavar.
  • expulsar el agua.
  • incorporar más agua.
  • dar vueltas durante 10 minutos.
  • dar vueltas durante 10 minutos (aclarado).
  • expulsar el agua.
  • centrifugar

Podríamos considerar, por lo tanto, que todo este conjunto de acciones que la lavadora ha llevado a cabo, es el algoritmo diseñado para lavar la ropa.

Filosofía

¿Lo binario como caverna o posibilidad?

Luego de estar muchos días y horas programando, mirando fijamente una pantalla, decido frenar y filosofar un rato, ¿qué es todo este código que estoy escribiendo? ¿En qué mundo estoy viviendo? ¿En el binario?

¿Es esta virtualidad una posibilidad más de la realidad? ¿Software y realidad forman parte de una enorme hiper-realidad? ¿Será lo virtual, algún día, nuestro principal mundo de vida?

Pienso en Platón, en el Mito de la Caverna, en Matrix, y decido escribir esto:

“Imagina un antro subterráneo… hombres encadenados desde la infancia, de suerte que no puedan mudar de lugar ni volver la cabeza a causa de las cadenas que les sujetan las piernas y cuello.” Así empieza el Mito de la Caverna que forma parte del libro VII de la República de Platón.

Detrás de estos prisioneros hay un muro con un pasillo. Por el pasillo circulan carceleros portando objetos. Utilizando una hoguera proyectan las sombras de dichos objetos en una pared que los prisioneros pueden ver. Los prisioneros creen que esas sombras son la realidad o el conocimiento verdadero; no pueden conocer nada más que esas sombras.

Un día, uno de estos prisioneros se libera y decide escapar; se arrastra penosamente por un túnel ascendente y logra salir de la caverna. Fuera de la cueva contempla una nueva realidad más auténtica y más bella.  

Mediante esta alegoría, Platón explica que hay dos mundos, el mundo sensible (el de las apariencias) y un mundo superior, el mundo de las ideas. Por lo tanto, la alegoría de la caverna detalla el proceso de elevación progresiva en el conocimiento humano. El filósofo platónico para “salir de la caverna” debe superar el ámbito de la opinión o doxa para acceder al ámbito del saber. El filósofo debe abandonar las falsas creencias, los prejuicios ligados a la costumbre; debe romper con su vida cómoda y confortable basada en el engaño. 

Finalmente el hombre libre regresa a la caverna para compartir sus conocimientos con los prisioneros (una especie Morfeo de Matrix), siente la necesidad de ayudarles a ascender al mundo real.

Morfeo y Neo escapan de la Matrix y se enfrentan con una dura visión: el mundo es un desierto apocalíptico dominado por las máquinas. No hay belleza en ese mundo; los humanos son esclavizados y viven atrapados en la caverna platónica creada por las máquinas. 

Me pregunto, ¿es justo destruir la realidad virtual de millones de personas para arrojarlas a un mundo peor en nombre de la Libertad? Neo, hacker y líder de la revolución humana, ¿es liberador o tirano?¿Existe una única posible realidad digna de ser vivida?

¿Qué pastilla elijo?

Antes me pregunto:

¿Es la libertad el mayor bien posible? ¿Acaso no somos también esclavos de las leyes físicas y la finitud temporal? Y en última instancia, yendo aún más lejos en este juego-experimento mental, tampoco sabemos a ciencia cierta si ahora mismo no somos prisioneros de un dios creador y devenimos día a día dentro de un simulacro tipo escape room existencial.

¿Es nuestra realidad monolítica o sólo es una versión más de lo posible? ¿Una comunidad virtual es, ontológicamente hablando, inferior a tomar cerveza con amigos en un bar?

A group of young British children watching television in October 1988. (Photo by Express/Getty Images)

Tal vez algún día nuestros sistemas operativos biológicos humanos y la realidad en la cual nos vemos obligados a estar inmersos, queden obsoletas. Tal vez el futuro de la Humanidad ya no está en este mundo sino dentro a una multi-realidad más amplia donde las posibilidades, las cavernas, los escapes de las cavernas, las cosmovisiones y las opciones vitales sean casi infinitas.

¿En cuál de todas las realidad será posible alcanzar el Bien Supremo para una vida plena? Es decir, dónde seremos capaces de alcanzar las mayores cuotas de virtud, felicidad y conocimiento. ¿Lo será en el mundo de siempre? Esclavos de lo biológico y de la cotidianidad más desesperante, ¿lo será en el mundo del código? Donde corremos riesgo de ser esclavos de las máquinas y las apariencias digitales.

Es posible que en esta hiper-realidad ya no seamos prisioneros de una caverna sino de miles de cavernas. Como las muñecas rusas, serán cavernas dentro de cavernas. Viviremos, tal vez, dentro de un video juego intentando escapar de una Matrix para acceder al siguiente nivel. Suena estimulante y claustrofóbico a la vez.

¿Mito, logos o binario?

Aún no sé qué pastilla tomar, ¿azul o roja? Tal vez las dos a la vez y ver qué pasa.

programación

Ingeniería de Software: UML y POO

Excelentes videos para aprender las bases de la POO y UML:

Clases y objetos https://vimeo.com/191773526

Atributos https://vimeo.com/191773624

Asociaciones básicas https://vimeo.com/191773694

Clases asociativas https://vimeo.com/191773815

Asociaciones avanzadas https://vimeo.com/191773894

Herencias https://vimeo.com/191773992

Reglas de integridad, información derivada y nuevos tipos de datoshttps://vimeo.com/191774072

Análisis UML (ejemplo práctico) https://vimeo.com/191774202

Contenidos: Ricard Burriel y Elena Planas
Locución: Ricard Burriel
Vídeo de soporte a la asignatura «Ingeniería del Software» / UOC

fundamentos de los computadores, programación, robótica

Sensores y actuadores: del mundo físico al eléctrico.

La electrónica es una herramienta muy versátil que nos permite hacer un montón de cosas; por ejemplo: tomar señales del mundo físico y llevarlas al mundo electrónico. Podemos procesar información, trabajar sobre esas señales que hemos adquirido y realizar acciones sobre el mundo físico. 

Los sensores y los actuadores:

  • Los sensores detectan formas de energía, como pueden ser luz o fuerza, y las convierten en una salida de información legible por un sistema electrónico.
  • Los actuadores también reciben una entrada y generan una salida, pero funcionan en sentido opuesto a un sensor. Un actuador es un transductor que recibe información y produce una salida, consistente en alguna forma de energía física.

Los sensores son los que nos permiten capturar señales del mundo físico; el procesador, que nos permite procesar estas señales y, luego, los actuadores, que nos permiten actuar sobre el mundo físico.

Sensores: son los que nos permiten adquirir señales y funcionan para diferentes variables: temperatura, presión, sonido, luz, distancia, aceleración, ángulo, señales eléctricas, gas, partículas, etcétera. Existe una infinidad de ellos.

Procesador: permite procesar información. Hay diversos tipos: analógicos, digitales. Dentro de los digitales, están programables o no programables.

Actuadores: nos permiten realizar acciones. Tenemos de diverso tipo, por ejemplo, sonido: un parlante. También existen de calor, por ejemplo, una estufa o una resistencia eléctrica.

La electricidad es crucial cuando queremos procesar información. Cuando pensamos en capturar, procesar o entregar señales, inevitablemente, pensamos en el uso de la electricidad

Ejemplos de sensores y actuadores:

  • Un micrófono convierte la energía acústica (vibraciones sonoras: oscilaciones en la presión del aire) en energía eléctrica (variaciones de voltaje). 
  • Un altavoz, sigue el camino contrario, transforma la corriente eléctrica en vibraciones sonoras. 
  • Una cámara digital, convierte la energía lumínica transportada por los fotones en corriente eléctrica. 
  • Una pantalla de ordenador sigue el camino inverso al anterior. Transforma la corriente eléctrica en energía lumínica a través de una matriz de puntos luminosos independientes. 
  • Un ventilador, convierte la energía eléctrica en energía mecánica (movimiento del aspa del ventilador).
  • Una estufa doméstica, transformando la energía eléctrica en térmica.