Back to overview

Epic Image Optimization with Andre Landgraf

Kent chats with Andre Landgraf about his journey as a web developer, his passion for community building, and his upcoming talk at Epic Web Conf on image optimization. Andre shares insights from organizing All Things Web, a Bay Area meetup that fosters discussions on modern web development. They also discuss his experiences at LinkedIn, his love for Remix, and the lessons learned from building a custom image optimization pipeline. Andre’s talk will dive into the trade-offs of using third-party services versus rolling your own solution, helping developers understand the fundamentals of image optimization and why it’s worth exploring.

Andre Landgraf joins Kent to discuss his talk at Epic Web Conf, Epic Image Optimization. In this conversation, they explore the challenges and trade-offs of optimizing images for the web, particularly when handling large numbers of event photos or user-generated content. Andre shares how building his own image optimization pipeline gave him a deeper understanding of the process, allowing him to make more informed decisions when choosing external services.

Kent and Andre also discuss:

  • The evolution of All Things Web, a meetup Andre organizes in the Bay Area.
  • The importance of community in web development and how in-person meetups have shaped his career.
  • His experience working with Ember at LinkedIn and his upcoming career shift.
  • Why diving deep into a problem—like image optimization—makes you a better engineer.
  • How Epic Web Conf has become a must-attend event for those passionate about web technologies.

Andre brings a wealth of experience and enthusiasm to the conversation, making this episode a must-listen for anyone looking to level up their approach to image handling in modern web applications.

Watch this episode.

Meet Andre at Epic Web Conf.

Guests

Andre Landgraf
Andre Landgraf

Transcript

Kent C. Dodds (00:01.167)
Hey everyone, I'm so excited to be joined by my friend Andre Lundgraff. How are you Andre?

Andre Landgraf (00:06.584)
Hello, I'm doing great, thanks.

Kent C. Dodds (00:08.981)
Awesome, awesome, it's super great to see you here. I think the first time that we started interacting was around remix time when remix came out and then we met in person. Was it the first remix conf? Did you come to the first year? Yeah, I think that was the first time we met. Yeah.

Andre Landgraf (00:26.062)
I think that was the... Yeah, for sure. Yeah. I've been to both Remix conferences and then Epic Web Comp last year.

Kent C. Dodds (00:33.293)
Yeah, yeah. That's like the biggest compliment to a conference organizer is when people come back. Like it wasn't so bad, I guess, that they wanted to come again. So thank you so much for coming and now speaking and I'm really excited to talk with you about your talk Epic Image Optimization. I think that is gonna be sweet. But before we get into that, I want people to get to know you a little bit. So can you give us an intro to yourself?

Andre Landgraf (00:41.058)
Yep.

Andre Landgraf (00:58.584)
Mm-hmm.

Yeah, of course. So I'm from Germany. I've been living in the Bay Area, close to San Francisco for the last, I think almost like three and a half years now have been working for LinkedIn as a senior software engineer, mostly doing web stuff. And for the last two years, I've been organizing the remix meetups here in the area, had a lot of fun, like hanging out with the community. And now we have been rebranding us to All Things Web last year.

I have been very consistent doing at least one meetup per month and it has been a lot of fun, very rewarding. Other than that in my free time, I play D &D with my friends and I'm a big gamer.

Kent C. Dodds (01:38.291)
Okay, awesome. I didn't realize you were D &D and gaming into that. So that's cool. Yeah, I wanted to ask you about the All Things Web experience. what it looks like from what I can tell from the website, you don't have like one place that you go every time, but you kind of hop around to different offices. And I'm guessing like those different offices are sponsoring the food and everything as well.

That sounds like a really smart idea. How has that been going?

Andre Landgraf (02:11.81)
Yeah, it started out of necessity because we didn't have an office we could go to in San Francisco. then we started actually with a lot of bar hopping. Like we went to like chicken and waffle places, but it turns out like people aren't super comfortable to join a crowd of strangers as much in a bar. And then we also wanted some talk. So we tried to find speakers and then it was just like the logical next step. And there's a lot of really cool.

companies in the Bay area. So that have been very supportive, like hosting us a bunch, like entries and team marks have been very supportive of that.

Kent C. Dodds (02:45.403)
Hmm.

Kent C. Dodds (02:49.295)
That is awesome, yeah. I like that story because I think lots of people see the idea of organizing a meetup as being this really big, complicated, difficult thing to do. But really, when you're just getting started, it can be just like, let's meet up and.

have lunch together, or whatever. It can be a pretty simple thing to get started. And then yeah, you take the next logical step and continue to build on from there. And it can be really rewarding too. I guess, why don't you tell me? Has all things web been a rewarding thing for you? What have you seen come out of that?

Andre Landgraf (03:11.372)
Yeah. Yeah.

Andre Landgraf (03:19.926)
Exactly.

Andre Landgraf (03:29.454)
Yeah, absolutely. I mean, I think all you need to get started is at least one friend and then just hang out and invite other people to join you. Right. And if one person joins, great. You have a great night, have a good conversation. And if more people join, that's amazing as well. Right. And then you just go from there. And yeah, that's been so much fun. I love talking to people about web stuff and just like, what has been new? Like, where do you deploy your apps? What's your experience with that? And it's just like, you learn so much from different experiences. You wouldn't be able to try out all the things yourself. Right. So it's really great to get like.

Feedpack and input from other people. Yeah, that kind of stuff.

Kent C. Dodds (04:02.937)
Yeah, yeah, I love that. That is awesome. You also mentioned that you work at LinkedIn. Can you give us a little bit more insight on what you work on at LinkedIn, what tools are you using, that sort of thing?

Andre Landgraf (04:14.892)
Yeah. So at LinkedIn, I work on the campaign manager app, which is the ad platform. It is a very, very old, very, very big Ember app. So in my day job, I do mostly Ember work. Like one big task we did lately was like refactoring a bunch of stuff to TypeScript. But mostly it's consuming a bunch of different APIs from Java backends and then orchestrating them in our SPA. But actually this, I haven't told that a lot of people, but this week is actually my last week at LinkedIn.

Kent C. Dodds (04:19.705)
Hmm.

Kent C. Dodds (04:26.523)
Hmm.

Kent C. Dodds (04:40.441)
Hmm.

Andre Landgraf (04:45.002)
And I'm going to start a new opportunity next week, which I'm very, excited about.

Kent C. Dodds (04:45.09)
wow, okay.

Kent C. Dodds (04:50.479)
Can you tell us that or are you still zipped like lips are sealed on that?

Andre Landgraf (04:55.542)
I just want to keep it a little surprise for next week, but yeah, really pumped, really excited to do a little bit of a Curious Witch going into Death Aquavit, how you call this, like, Deathril kind of stuff. So yeah, pretty excited for that.

Kent C. Dodds (05:07.449)
Hmm. Well, I'm excited for you. I can't wait to hear about that. And when we are at the conference, that'll definitely be in place. So go talk to Andre and ask him, OK, what was it? What company did you end up at? Well, cool. So let's talk a little bit about actually the reason that you organize the event with All Things Web and also

Andre Landgraf (05:17.762)
Yep. Exactly.

Kent C. Dodds (05:33.563)
the reason that you keep coming back here to Utah to come to these events. Why is it so important for you to go to all the trouble to get people together?

Andre Landgraf (05:43.724)
Yeah, I think it's two things. So the first thing is I have a, just like a joy of talking to people. It's just like the community makes the job so much more fun. Like I'm a full-time front-end engineer, but just hanging out with people who have the same interest and just seeing their excitement or what they're trying out, what they're learning, right? Like seeing their journeys. That helps a lot getting your own motivation up, right? That kind of stuff is the most important thing. Just by being at

Kent C. Dodds (05:56.101)
Hmm.

Andre Landgraf (06:13.638)
RemixCon for the last two years and then Epic WebCon for now. It's just like over the years, if you meet the same people again, you really make good friendships, right? And then you're really excited to say the same people and you're like, I'm going again. Are you going again? Yes, I'm going again. Like, no, have to, Andre is going. I have to go. Right. Like it's just such a beautiful energy. It's like so cool to hang out with these people. And every year you also find new people, right? Like new people are coming that maybe haven't been there or you have just not had the chance to talk to them.

Kent C. Dodds (06:28.982)
Haha

Andre Landgraf (06:42.51)
And that's just amazing, right? Like that's why I'm going. That's why I have so much excitement for meetups, but also for conferences. Conferences are basically the same as meetups, which is like time 10, right? Or time 100. So like just more people, more time together, that kind of stuff. Yeah.

Kent C. Dodds (06:52.813)
huh.

Kent C. Dodds (06:57.497)
Yeah, well, you bring a really good positive energy to our community and to our conference. So I really appreciate you coming and also speaking about Epic image optimization. That's something that I think a lot of times we just want to throw it off to some service or maybe I remember years ago, I was doing a static build and like building all the images and it just took forever. And it's this big complicated thing.

Andre Landgraf (07:05.24)
Thank you.

Andre Landgraf (07:10.53)
Yeah.

Andre Landgraf (07:24.812)
Yeah.

Kent C. Dodds (07:27.227)
Can you give us a spoiler-free overview of what your talk is all about?

Andre Landgraf (07:33.26)
Yeah. So you pointed out that we have a website for our events, right? Like all things web.dev. And I started building this last year. And events have a lot of images, right? Like you want to show the images that you took during the event. There's always like some thumbnails and whatnot. And when building the website, you just have to decide where to host the images and how to optimize them, right? Like for good user experience, you need a good image optimization pipeline. But usually you would just pick a service, right? Like I think when I initially built out my blog, like

Kent C. Dodds (07:52.473)
Hmm.

Andre Landgraf (08:02.978)
years ago, I checked out your website and it was using, I think Cloudinary, right? And you had like this nice setup for it. And I looked at the code, copied some for my blog and then just use Cloudinary. But I never really understood much of what it's actually doing, right? Like I know obviously modern formats and resizing, but like not how it actually works. And I think a really great way to dive deep into something, get like a better intuition is just to build it yourself, even if it's not perfect, right? It's never going to be the same quality, obviously, but just I want to see how...

Kent C. Dodds (08:07.791)
Yeah.

Kent C. Dodds (08:17.296)
Yeah.

Andre Landgraf (08:32.782)
can I just have my own little endpoint that does the optimization? So I can just have my images maybe in the public folder in my remix app, right? Or if I have a CDN that doesn't optimize them, do I need like this really fancy cross service pipeline or can I have just built something simple? And that's how it started. then, yeah, just learned a lot of stuff on the way that I think is really cool to share. Maybe just the excitement to like try out, something yourself to learn, but also obviously the fun parts about.

Kent C. Dodds (08:37.754)
Yeah.

Kent C. Dodds (08:41.136)
Hmm.

Kent C. Dodds (08:50.937)
Hmm.

Andre Landgraf (09:01.39)
building an image optimizer.

Kent C. Dodds (09:03.989)
I think it's great. I 100 % agree with you. One of the first pieces of advice I got when I was learning JavaScript was from Merrick Christensen. And he said, this was back when before Lodash was a thing. said, one of the best things you can do to learn JavaScript is to re-implement underscore JS without, know, like just re-implement all those functions and stuff. And of course, this is also before we had lots of the methods that underscore now or that underscore had at the time.

Andre Landgraf (09:22.222)
Yeah.

Andre Landgraf (09:32.802)
Yeah.

Kent C. Dodds (09:32.885)
And I never actually did that, but I stand by it as being a really, really great way to upscale your ability. Even if you're not going to ship it to production, just doing it can help a lot. And maybe you do ship it to production and you could save yourself a ton of money.

Andre Landgraf (09:48.006)
Yeah, exactly. If you look at, even if you want to compare different like image optimization services, right. And you look through the documentation and if you haven't built it yourself or at least like played around with it, then it's really hard to judge if it's like a good API or like, if this is necessary, do I need this? Right. And then if you actually try it out yourself, then you at least like gain some opinions, maybe some tastes, and then you can make a better decision. yeah, 100 % agree.

Kent C. Dodds (10:11.555)
Yeah, very cool. So we have extended breaks at Epic WebConf. You'll remember like it's half hour long. It's not like we have multiple tracks you need to get to. So plenty of time to talk with people. What is something that like a topic that gets you really excited and talking that people could come up and talk with you about?

Andre Landgraf (10:30.594)
Yeah, I'm still a huge remix fan. So if you're interested in trying out remix or learning about remix or you want to share your experience about remix, I'm very excited to talk to you. But in general, anything related to all things web is what I'm passionate about. So I appreciate talking to people from, yeah, about any topic really. Just tell me your story.

Kent C. Dodds (10:50.817)
Awesome. Andrea is very approachable people, so go and talk to him. Plenty of cool things to chat about. There will be lots of cool people to talk with too. And so yeah, I'm really looking forward to that. I have one more question for you, and that is, what are your thoughts around the rebrand with Remix and React Router, since you mentioned Remix, and what are you looking forward to in the future?

Andre Landgraf (11:19.554)
Yeah, I've actually not migrated yet. I'm still on Remix. So am I allowed to still call it Remix? No, I mean, it makes sense, right? Like you want to consolidate, you want to make sure that you get as many people as possible into the future. I think that is all makes strategic wise a lot of sense. I still think for me, Remix has just been a very important part of my development career as like learning, right? Like I

been on React, tried to get really good at React and then through remix, I focused more on web standards. So I will always probably have a hard time not calling it remix. Just for me, it's like more of like, I don't know, like a feeling or an ideology, right? But yeah, no, totally excited to see where it goes. Also, I'm actually even more excited about what the new stuff they're cooking is and hope I can get a little bit out of them at the conference.

Kent C. Dodds (12:06.789)
Yeah.

Yes, yes. Yeah. Ryan will be there. He'll be speaking. Maybe, and Brooks will be there. Maybe we can get Michael to come and some of the other members of the team. Cause I would love to talk with them about, okay. I know like now we've got RSCs in react right. They should have that by then. And like we've got, you know, some of these things kind of nailed down. where are we at with reverb and, and the new version of remakes? I'm excited about that too.

Andre Landgraf (12:26.701)
Yeah.

Andre Landgraf (12:33.204)
Exactly. Yeah. Awesome.

Kent C. Dodds (12:37.307)
So hey, Andre, thank you so much for giving us some of your time to get to know you a little bit. Really looking forward to seeing you at the conference in just a couple months. So we'll see you in Utah soon.

Andre Landgraf (12:48.524)
Yeah, super excited for it. See you there.

Kent C. Dodds (12:50.767)
Bye everyone.

Sweet episode right?

You will love this one too.

See all episodes

Featured episode

JavaScript: The Origin Story with Annie Sexton

Season 6 Episode 21 — 09:14
Annie Sexton