|
|
Who the Hell...?!motagirl2, la culpable de todo esto¿De qué va esto?Temas
¿Más cosas interesantes?Elementos compartidos de motagirl2Quiero estar al dia!- Subscribirme usando mi agregador de noticias ^^- No, gracias, prefiero recibir un mail cuando haya nuevos artículos ;) ¿Dónde está mota?En Anime-Planet En Anobii En Blogspot En DailyMotion En DeviantArt En Facebook En Flickr En GoEar En Hammerfest En LastFM En MySpace En Tuenti En Twitter En Wordpress En YouTube
|
Buenas (otra vez). Hoy os traigo un texto muy majete que casualmente tenia que comentar para clase, y ya que estaba... . Os voy a dejar aqui un resumencillo mio, en el que "solo" he puesto las partes mas interesantes. Por si a alguien le interesa leerlo entero (unas 5 paginas en inglés), dejo este enlace . El texto, escrito por Peter J. Denning , se llama El Mito del Campo de Programadores (aqui me imagino siempre un montón de gente clavada en un huerto gigante, con solo las cabezas sobresaliendo). Trata, en general, sobre el hecho de que muchisima gente crea que la Informática es simplemente "algo" con poco de ciencia o de ingeniería, como un simple "grupo de programadores". Según él, esto viene de que es "logico" que , ya que los ordenadores necesitan programas para funcionar, la programación sea fundamental. Además (copio textualmetne porque este trozo es muy.. poetico o algo) : "La mayoría de trabajos de clase se llaman "proyectos de programación", y no "proyecto de diseño", "proyecto de bases de datos", "proyecto de redes" o "proyecto de gráficos". Cuando forjan su opinion del campo mas importante en la universidad, los estudiantes miran atrás hacia sus clases de informática y se ven... programando. Aquellos interesados en mejores puestos se ven... haciendo programación Orientada a Objetos con Java. Los medios de comunicación cuentan muchas historias sobre informática. ¿Quién creó y distribuyó los modernos sistemas de claves criptográficas públicas? Programadores. ¿Quién creó las instrucciones de las docenas de microprocesadores en tu coche? ¿Quién creó el software que analiza tus resonancias magnéticas? ¿Quién creó los navegadores Web? ¿Quién escribió el código de SETI que ayuda a buscar vida extraterrestre cuando tu PC está desocupado? Todo programadores. ¿Quién se cuela en un sistema? Los hackers, una secta de pícaros programadores. ¿Quién escribe virus y gusanos? ¿Quién lanza ataques de denegación-de-servicio? ¿Quién ataca páginas web? ¿Secuestra ordenadores y los vende a los spammers? Más programadores pícaros. ¿Quién cometió el error que hizo que una sonda se estrellara en Marte? Un programador. Están en todas partes, tio. Para lo bueno y para lo malo, todo está hecho por programadores. La mayoría de gente no ve las historias de especialistas en arquitectura de computadores, ingenieros de redes, ingenieros de sistemas operativos, ingenieros de bases de datos, especialistas en gráficos, arquitectos software, diseñadores de sistemas software, expertos en seguridad, en simulación, en realidad virtual, en supercomputación, en robótica y muchos mas. Todas las historias se cuentan como protagonizadas por programadores." (...) "Hay que crear un nuevo retrato de nuestro campo que enfatice la diferencia entre nuestros principios cientificotécnicos y la parte práctica. Los principos fundamentales están en el diseño y la mecánica de la computación, comunicación, coordinación, recopilación y automatización. Estos principios no están cogidos de otros campos: los cientificos informáticos los desarrollaron. Nuestras cuatro prácticas fundamentales son la programación, la ingeniería de sistemas, el modelado y la innovación" En otra parte del texto, comenta que según la especialización elegida y el estilo, cada profesional debe poner más enfasis en unas partes prácticas o en otras. Hasta ahí la parte que por ahora me ha parecido mas interesante. Lo de hacer distinciones me parece dificil, pero una gran idea. Sigamos con el texto. También se habla de la crisis del software, y cómo en una cumbre de la OTAN en 1968 se ponen de manifiesto los retos del software del futuro: tratar con requerimientos difusos y cambiantes, asesorar y manejar el riesgo, sistematizar el proceso de localización y erradicación de errores, organizar y manejar equipos de programadores y satisfacer a los clientes. A esto le dieron un neuvo nombre: Ingeniería del Software. También deja caer la idea de que para manejar la compleja conducata de los sistemas grandes de software, haría falta cultivar "diseñadores" (no programadores) , ya que la producción del software conlleva un problema intrínseco de talento-y-diseño. Así que insta a la comunidad informática a enseñar a los informáticos a ser grandes diseñadores y desarrolladores de software. (en realidad, la idea es de Fred Brooks , pero no le pone ninguna pega) También cuenta cosas de Dijkstra (cómo me mola su algoritmo ^^) , y quelo que para él, lo mejor sería unir todas las hojas dispares en una única disciplina. Borrar todas las palabras "del mundo real" de los primeros cursos, y en vez de ello, enseñar las derivaciones formales de los programas a partir de predicados lógicos que expresan sus requrimientos. Ademas, apuesta por la enseñanza de la detección de errores y cosas asi, que normalmente se consideran partes mas "blandas" o "debiles". Y , por último, da 4 recomendaciones para ayudar a reorganizar la enseñanza de las 4 prácticas y no confundirlas con los principios: 1- Promover el pensamiento algorítmico 2- Agrupar las enseñanza prácticas en una sección de Prácticas de Computación 3- Crear una estructura de enseñanza basada en la competencia en la práctica. (lo pongo en inglés): beginner (aprenden la sintaxis y la ejecución de las relgas de programación y los modelos basicos de deteccion de errores), advanced beginner , competent (conocimientos extensos de las librerias y los algoritmos basicos, deberian ser ademas capaces de unir varios modulos en un único sistemas para satisfacer una peticion), proficient (deben encontrar facil la programación en varios lenguajes, ver los lenguajes individualmetne como maneras de expresar algortimos que ya están "en su mente" y crear "estandares" que los demás podrían admirar y seguir), virtuoso, master (deben tener conocimineto extenso sobre el desarrollo histórico de la programación, deben ser capaces de diseñar grandes sistemas software combinando diversos niveles de abstracción, y también de definir nuevos métodos y mejorar las prácticas de programación) y legend. 4- Enseñar la detección y correción de errores. Y bueno, poco mas. Todo lo basa en eso. Espero que os haya parecido interesante, y si no... solo teneis que olvidarlo ^^ Saludos (PD: cualquier incoherencia sintáctica o lo que sea....la culpa es de que estoy en un medio hostil para mis neuronas.) |
Blog creado con Blogia.
Blogia apoya: Fundación Josep Carreras