EVERYDAY
<Heroes/>

Youtube badgeSpotify badgeApple Podcast badgeAudible badgeAmazon Music badgeRSS Feed badge

The Offline Coder: How Alejandro Cuba Ruiz Went from BASIC to Boss Level

Wendy Hurst:

All right, next one. I can't believe I have to say this one. Sorry.

Hayden Baillio:

I made. I made these for everybody. Listen, make me do it.

Wendy Hurst:

Okay, I'll do it.

Hayden Baillio:

These, and they're super funny. And so this next one is a hypothetical funny one.

Wendy Hurst:

Okay. Okay, here we go. A CSS framework called Ale, Alejandro, Ale, Alejandro.

Alejandro Cuba Ruiz:

4 kid. And bring lady Gaga to peer review that with us. So it's probably going to be fantastic.

Hayden Baillio:

I need a hero, Hero, hero. There I go.

Alejandro Cuba Ruiz:

Let me be your hero.

Hayden Baillio:

You're listening to the Everyday Heroes podcast, brought to you by HeroDevs. Welcome back to another episode of Everyday Heroes, a show where we sit down with the backbone of the open web, the unsung heroes of tech. That's right. I'm talking about the open source maintainers, contributors, and organizers of the world. I'm your host, Hayden Balio, and I'm here with my co host, Wendy Hurst. What's on your mind today, Wendy?

Wendy Hurst:

On my mind today is weather. I just. I really like good weather. Um, I think that I live in Utah, and even though it's snowy in the mountains, I had to think about it for a second. It's been snowy in the mountains, which is good for us because that's where all our water comes from. But I'm extra happy because I don't like snow and I live in the valley and it's not very snowy today.

Hayden Baillio:

So you live in Salt Lake City. You don't like snow.

Wendy Hurst:

I know.

Hayden Baillio:

Is that just because you. You've been. Is this just a concept of just like you've grown up around it your whole life, that you're just kind of tired of it, or is it. Or have you ever liked snow? Have you ever liked snow, Wendy?

Wendy Hurst:

I think it's just a concept of I don't like to be cold. I'm a person who likes to be warm. I want it to be warm outside. I'm a beach person.

Hayden Baillio:

You're a beach person.

Wendy Hurst:

I'm feeling warm.

Hayden Baillio:

Okay.

Wendy Hurst:

All right, well, snow is not warm.

Hayden Baillio:

Snow is not warm. That's true. Well, you know.

Wendy Hurst:

Is not warm.

Hayden Baillio:

Someone who grew up in Texas, I would love a little bit of snow every once in a while, but no, whenever we get some kind of precipitation when it's cold, it just becomes an ice apocalypse and then the whole state shuts down because no one knows how to even function with ice on the road. I've never, ever even seen chains on tires, Wendy. I've never even had to do anything like that. So, yeah, it's just. It's A complete mess down here. But it is cold right now, which I love because as a bigger dude, I love the chilly weather. Like, it's. It's just nice in general.

Wendy Hurst:

Well, I can tell you that in Utah, even though it's cold here and icy here, often people don't know how to drive in it here either. It doesn't really matter at all.

Hayden Baillio:

Right? That's just the matter of it. Okay, okay, okay, okay. Enough of that. Enough of that. We got a pretty special podcast show today. Whatever we're gonna. Whatever we're calling this thing, right, Wendy, I. Podcast? Yeah, podcast.

Hayden Baillio:

Well, it's, you know, it's a show though, because, like, people are watching us on YouTube right now. Hey, people watching us on YouTube right now. But I'm excited and a little anxious to introduce this next guest for today's episode because he's a podcast host as well, you know. So, like, I feel like we might get graded a little bit on our podcast today. But regardless of my imposter syndrome, the show must go on, right? So our guest today grew up in Havana Unana. But you haven't heard that one before. I like that song. And now lives just a few miles north, as he would say, in Miami Beach.

Hayden Baillio:

He's been doing front end dev for over two decades, currently works as a principal front end engineer at World Kinect in Miami. He's a GDE or a Google Developer expert for those who don't know the acronym. He's been part of the NG Champions program at NG Conf. He's the co organizer of the Angular Community meetup and he's the host of the Angular Dades podcast, which by the way translates to Angularities in English. A huge member of the Angular community and all around great guy. I'd like to welcome Alejandro Cuba Ruiz. Alejandro, thank you for coming on the show.

Alejandro Cuba Ruiz:

Thank you so much for that amazing introduction. It's my pleasure to be here. Thank you.

Hayden Baillio:

Thanks, man. I had to go. I had to pull out all of it because I know you are a podcast host and I was like, I got to show up for them. But before we go any further, we like to start this show a little differently, and that is with a game. So right now I'm going to ship it over to Wendy and we're going to play our first game of Everyday Heroes. Alejandro, are you ready?

Alejandro Cuba Ruiz:

Absolutely.

Hayden Baillio:

Wendy, take it away.

Wendy Hurst:

All right. We're going to play a game that we made up called Fork Star or Deprecate. In this game, I'm going to say anything from an open source tool or programming language to a ridiculous concept in tech that we made up. And you decide whether you want to fork it, improve it, star it, leave it alone, or deprecate it, retire it entirely. Are you ready?

Alejandro Cuba Ruiz:

Yes.

Wendy Hurst:

Okay. Angular material.

Alejandro Cuba Ruiz:

Fork it to continue enhazing the features.

Wendy Hurst:

Typescript.

Alejandro Cuba Ruiz:

Typescript. Absolutely. Star it.

Hayden Baillio:

Yeah.

Alejandro Cuba Ruiz:

I'm the only one playing. Or also Hayden.

Hayden Baillio:

No, you're playing. You're the only one.

Wendy Hurst:

You're the only one playing.

Hayden Baillio:

Yeah.

Alejandro Cuba Ruiz:

Okay. Okay.

Hayden Baillio:

Good for you.

Wendy Hurst:

It's a secret competition because I would.

Alejandro Cuba Ruiz:

Like to click as fast as I can.

Hayden Baillio:

Yeah, we need to get buzzers. We do need to get buzzers. Ship them to everybody.

Wendy Hurst:

We do. Huh? But it'll just be one buzzer because it to you. That's fun though. Okay, here we go. Test driven development tdd.

Alejandro Cuba Ruiz:

All right. Because it's a great foundation for everything that we supposed to do it beforehand and I love the strategy is one that I don't use as often as I should, but I would like to watch it how that evolve over time.

Wendy Hurst:

Okay, next one. Using RXJS in every Angular project.

Alejandro Cuba Ruiz:

I'm going to miss it so much. But unfortunately less deprecated for a while.

Wendy Hurst:

Okay, next one. Firebase.

Alejandro Cuba Ruiz:

Start it. Why not?

Hayden Baillio:

There you go.

Alejandro Cuba Ruiz:

It's a great framework.

Wendy Hurst:

Okay, hot reloading.

Alejandro Cuba Ruiz:

You mean hrm, like eventually reloading as fast as we can all the style sheets that we are experiencing during development time.

Hayden Baillio:

Absolutely.

Alejandro Cuba Ruiz:

Start. Especially in angular 19, which has the hot reload module thing that is performing fantastic so far.

Wendy Hurst:

Okay, next one. Angular cli.

Alejandro Cuba Ruiz:

Start it. I don't know what I would do with all the modernization in Angular without the migration scripts. All the schematics for generating code automatically for us.

Wendy Hurst:

Okay, next one. Classic angularjs or Angular one.

Alejandro Cuba Ruiz:

Bye terminated. But please continue supporting everything that you guys do at Herodev. You are our everyday heroes with AngularJS. Gladly. I am not in anything that supports AngularJS anymore, but I kind of fondly remember the componentization efforts. Moving from 1.4 all the way to 1.5 and yeah, eventually refactoring the whole thing, starting from scratch in the new kind of framework.

Wendy Hurst:

Yeah. All right, next one. I can't believe I have to say this one.

Hayden Baillio:

I made these for everybody listening.

Alejandro Cuba Ruiz:

You're gonna make me do it?

Wendy Hurst:

Okay, I'll do it.

Hayden Baillio:

I made these and they're super funny. And so this next one is a hypothetical funny one.

Wendy Hurst:

Okay. Okay, here we go. A CSS framework called Ale Alejandro. Ale Alejandro.

Alejandro Cuba Ruiz:

Fork it and bring Lady Gaga to peer review that with us. So it's probably going to be fantastic to see her comments on.

Wendy Hurst:

I am so sorry about that one. Okay.

Alejandro Cuba Ruiz:

And I'm very glad about that song because that's the reason why many people in English speaking countries are able to pronounce my name correct. Since I was a kid, I was under the impression that Alejandro was a very popular name. Understandable. That's actually the reason why my mom called me Alejandro, because supposedly everyone should be able to pronounce it. Right. Until I migrated to the United States and I started, you know, like hitting Alexandro, Alejandro and many other combinations that they were literally transpiling my original name into so many variants over there. So thank you, Lady Gaga again. And Hayden, probably that was you.

Wendy Hurst:

Okay. And the last one is a strict mode that bans using any type completely.

Alejandro Cuba Ruiz:

Start it. I am one of the culprits today that most of the code bases that I actually supervise and help to continue modernizing have so many any and unknown types. But let's start it because that is a healthy practice and a fantastic convention to follow and adopt.

Hayden Baillio:

Nice. Awesome.

Wendy Hurst:

Done. You did.

Hayden Baillio:

Yeah, he did great. Great answer.

Wendy Hurst:

This thing that I threw, this little plushie, it's like a thing we used to give out at some conferences. If you guys don't know, this logo actually has a name. His. Her. Their name is Cody Commit. I like to throw things. I like to throw things. I throw it at the end of everything.

Hayden Baillio:

Cody with an e. I didn't want.

Wendy Hurst:

To just throw it and not say anything. Yeah, it is. Well, Cody Commit.

Hayden Baillio:

Can I say something, Alejandro? You deprecated rxjs. So nice that I was like, if I ever have to get fired from another job, I want Alejandro to do it.

Alejandro Cuba Ruiz:

Of help of RXJS Interop package, which allow us to smoothly transition over signals. Yeah, but I'm going to miss the. I mean, we spent so much time learning RxJS and now it's kind of detached from the core of the Angular framework. I mean, not fully right now, but you can write an application these days, an Angular 19 application, without having to rely in RXJs at all. Especially with the developer preview features that are available so far.

Hayden Baillio:

Yeah, no. And that kind of brings me into kind of where I want to now start this conversation with you, Alejandro, is I want to bring it back and I want to bring it back two decades. And I want to ask you what got you into development and then specifically what led you down this path of like adopting Angular as what I would assume is really your primary kind of like, you know, language that you program in and develop in. What was that journey like? Like, where did that start, man? Take us back to Havana and tell us what it was like.

Alejandro Cuba Ruiz:

Just imagine an offline realm. So no Internet access, only the ability to play old video games from the 80s in diskettes, 1.44 megabytes or maybe a little bit less the larger ones. And I wanted to be part of that creating process since I was a kid. And I remember that I was drawing different levels of those video games that I had the opportunity to play in a computer. And then my dad and my uncle introduced me to very basic, actually basic programming language and visual Basic as well. And I found that so much interesting having to, I mean those tools to write conditionals loops, engaging with variables. I mean it was like a chess multiplied by 10. So I was able to start the process of creating my own world and my own video games.

Alejandro Cuba Ruiz:

Very, very basic ones. And I found it super rewarding because it's not like when you are doing science or you have any other type of role in society, you have to wait a significant amount of time in order to see the results. In software programming you actually are able to get immediate feedback from the computer right away in your screen. And it's a great process. So I remember seeing the very first news in newspapers about the web HTML and downloading, I mean using downloaded files in mht, which was the compilation format in Internet Explorer. I'm talking about IE5 and before IE, Internet Explorer 6. And I found it very inspiring to be able to create something that was going to be read by any consumer in any part of the planet. But I was completely offline.

Alejandro Cuba Ruiz:

So I was creating my very first websites and web pages for myself and also for friends that you know, like share that in diskettes. And it was an entertaining process. I literally knew very basic stuff about HTML. As I was going through the markup language I started digging a little bit more on that. Then I downloaded the HTML 404.01 specification, the single file that was like more than one megabyte of specification. And I remember that I read probably 60% of that and I get familiar with what was intention of the HTML language over time. TSS then adopting fantastic jQuery library for my project. And then I got intermittently connected to the Internet downloading, being able to download more resources, going through the university studying software engineering, no web focus at all was mostly like C and algorithms, mathematics, the foundational layer of everything that allow me later to become a software engineer and jQuery was phasing out and were a lot of different frameworks like AngularJS, Meteor, Knockout, you name it.

Alejandro Cuba Ruiz:

There were like dozens of frameworks to play with. And initially I found a little bit challenging to get familiar with that combination, that conversions of the multiple layers that I was used to separate entirely. The markup for declaring everything in the structure of the web document, the CSS for styling purposes, and the JavaScript for interactivity and event handling. And then those frameworks start combining all that in one single obstructive mechanism using MVC or mvvm. And I had a lot of friction originally when I started playing with those large JavaScript frameworks. But I fall in love eventually with AngularJS, and it's been a fantastic journey so far going through the whole evolution. Angular 2, angular 4 and all, the Ivy rendering engine, and currently the modern language, the modern framework that supports a lot of cool functionalities that we all are very proud to use in order to support our applications. That's the long story short.

Hayden Baillio:

Yeah, thank you for that. That was awesome. I love how you. I think that this is, like, prevalent with anybody that I meet that ends up getting to be very good at what they do is that it starts almost as a child as they're just interested in something, they're just interested in doing something and they're just going to figure out how to do it. It doesn't really matter. Like, you didn't have any knowledge of Angular back then or there. Well, sorry, there wasn't even a framework like Angular back then probably right at the time. So it's like you just were like, hey, I really want to build games.

Hayden Baillio:

Which, by the way, was the only thing that ever motivated me to learn any amount of programming was like, I want to build worlds too. Like, I was just like, I want to build. I want to build a world. I want to build a game. Because I remember if I can, if I can. There is this book series, Alejandra Wendy. There's this book series by this author named Christopher Paolini. He's a very young author when he wrote this book series called the Inheritance series and the first book is called Eragon.

Hayden Baillio:

Some of my favorite books of all time. It's like the book that really got me into reading and reading fantasy. And I remember the movie came out and it was the only movie in my whole life that I was like, really upset with that it didn't match the book. More like it was a really bad movie in my opinion. Never got remade again. Like, no second. No second movie. I was so upset with it.

Hayden Baillio:

But I remember there was a game on PC that you could get. And so I was like, well, this is literally my favorite book series, so I'm going to get the game. And I remember playing the game and also being extremely disappointed with the game. And at that moment, I was just like, I wish I could just learn how to code so I could make my own game and I could make this game so much better. That's literally what prompted me to even do a little bit back in the day. So I can appreciate that. I think that's how it kind of always starts. Like, there's this interest in stuff, and then you kind of just.

Hayden Baillio:

You find your way so along the path. Alejandro, like, what's like one of those moments where it really clicked that this is what you want to do for the rest of your life? Maybe that was before university or whatever, but, like, when was that moment that you were like, man, not only do I just have fun with this, but, like, this is just what I want to do forever.

Alejandro Cuba Ruiz:

I would say when I start teaching computing, I mean, basic computing to kids, I start engaging with the idea of the cyberspace interaction. I mean, the humans interacting with cyberspace, no matter how old they were, how much experience they had. I had the opportunity to teach elementary school kids for a few years. I was studying software engineering as part of my social service in Cuba, and I found that so inspiring and probably connected me with the idea that I was going to be in the computer world for a long time in my life. Because when you learn something and then you have to teach that topic to other people, especially kids, you need to reframe it differently, and you start creating that relationship with that area of specialization in a very different. I mean, it's intertwined in your brain in ways that probably don't happen if you just. Just take that knowledge for yourself and not share it with others.

Hayden Baillio:

Couldn't agree more. I couldn't agree more. Having to teach someone already takes a level of having to become more of a master yourself and then having to teach children. I was a thrower, shot putter for a long time in my life, and I trained kids. And the truth of it is that also no kid learns the same way, right? They all learn differently. So you're constantly thinking of ways, different ways to get through. And now that I'm a parent and I have another one on the way now, it's like my first son is going to learn differently than my second son. And I'm just very, very interested in how that's going to go.

Hayden Baillio:

Wendy, you have three children. Does any of them learn the same?

Wendy Hurst:

No.

Hayden Baillio:

You're like, no. Do you have children?

Alejandro Cuba Ruiz:

Not yet.

Hayden Baillio:

Not yet. Not yet.

Alejandro Cuba Ruiz:

But I have a lot of friends that, you know, I have a lot of nephews or they are. And also biological nieces.

Hayden Baillio:

So yeah, I love that. So, okay, I love that. So that sparking interest, like you were like, okay, I think this is going to be my life for a long time. It was from that teaching moment what got you to. I mean, you have this very interesting, like coming from Cuba. Were there significant hurdles in making the jump into tech when you were in Cuba or making the jump to come to the States to then like pursue a technology career here?

Alejandro Cuba Ruiz:

United States is a reference, I think that everywhere in the world in terms of advancing in the technological area. So I always had that in my mind. I mean, like a continuing evolving in ways that I wasn't able to reach when I was over there in Cuba. Especially the level of Internet access, all the policies around the ability to use resources that I needed, hardware, software, connecting with teams that were creating great things and applications and larger communities. So one of the hurdles over there was definitely the access to information. Something that these days is kind of the hurdle is how do you are able to optimize yourself to consume so much information. But back then was the other way around. Rarely I was able to get the information that I needed in order to complete a project in a programming language that I wasn't familiar with.

Alejandro Cuba Ruiz:

And I had to go overnight to get some access to Internet in specific centers that had Internet because I wasn't able to get that, I mean, from home. And it was very, very challenging for years, actually for over a decade in my professional life. So when I came to the States, I started experiencing some other challenges, especially the language barrier, like having the opportunity to interact with other human beings, not via emails or through a chat, but using a different part of your brain that is dedicating a lot of neurons to the oral communication. Speaking is entirely different skill. I mean, when you are learning any spoken language, any natural language, and not referring to learning JavaScript or TypeScript, which is only reading and reading them, but if you're learning French or Japanese, you're probably going to have a hard time connecting with sentences, producing that context that will be understandable by other people. So I started doing that when I was on my series and it was kind of. It is still challenging, especially because of the plasticity of the brain is not as it used to be when you are a kid and learning a second language. And I think that it was not the technical aspect, but the communication aspect is being, you know, the most significant challenge for me.

Alejandro Cuba Ruiz:

And it's probably the same story for many people that migrated in a later state of their life.

Hayden Baillio:

Oh, yeah, I can completely understand that. I mean, in this case, it's an actual language barrier, but at the higher level of that, it's just communication in general, which is just something that a lot of people suffer from, from just. Even if they're native. Native English speakers. Alejandro. Like, communication in general is something that people have to continually work on. So I love that, you know, here at Tech. Go ahead.

Wendy Hurst:

I was going to say that before I got into Tech, I wanted to be a sign language interpreter. Like, as my job. This is a long time ago. A long time ago. Early 2000s. I won't say the year it will date me, but I wanted to be a sign language interpreter. And because I was younger, I guess that's just my path. I took two years of it in high school, and then I took a couple of years of it in college.

Wendy Hurst:

Like, I went through the training program. Like, that was going to be my job. And I picked it up so quickly. Later, I learned that that really wasn't the life for me. So I moved on to other things. But fast forward to the last year, I decided I wanted to learn Spanish. I'm like, I pick up languages fast. I remember learning sign language.

Wendy Hurst:

It's not a big deal. It's a big deal. I'm a lot older now. That was a long time ago. The early 2000s was a while ago. It's 2025 now, and I just don't pick it up as quickly. I just don't. I can't.

Wendy Hurst:

I'm trying. Also, it's a spoken language rather than like, you're not using your hands. So it's a little different. But I know what you're talking about. That kind of difference when you're a child versus when you're an adult and trying to learn a language, it's very difficult.

Hayden Baillio:

Well, even learning.

Alejandro Cuba Ruiz:

And you're right. I mean, and I recently. Oh, go ahead.

Hayden Baillio:

No, you're good. I was just saying, even with learning American Sign Language, it's not even just. It's also using your physical hands in motion. It's like even another part of your brain. Yeah. There's like a kinesthetic part of that language. Right. That's crazy.

Wendy Hurst:

It's true. I wish every language, like, when you're speaking it, like, you had sign language that goes with it. Sign language is actually its own language. Like if I were to sign and speak English at the same time, I'm literally speaking two languages at exactly the same time, two different parts of my brain. It's very difficult. Some argue it's not really possible to do. Well, I happen to agree with that theory. Maybe with practice I could do it, but it's hard knowing.

Alejandro Cuba Ruiz:

Yeah, communication is not about only verbal. You also have to focus a lot on body language, on your. The inflection of your voice. It doesn't matter if you are an English speaker conducting your abilities to audiences that speak the same language. You have to focus yourself in the volume, the way that you actually go through the inflection of the words, finding ways to engage with audiences. And that's something that is definitely important, communicating in any language.

Wendy Hurst:

Completely agree.

Hayden Baillio:

So true. Well, I'm going to stop us before we start signing things, although I feel like this because I. Well, you know, because I got to tell everybody about HeroDevs real quick and you know, maybe one of these ad reads in the future. I'm just going to make Wendy do it and sign. All right, I'll be right back. I'm just going to tell everybody real quick about who's putting on this podcast. Everyday Heroes is brought to you by HeroDevs. HeroDevs offers secure drop in replacements for your end of life open source software through our never ending support product line.

Hayden Baillio:

You get to stay compliant with the likes of SOC2 and HIPAA and FedRamp and all the other acronyms and regulatory bodies you can think of. All while also getting real vulnerability remediation. You don't have to choose between a new feature and security. And with over 800 clients, you can be confident that your unsupported open source is in good hands. So if you need us, we're here. And if you don't, well, that probably means you've migrated to the newest version. So huzzah. Either way, visit herodeads.com to learn more.

Hayden Baillio:

Now back to your regular scheduled programming.

Alejandro Cuba Ruiz:

Peace.

Hayden Baillio:

All right, Alejandro, before we go any further into fun stuff though, we gotta stop again for our second game of the podcast. Wendy, tell him what he won.

Wendy Hurst:

All right, our next game is called Not My Job. We'll ask you three questions that have no nothing to do with your job as a software engineer or anything we've talked about today or ever, and everything to do with what you know about unusual competitions around the world.

Hayden Baillio:

Whoa, this is interesting.

Wendy Hurst:

All right, here we go. Question Number one. Which country hosts the annual cheese rolling competition where participants chase a wheel of cheese down a steep hill? A, England, B, France, or C, Switzerland?

Alejandro Cuba Ruiz:

France.

Wendy Hurst:

France is your guess. No, it is England.

Alejandro Cuba Ruiz:

I think that it's a long time ago. European. Thanks. You know, weird Europe.

Wendy Hurst:

This competition is held in Gloucester, England. It's on a place called Cooper's Hill. Participants race downhill, often tumbling, to catch a rolling wheel of double Gloucester cheese. I'm sorry if I'm pronouncing any of these words incorrectly, especially the word cheese. The first person to cross the finish line wins the cheese. Question number two. Are you ready? Yeah. Question number two.

Wendy Hurst:

Which country hosts the wife carrying world championship where competitors carry their partners through an obstacle course? A, Finland. B, Australia. C, Canada.

Alejandro Cuba Ruiz:

I would say Australia because it's so far from it.

Wendy Hurst:

No, it is Finland. This event takes place annually in a town called Holland. I had to look up the pronunciation. Sunkarjavi, I think, is how you pronounce it. It is. In Finland, the goal is to carry a teammate, usually your spouse or your partner, through a course filled with water hazards and hurdles. The winner receives their partner's weight in beer.

Alejandro Cuba Ruiz:

I'm getting so close to lose the game. So.

Wendy Hurst:

Here we go. Question number three. What is the goal of extreme ironing? It's a competition where participants iron clothes in the most creative and challenging locations. A, to iron clothes in the most.

Hayden Baillio:

Oh, my gosh.

Wendy Hurst:

Okay, we can't do that one. Cut the question. That's the worst thing ever. It gave it away. Okay.

Hayden Baillio:

In the show. I love it.

Wendy Hurst:

We are absolutely cutting that one. Oh, my God. Okay.

Alejandro Cuba Ruiz:

And I was going to defer the question. The answer to Hayden on that one. So.

Wendy Hurst:

Okay, so we're not doing that one. Next question. In the world snail racing competition, what phrase is used to start the race? A, ready, set, slime. B, slow and steady wins the race, or C, ready, steady, slow.

Alejandro Cuba Ruiz:

We'll go with B. The second option.

Wendy Hurst:

Slow and steady wins the race. Incorrect. It's ready, steady, slow.

Alejandro Cuba Ruiz:

I knew it.

Hayden Baillio:

Ready, steady, slow.

Wendy Hurst:

It's a competition held. Yes, it's held in the UK Once a year. A competition that pits snails against each other on a circular track with a finish line in the center. Owners cheer on their mollusks as they slowly make their way to victory.

Alejandro Cuba Ruiz:

I have a question for you. Where do you find it out? You know, how are you able to collect the most insightful information around the world?

Wendy Hurst:

The Internet.

Alejandro Cuba Ruiz:

Because it probably requires a large language model in order to generate, you know, like, some of the questions oriented People sometimes.

Wendy Hurst:

Sometimes.

Alejandro Cuba Ruiz:

But it's just.

Wendy Hurst:

It's Internet, you know, around. Last one. Are you ready?

Alejandro Cuba Ruiz:

Yeah.

Wendy Hurst:

Which country hosts the annual toe wrestling championship where contestants lock their toes and try to pin their opponent's foot? A, England, B, New Zealand, or C, Ireland?

Alejandro Cuba Ruiz:

Ireland.

Wendy Hurst:

Incorrect. It is England. It's kind of like arm wrestling, but with your toes, I guess in a place called Derbyshire Island. Derbyshire, England. It's not Ireland. You tried to trick me. Tried to incest me. That's not it.

Wendy Hurst:

I guess they compete barefoot because I guess using socks would be really hard and they just try to knock their feet over. I don't know. I've never watched a video, but I kind of want to now. I think it would be fun. Well, that's the end of the game. We did it.

Alejandro Cuba Ruiz:

It went amazing. Yeah. I was going with the inverse, you know, option, but also, like, it's a.

Wendy Hurst:

Game called not your job. So if you got the questions right, it's surprising. Good for you answering. Anyway, that was a fun one.

Hayden Baillio:

I was going to say that, like, I actually have not quite a bit of experience with these unusual competitions, but like, for instance, I have been invited, when I did the Scottish Highland Games, quite frequently, I was invited to Australia. They have a. In Alaska and Australia. In Australia, they throw some fish and I don't remember what kind of fish it is, but in Alaska they have a salmon throwing contest where literally you just. You throw a huge 50 pound salmon for distance. And I was invited to that. To throw it that one time. So I love a good unusual competition, that's for sure.

Hayden Baillio:

I wasn't able to make it.

Alejandro Cuba Ruiz:

No.

Wendy Hurst:

That's too bad.

Hayden Baillio:

Yeah.

Wendy Hurst:

Next time.

Hayden Baillio:

No, one day I'll make my way up to Alaska and throw a salmon for distance. That's on the bucket list. Well, thanks for playing.

Alejandro Cuba Ruiz:

Thank you. I learned so many insightful things about worldwide competition today. Probably going to. I'm going to lose all that tomorrow, but, you know, like, this is so much fun.

Hayden Baillio:

Yeah. Well, ready? Ready, steady, slow, baby. Right, okay. So getting back into the groove here, though, and getting back to you, Alejandro. I think I would be remiss if we went all the way through this podcast without asking you. Angular 19 kind of rolled out not too long ago. Right. And I mean, I personally think the Angular team has a.

Hayden Baillio:

I don't like to use the word aggressive, but they have like a very fast release cadence. Right. Every six months. So what are your thoughts, you know, as Angular 19 was released, I mean, truly, when I joined Herodevs, Angular was, you know, had its Renaissance. Right. I believe that was. Was that 18 where they claimed Renaissance?

Alejandro Cuba Ruiz:

Angular 17?

Hayden Baillio:

17. 17 was Renaissance. Right.

Alejandro Cuba Ruiz:

So a year ago, a little bit more than a year ago, yeah.

Hayden Baillio:

It was really cool to see. It really was. And you know, the new site was awesome to see. And now, now that we're a year past that kind of change, you know, how do you feel about angular 19 and all the new things coming out and the changes?

Alejandro Cuba Ruiz:

I'm probably biased, but I think the direction that the framework core team is taking is super inspiring because we can see from the other side, I mean from the community side, stabilization of many powerful features that before are getting released as stable versions are being used in hundreds of applications internally in Google. And that makes the collection of new functionalities that now is being offered in angular 19 very solid collection of features that we can incorporate in our existing application. You name it. Like progressive hydration. All the different changes that are happening in the reactivity model using Angular signals almost all around and the changes in the syntaxes of the HTML templates and many other powerful additions that have been released recently in November 19th.

Hayden Baillio:

Yeah. Did you have a horse in the race? Were you really happy that. Let me reframe the question. What are you most bullish about when it comes to angular 19 and do you have any insights on what you'd be looking for in 20? Even though it feels like, oh, we just 19 literally didn't come out that long ago and I'm already talking about 20, but you know, 20 is going to be right around the corner, it's going to happen quick. So what are you most bullish about? About 19 feature or anything wise? And then what would you love to see in 20?

Alejandro Cuba Ruiz:

Yeah, it's not a secret. And I'm very bullish about a signal form. I mean like a signal based form approach that is finally going to allow developers to get away from that analysis. Paralysis on reactive forms versus template driven forms that has been there for a while since the very early versions of Angular and now with forms connecting with the signal graph in the framework is going to highly likely enhance the developer experience significantly. I would say that's my wish for angular 20 and also more, I mean graduating more features that are currently in experimental and developer preview mode, like the resource API, also signal driven and possibly other areas in the framework on the hydration part and also change detection related that are probably going to be stable in angular 20 going on from May.

Hayden Baillio:

Nice if you were to kind of go back in time, Alejandro, and tell your, you know yourself 10 or 20 years ago. What's some advice that you would give yourself as you really started in earnest in your development, your programming journey?

Alejandro Cuba Ruiz:

Don't be afraid of math, of the foundational principles of logic calculus, because regardless if you use it heavily or not in your day to day programming practice, it evolved your ability to face problems significantly. So if that Alejandro early 2000s dedicated a little bit more time to foundational problems, I will think that I will go in a direction in a faster approach to many of the challenges that I faced during the learning process of C and many other frameworks. Beyond that will be probably advice number one. And also learning English earlier, not only reading subtitles, but also exposing a little bit more to the oral communication. For sure.

Hayden Baillio:

Yeah.

Alejandro Cuba Ruiz:

And that's an advice that will probably be helpful to many other people that are in their 20s right now. You know, like continue finding knowledge not in the JavaScript frameworks, but go a little bit lower in the foundational layers. Go to the algorithms, go to the logic, even to the mathematical and physical principles that support everything that we see in cyberspace and then go back to your specific specialization because it doesn't matter how much you specialize in angular, any web framework or maybe cybersecurity or generative models right now is going to change drastically in five or ten years from now. It's highly likely whatever you are specializing and dedicating hours to right now is going to evolve and change to a completely different thing, but supported by the foundational science.

Wendy Hurst:

I like that I've never heard someone talk about math retroactively like that before. My older children are teenagers and whenever I bring up math they're like, they're good at math, they like math, but they don't want to talk about it. So it's interesting that you look back, you're like, I wish I just thought about math more. That's great.

Alejandro Cuba Ruiz:

And there are many flavors. I mean trigonometry, geometry, spatiometry. I mean there are very different and attractive ways to approach to math. I like to teach, used to teach my students back in Cuba that every single change in the pixels that forms the grid on your visual viewport, meaning the displays that you have in front of you, doesn't matter if you are watching a movie or playing a video game, that has to be computed rasterized, the layout have to follow some basic programming and mathematical principles and connects directly to the trigonometric principles that you probably studied when you were younger and they have to study when they are in the formation of years that Reminds me.

Hayden Baillio:

Of, I think it was Jim Gaffigan. There was some comedian that did a bit about how he was talking about maybe his wife or somebody that was getting mad that the Internet wasn't working fast, or like a phone call, text message wasn't happening fast enough. And he's like, do we ever even stop to think people are gonna have to fact check me? I don't know if it's Jim Gavigan. He's like, you ever stop to think though, that this thing has to go from your phone to a satellite and then back down and you're mad that it's taking like more than a couple seconds to happen? That kind of reminded me of it. It's just like, yeah. You ever stopped to sit and wonder about all the evolution of technology that's just in front of me right now. You know, I got lights and two monitors and a laptop, and it's like it wasn't that many decades ago where the first computer couldn't fit inside of the room that I'm in right now. You know what I mean? That's kind of wild to think about.

Hayden Baillio:

You're right.

Alejandro Cuba Ruiz:

And still you can find many people like me very focused on getting attracted to more performance optimization in order to increase the ability for the users to have predictable interactions, reducing significantly the page load, the interactivity of the applications. They don't know anything about what we are creating behind the core teams. They only know that they have to click a button and get an immediate response in any kind of device. So if something goes wrong, they probably know about us or remember about the engineers or the designer behind the product. But our. Our intention is to go as transparent as possible for the user journey and interaction.

Hayden Baillio:

Yeah, that makes sense. Yeah. You don't often, you don't always get the five star reviews, but you always get the one star reviews if you have a bad experience. Right? Yeah.

Alejandro Cuba Ruiz:

I'm on calls in the middle of the evening and that's one of the reason why I picked front end engineering instead of databases or, you know, like DevOps, because it's kind of rare that you get a call in the middle of the night because something went wrong with a style sheet or the HTML broken or something in angular that was causing issues. Usually that is not. That doesn't happen. And TDD is probably one of the tools that allows to anticipate how the whole script that you have in mind for that application is going to play out eventually during the production of the code base that is going to generate the final product and Then the automated testing, all the different testing layers that prevent something to happen in the front end, but the front end is magical for everyone if it's played well.

Hayden Baillio:

Yeah, I have one last like topic I want to, I want to ask you about before we wrap up with our, with kind of our final scenes here. And it's really about, you know, your journey into podcasting and the Angular like podcast. And I'd love to know, you know, why you started it. What was that movement for you in your life where you're like, oh, I want to do this and then, you know, how. What have you gotten out of it so far? And yeah, I'm interested in knowing.

Alejandro Cuba Ruiz:

I love that question. So I found a lot of inspiration with my college in the Angular community meetups and also a lot of Hero dev people from Latin America. There is so much talent in the Spanish speaking countries and also here in the United States and people that have Spanish as the first or maybe a second language that have a story to tell. Also a lot of technical insights to share with the world. And I created that podcast for sparking opportunities of conversations related to Angular and things that could be relevant to the Angular developers. It doesn't matter where in the world, where they are in the world and also what language do they speak. Gladly. We have the automatically generated captions in YouTube so we're producing that content in Spanish and the generative models allow me to use the transcript generated by Riverside and create the corresponding key takeaways and the summary in English.

Alejandro Cuba Ruiz:

So a lot of good conversations are happening not only in Spanish, but maybe in other languages that I felt it was valuable for the overall community, to the larger Anglo community to learn a little bit more of what we are doing in Latin America and Spain.

Hayden Baillio:

I love that. It's like you essentially created a platform where Latin American Spanish individuals could come on and, and share their insights. And I love that. That's really cool.

Alejandro Cuba Ruiz:

Thank you. And there are so many other platforms in case you, anyone hearing is knowledgeable about or can understand Spanish. You have many other ways to engage with the community in Spanish. Like the Angular community meet up in Spanish every second or every first Tuesday of the month. I mean it's on the website. I forgot right now. What's the exact cadence, what day of the week. But in meetup.com, you can find it.

Alejandro Cuba Ruiz:

And also Dominicode and Nico Whites is also generating a very good content in YouTube in Spanish MidoDev as well. There are a lot of talented people over there, you know, like producing content in My native language that is very insightful for the community.

Hayden Baillio:

And can I just say, I think it's crucial because, like, this is an example from a different framework, but Vue js, when it originally, like launched and Evan Yu created Vue js, I think one of the things that really made it incredibly popular very fast was because he had incredible documentation in Mandarin. And because of that, it got adopted quickly by that eastern part of the world or, you know, in Asia in general. And so I think that was hugely beneficial. And so being able to leverage things like your podcast and the community meetups and things like that, that allow people to discover things in their native language while also being able to harness the insights and be able to put those into English for people who don't speak Spanish or don't speak another language is really cool. So bravo for the podcast though. I've watched a lot of the podcast episodes that the HeroDevs have been on, that's for sure. And yeah, it feels like it's been a great success. So good job.

Alejandro Cuba Ruiz:

Thank you so much.

Hayden Baillio:

Absolutely. Well, Alejandro, we have, we have one last game and then we'll kind of wrap it up. Wendy is our game master, so she's going to take you through the very last game.

Wendy Hurst:

Let's go right.

Alejandro Cuba Ruiz:

In.

Hayden Baillio:

Yeah, yeah.

Wendy Hurst:

Our last game of the show is called Lightning. Fill in the blank. In this game, you have 60 seconds to answer as many questions as you can. The more questions you answer, the more bragging rights you get to take home.

Alejandro Cuba Ruiz:

And the more swag from Hero device in the upcoming NG Conf.

Hayden Baillio:

Right? Don't set it.

Wendy Hurst:

That's right. All right, let me set my timer here for 60 seconds. Here we go. Angular uses a component based architecture where each component is defined by a class A template and a blank file.

Alejandro Cuba Ruiz:

Class a template, a class a template.

Wendy Hurst:

And a blank file.

Alejandro Cuba Ruiz:

You got me in a spec file, broly.

Wendy Hurst:

Yes, but no style. To serve an Angular application locally during development, use the command ng.blank serve. Yes. Angular's built in service for handling HTTP requests is called the blank client.

Alejandro Cuba Ruiz:

HTTP client, yes. To enable navigation, I encourage everyone to use Resource API based in signals, but go ahead, I'm losing.

Wendy Hurst:

To enable navigation between views, Angular relies on a feature called Blank routing.

Alejandro Cuba Ruiz:

The router. The native router, I guess.

Wendy Hurst:

No, it's called dynamic Dynamic. I'll do a couple more though, because it's our game and we can do whatever we want. Are we ready?

Alejandro Cuba Ruiz:

Bring me two more questions.

Wendy Hurst:

No rules. No rules. Okay, here we go. Reactive programming in Angular is heavily reliant on Blink, which is a library for handling streams. Rex JS yes, the.

Alejandro Cuba Ruiz:

Probably not anymore. Not anymore. I mean it's backward compatible. Definitely. It's not going anywhere. But it's optional.

Wendy Hurst:

It is optional. Okay, next one. Angular applications typically have a root component that serves as the starting point of the app. This is often called blank component, app component. Correct. Last question. Angular's ability to optimize templates by pre compiling them is referred to as blank.

Alejandro Cuba Ruiz:

Compilation ahead of time compilation AKA aot.

Wendy Hurst:

That's right. End of the game.

Hayden Baillio:

That's time. I mean, yeah, that's time. Yeah, don't look at the clock.

Wendy Hurst:

60 seconds.

Hayden Baillio:

Whatever. Well, I forgot we were doing lightning fill in the blank today. So I wanted to ask you, since it looks like you might read a little bit. Alejandro, I want to know, do you have a book, a certain book, if you had one book maybe on the shelf behind you that you would recommend to anybody or just one book in your life that you're like, people should read this book.

Alejandro Cuba Ruiz:

I would go with a Traditional Pragmatic Programmer 2nd Edition, which have a foundational knowledge on how to become a good software programmer. It's super easy to read large letters. It's not overwhelming if you are not used to read and if you would like to find very, very valuable insight in each page of this 300 pages book. Staff Engineer's Path by Tanja Reli so this is a jewel. I had the recommendation to read this book from my college Alfredo Perez from the Angular Community Meetup and I think that I read this book in less than two months. It's so insightful it doesn't matter what point in your career you are. But if you would like to stay in the individual contributor path and not jumping directly to managerial roles, this book, the Staff Engineer's Path, is probably one of the most insightful reads that you can find. It's going to age well.

Alejandro Cuba Ruiz:

I mean it's very recent. I think it's two years old, something like that. But it's definitely going to age well.

Hayden Baillio:

Nice. Thanks. I have a lot of books about.

Alejandro Cuba Ruiz:

Science fiction and national parks.

Wendy Hurst:

Those look interesting too.

Hayden Baillio:

Yeah, those are interesting. No doubt. I'll try to link those in the show notes for this podcast though, so anybody who wants to explore them can. My last question for you, Alejandro, is a question that I asked everybody so far and it is if you could just send a one word comment and you could push that comment to every maintainer and contributor to Open Source and it would had one word, what would.

Alejandro Cuba Ruiz:

That word be visual consistency. I mean, it's two words, but you're gonna allow it just consistency because it's more predictable. Doesn't matter if you are using a visual language or a consistent code base or coding practice. If you write something that is predictable and if you generate predictable components exposed to the users, you're probably going to be in a good standing. And people that work with your products maybe working with you are probably going to also directly benefit from that.

Hayden Baillio:

I love that consistency. Yeah, that's huge. And Alejandro, thank you so much for coming on the show today. Truly, it's been a really, really great episode. Wendy, thank you for being my ride or die.

Wendy Hurst:

I got you.

Hayden Baillio:

I know, I know. And. And thank you. Thank you for watching this far and thank you for listening this long, and we appreciate each and every one of you. Please share this just with another developer or person in your tech community that you think might get some insight from it and continue to be the tech. The hero of your tech world. There you go. I said it right.

Hayden Baillio:

And I can't wait to see you on the next episode. Thanks again, Alejandro, and we'll see you around.

Alejandro Cuba Ruiz:

Thank you.

Hayden Baillio:

Bye. Y'all.

Alejandro Cuba Ruiz:

Sa.

HOSTS
Wendy Hurst
Hayden Baillio
GUEST
Alejandro Cuba Ruiz
Don't be afraid of math or the foundational principles of logic. Because regardless if you use it heavily in your day to day programming practice, it evolves your ability to face problems significantly.