15.1: What is Node.js? - Twitter Bot Tutorial
-
0:01 - 0:03Hola
-
0:03 - 0:05Este video es el primero en una serie
-
0:05 - 0:08de videos donde el objetivo final es hacer
-
0:08 - 0:11un bot que postea imágenes a Twitter.
-
0:11 - 0:12Y bueno, para qué hacer esto?
-
0:12 - 0:14Para qué hacer un bot para Twitter?
-
0:14 - 0:15Qué son estos bots?
-
0:15 - 0:18Es un tópico extensivo.
-
0:18 - 0:22Y lo discutiremos a lo largo del camino.
-
0:22 - 0:24Voy a poner links en la descripción
-
0:24 - 0:26de algunos artículos y ejemplos
-
0:26 - 0:29que pueden ayudarte a entender estos bots.
-
0:29 - 0:30Pero en estos videos voy a enfocarme
-
0:30 - 0:34en los detalles técnicos
-
0:34 - 0:36Y quiero comenzar
-
0:36 - 0:40con algo se se llama Node, Node.js
-
0:40 - 0:42y con el uso de la línea de comandos.
-
0:42 - 0:46Supongamos que tú has visto mis videos
-
0:46 - 0:49acerca de programar con JavaScript.
-
0:49 - 0:50Ven conmigo a la pizarra
-
0:50 - 0:52y vamos a pensar un poco.
-
0:52 - 0:57Supongamos que tú que trabaja en tu laptop
-
0:57 - 1:01y en esa laptop tienes un browser
-
1:01 - 1:04y tú haces bocetos usando JavaScript.
-
1:04 - 1:07Quizá escribiste una página con HTML y CSS
-
1:07 - 1:09y desarrollaste unas lindas animaciones
-
1:09 - 1:13que corren en el browser.
-
1:13 - 1:16Yo tengo videos que te enseñan a hacerlo
-
1:16 - 1:16usando un framework llamado p5.js
-
1:16 - 1:19
-
1:19 - 1:21Qué está pasando aquí?
-
1:21 - 1:25Si, por ejemplo, estás usando el editor p5.js
-
1:25 - 1:29lo que el editor p5.js está haciendo
-
1:29 - 1:30es correr algo a lo que llamamos
-
1:30 - 1:33un servidor (server)
-
1:33 - 1:35Qué es un servidor?
-
1:35 - 1:37Pensemos acerca de este término
-
1:37 - 1:40al que le llamamos "la nube" (the cloud).
-
1:40 - 1:42Esto es algo que mencionamos frecuentemente
-
1:42 - 1:44en nuestro programa, la idea de que la nube
-
1:44 - 1:46es realmente una red de búnkers subterraneos
-
1:46 - 1:50y enormes centros de comunicaciones
-
1:50 - 1:53"La nube" no son unos servidores en el cielo
-
1:53 - 1:56flotando en las alas de unicornios ni nada parecido.
-
1:56 - 1:59Quizá quieras imaginártela así o el nombre lo sugiera
-
1:59 - 2:01pero nos salimos del tópico....
-
2:01 - 2:05Pensemos en Google por un momento.
-
2:05 - 2:08Google tiene un servidor.
-
2:08 - 2:12Y cuando escribes en tu browser google.com
-
2:12 - 2:16le estás haciendo un pedido a ese servidor
-
2:16 - 2:21y ese servidor te da una respuesta.
-
2:21 - 2:23Todo eso pasa también
-
2:23 - 2:26si estás escribiendo código en JavaScript
-
2:26 - 2:29y haciendo páginas web en tu laptop.
-
2:29 - 2:31Tu laptop, usando el editor de p5.js
-
2:31 - 2:34está corriendo un pequeño servidor que simula que pasaría
-
2:34 - 2:38si hicieras deploy de tu proyecto o lo subieras a otro lugar
-
2:38 - 2:40Y así, si tienes tu propio sitio web
-
2:40 - 2:43como el mío, que es shiffman
-
2:43 - 2:45el que tengo que arreglar y rediseñar
-
2:45 - 2:46y quizá tú me puedas ayudar
-
2:46 - 2:52así que dudo en mostrarlo, pero bueno, shiffman.net, por ejemplo
-
2:52 - 2:56Si trabajo en algo y pongo mi código allí
-
2:56 - 3:00entonces alguien en la internet
-
3:00 - 3:04puede hacer un pedido a mi servidor
-
3:04 - 3:06donde yo puse mi código de JavaScript
-
3:06 - 3:10y el servidor puede responder, enviando mi código,
-
3:10 - 3:12para que la persona pueda ver mi linda animación
-
3:12 - 3:14corriendo en su browser.
-
3:14 - 3:16Todo esto, con la excepción de Google
-
3:16 - 3:18porque sus servidores, obviamente
-
3:18 - 3:21son altamente sofisticados y complejos
-
3:21 - 3:23pero en el caso de p5.js
-
3:23 - 3:26corriéndolo localmente o subiendo tu proyecto
-
3:26 - 3:30al servidor de tu página web
-
3:30 - 3:34lo único que el servidor está haciendo
-
3:34 - 3:36es devolver contenido estático.
-
3:36 - 3:38Está devolviendo un fichero de HTML
-
3:38 - 3:40Está devolviendo un fichero de JavaScript
-
3:40 - 3:41Está devolviendo imágenes
-
3:41 - 3:43Está devolviendo estilo, CSS
-
3:43 - 3:47
-
3:47 - 3:49El tópico que quiero abordar en este video
-
3:49 - 3:54es qué pasa cuando llega ese momento en la vida
-
3:54 - 3:56en que esto no es suficiente.
-
3:56 - 3:59Tú quieres correr un programa en el servidor
-
3:59 - 4:00que es lo que hace Google, por cierto
-
4:00 - 4:04porque cuando tu le pides que busque arcoíris
-
4:04 - 4:07cuando quieres buscar acerca de arcoíris en Google
-
4:07 - 4:09un programita de servidor corre
-
4:09 - 4:12y se conecta con la loca y masiva base de datos
-
4:12 - 4:16del Universo total de pensamientos e información
-
4:16 - 4:17y la procesa y encuentra el resultado
-
4:17 - 4:19y decide que responderte
-
4:19 - 4:21Este es el programita de servidor
-
4:21 - 4:22que corre en los servidores de Google
-
4:22 - 4:24O si te logueas a tu cuenta de banco
-
4:24 - 4:26y pones tu usuario y contraseña
-
4:26 - 4:28un programita de servidor lee estos datos y decide
-
4:28 - 4:30si el usuario y la contraseña son correctos
-
4:30 - 4:32y te devuelve tu estado de cuenta - este tipo de cosa.
-
4:32 - 4:39Entonces, Node es un entorno (framework) de JavaScript
-
4:39 - 4:44para escribir - digamos - servidores a la medida
-
4:44 - 4:46
-
4:46 - 4:49Ahora, veamos, hay muchas cosas
-
4:49 - 4:53que puedes hacer con esta tecnología
-
4:53 - 4:55para desarrollar tu propio servidor de web
-
4:55 - 5:01pero la razón por la cual hago estos videos
-
5:01 - 5:04es porque una de las cosas que quizá
-
5:04 - 5:06quieras hacer en tu vida es desarrollar proyectos
-
5:06 - 5:08con código e información y otras cosas
-
5:08 - 5:12usando la API de Twitter.
-
5:12 - 5:17Yo tengo un grupo de videos acerca de varias API
-
5:17 - 5:21a las cuales te puedes conectar - Wordnik, New York Times, Giphy
-
5:21 - 5:24Todas estas son APIs que en videos anteriores
-
5:24 - 5:29a las que te he mostrado como conectarte desde p5.js.
-
5:29 - 5:33Twitter es un tipo específico de API
-
5:33 - 5:36que requiere algo llamado OAuth.
-
5:36 - 5:39Yo pienso en OAuth como "Oh, no, me tengo que Autenticar"
-
5:39 - 5:42Cuando veo OAuth pienso en "Oh, auth".
-
5:42 - 5:43Porque es muy incómodo
-
5:43 - 5:43Y, no se
-
5:43 - 5:45necesita siempre de algo extra
-
5:45 - 5:46y no se puede hacer desde el lado del cliente
-
5:46 - 5:49y necesito un secreto, y una llave y un token
-
5:49 - 5:51y me empiezo a estresar y tengo que acostarme
-
5:51 - 5:56y tengo que ponerme una compresa fría en la cabeza - todo eso
-
5:56 - 5:58Nada más de pensarlo me empiezo a sonrojar
-
5:58 - 6:02
-
6:02 - 6:07
-
6:07 - 6:10
-
6:10 - 6:14
-
6:14 - 6:17
-
6:17 - 6:20
-
6:20 - 6:21
-
6:21 - 6:24
-
6:24 - 6:25
-
6:25 - 6:28
-
6:28 - 6:30
-
6:30 - 6:33
-
6:33 - 6:35
-
6:35 - 6:38
-
6:38 - 6:39
-
6:39 - 6:40
-
6:40 - 6:42
-
6:42 - 6:43
-
6:43 - 6:45
-
6:45 - 6:48
-
6:48 - 6:52
-
6:52 - 6:55
-
6:55 - 6:58
-
6:58 - 7:00
-
7:00 - 7:02
-
7:02 - 7:05
-
7:05 - 7:06
-
7:06 - 7:08
-
7:08 - 7:11
-
7:11 - 7:13
-
7:13 - 7:14
-
7:14 - 7:16
-
7:16 - 7:17
-
7:17 - 7:19
-
7:19 - 7:20
-
7:20 - 7:24
-
7:24 - 7:25
-
7:25 - 7:28
-
7:28 - 7:30
-
7:30 - 7:33
-
7:33 - 7:34
-
7:34 - 7:36
-
7:36 - 7:41
-
7:41 - 7:42
-
7:42 - 7:47
-
7:47 - 7:48
-
7:48 - 7:50
-
7:50 - 7:52
-
7:52 - 7:54
-
7:54 - 7:57
-
7:57 - 7:59
-
7:59 - 8:01
-
8:01 - 8:04
-
8:04 - 8:06
-
8:06 - 8:08
-
8:08 - 8:10
-
8:10 - 8:13
-
8:13 - 8:16
-
8:16 - 8:20
-
8:20 - 8:21
-
8:21 - 8:25
-
8:25 - 8:26
-
8:26 - 8:27
-
8:27 - 8:28
-
8:28 - 8:30
-
8:30 - 8:35
-
8:35 - 8:39
-
8:39 - 8:41
-
8:41 - 8:43
-
8:43 - 8:46
-
8:46 - 8:49
-
8:49 - 8:53
-
8:53 - 8:56
-
8:56 - 9:00
-
9:00 - 9:01
-
9:01 - 9:03
-
9:03 - 9:06
-
9:06 - 9:08
-
9:08 - 9:10
-
9:10 - 9:12
-
9:12 - 9:14
-
9:14 - 9:17
-
9:17 - 9:18
-
9:18 - 9:21
-
9:21 - 9:23
-
9:23 - 9:26
-
9:26 - 9:27
-
9:27 - 9:32
-
9:32 - 9:34
-
9:34 - 9:36
-
9:36 - 9:40
-
9:40 - 9:42
-
9:42 - 9:46
-
9:46 - 9:50
-
9:50 - 9:52
-
9:52 - 9:54
-
9:54 - 9:55
-
9:55 - 9:59
-
9:59 - 10:00
-
10:00 - 10:03
-
10:03 - 10:05
-
10:05 - 10:09
-
10:09 - 10:09
-
10:09 - 10:11
-
10:11 - 10:13
-
10:13 - 10:16
-
10:16 - 10:18
-
10:18 - 10:20
-
10:20 - 10:22
-
10:22 - 10:23
-
10:23 - 10:28
-
10:28 - 10:30
-
10:30 - 10:32
-
10:32 - 10:34
-
10:34 - 10:38
-
10:38 - 10:39
-
10:39 - 10:42
-
10:42 - 10:43
-
10:43 - 10:47
-
10:47 - 10:51
-
10:51 - 10:54
-
10:54 - 10:57
-
10:57 - 11:00
-
11:00 - 11:00
-
11:00 - 11:04
-
11:04 - 11:05
-
11:05 - 11:08
-
11:08 - 11:12
-
11:12 - 11:14
-
11:14 - 11:17
-
11:17 - 11:19
-
11:19 - 11:21
-
11:21 - 11:25
-
11:25 - 11:29
-
11:29 - 11:30
-
11:30 - 11:31
-
11:31 - 11:32
-
11:32 - 11:33
-
11:33 - 11:35
-
11:35 - 11:37
-
11:37 - 11:38
-
11:38 - 11:40
-
11:40 - 11:43
-
11:43 - 11:45
-
11:45 - 11:46
-
11:46 - 11:50
-
11:50 - 11:51
-
11:51 - 11:53
-
11:53 - 11:55
-
11:55 - 11:59
-
11:59 - 12:01
-
12:01 - 12:04
-
12:04 - 12:07
-
12:07 - 12:10
-
12:10 - 12:13
-
12:13 - 12:15
-
12:15 - 12:18
-
12:18 - 12:23
-
12:23 - 12:25
-
12:25 - 12:29
-
12:29 - 12:31
-
12:31 - 12:33
-
12:33 - 12:36
-
12:36 - 12:39
-
12:39 - 12:44
-
12:44 - 12:47
-
12:47 - 12:47
-
12:47 - 12:49
-
12:49 - 12:55
-
12:55 - 12:57
-
12:57 - 12:59
-
12:59 - 13:03
-
13:03 - 13:06
-
13:06 - 13:07
-
13:07 - 13:09
-
13:09 - 13:10
-
13:10 - 13:13
-
13:13 - 13:13
-
13:13 - 13:16
-
13:16 - 13:18
-
13:18 - 13:20
-
13:20 - 13:22
-
13:22 - 13:25
-
13:25 - 13:28
-
13:28 - 13:31
-
13:31 - 13:37
-
13:37 - 13:40
-
13:40 - 13:42
-
13:42 - 13:44
-
13:44 - 13:46
-
13:46 - 13:48
-
13:48 - 13:52
-
13:52 - 13:54
-
13:54 - 13:57
-
13:57 - 14:01
-
14:01 - 14:04
-
14:04 - 14:07
-
14:07 - 14:10
-
14:10 - 14:12
-
14:12 - 14:14
-
14:14 - 14:16
-
14:16 - 14:18
-
14:18 - 14:21
-
14:21 - 14:23
-
14:23 - 14:26
-
14:26 - 14:27
-
14:27 - 14:29
-
14:29 - 14:32
-
14:32 - 14:32
-
14:32 - 14:35
-
14:35 - 14:36
-
14:36 - 14:38
-
14:38 - 14:39
-
14:39 - 14:41
-
14:41 - 14:42
-
14:42 - 14:44
-
14:44 - 14:48
-
14:48 - 14:52
-
14:52 - 14:56
-
14:56 - 14:57
-
14:57 - 15:02
-
15:02 - 15:05
-
15:05 - 15:07
-
15:07 - 15:10
-
15:10 - 15:11
-
15:11 - 15:13