jueves, 27 de febrero de 2014

Caso 2

Para empezar y a modo de introducción del tema me gustaría, en primer lugar, definir qué es lenguaje. A grandes rasgos se trata de "un sistema de comunicación estructurado para el que existe un contexto de uso y ciertos principios combinatorios formales". Existen varios tipos de lenguajes: el natural y el artificial. Los naturales son aquellos que se aprenden de manera inconsciente durante los primeros años de vida del individuo (lenguaje humano y animal) y los artificiales son aquellos cuyo aprendizaje es más planificado, deliberado conscientemente (lenguaje formal). Discriminamos entre uno u otro en función a su los seres u objetos usuarios del mismo y por ende a quienes van dirigidos y el contexto en el que se produce ese tipo concreto de lenguaje.

Los seres humanos poseemos la facultad y capacidad de comunicarnos a través de un conjunto de signos orales o escritos que, articulados de determinada manera, conforman lo que consideramos lenguaje humano. Se trata de una herramienta que además nos permite la socialización e interacción entre iguales y su adquisición y uso nos posibilita formas específicas de relación y acción sobre el medio así como dar lugar a formas concretas de la conducta. Por este motivo debemos ser conscientes de que su falta o deficiencia tiene consecuencias en el aprendizaje, en la conformación del conocimiento de las diferentes áreas y en el propio desarrollo del pensamiento. 

Los animales, también, por su parte, poseen un lenguaje propio que consiste en el conjunto de señales de diversos tipos (olfativas, visuales, auditivas...) que permiten al resto de individuos de la misma especie (o incluso en casos muy puntuales, de distinta especie) "interpretar" el sentido de ese mensaje y actuar en consecuencia.

Por último también poseemos los lenguajes formales, propios de campos específicos como es el caso de las ciencias (por ejemplo las matemáticas). Dentro de este tipo de lenguaje se encuentran aquel tipo de lenguaje en el que nos vamos a centrar en esta entrada: el lenguaje de programación.

Por tanto podemos definir el lenguaje de programación como aquel tipo de lenguaje artificial creado por el hombre que tiene como fin indicar a un programa qué ordenes tiene que llevar a cabo y cómo tiene que llevarlas a cabo. Todo lenguaje de programación posee tres elementos fundamentales:
  1. Un conjunto limitado de símbolos, del que definimos el léxico o vocabulario del lenguaje.
  2. Un conjunto limitado de reglas, la gramática del lenguaje, a partir del cual construimos las sentencias correctas del mismo (sintaxis).
  3. La semántica, que asocia un significado (acción que se ha de llevar a cabo) a cada posible construcción del lenguaje.
En base a la búsqueda exhaustiva que he realizado durante estos días destaco como los cinco lenguajes de programación más utilizados los siguientes:


  • PYTHON: Ha sido diseñado por Guido van Rossum y está en continuo crecimiento por un gran grupo de desarrolladores. Una de las grandes ventajas que posee es la gratuidad de su intérprete, que puede descargarse desde la página web (http://www.python.org), con dos versiones para cualquier plataforma en uso (PC con Linux, con Microsoft Windows, Macintosh de Apple...). Se trata de un lenguaje muy expresivo, es decir, los programas con este lenguaje son muy compactos, motivo por el cual muchas veces es considerado como lenguaje de programación de muy alto nivel. También es muy legible gracias a su elegante sintaxis y permite la escritura de programas cuya lectura resulta más fácil que si fuera con otros lenguajes. Además, ofrece un entorno interactivo que facilita la realización de pruebas y ayuda a despejar dudas acerca del lenguaje. En el entorno de ejecución posee una gran capacidad de detección de errores que se escapan de la mano de los compiladores y proporciona una información detallada para detectarlos y corregirlos. Phyton puede usarse como lenguaje imperativo procedimental o lenguaje orientado a objetos y posee un rico juego de estructuras de datos que se pueden manipular de modo sencillo.
  • C: Su diseño se remonta a los años 70, sufriendo variaciones a lo largo del tiempo. Fue creado por Brian Kernighan y Dennis Ritchie de la empresa de telecomunicaciones AT&T. En los 80 fue modificado y caracterizado por el American National Standards Institute (ANSI) convirtiéndose como ANSI C y conocido como C89. En los 90 se incoporaron nuevas características que mejoraron el lenguaje, dando lugar a la segunda versión de ANSI C, más conocida como C99. Se trata de uno de los lenguajes de programación más utilizados en el mundo profesional, ya que con el se han desarrollado la mayoría de aplicaciones libres y comerciales (por ejemplo, el sistema operativo Linux, que se ha desarrollado en C en su totalidad). Es un lenguaje de propósito general que permite controlar con gran precisión los factores que influyen directamente en la eficiencia de los programas aunque sujeto a nuestra atención en los numerosos detalles, considerándolo un lenguaje intermedio.
  • R: Fue iniciado en 1995 por Robert Gentleman y Ross Ihaka del Statistics Departament of University of Auckland. Se trata de la implementación libre del programa S, que usa el S-PLUS. Aunque existen diferencias entre ambos, son casi idénticos. Con el paso del tiempo ha ganado un gran número de usuarios y desarrolladores. Actualmente es desarrollado por el R Development Core Team compuesto por un grupo de desarrolladores voluntarios. El principal lugar de información es su página web (http://www.r-project.org) y salen nuevas versiones de manera periódica. Se caracteriza por distribuirse gratuitamente GNU con libertad para usar, copiar y distribuir. Hay versiones disponibles para diferentes sistemas operativos como Linux, Windows, MacOS, Unix. También tiene una gran cantidad de funciones estadísticas escritas y un gran número de paquetes que añaden más funciones (la mayoría de análisis estadísticos convencionales pueden realizarse en R). Trabaja mediante comandos aunque se han desarrollado interfaces gráficos (GUI) que hacen que su uso sea más complejo pero su entorno más flexible.
  • Java: Creado por James Gosling (emacs) y Bill Joy (Sun), es descendiente de un lenguaje conocido con el nombre de "Oak" cuyo principal propósito era el de la creación de software para la televisión interactiva, y cuyas características eran: pequeño, robusto, independiente de la máquina y orientado a objetos. Siendo un fracaso este primer proyecto, los creadores apostaron por Internet con el lema <<La red es la computadora>>, diseñando Java en base a las siguientes características: independiente de la máquina, seguro para trabajar en la red y potente para constutuir un código nativo. Se caracteriza por ser un lenguaje compilado e interpretado, es decir, todo programa que utilice Java como lenguaje ha de compilarse primero, generando un código (bytecodes) que es posteriormente interpretado por una máquina virtual, consiguiendo la independencia de la máquina, pues se ejecutan en máquinas virtuales que son dependientes de la plataforma. Es un lenguaje orientado a objetos de propósito general por lo que se puede utilizar para cualquier tipo de proyecto. Su sintaxis es parecida a la de C y C++ pero no se trata de ningún tipo de evolución de los mismos. En su diseño también se puso especial antención en su seguridad, tanto a nivel de programador como de máquina virtual. Otra de sus características es la de su preparación para la programación concurrente sin tener que utilizar otro tipo de biblioteca, además de un gestor de seguridad con el que poder restringir el acceso a los recursos del sistema.
  • HTML: Su origen nos traslada a 1980, cuando el físico Tim Berners-Lee, trabajador para la Organización Europea para la Investigación Nuclear (C.E.R.N., en inglés) propuso un nuevo sistema de hipertexto con el fin de compartir documentos. Tim, una vez terminó su sistema de hipertexto, lo presentó a una convocatoria creada con el fin de desarrollarlo orientado a Internet, que, por aquel entonces, no tenía nada que ver con la red que conocemos en la actualidad. Además, trabajó junto con Robert Cailliau y juntos crearon la llamada WorldWideWeb o W3, que ganó el concurso. A partir de este momento, con el paso del tiempo, fueron surgiendo una serie de versiones de HTML mejoradas, siendo la primera de estas HTML 2.0 (1995), convirtiéndose en el primer lenguaje oficial HTML. Las versiones posteriores (HTML 3.2, HTML 4.0, HTML 4.01) fueron siendo cada vez más sofisticadas que las anteriores, ganando peso conforme iban siendo publicadas y finalmente provocando que hubiese entidades como Apple, Mozilla y Ópera creasen una nueva asociación, WHATWG, que se encargase de manera personalizada en este tipo de sistemas, surgiendo finalmente en marzo de 2005 la versión 5.0 que conocemos en la actualidad. HTML es el lenguaje que utilizan todos los programadores a la hora de crear una web. Este código escrito es interpretado por nuestros navegadores y "conforma aquello que podemos visualizar en la pantalla". Se trata de un lenguaje universal, de manera que cualquier navegador de cualquier sistema operativo es capaz de interpretarlo sin problemas. Aunque en un principio se creó exclusivamente para documentos electrónicos, ahora su uso cubre un espectro mucho más amplo (buscadores, tiendas online...). 

Hasta la fecha, no conocía prácticamente nada que guardase relación con los lenguajes de programación. Cabe decir que este trabajo de búsqueda me ha abierto los ojos en cuanto a la inmensidad de lenguajes de programación existentes, sus funcionalidades y, por supuesto la complejidad de cada uno de ellos. A día de hoy sólo había oído hablar de aquellos que, por cuestiones de uso del día a día, acabas aprendiendo un poco de ellos (como C, Java y HTML), pudiendo conocerles más de cerca, profundizando. Por otro lado están aquellos de los que personalmente no había oído hablar (R, Python, Ada...) y que por tanto, no sabía de su existencia. Además, de manera análoga al lenguaje de los seres humanos y de los animales, el lenguaje de programación constituye las bases (nexo) entre el usuario y la tecnología, hecho que no debemos de pasar jamás por alto.

domingo, 9 de febrero de 2014

Caso 1

En este primer tema, muy introductorio, me gustaría definir en primer lugar qué es aquello que se entiende por el término "información". Buscando por la red he encontrado varias definiciones que han sido propuestas por varios autores y que definen qué es información para ellos, de las cuales he seleccionado una sola que me parecía la más acertada de todas: Czinkota y Kotabe la definen como "un conjunto de datos que han sido ordenados y clasificados con un propósito determinado". Personalmente me gustaría añadir que ese propósito (en nuestro caso particular) se refiere a la transmisión de conocimientos, opiniones, ideas... al ser humano de una rama de estudio concreta con el fin de corroborarlos y/o ampliarlos. A partir de esos datos, que bien pueden ser numéricos, alfabéticos, algorítmicos... y el procesamiento extraemos un conocimiento de ellos. En cambio, existen varias problemáticas al respecto:
  • No toda la información que se nos presenta puede ser asimilada por nuestro cerebro (un dato estadístico nos indica que sólo podríamos asimilar en torno al 3% de la información dedicándonos las 24 horas de un día en un campo concreto).
  • El fácil acceso a la información a través de internet no implica un aumento del conocimiento, ya que no todo lo que está publicado por la web arroja nuevos datos (cantidad) a la vez que no todo esta información es siempre fidedigna (calidad).
  • No toda la información sobre un tema está disponible (es accesible) para todo el mundo.
No obstante, llegados a este punto, ¿cómo podemos encontrar la información?. Este proceso se realiza a través de la documentación, que se caracteriza por lo siguiente: 
  • Dirigir y canalizar epistemológica, creativa y exhaustivamente la producción, distribución y consumo del conocimiento en sus múltiples formas. 
  • Almacenar, procesar y difundir nueva información con el propósito de hacerla accesible a todos.
  • Se realiza siguiendo los procedimientos de metodología científica y trabaja de manera conjunta con las ciencias de la comunicación, la ciencia cognitiva y las ciencias informáticas y de las telecomunicaciones, entre otras.
La información no siempre procede del mismo sitio, sino que tiene diversos medios o fuentes, que atendiendo el aspecto a tratar se clasifican de la siguiente forma: 

En relación al origen de la información:
  1. Fuentes de información personales: nos dan información sobre personas o grupos de personas relacionadas entre sí que transmiten generalmente la información de forma oral.
  2. Fuentes de información institucionales: nos ofrecen información sobre una institución (organización que realiza funciones o actividades de interés público) dándonos a conocer su organización, funcionamiento...
  3. Fuentes de información documentales: con la información recogida en un documento y que a su vez se dividen en fuentes primarias, que se caracterizan por contener información novedosa, que se accede a ellas de manera directa o través de las fuentes secundarias (libros y revistas) y que no siguen habitualmente un esquema predispuesto; fuentes secundarias, con un material ya conocido y organizado siguiendo un esquema predeterminado y que la información remite a documentos primarios (directorios, almanaques, anuarios, manuales, diccionarios, enciclopedias, fuentes geográficas, índices y resúmenes); y por último, las terciarias, que contienen, a su vez la información de las fuentes secundarias, y por tanto, también de las primarias (bibliografías de bibliografías, guías de obras de referencia, fotocopias...).
En relación a los formatos en los que se presenta:
  1. Textuales e impresos, en formato impreso o escrito (papel)
  2. Edición electrónica (CD-ROM, microfilms, vídeos, películas, discos magnéticos, cintas magnéticas, bases de datos online, material online, disquetes e internet).
De entre las expuestas la más utilizada por excelencia y las que más prestaciones ofrece es Internet, que es una red internacional norteamericana que se utiliza protocolos TCP/IP. Los servicios que ofrece principalmente son los siguientes:
  • Correo electrónico (e-mail en inglés).
  • Acceso a revistas, páginas web, bases de datos electrónicas, revistas... .
  • Conferencias en vivo o en directo.


En la actualidad han tomado mucho protagonismo las TIC (tecnologías de la información y comunicación) que conforman los avances tecnológicos que nos proporciona la informática, las telecomunicaciones y las tecnologías audiovisuales. Nos proporcionan información, herramientas para su proceso y a la vez, canales de comunicación. Entre sus aportaciones más destacables se encuentran las siguientes: facilidad para acceder a la información, procesamiento de los datos, canales de comunicación instantáneos, almacenamiento en pequeños soportes y digitalización de la información. Aunque las ventajas tienen que ver con la rapidez, accesibilidad contrasta con los inconvenientes que poseen como la calidad de la información, la facilidad para perder una gran cantidad de datos en poco tiempo y la complejidad de sus búsquedas.

El hecho de poder haber visto de cerca qué es la información, conocer cuál es la ciencia que se encarga de facilitar la búsqueda, análisis y gestión de la información (documentación) así como los distintos tipos de fuentes de documentación me ha hecho ser más consciente de todos aquellos procesos que suceden constantemente de manera continua, día a día, y de los que no prestamos atención. En mi campo concreto, el de la educación, la presencia de estos recursos abre un amplio abanico de posibilidades y metodologías capaces de favorecer los procesos de enseñanza-aprendizaje, haciendo de ellos una experiencia más cercana para los alumnos y mucho más visual, a la vez que más llamativa e incluso experiencial (pizarras digitales). Como futuros profesores es importante que podamos sacar partido a estas herramientas de una forma sostenible, teniendo en cuenta los contenidos vistos en este primer tema, pues buscamos la mayor calidad de información con el fin de formar correctamente a nuestros alumnos.