En la historia de la comunidad de esta semana, Brian y Jonathan charlan un rato sobre la experiencia intercultural, la programación funcional y cómo fue mudarse del Medio Oeste estadounidense a Escandinavia.
Jonathan: Buenas tardes a todos y bienvenidos al podcast de Exercism. Tengo el privilegio de contar con **Brian **Underwood. Brian, ¿dónde vives ahora mismo? Y cuéntanos un poco tu historia y cómo acabaste donde estás ahora.
Brian: Sí, claro. Gracias por invitarme. Sí, estoy en Estocolmo, Suecia. Pero originalmente soy de Estados Unidos, nací en Ohio, así que ha sido un poco de viaje desde ahí.
Jonathan: No.
Brian: el, supongo, mi... querías saber de dónde soy, o sea, mi especie de trayectoria por el medio, supongo.
Jonathan: Sí, por supuesto. ¿Cómo acabaste pasando del centro de Estados Unidos a... Suecia, Escandinavia? Ya sabes, es un salto bastante grande.
Brian: Claro. Sí. Sí, por supuesto, es el centro de Estados Unidos. No te culpo por despacharlo, o sea, nadie sabe realmente dónde está Ohio. Así que eso es, eso es muy divertido. Sí, así que yo, ya sabes, fui a Ohio State para la universidad. Y eso fue como informática, educación. Y fue divertido. Lo disfruté. Y estaba más o menos haciendo... soporte técnico en eh en la Facultad de Humanidades todo el tiempo que estuve allí. Tuve la suerte de conseguir un trabajo allí cuando empecé. Y más o menos seguí un par de años después de graduarme. eh Pero luego, creo que me aburrí un poco de dónde estaba y de lo que hacía, y además mi novia me dejó. Así que mejor no, mejor no.
Jonathan: No son recuerdos felices, por así decirlo.
Brian: Sí, quiero decir, en retrospectiva todo estuvo bien. Pero sí, pero es como, vale, creo que aquí tuve la oportunidad. Así que decidí pasar unas semanas viajando por Europa, que era la primera vez que... salía de verdad de Estados Unidos por un periodo prolongado. Y estuvo bien, viajar por Europa. Y luego decidí, antes de hacer eso, decidí que me iba a mudar. Y me había decidido más o menos por Boston como el sitio al que me iba a mudar. Y así conseguí, supongo, no sé si tuve suerte en cierto modo, pero tuve un par de oportunidades en las que, ya sabes, siempre había hecho soporte para Mac, que era algo importante que había hecho. Así que ese fue como un trabajo que tuve la oportunidad de aceptar, un trabajo de soporte técnico para Mac en Boston. Y otro era esta pequeña startup que hacía software para, como, compañías de telefonía móvil y, como, cómo organizaban la exposición de productos en sus tiendas. Y el, ya sabes, creo que yo quería de verdad pasarme a ser programador. Pero este otro trabajo era como, ah, eso es lo que llevo haciendo mucho tiempo. Pero creo que me estaba decantando por lo de, vale, voy a asumir esta nueva vida, esta, esta, esta carrera que quiero. Así que, pero creo que también tuve un poco de suerte al conseguir el trabajo porque creo que de verdad necesitaban a alguien. Y simplemente me aceptaron. Y eso resultó ser una especie de trabajo importante que tuve durante varios años. Eh, pero sí, y luego eso fue como el principio. En resumen, a partir de ahí conocí a la que ahora es mi mujer y nos mudamos a Providence, nos casamos allí. eh luego nos mudamos a California. Creo que mi mujer consiguió un trabajo en San Francisco. Y yo dije, sí, puedo. Soy desarrollador de software, puedo, puedo hacerlo, puedo encontrar trabajo en San Francisco. No, no, no hay problema. Así que estuvo genial. Fue, vivimos en Oakland y trabajamos en San Francisco un par de años. Pero luego decidimos que queríamos viajar por ahí un par de años. Y acabamos viajando por el mundo durante dos años con nuestro, en aquel momento, para entonces ya teníamos un hijo de dos años y medio. Y viajamos con él un par de años. Y luego sí, volvimos a Estados Unidos un par de años. Y después decidimos algo como, ah, ya sabes, habíamos pasado por Estocolmo en nuestros viajes. Y dijimos, nos gusta mucho Estocolmo. Así que, vale, vamos a volver. Y eso es, ahí es donde hemos estado los últimos cuatro años más o menos.
Jonathan: ¿Tu mujer es sueca o es que simplemente os gusta Estocolmo? Ah, o sea, ¿cómo...? ¿Cuál es la historia ahí?
Brian: Sí, no, buena pregunta. Es la pregunta que hace mucha gente. Pero no, los dos somos estadounidenses. Los tres somos estadounidenses, mi hijo incluido. Aunque habla sueco mucho mejor que cualquiera de nosotros. Estamos trabajando en ello. Pero sí, no, simplemente nos gustó mucho. Creo que hubo algunos sitios por los que habíamos viajado y dijimos, bueno, quizá podríamos vivir aquí si... si quisiéramos mudarnos a algún sitio. Creo que uno era Auckland, un sitio por el que pasamos y que nos gustó mucho. ¿En Nueva Zelanda? ¿Auckland, Nueva Zelanda, quieres decir? Nueva Zelanda, exacto. Pero quedaba un poco lejos, eso habría sido como si quisiéramos volver a Ohio a visitar a la familia, habría sido un viaje largo. Sigue siendo un viaje considerable desde Suecia, obviamente.
Jonathan: Vale, y ahora mencionas, hiciste un comentario sobre programación informática frente a, perdón, ciencias de la computación y programación. ¿Cuál era la diferencia? Porque en mi cabeza, las ciencias de la computación son más o menos programación, pero claramente no. O quizá sí, no lo sé. ¿Qué querías decir con eso exactamente?
Brian: Sí. No sé si sé la diferencia. Quiero decir, tengo un título en informática, y creo que era programación, pero no era como... habrás oído, o habrán oído otras personas, que no siempre aprendes con un título universitario las cosas de la vida real que podrías aprender y hacer en un trabajo. Y probablemente eso ha cambiado algo desde que fui a la universidad. Creo que probablemente ha habido un movimiento hacia una educación más práctica. Como, recuerdo... Ya sabes, aprendíamos, creo que C y Java eran los dos lenguajes principales que aprendíamos en aquel momento. Y en particular, recuerdo que estábamos aprendiendo esta cosa en Java, en una clase, donde eran muy, era esto, creo que era un método de enseñanza o alguna forma de enfocar las cosas en la que comentabas muy a fondo cada una de tus funciones para decir, era como, se llama diseño por contrato, donde decías como, ¿qué encaja? ya sabes, en un contrato legal, ya sabes, algo como, vale, ¿cuáles son tus responsabilidades? ¿Cuáles son mis responsabilidades? Y diseñar una función por contrato significa, ya sabes, vale, si me das estos valores en las variables, y ya sabes, nunca me das un número negativo para esta. Y siempre te aseguras de que este string nunca esté vacío, o lo que sea, ¿no? Estas son las cosas de las que tú eres responsable. Y luego, si haces eso, yo prometo hacer esto, ¿no? Y hacer que ocurra. Y así había esta estructura de comentarios que recuerdo que me confundía mucho, pensando que de alguna manera los comentarios se ejecutaban y eran parte del programa. Y era, yo, ya sabes, creo que pasé un par de días como, ¿qué? ¿qué se supone que tengo que hacer aquí? Y al final más o menos caí en que era solo este método muy formal que... Y creo que era bueno en cierto sentido, que a veces pensar da forma a mi mente. Es bueno pensar en no tener una función, ser capaz de lidiar con todo lo que pueda pasar porque eso solo lleva a la locura.
Jonathan: Y ahora fuiste a la universidad con informática como, más o menos, la titulación principal que pensabas hacer. ¿Cómo decidiste hacer eso? ¿Fue simplemente que tenías una especie de gravedad natural hacia las materias más científicas en el colegio o el instituto, o hubo un momento en el que dijiste, en realidad esto me encaja muy bien? ¿Cómo fue la antesala de decidir que, en realidad, informática era una carrera que querías hacer?
Brian: Sí, probablemente tuve bastante suerte en que simplemente me atraía de forma natural, creo. No sé, recuerdo... tener una especie de elección de programas en un momento dado, en el que podía entrar al programa de artes y ciencias, itinerario de informática, o al itinerario de ingeniería informática. Y uno implicaba, como, tomar un curso de idiomas, o como español, que era el que yo más o menos seguía desde el instituto. Pero el otro era como, ah, no tienes que hacer idioma extranjero, pero tienes que hacer más física y matemáticas. Y dije, vale, apúntame a eso. Así que supongo que me atraía. Creo que es como, aunque una cosa en la que pienso mucho es que, y quizá esto es una especie de privilegio de interés científico o matemático que tengo, pero siento que probablemente... las matemáticas, hacer matemáticas. Mucha gente es como, ah, las matemáticas, me pongo nervioso con las matemáticas o es estresante o lo que sea. Y eso, entiendo que puede ser totalmente el caso, pero me pregunto si quizá a veces... y la gente, algunas personas simplemente, por la razón que sea, encuentran la diversión en las matemáticas y son capaces de, como, emocionarse con ello, y es la misma cantidad de trabajo y de resolver cosas, pero simplemente no se siente así porque, cuando nos divertimos, no sentimos tanto el trabajo. Probablemente no sea exactamente eso, es solo una teoría personal que tengo y que probablemente solo es medio correcta.
Jonathan: Pero fue curioso porque, recuerdo que hice química durante tres años en el GCSE en el Reino Unido y durante dos años tienes tres años de aprendizaje hasta tus exámenes del GCSE y luego tienes estos grandes exámenes a los 16 y haces toda una gama de temas, así que más o menos haces diez asignaturas distintas y eso es bastante. Y luego decides, vale, voy a hacer A levels, voy a hacer más matemáticas o ciencias o lo que sea, o inglés o teatro o lo que sea. Pero recuerdo que la química no me hizo clic durante unos dos años y luego, como la semana antes del examen, todo cobró sentido, la tabla periódica y cómo funcionaba todo eso, y ah, podía sacar todas las respuestas de la tabla periódica, solo tengo que, es como un crucigrama o lo que sea. Y fue el momento en que se encendió la bombilla y recuerdo que desde ese momento pensé, ah, esta es la asignatura más fácil del mundo. Pero fueron dos años de lucha para llegar a ese punto y es interesante porque siento que para mí programar es parecido, que es como sumergirte en ello durante mucho tiempo y luego hará clic y estoy emocionado por cuando eso parezca ir en esa dirección. Pero creo que lo que describes ahí, ya sabes, vi amigos que simplemente lo entendían muy rápido desde el principio y lo disfrutaban y el aspecto de resolución de problemas era la característica principal del aprendizaje, lo cual me parece muy interesante. Así que está bien que tú también lo hayas vivido, supongo.
Brian: Sé que hay una app, en realidad, con la que mi hijo ha jugado en su iPad. Hay una empresa o una serie de apps llamadas Dragon Box. No sé si has oído hablar de ellas. Pero hacen algunas apps educativas muy buenas. Normalmente soy bastante escéptico con la mayoría de las apps educativas, pero hacen varias realmente buenas. Y una de ellas es sobre geometría. Y pienso en esto como una metáfora a menudo, que no era geometría, era álgebra. También hay una de geometría. Pero con la de álgebra, en realidad no te enseña los conceptos del álgebra. Te enseña la mecánica del álgebra.
Jonathan: Asegúrate de darle a este vídeo un pulgar arriba y suscribirte a nuestro canal para ver más vídeos como este.
Brian: Y lo hace de una forma en la que tienes dos lados distintos con estas dos cajas distintas, y tienes que hacer que las cosas se equilibren en los dos lados. Mueves el monstruo de un lado al otro, o tienes que transformarlos de un tipo de monstruo a otro. Ha pasado un tiempo desde que lo vi, pero lo que recuerdo tan claramente es que él estaba aprendiendo la mecánica del álgebra, aunque no entendía hacia qué trabajaba ni por qué hacía esto. Pero era divertido hacerlo, y lo hacían de una forma que lo hacía realmente atractivo. Y lo que creo que es tan genial de eso, y quiero que vuelva a pasar por la app cuando empiece a hacer álgebra, porque siento que si dominas la mecánica, entonces no tienes que preocuparte tanto por eso, y puedes pensar más en el nivel alto sin tener que estresarte por las cosas de la mecánica. Y creo que quizá eso es lo que dices con la química. No sé si fue así para ti, pero quizá es como, ¿por qué debería importarme toda esta mecánica, y estas reglas, y estas cosas? Y es como, una vez llegas a cierto punto, es como, vale, he luchado a través de eso más o menos. Ahora quizá puedo interesarme por por qué hago esto.
Jonathan: Sí, sí. No, fue una experiencia muy interesante porque fue la primera vez que pasé por ese proceso de entender algo y luego pasas por ese periodo de perder mucha confianza en esas materias porque piensas, ah, mi cerebro no está especialmente cableado para ese tipo de proceso de pensamiento. Pero en realidad, si luego miras la literatura inglesa, por ejemplo, que fue lo que hice, en realidad pasas de forma muy sistemática por mirar el lenguaje y cómo se estructuran las cosas y entender, como, pero hay un matiz, hay una naturaleza artística en todo eso también, lo cual, quiero decir, podrías decir que también hay ese elemento artístico en el desarrollo y en el código. Cada persona tiene su propio toque y creo que eso es lo que cada vez me doy más cuenta: no hay ninguna regla estricta para nada. Es solo, todo son compensaciones. Así que no, ha sido fascinante. Y ahora tú, hiciste, nos ayudaste con las cohortes, que si alguien nos escucha, hicimos como experiencias de aprendizaje en Elixir y Golang y Brian, tú ayudaste un poco con la cohorte de Elixir. Entonces, ¿cómo llegaste a Elixir como lenguaje en sí? ¿Cuál fue la especie de trasfondo para entrar en eso?
Brian: Sí, es curioso, porque alguien me preguntó exactamente esa pregunta hoy. Porque es un, quiero decir, es un lenguaje nicho, ya sabes, en cierto modo. Pero he estado en el mundo de Ruby. He sido desarrollador de Ruby durante mucho tiempo. Y me encanta Ruby, porque es, ya sabes, soy del tipo de programador que, quiero, quiero hacer cosas, quiero pensar en, quiero resolver problemas difíciles. Y es difícil resolver problemas difíciles cuando estás pensando en los pequeños detalles de las cosas y tienes que lidiar con punteros o lo que sea, ¿no? Así que Ruby era genial para eso. Y luego, por supuesto, José Valim, el creador de Elixir, salió del mundo de Ruby. Ya era prolífico en el mundo de Ruby y decidió que necesitaba, no necesitaba, quizá es increíble, iba a crear su propio lenguaje y ser prolífico en eso e hizo un trabajo increíble en eso. Así que yo, en cierto modo, ya sabes, simplemente estaba enganchado a ese mundo donde, ya sabes, escuchaba algunos podcasts en los que a veces hablaban de Ruby, pero luego estaba como, ah, esta cosa nueva, Elixir, y luego creo que quizá un cambio, bueno, una cosa un poco fundamental fue que yo vivía en, en realidad acababa de mudarme de nuevo a Columbus una temporada, Columbus, Ohio, y José Valim vino al grupo de Ruby de Columbus, la Columbus Ruby Brigade. Y decían, ya sabes, José Valim es tan genial que solo viene a hablar de lo que quieras que hable. Y por supuesto, dijo, sí, hablaré de Elixir porque creé este lenguaje. Estoy muy emocionado con él. Sí. Sí, exacto. Y recuerdo esto. Es tan gracioso, como hace un año, encontré una grabación de esa presentación. Y está un poco borrosa. Pero todavía puedes verla. Y todavía puedo, puedo encontrar el punto donde le hago una pregunta a José. Y igual que recuerdo tener esta confusión sobre cómo exactamente.
Jonathan: Estoy muy emocionado con él.
Brian: estos conceptos de que creas estos procesos y pueden recuperarse de fallos, si tienes supervisores y lo que sea. Y no recuerdo exactamente lo que dijo, pero yo estaba como, ¿cómo funciona eso? Y, o sea, vale, te recuperas de los errores. ¿Pero, como, sigues aprendiendo de esos errores? ¿O qué pasa? Y yo, es, ha sido todo este proceso de aprender qué significa eso. Y creo que es un proceso muy interesante. Creo que en aquel momento, gran parte de la comunidad de Elixir estaba luchando con, como, cómo describir estos conceptos. Y creo que hay más entradas de blog por ahí y más y más cosas para que la gente absorba y llegue más rápido. Así que, pero en fin, ese es más o menos el sitio del que vengo. Creo que ese fue uno de los grandes sitios. Es como, ah, esto suena interesante. Y si José dice que mola, debería echarle un vistazo.
Jonathan: Entonces, ¿fue casi como que el momento era el adecuado para que te pasaras a ello? Fue que muchas cosas distintas se alinearon y tuvieron sentido para ti. ¿Habías estado explorando otros lenguajes? Quiero decir, mencionaste lo de los punteros. ¿Es eso una referencia a Go en concreto o era que simplemente estabas a la caza de algún lenguaje que te encajara, por así decirlo?
Brian: Creo que... Sí, quiero decir, yo... estoy súper metido en la idea de que cosas distintas son buenas para propósitos distintos. Y estoy, ya sabes, ahora estoy enormemente metido en Elixir. Siento que probablemente tengo un poco de sesgo, que, sí, Elixir puede usarse para casi cualquier cosa. Eso probablemente no sea del todo cierto. Pero creo que lo de los punteros creo que era que simplemente tenía C en mente, creo, ya sabes, hice algo de C, C++ en la universidad. Creo.
Ya sabes, sí, así que, durante varios años, trabajé con Neo4j, la base de datos de grafos. Y eso era algo que me entusiasmaba muchísimo. Y era uno de los mantenedores de las gemas de Neo4j para Ruby. Porque era esto.
No hace falta entrar demasiado en ello, pero las bases de datos de grafos te permiten hacer ciertas cosas más rápido, o simplemente, en cierto modo, de forma más fácil. Para mí era como, era una, no mucha gente usa Neo4j para esto, pero siento que era algo parecido a Ruby, en que te ayudaba a pensar en las cosas a un nivel más alto. Y así te dejaba hacer las cosas de forma más bonita. Pero a mí me gusta esa idea de, vale, las bases de datos de grafos podrían ser buenas para este propósito y luego una base de datos relacional para este y una base de datos de documentos para este. Y vale, bueno, si necesito hacer un pequeño servicio que tenga que funcionar súper rápido, quizá lo haría en Rust o Go o lo que sea. Y así debería conocer esos lenguajes y, si hago cosas de más alto nivel, están Ruby y Python, pero ahora está Elixir y Elixir es, y en realidad tiene un montón de grandes ventajas. Es algo súper difícil averiguar qué es bueno para cosas distintas porque hay tanto implicado en un lenguaje, por ejemplo, que averiguar si es bueno para algo es difícil. Y además la gente, yo incluido, creo que se involucra emocionalmente con algunos de los lenguajes que le gustan por una razón u otra. Y así es como, bueno, es difícil. Mm-hmm.
Jonathan: Y Brian, ¿usas Elixir a diario en el trabajo? ¿Y en qué consiste tu trabajo ahora mismo? Como, ¿qué es, cómo es tu día a día a estas alturas?
Brian: Sí, soy consultor en Erlang Solutions. Y estoy trabajando con un cliente de Erlang Solutions, que es una empresa llamada VicAI. No sé si los conoces. Creo que Lars Wirthven, creo, les ha ayudado algo y ha escrito sobre ellos un poco en su blog. Es una persona un poco semifamosa en el mundo de Elixir. Y sí, son una empresa que... ayuda a otras empresas, tienen, hacen una aplicación que ayuda a las empresas a procesar facturas, de forma semiautomática o totalmente automática, usando inteligencia artificial. Vale. Y sí, eso es, y tienen, ya sabes, por supuesto, modelos de machine learning, pero luego tienen una API de Elixir que les permite coordinar un montón de cosas.
Jonathan: Vale. ¿Y tratas con muchos clientes distintos durante el día o trabajas con un grupo especializado con el que vas y te asocias? ¿Cómo funciona todo eso?
Brian: Sí, normalmente estoy en una especie de equipo de funcionalidades con un product manager, y tenemos un desarrollador web y un desarrollador móvil y a veces un desarrollador de back-end, el equipo de machine learning. Y luego está bien, a veces tendremos, como, una persona de producto o de QA que se relaciona con nuestros clientes para ayudarnos a intentar conseguir lo más relevante, lo más necesario, ya sabes, qué es lo que los usuarios y los clientes necesitan de verdad. Pero es un poco como capas, como que, ya sabes, dependiendo de qué sea, tenemos un gran cliente directo, y luego tenemos algunos, como, sistemas de contabilidad, ERPs con los que trabajamos, que tienen personas que, ya sabes, introducen a sus clientes. Sinceramente, en realidad no trabajo mucho con eso, con el lado del cliente, tanto. Pero creo que tenemos muchas formas distintas de relacionarnos con los clientes, y tenemos que hacer un montón de bailes distintos para integrarnos, lo cual es un problema interesante en sí mismo.
Jonathan: Entonces, ¿la semana es bastante variada y haces muchas cosas distintas durante la semana o es bastante predecible?
Brian: Eh, sí, creo que es, ya sabes, creo que tengo bastante suerte en que yo... normalmente, quiero decir, hay, hay normalmente un proyecto en el que estoy trabajando. Pero, por ejemplo, algo que creo que puedo contar, hace poco, estaba ayudando a asegurarme de que nuestros cálculos hacia atrás fueran correctos en cómo procesamos las facturas. Porque eso puede ser algo complicado, lidiar con eso. Sobre todo cuando te llegan facturas de un montón de proveedores distintos que pueden ser, ya sabes, pueden hacer las cosas de forma distinta unos de otros. Y así, pero tengo bastante suerte en que a ellos les gustaría asegurarse de que estamos más o menos al tanto de nuestra... calidad del código y, en general, al tanto de las cosas. Y así intentamos dedicar una buena cantidad de tiempo a hacer cosas para mejorar las cosas, mejorar nuestro código o mejorar cosas. Y así, ya sabes, eso también es un poco como soy yo. Es como, normalmente intento sacar al menos algo de mi tiempo para, ya sabes, hacemos mucho de integración con Datadog para la aplicación, para asegurarnos de que podemos tener trazas de nuestras peticiones y nuestros trabajos en segundo plano y todo ese tipo de cosas. Y eso es algo que realmente me hace feliz, poder, una vez que he hecho eso, como, vale, ahora tengo las herramientas que necesito para hacer mi trabajo. Pero sí, como, además, creo que hace poco, hubo algo que me interesó, como una especie de forma de organizar el código y referenciar otros módulos. Y hay una herramienta en el mundo de Elixir, Credo, que te permite, como, imponer distintas reglas en tu estilo de código. Y así creé una nueva regla de Credo para imponer potencialmente esa regla. Y así tengo un poco de curiosidad por ver cómo va.
Jonathan: Vale, genial. Eso suena, para ser sincero, un poco por encima de mi cabeza, pero en cierto modo, estoy seguro de que alguien por ahí sabrá de qué va. Pero antes mencionaste que trabajaste un poco para una startup, creo que es correcto. Así que tenías este lado de soporte técnico, y además había una pequeña historia de startup. ¿Es algo que te interesaría en el futuro, o es algo que siempre está en el fondo de tu mente? ¿Cuál es la trayectoria para ti, crees, en los próximos cinco, diez años en términos de programación? Quiero decir, puede que no lo sepas, pero pensé que era bastante interesante simplemente preguntar a la gente, ¿dónde te ves en cinco años, cinco, diez años?
Brian: Sí, buena pregunta. Quiero decir, yo... En cuanto a startups, siempre he ido entre empresas pequeñas y medianas.
Jonathan: Gracias.
Brian: tan feliz en empresas muy grandes. Y nunca me vi realmente como consultor hasta hace poco, cuando dije, vale, esto es como... interesante poder, como, ir a distintas empresas y quizá intentar ayudarles a resolver sus problemas, pero luego quizá pasar a otra empresa. Quiero decir, si alguien de Big Gag está escuchando, no estoy descontento.
Jonathan: Estaba como, no creo que deba preguntarle a alguien en un podcast, pero sí, obviamente, suponiendo que todo va genial. Perdón, mi gato está arañando la puerta aquí.
Brian: Ah, sí, sí, yo acabo de tener un, acabamos de tener un cachorro hace como un mes y así estoy constantemente, como, teniendo que, como, ella está ladrando o está, ya sabes, quizá una o dos veces, como, orinando en la cama y es como, tengo que lidiar con esto.
Jonathan: Así que acabamos de tener, es una locura. A las 5 de la mañana cada día. A las 4.30 de la mañana se sube a la cama y empieza a, como, darme con la pata en la cara. Es mono y adorable. Pero sí, después de un rato es como, venga ya. Pero sí, volviendo a todo lo de los próximos dos años, ¿qué te encantaría poder hacer o conseguir?
Brian: Sí, buena pregunta. Creo que me interesa la idea de averiguar... Creo que una de las cosas que quizá me atraen de Elixir es que todavía es un poco nuevo. Y así me gusta, como, ¿cuáles son algunas formas de, como, abrir los nuevos caminos y encontrar los nuevos patrones? Y sobre todo en, ya sabes, no es solo como, ya sabes, estuve en el mundo de Ruby una temporada y así, al entrar en Elixir, a veces hay cosas que son como, ah, esto lo echaba de menos de Ruby, así que sería genial construir esto o hacer esto. Pero luego también hay simplemente cosas que son como, ya sabes, ah, esto es algo que no podía hacer en Ruby muy bien. Pero si simplemente hago esto, entonces, ya sabes, podríamos, podría ser aún más increíble aprovechando las fortalezas de Elixir. Así que creo que ese es el tipo de cosas que me interesan, como encontrar, encontrar los casos de uso interesantes y hablar de ellos, compartirlos, porque eso también es algo que siempre me inspira, es como cuando leo, sobre todo cuando leo sobre algo, como un caso de uso real y veo los detalles, no solo como, sí, hicimos esta cosa y más o menos, así es como lo abordamos. Es como, pero ¿dónde puedo ver algo de código o, como, cuáles son los detalles? Sí.
Jonathan: Suena como que disfrutas del lado de optimización de las cosas, como tomar algo y abrir un nuevo camino para hacer algo mejor y más eficiente. Eso es lo que oigo al menos. ¿Es justo, crees?
Brian: Sí, y creo que eficiente es bueno. Pero creo que quizá diría incluso más encontrar formas de hacer que las cosas sean disfrutables. Estoy súper metido en la idea de cómo podemos resolver problemas para no tener que lidiar con ellos nunca más. Como hacer librerías para que podamos decir, vale, ese problema, sí, ese problema ya está resuelto, pasemos a algo que, ya sabes, sea un mejor uso de nuestro tiempo, ¿no?
Jonathan: No, claro. Tiene sentido. Así que una de las cosas que he disfrutado preguntando a la gente, sobre todo en todo el, porque soy bastante, diría que soy bastante nuevo en la tecnología como industria en su conjunto, y no vengo de un trasfondo especialmente experimentado en términos de desarrollar desde una edad temprana, etcétera, etcétera. Y una de las cosas que a menudo me ha llamado la atención es, y esto lo oyes con amigos que están mucho en tecnología, que hay bastantes opiniones circulando, lo cual parece bastante, bastante cierto. Pero tenemos esta pregunta que nos gusta hacer a la gente que viene a nuestro podcast, que es, ¿cuál es la colina por la que morirías en tecnología? Y obviamente lo formulamos de una forma un poco en broma. Pero ¿hay alguna mentalidad u opinión particular que tengas y que sea como, esta es la colina que yo defendería? Y puede ser cualquier cosa. Así, un buen ejemplo sería DJ, que es uno de nuestros mantenedores, quizá lo conozcas, su colina era el papel de una conversación realmente clave, como tener una conversación bien intencionada y buena, bien estructurada, en el espacio tecnológico. Así, tener ese interrogatorio robusto, ya sabes, desafiante, que está construido sobre las bases correctas, por así decirlo. Estoy intentando recordar qué dijo otra persona. Rebecca, en Unison, era como, preferiría tener 50 personas en un equipo que fueran trabajadoras, conscientes, y quizá menos talentosas, que un genio que es una pesadilla con quien relacionarse. Así que, esperemos que esos sean buenos ejemplos. Y te puse un poco en un compromiso ahí con esa pregunta a bocajarro, porque probablemente hay bastantes perspectivas que podrías tener. Pero ¿hay alguna que sea como, no, esto es en lo que estoy dispuesto a mantenerme firme?
Brian: Mmm. Sí. Sí, porque mi primer pensamiento fue algo como, ah, como, camel case frente a snake case. Bueno, no sé si moriría en esa colina o no. Creo que muchas de esas cosas, como...
Jonathan: No podría...
Brian: Sí, sí, pero muchas de esas cosas creo que... quizá me vuelvo menos opinativo sobre ellas con el tiempo. Pero sí, me gustan estas cosas de más alto nivel de las que hablas. Siento que podría, me gusta. A ver si puedo sacar esto. Por desgracia, lo estás editando, así que mis pausas simplemente van a desaparecer, ¿no?
Jonathan: Ese es el plan, al menos.
Brian: Sí. Así que hay una herramienta llamada Remote Retro. Que he usado varias veces y recomiendo mucho. Y me enteré de ella porque está escrita en Elixir. Pero aparte de eso, creo que está simplemente bien diseñada. Y con el tiempo ha crecido hasta ser una herramienta cada vez mejor. Pero siempre empieza con una directiva principal, que creo que era, mientras la miro ahora, veo que estaba tomada de Norm Keith. Aquí hay una página de wiki, así que puedes buscarlo. Puedes ir a remote-retro.org si quieres echarle un vistazo. Pero... la, sí, aquí está la directiva principal, que creo que es simplemente, es una especie de cosa que lees al principio de una retrospectiva para poner a la gente en la mentalidad correcta, que dice: independientemente de lo que descubramos, entendemos y creemos de verdad que todo el mundo hizo el mejor trabajo posible, dado lo que sabía en ese momento, sus habilidades y capacidades, los recursos disponibles y la situación en cuestión. Eh, así que creo que eso está bien. Creo que es parecido a que... Tienes que asegurarte de que siempre... Como, y de hecho, diré una cosa más. Hubo una entrevista y puedo, puedo compartirla si quieres, como, poner el enlace en la descripción del programa o lo que sea luego.
Jonathan: Claro, me referiré a ella.
Brian: Sí, siempre recomiendo este artículo, aunque siempre es súper difícil de encontrar y no sé, probablemente ha pasado un poco al olvido ya, pero hubo este... este hombre que era administrador de la Asociación de Veteranos en Estados Unidos, el departamento gubernamental. Y en concreto, creo que trataba con su sistema sanitario. Y tenía esta entrevista en la que venía del mundo aeroespacial. Y mucho de lo que hablaba era... cómo en aeroespacial, en muchos, probablemente no es perfecto en todas partes, pero en mucho de lo que él vivió. Culpabas al proceso, no culpabas a las personas. Y si algo sale mal, dices, ya sabes, vale, ya sabes, no es, ya sabes, como, he, he borrado una tabla en producción. Pero por suerte, nadie me culpó por eso. Estaban como, vale, ¿qué hacemos ahora? Bueno, hacemos, hacemos que cuando entras en producción en la consola, aparezca, el prompt sea rojo. Y así queda claro que estás en producción, ¿no? Porque cometí ese error, porque pensé que era desarrollo cuando estaba. Sí, exacto. Así que tuve la suerte de tener una oficina en la que culpábamos al proceso y no a la persona. Y eso fue realmente genial. Y así habló de eso en el contexto de, como, la medicina, que era como, vale, a veces quizá una enfermera pueda dar el medicamento equivocado a un paciente. Es como, bueno, a veces las etiquetas son confusas, y o hay esta cosa que es como, es difícil, o simplemente es lo que sea, no es lo ideal. Es como, vale, vamos a arreglar eso. Vamos, hagámoslo. Así que si queremos, si de verdad nos importa el paciente, hagamos que sea un proceso en el que sea más difícil equivocarse. Así que eso es algo que creo que es muy importante para mí.
Jonathan: Eso es genial. Definitivamente voy a poner estas notas del programa. ¿Eso sale de lo ágil, es una especie de cosa construida sobre la metodología ágil, por así decirlo? ¿O es un poco otra cosa? ¿Qué opinarías sobre eso?
Brian: Ya sabes, esa es una buena pregunta, creo. Me dio la impresión de que era parte de una tradición bastante larga en algunos círculos de ingeniería aeroespacial. Quiero decir, aeroespacial, creo que quizá tiene que ver simplemente con el hecho de que, como, si tienes, si estás haciendo aviones o si estás haciendo cohetes. Estás en el negocio de, esto tiene que funcionar. Y cuando ponemos a un humano ahí, ya sea un astronauta o un pasajero, tenemos que darle la mejor oportunidad de funcionar. Y la mejor manera de hacerlo es dejar nuestros egos a un lado y decir, ya sabes, ¿qué?
Jonathan: tú
Brian: qué es lo que va a hacer que esto funcione lo máximo posible cada vez si simplemente seguimos el proceso. Creo que eso es parte de ello, sí.
Jonathan: Porque cuando estaba buscando remote retro, se parecía mucho a, como, terminología ágil. Así que me pregunto si quizá se cambió un poco desde ahí en algún punto. Pero eso es genial. No había oído eso antes. El que sí he oído es sobre listas de verificación, sobre todo en medicina y aeroespacial. Así que es como que un piloto repasa una lista de verificación. No se desvía de su lista de verificación. Y un médico hace lo mismo. Eso es genial. Brian, vamos a empezar a aterrizar. Tengo una pregunta más para ti esta noche. Y es realmente cuál es tu recomendación para la comunidad de Exercism en la próxima semana. Si pudieras dar un consejo, y puede ser sobre cualquier cosa. Puede ser como ve a beber kombucha de, no sé, tu delicatessen local o ve a correr y nadar en el océano Ártico o lo que sea. Si hubiera una cosa que recomendaras a la comunidad de Exercism para ir a probarla, ¿cuál sería esta semana?
Brian: ¡Salud! Mmm. Eh, diría... que, eh, quiero decir, dentro de, dentro de tus, eh, ya sabes, posibilidades, porque quizá esto es, ya sabes, no, siempre es difícil dar consejos a todo el mundo. Pero creo que una cosa que ha sido importante para mí es, creo que una vez fui a urgencias porque tenía un dolor de cabeza repentino. Y había quizá una preocupación de que fuera como un dolor de cabeza fulgurante, que puede ser algo grave. Así que fui y el médico me miró y todo estaba bien. Pero ya sabes, el médico simplemente hacía preguntas generales y me decía como, vale, ¿cuánto ejercicio haces? Y, ya sabes, cuál es tu actividad y lo que sea. Y yo, ya sabes, siendo estadounidense, estaba como, bueno, yo, ya sabes, camino bastante, hago quizá 8000 pasos a la semana, al mes, o de media al día. Y él dice, ya sabes, deberías, deberías salir tres veces por semana, durante 45 minutos, como para sudar de verdad. Y, ya sabes, no lo hice de inmediato. Pero, ya sabes, fue después de quizá cinco o seis meses, sí entré en un patrón, un hábito de correr, normalmente tres veces por semana, a veces eran dos veces por semana, pero ya sabes, y creo que eso ha sido algo que ha sido como un gran cambio en mi vida. Creo que me ha ayudado mucho. Así que creo, sé que es algo súper difícil de hacer y es súper difícil para mí ponerme a ello. Y creo que parte de cómo lo hice es que dije, vale, voy a salir y si acabo caminando el 75% del tiempo, pues vale, así será. Voy a ir poco a poco.
Jonathan: Genial. Creo que fue interesante que mencionaras eso porque nosotros...
Brian: Creo que fue interesante que mencionaras eso porque nosotros...
Jonathan: No, eso es genial porque una de las cosas que intentamos pensar con las cohortes era qué va a facilitar que la gente crezca y aprenda y, en cierto modo, avance y gane impulso, supongo, en su trote de programación, por así decirlo. Y una de ellas era simplemente salir, aunque fuera 10 minutos al día, simplemente ponerte en la tesitura de intentarlo. Y aunque no llegues realmente a ningún sitio, aunque solo leas las instrucciones y ya está por hoy, siempre que aparezcas de alguna forma, marca una gran diferencia. Pero creo que es una gran recomendación, definitivamente un recordatorio para mí de ir a poner en marcha mi deporte un poco, solo porque a veces es tan sedentario estar sentado en interiores. Así que si alguien que nos escucha está por ahí, sigue el consejo de Brian y sal a correr. Pero quiero decir, va a empezar a hacer un poco más de frío en Estocolmo en las próximas semanas. ¿Sigues corriendo en pleno invierno o es una especie de carrera en interiores?
Brian: Sí, lo hago. Y quiero decir, también diría, ya sabes, el mejor ejercicio que puedes hacer, si vas a salir ahí 30, 40 minutos al día tres veces por semana o algo así, es como, lo que sea, lo que sea que más disfrutes, ya sabes, porque si no disfrutas corriendo, entonces probablemente no vas a poder mantenerlo. Así que, ya sabes, diré eso primero, pero sí, el invierno, ya sabes, tengo un gorro, que es como, también está oscuro en Estocolmo. Así que mi mujer me compró un gorro que tiene fibras incorporadas que son retrorreflectantes. Vale, así que eso está bien. Así que puede mantenerme seguro. Y luego tengo una mascarilla y cosas para las orejas que me puedo poner. Sí, y luego, sí, así que sí tengo que abrigarme mucho, pero también puede estar bien porque mantiene, cuando hace frío, ya sabes, puedo, puedo bajar el ritmo y aún así puedo. Sí, exacto. Exacto.
Jonathan: Ah, eso es genial. Pero Brian, solo quería darte un enorme agradecimiento por tu tiempo esta noche y probablemente ha sido un día largo, con los niños y el trabajo y el cachorro nuevo y todo ese tipo de cosas, así que solo quería darte las gracias por tu tiempo y por compartirlo con nosotros y para cualquiera que nos escuche por ahí, pondremos las notas del programa en la descripción de abajo para que puedas echar un vistazo a esas cosas. Si tienes alguna oportunidad y estás escuchando esto, ve a echar un vistazo al track de Elixir y estoy seguro de que Brian, no sé si haces algo de mentoría en el track de Elixir, pero quizá si alguna vez estás en el espacio de mentoría puedas ver a gente nueva apareciendo y probando cosas. He oído muchas cosas buenas sobre Elixir, así que creo que definitivamente es uno a seguir en el futuro y sí, que tengas una noche maravillosa, Brian. Espera un poco cuando pare la grabación, pero sí, ha sido genial tenerte con nosotros y gracias por compartir un poco de perspectiva sobre la vida de Brian Underwood y sí, así que gracias a todos por escuchar y que tengáis una noche maravillosa. Hasta pronto.
Escucha, aprende e inspírate con los miembros de nuestra comunidad.