close navigation menu
27 de may. de 2021

Tecnología

Cómo empezamos a modularizar la aplicación de Fintual

Mientras más crece el código de una aplicación, más nos cuesta encontrar el archivo que queremos y es más difícil debuggear. Llega un punto en el que el código ha crecido tanto y maneja tantas funcionalidades que los equipos ya no pueden conocerlo entero y mantenerlo, en especial los desarrolladores nuevos. La curva de aprendizaje se empieza a complicar.

Evolución de la curva de aprendizaje del código de Fintual


El primer commit de Fintual fue hace 5 años. Hoy vamos en más de 33.500 commits y contamos con más de 435.000 líneas de código. Estamos en un punto de inflexión entre la posibilidad - o no - de tener programadores que conozcan prácticamente todo el código de Fintual. Y como estamos creciendo mucho en desarrolladores y en código, tuvimos que tomar una decisión de cómo manejarlo.

Crecimiento del código de Fintual construído con la herramienta git-of-theseus

En Fintual, toda nuestra aplicación corre en un monolito sobre Ruby on Rails (RoR). Este framework web, basado en el clásico Model View Controller (MVC), tiene la particularidad de que asume configuraciones y comportamientos estándar y potencia la reutilización de código. En palabras simples, hace muchas cosas como “magia” de la que no te tienes que preocupar.

Si conoces cómo funciona RoR, la magia es de gran ayuda. Permite desarrollar más rápido y con menos código. Esto, sumado a una estructura ordenada MVC, facilita un orden en los archivos y clases, en donde no es difícil encontrar dónde se hace cada acción, modificar y extender funcionalidades.

Pero cuando empiezas a crecer y el código se multiplica se complica la situación. Empezamos a generar namespaces para ordenar el código y a separar las responsabilidades de clases en otros tipos de componentes más allá de un MVC. En el monolito tenemos 19 tipos de componentes además de models-views-controllers.

Cómo manejar el crecimiento en código

La primera opción es separar al equipo en especializaciones de desarrollo y que cada equipo maneje su código. Es decir, subdividir en los clásicos teams de backend, frontend web y frontend mobile. Pero en Fintual somos todos Full Stack y no hay mucho interés en especializarse así por ahora. En realidad es bacán poder desarrollar una funcionalidad de manera completa. Da más sentido de pertenencia y el impacto percibido es mayor.

Otra opción es dividir el monolito en distintos microservicios, es decir, distintas aplicaciones modulares, donde cada una se ocupa de una tarea y estas se comunican entre sí para construir un producto final. Pero en Fintual no somos muy fanáticos de los microservicios y un approach monolítico nos ha funcionado mejor.

Andrés, CTO de Fintual, defendiendo a los monolitos

¿Qué hicimos entonces? Empezamos a modularizar la aplicación en distintos engines y gemas de RoR.

Engines y gems

Un engine es una especie de mini-aplicación web con prácticamente toda la API y estructura que ofrece Ruby on Rails. Es decir, puedes manejar controladores, modelos, vistas, rutas y migraciones y bases de datos tal como lo harías con una aplicación RoR normal.

Pero ojo. No es un microservicio, ya que lo usamos para extender nuestra main-app. Esto significa que el contenido del engine corre en el mismo servidor, dentro del mismo proceso y contexto y usa la misma base de datos que la main-app, añadiendo sus migraciones y clases. El ejemplo más conocido es el engine de autenticación Devise.

Por otro lado están las gemas. A diferencia de un engine, no necesitan el motor de Rails, sino que son plain Ruby. En otras palabras, no cuentan con un modelo MVC ni manejan bases de datos. Es útil cuando, por ejemplo, queremos construir un Toolkit de utilidades o hacer un wrapper de una conexión a un servicio externo.

La gracia de modularizar la aplicación en engines y gems está en que podemos aislar funcionalidades o comportamientos en “mini-proyectos”.

Por ejemplo, cuando alguien quiera hacer un cambio en la funcionalidad de Fintual del manejo de los fondos mutuos, basta con que vaya al engine de Accounting. Será mucho más fácil encontrar los archivos que debe revisar y modificar. Y más importante, cuando entra un dev nuevo puede comenzar por algunas funcionalidades - engines - en vez de volverse loco mirando una main-app gigante.

Cómo empezar con Engines y Gems

Ahora que conocemos estas alternativas, ¿cómo determinamos si conviene extraer un feature de la main-app a un engine o gem? Lo que hacemos en Fintual es evaluar si vale la pena pensar cada nuevo feature como una extensión de la main-app. En otras palabras, hay que preguntarse si es posible desenchufar esta funcionalidad de la main-app sin romperla.

Un ejemplo es nuestro feature de referidos, parecido al programa de afiliados de Shopify, Amazon y Uber. El programa de referidos permite a cada usuario recomendar Fintual a sus conocidos, y a cambio ganan un 1% del saldo promedio que mantienen sus referidos en su primer año en Fintual. Referidos es una funcionalidad completa que se podría encender y apagar sin afectar el core.

Y bueno, ¿cómo determinamos si hacerlo en una gema o un engine? Nos preguntamos si el feature que quiero desarrollar debe almacenar datos y tiene un comportamiento web. Si la respuesta es sí, entonces conviene desarrollar un engine. Si la respuesta es no y nuestra feature es lógica pura, basta con desarrollar una gema.

Continuando el ejemplo, el feature de referidos sería un engine, ya que tiene sus propios modelos de datos, controladores y vistas.

A medida que creamos nuevos engines nos dimos cuenta que podíamos abstraer gran parte del proceso, por lo que decidimos crear nuestro propio generador de engines. Si eres un desarrollador de Rails, te invitamos a usar y contribuir al desarrollo de esta herramienta mediante el repositorio que liberamos para el público general.

Un tema importante a tener en cuenta es el manejo de dependencias. En una gema es más simple, porque no suele depender de clases u objetos específicos de nuestra main-app. El lenguaje que habla es el de Ruby, recibiendo ciertos objetos estándar (un string o hash por ejemplo) y ejecutando cierta acción.

Pero un engine, dado que maneja controladores, rutas, vistas y modelos tal como lo hace nuestra main-app, puede que requiera interactuar con objetos de la main-app directamente. Por ejemplo, el engine Devise utiliza el modelo User de nuestra main-app para el manejo de los usuarios y lo extiende. ¿Cómo manejamos esta dependencia de manera correcta?

Una forma es definir las dependencias desde la main-app en el módulo principal del engine. Por ejemplo, el engine de referidos depende de los modelos de User y UserDeposit de la main-app y se construye así:

require "referrals/engine"
 
module Referrals
  extend self
 
  MODULE_DEPENDENCIES = %i{
    user_deposit_model
    user_model
  }
 
  mattr_accessor *MODULE_DEPENDENCIES
 
  def configure
    yield self
    require "referrals"
  end
 
  class << self
    MODULE_DEPENDENCIES.each do |symbol|
      define_method(symbol) do
        class_variable_get(:"@@#{symbol}").constantize
      end
    end
  end
end

De esta forma, cuando en la main-app inicializamos el engine de referidos, debemos setear estas configuraciones. Acá le decimos qué modelo de la main-app debe usar el engine.

Referrals.configure do |config|
  config.user_deposit_model = "UserDeposit"
  config.user_model = "User"
end

Luego podemos usar esta configuración dentro del engine. Por ejemplo, acá queremos obtener quién refirió al usuario actual, a partir de una búsqueda en el modelo User. Pero como no conocemos el modelo User directamente, usamos el que nos proporciona la configuración Referrals.user_model.

def referrer_from_code(referrer_code)
  Referrals.user_model.find_by(referrer_code: referrer_code)
end

Además, como un usuario puede referir, queremos que el modelo User tenga una relación de has_many con sus referidos. Podríamos ir al modelo User de la main-app y agregar la relación directamente, pero si desconectamos el engine, se rompería.

Para manejar esta dependencia correctamente, lo que hacemos es añadir dinámicamente funcionalidades a la clase User.

Referrals.user_model.class_eval do
  has_many :referred_users
end

Por último, aislamos la ejecución de código condicionado a la disponibilidad de un engine, para no romper nuestra main-app en caso de que una extensión no esté cargada. Una buena forma de hacerlo es crear un Util que verifique la presencia de un engine.

class EnginesUtil
  def self.with_available_engine(engine_name, &block)
    if available_engine?(engine_name)
      block.call
    end
  end
 
  def self.available_engine?(engine_name)
    Object.const_defined?("::#{engine_name.to_s.camelize}")
  end
end

Así, si por ejemplo en la vista del header, que está en la main-app, queremos agregar un botón a Referidos, tenemos que chequear que el engine esté presente y lo hacemos así:

if EnginesUtil.available_engine?(:referrals)
  link_to "Referidos", app_referrals_path
end

Con este approach hemos logrado hasta ahora extraer funcionalidades de la main-app a 23 engines y 3 gems. Si bien, aún nos queda bastante por modularizar, ya se nota mayor orden y desacoplamiento del código. Hoy es más fácil encontrar el archivo que tenemos que modificar cuando queremos resolver un bug o entender el contexto de funcionamiento cuando queremos agregar un nuevo feature.

Incluso para ordenarnos en lo que nos queda por modularizar, también recurrimos a un engine. El deprecated_main, al que movimos todas los componentes pendientes de extraer.

Pero lo más bacán es que cuando empezamos los proyectos recientes una de las principales discusiones es si se debe desarrollar el feature solicitado dentro de un engine o no. Así que no solo estamos ordenando el código pasado, sino también el que desarrollamos en el presente.  Ya existe una mentalidad de modularización en los desarrolladores de Fintual.


Si te gustó este artículo y tienes un comentario o algo para complementarlo, escríbenos a cartas@fintual.com. Todas las semanas publicamos las cartas destacadas de nuestros lectores.

LO ÚLTIMO DE ECONOMÍA

VER MÁS
¿El dinero compra la felicidad? En busca de la respuesta definitiva (parte I)

Conocimiento Financiero

¿El dinero compra la felicidad? En busca de la respuesta definitiva (parte I)

por Enrique Ortiz
📍 Mercados en Vivo - Banco Central sin espacio para recortar

Mercados

📍 Mercados en Vivo - Banco Central sin espacio para recortar

por Priscila Robledo
Algunos mitos y verdades sobre bonos en Chile: lo que nos contaron nuestros clientes

Conocimiento Financiero

Algunos mitos y verdades sobre bonos en Chile: lo que nos contaron nuestros clientes

por Stella Melaragno
Por qué Fintual auspicia la feria internacional arte contemporaneo: la relación entre inversiones y arte

Conocimiento Financiero

Por qué Fintual auspicia la feria internacional arte contemporaneo: la relación entre inversiones y arte

por Francisca Feuerhake
📍 Mercados en vivo - Banxico más cauteloso

Mercados

📍 Mercados en vivo - Banxico más cauteloso

por Priscila Robledo
Fed en pausa - Mercados al 20 de febrero

Mercados

Fed en pausa - Mercados al 20 de febrero

por Priscila Robledo
Fed en pausa - Mercados al 20 de febrero

Mercados

Fed en pausa - Mercados al 20 de febrero

por Priscila Robledo
El sube y baja del petróleo - Mercados al 13 de marzo

Mercados

El sube y baja del petróleo - Mercados al 13 de marzo

por Priscila Robledo
El sube y baja del petróleo - Mercados al 13 de marzo

Mercados

El sube y baja del petróleo - Mercados al 13 de marzo

por Priscila Robledo
El efecto de los conflictos geopolíticos en las inversiones

Conocimiento Financiero

El efecto de los conflictos geopolíticos en las inversiones

por Priscila Robledo
El efecto de los conflictos geopolíticos en las inversiones

Conocimiento Financiero

El efecto de los conflictos geopolíticos en las inversiones

por Priscila Robledo
Régimen de inversión unisex: implicancias para las tasas de reemplazo

Conocimiento Financiero

Régimen de inversión unisex: implicancias para las tasas de reemplazo

por Fernando Suárez
Los efectos del conflicto en Irán - Mercados al 6 de marzo

Mercados

Los efectos del conflicto en Irán - Mercados al 6 de marzo

por Priscila Robledo
Los efectos del conflicto en Irán - Mercados al 6 de marzo

Mercados

Los efectos del conflicto en Irán - Mercados al 6 de marzo

por Priscila Robledo
Rendimientos “garantizados”: ¿a cuánto y por qué tan caro?

Conocimiento Financiero

Rendimientos “garantizados”: ¿a cuánto y por qué tan caro?

por Ceci Sánchez

LO ÚLTIMO DE TECNOLOGÍA

VER MÁS
Microlandia: tu ciudad virtual que puede ser visitada por Federico Sánchez y Marcelo Comparini

Tecnología

Microlandia: tu ciudad virtual que puede ser visitada por Federico Sánchez y Marcelo Comparini

por Pedro Torrealba Barra
¿En qué momento WhatsApp se volvió tan complicado? por qué todo el mundo quiere tener un agente

Tecnología

¿En qué momento WhatsApp se volvió tan complicado? por qué todo el mundo quiere tener un agente

por Juan Pablo de la Cruz
2XKO, el juego de peleas de League of Legends y su silencioso estreno

Tecnología

2XKO, el juego de peleas de League of Legends y su silencioso estreno

por Tomás Morales
¿En qué momento Whatsapp se volvió tan complicado? por qué todo el mundo quiere tener un agente

Tecnología

¿En qué momento Whatsapp se volvió tan complicado? por qué todo el mundo quiere tener un agente

por Juan Pablo de la Cruz
2XKO, el juego de peleas de League of Legends y su silencioso estreno

Tecnología

2XKO, el juego de peleas de League of Legends y su silencioso estreno

por Tomás Morales
Punto de inflexión en la IA: ¿sigue sirviendo entender cómo resolver un problema?

Tecnología

Punto de inflexión en la IA: ¿sigue sirviendo entender cómo resolver un problema?

por Felipe Cortés
Punto de inflexión en la IA: ¿sirve que entendamos cómo resolver un problema?

Tecnología Inteligencia Artificial

Punto de inflexión en la IA: ¿sirve que entendamos cómo resolver un problema?

por Felipe Cortés
SaaSpocalypse: the software is dead, long live the software!

Tecnología Mercados

SaaSpocalypse: the software is dead, long live the software!

por Omar Larré
SaaSpocalypse: the software is dead, long live the software!

Tecnología Mercados

SaaSpocalypse: the software is dead, long live the software!

por Omar Larré
Moltbook: la red social de IAs, por IAs y para IAs

Tecnología Inteligencia Artificial

Moltbook: la red social de IAs, por IAs y para IAs

por Pedro Torrealba Barra
Moltbook: la red social de IAs, por IAs y para IAs

Tecnología

Moltbook: la red social de IAs, por IAs y para IAs

por Pedro Torrealba Barra
Lo que se viene el próximo año en el mundo de los videojuegos

Tecnología

Lo que se viene el próximo año en el mundo de los videojuegos

por Tomás Morales
Lo que se viene el próximo año en el mundo de los videojuegos

Tecnología

Lo que se viene el próximo año en el mundo de los videojuegos

por Tomás Morales
Haz tu propio Wrapped de Spotify 2025 artesanalmente

Tecnología

Haz tu propio Wrapped de Spotify 2025 artesanalmente

por Ricardo Martínez-Gamboa
Haz tu propio Wrapped de Spotify 2025 artesanalmente

Tecnología

Haz tu propio Wrapped de Spotify 2025 artesanalmente

por Ricardo Martínez-Gamboa

LO ÚLTIMO DE CIENCIA

VER MÁS
Excavando los aciertos y errores de la nueva serie de Netflix The Dinosaurs

Ciencia

Excavando los aciertos y errores de la nueva serie de Netflix The Dinosaurs

por Gabriel Díaz Yantén
Cómo ganar 1 millón de dólares resolviendo un problema matemático

Ciencia

Cómo ganar 1 millón de dólares resolviendo un problema matemático

por Rolando Rogers
Cómo ganar 1 millón de dólares resolviendo un problema matemático

Ciencia

Cómo ganar 1 millón de dólares resolviendo un problema matemático

por Rolando Rogers
El cuarto chino, o cómo graduarse del colegio sin saber leer ni escribir

Ciencia

El cuarto chino, o cómo graduarse del colegio sin saber leer ni escribir

por Geraldine Monsalve, Enrique Ortiz
El cuarto chino, o cómo graduarse del colegio sin saber leer ni escribir

Ciencia

El cuarto chino, o cómo graduarse del colegio sin saber leer ni escribir

por Geraldine Monsalve, Enrique Ortiz
El paper de Turing que ilustra el problema de los mocks

Ciencia

El paper de Turing que ilustra el problema de los mocks

por Felipe Cortés
El paper de Turing que ilustra el problema de los mocks

Ciencia Tecnología

El paper de Turing que ilustra el problema de los mocks

por Felipe Cortés
Los efectos de las polémicas de Trump con las universidades: el caso de las resonancias magnéticas

Ciencia

Los efectos de las polémicas de Trump con las universidades: el caso de las resonancias magnéticas

por Felipe Cortés
Ruta más corta en grafos: algoritmo supera a Dijkstra tras 65 años (con una pizca de sal)

Ciencia Tecnología

Ruta más corta en grafos: algoritmo supera a Dijkstra tras 65 años (con una pizca de sal)

por Fernando Suárez
Ruta más corta en grafos: algoritmo supera a Dijkstra tras 65 años (con una pizca de sal)

Ciencia Tecnología

Ruta más corta en grafos: algoritmo supera a Dijkstra tras 65 años (con una pizca de sal)

por Fernando Suárez
Los efectos de las polémicas de Trump con las universidades: el caso de las resonancias magnéticas

Ciencia

Los efectos de las polémicas de Trump con las universidades: el caso de las resonancias magnéticas

por Felipe Cortés
¿Se viene la revisión por pares abierta? La última revolución de la publicación científica

Ciencia

¿Se viene la revisión por pares abierta? La última revolución de la publicación científica

por Timothy Marzullo
Solución a la "aspiradora de peones"

Ciencia

Solución a la "aspiradora de peones"

por Nebil Kawas
¿Y si nadie gana? El curioso caso de la probabilidad de que nadie gane el concurso de transferencias de Fintual

Ciencia

¿Y si nadie gana? El curioso caso de la probabilidad de que nadie gane el concurso de transferencias de Fintual

por Omar Larré
Desafío ajedrecístico: aspiradora de peones

Ciencia

Desafío ajedrecístico: aspiradora de peones

por Nebil Kawas

LO ÚLTIMO DE CULTURA

VER MÁS
Artista de la semana | Étienne-Louis Boullée

Cultura

Artista de la semana | Étienne-Louis Boullée

por Pato Sullivan
Artista de la semana | Étienne-Louis Boullée

Cultura

Artista de la semana | Étienne-Louis Boullée

por Pato Sullivan
Un récord en Pac-Man y la economía de la grieta: una conversación con Molly Gochman

Libros

Un récord en Pac-Man y la economía de la grieta: una conversación con Molly Gochman

por Eduardo Navarrete Pedraza
¿A quién le importan los Oscar?

Cine y Series

¿A quién le importan los Oscar?

por Iñaki Goldaracena
Artista de la semana | Domenico Gnoli

Cultura

Artista de la semana | Domenico Gnoli

por Pato Sullivan
¿A quién le importan los Oscar?

Cine y Series

¿A quién le importan los Oscar?

por Iñaki Goldaracena
Artista de la semana | Domenico Gnoli

Cultura

Artista de la semana | Domenico Gnoli

por Pato Sullivan
Retirement Plan: el corto más emotivo nominado al Oscar es sobre los sueños post-jubilación

Cine y Series

Retirement Plan: el corto más emotivo nominado al Oscar es sobre los sueños post-jubilación

por Iñaki Goldaracena
Artista de la semana | Agostinho Batista de Freitas

Cultura

Artista de la semana | Agostinho Batista de Freitas

por Pato Sullivan
Retirement Plan: el corto más emotivo nominado al Oscar es sobre los sueños post-jubilación

Cine y Series

Retirement Plan: el corto más emotivo nominado al Oscar es sobre los sueños post-jubilación

por Iñaki Goldaracena
Artista de la semana | Agostinho Batista de Freitas

Cultura

Artista de la semana | Agostinho Batista de Freitas

por Pato Sullivan
Backrooms: cómo un youtuber de 16 años se convirtió en director de una película de A24

Cine y Series

Backrooms: cómo un youtuber de 16 años se convirtió en director de una película de A24

por Iñaki Goldaracena
Artista de la semana | Winifred Knights

Cultura

Artista de la semana | Winifred Knights

por Pato Sullivan
Artista de la semana | Winifred Knights

Cultura

Artista de la semana | Winifred Knights

por Pato Sullivan
El documental de America’s Next Top Model nos ayuda a ver qué tipo de sociedad éramos hace veinte años

Cine y Series

El documental de America’s Next Top Model nos ayuda a ver qué tipo de sociedad éramos hace veinte años

por Iñaki Goldaracena

LO ÚLTIMO DE OPINIÓN

VER MÁS
¿Cuánto gana una jugadora de fútbol profesional?

Opinion

¿Cuánto gana una jugadora de fútbol profesional?

por Fernando Malatesta
Chuck Norris y el bus Quillota - Valparaíso

Opinion

Chuck Norris y el bus Quillota - Valparaíso

por Sebastián Ovalle
Por una educación digital

Opinion

Por una educación digital

por Jorge Volpi
Por una educación digital

Opinion

Por una educación digital

por Jorge Volpi
La Odisea: algunas expectativas previas al lanzamiento de la película de Nolan

Opinion

La Odisea: algunas expectativas previas al lanzamiento de la película de Nolan

por Ileana Diotima Elordi
¿Por qué ganó un chileno "el premio Nobel" de arquitectura?

Opinion

¿Por qué ganó un chileno "el premio Nobel" de arquitectura?

por María José Yáñez
La Odisea: algunas expectativas previas al lanzamiento de la película de Nolan

Opinion

La Odisea: algunas expectativas previas al lanzamiento de la película de Nolan

por Ileana Diotima Elordi
El secuestro de un signo de puntuación a manos de Chat GPT

Opinion

El secuestro de un signo de puntuación a manos de Chat GPT

por Eduardo Navarrete Pedraza
El amor es ciego, pero el banco no

Opinion

El amor es ciego, pero el banco no

por Ceci Sánchez
Marty Supreme: cómo una odisea ridícula por jugar ping-pong logra tomarse en serio

Opinion

Marty Supreme: cómo una odisea ridícula por jugar ping-pong logra tomarse en serio

por Iñaki Goldaracena
Por qué las puertas nos eligen: una conversación con Ethel Krauze

Opinion

Por qué las puertas nos eligen: una conversación con Ethel Krauze

por Eduardo Navarrete Pedraza
Copa Davis: el tenis convertido en folclore

Opinion

Copa Davis: el tenis convertido en folclore

por Tomás Dintrans
Reseñamos los anuncios del Superbowl 2026: ¿cuánto valen 30 segundos de nuestra atención?

Opinion

Reseñamos los anuncios del Superbowl 2026: ¿cuánto valen 30 segundos de nuestra atención?

por Ceci Sánchez
Apuesto $100 pesos a que el Gatorade del Superbowl es verde

Opinion

Apuesto $100 pesos a que el Gatorade del Superbowl es verde

por Ceci Sánchez
Yo solo quiero pegar en X, para ganar mi primer millón

Opinion

Yo solo quiero pegar en X, para ganar mi primer millón

por Francisca Feuerhake
¿Por qué México no puede pasar al quinto partido? Reflexiones de una mercadóloga

Opinion

¿Por qué México no puede pasar al quinto partido? Reflexiones de una mercadóloga

por Ceci Sánchez
El Australian Open por dentro: ¿por qué dicen que es el mejor de los Grand Slams?

Opinion

El Australian Open por dentro: ¿por qué dicen que es el mejor de los Grand Slams?

por Ricardo Urzúa
Miguel Treviño y el milagro del inodoro: por qué la paz social empieza en un baño público

Opinion

Miguel Treviño y el milagro del inodoro: por qué la paz social empieza en un baño público

por Eduardo Navarrete Pedraza
De la aerolínea LATAM a negociar en la Casa Blanca: la estrategia sistémica

Opinion

De la aerolínea LATAM a negociar en la Casa Blanca: la estrategia sistémica

por Carlos Cruz Infante
Manual de usuario de la depresión post parto

Opinion

Manual de usuario de la depresión post parto

por Priscila Robledo
Manual de usuario de la depresión post parto

Opinion

Manual de usuario de la depresión post parto

por Priscila Robledo
Resultados de la encuesta de actividades manuales y creativas

Opinion

Resultados de la encuesta de actividades manuales y creativas

por Francisca Feuerhake
Resultados de la encuesta de actividades manuales y creativas

Opinion

Resultados de la encuesta de actividades manuales y creativas

por Francisca Feuerhake
Bases del concurso: Cuenta regresiva APV

Opinion

Bases del concurso: Cuenta regresiva APV

por Matías Guerrero Irarrázaval
Podcast con Coca Guazzini y Patricia Rivadeneira: hablamos de “La revolución de las viejas”, jubilación, el oficio de actuar y tabúes de plata

Opinion

Podcast con Coca Guazzini y Patricia Rivadeneira: hablamos de “La revolución de las viejas”, jubilación, el oficio de actuar y tabúes de plata

por Francisca Feuerhake
GBM es fan de Fintual

Opinion

GBM es fan de Fintual

por Pedro Pineda
Mi celular me dijo que dejara de mirarlo: el renacimiento de los hobbies

Opinion

Mi celular me dijo que dejara de mirarlo: el renacimiento de los hobbies

por Francisca Feuerhake
Mi celular me dijo que dejara de mirarlo: el renacimiento de los hobbies

Opinion

Mi celular me dijo que dejara de mirarlo: el renacimiento de los hobbies

por Francisca Feuerhake
Invitación a ilustrar para Fintualist

Opinion

Invitación a ilustrar para Fintualist

por Francisca Feuerhake
Los mejores predictores de las elecciones

Opinion

Los mejores predictores de las elecciones

por Carlos Cruz Infante
Rama Duwaji, la mujer doble

Opinion

Rama Duwaji, la mujer doble

por Francisca Feuerhake
Zohran Mamdani: la joven promesa de los Demócratas que será el alcalde más importante del mundo

Opinion

Zohran Mamdani: la joven promesa de los Demócratas que será el alcalde más importante del mundo

por Priscila Robledo, Pato Sullivan
Rama Duwaji, la mujer doble de Mamdani

Opinion

Rama Duwaji, la mujer doble de Mamdani

por Francisca Feuerhake
Zohran Mamdani: la joven promesa de los Demócratas que será el alcalde más importante del mundo

Opinion

Zohran Mamdani: la joven promesa de los Demócratas que será el alcalde más importante del mundo

por Priscila Robledo, Pato Sullivan
Contra el storytelling: el oficio de narrar según Alessandro Baricco

Opinion

Contra el storytelling: el oficio de narrar según Alessandro Baricco

por Franco Pesce
Torneo de Superpronosticadores: te apuesto a que gana…

Opinion

Torneo de Superpronosticadores: te apuesto a que gana…

por Carlos Cruz Infante
Contra el storytelling: el oficio de narrar según Alessandro Baricco

Opinion

Contra el storytelling: el oficio de narrar según Alessandro Baricco

por Franco Pesce
Torneo de Superpronosticadores: otro debate, la CEP y Kaiser. El tablero a tres semanas de las elecciones

Opinion

Torneo de Superpronosticadores: otro debate, la CEP y Kaiser. El tablero a tres semanas de las elecciones

por Carlos Cruz Infante
Torneo de Superpronosticadores: pronósticos post franja

Opinion

Torneo de Superpronosticadores: pronósticos post franja

por Carlos Cruz Infante
Papitas: mis recomendaciones de octubre

Opinion

Papitas: mis recomendaciones de octubre

por Francisca Feuerhake
Dorothy Pérez, Oz y  el camino de ladrillos a la contraloría

Opinion

Dorothy Pérez, Oz y el camino de ladrillos a la contraloría

por Soledad Pino
Torneo de Superpronosticadores: a casi un mes de la elección

Opinion

Torneo de Superpronosticadores: a casi un mes de la elección

por Carlos Cruz Infante
Estrés post Tiny Desk

Opinion

Estrés post Tiny Desk

por Álvaro Díaz, Florencia Edwards
Estrés post Tiny Desk

Opinion

Estrés post Tiny Desk

por Álvaro Díaz
Segunda tanda del Torneo de Superpronosticadores: a 40 días de la elección

Opinion

Segunda tanda del Torneo de Superpronosticadores: a 40 días de la elección

por Carlos Cruz Infante
Un unicornio fundado en 1888: una mañana en el Financial Times

Opinion

Un unicornio fundado en 1888: una mañana en el Financial Times

por Juan Pablo Silva
Fintualist en Tele13 Radio: "El Fin del Dinero"

Opinion

Fintualist en Tele13 Radio: "El Fin del Dinero"

por Equipo Fintualist
Un unicornio fundado en 1888: una mañana en el Financial Times

Opinion

Un unicornio fundado en 1888: una mañana en el Financial Times

por Juan Pablo Silva
Regulando en Chile: lo que sí deberíamos copiar de Europa

Opinion

Regulando en Chile: lo que sí deberíamos copiar de Europa

por Benjamín Maluenda
El US Open se llena de polémica: pataletas históricas, nuevos dobles mixtos y mucho Honey Deuce

Opinion

El US Open se llena de polémica: pataletas históricas, nuevos dobles mixtos y mucho Honey Deuce

por Sebastián Varela
El US Open se llena de polémica: pataletas históricas, nuevos dobles mixtos y mucho Honey Deuce

Opinion

El US Open se llena de polémica: pataletas históricas, nuevos dobles mixtos y mucho Honey Deuce

por Sebastián Varela
Usted no lo haga. Consejos para una entrevista laboral

Opinion

Usted no lo haga. Consejos para una entrevista laboral

por Sara Vásquez
Cuenta RUT y Caja Vecina: lo que pueden aprender las empresas

Opinion

Cuenta RUT y Caja Vecina: lo que pueden aprender las empresas

por Carlos Cruz Infante
Usted no lo haga. Consejos para una entrevista laboral

Opinion

Usted no lo haga. Consejos para una entrevista laboral

por Sara Vásquez
Un MAME narrativo: sobre el nuevo libro de videojuegos Play Again?

Opinion

Un MAME narrativo: sobre el nuevo libro de videojuegos Play Again?

por Ricardo Martínez-Gamboa
Todo se trata de la economía de los píxeles (o por qué podrías estar optimizando para el futuro equivocado)

Opinion

Todo se trata de la economía de los píxeles (o por qué podrías estar optimizando para el futuro equivocado)

por Cristóbal Valenzuela
Todo se trata de la economía de los píxeles (o por qué podrías estar optimizando para el futuro equivocado)

Opinion

Todo se trata de la economía de los píxeles (o por qué podrías estar optimizando para el futuro equivocado)

por Cristóbal Valenzuela
¿Pensando en congelar óvulos?

Opinion

¿Pensando en congelar óvulos?

por Diana Palacios, Sara Vásquez
Pistas y todos los números descartados en el concurso “De la Banca a Fintual”

Opinion

Pistas y todos los números descartados en el concurso “De la Banca a Fintual”

por Florencia Edwards
¿Pensando en congelar óvulos?

Opinion

¿Pensando en congelar óvulos?

por Diana Palacios, Sara Vásquez
Una vergüenza que valió la pena en la AI School de Y Combinator

Opinion

Una vergüenza que valió la pena en la AI School de Y Combinator

por Alister MacCormack
Cartas a los editores: ese concierto con tus padres

Opinion

Cartas a los editores: ese concierto con tus padres

por Pato Sullivan
Todos tienen una excusa: ¿por qué Wimbledon es tan difícil?

Opinion

Todos tienen una excusa: ¿por qué Wimbledon es tan difícil?

por Sebastián Varela
Todos tienen una excusa: ¿por qué Wimbledon es tan difícil?

Opinion

Todos tienen una excusa: ¿por qué Wimbledon es tan difícil?

por Sebastián Varela
La trágica herencia de Knight y Markowitz

Opinion

La trágica herencia de Knight y Markowitz

por Arturo Cifuentes
La trágica herencia de Knight y Markowitz

Opinion

La trágica herencia de Knight y Markowitz

por Arturo Cifuentes
Fintual y OpenAI: el tras bambalinas del evento de IA más grande de México

Opinion

Fintual y OpenAI: el tras bambalinas del evento de IA más grande de México

por Andrea Malatesta
Fintual y OpenAI: el tras bambalinas del evento de IA más grande de México

Opinion

Fintual y OpenAI: el tras bambalinas del evento de IA más grande de México

por Andrea Malatesta
Notas desde la sobriedad

Opinion

Notas desde la sobriedad

por Ricardo Vivallo
¿Pensando en salir a la bolsa? El momento es ahora: cinco claves para que tu IPO en Chile sea un éxito

Opinion

¿Pensando en salir a la bolsa? El momento es ahora: cinco claves para que tu IPO en Chile sea un éxito

por Carlos Cruz Infante
Por qué me inscribí al primer proceso de elección judicial en México

Opinion

Por qué me inscribí al primer proceso de elección judicial en México

por Luisa García
Los androides efectivamente sueñan con ovejas eléctricas: una solución al uso de la IA en la universidad

Opinion

Los androides efectivamente sueñan con ovejas eléctricas: una solución al uso de la IA en la universidad

por Ricardo Martínez-Gamboa
Config: la conferencia de diseño más grande del mundo

Opinion

Config: la conferencia de diseño más grande del mundo

por Danae Alé
La Fed tiene que ser independiente, aunque Trump no quiera

Opinion

La Fed tiene que ser independiente, aunque Trump no quiera

por Priscila Robledo
La Fed tiene que ser independiente, aunque Trump no quiera

Opinion

La Fed tiene que ser independiente, aunque Trump no quiera

por Priscila Robledo
El mercado de la cerveza artesanal en Chile: desafíos líquidos

Opinion

El mercado de la cerveza artesanal en Chile: desafíos líquidos

por Luis De Urruticoechea
El primer offsite de la historia (y el problema de los castores)

Opinion

El primer offsite de la historia (y el problema de los castores)

por Sara Vásquez
El primer offsite de la historia (y el problema de los castores)

Opinion

El primer offsite de la historia (y el problema de los castores)

por Sara Vásquez
Carta a un candidato presidencial: parte II

Opinion

Carta a un candidato presidencial: parte II

por Carlos Cruz Infante
Carta a un candidato presidencial: parte I

Opinion

Carta a un candidato presidencial: parte I

por Carlos Cruz Infante
La carta del CEO 2024

Columnas

La carta del CEO 2024

por Pedro Pineda
La carta del CEO 2024

Columnas

La carta del CEO 2024

por Pedro Pineda
Cómo se publicitó la IA en el Super Bowl

Opinion

Cómo se publicitó la IA en el Super Bowl

por Florencia Edwards
Luis Poirot: un diálogo en imagen

Opinion

Luis Poirot: un diálogo en imagen

por Rafael Gumucio
Super Bowl: guía para no ser la persona que pregunta "¿qué pasa si empatan?"

Opinion

Super Bowl: guía para no ser la persona que pregunta "¿qué pasa si empatan?"

por Sebastián Calderón
¿Cómo mejoramos la rentabilidad de nuestros fondos de pensiones?

Opinion

¿Cómo mejoramos la rentabilidad de nuestros fondos de pensiones?

por Fernando Suárez
Entre lo popular y lo exclusivo. ¿Cómo es el nuevo vino de Arturo Vidal?

Opinion

Entre lo popular y lo exclusivo. ¿Cómo es el nuevo vino de Arturo Vidal?

por Eduardo Alfaro
Andamos puro contando cuentos

Opinion

Andamos puro contando cuentos

por Franco Pesce
Reforma de pensiones: los desacuerdos podrían hacer que Chile pierda una gran oportunidad

Opinion

Reforma de pensiones: los desacuerdos podrían hacer que Chile pierda una gran oportunidad

por Omar Larré
Andamos cuenteando

Opinion

Andamos cuenteando

por Franco Pesce
Consejos a mi sobrino para elegir una carrera que no sea reemplazada por la IA

Opinion

Consejos a mi sobrino para elegir una carrera que no sea reemplazada por la IA

por Marcelo Acosta
Este año no te enfoques en bajar de peso

Opinion

Este año no te enfoques en bajar de peso

por Andrés Matte
Hackear la percepción del tiempo

Opinion

Hackear la percepción del tiempo

por Marcelo Acosta
Hackear la percepción del tiempo

Opinion

Hackear la percepción del tiempo

por Marcelo Acosta
Juegos serios: una breve retrospectiva de Club Nintendo

Opinion

Juegos serios: una breve retrospectiva de Club Nintendo

por Tomás Morales
Juegos serios: una breve retrospectiva de Club Nintendo

Opinion

Juegos serios: una breve retrospectiva de Club Nintendo

por Tomás Morales
Florencia Barrios, Country Manager de Fintual es una de las Mujeres Líderes 2024 según El Mercurio, ¿por qué?

Opinion

Florencia Barrios, Country Manager de Fintual es una de las Mujeres Líderes 2024 según El Mercurio, ¿por qué?

por Florencia Edwards
¿Qué onda la moda de los psicodélicos? Vol. II: usos terapéuticos y laborales

Opinion

¿Qué onda la moda de los psicodélicos? Vol. II: usos terapéuticos y laborales

por Maximiliano von Jentschyk Makuc
Los vocales de mesa demandan al SERVEL: ¿cómo fue ser vocal esta elección?

Opinion

Los vocales de mesa demandan al SERVEL: ¿cómo fue ser vocal esta elección?

por Pato Sullivan
Podcast con Cristóbal Henríquez, el mejor ajedrecista de Chile

Opinion

Podcast con Cristóbal Henríquez, el mejor ajedrecista de Chile

por Florencia Edwards