Todo lo viejo es nuevo otra vez. Pero esta vez tenemos las lecciones del pasado para guiarnos hacia lo desconocido. Sunil quiere revisitar algunas ideas antiguas y mezclarlas con las nuevas capacidades del edge y la plataforma web, y ver si podemos multiplicar por 10 las aplicaciones que construimos hoy en día.
This talk has been presented at React Advanced 2022, check out the latest edition of this React Conference.
FAQ
El enfoque principal de la charla fue menos técnico y más personal, centrado en el 'viaje del héroe' y cómo se relaciona con la experiencia personal del orador.
El orador aprendió cómo estructurar la interfaz de usuario utilizando HTML, cómo usar CSS para estilizarla y cómo aplicar JavaScript para el comportamiento, lo cual fue fundamental para su carrera.
El orador enfrentó problemas de salud, relaciones personales deterioradas y un alto nivel de estrés, lo que lo llevó a realizar cambios significativos en su estilo de vida.
El orador dejó de fumar, redujo su consumo de alcohol, mejoró sus hábitos de sueño y alimentación, y reparó sus relaciones personales.
El orador se entusiasmó con la informática de borde y cómo democratiza el acceso a la tecnología, permitiendo a los desarrolladores utilizar recursos computacionales globales eficientemente.
El orador anunció su nuevo proyecto llamado 'Club de la Computadora Cool', que se enfocará en resolver grandes problemas mediante el desarrollo de software, incluyendo un Kit de Desarrollo Multijugador para aplicaciones de sincronización en tiempo real.
El orador comparte su viaje personal en el campo del desarrollo de software, desde comenzar en tecnología después de la universidad hasta experimentar agotamiento y tomar medidas hacia el autocuidado. Enfatizan el poder de la tecnología y la accesibilidad, así como la aparición del edge computing. El orador presenta su proyecto, el Kit de Desarrollo Multijugador, y discute los desafíos de construir aplicaciones multijugador en tiempo real. También destacan la importancia del equilibrio entre el trabajo y la vida personal y el crecimiento personal en la industria.
Estuve aquí el año pasado y fue genial y estamos de vuelta otra vez. Mi charla esta vez no es tan técnica como suelo hacer y es un poco personal, por eso estoy asustado en este momento. El viaje del héroe es un patrón de narración que probablemente sea la forma más popular de contar una historia en este momento. Así que esta charla es como una historia sobre mí. Así que esta soy yo justo después de salir de la universidad, y acabo de empezar a trabajar en tecnología. Pensé que iba a ser músico y escritor, un verdadero artista.
Estuve aquí el año pasado y fue genial y estamos de vuelta otra vez. Es realmente agradable que la temporada de conferencias esté de vuelta en marcha. Claramente, muy pocas personas siguieron las sugerencias de uso de mascarillas.
Mi charla esta vez no es tan técnica como suelo hacer y es un poco personal, por eso estoy asustado en este momento. Pero es algo a lo que llamé de vuelta al futuro. Antes de empezar, un anuncio rápido. Estoy increíblemente feliz de anunciar que seré el próximo primer ministro del Reino Unido. Es un honor aceptar este cargo. Prometo cumplir mi promesa de campaña de completar process.exit. Todos lo han mencionado como una promesa, pero realmente la cumpliré. El viaje del héroe es un patrón de narración que probablemente sea la forma más popular de contar una historia en este momento. Películas, libros, cómics, cuentos, la idea es de un protagonista que parte desde cero y se aventura en el mundo o en una situación y enfrenta numerosos obstáculos, un mentor le da consejos, los ignora y se encuentra en un punto muy bajo donde piensa que todo está perdido. Y luego, por alguna magia, consejo, amigos, sistemas de apoyo, niño interior, encontrando el coraje, se levantan de ese espacio y regresan a donde todo comenzó, pero como una persona nueva, con nuevos conocimientos y un nuevo camino por delante.
Así que esta charla es como una historia sobre mí. Es un poco extraño incluso usar la frase `viaje del héroe`, porque, bueno, suena completamente egocéntrico, ¿verdad? Como si fueras, por supuesto, el héroe de tu propio viaje, pero todos son el héroe de su propio viaje. Pero está bien. Estoy intentando algo nuevo. Todos ustedes podrán ver una versión un poco cruda de cómo pienso en algunas cosas. Así que esta soy yo justo después de salir de la universidad, y acabo de empezar a trabajar en tecnología. Estaba haciendo un poco de trabajo por contrato, lo que significaba que finalmente podía permitirme una buena guitarra para mí. Esa es mi Les Paul azul que simplemente adoraba. Todavía la tengo. Mira qué bonita se ve a la luz. Tómate un segundo. Solo una hermosa guitarra. También me compré un pequeño kit de efectos y un amplificador. La cosa es que pensé que iba a ser músico y escritor, un verdadero artista. La tecnología solo estaba allí para pagar las cuentas. Nunca iba a ser algo a tiempo completo. Solo iba a pagar las cuentas hasta que encontrara la novela seminal o un gran
2. Descubriendo el Poder de HTML, CSS y JavaScript
Short description:
Pero me fue muy mal en la universidad y me encontré escribiendo JavaScript para una pequeña empresa contratista en Hyderabad, India. HTML es cómo estructuras tu interfaz de usuario. Etiquetas de estilo. Usas CSS para dar estilo a tu página y hacer que se vea de una manera particular. Y escribes JavaScript para el comportamiento. Sentí que el mundo se abría ante mí. En realidad, no puedes escribir HTML a mano porque es difícil de mantener. Esta soy yo dando una charla en una de mis primeras conferencias de JavaScript en India llamada JSFoo, una gran conferencia. Me había convertido en parte de mi identidad aprender todas las herramientas y bibliotecas, cuál sería la mejor opción para ti, etc. Pude utilizar mis habilidades como desarrollador web en pequeñas empresas, grandes empresas, firmas gubernamentales, como diseñador, como desarrollador.
álbum que fusiona música de rock india y occidental, por supuesto. Pero me fue muy mal en la universidad y me encontré escribiendo JavaScript para una pequeña empresa contratista en Hyderabad, India. Y una mujer me estaba enseñando desarrollo web. Y en unos 5 o 10 minutos, me enseñó lo que me serviría para el resto de mi carrera. HTML es cómo estructuras tu interfaz de usuario. Etiquetas de estilo. Usas CSS para dar estilo a tu página y hacerla lucir de una manera particular. Y escribes JavaScript para el comportamiento. Y era literalmente este fragmento de código y se veía increíble. En 10 minutos, pensé, oh Dios mío, puedo hacer cualquier cosa con esto. Puedo tomar cualquier problema que se presente para resolver en una computadora y compararlo con la construcción de una estructura de interfaz de usuario, darle estilo y darle comportamiento. Sentí que el mundo se abría ante mí. Y luego, justo después de eso, ella me dijo que en realidad nunca escribiría código de esta manera. Verás, no puedes escribir HTML a mano porque es difícil de mantener y necesitas usar un lenguaje de plantillas y distribuirlo en varias cosas. Nunca escribirás tu estilo en línea dentro de tu HTML. Escribirás hojas de estilo y usarás nombres de clase y arquitecturas como, bueno, BEM salió a finales de los años 2000. Esto fue mucho antes. Nunca escribirás un controlador de eventos directamente en tu elemento porque eso es difícil de mantener. Esto fue mucho antes incluso de DevTools, así que tenías que usar Alert para depurar. Y eso me desanimó un poco, pero entendí que así es como se construye la tecnología, aprendiendo los sistemas que la rodean, aprendiendo arquitecturas y teorías. Esta soy yo dando una charla en una de mis primeras conferencias de JavaScript en India llamada JSFoo, una gran conferencia. Fui parte del comité organizador, así que todavía le tengo un cariño especial. Así que, cuando digo que es la mejor conferencia, no quiero ofender a React Advanced, solo que fue una conferencia en la que me ignoraron. El slide en realidad dice `abrazar la plantilla` porque los lenguajes de plantillas estaban de moda en ese momento, Jade, Handlebars, Pug. Había como diez, ni siquiera recuerdo todos. Y me había convertido en parte de mi identidad aprender todas las herramientas y bibliotecas, cuál sería la mejor opción para ti, etc. Por qué elegirías algo, qué sistema de arquitectura construirías, porque nadie debería estar escribiendo HTML, CSS y JavaScript en bruto, pensé. Y luego pasé los siguientes quince años en varias empresas. Es un poco extraño, miro esto y pienso, oh mierda, cambié de trabajo mucho, pero te prometo que no me peleé con todos. De hecho, aprendí muchas cosas, me mudé al siguiente lugar. Lo que intento decir es que pude utilizar mis habilidades como desarrollador web en pequeñas empresas, grandes empresas, firmas gubernamentales, como diseñador, como desarrollador, recuerdo haber escrito la reescritura de los mapas de Yahoo, escalamos Myntra, que era una startup de comercio electrónico
3. Experiencia de Burnout y Acción Tomada
Short description:
Pasé algún tiempo en Oculus, que, por cierto, posiblemente fue el trabajo más genial que tuve, que consistía en escribir React para realidad virtual. El burnout ocurre cuando menos te lo esperas. ¿Quieres saber cómo se ve el burnout? Se ve genial, por cierto. Estas son fotos mías en 2019. Mi peso fluctuaba. Y convenientemente, a principios de 2020, en enero y febrero, fue cuando empecé a notar que debía hacer algo al respecto.
de alrededor de diez ingenieros a unos 500, eso fue genial. Pasé algún tiempo en Oculus, que, por cierto, posiblemente fue el trabajo más genial que tuve, que consistía en escribir React para realidad virtual, sin importar tus opiniones sobre el metaverso, esto fue lo más futurista que he hecho en mi vida. Pasé algún tiempo en el equipo de React, eso no salió tan bien. Y construí una carrera dedicando mi vida a la tecnología y trabajando duro escribiendo código, escribiendo mucho código. En algún momento del camino, dejé de tocar mi guitarra. También dejé de leer libros, que es una de mis cosas favoritas. Incluso dejé de escribir, porque quién tiene tiempo para escribir otras cosas cuando ya estás escribiendo código durante 10, 12 horas al día. Todo iba genial hasta finales de 2019, cuando empecé a notar que me estaban sucediendo varias cosas. Mi cuerpo empezó a desmoronarse. Tenía dolor más días que no. Mis relaciones empezaron a desmoronarse. Me encontraba discutiendo con mi esposa por tonterías. El burnout ocurre cuando menos te lo esperas. De hecho, cuando te das cuenta de que el burnout ha ocurrido, ya es demasiado tarde. Y lo peor es que tus amigos y familiares a tu alrededor pueden darse cuenta de lo que está sucediendo, pero te lo señalan y te dicen algo como `bueno, vete al infierno`. Soy una superestrella en el equipo de React y las cosas van genial, así que no tienes ni idea de lo que estás hablando. No me digas esas cosas. Y ella me dice: `eres mi hijo`. Y yo le digo: `sí, pero cállate. No sabes cómo es mi vida`. ¿Quieres saber cómo se ve el burnout, cómo es la cara del burnout? Se ve genial, por cierto. Estas son fotos mías en 2019. Lo encontré. Y miré los datos. Y pensé: sí, estos son los días en los que apenas dormía tres o cuatro horas por noche y no comía bien. Mi peso fluctuaba. Creo que estaba unos 10 o 15 kilos más delgado de lo que estoy ahora. No era genial. Y convenientemente a principios de 2020, en enero y febrero, fue cuando empecé a notar que debía hacer algo al respecto. Y convenientemente, eso fue cuando ocurrió una pandemia mundial, que es el mejor momento para tu salud mental. Por cierto, no pudiste enfocarte
4. Transformación Personal y Cuidado Personal
Short description:
Dejé de fumar, controlé mi consumo de alcohol, mejoré mis hábitos de sueño y alimentación, y reparé mis relaciones con mi esposa y amigos. Es sorprendente lo mucho mejor que es la vida cuando te cuidas a ti mismo.
en ti mismo y el cuidado personal cuando eso está sucediendo. Así que esta no es una historia con un final triste porque claramente han pasado un par de años desde entonces. He hecho algunas cosas desde entonces. Dejé de fumar. No sé. La gente lo sabe desde el año pasado. Han pasado dos años y medio sin fumar. Un hábito repugnante. Deberías probarlo. Deberías odiarlo y deberías dejarlo de inmediato. Por favor, no lo intentes, es horrible. No es bueno. Reduje mi consumo de alcohol. Duermo las horas necesarias. Ahora duermo muy bien. Como bien. Arreglé mi relación con mi esposa y mis amigos. Increíble. Una vez que tienes tiempo para pasar con ellos, te das cuenta de que son personas interesantes. Debería pasar más tiempo con ellos. Me formé
5. El Poder de la Tecnología y la Accesibilidad
Short description:
El año pasado en esta conferencia, lucía más feliz con un nuevo corte de pelo y un traje elegante. La tecnología frontend es solo una herramienta, no la solución definitiva. Exploré metallures y me adentré en la informática de borde. Trabajando con CloudFlare, arreglé su CLI y aprendí mucho. La tecnología comienza con expertos pero rápidamente se vuelve accesible para todos, al igual que las bases de datos y el desarrollo frontend. Los cursos y herramientas gratuitas facilitan el aprendizaje y la creación. No te desanimes por los altibajos de las startups, tú también puedes tener éxito.
arriba. Y el año pasado, cuando estuve aquí en esta misma conferencia, así es como lucía. Parecía mucho más feliz, creo. Además, me corté el pelo y me puse un traje elegante, por supuesto. Y conseguí ese traje sexy. Mira a ese tipo, ¿verdad? Maldición, incluso sin corbata, se veía bien. Iba a una boda de verano en Inglaterra y necesitaba una segunda ocasión para usar el traje para justificar el costo. Pero es tan bonito. En los últimos años, aprendí algo más. Uno es que la tecnología frontend no lo es todo. Es solo una herramienta para resolver cosas. Comencé a explorar metallures. Así que me adentré en la informática de borde. Incluso pasé el último año de mi vida en CloudFlare. Gran lugar. Muy recomendado. Trabajando con ellos, arreglando su CLI, que no es genial y lo arreglé. Gracias, de nada. Y aprendí mucho. Comencé a sentir lo mismo que al principio de mi carrera. Lo que sucede con la tecnología, por supuesto, es que comienza con expertos, parece que está reservada para personas que ganan salarios de millones de dólares, y así sucesivamente. Pero luego, convenientemente, un montón de personas la miran y la convierten en un producto. Idealmente, la hacen de código abierto para que todos puedan aprender de ella, y de repente ves que comienza lentamente, pero muy rápidamente, todo el mundo en el mundo aprende cómo hacerlo, aprende cómo aprovechar el poder de esta tecnología y avanzar. Esto sucedió con las bases de datos. En los años 90, solo había unas pocas cientos de personas en el mundo que entendían cómo usarlas, implementarlas. Pero ahora puedes simplemente hacer clic en un botón en Super Base o Planet Scale o, sinceramente, algunas cosas, y simplemente se abstrae detrás de ti y tienes una base de datos con potencia mundial que cualquiera puede usar en un fin de semana, y no tienes que pagar dinero por ello. Gran parte es gratuita. De la misma manera con la tecnología frontend. Comenzó con que tenías que ser un experto en qué sistemas usar, cómo escribir código sin un sistema de tipos, pero ahora hay cursos gratuitos para que comiences en un fin de semana, y tú podrías tener algo listo para enviar en unos días más o menos. Quiero decir, así es como suceden las startups de criptomonedas, como que están arriba una semana y la siguiente semana están abajo. Si ellos pueden hacerlo, tú también puedes
6. Edge Computing and the Cool Computer Club
Short description:
Últimamente, he empezado a sentir lo mismo acerca de la informática de borde. Todo el mundo está entrando en este lugar donde puedes implementar servidores extremadamente cerca de ti, físicamente cerca de ti, donde la latencia es inferior a 10 milisegundos. Realmente no tienes que ser un experto para aprovechar el poder de una computadora mundial. De hecho, renuncié a mi trabajo en Cloudflare hace un mes. Este es el momento adecuado para comenzar tu propia empresa. Lo llamo el club de la computadora genial. Todos ustedes son miembros, bienvenidos al club de la computadora genial. La idea es que he decidido que hay siete grandes proyectos que podemos resolver para el mundo. Y hoy van a escuchar acerca de uno de ellos. Así que el proyecto uno se llama el Kit de Desarrollo Multijugador.
Lo he empezado a sentir de la misma manera acerca de la informática de borde. Anteriormente solía ser una posición especializada donde tenías que saber cómo escalar una aplicación más allá del alcance de un único servidor. Necesitabas un equipo de personas que manejaran, administraran una forma de servidor en algún lugar, un centro de datos, potencialmente distribuido en todo el mundo. Pero ahora, con la nueva generación de proveedores de informática de borde, Cloudflare, Fastly, Vercel, Amazon Lambda, Edge, Fly.io, Bunn va a sacar algo. Dell o Deploy, y supongo que un par más, bueno, Superbase también comenzará a hacer, bueno, ahora hacen funciones, etc. Resulta que todo el mundo está entrando en este lugar donde puedes implementar servidores extremadamente cerca de ti, físicamente cerca de ti, donde la latencia es inferior a 10 milisegundos. 10 milisegundos es efectivamente cero. Pero tú como desarrollador realmente no tienes que preocuparte por eso. Bueno, sería bueno si lo entendieras, pero realmente no tienes que ser un experto para aprovechar el poder de una computadora mundial. Usé DALI para eso, por cierto. Dije, oye, muéstrame cómo se vería una computadora global contra un cielo nocturno oscuro. No está mal. Imagina que todos esos son CPUs, supongo. Esto también es lo que se ve en X-Men Cerebro cuando comienzan a buscar a los mutantes en comparación con los humanos. De todos modos, continuando. Así que en realidad renuncié a mi trabajo en Cloudflare hace un mes. Fue genial, los amo. Y fue extraño, necesitaba tener la conversación de `no eres tú, soy yo` con ellos. Y fue agradable. Amo a cada uno de ellos. Y fue extraño, ellos decían, no hay nada que podamos hacer para que te quedes. Yo decía, no, sabes, el gobierno es súper estable, la economía está yendo muy bien, este es el momento adecuado para comenzar tu propia empresa. Así que aprovecho este momento para anunciar lo que he estado haciendo ahora, a lo que he decidido dedicar los próximos años de mi vida. Este es el logotipo, todavía está en proceso. Lo llamo el club de la computadora genial. Todos ustedes son miembros, bienvenidos al club de la computadora genial. Eventualmente tomaré todo su dinero. La idea es que he decidido que hay siete grandes proyectos que podemos hacer, que podemos resolver para el mundo. Y hoy van a escuchar acerca de uno de ellos.
7. Building Real-Time Multiplayer Apps
Short description:
Desarrollar una aplicación multijugador en tiempo real debería ser tan simple como construir una sola aplicación. Sin embargo, existen desafíos con WebSockets, como la escalabilidad, la estimación de costos, la falta de experiencia en desarrollo local y la necesidad de seguridad de tipos. También son preocupaciones la prevención de estados inválidos, el manejo del orden de los mensajes y los conflictos de edición. Además, se deben considerar el uso de la batería y las opciones de fallback a las solicitudes HTTP. Estos son problemas que la plataforma debería abordar, permitiendo a los desarrolladores centrarse en construir sus aplicaciones con facilidad.
¿Estás listo? Entonces, el proyecto uno se llama el Kit de Desarrollo Multijugador. Desarrollar una aplicación para sincronización multijugador en tiempo real, el próximo Figma, el próximo Quake 3. Por cierto, Quake 3 fue lanzado en 1999 y si ellos pudieron hacerlo bien, es un poco extraño que nosotros no lo hagamos. Construir el próximo Discord, construir la próxima cosa en tiempo real XYZ debería ser accesible, económico, debería ser accesible incluso para desarrolladores de 9 a 5. No es algo en lo que quieras gastar una fortuna o tu salud mental. Mi inspiración para esto es claramente la película del año, `Everything Everywhere, All at Once`, Michelle Yeoh para la Vida, baby. Qué película. Qué película increíble. También siento que la historia es algo con lo que puedo relacionarme, un inmigrante tratando de salir adelante en el mundo occidental, con el peso de la familia y tratando de crear un negocio en un mundo que se está desmoronando. Pero el objetivo aquí es que construir esta aplicación multijugador debería ser tan simple como construir una sola aplicación. Sunil Pai de hace 20 años debería poder sentarse y construirla en un fin de semana sin volverse loco. Lo curioso es que realmente pregunté en Twitter, `oye, ¿qué problemas enfrentas ahora mismo si tienes que usar WebSockets en tiempo real?` Porque WebSockets ha sido una tecnología desde hace mucho tiempo. Pero en realidad, todos siguen hablando de REST y GraphQL y cosas de solicitud-respuesta, lo cual es genial, por supuesto, pero las aplicaciones de ciencia ficción que hemos aprendido o con las que hemos soñado en los últimos 100 años no siguen realmente un modelo de solicitud-respuesta. Se conectan directamente a una conciencia universal y se alimentan de ella. Y obtuve algunas respuestas geniales. Esto se debe a que todos los que me siguen en Twitter son muy inteligentes, con un 3.1 en Twitter, y me dieron respuestas geniales. Me dijeron que es difícil escalar. Es muy difícil saber cuánto me costará. Los servicios de terceros, sin mencionar nombres, no tienen una gran experiencia de desarrollo local donde realmente puedes ejecutarlo en tu servidor. No es de código abierto. No puedo ejecutar el código. ¿Cómo puedo probar algo así? ¿Cómo puedo asegurarme de que no arruine mi economía? Un agradecimiento especial a Robert Balicky, quien realmente lo explicó en una serie de notas técnicas. No tienes que leer las palabras en la diapositiva. Está bien. Pero es muy importante, es una falta de seguridad de tipos. Entonces, ¿cómo te aseguras de que sea seguro y no rompas las aplicaciones para todos los que están ahí fuera? ¿Cómo evitas estados inválidos, especialmente cuando no hay garantía sobre el orden de los mensajes que pueden llegar? ¿Qué sucede cuando las personas editan cosas en diferentes ventanas? Y muchas más sugerencias. ¿Cómo te aseguras de que no consuma toda la batería de tu teléfono? ¿Cómo vuelves a algo como una simple solicitud HTTP si los WebSockets son demasiado costosos? Estas no son cosas de las que tú, como desarrollador que quiere escribir tu `Hola mundo`, debas preocuparte. Estas son cosas que la plataforma debería proporcionarte. Conceptualmente, la forma en que comencé a pensar en ello es que como desarrollador, deberías decir, `aquí hay una clase llamada sala, aula, aquí hay un aula,`
8. Building Collaborative Experiences
Short description:
Esta es una API conceptual que debería ser fácil de usar, completamente verificada por tipos y permitir pruebas locales. La plataforma debería proporcionar características como implementación sin operaciones y generación de servidores de vista previa por solicitud de extracción. El objetivo es centrarse en construir experiencias colaborativas y pagar solo por lo que se utiliza. El proyecto ha introducido con éxito el modo multijugador en TLDraw.com, lo que permite actualizaciones en tiempo real en diferentes ubicaciones. El proyecto se lanzará a principios de 2023 y el orador está adoptando un enfoque diferente esta vez, priorizando el equilibrio entre el trabajo y la vida personal.
y simplemente escribir un poco de lógica cuando un usuario se conecta a él. Debería haber una API. Y esto, nuevamente, es solo una API conceptual. Esto no es lo que probablemente será cuando se lance. Pero debería ser conceptualmente simple, como iniciar, crear un nuevo constructor de sala, y poder conectarse a él sin tener que preocuparse por usar Redis como una sincronización cosa, etc. Además, las cosas que deseas de un sistema como este son que debe estar completamente verificado por tipos, quiero poder ejecutarlo localmente para poder probarlo mucho. No debería tener que iniciar sesión en un servicio para usarlo. Debería poder escribir pruebas en él de 9 a 5 y luego irme a casa sin preocuparme de si se está rompiendo. No quiero tener que estar disponible para una aplicación que he escrito. Eso es una de las cosas buenas de ser un desarrollador front-end, también. Realmente no tenemos mucho tiempo de disponibilidad, tiempo de disponibilidad, y si hay un problema, simplemente vuelves a tu paquete JavaScript anterior.
Cosas simples como implementación sin operaciones. ¿Puedo hacer clic en un botón, ejecutar un comando y implementarlo en todo el mundo? ¿Puedes generar un servidor de vista previa por solicitud de extracción? Entonces, ¿puedo producir todo el sistema en tiempo real para que cuando alguien envíe una solicitud de extracción al proyecto, se inicie una cosa, puedes probarlo, asegurarte de que no se rompa antes de que se implemente? Estas son cosas que la biblioteca y el código, la plataforma, deberían proporcionarte. No debería ser algo que construyas tú mismo. Lo que realmente quieres hacer como desarrollador es construir experiencias colaborativas, lo que realmente quieres construir y enviar a tus usuarios, tu próximo Figma, tu próximo Discord, el juego Quake 3, lo que sea. Quieres enfocarte en lo que hace que tu aplicación sea genial y quieres pagar solo lo que se utiliza. De hecho, parte de eso es que quieres medir lo que tus usuarios están utilizando y pasar ese costo también a ellos.
Así que estoy feliz de decir que realmente lo logramos. Y quiero agradecer a TLDraw. De hecho, he estado incubando esto dentro de TLDraw. Si Steve está en la audiencia en algún lugar, hola, gracias, Steve, hey, Steve es el mejor, molestenlo por eso, gran pequeña aplicación llamada TLDraw.com, trabajando en Rewrite y bastante rápido pudimos introducir el modo multijugador en esta aplicación. Y es genial porque básicamente solo tienes que decir, hey, aquí hay un enlace, aquí hay un enlace, varias personas pueden unirse y es el GIF reproduciéndose, debo hacer clic en el GIF para que funcione. Y conceptualmente puedes imaginar que esto está sucediendo en dos ubicaciones geográficas completamente diferentes, pero ten en cuenta que hay actualizaciones de 60 fps en tiempo real. Esto es realmente difícil de hacer con los sistemas existentes y los servicios de terceros existentes en este momento, por lo que el hecho de que logramos que esto funcione es increíble, siento que este proyecto realmente tiene futuro. Estaba preocupado, estaba haciendo mucho bravuconeo hablando con ellos, sí, sí, lo resolveremos, lo implementaremos, no te preocupes, y estaba increíblemente preocupado. Pero el hecho es que funciona y estoy emocionado de que A, pudimos hacerlo rápidamente, simplemente, y no estamos, y el código tiene alrededor de 300, 400 líneas de código que hacen esto. Así que estoy extremadamente feliz y agradecido a Steve y Diedra por permitir que esto se incube allí. Así que esto se lanzará a principios de 2023, quiero asegurarme de que todos lo tengan en sus manos para entonces. No dudes en contactarme y ser amable conmigo si quieres verlo antes, porque ya estoy mostrando demos a todos los que me lo piden. Pero lo que quiero señalar es que lo estoy haciendo de manera diferente esta vez. No estoy trabajando doce horas al día, siete días a la semana. Esta es una foto del estanque de Hampstead Heath.
QnA
Quitting as Prime Minister and Personal Growth
Short description:
Estoy renunciando como primer ministro. Compré una nueva guitarra y mejoré mi vida. Encuéntrame en Twitter o por correo electrónico. Vamos a charlar en el pub. Gracias por tu apoyo. Vamos a pasar al stand de cuestionarios. Empecé a tocar la guitarra antes del año 2000.
Yanni y yo vamos a nadar en Londres, y es increíble. Está helado, nunca había hecho algo así en mi vida, pero estoy tratando de ser saludable y abrirme a nuevas y maravillosas experiencias, como nadar en un estanque en Londres. Simplemente increíble. Lamento decir que renunciaré a mi cargo como primer ministro. Ha sido un tiempo maravilloso, pero no puedo cumplir con el mandato que fue demasiado agresivo para mí sugerir en primer lugar. Process.exit tendrá que esperar otro día. El gobierno cuenta con todo mi apoyo. Sí, también me compré una guitarra roja ahora, así que ahora tengo una guitarra azul y una guitarra roja y estoy logrando tocar un poco más. Mi vida se siente mucho mejor. Puedes encontrarme en Twitter en 3.1. Puedes encontrarme en mi flamante dirección de correo electrónico, sunil.coolcomputerclub.com. Así que eso funciona. O puedes encontrarme en el pub y podemos charlar. Estoy bebiendo agua con gas en este momento. Gracias. Esa es mi charla. Muchas gracias. ¿Me sigues al stand de cuestionarios? Me estoy quedando sin sinónimos para esta área. Gracias. Eso fue... Me encanta cuando das una charla personal. Creo que la primera charla tuya que vi fue en React Europe cuando hablaste sobre tu viaje en ese entonces, y es realmente bueno ver cómo todo esto encaja. Lo aprecio, Yanni. Gracias también por ser el amigo que se asegura de que recuperemos nuestras vidas en orden. Lo sé. Así es. Veamos algunas preguntas de la audiencia. Creo que hay una pregunta que dice, ¿has empezado a tocar la guitarra? Y la respuesta parece ser... Sí, lo he hecho. De hecho, solo tocaba música antes del año 2000 porque toda esta nueva música que
Balancing Work and Personal Growth
Short description:
Me encanta ser desarrollador, pero pasar ocho horas al día trabajando en la industria realmente afecta mis capacidades para hacer investigación por mi cuenta. Si estás en un trabajo abusivo, comienza a buscar un lugar que valore a los desarrolladores. Habla con tu gerente sobre encontrar ideas interesantes para aplicar en el trabajo. Encuentra cosas en las que enfocarte fuera del trabajo que den sentido a tu vida. Los desarrolladores que no programan en su tiempo libre no son confiables. Eso es una tontería.
Me siento muy incómodo con la música que escuchan los niños. Además, soy malo con el sintetizador y esas cosas. Sé cómo tocar algo de Iron Maiden, Bryan Adams, literalmente cualquier cosa que se tocara en el sur de India a finales de los 90. Eso es lo que estoy tocando. Genial. Bueno, ahora una pregunta seria. Me encanta ser desarrollador, pero pasar ocho horas al día trabajando en la industria realmente afecta mis capacidades para hacer investigación por mi cuenta. ¿Cómo puedo cambiar esto? Creo que puedes reemplazar `investigación` por cualquier cosa que requiera tiempo y esfuerzo.
Bueno, en primer lugar, si estás en un trabajo abusivo, te recomendaría que actualices tu currículum y busques un lugar que valore a los desarrolladores. ¿Sabes qué? Es 2022 y me doy cuenta de que estamos en un lugar tan afortunado que apenas fuimos afectados por la pandemia. Como, tienes que quejarte de que tuve que trabajar desde mi sofá durante dos años. Fue mucho peor para muchas otras personas. Pero realmente los desarrolladores tienen mucho poder y impacto en la empresa. Los desarrolladores, las personas que están bajo la gestión intermedia en las empresas, tienen mucho poder e impacto en la empresa. Dicho esto, si estás en un lugar donde estás luchando, tal vez sea cuestión de hablar con tu gerente al respecto. Encontrar ideas interesantes que puedas aplicar en el trabajo y descubrir cómo obtener su aprobación. Así que prototipar algo rápidamente o presentar a la gerencia, `hey, creo que esta es una buena idea y podemos enfocarnos en ella`. Porque supongo que la mayoría de mis mejores ideas han surgido aprovechando los trabajos en los que he estado y encontrando un lugar donde pueda usarlas. Y generalmente en cada trabajo de tecnología hay una amplia variedad de problemas y puedes encontrar algo en lo que involucrarte a ti mismo. Dicho esto, aunque odio decirlo, como, sí, no deberías hacer nada después de que se termine el trabajo. Deberías encontrar cosas en las que enfocarte. Hay libros para leer. Y descubrir... es más difícil, supongo, si eres padre o te encargas de otras personas, pero si tienes el privilegio de tener un poco de tiempo, intenta enfocarte en las cosas que realmente le den sentido a tu vida. Yo empecé a hacer eso y recuperé mi vida sin renunciar a las cosas que son importantes para mí.
Creo que hay una pregunta de seguimiento aquí, que podemos responder rápidamente. Escuché una vez que los desarrolladores que no programan en su tiempo libre no son confiables. ¿Qué opinas de eso? Eso es una tontería. Así es. Eso es una tontería.
Sunil Pai's Tricks to Success and TL Draw
Short description:
Me gusta tanto la imagen que pensé que, dado que me ha ido tan bien en mi vida, las camisetas que uso son las que otras personas deberían usar. TL Draw no es solo una gran herramienta de dibujo, que lo es. Tiene dos o tres cosas muy únicas. Una es que está diseñado con buen gusto. Lo que también me gusta es que está pensado para ser hackeable y extensible. Tenemos un nuevo lote de preguntas que acaba de llegar. No tenemos tiempo para todas ellas, así que voy a hacer esta última pregunta, y el resto de ellas las puedes encontrar, Sunil, en la sala de preguntas y respuestas del orador. Pero la última pregunta, primero una afirmación, eres un ingeniero genial. Estoy de acuerdo. Hay mucho que aprender de ti. Estoy de acuerdo. ¿Cómo te sientes después de renunciar a tu trabajo? Estoy asustado, pero quiero decir, es muy normal. He dado muchas charlas en los últimos años. Quiero decir, es Twitter después de todo, ¿verdad? Es muy fácil soltar sabiduría y cosas así.
Ya sabía la pregunta. Quería ponerla ahí. ¿Es tu camiseta una ilustración de sesgo de supervivencia? No, es interesante. Me gusta tanto la imagen que pensé que, dado que me ha ido tan bien en mi vida, las camisetas que uso son las que otras personas deberían usar. Y todos deberían seguir mi consejo. He decidido darle un nombre al fenómeno que son los trucos de éxito de Sunil Pai en la vida. No sé a qué te refieres con el sesgo de supervivencia que mencionas, y me niego a averiguarlo. Gracias. De acuerdo, creo que estamos entrando en preguntas menos relevantes, pero quiero preguntar, esta es una oportunidad para que hables de TL Draw, qué hace que esta aplicación, que asumo que es TL Draw, sea diferente de Miro?
Bueno, en primer lugar, también me gustan las personas que hacen TL Draw. No sé quién hace Miro, asumo que son personas maravillosas, pero me gusta el equipo de TL Draw. TL Draw no es solo una gran herramienta de dibujo, que lo es. Tiene dos o tres cosas muy únicas. Una es que está diseñado con buen gusto. Desde el momento en que comienzas a usarlo, encontrarás una serie de microinteracciones, la forma en que se comportan las flechas. Lo creó un tipo que creó Perfect Arrows y Perfect Freehand, eso es en lo que se obsesiona. Y la forma en que se comporta la interfaz de usuario cuando la usas es increíble. Lo que también me gusta es que está pensado para ser hackeable y extensible. Es lo que usas para construir otras aplicaciones. Porque si quieres construir, por ejemplo, un Figma para un caso de uso X, Y, Z, terminas teniendo que construir todo Figma primero y luego lo demás. Así que TLR es, oye, quieres construir Miro para este caso de uso, comienza con TLR, agrega tu propia personalización de la interfaz de usuario, es genial. Si quieres saber más, Steve Ruiz está allí atrás, definitivamente molestenlo, le encanta hacer amigos y que la gente lo moleste, así que dile que te envié. Genial. Tenemos un nuevo lote de preguntas que acaba de llegar. No tenemos tiempo para todas ellas, así que voy a hacer esta última pregunta, y el resto de ellas las puedes encontrar, Sunil, en la sala de preguntas y respuestas del orador. Pero la última pregunta, primero una afirmación, eres un ingeniero genial. Estoy de acuerdo. Hay mucho que aprender de ti. Estoy de acuerdo. ¿Cómo te sientes después de renunciar a tu trabajo? Estoy asustado, pero quiero decir, es muy normal. He dado muchas charlas en los últimos años. Quiero decir, es Twitter después de todo, ¿verdad? Es muy fácil soltar sabiduría
Confidence in the Future
Short description:
Me siento confiado y emocionado por este nuevo capítulo en mi vida. Tengo un sólido sistema de apoyo y algunos ahorros en los que puedo confiar. Si las cosas no funcionan, incluso le he dicho a CloudFlare que me devuelva mi computadora portátil. Pero creo en mí mismo y en el potencial de la tecnología. Me recuerda cómo me sentía hace 20 años. Ojalá pudiera compartir esta sensación contigo. Es un nuevo comienzo y estoy lleno de positividad. ¡Gracias!
y así sucesivamente. Así que esto se siente como un momento en el que estoy tratando de ponerlo a prueba y supongo que voy a cometer muchos errores. Pero me siento confiado porque tengo grandes amigos y familia y una estructura de apoyo a mi alrededor. Tengo el privilegio de tener algunos ahorros. Mi plan B es, ¿alguien quiere contratarme como ingeniero y darme algo de dinero por un trabajo? De hecho, eso es lo que le he dicho a CloudFlare, que en 6 a 12 meses cuando regrese arrastrándome hacia ellos, habiendo fracasado, solo me devuelvan mi computadora portátil. Pero estoy emocionado. No creo que eso vaya a suceder. Honestamente, estoy empezando a sentir sobre la tecnología en este momento de la misma manera que me sentía hace 20 años. Y desearía poder compartir esa sensación contigo. Esto comienza aquí. Me siento bien al respecto. Es bueno. Estoy muy feliz por ti. Nadaré mañana por la mañana. Oye, amigo. Vamos al estanque. De acuerdo. Muchas gracias. ¡Salud!
Kent C. Dodds discusses the concept of problem elimination rather than just problem-solving. He introduces the idea of a problem tree and the importance of avoiding creating solutions prematurely. Kent uses examples like Tesla's electric engine and Remix framework to illustrate the benefits of problem elimination. He emphasizes the value of trade-offs and taking the easier path, as well as the need to constantly re-evaluate and change approaches to eliminate problems.
State management in React is a highly discussed topic with many libraries and solutions. Jotai is a new library based on atoms, which represent pieces of state. Atoms in Jotai are used to define state without holding values and can be used for global, semi-global, or local states. Jotai atoms are reusable definitions that are independent from React and can be used without React in an experimental library called Jotajsx.
Today's Talk discusses the importance of managing technical debt through refactoring practices, prioritization, and planning. Successful refactoring requires establishing guidelines, maintaining an inventory, and implementing a process. Celebrating success and ensuring resilience are key to building a strong refactoring culture. Visibility, support, and transparent communication are crucial for addressing technical debt effectively. The team's responsibilities, operating style, and availability should be transparent to product managers.
Debugging JavaScript is a crucial skill that is often overlooked in the industry. It is important to understand the problem, reproduce the issue, and identify the root cause. Having a variety of debugging tools and techniques, such as console methods and graphical debuggers, is beneficial. Replay is a time-traveling debugger for JavaScript that allows users to record and inspect bugs. It works with Redux, plain React, and even minified code with the help of source maps.
This Talk introduces the Epic Stack, a project starter and reference for modern web development. It emphasizes that the choice of tools is not as important as we think and that any tool can be fine. The Epic Stack aims to provide a limited set of services and common use cases, with a focus on adaptability and ease of swapping out tools. It incorporates technologies like Remix, React, Fly to I.O, Grafana, and Sentry. The Epic Web Dev offers free materials and workshops to gain a solid understanding of the Epic Stack.
This Talk discusses building a voice-activated AI assistant using web APIs and JavaScript. It covers using the Web Speech API for speech recognition and the speech synthesis API for text to speech. The speaker demonstrates how to communicate with the Open AI API and handle the response. The Talk also explores enabling speech recognition and addressing the user. The speaker concludes by mentioning the possibility of creating a product out of the project and using Tauri for native desktop-like experiences.
ReactJS es extremadamente popular y, por lo tanto, ampliamente soportado. TypeScript está ganando popularidad y, por lo tanto, cada vez más soportado.
¿Los dos juntos? No tanto. Dado que ambos cambian rápidamente, es difícil encontrar materiales de aprendizaje precisos.
¿React+TypeScript, con los IDEs de JetBrains? Esa combinación de tres partes es el tema de esta serie. Mostraremos un poco sobre mucho. Es decir, los pasos clave para ser productivo, en el IDE, para proyectos de React utilizando TypeScript. En el camino, mostraremos el desarrollo guiado por pruebas y enfatizaremos consejos y trucos en el IDE.
En esta masterclass, aprenderás cómo construir tu primer dapp de pila completa en la blockchain de Ethereum, leyendo y escribiendo datos en la red, y conectando una aplicación de front end al contrato que has desplegado. Al final de la masterclass, entenderás cómo configurar un entorno de desarrollo de pila completa, ejecutar un nodo local e interactuar con cualquier contrato inteligente usando React, HardHat y Ethers.js.
Construir aplicaciones web modernas está lleno de complejidad. Y eso solo si te molestas en lidiar con los problemas ¿Cansado de conectar onSubmit a las API del backend y asegurarte de que tu caché del lado del cliente se mantenga actualizada? ¿No sería genial poder utilizar la naturaleza global de CSS en tu beneficio, en lugar de buscar herramientas o convenciones para evitarla o trabajar alrededor de ella? ¿Y qué te parecería tener diseños anidados con una gestión de datos inteligente y optimizada para el rendimiento que simplemente funciona™? Remix resuelve algunos de estos problemas y elimina completamente el resto. Ni siquiera tienes que pensar en la gestión de la caché del servidor o en los conflictos del espacio de nombres global de CSS. No es que Remix tenga APIs para evitar estos problemas, simplemente no existen cuando estás usando Remix. Ah, y no necesitas ese enorme y complejo cliente graphql cuando estás usando Remix. Ellos te tienen cubierto. ¿Listo para construir aplicaciones más rápidas de manera más rápida? Al final de esta masterclass, sabrás cómo:- Crear Rutas de Remix- Estilizar aplicaciones de Remix- Cargar datos en los cargadores de Remix- Mutar datos con formularios y acciones
Vue3 fue lanzado a mediados de 2020. Además de muchas mejoras y optimizaciones, la principal característica que trae Vue3 es la API de Composición, una nueva forma de escribir y reutilizar código reactivo. Aprendamos más sobre cómo usar la API de Composición de manera eficiente.
Además de las características principales de Vue3, explicaremos ejemplos de cómo usar bibliotecas populares con Vue3.
Tabla de contenidos: - Introducción a Vue3 - API de Composición - Bibliotecas principales - Ecosistema Vue3
Requisitos previos: IDE de elección (Inellij o VSC) instalado Nodejs + NPM
Desarrollando Blogs Dinámicos con SvelteKit & Storyblok: Una Masterclass Práctica
Top Content
Featured WorkshopFree
2 authors
Esta masterclass de SvelteKit explora la integración de servicios de terceros, como Storyblok, en un proyecto SvelteKit. Los participantes aprenderán cómo crear un proyecto SvelteKit, aprovechar los componentes de Svelte y conectarse a APIs externas. La masterclass cubre conceptos importantes incluyendo SSR, CSR, generación de sitios estáticos y despliegue de la aplicación usando adaptadores. Al final de la masterclass, los asistentes tendrán una sólida comprensión de la construcción de aplicaciones SvelteKit con integraciones de API y estarán preparados para el despliegue.
Construye Aplicaciones Modernas Utilizando GraphQL y Javascript
Featured Workshop
2 authors
Ven y aprende cómo puedes potenciar tus aplicaciones modernas y seguras utilizando GraphQL y Javascript. En este masterclass construiremos una API de GraphQL y demostraremos los beneficios del lenguaje de consulta para APIs y los casos de uso para los que es adecuado. Se requiere conocimiento básico de Javascript.
Comments