Módulo 3. Herramientas digitales para la participación. Estudio de una situación laboral centrada en un proyecto de programación amateur.
1. Introducción
Existen distintas
situaciones o contextos donde la utilización de recursos virtuales es
indispensable para conseguir una meta común, o el mero hecho de interaccionar
con otros usuarios. Estas situaciones, apoyadas con los avances de los últimos
años, y las posibilidades y predicciones futuras, abren un sinfín de
posibilidades a las comunidades virtuales y sus procesos comunicativos.
En el presente ensayo
abarcaremos una de estas situaciones, de manera ficticia, donde analizaremos un
proceso de realización de un programa informático de nivel amateur y a escala
grupal. Para ello, se tendrá en cuenta el contexto propio del ámbito escogido,
más concretamente el laboral e informático. Asimismo, las distintas fases del
proceso y las herramientas que son necesarias para llevar a cabo la tarea,
junto con las interacciones que se realizan en base a las mismas.
A modo de cierre, se
realizará una breve síntesis de los elementos abarcados y de los aspectos que
se consideren de mayor relevancia, así como también la reflexión y un
tratamiento más subjetivo acerca de los distintos procesos comunicativos
seleccionado, relacionándolos con las posibilidades propias de las herramientas
y escenarios escogidos como vía del proyecto.
2.
Programación
Las instrucciones y
comandos utilizados para asignar tareas o órdenes a un dispositivo electrónico
para solucionar problemas o realizar alguna acción determinada se concibe como
lenguaje de programación. Estos lenguajes, distintos en función de su base,
estructura o propia arquitectura son utilizados como el puente comunicativo
entre el usuario y la máquina que utiliza. Destacando que los mismos se han
visto modificados a lo largo de los años con la finalidad de refinar,
simplificar y hacer más eficiente el aprendizaje de los lenguajes. (Trigo,
2004)
En base a Navarro,
Fernández-Valmayor, Fernández-Manjón y Sierra (2006) se identifican distintos
tipos de lenguaje en función de su estructura y normas internas. No obstante,
destacan unos principios propios que deben considerarse a la hora de utilizar
un lenguaje que vaya a ser utilizado. Destacan tres, el primero de ellos, se
centra en el propio lenguaje escogido y su correcta selección para el fin
propuesto; el segundo, la correcta utilización del mismo y una estructura
lógica y comprensible y, finalmente, la búsqueda del carácter multiplataforma
de la aplicación realizada para atender a las necesidades tanto de usuarios
como de programadores.
2.1
Desarrollo de proyectos informáticos
Para el abordaje adecuado
de los lenguajes informáticos con el fin de diseñar un programa o producto, es
necesario establecer una serie de pautas que faciliten y engloben este proceso.
Todas las acciones pertinentes se enmarcan dentro de cinco fases diferenciadas.
La primera de ella es la planificación del proyecto, seguidamente encontramos
el diseño del mismo, su implementación después, donde se incluiría el trabajo
informático y uso de lenguajes de programación, en cuarto lugar, la
verificación y lanzamiento del producto y, finalmente, el mantenimiento del
mismo. (Proceso para el desarrollo de software, s.f.)
Además, siguiendo con la
misma fuente, es necesario establecer una serie de roles que serán los
encargados de la realización de las distintas tareas propuestas, y el uso de
los entornos seleccionados para la construcción del proyecto. En este caso, los
roles principales a desempeñar es el gerente del proyecto, la cabeza
representativa del mismo; el analista, encargado de comprobar las necesidades o
posibilidades del entorno y recursos; el desarrollador, encargado de la
programación; beta tester, conocedor
de los procesos anteriores que identifica posibles errores y, por último, el
arquitecto del software, encargado de culminar con el proyecto final.
No obstante, destacar que
todo esto forma parte de los recursos humanos necesarios para llevar a cabo la
tarea. No obstante, en este ensaño abarcaremos la perspectiva de los escenarios
utilizados para la interacción de las personas encargadas del proceso de manera
colaborativa, haciendo hincapié en las posibilidades de las mismas y su
naturaleza, para así conocer como son capaces de complementar el proceso y
enriquecerlo.
3.
Escenarios de participación
En este apartado, y tal
como se comentó con anterioridad se analizarán los recursos utilizados para la
construcción del proyecto informático. Todos ellos ofrecerán cierta interacción
entre usuarios y complementarán el proceso de desarrollo. Estos, estarán
diferenciados en función de las fases que se comentaron en el apartado
anterior: Planificación del proyecto, diseño, implementación, verificación y el
mantenimiento del producto.
3.1
Escenarios en la fase de planificación
En base a Hernández
(2002) mucho son los contextos que requieren de una planificación previa, por
ejemplo, dentro del contexto comunicativo encontramos la planificación en los
discursos de personas relevantes, sin embargo, las situaciones comunicativas
espontáneas recurren más a procesos espontáneos. La diferencia reside en la
intención del mensaje, en el ejemplo comunicativo, pero, en este caso, la
planificación se centrará en la determinación de las finalidades u objetivos
del proyecto a realizar. En este caso concreto, la construcción de un
videojuego de temática retro mediante el lenguaje de programación C++.
En esta situación, es
necesaria la interacción entre los participantes para establecer roles, así
como comenzar los esbozos de lo que será el producto final. No obstante, no
siempre un proyecto puede llevarse a cabo de manera individual y se debe
recurrir a la cooperación. Por ello, y debido a la complejidad de una
construcción de un videojuego, es necesario la interacción entre usuarios y
para ello, se recurrirán a distintas herramientas sociales de comunicación que
serán detalladas a continuación.
El primero de ellos es la
herramienta Slack, ya analizada en la anterior tarea. Para refrescar la
memoria, este software es considerado una vía de comunicación en equipo. En
este caso, esta aplicación será utilizado para buscar y establecer los vínculos
iniciales con las personas interesadas en participar en el desarrollo del
proyecto comentado con anterioridad. Además, recordemos que para el desarrollo
es necesario un total de cinco roles que facilitaran la realización de esta
tarea grupal. (Slack (software), s.f.)
¿Cómo es esto posible?
Debido a la posibilidad de crear salas de chat abiertas de temáticas
personalizadas, en este caso acerca de la programación, que permite interaccionar
con el resto de usuarios y seleccionar aquellos perfiles que más se adapten a
la idea de trabajo que se quiera inculcar. Por ejemplo, escoger una persona
interesada en testear código, otro que destaque por el diseño de programas o un
perfil más experimentado para hacerse cargo.
Una vez escogido el
equipo de trabajo, se presentan distintas vías de trabajo a través de
plataformas destinadas a la comunicación. Ejemplos de las mismas pueden ser Skype,
Discord o Hangout, entre muchos otros. Para este caso se decanta por el uso de Skype.
En base a Arnau (2009) Skype es un software dedicado a la
comunicación e interacción de usuarios a través de distintas vías como texto,
voz o video. Asimismo, la posibilidad de compartir archivos lo que otorga una
mayor eficiencia para la comunicación de grupos de trabajo y procesos
didácticos.
En base a esta concepción
de la plataforma Skype, se adapta a la perfección para organizar de una manera
colectiva el proceso que se desea seguir. Además, la posibilidad de compartir
materiales e ideas favorecen una mayor implicación del grupo, aspecto
fundamental para la correcta creación y mantenimiento de las comunidades
virtuales o grupos de trabajo en red.
3.2
Escenarios en la fase de diseño
Una vez utilizadas las
herramientas anteriormente comentadas, así como la creación de un organigrama y
estructuración de tareas, es importante avanzar hasta la siguiente fase. La
fase de diseño es una de las más importantes debido a que ya no se realiza una
planificación general del trabajo, sino que se abarcan aspectos específicos del
proyecto. Por ejemplo, las fechas en las que tiene que estar implementado el
código, los patronos de diseño o los recursos multimedia. También, prefijar la
ruta del videojuego en este caso en particular, por ejemplo, un conjunto de
juegos clásicos como el tres en raya, buscaminas y tetris.
Para poder conseguir que
este proceso coja forma, es necesario establecer un espacio de trabajo donde
compartir aquella información relevante, así como los avances que se realicen
por parte de los integrantes del equipo. En este caso, de entre distintas
opciones como Dropbox o OneDrive, se ha escogido la opción
de utilizar Google Drive como plataforma de establecimiento en la nube.
En base a Castellano y
Martínez (2013) se destaca no solo la capacidad de almacenar información, sino
modificarla en tiempo real y construirla de manera colaborativa, incluyendo una
herramienta de chat para mejorar la comunicación entre usuarios. Para hacerlo,
tan solo se necesita una cuenta de Google y se dispondrá al instante de un
servicio de 15Gb de capacidad.
Esta herramienta es muy
interesante por las capacidades que nos ofrece. Por ejemplo, dentro de un
documento abierto, se pueden ir subiendo las ideas pertinentes al proyecto y
todos los usuarios aportar su granito de arena al mismo. No obstante, en
ocasiones podemos necesitar la intervención de una persona ajena al grupo, para
ello, podemos recurrir a los permisos de esta plataforma de almacenamiento en
nube o, como será en este caso, utilizar otra herramienta para compartir
archivos en la red como es Mega.
Mega es el sucesor de la
plataforma de servicios en nube Megaupload, fue lanzada en el año 2013, y se
encuentra desarrollada con una estructura similar al servicio de Google Drive y
One Drive. No obstante, este servicio no se centra tanto en la creación de
comunidades e interacción entre las mismas, más bien, su función principal es
ofrecer un espacio donde almacenar ciertos archivos que pueden ser descargados
por otros usuarios. Sobre el papel, esta característica encaja a la perfección
con la intención de poder ofrecer ciertos archivos concretos a usuarios que no
formen parte del grupo de trabajo pero que se requiera de su intervención. (Mega
(sitio web),
s.f.)
3.3
Escenarios en la fase de implementación
Establecidas las bases
iniciales y la posibilidad de observar las aportaciones de los usuarios, llega
el momento de comenzar el proceso de trabajo y construcción detallada del
proyecto. Para ello, no dejarán de utilizarse las plataformas comentadas con
anterioridad, pero para llevar a cabo la implementación del videojuego, es
necesario recurrir a otros servicios online que puedan facilitar esta tarea y,
tratar de dotarle de una mayor complejidad.
La primera herramienta
analizada será la plataforma Code Project. Esta plataforma está
formada por una comunidad de programadores que incluyen artículos,
publicaciones y referencias de distintas temáticas o lenguajes de programación,
como C++ o Java. (Code Project, s.f.) ¿Cómo puede ayudar en la realización
de proyecto? Bien, la tarea de programación es muy similar a la escritura, cada
persona realiza o construye el lenguaje de una manera determinada, con la única
diferencia de que en el ámbito computacional se busca la eficiencia y, por
ello, es necesario el análisis y corrección por parte de otras personas
entendidas, así como también la búsqueda de ayuda si es necesaria.
Es aquí donde entra la
web Codeshare,
es una plataforma diseñada para realizar entrevistas, cursos o incluso
compartir tus avances con otros usuarios. Además, la capacidad comunicativa de
la plataforma le suma un mayor interés debido a la posibilidad de conocer a la
persona que está al otro lado del ordenador y descubrir nuevas maneras de
desarrollar la aplicación o las ideas que se quieran llevar a cabo. Así, se
abre también la posibilidad de incorporar gente nueva al proceso de desarrollo
e implementación gracias a las posibilidades de este tipo de plataformas que
fomentan el desarrollo de comunidades online.
Ahora bien, puede que en
algún momento también necesitemos ayuda en algún aspecto que diste del código o
la programación. Por ejemplo, selección de colores para el diseño, nombres o
incluso cualquier tipo de duda de carácter usuario básico. Para ello tendremos
en cuenta la plataforma Quora, en base a Paul, Hong y Chi
(2012), destacan la calidad de las respuestas y la formación de hilos de una
temática más formal que otras plataformas destinadas a la misma acción. No
obstante, también se destaca cierta autoridad de respuestas en los hilos que
resta la presencia de distintos puntos de vista constructivos. Aspecto
importante este último, que debe tenerse en cuenta para el análisis de las
respuestas en los hilos creados.
La finalidad principal de
la utilización de estos recursos, así como la propia finalidad de la fase de
implementación es la de finalizar el producto con el uso de este tipo de
elementos. Una vez la implementación haya finalizado, incluyendo los aspectos
de la programación, diseño de niveles o, uno de los aspectos más importantes
dentro de mundo tecnológico, como es el carácter multiplataforma.
3.4
Escenarios en la fase de verificación
Una vez finalizado todo
el proceso más complejo del proceso como es el anterior comentado, la tarea no
termina lanzando la aplicación o proyecto a las plataformas y esperar
respuestas de las personas que las prueben. Una vez terminada la implementación
comienza una fase esencial en cualquier proyecto, como es la verificación y
análisis del mismo para asegurarse de una calidad notable en todos sus
aspectos.
La verificación es
considerada como la comprobación de algún elemento, además está sumamente
relacionada con el mundo científico y tecnológico. Además, se entiende como un
paso necesario para comprobar cualquier teoría o comprobar la correcta
aplicación de la misma. Este proceso, tal y como se indica, busca la verdad y
conseguir que se cumplan todas las cuestiones planteadas en el inicio. (Verificación,
s.f.)
Para ello, se recurrirá a
la plataforma Utest. ¿Qué es y en qué consiste este servicio? Utest es una
plataforma formada por usuarios independientes, así como un equipo encargado y
físico, que ofrecen servicios de beta
testing y feedback para conseguir el mejor resultado en los proyectos que
queremos construir. En nuestro caso, el grupo cuenta con una persona encargada
de comprobar y verificar las aplicaciones. No obstante, debido a la importancia
de esta fase, esta aplicación abre horizontes para conseguir distintos puntos
de vista acerca de un mismo elemento.
Además, destacar que uno
de las principales características de esta plataforma es una gran comunidad y
un buen número de interacciones que ayudan, y ofrecen cierta rapidez, para
identificar los problemas pertinentes y tratar de solucionarlos de la manera
más eficiente. Ya sea a través del uso de mensajes públicos o la contratación
de un servicio privado por parte de los integrantes del grupo Utest.
Una vez realizadas todas
las tareas de cada una de las fases se entiende que el producto final,
recordemos el videojuego construido de manera colaborativa, ha sido finalizado.
No obstante, no nos encontramos frente a una empresa capaz de hacer frente a
una campaña de márquetin, ni tampoco una distribución física de los
videojuegos. Por ello, se realizará mediante un servicio online como la
plataforma de desarrolladores de Steam,
o webs especializadas como Gameonly o
Minijuegos.
3.5
Escenarios en la fase de mantenimiento
En base a las
características anteriormente comentadas, poniendo gran énfasis en la
perspectiva online, es importante mantener el servicio y la aplicación
actualizada para garantizar unas sensaciones gratificantes para los usuarios
que accedan al videojuego. Para ello, además de utilizar aplicaciones
comentadas con anterioridad para la construcción y verificación del proceso, se
utilizarán y se tendrán en cuenta las redes sociales para conocer las opiniones
actualizadas.
La primera de ellas será
uno de los buques insignia debido a las posibilidades empresariales de la
misma, con la posibilidad de promocionar publicaciones, así como un gran número
de tipos de interacciones. Facebook
es una de las aplicaciones con mayor número de usuarios y que permite la comunicación
activa de usuarios, también compartir archivos y con un gran potencial
didáctico. Además, incluyendo el carácter colaborativo en las interacciones que
se lleve a cabo. (Pérez, 2015)
Por otro lado, encontramos
otras redes sociales destinadas en la transmisión de información como serán Instagram
y Twitter.
En este caso, se utilizarán para transladar a los usuarios que utilicen las
distintas plataformas de videojuegos para la utilización del proyecto
información relevante, posibles actualizaciones, sorteos de material cosmético
dentro de los niveles que serán actualizados gracias a este periodo de
mantenimiento y, por supuesto, establecer un vínculo comunicativo entre
usuarios y el producto para conocer de manera inmediata opiniones, mejoras o
sugerencias.
Con un control de las
redes, tres en este caso, pero pueden existir más, como Pinterest, así como
también la constante actualización y mantenimiento del servicio en web se
abrirá una puerta para la construcción de una pequeña comunidad que gire en torno
al producto y los intereses y feedback de
sus usuarios.
4.
Conclusiones
A modo de breve conclusión,
destacar de nuevo que el presente ensayo responde a una situación de
construcción colaborativa de un videojuego a través de plataformas y recursos
online. Cómo puede llegar a producirme y mediante qué vías han sido objeto de análisis
para comprender y analizar las decisiones que pueden llegar a producirse en una
situación real de unas características similares.
Uno de los elementos importantes
a destacar dentro de todo este proceso son las posibilidades que abren las
plataformas y comunidades online, así como el recurso de internet. Este tipo de
aplicaciones virtuales, bien utilizadas, ofrecen unos recursos únicos que
posibilitan el contacto humano a través de las pantallas, transformando en
virtuales los procesos que de manera habitual han sido concebidos para llevarse
a cabo en entornos físicos.
En definitiva, las
posibilidades de las nuevas tecnologías son prácticamente infinitas, así como
también la rapidez de actualización de las mismas. Para formar parte de las
comunidades y participar de manera activa de todos los procesos que se lleven a
cabo en las plataformas, se necesita una formación y actualización constante
dentro de este ámbito. También el conocimiento y práctica de las mismas, solo
así conseguiremos convertirnos en usuarios competentes dentro de estas
realidades virtuales.
Por ello, se destacarán
dos aspectos esenciales como son la formación
y la interacción. La formación como
necesidad para adaptarse a los contextos actuales dentro de cualquier ámbito de
aplicación, señalando también la necesidad de una continuidad en los procesos
formativos. Asimismo, interacción cuando se destaca la necesidad de potenciar
las vías comunicativas de la red y así, abrir posibilidades como ha sido la
analizada en el presente documento.
Bibliografía:
Arnau,
C. (2009). Skype en Educación. Revista
DIM: Didáctica, Innovación y Multimedia, (15).
Castellanos,
A. y Martínez, A. (2013). Trabajo en equipo con Google Drive en la universidad
online. Innovación Educativa, 13(63), pp. 75-94.
Code Project. En
Wikipedia. Recuperado el 13 de enero de 2019 de https://en.wikipedia.org/wiki/Code_Project
Hernández Rodríguez, A. (2002). Planificar la comunicación.
Revista Latina de Comunicación Social,
5 (48)
Mega (sitio web).
En Wikipedia. Recuperado el 13 de enero de 2019 de https://es.wikipedia.org/wiki/Mega_(sitio_web)
Navarro,
A.; Fernández-Valmayot, A.; Fernández, B. y Sierra, J.L. (2006). Lenguajes de
programación, lenguajes de marcado y modelos hipermediauna visión interesada de
la evolución de los lenguajes informáticos. Estudios
de Lingüística del Español, (24),
(2012). Who is authoritative? Understanding reputation
mechanisms in Quora. arXiv. Recuperado
de: https://arxiv.org/ftp/arxiv/papers/1204/1204.3724.pdf
Pérez,
N. (2015). Facebook como plataforma de aprendizaje. Etic@net, 15(2), pp. 395-402.
Proceso para el
desarrollo de software. (Sin fecha). En Wikipedia. Recuperado el 11 de enero de
2019 de https://es.wikipedia.org/wiki/Proceso_para_el_desarrollo_de_software
Slack
(software). En Wikipedia. Recuperado el 12 de enero de 2019 de
https://es.wikipedia.org/wiki/Slack_(software)
Trigo,
V. (2004). Historia y evolución de los lenguajes de programación. Manual formativo de ACTA, (34),
pp. 85-95
Verificación. En
Wikipedia. Recuperado el 13 de enero de 2019 de https://es.wikipedia.org/wiki/Verificaci%C3%B3n
Comentarios
Publicar un comentario