Archivo de la categoría: Informática
TP «1984 y el derecho a la privacidad»
TP «1984 y el derecho a la privacidad»
Estimados alumnos:
Para el trabajo práctico deberán leer 1984, de George Orwell.
Aquí podrán encontrar algunos sitios donde descargar el texto completo.
http://biblio3.url.edu.gt/Libros/2011/1984.pdf
http://literatura.itematika.com/descargar/libro/192/1984.html
La obra se escribió en 1948 (de ahí el juego numérico con el título). Para situarnos, en 1948 Gandhi fue asesinado, se inventa el transistor y también el primer videojuego y el primer LP, en Bélgica se le concede el voto a la mujer, en Europa entra en vigor el Plan Marshall en plena Guerra Fría y se firma de Declaración Universal de Derechos Humanos por la ONU.
¿Y por qué les cuento todo esto? Porque cuando lees este libro cuesta creer que se escribiese en esta fecha. Es uno de esos libros que no es que envejezca bien, sino que no envejecen, completamente atemporal, incluso demasiado actual en algunas sentencias.
Yo de 1984 sabía que era una distopía y poco más. Es decir, lo contrario a una utopía, la concepción de un mundo contrario a lo deseable y deseado. Un mundo donde el librepensamiento se condena, donde el amor se condena, donde las ideas políticas contrarias al Partido se condenan.
La sentencia más famosa de la novela es:
LA GUERRA ES LA PAZ
LA LIBERTAD ES LA ESCLAVITUD
LA IGNORANCIA ES LA FUERZA.
Esto resume el libro de un modo brutal. 1984 no es solo una novela, es un libro de filosofía, ya que nuestro protagonista Winston le da vueltas a ciertas ideas que masca una y otra vez, haciéndote reflexionar y pensar mucho sobre lo que te están contando.
Winston vive en Londres, un Londres que ni sabemos si es o no real, en el continente Oceanía. La vida y el mundo están controlados bajo la observación de El Gran Hermano, que les controla a través de las telepantallas y estudia los cambios en sus gestos, expresiones o actitudes, controlando incluso sus sueños. Todo lo que se salga de la doctrina empleada es condenado, y la gente de vez en cuando «desaparece» o por una denuncia de un vecino o simplemente por un comentario desafortunado.
La información es controlada al detalle: todo lo que se publica o es publicado es revisado. Porque las noticias pasadas también son modificadas según las necesidades del momento. Destruyen cualquier prueba de que algo que no conviene haya existido, creando un mundo nuevo.
Parece difícil de creer, pero no es tan complicado de hacer. ¿Qué ocurriría si se reeditasen las enciclopedias y las webs de noticias o de datos históricos con hechos que no son reales? ¿Cómo podríamos demostrar que eso no sucedió en realidad? Hoy en día con las redes sociales parece más difícil, pero cuántas noticias nos cuelan que no son reales. Pues eso es 1984, ese es el mundo que vaticinaban para esta fecha. Y aunque en nuestro país y nuestro mundo esto no sea real, hay muchos países del mundo donde esto si es real. ¿Alguien conoce un país llamado Corea del Norte?
1984 es uno de esos libros que deberían ser obligatorios. Abre tu mente y te ayuda a pensar. Y encima es muy muy adictivo. Mientras lees 1984 no piensas en otra cosa. Como bien dijo @Aramys en Twitter, «entras en 1984 y ya no sales»
Guía de lectura: 1984 – George Orwell
Presentar la guía en su sitio web
Parte primera
Capítulo I
1. Explica con qué tipo de narrador cuenta la novela.
2. Describe algunos de los aspectos más sorprendentes de la sociedad plasmada en 1984: la telepantalla y la organización de los Ministerios (p. 68).
3. Según Winston Smith la acción transcurre aproximadamente en 1984. George Orwell publicó la novela en 1949. ¿Por qué crees que decidió situar la acción tantos años después? ¿Podrías asociar este recurso con un género literario o cinematográfico concretos?
Capítulo II
4. ¿Qué actividad secreta lleva a cabo Winston? ¿Has hecho en alguna ocasión algo similar?
5. Explica quiénes son los «heroicos niños» y valora su actitud.
Capítulo III
6. Winston recuerda vagamente que, en los años cincuenta, una bomba atómica cayó en Colchester. ¿Sabes qué es una bomba atómica? ¿Recuerdas algún desastre asociado a ésta en el siglo xx?
7. El eslogan del Partido reza lo siguiente: «El que controla el pasado, controla también el futuro. El que controla el presente, controla el pasado» (p. 99). ¿Qué significado le atribuyes a este eslogan?
8. ¿Quién es el Gran Hermano?
Capítulo IV
9. Explica en qué consiste el trabajo de Winston.
10. Las purgas y las vaporizaciones son habituales en el Londres de 1984. ¿En qué consisten? ¿Tienes noticia de alguna práctica similar en las sociedades occidentales y orientales del siglo xx?
11. VOCABULARIO: “palimpsesto” (p. 105).
Capítulo V
12. «Ya no había amigos, sino camaradas.» Imagina un mundo en el que no exista la amistad y plásmalo por escrito.
13. Explica cuál es el rasgo esencial de la neolengua y cuál es su finalidad. Por otra parte, ¿estás de acuerdo con Syme, quien califica de bella la neolengua?
14. Analiza el contraste existente entre la información proporcionada por el Ministerio de la Abundancia (p. 122) y la realidad que percibe nuestro protagonista (p. 124).
Capítulo VI
15. Entre los miembros del Partido las relaciones sexuales están prohibidas. ¿Por qué?
16. VOCABULARIO: “cara aquilina” (p. 131), “célibe” (p. 131), “rehusar” (p. 131), “mortecina luz” (p. 131).
Capítulo VII
17. Los proles constituyen una parte muy relevante de la sociedad en la que transcurre la acción de nuestra novela. Explica quiénes son y por qué Winston los considera tan importantes.
18. ¿Para quién cree escribir el protagonista su diario? ¿Por qué motivo?
19. VOCABULARIO: “minucias” (p. 136), “infructuosamente” (p. 139), “axioma” (p. 145).
Capítulo VIII
20. ¿Qué es la vidapropia? Manifiesta tu opinión acerca de ésta.
21. La lotería constituye un estímulo y un motivo de alegría para los proles. ¿Quiénes suelen obtener los premios más cuantiosos?
22. Un rasgo destacado de la actitud del Partido es el rechazo a todo lo antiguo. Pon algunos ejemplos de este desprecio y aventura una hipótesis acerca de las razones que lo provocan.
Parte segunda
Capítulo I
1. Desgraciadamente ya nadie escribe cartas en 1984. Explica por qué y cómo se han sustituido.
2. En la Plaza de la Victoria hay una estatua del Gran Hermano y, frente a ella, una estatua ecuestre que representa a Oliver Cromwell. ¿Quién fue este personaje?
3. «Los extranjeros, ya fueran de Eurasia o de Asia Oriental, eran como animales raros» (p. 177). ¿Qué ocurre con los extranjeros? ¿Por qué es tan difícil verlos?
4. VOCABULARIO: “calidoscopio” (p. 167), “hacer de tripas corazón” (p. 173), “rostro beatífico” (p. 173).
Capítulo II
5. Comenta el simbolismo del siguiente pasaje: «Casi tan velozmente como él se lo había imaginado, ella se arrancó la ropa y cuando la tiró a un lado fue con el mismo magnífico gesto con el cual toda una
civilización parecía anihilarse» (p. 186). Relaciona el pasaje con la sentencia que cierra el capítulo: «Era un acto político» (p. 187).
Capítulo III
6. Explica qué es, según Julia, «hablar por folletones».
7. La familia se ha convertido en una suerte de extensión de la Policía del Pensamiento. ¿Por qué?
8. VOCABULARIO: “ortodoxia” (p. 194), “prosaicamente” (p. 196).
Capítulo IV
9. Describe la pesadilla que, una y otra vez, aterroriza a Winston. ¿Eres capaz de interpretarla? Redacta unas líneas explicando tu pesadilla recurrente.
10. VOCABULARIO: “desvencijada estufa” (p. 198), “voz de contralto” (p. 199), “trivialidades” (p. 201).
Capítulo V
11. En las calles de Londres aparece un nuevo cartel. ¿Cómo es y qué función tiene? Explica, asimismo, la relación que guarda la difusión de este cartel con otros fenómenos o sucesos coetáneos.
12. Julia cree que el Partido inventó el aeroplano, que Oceanía siempre ha estado en guerra con Eurasia y que es corriente que todos los días maten a gente. Como indica Winston, esto significa que «nunca
discutía las enseñanzas del Partido a no ser que afectaran a su propia vida» (p. 190). Pero ¿qué verdad más profunda se esconde bajo esta actitud? ¿Crees que esto beneficia al Partido?
13. VOCABULARIO: “jactarse” (p. 210), “filfa” (p. 215).
Capítulo VI
14. ¿Cuál es la novedad más notable del último Diccionario de Neolengua?
Capítulo VII
15. «Los proles son seres humanos […]. Nosotros, en cambio, no somos humanos» (p. 205). ¿Qué significado encierran las palabras de Winston? ¿Qué recuerdo le hace llegar a esta conclusión?
16. VOCABULARIO: “cuerpo estatuario” (p. 224), “inexpugnable” (p. 228).
Capítulo VIII
17. El interrogatorio de O’Brien es de una brutal crudeza. ¿Qué opinas de las respuestas de Winston y de Julia? Debate con tus compañeros acerca de lo que crees que harías tú en su situación.
18. La información que proporciona O’Brien a Julia y Winston acerca de la Hermandad es escasa y confusa. Al parecer, ni siquiera el jefe, Emmanuel Goldstein, dispone de todos los datos. ¿Por qué?
19. VOCABULARIO: “azoramiento” (p. 230), “aire servil” (p. 232), “estratagema” (p. 236).
Capítulo IX
20. Durante la Semana del Odio, concretamente en el Sexto Día, tiene lugar un hecho que asombra a Winston. ¿De qué se trata?
21. Explica cómo, según el libro de Goldstein, surgieron los tres grandes superestados en que se divide el mundo y qué países comprende cada uno de ellos. Elabora un mapa que ilustre esta división del mundo.
22. Tal y como nuestro protagonista sospechaba, Oceanía no está realmente en guerra, sino que permanece bajo un falso estado de guerra. ¿A qué intereses obedece esta impostura?
23. Enumera los objetivos esenciales de las escasas investigaciones científicas que se llevan a cabo en Oceanía.
24. El ciudadano de Oceanía rara vez ve a los extranjeros y tiene prohibido aprender lenguas foráneas, así como acceder a las ideologías predominantes en Eurasia y Asia Oriental. ¿Por qué?
25. ¿Cuál es la función que desempeña el Gran Hermano?
26. Define doblepensar.
Capítulo X
27. Julia y Winston son sorprendidos y detenidos en su habitación secreta. Uno de los policías arroja el pisapapeles de cristal contra el hogar de la chimenea. ¿Crees que este gesto encierra algún simbolismo?
28. Describe la transformación del señor Charrington.
Parte tercera
Capítulo I
1. ¿Con qué tres conocidos se encuentra Winston en prisión? ¿Por qué están ahí?
2. VOCABULARIO: “algarabía” (p. 286), “letargo” (p. 288), “guardia achaparrado” (p. 294).
Capítulo II
3. Explica qué pretende O’Brien con su interrogatorio y el uso de la máquina del dolor. ¿Por qué no mata directamente a Winston y se ahorra ese largo y duro proceso?
4. VOCABULARIO: “compungidos” (p. 299), “propaganda sediciosa” (p.299), “azogado” (p. 307), “abyecta” (p. 311).
Capítulo III
5. ¿Qué descubrimiento hace Winston acerca del libro de Goldstein?
6. O’Brien explica el motivo por el que el Partido ansía el poder. ¿Cuál es?
7. El futuro que le aguarda a la humanidad bajo el dominio del Partido queda perfectamente representado por una imagen concreta. Relaciona esta imagen con otra similar que hayas podido ver en alguna
película, cómic o anuncio publicitario.
Capítulo IV
8. Mientras se recupera, Winston comete un error involuntario que despierta las suspicacias de O’Brien. ¿Cuál es este error? ¿Qué consecuencias tiene?
9. VOCABULARIO: “perseverar” (p. 332), “vanagloriarse” (p. 338).
Capítulo V
10. En la Habitación 101, Winston debe enfrentarse a «lo peor del mundo», a su terror más profundo. ¿Podrías escribir una redacción explicando cuál es para ti «lo peor del mundo»? ¿Se asemeja a la fobia
de nuestro protagonista?
Capítulo VI
11. Describe la transformación física y moral de Winston.
Apéndice
12. ¿Cuáles son los tipos de léxico o vocabulario que tiene la neolengua? ¿Qué función esencial desempeña cada uno?
TP Informática
1984 and Us http://imgur.com/a/U4TeK
«…un Gobierno democrático ha espiado masivamente las conversaciones telefónicas de sus ciudadanos. Esa acción sin sospecha de delito ni mandato judicial viola uno de los fundamentos de la democracia: el derecho a la privacidad y la presunción de inocencia.»
http://www.infolibre.es/noticias/opinion/2013/06/12/obama_1984_4698_1023.html#utm_source=twitter.com&utm_medium=smm&utm_campaign=noticias
“Aquellos que cederían la libertad esencial para adquirir una pequeña seguridad temporal, no merecen ni libertad ni seguridad.” Benjamin Franklin
1- Realiza una valoración personal de la lectura de esta novela y señala cuál es, en tu opinión, el mensaje que nos quiere transmitir el autor.
2- Qué motivó el gran aumento del 6021% de las ventas del libro en este año?
3- ¿Crees que hoy en día hay algún aspecto de la novela que exista realmente en las sociedades europeas o norteamericanas?
4- Escribir una artículo en su sitio web que relaciones 1984 con estos conceptos actuales: PRISM, NSA, Snowden, privacidad/seguridad, ley SOPA, derecho a la privacidad
Links de Interés
http://www.infolibre.es/noticias/mundo/2013/06/07/inteligencia_eeuu_espia_traves_los_servidores_nueve_empresas_4526_1022.html
Opt out of PRISM, the NSA’s global data surveillance program – PRISM Break
No optes por PRISM, el programa mundial de vigilancia de datos de la NSA. Deja de reportar tus actividades online al gobierno estadounidense con estas alternativas libres al software privativo.
vía Opt out of PRISM, the NSA’s global data surveillance program – PRISM Break.
No optes por PRISM, el programa mundial de vigilancia de datos de la NSA. Deja de reportar tus actividades online al gobierno estadounidense con estas alternativas libres al software privativo.
Operating system |
|
→ |
|
Web browser |
|
→ |
|
Web browser plugins |
→ |
|
|
Web search |
|
→ |
|
DNS provider |
|
→ |
|
Darknet |
→ | ||
Online transactions |
|
→ |
|
Email services |
|
→ |
|
Email desktop clients |
|
→ |
|
Email encryption |
→ |
|
|
Maps |
|
→ |
|
Cloud storage |
|
→ |
|
Social networking |
|
→ |
|
Instant messaging |
|
→ |
|
Video conferencing/VoIP |
|
→ | |
Media publishing |
|
→ |
|
Document collaboration |
|
→ | |
Web analytics |
|
→ |
|
Android |
|
→ |
|
Android App Store |
|
→ |
|
Android Apps |
|
→ |
|
iOS |
|
→ |
|
iOS Apps |
|
→ |
|
*Este sitio web usa la definición de software libre de la Free Software Foundation.
|
|||
Toma medidas contra PRISM en el centro de acción de la Electronic Frontier Foundation.
|
Cursos en Ciberseguridad: en el smartphone, la tableta, internet, o el comercio electrónico
Cursos en Ciberseguridad: en el smartphone, la tableta, internet, o el comercio electrónico.
Cursos en Ciberseguridad: en el smartphone, la tableta, internet, o el comercio electrónico
INTECO es el Instituto Nacional de las Tecnologías de la comunicación que ofrece una serie de cursos totalmente gratuitos, estructurados y evaluables a través de su página web, el último que está ofertando es el de cómo asegurar el smarthone o la tableta. También ofrecen cursos sobre calidad que afirman dejarán de impartirse a partir de junio.
Os muestro algunos de los cursos que ofrecen:
TP Intercambio: de ideas, de información y derechos
TP1 Intercambio y especialización de ideas
a- Video: Cuando las ideas tienen relaciones sexuales
http://www.ted.com/talks/matt_ridley_when_ideas_have_sex.html
b- Responder al mail y fundamentar:
-
Reproducción sexual y asexual, diferencia con respecto a la transmisión y selección de genes
-
Nos convertimos en una especie que se convierte más próspera a medida que crece en cantidad?por qué?
-
Cómo pasamos a hacer objetos como este (hacha de mano) a objetos como el mouse? Similitudes (tamaño, forma, ambos están diseñados para adaptarse a la mano, ambos son tecnologías). Permanencia en el tiempo de cada uno. Que es una tecnología?
-
Quien los hizo y para quién? quien sabia como hacerlo?
-
Relaciona los conceptos de autosuficiencia / pobreza
-
No hay intercambio de ideas entre los monos
-
El intercambio ______________ los niveles de vida
-
Las culturas se expanden por ____________ de ideas
-
El ___________ crea especialización y a más intercambio, más especialización y así aumenta y esto es ___________, ahorro de tiempo en la satisfacción de tus necesidades
-
Cuánto tendrían que trabajar para proveerse ud mismo 1 hora de luz para leer un libro? Cuánto tienes que trabajar para pagarte 1hora de luz? Cuánta prosperidad se ha ganado con el tiempo?
-
Todos estamos _________ el uno para el otro, somos capaces de recurrir a la _______________ y al ___________, para aumentar el nivel de vida de cada uno.
-
La division sexual del trabajo beneficia a ambas partes?
-
El comercio es algo moderno?
-
Que le sucede a la gente cuando le eliminas los intercambios?
-
Podemos hacer cosas que ni siquiera entendemos gracias al intercambio y a la especialización . Con la tecnología podemos hacer cosas que no están a nuestro alcance.
-
Lo importante para la sociedad es como están las personas _________ sus ________
c- Preparar un escrito «Yo, (un objeto TIC)» en base a http://www.hacer.org/pdf/Lapiz.pdf
Adjuntar un archivo
TP2 Intercambio de archivos
a- Video TPB AFK: The Pirate Bay Away From Keyboard, el documental
http://www.microsiervos.com/archivo/peliculas-tv/tpb-afk-the-pirate-bay-away-from-keyboard.html
b- Generar una página en su sitio web (https://sites.google.com) con texto, imágenes y videos sobre los siguientes puntos
1- Qué es The Pirate Bay?
2- Definir: traker, torrent, bittorrent, enlaces magnéticos, P2P
3- Biografía de los creadores de TPB
4- Qué tipo de organización es TPB? Explicar en base al siguiente artículo
Resumen del libro: La estrella de mar y la araña. El poder imparable de las organizaciones sin líderes. – por Ori Brafman y Rod A. Beckstrom
http://zeitgeist-gba-zona-oeste.weebly.com/uploads/4/5/9/8/4598679/419laestrellademarylaarana.pdf
5- A que se refiere a la expresión habitual de los chats «AFK»? Con qué significado la usan la gente de TPB?
6- Compare el caso de Wikileaks con el de TPB
http://www.dreig.eu/caparazon/2012/12/25/criptografia-contra-distopia/
7- Escriba una conclusión de al menos 100 palabras relacionando el TP1 «Intercambio y especialización de ideas» con el TP2 «Intercambio de archivos»
c- Actividad extra http://www.neoteo.com/como-crear-y-compartir-un-torrent
Drop: un nuevo entretenimiento del creador de Minecraft | Microsiervos (Juegos y Diversión)
Drop: un nuevo entretenimiento del creador de Minecraft | Microsiervos (Juegos y Diversión).
Es tan simple que probablemente Notch se lo ha programado de una sentada. Se llama Drop y es uno de esos juegos que tanto nos gustan por aquí: aparecen letras y hay que teclearlas tan rápido como sea posible. Un pequeño entretenimiento que te puede dejar enganchado a la pantalla un buen rato.
De la misma familia y que alguna vez hemos comentado por aquí:
Uplink: El videojuego hacker | Hack Story Blog
Uplink: El videojuego hacker | Hack Story Blog.
Uplink: El videojuego hacker
Uplink es un videojuego de simulación de hacking creado por la empresa independiente inglesa Introversion Software cuya primera versión salió en 2001.
Hace ya mucho tiempo que llevan funcionando los videojuegos de hacking. Puedo recordar videojuegos como Streethacker, un simulador de hacking que te muestra un escritorio similar al de Linux y en el que realizas tu actividad hacker como si fuera en uno real.
Sin embargo Uplink es otro mundo dentro de este tipo de simulación. Es puro hacking. Tiene un funcionamiento que se asemeja mucho al hacking real. Han salido clones de Uplink como “Hacker Evolution” de Exosyphen Studios, tras el éxito del videojuego en todo el mundo.
Empieza la aventura
Todo comienza cuando, después de haber oído rumores y haber buscado en Internet, descubres el servidor de Uplink Corporation. De modo que te registras en su sistema. La primera vez que juegas, creas una cuenta en el sistema de Uplink y accedes a él.
En Uplink eres un hacker freelance que trabaja para Uplink Corporation, la mayor corporación de hackers a sueldo.
Una vez dentro, una interfaz con estética cyberpunk, te permite realizar todo tipo trabajos de hacking de una forma anónima y segura, si eres un buen hacker. El videojuego te permite navegar por diferentes servicios públicos, similares a los reales, para obtener información sobre tus objetivos.
La idea es que te conectas desde tu ordenador personal a un gateway de Uplink Corporation, desde el cual debes “hackear” sistemas de forma realista. El gateway no es otra cosa que un ordenador en las instalaciones de Uplink, al que te conectas para encubrirte y disponer de los recursos de la corporación.
Desde la propia interfaz del juego, recibes correo electrónico de Uplink Corporation donde te van asignado misiones que puedes organizarte como quieras.
Variedad de misiones
Las misiones incluyen desde robar o borrar un archivo de un servidor, cometer fraudes de identidad, reventar mainframes, hacer transferencias secretas de capital entre bancos e incluso en niveles más altos, introducirte en LANs de alta seguridad, “hackear” con la ayuda de complejos diagramas de red e inculpar a otras personas de tus acciones.
Todo ello evitando que localicen tu ubicación real y eliminando (o modificando) los logs de las máquinas que atacas.
En un principio tu gateway es un ordenador modesto, con el que sólo puedes realizar las misiones básicas.
Desarrollo de la historia
Pero en Uplink, como en la vida real, el hardware es actualizable. De modo que según vas superando misiones, puedes comprar gateways más potentes.
Lo que cambia en cada uno es el número de CPUs, la memoria máxima, la seguridad máxima y el ancho de banda máximo. Estos son los ordenadores a los que puedes optar (de menor a mayor potencia):
- Gateway Alpha (el inicial)
- Gateway Alpha ICPU
- Gateway Alpha IMEMORY
- VIRTUANET R-Access
- KRONOS Corp 80-860
- ZION-780 Series Workstation
- UNITY High-Security Platform
- AM-CORE File Server
- OMEGA Super Computer
- TRINITY-1686a
También cabe destacar que puedes optar por comprar muchos tipos de software para ir realizando las misiones. Estos programas de hacking y administración de información tienen a su vez versiones mejores y peores. Son estos:
- Decrypter
- Decypher
- Dictionary Hacker
- File Copier
- File Deleter
- Defrag
- Firewall Bypass
- Firewall Disable
- HUD ConnectionAnalysis
- HUD IRC Client
- HUD MapShowTrace
- HUD LAN View
- IP Lookup
- IP Probe
- LAN Probe
- LAN Scan
- LAN Spoof
- LAN Force
- Log Deleter
- Log Modifier
- Log UnDeleter
- Monitor Bypass
- Password Breaker
- Proxy Bypass
- Proxy Disable
- Trace Tracker
- Voice Analyser
Posteriormente, puedes elegir qué camino seguir, el de Andromeda Research Corporation (que quiere destruir Internet) o el de Arunmor (que quiere detener a ARC). Son dos caminos opuestos y puedes recorrer los dos, cada uno con sus propias misiones.
Extras
Un aspecto muy original de este videojuego, es que los creadores, Introversion Software, han hecho disponibles un CD-ROM de desarrollo (para poder modificar el juego a tu antojo), los libros de notas de programación del juego (llamadas gamebibles), la banda sonora y más elementos que jamás verían la luz de no tratarse de un juego Independiente. Esto ha creado una fuerte comunidad de fans y modificadores.
Uplink contiene muchos guiños al mundo cyberpunk y al hacker: Desde el gateway Trinity, el sistema de puntuación “Neuromancer” hasta la aparición del servidor de Steve Jackson Games o el de Protovision en el transcurso del juego.
El juego ha ido evolucionando y muchas versiones han visto la luz, mientras el juego se portaba a Linux y Mac OSx (vía Ambrosia Software). Hoy en día es completamente multiplataforma y en agosto de 2006 fue lanzado en la importante plataforma de compra de videojuegos Steam. Desde 2011 también se puede adquirir la versión para Linux desde el “Ubuntu Software Center”.
Este año, imparables, sacarán una versión para Android.
Recomendado para pequeños hackers y para grandes, con ganas de disfrutar horas y horas (e incluso llegar a soñar) con un juego impecable.
Fansites:
http://www.introversion.co.uk/uplink/othersites_fansites.html
Mods:
Extras:
La evolución de las tecnologías de la información y la comunicación
La evolución de las tecnologías de la información y la comunicación
vía Jordi Adell: Tendencias en educación en….
2. La evolución de las tecnologías de la información y la comunicación
Desde la década de los sesenta, numerosos autores han propuesto dividir la historia humana en fases o periodos caracterizados por la tecnología dominante de codificación, almacenamiento y recuperación de la información (véase, en los últimos años, Levinson, 1990; Harnad, 1991; o Bosco, 1995, por ejemplo). La tesis fundamental es que tales cambios tecnologicos han dado lugar a cambios radicales en la organización del conocimiento, en las prácticas y formas de organización social y en la propia cognición humana, esencialmente en la subjetividad y la formación de la identidad. Sólo adoptando una perspectiva histórica es posible comprender las transformaciones que ya estamos viviendo en nuestro tiempo.
El primero de estos cambios radicales ocurrió hace varios cientos de miles de años, cuando «emergió el lenguaje en la evolución de los homínidos y los miembros de nuestra especie se sintieron inclinados -en respuesta a algunas presiones adaptativas cuya naturaleza es todavía objeto de vagas conjeturas- a intercambiar proposiciones con valor de verdad» (Harnad, 1991, pág. 39). El lenguaje oral, es decir la codificación del pensamiento mediante sonidos producidos por las cuerdas bucales y la laringe, fue, sin duda, un hecho revolucionario. Permitía la referencia a objetos no presentes y expresar los estados internos de la conciencia. El habla «proporcionó una nueva dimensión a la interacción humana. El habla convirtió el pensamiento en una mercancía social. Con el habla se hizo posible hacer pública y almacenar la cognición humana. El conocimiento de los individuos podía acumularse y el conocimiento acumulado de la sociedad era almacenado en los cerebros de los mayores… La palabra hablada proporcionó un medio a los humanos de imponer una estructura al pensamiento y transmitirlo a otros». (Bosco, 1995, pág. 28).
Es dificil imaginar como puede ser la vida cotidiana en una sociedad oral. No basta con pensar en nuestra sociedad sin libros, sin escritos, sin todo lo relacionado con la escritura: es otra manera de ver el mundo y de pensar. Walter Ong (1995) ha intentado dibujarnos un retrato de la psicodinámica de la oralidad en las culturas verbo motoras en base a estudios antropológicos de culturas preliterarias y a las evidencias de los primeros textos escritos, en realidad transcripciones de la tradición oral, como la Iliada y la Odisea. No tenemos tiempo para explorar en profundidad las ideas de Ong, pero imagínense una comunidad en la que la palabra no tiene una transcripción permanente, escrita. El sonido está intrínsecamente relacionado con el tiempo, la palabra existe sólo mientras es pronunciada y en la memoria de los oyentes. No es extraño que existan palabras mágicas o que los refranes transmitan el saber popular a las nuevas generaciones. Ong (1995) describe este tipo de cultura como aditiva y agregativa más que analítica, redundante, tradicionalista, centrada en la vida cotidiana, empática y participativa, más que objetivamente distanciada, homeostática y situacional, más que abstracta.
La segunda gran revolución fue producto de la creación de signos gráficos para registrar el habla. Levinson (1990) afirma que la fluidez y abstracción del habla creó la presión evolutiva necesaria para la comunicación más allá de los límites biológicos: la escritura. En todo caso, fue un proceso que duró miles de años. Los primeros signos de los que tenemos noticia datan del paleolítico superior (entre 30.000 y 10.000 años antes de nuestra era), pero fue solo 3.500 años antes de nuestra era cuando comenzaron a utilizarse para representar el habla, después de 500.000 años de cultura oral (Bosco, 1995). La palabra escrita permitió la independencia de la información del acto singular entre el hablante y el oyente, temporal y espacialmente determinado, la posibilidad de preservar para la posteridad o para los no presentes el registro de lo dicho-oido. La palabra escrita tenía, sin embargo, algunos inconvenientes: era lenta en relación a la rapidez del lenguaje hablado, su audiencia era menor, la lectura es un acto individual (a no ser que se convierta en palabra hablada) y, en definitiva, era un medio mucho menos interactivo de comunicación que el habla. La forma del discurso se adaptó a estas características. Se hizo más reflexivo, deliverado y estructurado. La escritura estabilizó, despersonalizó y objetivizó el conocimiento (Bosco, 1995). La escritura, como destaca Ong (1995), reestructuró nuestra conciencia y creó el discurso autónomo, libre de contexto, independiente del hablante/autor. La literatura y, sobre todo, la ciencia se beneficiaron de la fiabilidad y sistematización que la escritura confirió al conocimiento y al pensamiento. La posibilidad de acumular el conocimiento, de transferirlo a la posteridad o de asociarlo a un objeto mueble que podía ser reproducido y transportado hicieron de la escritura un desarrollo estratégico. La importancia de la permanencia del mensaje en el texto escrito se evidencia en episodios de las tradiciones religiosos de numerosos pueblos. No es necesario extenderse sobre las diferencias entre las religiones «con libro» (como la cristiana, la judía o la musulmana) y las «sin libro» (como las orientales). Pero la aceptación de la escritura como medio para el avance del conocimiento no fue inmediata (véanse, por ejemplo, las ideas que Platón pone en boca de Sócrates en el Fedro, y su crítica del «mayestático silencio» del texto, cinco siglos antes de nuestra era).
La difusión de la escritura no fue rápida ni generalizada (Gaur, 1990). De hecho, la escuela como institución es una consecuencia de la alfabetización. «El desarrollo de las escuelas como lugares alejados de los procesos productivos primarios de la sociedad está estrechamente conectado con el desarrollo de la escritura» (Bosco, 1995, pág. 31). Las primeras escuelas conocidas datan de 2.000 años a.c., en Sumeria. Su objetivo era enseñar la escritura cuneiforme a una clase social privilegiada, a unos «especialistas»: los escribas. Un uso político-económico del lenguaje escrito que también puede hallarse en China o Egipto. En las culturas orales, el aprendizaje era fruto de la experiencia en las actividades de la vida cotidiana. La aparición de la escritura impone la descontextualización o disociación entre las actividades de enseñanza/aprendizaje y las actividades de la vida diaria. Aprender a leer y escribir requería el uso de medios extraordinarios: no era ya posible hacerlo mediante la observación y la repetición de los actos de los adultos, muchas veces en forma de juego, que eran la forma natural de socialización. La palabra, escrita y hablada, tomaba el relevo de la experiencia directa con las cosas.
La tercera revolución se debió a la aparición de la imprenta. Algunos autores (Bosco, 1995, por ejemplo) la consideran un simple desarrollo de la segunda fase: a fin de cuentas el código es el mismo en la escritura manual que en la impresa. Sin embargo, la posibilidad de reproducir textos en grandes cantidades tuvo una influencia decisiva en el conjunto de transformación políticas, económicas y sociales que han configurado la modernidad y el mundo tal como es ahora. La imprenta significó la posibilidad de producir y distribuir textos en masa, restaurando en parte la interactividad del habla, perdida en el texto manuscrito (Harnad, 1991). Nuestra cultura está tan fuertemente basada en la tecnología de la imprenta que resulta superfluo extenderse en sus consecuencias. El mundo tal como lo conocemos es producto de la imprenta (Eisenstein, 1994) (si exceptuamos la influencia de los medios de masas electrónicos, como la TV, en las últimas décadas). Según Bosco (1995), la estructura del libro (lineal, dividido en capítulos, cada uno de los cuales contiene un segmento coherente y unificado de la totalidad, su ‘presencia física’ y permanencia, etc.) se reproduce en la estructura de nuestro conocimiento (dividido en disciplinas cohesionadas, permanentes, acumulativas, ordenadas lógicamente, etc.) y, añadiría, de gran parte de nuestra actual pedagogía.
Es ilustrativo, a fin de calibrar la magnitud de los cambios en las vidas de las personas que introducen las revoluciones tecnológicas, echar un vistazo a cómo accedían a la información escrita los estudiantes universitarios antes de la aparición de la imprenta y compararla con nuestras actuales bibliotecas universitarias1. Con las primeras Universidades aparecen las primeras bibliotecas universitarias, hacia el S. XII-XIII. Aunque la enseñanza se basaba en la memoria, los estudiantes y profesores disponían de bibliotecas para consultar las obras que no podían copiar por si mismos (o hacer que se las copiaran). Las bibliotecas eran colecciones dispersas en distintas facultades, colegios, etc. con pocos libros que, en general, procedían de donaciones o legados. Tenían dos secciones, la magna, con los libros de consulta encadenados (tal era su valor) y la parva, libros que se prestaban depositando en fianza otro libro. Los horarios de consulta no eran precisamente amplios. En el S. XV la Universidad de Salamanca, por ejemplo, tenía un horario reglamentado de dos horas por la mañana y dos por la tarde. Las actitudes de los profesores hacia las primeras bibliotecas no era de entusiasmo, precisamente.
En realidad el negocio lo hacían los «estacionarios», una especie de libreros que disponían de todas las obras que se necesitaban en las universidades, debidamente aprobadas por la autoridad académica. Para ejercer su profesión tenían que depositar una fianza y trabajar bajo la supervisión directa de la Universidad. Su actividad se regulaba en las «Constituciones» y consistía en disponer de copias autorizadas de las obras, divididas en cuadernos, que prestaban a los estudiantes para que éstos los copiaran o los hicieran copiar por amanuenses y luego volvían a recuperarlos. De esta forma las copias se hacían siempre sobre un ejemplar correcto y las copias sucesivas no hacían que se desviara demasiado del contenido original. Este sistema, la «Pecia», era el más común para hacerse con la bibliografía necesaria hasta finales de la Edad Media (Febre y Martin, 1962)2.
Las dificultades de acceso a la información, cuando ha estado vinculada a objetos de difícil reproducción y que viajaban a la misma velocidad que los medios de transporte, han modelado nuestras conductas y nuestras instituciones. La imprenta contribuyó a una auténtica revolución en la difusión del conocimiento y de las ideas y, por tanto, en la evolución de nuestros sistemas políticos, la religión, la economía y prácticamente todos los aspectos de nuestra sociedad. Aprender a leer y a escribir es, todavía, el más importante aprendizaje que se realiza en la escuela. Es la puerta de acceso a la cultura y a la vida social. Pero, en la actualidad, estamos viviendo una cuarta revolución.
La cuarta revolución, en la que está inmersa nuestra generación, es la de los medios electrónicos y la digitalización, un nuevo código más abstracto y artificial (necesitamos aparatos para producirlo y descifrarlo) de representación de la información cuyas consecuencias ya hemos comenzando a experimentar. Bosco (1995) sitúa el origen de esta nueva etapa en una fecha concreta: el 24 de mayo de 1844, cuando Samuel Morse envió el primer mensaje por telégrafo. Por primera vez (si exceptuamos algunos intentos de telégrafos semafóricos), la información viajaba más rápido que su portador. Hasta ese momento, había permanecido atada a los objetos sobre los que se codificaba. Ahora viajaba a la velocidad de la luz, infinitamente más rápido que los trenes al lado de cuyas vías se hicieron los tendidos de los postes telegráficos.
Por aquella época, Charles Babbage, un ingeniero inglés, trabajaba ya en su máquina analítica, un engendro mecánico dado que la tecnología eléctrica y electrónica no se había desarrollado lo suficiente como para pensar en utilizarla. Pero el camino hacia el ENIAC, el primer ordenador digital, estaba trazado. En este proceso de digitalización del saber hemos asistido a una fase preliminar en la que la electrónica ha propiciado el rápido desarrollo de aplicaciones analógicas (el teléfono, la radio, la televisión, el fax, etc.), que en la actualidad están migrando rápidamente hacia la digitalización y adquiriendo capacidades interactivas entre emisor y receptor y de procesamiento y manipulación de la información ampliadas. Los avances en la creación de imagen de síntesis, por ejemplo, ha aumentado el número de aplicaciones de esta nueva forma de codificar la información: no sólo tenemos textos, imágenes y sonidos digitalizados que podemos almacenar y reproducir indefinidamente de modo fiel, sino que también podemos producirlos desde la nada, generarlos a voluntad. Han aparecido nuevos tipos de materiales, desconocidos anteriormente: multimedia, hipermedia, simulaciones, documentos dinámicos producto de consultas a bases de datos, etc. Los satélites de comunicaciones y las redes terrestres de alta capacidad permiten enviar y recibir información desde cualquier lugar de la Tierra. Este es el entorno de los niños y jóvenes de hoy, el mundo para el cual debemos formarlos en las instituciones educativas, el mundo de las nuevas tecnologías de la información y la comunicación.
Los cambios ligados a esta cuarta revolución se están produciendo en este mismo momento y, además, dependen de numerosos factores sociales y económicos, no sólo tecnológicos. Las perspectivas varían desde los más optimistas, que ven las nuevas tecnologías como una posibilidad de redención de todos los males (véase Negroponte, 1995; Toffler, 1996; o Gates, 1995, por ejemplo), hasta quién sólo ve amenazas y nubarrones (véase Roszak, 1986; Bloom, 1989; Postman, 1994 o Stoll 1996). De hecho, el panorama que hemos presentado en esta sección es, a todas luces, una simplificación excesiva de la compleja historia de la comunicación humana. La relación entre oralidad y alfabetización y los efectos sociales y cognitivos de la escritura son objeto de controversia entre los especialistas (Olson y Torrance, 1991; Olson, 1994, por ejemplo). El objeto de dicha simplificación ha sido destacar la importancia de la digitalización de la cultura y del momento que vivimos y alertar al lector para que pueda detectar los cambios, en ocasiones sutiles, que se están produciendo en todas las esferas de nuestras vidas.
Sin embargo, la mayoría de las explicaciones sobre la evolución de las tecnologías de la información (como la que se ha propuesto más arriba) padecen un fuerte determinismo tecnológico. Es decir, con frecuencia olvidamos que una tecnología no sólo tiene implicaciones sociales, sino que también es producto de las condiciones sociales y, sobre todo, económicas de una época y país. El contexto histórico es un factor fundamental para explicar su éxito o fracaso frente a tecnologías rivales y las condiciones de su generalización. La sociedad actúa como propulsor decisivo no sólo de la innovación sino de la difusión y generalización de la tecnología (Breton y Proulx, 1990). Como afirma Manuel Castells, «el cambio tecnológico tan sólo puede ser comprendido en el contexto de la estructura social dentro de la cual ocurre» (Castells, 1995). ¿Por qué muchas de las primeras tablillas de arcilla con escritura cuneiforme eran inventarios de almacén? ¿Por qué la imprenta no se desarrolló en la China si ya se conocían las tecnologías que están en su base, incluyendo el papel, la prensa y los tipos móviles, antes que en occidente? ¿Por qué los primeros libros impresos fueron de temática religiosa y conjuntos de tablas para cálculos comerciales? De todos los modelos de televisión posibles, ¿por qué tenemos la que tenemos? La explicación a todas estas cuestiones sólo puede hallarse en los contextos sociales, políticos y económicos en los que se crearon y desarrollaron como innovaciones. No olvidemos, por ejemplo, que la imprenta nació como un negocio (Eisentein, 1994). Lo que está pasando ahora mismo en la Internet, la explosión de contenidos comerciales o las batallas por controlar el mercado del software, no son precisamente un producto de la tecnología. Las características de los protocolos de comunicación utilizados en la Internet son una creación humana deudora de las necesidades percibidas por los investigadores y las instituciones que financian e impulsan la investigación. Así, nos encontramos en un periodo en el que el uso comercial de las redes informáticas está propiciando la investigación en aspectos antes poco relevantes como la seguridad en las transacciones electrónicas, el dinero electrónico, los micropagos, la banca electrónica, etc. Pero de todos estos desarrollos pueden obtenerse otros beneficios, del mismo modo que una red informática descentralizada, creada para soportar un ataque nuclear, se ha mostrado sumamente resistente a los intentos de censura y control ideológico de los gobiernos cuando ha pasado a las manos de los ciudadanos.
En resumen, todos estos avances tecnológicos tienen lugar dentro de un determinado marco socioeconómico que hace posible no solo su desarrollo en los centros de investigación y Universidades, sino también su transferencia a la sociedad y su aplicación a la producción. La revolución tecnológica en los medios, canales y soportes de la información que se está produciendo ante nuestros ojos se puede englobar en un conjunto más amplio de cambios en la estructura productiva de nuestra sociedad. Un término define este conjunto de transformaciones: la sociedad de la información.
3. Las nuevas tecnologías de la información y la comunicación
Parafraseando la definición de Gonzalez, Gisbert et al., (1996, pág. 413), entendemos por «nuevas tecnologías de la información y la comunicación» el conjunto de procesos y productos derivados de las nuevas herramientas (hardware y software), soportes de la información y canales de comunicación relacionados con el almacenamiento, procesamiento y transmisión digitalizados de la información.
Cabero (1996) ha sintetizado las características más distintivas de las nuevas tecnologías en los siguientes rasgos: inmaterialidad, interactividad, instantaneidad, innovación, elevados parámetros de calidad de imagen y sonido, digitalización, influencia más sobre los procesos que sobre los productos, automatización, interconexión y diversidad.
El paradigma de las nuevas tecnologías son las redes informáticas. Los ordenadores, aislados, nos ofrecen una gran cantidad de posibilidades, pero conectados incrementan su funcionalidad en varios órdenes de magnitud. Formando redes, los ordenadores no sólo sirven para procesar información almacenada en soportes físicos (disco duro, disquette, CD ROM, etc.) en cualquier formato digital, sino también como herramienta para acceder a información, a recursos y servicios prestados por ordenadores remotos, como sistema de publicación y difusión de la información y como medio de comunicación entre seres humanos. Y el ejemplo por excelencia de las redes informáticas es la Internet. Una red de redes que interconecta millones de personas, instituciones, empresas, centros educativos, de investigación, etc. de todo el mundo. Se ha afirmado que la Internet es una maqueta a escala de la futura infraestructura de comunicaciones que integrará todos los sistemas separados de los que hoy disponemos (TV, radio, teléfono, etc.), ampliando sus posibilidades, los nuevos sistemas que hoy ya se utilizan experimentalmente en la Internet (i.e., videoconferencia, video a la carta, etc.) y otros que apenas imaginamos.
La digitalización supone un cambio radical en el tratamiento de la información. Permite su almacenamiendo en grandes cantidades en objetos de tamaño reducido o, lo que es más revolucionario, liberarla de los propios objetos y de sus características materiales y hacerla residir en espacios no topológicos (el ‘ciberespacio’ o la ‘infosfera’) como las redes informáticas, accesibles desde cualquier lugar del mundo en tiempo real. También podemos reproducirla sin merma de calidad de modo indefinido, enviarla instantáneamente a cualquier lugar de la Tierra y manipularla en modos que nuestros antepasados ni siquiera soñaron. La digitalización de la información está cambiando el soporte primordial del saber y el conocimiento y con ello cambiará nuestros hábitos y costumbres en relación al conocimiento y la comunicación y, a la postre, nuestras formas de pensar.
Las ideas sobre la información están muy ligadas a los soportes que nos han servido para almacenarla y transmitirla durante años. Nuestra generación está muy influida por la imprenta y la televisión, es decir, por el texto impreso y por el modelo «broadcast» de difusión de imágen y sonido de la radio y la TV. Un ejemplo servirá para ilustrar este punto. Toda la legislación actual sobre propiedad intelectual y derechos de copia está basada dos supuestos: el primero es que es relativamente costoso producir y difundir libros impresos y material audiovisual; el segundo, derivado del anterior, es la división del trabajo entre autores y editores, es decir, entre productores y distribuidores de información. No es extraño que sea así, ya que dicha protección de derechos nació con la imprenta y para proteger los derechos comerciales de los impresores (y, digámoslo claramente, en mucha menor medida de los autores). También es evidente que se adapta mal a estos tiempos cibernéticos en los que una copia de enésima generación de un texto electrónico o de una aplicación informática es exactamente igual al original y que cualquier niño o niña de 12 años puede difundirla por todo el mundo en cuestión de segundos. Pero no sólo los derechos de copia se ven afectados. Otras categorías a las que estamos acostumbrados («autor», «lector», «obra», «texto», etc.) están siendo desafiadas por nuevas formas de producción, almacenamiento y distribución de la información (Landow 1992; Bolter 1991). Los sistemas hipermedia distribuidos, por ejemplo, diluyen la distinción entre autor/lector y entre autor y editor. Sn embargo, seguimos pensando en términos de átomos en lugar de en términos de bits: un subproducto mental típico de la era analógica. John Perry Barlow (1994) sostiene que la información es algo intangible y que, al igual que la luz o la materia, sus propiedades son paradójicas: la información no posee las propiedades del objeto sobre el que la codificamos, es más parecida a una actividad o a una relación y se propaga y evoluciona como una forma de vida.
4. Algunas repercusiones de las nuevas tecnologías
Las consecuencias de todos estos avances las estamos viviendo día a día. Sólo destacaremos brevemente algunas, para centrarnos a continuación, en sus repercusiones educativas.
Los medios electrónicos e impresos han producido una auténtica explosión en la cantidad de información que nos llega a las personas. Un fenómeno que no es nuevo: recordemos las razones que llevaron a Vanevar Bush a diseñar su «Memex», el concepto matriz de los hipertextos actuales, en la década de los cuarenta (Bush, 1945; Nyce y Kahn, 1991), pero que en las últimas décadas está tornándose más acusado si cabe. Se calcula que, al principio de la historia humana, costaba de 10.000 a 100.000 años doblar el conocimiento humano. Hoy cuesta menos de 15 años. En algunos campos, cada pocos años se hace necesario revisar las acreditaciones académicas (Bartolomé, 1996): una persona que no haya estudiado lo producido en los últimos años no está ya capacitada para desempeñar su profesión. Cualquier profesional que quiera mantenerse al día sobre el desarrollo de su disciplina sabe las horas que debe dedicar al estudio y a la puesta al día.
Un efecto asociado a esta explosión, fácilmente constatable, es el aumento del ruido en la comunicación. Hoy tenemos mucha información (o pseudoinformación) , pero, ¿estamos mejor informados? El problema ya no es conseguir información, sino seleccionar la relevante entre la inmensa cantidad que nos bombardea y evitar la saturación y la consiguiente sobrecarga cognitiva. Algunos autores han sugerido que los medios electrónicos de masas han transformado nuestra forma de percibir la realidad. Entre sus efectos: la disminución y dispersión de la atención, una cultura «mosaico», sin profundidad, la falta de estructuración, la superficialidad, la estandarización de los mensajes, la información como espectáculo, etc. Los nuevos lenguajes audiovisuales han dado lugar a una cultura de la imagen en movimiento para la que, por ejemplo, la escuela, una institución primordialmente oral-libresca, no nos prepara. Peor aún, los medios de comunicación de masas han creado lo que se ha denominado una «industria de la conciencia», una recreación mediatizada y manipulada de la realidad, al servicio de los intereses que controlan dichos medios y que ha sustituido en gran medida a la realidad real.
Por otra parte, es habitual la confusión entre información y conocimiento. El conocimiento implica información interiorizada y adecuadamente integrada en las estructuras cognitivas de un sujeto. Es algo personal e intransferible: no podemos transmitir conocimientos, sólo información, que puede (o no) ser convertida en conocimiento por el receptor, en función de diversos factores (los conocimientos previos del sujeto, la adecuación de la información, su estructuración, etc.).
La educación debe dar una respuesta a estos problemas. La institución escolar, que nació, entre otras cosas, para proporcionar información, compite ahora con fuentes de una increíble credibilidad (valga la expresión) como la TV, cuyo objetivo no es, evidentemente, ni formar, ni informar verazmente, ni educar sino más bien capturar audiencias masivas y venderlas a los anunciantes o, simplemente, ganar dinero. Los medios de comunicación y las redes informáticas han sido calificados acertadamente de «profesores salvajes» (Comisión Europea, 1995, pág. 29) y su influencia es enorme, sobre todo si tenemos en cuenta que la TV es la tercera actividad en tiempo empleado, tras el trabajo y el sueño, de la mayoría de los habitantes de los países occidentales.
Una segunda consecuencia de la ampliación de nuestra capacidad para codificar, almacenar, procesar y transmitir todo tipo de información es la transformación radical de dos condicionantes fundamentales en la comunicación: el espacio y el tiempo. Ambas están muy relacionadas. No en vano nuestros abuelos utilizaban unidades de tiempo para expresar distancias y superficies: el tiempo necesario para recorrerlas a pie o a caballo o para ararlas. Las nuevas tecnologías han desmaterializado, deslocalizado y globalizado la información. Al situarla en el «ciberespacio» (esa ‘alucinación consensual formada por todos los bancos de datos de todos los ordenadores del mundo interconectados entre sí’, parafraseando la definición del novelista William Gibson (1989)) la han liberado de las características de los objetos culturales tradicionales (objetos muebles como el libro, el cuadro o la fotografía), que la sustentaban y cuya materialidad nos limitaba fuertemente, y han eliminado los tiempos de espera para que el mensaje llegue del emisor al receptor. Como sostiene Negroponte (1995), hemos pasado de una cultura basada en el átomo a una cultura basada en el bit. Y mover átomos es caro y lento, mover bits es rápido y barato. Las implicaciones de este cambio son enormes ya que las coordenadas espacio-temporales son el marco de toda actividad humana. Las redes informáticas eliminan la necesidad de los participantes en una actividad de coincidir en el espacio y en el tiempo. Y este hecho desafía la manera en la que hemos hecho la mayor parte de las cosas durante muchos años. Una empresa, una universidad, un Parlamento o una sesión de cine se basan en la necesidad de unir a un grupo de personas en un tiempo y un espacio comunes para realizar actividades en las que interactúan entre sí. Esto no significa que todo lo que hacen las personas en estos entornos pueda realizarse a distancia, pero muchas de nuestras actuales formas de hacer las cosas datan de cuando la manera más rápida de hacer llegar la información de un lugar a otro era llevarla galopando a caballo.
Sin embargo, pese a que las sucesivas revoluciones tecnológicas parecen haber alejado al ser humano (y sus herramientas y medios de comunicación) de la biología y de la naturaleza, algunos autores destacan el carácter nuevamente «natural» de los medios digitales. Levinson (1990), por ejemplo, explica la evolución de las tecnologías de la comunicación como una sucesión de tres estadios:
- En el primero, nuestra especie se encuentra en un entorno comunicativo en el que todas las características del mundo natural percibido están presentes, pero en el que la comunicación está limitada por los límites biológicos de la vista, el oído y de la memoria.
- Para superar dichos límites biológicos, el ser humano desarrolla nuevas tecnologías (i.e., la escritura, que preserva el saber más allá de las limitaciones de la memoria o permite transmitir a distancia el pensamiento). El precio es la renuncia al entorno de comunicaciones natural, de los sentidos, pretecnológico (i.e., el «silencio» del texto, del que se quejaba Sócrates, o la falta de interactividad del libro, por emplear la terminología moderna).
- Los nuevos medios electrónicos (analógicos primero y posteriormente digitales) no sólo extienden nuestras posibilidades de comunicación más allá de nuestros límites biológicos, sino que recuperan elementos y características de la etapa pretecnológica anterior a la escritura (i.e. interactividad entre emisor y receptor, tiempo real, uso directo de los sentidos, etc.). La realidad hoy en día es experimentada vicariamente en cualquier lugar, en el mismo momento que sucede en la otra parte del planeta o es registrada para la posteridad. El uso de artefactos, curiosamente, nos ha devuelto los sentidos en la comunicación humana. El teléfono nos devolvió la conversación y eliminó gran parte de la correspondencia personal. La TV nos volvió a hacer testigos directos de los acontecimientos (testigos pasivos, por otra parte). Las nuevas tecnologías de la información, según Levinson (1990) y al contrario de lo que señalan muchos críticos, no están haciendo el mundo más artificial, sino, en el sentido indicado, más «natural». Evidentemente, es sólo una manera de verlo. Los interfases de usuario no son, ni mucho menos, naturales. La mediación del artefacto no es un proceso transparente. Tiene sus propios condicionantes, que debemos conocer si queremos emplearlas satisfactoriamente. Toda una escuela de pensamiento, la iniciada por McLuhan, cifra en el medio los determinantes fundamentales de la comunicación (¿recuerdan aquello de «El medio es el mensaje»?).
Una tercera característica de las nuevas tecnologías de la información que tiene enorme importancia, especialmente en educación, es la interactividad (Bartolomé, 1995), es decir, la posibilidad de que emisor y receptor permuten sus respectivos roles e intercambien mensajes. Los medios de comunicación de masas, los periódicos, la radio y la televisión, definen los papeles de los participantes de modo estático: por un lado el productor/distribuidor de la información y por el otro el receptor/consumidor de la información. Unos pocos emisores centralizados, que precisan recursos muy costosos, difunden mensajes estandarizados a una masa de receptores/consumidores pasivos y dispersos. Los nuevos medios se caracterizan por todo lo contrario: no existe un centro y una periferia, un emisor y una masa de espectadores. La inteligencia de las nuevas redes de comunicación está distribuida entre los nodos y pasar de la comunicación persona a persona a la comunicación de masas es sumamente sencillo. De hecho, la masa indiferenciada, creada por los medios de comunicación tradicionales, está desapareciendo para dar paso a grupos de interés e individuos que interactúan entre sí, formando comunidades virtuales, y que no sólo consumen información, sino que también la producen y distribuyen.
Las redes informáticas como la Internet, el campo de pruebas de los nuevos medios, son ejemplo de esta forma de interrelación. Permiten que sus usuarios participen de nuevas formas de interacción social. La estandarización de los mensajes ya no es una imposición de la estructura del medio. Incluso estamos asistiendo a una evolución de los medios tradicionales de masas ligada a las posibilidades de la digitalización y la ampliación del ancho de banda: televisión a la carta, video bajo demanda, «pay-per-view», periódicos personalizados («Daily Me»), etc. La masa amorfa e indivisa de consumidores se desgaja en grupos que forman audiencias especializadas y que buscan activamente la información que les interesa.
Pero los nuevos medios van más allá. En la sociedad de la información, el espacio y el tiempo ya no son condicionantes de la interacción social, del mismo modo que las fronteras y los límites nacionales no representan barreras para la circulación del capital, de la información, de los mercados, incluso el de trabajo, o las relaciones interpersonales. Un ejemplo de estas nuevas formas de interacción son las comunidades virtuales: grupos de personas que comparten un interés y que utilizan las redes informáticas como canal de comunicación barato y cómodo entre individuos espacialmente dispersos y temporalmente no sincronizados. Este rasgo, la interactividad, junto con la deslocalización, define más que cualquier otro las nuevas tecnologías de la información y posee implicaciones cruciales en todos los ámbitos de nuestra experiencia. Por ejemplo, y este tema será tratado más adelante, la Internet puede soportar modelos tradicionales de educación a distancia (cuando digo tradicionales, me refiero a «pedagógicamente tradicionales»), pero están emergiendo nuevos entornos de enseñanza/aprendizaje basados no sólo en formas de comunicación en tiempo real (videoconferencia, por ejemplo), sino también en técnicas didácticas de aprendizaje cooperativo y colaborativo (Salinas, 1995), sustentadas por la capacidad interactiva de la comunicación mediada por ordenador. Estos entornos rompen la unidad de tiempo, espacio y actividad de la enseñanza presencial, creando «aulas virtuales», esto es, espacios para la actividad docente/discente soportados por las facilidades de un sistema de comunicación mediada por ordenador. Es evidente que la mayoría de nuestros conocimientos sobre cómo enseñar provienen de entornos tradicionales y que, en muchos casos, no servirán en estos nuevos espacios.
Codecademy
-
HTML & CSS – Traducción al Español (América Latina)
Lo que vas a aprender …
- HTML & CSS
-
JavaScript – Traducción al Español (América Latina)
Lo que vas a aprender …
- JavaScript
-
Python – Traducción al Español (América Latina)
Python es un lenguaje de programación de uso general, orientado a objetos e interpretado.
Lo que vas a aprender …
- Programación dinámica
-
jQuery – Traducción al Español (América Latina)
jQuery es una manera de crear sitios web interactivos.
Lo que vas a aprender …
- jQuery es una manera de crear sitios web interactivos.
-
Ruby – Traducción al Español (América Latina)
Ruby es un lenguaje de programación increíblemente popular que hace funcionar infinidad de sitios web alrededor del mundo. Aprende a crear varias aplicaciones útiles rápida y fácilmente.
Lo que vas a aprender …
- Fundamentos de Ruby
- Hermosa sintaxis
- Prototipos rápidos
vía Codecademy.
Tweet de Kwell Seguridad (@kwellseguridad)
Kwell Seguridad (@kwellseguridad) twitteó a las 9:56 p.m. on mié, dic 05, 2012:
Hacker HighSchool: Chile aprovecha los años de experiencia exitosa en nuestro país. (http://t.co/8ATva1zH)
(https://twitter.com/kwellseguridad/status/276490331095175169)
TP Crea tu propia distro de Linux
TP Distro de linux
- Explicar el concepto GNU/Linux
- Definición, componentes y análisis del Kernel de Linux
- Que es una distro de linux?
- Nombrar y detallar con links e imágenes las principales distros de linux
- Listar las 2 distros principales en cada categoría
No comerciales.
Ser completamente libres
incluir software privativo.
Diseñadas para uso en el hogar
Diseñadas para uso en las empresas.
Diseñadas para servidores
Diseñadas para escritorios
Diseñadas para dispositivos empotrados.
Orientadas a usuarios regulares
Orientadas a usuarios avanzados.
De uso general
Para dispositivos altamente especializados, comoun cortafuegos, un enrutador o un cluster computacional.
Diseñadas e incluso certificadas para un hardware o arquitectura específicos.
Orientadas para la producción musical
Orientadas para computación científica
Orientadas a diseño gráfico
Orientadas a educación
Configuradas especialmente para ser más seguras
Configuradas especialmente para ser más completas
Configuradas especialmente para ser más portables
Configuradas especialmente para ser más fáciles de usar
Soportadas bajo distintos tipos de hardware.
Soportadas para PCs antiguas
- Preparar una distro educativa para el CEG (inicial, primario o secundario) en http://susestudio.com/
- Se presenta la distro instalada en su PC de la sala de info
- Se presenta todo el trabajo en su sitio, con una imagen ISO e imágenes de su distro corriendo
Remastersys http://www.geekconnection.org/remastersys/
http://es.wikipedia.org/wiki/Remastersys
This tool has a newbie-proof GUI and works on both Ubuntu and Debian distros and any of their derivatives.
Remastersys works by transferring the distro you’re running into an ISO image. You can choose to include your settings and personal data too, which makes it ideal for backups.
2. UCK http://uck.sourceforge.net/
The Ubuntu Customisation Kit – which is tastefully shortened to UCK – works with the ISO of any of the four Ubuntu flavours (the GNOME based original Ubuntu, KDE-based Kubuntu, Xfce-based Xubuntu and education-targeted Edubuntu) and lets you add or remove any apps to the stock.
This tool is ideal for advanced users because during the customisation process it places you in a chrooted environment of the Live CD, enabling you to tweak any aspect of the distro.
5. SUSE Studio http://susestudio.com/
Novell’s SUSE Studio is taking the world by storm. It lets you select packages, set various configurations (including network detection, firewall settings and so on) and select a logo, background and more.
The most impressive part is that all this functionality is accessed from within a browser. You can even test-drive your new distro – again from within the browser – before downloading the ISO image to share with the world.
7. Builder http://www.gnewsense.org/Main/HomePage
Builder is a series of bash scripts that are used by the gNewSense developers to create their distro. Along with the tool they’ve also written a handy nine-step guide to creating a customised distro from Ubuntu Hardy. The guide is available on their site.
Simuladores de circuitos eléctricos y electrónicos en línea | Nuevas tecnologías aplicadas a la educación | Educa con TIC
Simuladores de circuitos eléctricos y electrónicos en línea
Es una aplicación muy reciente y ya está recibiendo muy buenas críticas por su sencillez de uso. Permite diseñar muchos tipos de circuitos analógicos y digitales, simularlos, realizar cálculos, guardar los diseños y compartirlos con la comunidad.
Es un simulador de circuitos digitales que tiene dos versiones, una de pago para instalar y otra online. La versión en línea no permite guardar los diseños, pero si permite realizar simulaciones sencillas con puertas lógicas y flips-flops.
Este sencillo simulador online de circuitos digitales permite guardar los diseños realizados. Cuando guardamos el diseño, el programa nos proporciona una URL a la que podemos acceder para ver de nuevo la simulación o continuar modificando nuestro circuito.
Es una aplicación que nos permite obtener la tabla de verdad de un circuito lógico y, por lo tanto, la correspondiente función lógica.
Es una aplicación para construir circuitos sencillos y observar su comportamiento. No utiliza símbolos, sino dibujos de los componentes reales, pero podemos realizar mediciones con un multímetro u observar la señal en un osciloscopio.
Es otro sencillo simulador de circuitos eléctricos. Permite medir la intensidad o el voltaje en diferentes puntos del circuito y puede resultar útil para comprender la ley de Ohm en educación secundaria.
Hay que añadir que estos u otros simuladores, aunque son imprescindibles hoy en día, no deben sustituir la construcción real de circuitos eléctricos y electrónicos, la realización de prácticas y proyectos con los componentes físicos reales, pues en ellos se ponen en juego competencias y habilidades imposibles de desarrollar delante de la pantalla de un ordenador.
Capítulo 4 Traducción http://inventwithpython.com/
Ir al Capítulo 5 – Chistes |

Temas tratados en este capítulo:
- sentencia import
- Módulos
- Argumentos
- sentencia while
- Condiciones
- Bloques
- Booleanos
- Operadores de comparación
- La diferencia entre = y ==.
- sentencia if
- La palabra clave break.
- Funciones str() e int().
- Función random.randint().
El Juego «Adivina el Número»
Vamos a hacer un juego de «Adivina el Número». En este juego, la computadora «pensará» en un número aleatorio entre 1 y 20, y le pedirá al usuario que lo adivine. Usted sólo tiene seis oportunidades, pero la computadora le dirá si su suposición es demasiado alta o demasiado baja. Si adivina el número dentro de los seis intentos, usted gana.
Este es un buen juego para que usted pueda comenzar, ya que utiliza números aleatorios, ciclos, y la entrada del usuario en un programa bastante corto. A medida que escriba este juego, usted aprenderá cómo convertir los valores a diferentes tipos de datos (y por qué necesitaría hacerlo).
Debido a que este programa es un juego, vamos a llamar al usuario el jugador, pero la palabra «usuario» también sería correcta.
Muestra de la ejecución de «Adivina el Número»
Así es como el jugador verá nuestro juego cuando el programa se ejecute. El texto que ingresa el jugador está en negritas.
Alberto
Bueno, Alberto, estoy pensando en un número entre 1 y 20.
Adivinalo.
10
Tu intento es demasiado alto.
Adivinalo.
2
Tu intento es demasiado bajo.
Adivinalo.
4
Buen trabajo, Alberto! Has adivinado mi número en 3 intentos!
Introduzca el código exactamente como aparece aquí, y luego guardelo haciendo clic en el menú File y luego en Save As. Dele un nombre al archivo, tal como adivina.py y a continuación, ejecutelo presionando la tecla F5. No se preocupe si no entiende el código por ahora, más adelante voy a explicarlo paso a paso.
Código Fuente de «Adivina el Número»
Aquí está el código fuente de nuestro juego «Adivina el Número». Al introducir este código en el editor de archivos, asegúrese de prestar atención a la sangría de algunas de las líneas. Algunas líneas tienen cuatro u ocho espacios al inicio de ellas. Después de que usted haya escrito el código, guarde el archivo como adivina.py. Puede ejecutar el programa desde el editor de archivos presionando F5. Si ve un mensaje de error, compruebe que ha escrito el programa exactamente como está escrito aqui.
Si no desea escribir todo este código, puede descargarlo en inglés desde el sitio web original de este libro en la dirección URL http://inventwithpython.com/chapter4.
Nota Importante! Asegúrese de ejecutar este programa con Python 3, y no con Python 2. Los programas en este libro utilizan Python 3, obtendrá errores si intenta ejecutarlos con Python 2. Puede hacer clic en Help y luego en About IDLE para averiguar cual es la versión de Python que tiene.
Este código puede descargarse en ingles desde http://inventwithpython.com/guess.py
Si obtiene errores después de escribir este código, puede compararlo con el código del libro con la herramienta en línea desde http://inventwithpython.com/diff o por correo electrónico con el autor en al@inventwithpython.com (N. del T. unicamente en inglés)
- # Este es un juego de adivinar el número.
- import random
- numeroIntentos = 0
- print (‘¡Hola! ¿Cuál es tu nombre? ‘)
- miNombre = input()
- numero = random.randint(1, 20)
- print ( ‘Bien, ‘ + miNombre + ‘, estoy pensando en un número entre 1 y 20.’)
- while numeroIntentos < 6:
- print ( «Adivinalo.) # Hay cuatro espacios antes de print
- adivina = input()
- adivina = int(adivina)
- numeroIntentos = numeroIntentos + 1
- if adivina < numero:
- print (‘Tu intento es demasiado bajo.’) # Hay ocho espacios antes de print.
- if adivina > numero:
- print ( ‘Tu intento es demasiado alto. ‘ )
- if adivina == numero:
- break
- if adivina == numero:
- numeroIntentos = str(numeroIntentos)
- print ( ‘Buen trabajo,’ + miNombre + ‘! Has adivinado mi número en’ + numeroIntentos + ‘ intentos! ‘)
- if adivina != numero:
- numero = str(numero)
- print ( ‘No. El número que estaba pensando era ‘ + numero)
A pesar de que estamos entrando en nuestro código fuente en una nueva ventana del editor de archivos, podemos volver a la shell para entrar en las instrucciones individuales para ver lo que hacen. El intérprete de comandos interactivo shell es muy bueno para experimentar con diferentes instrucciones cuando no se está ejecutando un programa. Usted puede regresar al intérprete de comandos interactivo haciendo clic en su ventana o en su botón de la barra de tareas. En Windows o Mac OS X, la barra de tareas está en la parte inferior de la pantalla. En Linux la barra de tareas puede ser localizado en la parte superior de la pantalla.
Si el programa no funciona después de que usted lo ha escrito, compruebe si ha escrito el código exactamente como aparece en este libro. También puede copiar y pegar el código en línea en la herrmienta «diff» en http://inventwithpython.com/diff. esta le mostrará cómo el código es diferente del código fuente de este libro. En el editor de archivos, pulse Ctrl-A para «Seleccionar todo» el texto que has escrito, a continuación, pulse Ctrl + C para copiar el texto en el portapapeles. A continuación, pega este texto haciendo clic en el campo de texto de la herramienta de diferencias en el sitio web y haz clic en el botón «Compare». (NOTA DEL TRADUCTOR: Esta herramienta solo funciona con el código en inglés) El sitio web le mostrará todas las diferencias entre el código y el código en este libro.
Hay una herramienta de diferencias para cada programa en este libro en el sitio web de http://inventwithpython.com.
La sentencia Import
Echemos un vistazo a cada línea de código a su vez, para ver cómo funciona este programa.
- # Este es un juego de adivinar el número.
Esta línea es un comentario. Los comentarios se introdujeron en nuestro programa Hola Mundo en el Capítulo 3. Recuerde que Python ignora todo lo que hay después del signo #. Esto sólo nos recuerda lo que hace el programa.
- import random
Esta es una sentencia import. Las sentencias no son funciones (note que ni en import ni en random hay paréntesis después de su nombre). Recuerde, las sentencias son instrucciones que realizan alguna acción, pero no se evalúan como un valor. Ya has visto las sentencias: las de asignación almacenan un valor en una variable (pero la sentencia no evalúa nada).
Si bien Python incluye muchas funciones incorporadas, algunas de las funciones existentes en programas separados llamados módulos. Los módulos son programas Python que contienen funciones adicionales. Nosotros usamos las funciones de estos módulos poniendo en nuestros programas la sentencia import. En este caso, estamos importando el módulo random .
La sentencia import se compone de la palabra clave import seguida por el nombre del módulo. En conjunto, la palabra clave y el nombre del módulo componen la sentencia. La línea 2 es, pues, una sentencia import que importa el módulo llamado random, que contiene varias funciones relacionadas con los números al azar. (Vamos a utilizar una de estas funciones más tarde en la computadora para obtener un número aleatorio que podamos adivinar.)
- numeroIntentos = 0
Esta línea crea una nueva variable llamada numeroIntentos. Vamos a almacenar el número de turnos que el jugador hace en esta variable. Dado que el jugador no ha hecho ningún intento hasta ahora, almacenamos el entero 0 aquí.
- print ( «¡Hola! ¿Cuál es tu nombre? «)
- miNombre = input()
Líneas 6 y 7 son las mismas que las líneas en el programa Hola Mundo que vimos en el capítulo 3. Los programadores de código a menudo reutilizan el código de sus otros programas cuando necesitan programar para hacer algo que ya han codificado antes.
La línea 6 es una llamada de función a la función print (). Recuerde que una función es como un mini-programa que nuestro programa ejecuta, y cuando nuestro programa llama a una función esta ejecuta el mini-programa. El código dentro de la función print () muestra la cadena que puso dentro de los paréntesis en la pantalla.
Cuando estas dos líneas finalizan su ejecución, la cadena que es el nombre del jugador será almacenada en la variable miNombre. (Recuerde, la cadena podría no ser realmente el nombre del jugador. Es justo la cadena que el jugador escribió. Las computadoras son tontas y sólo siguen sus programas sin importar qué.)
La función random.randint()
- numero = random.randint(1, 20)
En la línea 9 llamamos a una nueva función llamada randint (), y después almacenamos el valor de retorno en una variable llamadanumero . Recuerde que las llamadas a funciones son expresiones, ya que se evalúan a un valor. A este valor le llamamos valor de retorno de la llamada a la función.
Debido a que el randint () es proporcionado por el módulo random, debemos precederla con random. (No olvidar el periodo!) para decirle a nuestro programa que la function randint () está en el módulo random.
La función randint () devuelve un entero aleatorio entre (e incluyendo) los dos enteros que le demos. Aquí, le damos los números enteros 1 y 20 entre los paréntesis que siguen al nombre de la función (separados por una coma). El número entero aleatorio que randint () devuelve se almacena en una variable llamada numero -este es el número secreto que el jugador trata de adivinar.
Sólo por un momento, vuelve al shell interactivo e introduzca import random para importar el módulo random. A continuación, introduzca random.randint (1, 20) para ver lo que la llamada a la función evalúa. Debe devolver un número entero entre 1 y 20. A continuación, introduzca el mismo código de nuevo y la llamada a la función, probablemente devolverá un número entero diferente. Esto es porque cada vez que se llama la función randint (), devuelve un número aleatorio, como cuando se lanzan los dados usted obtendrá un número al azar en cada ocasión.
>>> Random.randint (1, 20)
12
>>> Random.randint (1, 20)
18
>>> Random.randint (1, 20)
3
>>> Random.randint (1, 20)
18
>>> Random.randint (1, 20)
7
>>>
Cada vez que queremos añadir azar a nuestros juegos, podemos utilizar la función randint (). Y usamos la aleatoriedad en la mayoría de los juegos. (Piense en los juegos de mesa que muchos utilizan como los dados.)
También puede probar diferentes gamas de números, cambiando los argumentos. Por ejemplo, escriba random.randint (1, 4) a obtener sólo números enteros entre 1 y 4 (incluyendo tanto 1 y 4). O intente random.randint (1000, 2000) para obtener números enteros entre 1000 y 2000. Aquí hay un ejemplo de llamada a la función random.randint () para ver cuáles son los valores que devuelve. Los resultados que se obtienen cuando se llama a la función random.randint () probablemente serán diferentes (que es al azar, después de todo).
3
>>> Random.randint (1, 4)
4
>>> Random.randint (1000, 2000)
1294
>>> Random.randint (1000, 2000)
1585
>>>
Podemos cambiar el código del juego ligeramente para que el juego se comportan de manera diferente. Pruebe a cambiar la línea 9 y 10 esto:
- numero = random.randint(1, 20)
- print ( ‘Bien, ‘ + miNombre + ‘, estoy pensando en un número entre 1 y 20.’)
Por estas líneas:
- numero = random.randint(1, 100)
- print ( «Bien, ‘+ miNombre +», estoy pensando en un número entre 1 y 100.)
Y ahora el equipo piensa en un número entero entre 1 y 100. Un cambio en la línea 9 va a cambiar el rango de números aleatorios, pero recuerda cambiar la línea 10 para que el juego también le diga al jugador la nueva gama en lugar de la antigua.
Llamar a funciones que están dentro de módulos
Por cierto, no olvide introducir random.randint (1, 20) y no sólo randint (1, 20), o la computadora no sabrá cómo buscar en el módulo random la función randint () y obtendrá un error como este:
Traceback (most recent call last):
File «<stdin>», line 1, in <module>
NameError: name ‘randint’ is not defined
>>>
Recuerde que su programa para funcionar necesita import random antes de llamar a la función random.randint (). Esta es la razón por la que las sentencias import random por lo general van al inicio del programa.
Pasar argumentos a las funciones
Los valores enteros entre los paréntesis en la llamada a función random.randint (1, 20) se llaman argumentos. Los argumentos son los valores que se pasan a una función cuando la función es llamada. Los argumentos le dicen a la función cómo comportarse. Al igual que los cambios de entrada del jugador de cómo se comporta nuestro programa, los argumentos son insumos para las funciones.
Algunas funciones requieren que usted le pase los valores cuando se las llama. Por ejemplo, mire estas llamadas a función:
print ( ‘Hola’)
random.randint (1, 20)
La función input() no tiene argumentos, pero la llamada a la función print() tiene una y la llamada a función randint () tiene dos. Cuando tenemos más de un argumento, los separamos cada uno con comas, como se puede ver en este ejemplo. Los programadores dicen que los argumentos están delimitados (es decir, separados) por comas. Así es como la computadora sabe dónde un valor termina y empieza otro.
Si pasa muchos o muy pocos argumentos en una llamada a función, Python mostrará un mensaje de error, como se puede ver a continuación. En este ejemplo, el primero llama randint () con un único argumento (muy pocos), y luego llama randint () con tres argumentos (demasiados).
Traceback (most recent call last):
File «<pyshell#1>», line 1, in <module>
random.randint (1)
TypeError: randint() takes exactly 3 positional arguments (2 given)
>>> Random.randint (1, 2, 3)
Traceback (most recent call last):
File «<pyshell#2>», line 1, in <module>
random.randint (1, 2, 3)
TypeError: randint() takes exactly 3 positional arguments (4 given)
>>>
Observe que el mensaje de error dice que pasó de 2 y 4 argumentos en lugar de 1 y 3. Esto es así porque Python siempre pasa un extra, el argumento invisible. Este argumento está fuera del alcance de este libro, y usted no tiene que preocuparse por ello.
Bienvenida al jugador
Las líneas 10 y 12 dan la bienvenida al jugador y le dice sobre el juego, y luego empieza a dejar que el jugador adivine el número secreto. La línea 10 es bastante simple, pero la línea 12 se introduce un concepto avanzado (pero útil) llamado un bucle.
- print ( «Bien», ‘ + miNombre + ‘, estoy pensando en un número entre 1 y 20.)
En la línea 10 la función print () da la bienvenida al jugador por por su nombre, y le dice que la computadora está pensando en un número aleatorio.
Pero espera – no digo que la función print () tiene sólo una cadena (string)? Puede parecer que allí hay más de una cadena Pero observa en la línea con cuidado. Los signos más concatenan las tres cadenas para evaluar a una sola cadena, y que es la tcadena que print () imprime la función. Podría verse como que las comas separan las cadenas, pero si se mira de cerca se ve que las comas están dentro de las comillas, y parte son parte de las cadenas.
Loops
La línea 12 tiene algo llamado una sentencia, while lo que indica el comienzo de un bucle while. Loops son partes de código que se ejecuta una y otra vez. Pero antes de que podamos aprender acerca de los bucles while, tenemos que aprender algunos conceptos de otros primero. Estos conceptos son los bloques, booleanos, operadores de comparación, las condiciones, y, por último, la sentencia while.
Bloques
Un bloque es una o más líneas de código agrupado junto con el nivel mínimo de sangría. Se puede decir que un bloque empieza y termina mirando a la sangría de la línea (es decir, el número de espacios en el frente de la línea).
Un bloque comienza cuando una línea se sangría de cuatro espacios. Cualquier línea siguiente que es también sangría de cuatro espacios es parte del bloque. Un bloque dentro de un bloque comienza cuando una línea se sangra con otros cuatro espacios (para un total de ocho espacios delante de la línea). El bloque termina cuando hay una línea de código con la misma sangría antes de que el bloque de empezar.
A continuación se muestra un diagrama del código con los bloques descritos y numerados. Los espacios se han llenado cuadrados de color negro para hacerlas más fáciles de contar.
Figura 4-1: Bloques y su sangría.
Por ejemplo, mire el código anterior. Los espacios han sido reemplazados por casillas negras para que sean más fáciles de contar. La línea 12 tiene un sangrado de cero espacios y no dentro de cualquier bloque. La línea 13 tiene una sangría de cuatro espacios. Dado que este sangrado es mayor que el sangrado de la línea anterior, podemos decir que un bloque nuevo ha comenzado. Líneas 14, 15, 17 y 19 también tienen cuatro espacios para el sangrado. Estas dos líneas tienen la misma cantidad de sangría que la línea anterior, por lo que sabemos que están en el mismo bloque. (No contamos líneas en blanco cuando miramos para el sangrado.)
La línea 20 tiene una sangría de ocho espacios. Ocho espacios de más de cuatro espacios, así que sabemos un bloque nuevo ha comenzado. Este es un bloque que está dentro de otro bloque.
Línea 22 sólo cuenta con cuatro espacios. De la línea antes de la línea 22 había un mayor número de espacios. Debido a que el sangrado haya disminuido, sabemos que el bloque ha terminado. La línea 22 se encuentra en la misma cuadra que las otras líneas, con cuatro espacios.
La línea 23 aumenta la sangría de ocho espacios, por lo que de nuevo un bloque nuevo ha comenzado.
Para recapitular, la línea 12 no es en ningún bloque. Líneas 13 a 23 en un solo bloque (marcado con el círculo 1). La línea 20 se encuentra en un bloque en un bloque (marcado con un círculo 2). Y la línea 23 es la única línea en otro bloque en un bloque (marcado con un círculo 3).
Cuando se escribe código en IDLE, cada letra es la misma anchura. Puede contar el número de letras por encima o por debajo de la línea para ver cuántos espacios se han puesto por delante de esa línea de código.
En esta figura, las líneas de código dentro del cuadro 1 están todos en el mismo bloque, y los bloques 2 y 3 están dentro del bloque 1. Bloque 1 se sangra con al menos cuatro espacios desde el margen izquierdo, y los bloques 2 y 3 son sangría ocho espacios desde el margen izquierdo. Un bloque puede contener una sola línea. Tenga en cuenta que los bloques 2 y 3 son sólo una línea de cada uno.
El tipo de datos Boolean
El tipo de datos Boolean tiene sólo dos valores: Verdadero o Falso. Estos valores son mayúsculas y minúsculas y no son valores de cadena, en otras palabras, usted no pone un «carácter de comillas alrededor de ellos. Vamos a utilizar valores booleanos con los operadores de comparación para formar condiciones. (Ver más abajo.)
Operadores de comparación
En la línea 12 de nuestro programa, la línea de código que contiene la sentencia, mientras que:
- mientras que numeroIntentos <6:
La expresión que sigue a la palabra clave al mismo tiempo (numeroIntentos <6) contiene dos valores (el valor en el numeroIntentos variable y el valor entero 6) conectado por un operador (el signo <, la «menos de» signo). El signo <se llama un operador de comparación. El operador de comparación se utiliza para comparar dos valores y evaluar a un Verdadero o Falso valor booleano. Una lista de todos los operadores de comparación está en la tabla 2-1. |
Condiciones
Una condición es una expresión que combina dos valores con un operador de comparación (como <o>) y se evalúa como un valor booleano. Una condición es sólo otro nombre para una expresión que se evalúa como verdadero o falso. Usted encontrará una lista de otros operadores de comparación en la tabla 2-1.
Condiciones siempre se evalúan como un valor booleano, ya sea verdadero o falso. Por ejemplo, la condición en nuestro código, numeroIntentos <6 pide «es el valor almacenado en numeroIntentos menos que el número 6?» Si es así, entonces la condición se evalúa como True. Si no, la condición se evalúa como False.
En el caso de nuestro programa de adivinar el número, en la línea 4 que almacena el valor 0 en numeroIntentos. Ya que 0 es menor de 6, esta condición se evalúa el valor booleano de True. Recuerde, una condición es sólo un nombre para una expresión que utiliza los operadores de comparación como <o!=.
Experimente con booleanos, operadores de comparación, y condiciones
Introduce las siguientes expresiones en el shell interactivo para ver los resultados de Boole:
Cierto.
>>> 6 <0
Falso.
>>> 50 <10
Falso.
>>> 10 <11
Cierto.
>>> 10 <10
Falso.
La condición 0 <6 devuelve el valor booleano True porque el número 0 es menor que el número 6. Pero debido a que 6 no es inferior a 0, la condición 6 <0 se evalúa como False. 50 no sea inferior a 10, así que 50 <10 es falso. 10 es inferior a 11, por lo que 10 <11 es True.
Pero lo que alrededor de 10 <10? ¿Por qué evaluar a Falso? Es falso, porque el número 10 no es menor que el número 10. Son exactamente el mismo tamaño. Si Alice era la misma altura que Bob, que no quiso decir que Alice es más alto que Pedro o que Alice es más corta que la de Bob. Ambas de estas sentencias sería falso.
Prueba a introducir algunas condiciones al interior del depósito para ver cómo funcionan estos operadores de comparación:
Cierto.
>>> 10 == 11
Falso.
>>> 11 == 10
Falso.
10.10.
Falso.
10.= 11
Cierto.
>>> ‘Hola’ == ‘Hola’
Cierto.
>>> ‘Hola’ == ‘Good bye’
Falso.
>>> ‘Hola’ == ‘Hola’
Falso.
>>> ‘Good bye’!Hola!
Cierto.
Observe la diferencia entre el operador de asignación (=) y la «igual a» operador de comparación (==). La igualdad (=) el signo se utiliza para asignar un valor a una variable, y el equivalente a (signo ==) se utiliza en expresiones para ver si dos valores son iguales. Es fácil de utilizar uno accidentalmente cuando nos referimos a utilizar el otro, así que ten cuidado de lo que escribe pulg
Dos valores que son diferentes tipos de datos no siempre son iguales entre sí. Por ejemplo, puede ingresar el siguiente en el intérprete de comandos interactivo:
Falso.
>>> 42!Hola!
Cierto.
Bucles con while
La sentencia, mientras que marca el comienzo de un ciclo. A veces en nuestros programas, queremos que el programa para hacer algo una y otra vez. Cuando la ejecución llega a una sentencia, mientras, se evalúa la situación junto a la palabra clave al mismo tiempo. Si la condición se evalúa como True, la ejecución se mueve en el interior del bloque de tiempo. (En nuestro programa, mientras que el bloque comienza en la línea 13.) Si la condición se evalúa como False, la ejecución se mueve todo el camino pasado, mientras que el bloque. (En nuestro programa, la primera línea después del bloque, mientras que es la línea 28.)
- mientras que numeroIntentos <6:
Figura 4-2: La condición de bucle while.
Figura 4-2 muestra cómo la ejecución de los flujos en función de la condición. Si la condición se evalúa como True (que lo hace por primera vez, porque el valor de numeroIntentos es 0), la ejecución, mientras que entrar en el bloque en la línea 13 y seguirá bajando. Una vez que el programa llega a la final del bloque, mientras que, en lugar de bajar a la línea siguiente, pero vuelve a crecer, mientras que a la línea de instrucción (línea 12). A continuación, re-evalúa la condición, y si es cierto que entramos en el bloque, mientras que otra vez.
Así es como funciona el bucle. Mientras que la condición es True, el programa mantiene la ejecución del código dentro del bloque, mientras que en varias ocasiones hasta llegar a la final del bloque y al mismo tiempo la condición es falsa. Y, hasta numeroIntentos es igual o superior a 6, vamos a seguir bucle.
Piense en la sentencia, mientras que decir «, mientras que esta condición se cumple, siga recorriendo el código de este bloque».
Usted puede hacer el juego más difícil o más fácil de cambiar el número de turnos que el jugador recibe. Todo lo que tienes que hacer es cambiar esta línea:
- mientras que numeroIntentos <6:
en esta línea:
- mientras que numeroIntentos <4:
… y ahora el único jugador recibe cuatro suposiciones en lugar de seis conjeturas. Al establecer la condición de numeroIntentos <4, nos aseguramos de que el código dentro del bucle sólo se ejecuta en cuatro ocasiones en lugar de seis. Esto hace el juego mucho más difícil. Para hacer el juego más fácil, establecer como condición para numeroIntentos <8 o numeroIntentos <10, lo que hará que el bucle se ejecuta un par de veces más que antes y aceptar más respuestas de los jugadores.
Por supuesto, si quitamos la línea 17 en total entonces el numeroIntentos no aumentaría y la condición siempre sería verdad. Esto daría al jugador un número ilimitado de intentos.
Las conjeturas Player
Líneas 13 a 17 pedirá al siguiente jugador que adivinar lo que el número secreto y se les permite entrar en su conjetura. Nosotros guardamos esta suposición en una variable, y luego convertir el valor de la cadena en un valor entero.
- print ( «Adivina.) # Hay cuatro espacios en frente de la impresión.
- Supongo = entrada ()
El programa ahora se nos pide una conjetura. Nos tipo en nuestra suposición, y que el número se almacena en una variable llamada adivinar.
Conversión de cadenas en enteros con la función Int ()
- Supongo = int (supongo)
En la línea 15, que llamamos una nueva función llamada int (). La función Int () toma un argumento. La entrada () la función devuelve una cadena de texto que el jugador escribió. Sin embargo, en nuestro programa, queremos un entero, no una cadena. Si el jugador entra en 5, como su conjetura, la entrada () función devuelve el valor de la cadena «5» y no el valor entero 5. Recuerde que Python considera la cadena «5» y el entero 5 a diferentes valores. Así que la función Int () tendrá el valor de cadena que se le da y devolver el formulario valor entero de la misma.
Vamos a experimentar con la función Int () en el shell interactivo. Pruebe a escribir lo siguiente:
42
>>> Int (42)
42
>>> Int ( ‘hola’)
Traceback (most recent call last):
Archivo «<pyshell#4>», línea 1, en <module>
int ( ‘cuarenta y dos)
ValueError: inválido literal for int () con base 10: ‘Hola’
>>> Int ( «cuarenta y dos)
Traceback (most recent call last):
Archivo «<pyshell#5>», línea 1, en <module>
int ( ‘cuarenta y dos)
ValueError: inválido literal for int () con base 10: «Cuarenta y dos»
>>> Int ( ’42’)
42
>>> 3 + int (‘2 ‘)
5
Podemos ver que la int (’42 ‘) llamada devolverá el valor entero de 42 años, y que int (42) hará lo mismo (aunque es una especie de sentido de convertir un entero a un entero). Sin embargo, aunque usted puede pasar una cadena a la función Int (), usted no sólo puede pasar cualquier cadena. Por ejemplo, pasar ‘hola’ a int () (como lo hacemos en el int ( ‘hola’) llamada) resultará en un error. La cadena se pasa a int () debe estar compuesto de números.
El entero se pasa a int () también debe ser numérico, en lugar de texto, por lo que int ( «cuarenta y dos»), también produce un error. Dicho esto, la función Int () es un poco indulgente, si nuestra cadena tiene espacios en cada lado, todavía se ejecutará sin error. Esta es la razón por la int ( ’42’) las obras de llamada.
El 3 + int (‘2 ‘) muestra una expresión que se añade un número entero de 3 a el valor de retorno de int (‘2’) (que evalúa a 2, así). La expresión se evalúa como 3 + 2, que a continuación se evalúa a 5. Así que, aunque no podemos añadir un número entero y una cadena (3 + ‘2 ‘nos mostraría un error), podemos añadir un número entero a una cadena que se ha convertido en un entero.
Recuerde, de nuevo en nuestro programa en la línea 15 de la variable supongo que originariamente el valor de la cadena de lo que el jugador escribió. Le sustituye el valor de cadena almacenada en adivinar con el valor entero devuelto por la función Int (). Esto se debe a que más tarde se compara adivinar el jugador con el número aleatorio del equipo se le ocurrió. , Sólo podemos comparar dos valores enteros para ver si uno es mayor (es decir, superior) o menos (es decir, más baja) que la otra. No podemos comparar un valor de cadena con un valor entero para ver si uno es mayor o menor que el otro, incluso si ese valor de la cadena es numérica, tales como «5».
En nuestro juego de adivinar el número, si los tipos de jugadores en algo que no es un número, entonces la llamada a la función int () resultará en un error y el programa se bloqueará. En los otros juegos de este libro, vamos a añadir algo más de código para comprobar las condiciones de error como este y dar al jugador una nueva oportunidad para entrar en una respuesta correcta.
Tenga en cuenta que llamar int (supongo) no cambia el valor de la variable de adivinar. La int código (supongo) es una expresión que se evalúa la forma de valor entero de la cadena almacenada en la variable de adivinar. Debemos asignar este valor de retorno de adivinar el fin de cambiar el valor de adivinar a un entero con esta línea completa: adivinar = int (supongo)
El incremento de variables
- numeroIntentos = numeroIntentos + 1
Una vez que el jugador ha tomado una conjetura, queremos aumentar el número de adivinanzas que nos recuerda el jugador que toma.
La primera vez que entramos en el bloque de bucle, numeroIntentos tiene el valor de 0. Python tendrá este valor y se añade 1 a la misma. 0 + 1 1. Luego Python almacenar el nuevo valor de 1 a numeroIntentos.
Piense en la línea 17 en el sentido de «la variable numeroIntentos debe ser uno más de lo que ya es».
Cuando añadimos una a un valor, los programadores dicen que están incrementando el valor (porque es cada vez mayor por uno). Cuando se le resta uno de un valor, estamos decrementar el valor (porque es una reducción de un uno). La próxima vez que el bloque de bucles bucle alrededor, numeroIntentos tendrá el valor de 1 y se incrementa con el valor 2.
Guess es el reproductor es demasiado baja?
Líneas 19 y 20 de comprobar si el número que el jugador adivinar es menor que el número aleatorio secreto que el equipo se inventó. Si es así, queremos decirle al jugador que su suposición era demasiado baja, imprima este mensaje en la pantalla.
si las sentencias
- si <adivinar número:
- print ( «Su conjetura es demasiado baja.») # Hay ocho espacios en frente de la impresión.
La línea 19 se inicia una instrucción if con la palabra clave, si. Junto a la palabra clave es si la condición. La línea 20 se inicia un nuevo bloque (se puede decir, porque ha aumentado la sangría de la línea 19 a la línea 20.) El bloque que sigue a la palabra clave si se llama si-bloque. Una sentencia if se utiliza si sólo desea un poco de código que se ejecutará si alguna condición es True. La línea 19 tiene una instrucción if con la condición de adivinar <número. Si la condición se evalúa como True, entonces el código en el bloque si es ejecutada. Si la condición es falsa, entonces el código en el bloque-si se omite.
Figura 4-3: si y mientras las sentencias.
Al igual que la sentencia, mientras que, si la sentencia también tiene una palabra clave, seguida de una condición, y luego un bloque de código. Ver la Figura 4-3 para una comparación de las dos sentencias.
La sentencia de si funciona casi de la misma manera como una sentencia, mientras que, también. Pero a diferencia del bloque, mientras que, la ejecución no salta de nuevo a la sentencia de si al final de la cuadra si. Simplemente continúa hasta la siguiente línea. En otras palabras, si los bloques no se repetirá.
Si la condición es True, se ejecutan todas las líneas dentro del bloque if. La línea sólo si dentro de este bloque en la línea 19 es una impresión () llamada a la función.
Si el entero que el jugador entra es menor que el entero aleatorio del equipo pensado, el programa muestra su suposición es demasiado baja. Si el entero el jugador entra es igual o mayor que el entero aleatorio (en cuyo caso, la condición junto a la palabra clave si hubiera sido falso), entonces este bloque se han saltado.
Adivina el jugador es demasiado alto?
Líneas 22 a 26 en nuestro programa de verificación, si creo que el jugador es demasiado grande o exactamente igual al número secreto.
- si> Supongo número:
- print ( «Su conjetura es demasiado alto.»)
Si creo que el jugador es mayor que el entero aleatorio, si entramos en el bloque que sigue a la sentencia if. La impresión () línea le dice al jugador que su suposición es demasiado grande.
Dejando Loops temprano con la instrucción break
- == adivinar si el número:
- romper
Esta condición, si los controles sentencia para ver si la conjetura es igual al número entero aleatorio. Si es así, entramos en la línea 26, si el bloque que le sigue.
La línea dentro del bloque-si es una sentencia de ruptura que le dice al programa que de inmediato saltar del bloque, mientras que a la primera línea después del final del tiempo-bloque. (La instrucción break no se molesta en verificar de nuevo, mientras que la condición de bucle, sólo se rompe de inmediato.)
La sentencia break es la palabra clave romper por sí mismo, sin condición o colon (: signo).
Si creo que el jugador no es igual al número entero aleatorio, no romper el bloque, mientras que, llegaremos a la parte inferior del bloque, mientras que de todos modos. Una vez que llegamos a la parte inferior del bloque, mientras que, el programa se repetirá de nuevo a la parte superior y otra vez, la condición (numeroIntentos <6). Recuerde que después de la numeroIntentos = numeroIntentos + 1 línea de código que se ejecuta, el nuevo valor de la numeroIntentos 1. Debido a que 1 es inferior a 6, entramos en el bucle de nuevo.
Si el jugador sigue adivinar demasiado alto o demasiado bajo, el valor de numeroIntentos cambiará a 2, luego 3, luego 4, luego 5, y 6. Si el jugador adivinar el número correctamente, la condición en el caso de adivinar == sentencia número sería verdad, y nos habría ejecutado la sentencia break. De lo contrario, seguimos en bucle. Pero cuando numeroIntentos ha almacenado el número 6, mientras que la condición de sentencia es falsa, ya que 6 no es inferior a 6. Porque si bien la condición de la sentencia es falsa, no vamos a entrar en el bucle y en lugar de ir al final del bloque de tiempo.
El resto de líneas de código se ejecuta cuando el jugador ha terminado de adivinar (ya sea porque el jugador adivinar el número correcto, o porque el jugador salió corriendo de conjeturas). La razón por la que el jugador salió del bucle anterior determinará si se gana o se pierde el juego, y el programa mostrará el mensaje apropiado en la pantalla para cada caso.
Compruebe si el won Player
- == adivinar si el número:
A diferencia del código de la línea 25, esta línea no tiene sangría, lo que significa que el bloque, mientras que ha terminado y esta es la primera línea, mientras que fuera del bloque. Cuando salimos del bloque de tiempo, lo hicimos bien porque el estado, mientras que la sentencia era falsa (cuando el jugador se queda sin conjeturas) o si se ejecuta la instrucción de ruptura (cuando el jugador adivina el número correctamente). Con la línea 28, de verificación de nuevo para ver si el jugador adivinado correctamente. Si es así, si entramos en el bloque que sigue.
- numeroIntentos str = (numeroIntentos)
- print ( ‘Buen trabajo,’ miNombre + + ‘! Lo has adivinado mi número en el ‘numeroIntentos + +’ conjeturas ‘)
Líneas 29 y 30 están dentro del bloque if. Ellos sólo se ejecutarán si el número de la condición en el caso de sentencia en la línea 28 era cierto (es decir, si el jugador adivinó correctamente el ordenador).
En la línea 29 (que es similar a la conjetura = int (supongo) el código de la línea 15), llamamos a la nueva función str (), que devuelve la forma de cadena de un argumento. Nosotros usamos esta función porque queremos cambiar el valor entero en numeroIntentos en su versión en cadena porque sólo podemos usar cadenas en las llamadas a imprimir ().
La línea 29 le dice al jugador que ha ganado, y cuántas conjeturas que las tomó. Anuncio en esta línea que se modifica el valor numeroIntentos en una cadena porque sólo podemos añadir cadenas a otras cadenas. Si fuéramos a tratar de añadir una cadena a un entero, el intérprete de Python mostrará un error.
Compruebe si el reproductor de Lost
- si creo!= Número:
En la línea 32, que usamos el operador de comparación!= Con la sentencia de si la condición para decir «no es igual a». » Si el valor de adivinar el jugador es inferior o superior (y por lo tanto, no es igual a) el número elegido por el equipo, entonces esta condición se evalúa como True, y entramos en el bloque que sigue a esta sentencia, si en la línea 33.
Líneas 33 y 34 están dentro del bloque si, y sólo se ejecutarán si la condición es True.
- str = número (número)
- print ( ‘No. El número que pensaba era «+ número)
En este bloque, le decimos al jugador lo que el número es porque no adivinar correctamente. Pero primero tenemos que guardar la versión de serie de serie como el nuevo valor de número.
Esta línea también en el interior del bloque si, y sólo se ejecuta si la condición era cierto. En este punto, hemos llegado al final del código, y el programa termina.
¡Felicidad! Acabamos de programar nuestro juego real primero!
Resumen: ¿Qué es exactamente la programación?
Si alguien te pregunta, «¿Qué es exactamente la programación de todos modos?» ¿Qué podrías decir a ellos? La programación es sólo la acción de escribir código para programas, es decir, la creación de programas que pueden ser ejecutadas por una computadora.
«Pero ¿qué es exactamente un programa?» Cuando usted ve a alguien usando un programa de ordenador (por ejemplo, jugar nuestro juego Guess The Number), todo lo que ves es un texto que aparece en la pantalla. El programa decide qué texto exacto para mostrar en la pantalla (que se llama el producto), sobre la base de sus instrucciones (es decir, el programa) y en el texto que el jugador pulse en el teclado (que se llama la entrada). El programa tiene instrucciones muy específicas sobre lo que el texto para mostrar al usuario. Un programa es sólo una colección de instrucciones.
«¿Qué tipo de instrucciones?» Hay sólo unos pocos tipos diferentes de instrucciones, de verdad.
Expresiones, que se componen de valores relacionados por los operadores. Las expresiones son evaluadas por un solo valor, como 2 + 2 se evalúa como 4 o ‘Hello’ + » + ‘Mundo’ se evalúa como ‘Hola Mundo’. Las llamadas a funciones son también parte de las expresiones, ya que se evalúan como un valor único a sí mismos, y este valor puede ser conectado por los operadores a otros valores. Cuando las expresiones son junto a los si y mientras las palabras clave, también pedimos a las condiciones.
Las sentencias de asignación, que simplemente almacenar valores en variables, de modo que podamos recordar los valores más adelante en nuestro programa.
si, y romper son las sentencias de control de flujo, ya que decidir que se ejecutan instrucciones. El flujo normal de la ejecución de un programa es para iniciar en la parte superior y ejecutar cada instrucción de bajar uno por uno. Pero estos estados de flujo de control puede hacer que el flujo de instrucciones de salto, el bucle más instrucciones, o salir de bucles. Las llamadas a funciones también cambiar el flujo de ejecución por saltar al comienzo de una función.
La función print (), que muestra el texto en la pantalla. Además, la entrada () puede obtener el texto del usuario a través del teclado. Esto se llama I / O (pronunciado como las letras, «ojo-oh»), porque se trata de la entrada y salida del programa.
Y eso es todo, sólo los cuatro cosas. Por supuesto, hay muchos detalles acerca de esos cuatro tipos de instrucciones. En este libro usted aprenderá acerca de los nuevos tipos de datos y los operadores, sentencias de control de flujo, además de nuevo si, al mismo tiempo y de descanso, y varias funciones nuevas. Hay también diferentes tipos de I / O (entrada desde el ratón, y dar salida de sonido y los gráficos e imágenes en lugar de sólo texto.)
Para la persona que utiliza sus programas, que en realidad sólo se preocupan de que este último tipo, I / O. El usuario escribe en el teclado y luego ve las cosas en la pantalla o escucha cosas de los altavoces. Pero para el equipo para averiguar lo que las vistas para mostrar y lo que suena a jugar, se necesita un programa, y los programas son simplemente un grupo de instrucciones que el programador haya escrito.
Una página Web para el Programa de Seguimiento de
Si tiene acceso a Internet y un navegador Web, usted puede ir a la página web de este libro en http://inventwithpython.com/traces encontrará una página que rastrea a través de cada uno de los programas de este libro. Siguiendo con la traza línea por línea, podría ser más claro lo que el Guess el programa Número hace.
Figura 4-4: La página web de rastreo.
El lado izquierdo de la página web muestra el código fuente, y la línea de relieve es la línea de código que está a punto de ser ejecutado. Se ejecuta esta línea y pasar a la siguiente línea haciendo clic en el botón «Siguiente». También puede ir un paso atrás haciendo clic en el botón «anterior», o ir directamente a un paso escribiéndola en el cuadro blanco y haga clic en el «Jump» botón.
En la parte derecha de la página web, hay tres secciones. El «actual valores de las variables» sección se muestra cada variable que se ha asignado un valor, junto con el valor en sí. La sección «Notas» le dará una pista sobre lo que está sucediendo en la línea señalada. El «resultado del programa» sección muestra la salida del programa, y la entrada que se envía al programa. (Esta página web entra automáticamente en texto para el programa cuando el programa le pide.)
Así que a cada una de estas páginas web y haga clic en los botones «Siguiente» y «Anterior» para rastrear a través del programa como lo hicimos anteriormente.
Ir al Capítulo 3 – Cuerdas | Ir al Capítulo 5 – Chistes |
En Rosario funciona una escuela de hackers – Educación – LaCapital.com.ar
Plantear que en una escuela pública de Rosario funciona una escuela de hackers, con el concepto bastante incorporado a la sociedad de que éste es un pirata que roba información para sacar algún beneficio propio, es al menos un dato intrigante. Pero la realidad indica que en el Complejo Educativo Gurruchaga, en la cátedra de conversión y reparación de datos, que se dicta en el 4º año de la terminalidad informática, funciona desde hace seis años la “Primera escuela de hackers” del país, experiencia que luego tomaron otros colegios de Buenos Aires y algunas de la región, tales los casos de Totoras y Elortondo. Claro que de lo que se trata en este caso es de darle un buen uso a los conocimientos de los secretos de la red: un hacker ético.
La titular de la materia, María Alejandra Falletti, indica en una entrevista con LaCapital, que “es cierto, está institucionalizado que ser hacker es mala palabra, cuando en realidad el término que debería emplearse en cuanto a los piratas informáticos es el de cracker”.
Si bien no hay una definición de diccionario para la palabra hacker, algunos especialistas consideran que éste es simplemente alguien capaz de manejar con gran habilidad cualquier sistema (un aparato, un dispositivo, no necesariamente un ordenador), con el fin de sacarle mayor un rédito o simplemente por divertimento. Esta distinción habría surgido en la década del 60 en Estados Unidos, quizás en el ámbito del Instituto Tecnlógico de Massachussets (MIT).
Hacker ético. Básicamente se trata del Programa Hacker High School para colegios secundarios, surgido en el Instituto para la Seguridad y Metodologías Abiertas (Isecom, su sigla en inglés) destinado a fomentar la seguridad informática y otros buenos usos de la red.
“El proyecto empezó hace 6 años y puede decirse con total seguridad que es la primera escuela de hackers en la educación pública en la Argentina. Es un programa de los EEUU para colegios secundarios. Me contacté con la escuela, empecé a ver el material, me pareció interesante y la empresa Kwell era la que tenía la capacidad de certificar los contenidos en la Argentina. Me puse en contacto con Jorge Bernardo, su titular, y empezamos con las lecciones y lo beneficioso es que la certificación la da una empresa de seguridad informática”, asegura la docente.
Falletti abunda que se trata de “12 lecciones donde se abordan los distintos temas de seguridad informática, donde se usan herramientas que utilizan los hackers. Es lo que se denomina hacking ético. De hecho hay empresas que contratan a hackers pàra controlar su seguridad. Eso es un hacker legal”.
En esas 12 etapas se abordan temas como redes, analizador de paquetes, seguridad del correo, legislación. “Después —agrega— implementamos una plataforma para que el curso sea on line con una evaluación final que los chicos debían aprobar para obtener la certificación. Y a eso lo fuimos enriqueciendo con evaluaciones”.
“Las mismas lecciones —continúa— tienen una aplicación del contenido, una ejercitación y una práctica. Por ejemplo, la primera parte es buscar en Google, no usar las herramientas comunes de un buscador, sino profundizar y ver cómo se puede buscar más detalladamente”.
Primera impresión. Consultada sobre cuál es la primera impresión de los alumnos cuando se les comenta que van a trabajar en una escuela de hackers, explica que “los chicos entran sin saber qué es un hacker ético. Tienen la misma fantasía que la gente común al escuchar esa palabra. En realidad hacker quiere decir especialista y cracker es el verdadero usurpador de datos. Acá los chicos preguntaban si iban a poder hackear Hotmail o si podrán entrar a la página de la Nasa”.
Herramientas. “Ahora se han acostumbrado —cuenta casi como una rutina— pero al principio era así. Empezamos planteando que eso no se hacía, que no se entraba a una página para sacar contraseñas y datos. Lo que estudiamos es seguridad para que no te hackeen, cómo viaja una contraseña, si se puede interceptar, etcétera. Lo que se trabaja es un analizador de paquetes del tráfico de la red. Los datos viajan por el cable y uno puede analizarlos, y por ejemplo las contraseñas de los mails pasan en texto plano. Uno las puede ver con un determinado programa, al igual que todo lo que uno escribe. Con el wi – fi pasa lo mismo. Uno lo usa en un lugar, digamos un bar, como si nada. Los datos viajan por el aire y como el aire es común, es de todos, yo detecto el tráfico y puedo ver todos los contenidos de la gente que escribe, las contraseñas de sus computadoras, adónde entran”.
“En definitiva, les enseñamos a los chicos la legalidad o la ilegalidad de ciertas cosas. Vos les das las herramientas legales al adolescente y está en uno querer seguir investigando, profundizando y perfeccionándose. Después cómo usar esas herramientas depende de cada uno”, concluye la educadora.