domingo, 2 de diciembre de 2012

Ética Informática

 
Autor: Fermín Pradena.
Competencia:  Actuación ética, 2°Sem.
 Palabras clave: Piratería, derechos de autos, ética, licensia software.

Descripción de la actividad
Estas son 2 preguntas contestadas en el ramo Mantencion y administración de sistemas(2°Semestre) donde se nos plantearon en un foro sobre ética, las cuales usaré en este repositorio además de información extra.

Desarrollo de la actividad

Antes de contestar las preguntas planteadas me puse a navegar por la web, donde encontré interesante información:

¿QUÉ ES LA ÉTICA DE LA INFORMÁTICA?
La Ética de la Informática (EI) es una nueva disciplina que pretende abrirse campo dentro de las éticas aplicadas y que ha emergido con fuerza desde hace unos pocos años en el mundo anglosajón. El origen remoto de la EI está en la introducción cada vez más masiva de los ordenadores en muchos ámbitos de nuestra vida social, cada vez más computerizada. Muchas profesiones reivindican para sí una ética particular con la cual pueden regirse ante los problemas morales específicos de esa profesión o actividad ocupacional. La existencia de la EI tiene como punto de partida el hecho de que los ordenadores suponen unos problemas éticos particulares y por tanto distintos a otras tecnologías. En la profesión informática se quiere pasar de la simple aplicación de criterios éticos generales a la elaboración de una ética propia de la profesión. Los códigos éticos de asociaciones profesionales y de empresas de informática van en esa dirección.
El plantear una disciplina como la EI implica salir al paso de afirmaciones como "la ética no tiene nada que ver con los ordenadores" o "no hay una ética especial para los informáticos". Realizar la primera afirmación supone no reconocer los dilemas éticos en las tareas del informático que son potenciados por el mismo desarrollo tecnológico. Contrarrestar la segunda afirmación, en cambio, supone demostrar que sí hay necesidad de una ética especial para los informáticos. Así como otras ciencias y profesiones han tenido siglos para desarrollar conceptos éticos con los cuales tratar sus problemas (entre ellos, los provocados por las nuevas tecnologías), las tecnologías de la información llevan sólo unas pocas décadas de existencia para crear, como otras disciplinas lo han hecho, sus propios estándares éticos.

Aunque esto se desvía un poco del tema a tratar que es la ética sobre derechos de autor, nos plantea un concepto que hoy debe tener claro un informático.

Ahora las preguntas:

Existen consideraciones éticas informáticas que están en relación con el uso de del software y su propiedad intelectual. Existiendo alternativas de licenciamiento GNU/GLP, ¿ Es ético usar software con licenciamiento privativo sin pagar derechos de autor ? 

Yo creo y muy posiblemente sea así de que no está bien el usar licenciamiento sin pagar, lo que es sinónimo de una mala acción que es el piratear, ya que estamos usando y explotando el trabajo de alguien más que se esforzó por ello y es su forma de trabajar y nosotros en palabras sencillas le estariamos robando.  


Los administradores de sistemas por su rol y privilegios poseen prácticamente acceso a toda la información de una empresa. ¿ Cuáles son las responsabilidades éticas en la manejo de la información ?, ¿ Es posible poder determinar un marco ético informático ? y de ser así ¿ Cuáles serían las bases de este marco ético según usted ?

Yo creo que como administrador global de una empresa el informático tiene un marco ético propio donde puede definir quizas como correcto en mi opinion solo controlar procesos normales de trabajo, solo lo que se deba hacer en su trabajo y no arriesgar una posible falta de respeto por "espiar" y desorden en el manejo de la información, además un profesional debe comportarse como tal.   



Reflexión 
Esta fue una actividad que me hizo pensar seriamente sobre la ética informática, ya que antes pensaba en ella como algo que puede ser normal el hecho de tomar un programa que necesita licensia o algo similar, en vez de pagar simplemente y sin culpa piratearlo, pero ahora me hace pensar de una forma que quizas tenga el mismo final de si piratear el programa pero aun así si tuviera el dinero necesario pagaria por el trabajo que otra persona a realizado, además de la ética informática de un administrador, que es tomar seriamente su trabajo y no realizar actos de invasión de privacidad o algo similar.

Te invito a que compartas comentarios y dudas acerca de esta actividad, gracias...

sábado, 1 de diciembre de 2012

Robot Sumo


Autor: Fermín Pradena.
Competencia:  Creatividad e innovación, 1°Sem.
 Palabras clave: Robot sumo, programacion, nxt, nxc.


Descripción de la actividad
Esta fue una actividad del ramo Programación de robots(primer semestre) donde teníamos la tarea de diseñar y programar un robot que fuese capaz de vencer a otros en una arena de lucha de manera que pudiese desarmarlos o expulsarlos de la arena.


Solución de la actividad
A continuación le describiremos los pasos que seguimos, los objetivos, ideas principales y problemas que tuvimos para enfrentar el proyecto “Sumo” además de las conclusiones que obtuvimos y errores que pensamos cometimos, el proyecto sumo se trataba de un campeonato, en el cual el diseño del robot era libre, el robot tenia que cumplir con mantenerse dentro de un área de combate delimitada y tratar de hacer que el robot contrario saliera de esta o quedara inmovilizado, teníamos a nuestra disposición todas las piezas dentro del kit y podíamos usar todos los sensores que utilizamos en los proyectos anteriores, solo que esta vez nosotros debíamos decidir la mejor manera de utilizarlos, como grupo decidimos que la mejor manera de abordar este desafio era primero definir la estructura del robot, la cual era escencia para crear el código ( por la posición de los sensores ) por lo que empezamos por ahí, una vez decido del diseño pasamos a la creación del código que se explicara con detalles mas abajo, finalmente hacemos una conclusión y analizamos los resultados quedando demostrado si cumplimos con las expectativas y si usamos de manera correcta los sensores y rutinas antes aprendidas.

Patrón de ataque y defensa
El programa de nuestro robot esta diseñado para ejecutar tres rutinas, las cuales están divididas en búsqueda, ataque y defensa. En primer lugar, avanza con ambos motores hasta la mitad del circulo, donde al llegar comienza a girar en su propio eje a toda potencia, esto para poder detectar con su sensor de ultrasonido al robot contrario, una vez que esto se realiza, el robot pasa a modo ataque, en el cual avanza con ambos motores y toda la potencia embistiendo al robot rival, otra parte del programa es la rutina que se ejecuta una vez el robot detecta la línea negra que es el contorno del área de combate, cuando el robot con su sensor de luz detecta esta línea realiza un giro y vuelve a girar sobre su propio eje, esto se puede considerar además como un movimiento defensivo, puesto que mientras el robot gire a toda potencia al robot enemigo se le complicara embestirlo, y lo mas probable es que al ser embestido, nuestro robot siga girando y logre salir de la parte frontal del otro robot, continúe girando y detecte al robot enemigo y realice un contrataque, en todo momento desde que el robot inicia el programa tenemos un tercer motor activado, el cual esta conectado a dos garras, una a cada lado del robot, esto lo consideramos un ataque “auxiliar” teniendo la finalidad de que en caso de que al embestir al robot contrario, este llegara a “montarse” sobre nosotros producto de nuestra rampa, las garras laterales debían de golpearlo para arrancarle alguna pieza o empujarlo para que cayera de costado y así ganar el combate.
Link del codigo: http://www.mediafire.com/?ckbabcn8vj9fufc

Análisis de enfrentamiento
La conclusión que podemos sacar de nuestros combates es que a pesar de tener un 50% de efectividad y perder en segunda ronda el programa funciono como lo esperábamos, en el primer combate nos enfrentamos a uno de los pocos robot que no contaba con una rampa frontal, lo cual fue una gran ventaja para nosotros, además de que el robot enemigo tenia un espacio entre el suelo y el cuerpo del robot que nos permitió levantarlo con ayuda de nuestra rampa y lanzarlo fuera de la arena, conseguimos que en el segundo round, a pesar de que ellos lograron embestirnos en primera instancia, no consiguieron sacarnos como lo planeaban, nuestros robot se engancharon, por lo que ese round fue declarado un empate, ( a pesar de que según las reglas debimos ganar ese también, porque el robot enemigo en medio de la batalla perdió varias piezas )finalmente el tercer round fue un mero tramite en ámbitos de combate, nuestro robot detecto primero al de ellos, lo embistió y lo saco sin que nuestro rival tuviera nada que hacer.
El segundo combate fue bastante mas reñido, nos enfrentamos a un equipo que también tenia un robot con rampa, además de usar los 3 motores para empuje, el combate se decidió de manera unánime al momento de chocar los robots, el contrincante al tener 3 motores para empujar, se llevo en potencia a nuestro “Eddie” el cual a pesar de ser mas grande, no tenia la tracción suficiente para sostenerse de la embestida, en el segundo round, los robots se engancharon, y perdimos porque mientras girábamos fuimos acercándonos mas a la orilla y salimos ( cosa de suerte ) y el tercero aunque era innecesario de realizar, lo hicimos y ganamos, nuestros robots no se detectaron, así que empezaron a buscarse, el de ellos al llegar a la línea se propuso girar y por un error termino saliendo de la pista.

Diseño del robot
El robot contaba con tres motores, utilizábamos dos para la movilidad orientados estructuralmente de forma paralela,
El tercero controlaba dos garras que estaban estructurados en forma de hélice en sentido vertical,
Las cuales pretendían aferrarse a los cables del enemigo y por efecto desconectarlos, o enredarlos y arrastrarlos a partir de ello.
El robot también contaba con una rampa, nuestra arma fundamental, estratégicamente como equipo habíamos planeado que, si nuestro robot lograba levantar al enemigo e impedirle el roce de las ruedas con el suelo lograríamos un empuje desenfrenado que lo sacaría afuera del círculo.
Sobre la rampa situamos el sensor de ultra sonido lo cual tenía una función muy particular, consideramos que en esa posición del robot seria una gran desventaja poner un sensor de tacto debido a que tendríamos que aguardar que el enemigo atacara para que nuestro robot realizara una reacción, lo cual seria peligroso, además no teníamos en mente estar ala defensiva.
Sobre el sensor de Luz, lo ubicamos abajo de la rampa y entre los motores de ambas ruedas, estructuralmente se encontraba en el centro del robot y oculto de la vista, nuestro sensor estaba muy bien protegido fue en la ubicación de dicho sensor en la cual mas dedicación le pusimos ya que si nos atacaban y perdíamos en funcionamiento del sensor automáticamente perderíamos las peleas.
Sobre el peso, el peso para nuestro robot era fundamental ya que nos dimos cuenta de que no solo bastaba aplicarle la máxima potencia a los motores para empujar al contrincante, durante pruebas que realizamos notamos que al empujar y no tener suficiente peso el robot “patinaba” y no lograba avanzar. Fue por eso que le implementamos unas piezas de lego, que visualmente parecía inservible, pero su único fin era generar peso.
Sobre el sensor de tacto, nosotros no utilizamos sensor de tacto, ya que nuestra estrategia no lo contemplaba no esta en nuestros planes tener al enemigo tan cerca, ni realizar alguna acción si se activaba el sensor, además de que teníamos complicaciones de implementarlo al robot un sensor para su estructura de 20 cm de largo parecería inservible.

Uso de los sensores

Sensor de Ultrasonido
Este sensor lo ubicamos en la parte frontal del robot, y se podría considerar como el corazón de nuestro ataque, puesto que con este sensor determinaríamos el “cuando atacar”, determinamos una distancia especifica y al encontrar un objeto a una distancia menor, ejecutaba la rutina “ataque”, al principio habíamos ubicado
Muy alto este sensor, pero nos dimos cuenta de que seria
Una desventaja al enfrentarnos a robots que tuvieran un perfil bajo
Sensor de LUZ  

El sensor de luz lo ubicamos en el centro del robot
oculto de la vista, su trabajo era escencial, evitarnos el salir del área de combate, el uso de este sensor es bastante sencillo, al ser el área de combate blanca y con un contorno negro, al detectar el contorno, para evitar salir del circulo, el robot giraba hasta “dejar de ver negro”.

Fotografía del robot 

Video de un combate de nuestro robot(para omitir mucho ruido y posibles garabatos, no es necesario activar su audio):


Reflexión
Esta fue una actividad entretenida ya que nos dava la opción de diseñar nuestro propio robot luchador, aunque por lo mismo tenia una dificultad mas o menos alta ya que los demás grupos igual podían crear un buen luchador, pero al fin y al cabo nos mantuvo entretenenidos durante el largo tiempo de trabajo que gastamos en él.

Te invito a que compartas comentarios y dudas acerca de esta actividad, gracias...

Mini Pokedex


Autor: Fermín Pradena.
Competencia:  Aprendizaje autónomo.
 Palabras clave: Pokedex, pokemón, programación, java, swing.

Descripción de la actividad
Esta es una actividad personal que realicé para estudiar antes de una evaluación de programación, la prueba era sobre Swing, por lo tanto quize trabajar en algo para mejorar mis falencias que era el manejo de ventanas, así que pensé en un programa con muchas ventanas y se me ocurrió una mini Pokedex(Enciclopedia Pokemón), ya que esto sería una motivación por el tema y además me ayudaba a estudiar.

Desarrollo de la solución

El programa consta de una ventana inicial donde nos muestra las regiones del mundo pokemon.

 Al precionar cualquiera de los botonoes de las regiones(cualquiera excepto de eevee), se nos habre una ventana con 3 botones, cada botón representando a un pokemon inicial de la region que clickeamos, por ejemplo hacemos click en el primer boton en la esquina superior izquierda; la región de Kanto, nos saldrá esta ventana.
Al hacer click en uno de esos 3, en este ejemplo el primero y se nos habre una ventana con información del pokemon que seleccionamos, la cual ya no tiene mas botones.

En otro caso, en la primera ventana principal, si presionamos el botón de eevee(donde solo se aprecia una cara de un pokemon), se nos abre una ventana con información de él y botones con las evoluciones de eevee.



Al hacer click en cualquiera de los botones, en este caso como ejemplo presionamos el primero, se nos habre una ventana con información de esa evolucion de eevee y ya esta ventana no tiene mas opciones.


Conclusión

Eso sería lo que tiene el programa, obviamente los botones y ventanas que no se abrieron como ejemplo tienen funciones similares a lo que sí vimos, el código en java de todo este programa no lo pondré en este repositorio ya que es muy extenso, tiene exactamente 1565 líneas de código, repitiendose mucho algo como esto:

private void jButton7ActionPerformed(java.awt.event.ActionEvent evt) {                                        
squirtle.setVisible(true);  }


Donde en palabras simples decimos que al presionar un botón se nos abra una ventana.

Reflexión
Para mí esta fue una actividad entretenida ya que su contenido me motivó a trabajar, además me ayudó bastante  a entender y aprender el tema de manejo de ventanas y diseño en swing.

Te invito a que compartas comentarios y dudas acerca de esta actividad, gracias... 

Sistemas informáticos en Coca-Cola


Autor: Fermín Pradena.
Competencia:  Comunicación oral y escrita, 2°Sem.
 Palabras clave: Mantención y administración de sistemas.

Descripción de la actividad
Esta fue una actividad realizada en el ramo Mantención y administración de sistemas en el segundo semestre, fue la primera actividad de presentación, constaba de investigar los sistemas de una empresa en nuestro caso "Coca-Cola", fué un trabajo grupal donde también habia que hacer un informe y obviamente la presentación visual.

Desarrollo de la actividad











Reflexión
Como reflexión puedo decir que esta actividad fue entretenida y parcialmente facil, así como tambien parcialmente difícil, ya que nos costó un poco encontrar la información, pero cuando la encontramos pudimos complementarla bien, aunque segun comentarios del profesor esta no estaba tan bien actualizada.

Te invito a que compartas comentarios y dudas acerca de esta actividad, gracias...