¿Cuáles son los 10 temas principales de ciencias de la computación (y tecnología de la información) que cualquier persona educada debe conocer?

No estoy seguro de poder llegar a 10, pero aquí hay algunos. Además, “educado” es un poco ambiguo: no espero que todas las personas “educadas” entiendan estos temas en profundidad, pero al menos tienen una idea general de dónde encajan en el panorama general.

1) TCP / IP porque todo el internet se ejecuta en él

2) HTML / CSS / Javascript: así se entrega el contenido

3) SSL / RSA / etc. – Es por eso que el comercio electrónico funciona.

4) Aprendizaje automático / Minería de datos: ¿cómo funciona mágicamente la búsqueda en Google?

5) Las principales diferencias entre los sistemas operativos POSIX / Windows.

6) La historia del movimiento de código abierto (como se ve en “El mundo es plano”)

7) Implicaciones de las redes sociales como facebook / twitter / foursquare y sus gráficos sociales (facebook connect, comentarios de facebook, etc.)

8) Computación en la nube: todos tienen contenido en la nube gmail / chrome OS / etc.

Esta es una pregunta muy interesante. Estoy emocionado de ver otras respuestas.

Dependiendo de lo que entiendas por persona educada. Si por persona educada te refieres a uno que tiene que desarrollar habilidades que responden a nuevos desafíos en la sociedad, algunos “conocimientos generales” podrían ser:

1) Fundamentos de hardware de la computadora. CPU, memoria, dispositivos de E / S

2) Conocimiento básico del sistema operativo: cómo se gestiona el hardware y el resto del software en la computadora. Las principales diferencias entre los sistemas WIN / POSIX.

3) Redes y dispositivos informáticos, TCP / IP básico.

4) Una visión general de cómo se construyen los programas. ¿Qué es el código fuente, qué es el código binario. Cómo es el proceso desde la creación del código fuente hasta su ejecución binaria.

5) Internet como infraestructura de computadoras y dispositivos. Web, correo y otros servicios desplegados en internet.

6) Seguridad y criptografía. Firma digital y certificados.

7) Formatos multimedia. Cómo difieren entre sí los diferentes formatos comunes utilizados para imágenes, audio y video.

8) Servicios basados ​​en web, la web de lectura-escritura y las interacciones sociales. ¿Qué proporcionan las redes sociales para facilitar la comunicación efectiva de las personas?

9) Búsqueda web y búsqueda de contenido, cómo se indexa y organiza el contenido. The Surface Web y The Deep Web.

10) Web marketing. Cómo un negocio tradicional puede beneficiarse de la web. Qué es SEM, SMM, cómo pueden medirse y optimizarse.

Si por el contrario, te refieres a una persona instruida en informática, al menos después de su educación, debería saber leer y escribir.

1) Arquitecturas de computadora y conceptos básicos de hardware: cómo funciona la máquina en el nivel más bajo. CPU, memoria, E / S, interrupciones …

2) Sistemas operativos. ¿Cómo gestiona el sistema operativo el hardware, cómo se ejecutan los procesos en la máquina, cómo se gestionan la memoria y los dispositivos, etc. APIs de OS, POSIX y WIN32 …

3) Lenguajes de bajo nivel, como Ensamblaje y C, cuál es su modelo computacional y cómo el código y los datos se representan en la memoria y son administrados por el sistema operativo. El paradigma de la programación estructural.

4) Algoritmos y estructuras de datos. Análisis de complejidad, diseño de algoritmos.

5) Redes informáticas, topologías de red, TCP / IP. ¿Cómo se comunican las computadoras entre sí?

6) Lenguajes y paradigmas de alto nivel. OOP, lógica y paradigmas funcionales.

7) Procesadores de lenguaje, compiladores, intérpretes y máquinas virtuales.

8) Sistemas de persistencia, bases de datos relacionales y NoSQL.

9) Protocolos y servicios de nivel de aplicación. HTTP / POP, SMTP y IMAP / FTP / SSH. Criptografía y comunicaciones seguras.

10) Métodos de desarrollo, OOA & D, arquitecturas y patrones de software. Herramientas de desarrollo.


Grandes respuestas 🙂 Agregaré o explicaré algunos temas que creo que la mayoría de las personas se beneficiarían al tener al menos una comprensión básica de:

  • Internet : qué es, qué hace y cómo lo estamos utilizando. Neutralidad de la red, censura. Cómo ha cambiado la forma en que nos comunicamos y hacia dónde nos dirigimos.
  • Privacidad de las redes sociales . Demasiados por ahí están otorgando acceso gratuito a su información personal, sin conocer las posibles consecuencias y amenazas de seguridad.
  • Y para el caso, seguridad informática . En la nube, en dispositivos móviles, a través de ciertos programas y sitios web, etc.
  • Cómo la tecnología puede salvar tu vida . Cómo la tecnología de la información está ayudando al campo médico a avanzar. Cómo nos ayuda a entender mejor nuestro propio cerebro y comportamientos. Cómo la ingeniería genética está planteando preguntas importantes sobre las vidas humanas.
  • Cómo la tecnología puede arruinar tu vida . ¿Es Google haciéndonos más estúpidos y complacientes? ¿Puede matarte demasiado porno o juegos? ¿Cómo está afectando a nuestros hijos?