INICIO. Página Principal
PRESENTACIÓN de nuestra Web
Cursos Multimedia por Niveles
Gramática inglesa en español con ejercicios prácticos resueltos.
LISTENING. Sonidos con ejercicios prácticos, soluciones y texto de transcripción.
LIBROS completos en inglés para descargar a tu PC.
Practica tu READING con textos traducidos y ejercicios de comprensión lectora.
PROGRAMAS didácticos y utilidades educacionales para descargar a tu Pc.
EJERCICIOS multimedia para mejorar tu inglés.
Ejercita tus conocimientos siguiendo las aventuras de nuestro detective.
RECURSOS Y ACTIVIDADES de interés y utilidad.
Agrupaciones temáticas de palabras y su traducción. Con sonido y ejercicios
Información y Recursos específicos para profesores.
Material para la preparación de las pruebas de First de la Universidad de Cambridge.
PELÍCULAS EN INGLÉS
Vídeos para aprender inglés

Cuaderno de ejercicios 

de inglés. Actividades y material de aprendizaje.
Accede a nuestro grupo 

en Facebook
Busca el significado de los términos y su 

traducción.
Traduce textos o páginas web completas.
Consulta nuestros productos




INGLÉS PARA PROGRAMADORES

Ever wonder what it's really like to build software? Like, how do developers actually make those apps and websites we use every day?

It's a wild ride, that's for sure.

Well, today we're getting a backstage pass, so to speak. We're diving into a conversation between two programmers, Jacob and Sarah.

They're working on a microservices project, and let me tell you, it gets pretty interesting.

Oh, yeah. We're talking performance optimization, tricky bugs, all that good stuff. You'll get a feel for the problem solving process.

And even if you're not a coder, don't worry. We'll break it all down.

All right, let's jump right in. So, Jacob and Sarah are working on this authentication module. What exactly does that do?

Basically, it's the gatekeeper of the app. It checks if you are who you say you are when you try to log in.

Like a digital bouncer at a club.

Exactly. And right off the bat, Sarah's got this concern.

What's that?

Database performance. See, the way they're checking those user credentials could cause a bottleneck.

Bottleneck.

Yeah. Like everyone's trying to get in the club at once and it just gets jammed up

and the app grinds to a halt.

Yeah, not a good look. So, Jacob throws out a couple of ideas. First, adding an index to the database.

What does that do?

Think of it like alphabetizing a list makes it way faster to find what you're looking for.

Oh, makes sense.

And then he mentions caching. It's like having a VIP list so you don't have to check every single person's ID. Oh,

I like the sound of that.

Right. He suggests using this tool called Redis, known for its speed.

Redis? I've heard of that.

Yeah. Are there any downsides to using it?

Well, it can make things a bit more complex. You have to make sure the cache is updated correctly or you could end up with inconsistent data.

So, it's a trade-off.

Always is. But speaking of potential problems,

what's up?

They run into a snag with their continuous integration pipeline.

CI pipeline.

Yeah. Think of it like an assembly line with quality checks built in. Make sure the code is good before it goes anywhere.

Oh, cool.

The issue is their tests are passing, but they're not getting these reports called coverage reports.

Wait, what what are those?

So even if your code passes all the tests, those tests might not be checking every single part of it.

Oh, got it.

The coverage reports tell you how much of your code is actually being tested.

So you could have hidden bugs lurking.

Exactly. And it turns out there's probably a missing piece in their YAML file.

YAML.

Yeah. It's like the instruction manual for the CI pipeline. A missing instruction and things go haywire.

Oh, that can be kind of frustrating.

It happens. But there are ways to catch those errors early.

Good.

Moving on. Sarah notices something else. Some of the code, particularly in this thing called the user controller, is well, a bit messy.

Very.

Some functions are super long and there's duplicate code.

But if it works, does it matter?

It does. Imagine trying to fix a bug in a function that's hundreds of lines long.

Nightmare,

right? And duplicate code that just makes things harder to maintain. If you need to change something, you have to do it in multiple places.

Got it.

So Sarah suggests refactoring. Basically cleaning things up, making it easier to work with in the long run.

Makes sense.

Like organizing a toolbox, right? Everything in its place.

Exactly. Okay. So, what else?

Well, this is where things get really interesting. They start talking about Docker and containerization.

I've heard those terms, but I'm not totally sure what they mean.

Think of a Docker container, like a shipping container. You pack your app and everything it needs to run into this container.

Yeah.

And then You can ship that container anywhere and it'll run the same way no matter what kind of computer it's on.

So, it's all self-contained. That's pretty awesome.

It is. It makes deployment way easier. And then they touch on Kubernetes.

Kubernetes.

Yeah. That's like the control center for all your containers. It manages them, make sure they're working together, can scale them up or down as needed.

Wow. It sounds like they're building this incredibly complex system piece by piece.

Exactly. And it's this constant back and forth, solving problems, refining the code, figuring out the best tools.

And what's the takeaway for those of us who aren't software developers?

Well, this stuff might seem technical, but it has a real impact on the technology we use every day. Think about it. How fast a website loads, how secure it is.

Yeah, I never really thought about it that way.

It's all connected to how the software is built. So, next time you're using an app or website, remember there's this whole world of complexity going on behind the scenes.

It's a whole different perspective. Makes you appreciate the work. that goes into it.

Absolutely. And who knows, maybe you'll even be inspired to learn more about software development yourself. There's a whole universe to explore. That's it for today's deep dive. Thanks for listening.

See you next time.

¿Alguna vez te has preguntado cómo es realmente crear software? ¿Cómo hacen los desarrolladores para crear esas aplicaciones y sitios web que usamos todos los días?

Es un viaje bastante alocado, sin duda.

Bueno, hoy tenemos un pase de acceso tras bambalinas, por así decirlo. Vamos a sumergirnos en una conversación entre dos programadores, Jacob y Sarah.

Están trabajando en un proyecto de microservicios, y déjame decirte que se pone bastante interesante.

Oh, sí. Estamos hablando de optimización de rendimiento, bugs complicados, todas esas cosas buenas. Podrás sentir el proceso de resolución de problemas.

Y aunque no seas programador, no te preocupes. Lo desglosaremos todo.

Bien, entremos de lleno. Entonces, Jacob y Sarah están trabajando en este módulo de autenticación. ¿Qué hace exactamente?

Básicamente, es el portero de la app. Verifica si eres quien dices ser cuando intentas iniciar sesión.

Como un gorila digital en un club.

Exacto. Y desde el principio, Sarah tiene esta preocupación.

¿Cuál es?

El rendimiento de la base de datos. Verás, la forma en que están verificando las credenciales de usuario podría provocar un cuello de botella.

Cuello de botella.

Sí. Como si todos intentaran entrar al club al mismo tiempo y se atascara

y la app se detuviera.

Sí, no pinta bien. Así que Jacob lanza un par de ideas. Primero, agregar un índice a la base de datos.

¿Qué hace eso?

Piensa en ello como si alfabetizaras una lista; se vuelve mucho más rápido encontrar lo que buscas.

Oh, tiene sentido.

Luego menciona el uso de caché. Es como tener una lista VIP para no tener que revisar la identificación de cada persona. Oh,

Me gusta cómo suena eso.

Cierto. Sugiere usar esta herramienta llamada Redis, conocida por su velocidad.

¿Redis? He oído hablar de eso.

Sí. ¿Hay alguna desventaja en usarla?

Bueno, puede hacer las cosas un poco más complejas. Tienes que asegurarte de que la caché se actualice correctamente o podrías terminar con datos inconsistentes.

Así que es un compromiso.

Siempre lo es. Pero hablando de posibles problemas,

¿qué pasa?

Se topan con un obstáculo en su pipeline de integración continua.

Pipeline de CI.

Sí. Piénsalo como una línea de ensamblaje con controles de calidad integrados. Asegura que el código sea bueno antes de que vaya a cualquier parte.

Oh, genial.

El problema es que sus pruebas están pasando, pero no reciben estos informes llamados informes de cobertura.

Espera, ¿qué son esos?

Incluso si tu código pasa todas las pruebas, puede que esas pruebas no estén cubriendo cada parte del código.

Oh, entendido.

Los informes de cobertura te dicen qué tanto de tu código se está probando realmente.

Así que podrían existir bugs ocultos.

Exacto. Y parece que probablemente falta algo en su archivo YAML.

YAML.

Sí. Es como el manual de instrucciones para el pipeline de CI. Falta una instrucción y todo se descontrola.

Oh, eso puede ser frustrante.

Ocurre. Pero hay formas de detectar esos errores temprano.

Bien.

Sigamos. Sarah nota otra cosa. Parte del código, particularmente en esta cosa llamada user controller, está un poco desordenado.

Mucho.

Algunas funciones son súper largas y hay código duplicado.

Pero si funciona, ¿importa?

Sí. Imagínate tratar de arreglar un bug en una función de cientos de líneas.

Una pesadilla,

¿verdad? Y el código duplicado solo hace que sea más difícil de mantener. Si necesitas cambiar algo, tienes que hacerlo en varios lugares.

Entiendo.

Así que Sarah sugiere refactorizar. Básicamente, limpiar las cosas, hacerlo más fácil de manejar a largo plazo.

Tiene sentido.

Como organizar una caja de herramientas, ¿no? Todo en su lugar.

Exacto. Bien, ¿qué más?

Bueno, aquí es donde se pone realmente interesante. Empiezan a hablar de Docker y la contenedorización.

He escuchado esos términos, pero no estoy muy seguro de lo que significan.

Piensa en un contenedor de Docker como un contenedor de carga. Empacas tu aplicación y todo lo que necesita para ejecutarse dentro de ese contenedor.

Sí.

Y luego puedes enviar ese contenedor a cualquier parte y se ejecutará de la misma manera sin importar en qué tipo de computadora esté.

Entonces está todo encapsulado. Eso es bastante genial.

Así es. Facilita mucho la implementación. Y luego mencionan Kubernetes.

Kubernetes.

Sí. Es como el centro de control para todos tus contenedores. Los gestiona, se asegura de que trabajen juntos, puede escalarlos o reducirlos según sea necesario.

Vaya. Parece que están construyendo un sistema increíblemente complejo pieza por pieza.

Exacto. Y es un ir y venir constante, resolviendo problemas, puliendo el código, determinando las mejores herramientas.

¿Y cuál es la conclusión para quienes no somos desarrolladores de software?

Bueno, todo esto puede parecer técnico, pero tiene un impacto real en la tecnología que usamos a diario. Piénsalo. Lo rápido que carga un sitio web, cuán seguro es.

Sí, nunca lo había pensado así.

Todo está conectado con la forma en que se crea el software. Así que la próxima vez que uses una aplicación o un sitio web, recuerda que hay todo un mundo de complejidad detrás de escena.

Es una perspectiva totalmente diferente. Te hace apreciar el trabajo que se invierte.

Absolutamente. Y quién sabe, tal vez hasta te animes a aprender más sobre desarrollo de software. Hay todo un universo por explorar. Eso es todo por esta inmersión profunda de hoy. Gracias por escuchar.

Nos vemos la próxima vez.

 

TAMBIÉN TE PUEDE INTERESAR:

La Mansión del Inglés. https://www.mansioningles.com
© Copyright La Mansión del Inglés C.B. - Todos los Derechos Reservados
. -

¿Cómo puedo desactivar el bloqueo de anuncios en La Mansión del Inglés?