Adjunto a continuación una síntesis resumiendo alguna de las ideas que he ido recopilando tras ver el vídeo de la quinta sesión sobre "Overview tecnológico: Repaso a la tecnología necesaria para montar un negocio en Internet" del INTERNET STARTUP COURSE "PROGRAMA DE CREACIÓN Y ACELERACIÓN DEL EMPRESAS DE INTERNET" (Ver Nota*), impartida por Agustín Cuenca:
1. CONTENIDOS
Historia de internet: La red nace como un proyecto de defensa. ¿Por qué funcionó Internet?: Para ahorrarse dinero. Cronología de Internet
Servicios básicos: Protocolos
- TCP/IP: Transfer Control Protocol / Internet Protocol asigna un nº a cada máquina conectada a Internet de 4 numeros (bytes) separados por puntos o Direccion IP: 192.168.12.50 con 4.300 millones de direcciones IP posibles con IPv4 y ahora con 3,4*10^38 direcciones IP con IPv6.
http://www.cualesmiip.com
- DNS: Servidor de Nombres de Dominio que se encarga de traducir nombres de maquinas a direcciones IP (DNSs de Google 8.8.8.8)
- EMAIL: Consulta el registro MX del servidor DNS del dominio. Para enviar se usa store & forward del servidor saliente SMTP. Con Gmail puedes aumentar a N de buzones de forma automática: miemail+buzonN@gmail.com
* Spam: Para evitar ser bloqueados al enviar muchos correos usar servicios como MailChimp (tienen el permiso de los suscritos).
- WEB: Tim Berners-Lee del CERN desarrolló el protocolo web para navegación de documentos, Marc Andreessen desarrolló el primer navegador Mosaic y fundó Netscape.
- URL: protocolo://maquina:puerto/carpeta/documento
- CCS: Cascadyng Style Sheet: cómo se pinta el contenido HTML
- HTML5: capacidad de hacer aplicaciones más potentes, permiten estandarizar el desarrollo de aplicaciones para móviles (Iphone, Android, ).
- Seguridad: No existe 100%, la simplicidad es clave, "casa de dos puertas es difícil de guardar", casi siempre es con ayuda interna.
- Seguridad perimetral: los dispositivos se conectan a través de un firewall a los servidores de la empresa.
- Seguridad de aplicación: errores de programación, no contar con buenas prácticas, es algo que hay que mantener, si no se cuida se degrada.
2. ELEMENTOS DE TECNOLOGIA
- Software libre: puede ser usado, copiado, estudiado, modificado, y redistribuido libremente de varias formas: OpenOffice
- Infraestructura minima CPD: Conexión a Internet, Router, Firewall, Servidor
- Capas: Hardware+Sistema operativo+Base de datos+Aplicación
- Hardware: Cada vez más barato, la redundancia es cara, como servicio > Solución:
- Virtualizar: Hardware real + Hipervisor + N ordenadores (Hardware+Sistema operativo+Aplicaciones). Ejemplo: VIRTUALBOX: sobre una máquina Ubuntu podemos ejecutar una máquina Windows.
1) Replica automática de máquinas
2) Independeincia del hardware
3) Pago por uso: no tengo gastos fijos, en una startup es fundamental
4) Escalabilidad horizontal: balancea cargas (divido las tareas y pongo más máquinas pequeñas) mejor que Escabilidad vertical (pongo máquinas más potentes)
- Coste vs Gastos: es mejor externalizar en la nube que tener servidores en propiedad
- TCO (Total Cost of Ownership)
1) Bases de datos relacionales: MS SQL Server, Oracle, MySQL, Postgress SQL >> Vendor locking, el coste de cambio es alto.
2) Bases de datos no SQL: para cuando no tenemos una estructura de datos fija:
- ACID: Atomicidad, Consistencia, Aislamiento, Durabilidad
- Servidor web: programa que está esperando peticiones HTTP, decide quien responde, sirve la petición
- Lenguajes de programación: todo se puede hacer en cualquier lenguaje, otras cosa es para que se ha diseñado ese lenguaje. Hay N lengiajes, propicio para las guerras de religión, sujeto a modas y evoluciones tecnológicas. Cada uno diseñado para un propósito distinto (Índice TIOBE):
PHP, JAVA, JAVASCRIPT (se ejecuta en el navegador), RUBY, PYTHON
- Control del código fuente: código que puede entender un humano, debe estar bajo nuestro control, debemos tenerlo con software de control de versiones como Git o SubVersion (evita conflictos sobre cambios de la misma página).
Añadir nuevo comentario