The One Where We Geek Out on Mobile App Observability with Austin Emmons of Embrace Mobile
Description
About our guest:
Austin Emmons is an iOS Developer at Embrace Mobile, a company that works on Observability for mobile applications and beyond. Austin has been developing for Apple platforms since the early iOS days. Outside of tech, he enjoys mountain biking, rock climbing, and taking his dog, Nacho, on new adventures.
Find our guest on:
Find us on:
- All of our social channels are on bento.me/geekingout
- All of Adriana's social channels are on bento.me/adrianamvillela
Show notes:
- Objective-C
- Swift
- Libby
- React Native
- Unity (Game Engine)
- OpenTelemetry Swift
- OpenTelemetry Semantic Conventions
- Join CNCF Slack
- OTel Client Side Telemetry SIG channel on CNCF Slack
- OTel Android SIG channel on CNCF Slack
- OTel Swift SIG channel on CNCF Slack
- Nacho Bonafonte (Swift SIG maintainer)
- OTel End User SIG channel on CNCF Slack
Additional notes:
Transcript:
ADRIANA: Hey, fellow geeks! Welcome to Geeking out, the podcast about all geeky aspects of software delivery, DevOps, Observability, reliability, and everything in between. I'm your host, Adriana Villela, coming to you from Toronto, Canada. And geeking out with me today, I have Austin Emmons. Welcome, Austin.
AUSTIN: How's it going?
ADRIANA: Not bad. Super happy to have you here.
AUSTIN: Happy to be here. Thanks for having me.
ADRIANA: And where are you calling from?
AUSTIN: I'm based in Pittsburgh, Pennsylvania.
ADRIANA: Awesome. Well, are you ready for the lightning round questions?
AUSTIN: Yeah, let's do it.
ADRIANA: Okay, first question. Are you a lefty or a righty?
AUSTIN: Righty.
ADRIANA: Okay. Do you prefer iPhone or Android?
AUSTIN: I'm an iOS developer, so iPhone. I get tempted every, every time Google comes out with a new Pixel. I'm definitely tempted, but I have to say iPhone.
ADRIANA: Cool. Do you prefer Mac, Linux, or Windows?
AUSTIN: Mac my entire life. And I got made fun of a lot in college when I showed up to computer science with a MacBook and I was just like, well, I'm, I'm, I'm dual booting Windows when I need to, but I would get out of that as soon as possible because I just, I would. Yeah, I had to hack together a lot of stuff just to get Java compiling and everything. And that was, that was fun. But yeah, definitely Mac.
ADRIANA: Oh, damn, that's so cool. Yeah, I don't know, like, when I was in university, if there was like any. Anyone I ever saw with, actually. So when I was in school, there were very few of us with laptops and certainly not, I don't know of anybody who had a Mac at the time because I think they were like, also so expensive.
AUSTIN: Yeah, yeah, no, I, I cut a lot of lawns the summers prior to save up for the first Mac. And when I say hack together some stuff, I just had to, you know, look on the other side of the Internet, I guess, to figure out the. The instructions did not come in the course syllabus like it did for everybody else.
ADRIANA: Yeah, yeah, yeah, that's so cool. Okay, next question. What's your favorite programming language?
AUSTIN: Swift. I really like. It's, it's, it's strict, very strict, but it's also very expressive. And if I need to write something quick or for some personal projects, Ruby would be my, my go-to. I've had a prior life as a Rails developer where I learned a lot of the server side stuff and so Ruby really, you know, opened my eyes to that. Yeah. And yeah, I find like throughout my career it's either like you're a Python shop or a Ruby shop. Somehow I've thread the needle to lean on the Ruby side of things, and now I'm at a Python shop. But I'm an iOS developer, so I don't have to focus on it too much.
ADRIANA: Oh, that's so interesting. It's funny, I've had quite a few Ruby folks on this podcast and the thing that I always find with the Ruby folks is that they really, really love Ruby, which I think it's so cool. I think it speaks to the community.
AUSTIN: It's a. It's just like, it's just simple to me. I don't know, like it just clicks of, okay, that makes sense. And it's maybe not as powerful, but the community for sure is there. Like, it's amazing. And then when you want to tear open somebody's gem or somebody's work, you. You can. And so, yes, it's open source to the fullest, I think, which is awesome.
ADRIANA: That's very cool. It's funny, I was talking to someone because I. You. You were talking about like, you know, as Ruby being your go to if you want to like, throw something together quickly. And I actually had a very similar conversation with someone last week about this. Also interviewing for the podcast and she was saying like, you know, she knows a bunch of languages, but like the one that she always comes home to is, is Ruby. So I thought that was interesting and it's kind of cool hearing it from two people now.
AUSTIN: Yeah, I mean, recommend it to anybody that's trying either getting into programming or even if you've been a seasoned programmer, just try it out. It'll change how you think about programming. But that's any language. If you try out a new. That's what I love about kind of taste testing new languages. It's just like, okay, how do you do a for loop? Even that could be so different. And it's still for loop, but it's just good enough. And Ruby, for me, it was actually the innumerable like package or, you know, they have so many tiny little algorithms or methods that you can use just to map and all those. It's like that was a whole new introduction to me of like, oh, one, I get these for free. That's awesome. One. And then again another, I can chain them together and really do what I need to. And now I go to other languages and I. That's like the first thing I ask for. Look at, it's like, okay, now I need to get back into that more functional type of programming.
ADRIANA: Right.
AUSTIN: Even though Ruby is. Is very object oriented. So, yeah, it's, it's a good language.
ADRIANA: Cool. Yeah. And to what you were saying earlier too, I think it's interesting. Like, I think one of my favorite things about like tackling new languages is that compare and contrast. Right. Because you already, you have the experience like of a base language and it's always so interesting to see how different languages approach different things and how they have their nuances and, you know, if they're more verbose than other languages you've worked with and whatnot.
AUSTIN: Yeah, I, I mean for most of my career I actually had to straddle iOS and Android and that was very similar. Where it wasn't just I'm working in two different languages and I have to compare and contrast. Java at that point and Objective-C on the iOS side. It was actually the platforms themselves. It's like, okay, how do I show full screen content? You know, iOS you call it a view controller. Android, you call it an activity at that point. You still can, but they've kind of shifted the thinking to fragments and, and compose now. And so it's like you had to stay along and be up to date with every change that the platform developers were making on top of the changes of the language. And I would always implement the same feature two or three times where it's like, implement it for iOS first. Okay, that works. Have to implement it for Android. It's the same feature but I have to do it slightly differently. But I did it in a way that I have this experience that I like a little more. Okay, what can I take from that Android side and actually come back to my iOS implementation and improve that a little bit. And if you have the time, that's really beneficial because it just stretches your brain out and yeah, I couldn't recommend it enough.
ADRIANA: That's awesome. That's so cool. So I'm, I think I know the answer, but what, what do you prefer developing on more iOS or Android?
AUSTIN: You know, I recently had, it's iOS but I recently had some work to do. It's probably a year, year and a half ago in Kotlin on Android and