James (00:08): Frank is episode one 91 which you know what that means. Frank (00:13): Uh, no, it's actually doesn't mean anything. It's at a prime number. It, it kinda smells like a prime number. It is a prime day. Is that what we're doing? James (00:21): No, it's not. Amazon prime day is one 91 a prime number and Google says, sorry, duck, duck, go. Says it is the natural number following one 90 and proceeding. That's the Wikipedia page. Literally says that it's the natural number following one 99 it's fine. It's prime. Okay, good, good. I was going to say there was a point in my life where I knew what a natural number was. Great. This is cool. Check this out. It says in mathematics one 91 is an odd number centered 19 going on number deficiency number as one is less than one 91 it's a lazy caterer, an ominous number, a prime number. A is a square. Free number is a fab at number is an, an [inaudible] number and is the smallest positive integer D such that the imaginary quadric field Q, which is the prime of negative D has class number equal to 13. There's your one 91 facts Frank (01:24): class number 13, baby. Uh, that's, that's auspicious. That's about as auspicious as a kids. Um, but I think you were leading up to something else and I think that it's my fault because last week we punted a little bit. We were supposed to have lightning rounds last week, but I budged in and said, James, I've released an app, I want to do an episode about my app. Uh, so I owe everyone a lightning talks round and here we go with episode one 91, the auspicious one 91. James (01:55): That's crazy. And we had a whole week since we recorded last week to ask people for their lightning topics. And we did it five minutes before we recorded it, but we got some amazing entries from Jeremy Sinclair, a,L ,L ,L , Eric Loeb, Dow Brad, Danny Ackerman, and of course a bunch of great people in our discord chat, which, you know, we're not very active on, but we love going in there once every 10 episodes and looking at lightning topics. It helps. And if we actually have another lightning topic like round from Danny just on electric topics for next week, I'm very excited about that. Yeah. Frank (02:31): Uh, actually we were pretty quick and just saying, Hey, we're going to record in about five minutes. Uh, please send us your topics. But y'all came through, these are some great topic ideas came up. We had to pick and choose between all the wonderful ideas. I hope you like our selection. And uh, I figured we've been doing a lot of electronics episodes, so w w we'll wait to do that one. Not this week. James (02:53): Yeah, not this week. Well, let's kick it off. This one is near and dear to my heart, which is Yammel yet another markdown language, Frank (03:03): Mark up language, Mark, whatever. [inaudible] whatever. Who cares? Yeah. Yeah. Mo, it's another song, another XML, which is another text file. Oh, you know what? It doesn't even count. It's Yammel. Yammel ain't markup language. That's what it is. Oh, well it's you. Nice. Okay, good. With a click Googling, so I don't actually, I think I wanted to say I'm lucky I don't deal with Yammel, but at the same time I liked the principles of Yammel like Mark down. I think it's trying to be a very terse syntax and when you do a lot of Jason and XML, you can kind of appreciate the terse syntax. I think where Jamo goes wrong is when it's so terse that it's hard to see the structure of the files or everyone puts their configurations into Jamo files and they become ungodly scripting files and they've just been abused to weird extent, but I don't think that's really Yamhill's fault. That's our fault. Yeah. I mean James (04:05): when, when people say, Oh, talk about Yammel. I guess the context is what part of Yammel? Because I could comment on Yammer like, Oh cool. Let's say it's a markup language. I also like Mark down languages and, and, and there's a bunch of libraries and a bunch of languages. So like if you want to a Mark up language then this is one that a lot of things use. But I think that probably people are curious for me on my end, what I'm curious about is in the kind of dev ops a world Yammel taking over the world with Azure dev ops with bit rise with get hub actions and there being Yamileth gambles everywhere. Frank (04:50): Yeah. Um, that, that's my only exposure to it is in dev ops. I've otherwise avoided it. I think it's entered into the web dev world too. They got tired of Jason, so a lot of ammo out there. Um, I'm mostly okay with it. I um, I generally avoid it. I tend to use web UIs, but in the case of get hub actions, I edit the emo file by hand, like a hacker and I find it's mostly tolerable, but I get really lost in whether something is like dash key name colon value or there's all sorts of escape things to do, like multi-line stuff. I can never tell if I'm making an array or a dictionary, like a dictionary of an array or an array of dictionary, I would not know how to do either one of those and I would just run away in fear. Oh, you know, why do they have those like schema generators? You know how you can like dumping a bunch of Jason and they generate like some C sharp code for you. Do they have those for emo? I don't know. I'd have to assume they would in general. Sort of like James (05:58): a C sharp did Jason file. You could just plop it in there. That'd be nifty. Uh, I, you know, I guess I don't really see the advantage of, of using Yamilet as a data structure though. I mean, Jason is pretty minimal. I don't know how even more minimal you need to get, you might as well go binary at that point with like a GRPC call it, I don't think you're winning anything over that. I believe the idea though of toy you're saying is that you are really defining these flows in code, uh, in code. And I think that's important as a declarative way of doing it compared to the the gooey interface. Now I I hate, I hate yam. I'll just, I'm just not a fan of Yammel now that said I don't, I don't mind the gamble. I guess what I do is I hate the AML as being the only input mechanism for generating a pipeline and that is because of what you just said. James (06:54): I don't know the syntax. I know, I don't know to use this versus this version. Your inputs, your tabs, your, your spaces, your things. What I want is a gooey version that generates the markdown that I can either edit the Yammel cause sometimes it's nice to have the ammo checked into source code, but also have the gooey editor side by side that are in sync with it because checking into source code means that if you're in a branch you can tweak it and then kick off your pipeline. That's very, very nice. That's my favorite part of it. My actual issue it is, is the creation of the Yammel without knowing anything about every single different step. Frank (07:37): Yeah, but it's better than all those quotes. And try and remember that the last comma is not allowed. And Jason, I debate whether remembering whether dashes are a or dictionaries with trying to remember that comma, but you nailed it. Uh, gooeys that generate or operate on human readable text files are pretty much the epitome of software development tools. Cause then we get best of both worlds. We get get and we get the lease. Perfect. James (08:03): Perfect. Well on that topic, get gooey versus get CLI for merge conflicts. Go Frank (08:09): bam. Okay. So this came up recently with me. Um, I'm merge conflict myself and this is, you know, a single dev. How do you get merge conflicts? Well, James storyboards, these are uneditable files and so I ran into the unfortunate case where most merge conflicts I think, um, get hubs pretty good at uh, handling. When you have a PR and someone's not keeping it in sync with master or whatever, they're trying to push it up to a get hub does a great job of doing that quick little merge for you so you don't have to worry about it. But every so often that merge conflicts comes in and I, I fail every time. I wish I had a good tool for this. And I know other people have good tools, but specifically for me, I use the open program that's built into Mac operating system. It's a really gorgeous diffing tool. And with that I can usually pick out, uh, what things I want to do to a file. But honestly, I need to up my game here. I need a better, uh, merge conflict resolution diffing tool. James (09:12): So man, what did I, I used to use wind merge, I think when merge. I'm pretty sure that that is when I used to do TFS. I envision Wells today. You could do it when merge. Please be still a thing. Oh, it is when merge.org this used to be my merging tool of choice. Now I don't actually, I assume it works with Gaye and all the things inside of it, but inside of visual studio you could say use and get merge as my merging to one. I use it as a cannon for many a moons, a knew as quite fantastical and merge. It's a great wind forms looking application. Uh, and I don't know how when the last time it was updated. Oh, not too bad. 2019. That's cool. Uh, I really enjoyed this. I will say now Frank (10:00): I do all of my diffing in the browser. Oh, um, you mean get hub or you mean something else? James (10:11): Get a browser. Just when you, when there's, there's two options here. If get hub can, there's three things that happens. You're right. If get up Kimmeridge it does a pretty good job. If it can't, it gives you the option to, um, resolve your conflicts in browser, which is very nice. There's just an editable side by side. Very, very good. Shows you the different inputs there. If I can't do it there, for some reason, somehow at times get hub is like I can't, it's too far gone, too far gone. So then I go into visual studio, I pull down, run the commands that get hub tells me do to do, and then I open notepad. I just edit it, right notepad. Just like an animal sometimes vs code. Uh, and then you just have to know the, the different heads or whatnot that you're putting it. But that's literally how I use, I don't use geeky, I don't use getting CLI. I use either the browser or, or um, or, or, or notepad. Frank (11:05): Okay. Yeah, that's fair. That's fair. Um, that browser get, is that browser diff? It's pretty good. But I noticed it had one big problem and this came up with the storyboard. I don't want to go line by line, hand emerging a storyboard file. I want two giant buttons at the top except mine, except there's a, you know, whatever except the push except whatever the established one. And for some reason the get hub UI didn't have those two buttons. They seem like pretty obvious buttons to me. And so I discovered get you learn something every day. So here, here's my public PSA for the day. Get checkout dash dash hours versus get checkout, dash dash there's, so if you're ever in a rebase or you're trying to do some kind of merge or something, you can always use those to just accept or throw away a file, whole cloth. And this works out great when you're doing like images or storyboard or giant XML files that aren't yam on, just aren't merging that well. So those are my new commands of the week. Get checkout hours and get checkout. There's love. I'm nice. That's pretty cool. Yeah. I I um, I honestly think that James (12:26): you would probably like this wind merge application. I don't think it's on Mac. It is open source, so that's really cool. Uh, it really is exactly what you want because it's, it's like next line, next line except the left to right. It's once you do it once, it's pretty fantastical, but I haven't used it in many, many years, but Frank (12:44): it's a great note. I forgot to say also you said vs code and I love vs codes merge conflict stuff actually. So the stuff built into them, uh, by default, uh, just hit code space. Scott hit enter and it comes up, it reads your get sees what state the uh, merge is in. Oh, I guess I've never used it. I guess. I've never done that. Really good. Yeah, try it out. Okay. Try it out. I, in fact, you know, I'm actually looking at the get gooeys. There's a whole, there's like so many web Cline's source street tortoise, Casey's tortoise get back in the day. There's all these things in here I guess. Yeah. I guess my guilty is though is the website. Oh, there's a whole a mobile app. [inaudible] several mobile apps. Yeah. Wow. Bananas. Yeah. This is why I said I gotta up my game a little bit because I just haven't been paying attention to the state of the art. Frank (13:37): What's out there like today? Just don't have any conflicts, problem solve. Um, no conflicts. Well, that's a great segue into our next topic, James. Let's talk about blazer blazer. Everyone's favorite new. Uh, I almost had web framework. I'm just going to say UI framework because, Oh dear my dear me, it's taking over the.net world. You can't go talk to anyone without hearing the words. So we're going to talk about it for five minutes. Go Jay, and let's talk about it. Well, the question is, which part? Which blazer do you want to talk about? The stable stuff or the soon to be stable stuff or the experimental stuff. I'll be so honest, the things started out in such a funny way that I haven't kept track of what is stable and what's not. So how about you just give us a quick rundown on what is stable and what's not. So blazer, it's a single James (14:31): page app framework for your, your asp.net core applications. That's really what it is, right? And it leverages razor files, which is a HTML plus razor syntax to do inline code in a single file or multiple files you ever, you want. And it has a component so you can have components that are composable, things like that. Um, which is very nice. You can have classes, you can use your CSS if you're a web developer. Everything I just said makes sense. If you're a Xamarin developer and never did web development like myself, then everything is very confusing. Frank (15:07): Um, because it's web. Um, if I may interject, go ahead. I think that although it is web, it is very much HTML and very much old PHP kind of stuff. Uh, it does have this wonderful component architecture that you mentioned, which creates this, uh, react style, functional style of programming where you have a source of data, it generates a UI and each time you change that data, it changes the UI that or it regenerates the UI. But it's smarter than that and only, you know, sends over the Delta. So it's actually efficient. So it's just a nice clean way to design apps. It's, it's a good architecture. James (15:43): It's very, very cool. I really, really like it. And in fact, coming from the mobile side to website, it's, it's much more friendlier to me than maybe going into an a full MVC architecture or something completely foreign like react or view or something like [inaudible] Frank (16:00): ah, uh, or angular. Uh, now I will say that if we're not angular, I won't have that with chains. I won't allow you to friends. Don't let friends program angular. Oh gosh. James (16:11): Uh, so what stable today as of February, um, when we're recording this or March when this comes out would be blazer server, which means that your, your seat. So the whole idea of blazer is that you can run C sharp and just write C sharp and not have to write JavaScript. You can interrupt if you need to, but the goal is that you can write one plus one equals two and it will output and it'll run your done code in the, in the browser of sorts in many ways. So blazer server will run your code, but it executes your a C sharp.net code on the server and in handles UI DIFs over signal are basically does a chat that way that is stable. So if you were building an application and it does scale very well and you know, you don't know how it has magical shadow Dommy things or whatever. I don't know how it works. Magic, not a web developer. Um, you can do that. I think that is for any sort of application. And then there is blazer Frank (17:13): WebAssembly. Okay. Interject. Yeah, I would just like to give my props there as the author of a, another UI library that does a similar little trick, uh, it's a fantastic way to program it. It gives a real native feel to programming, um, otherwise really annoying web connection. So I'm a big fan of that aspect of it too. Um, yeah, the, the, the client server model should be just a little private communications channel, not sending HTML every time someone clicks a button. Yeah, I don't know. James (17:46): Sure, sure. How everything works behind the scenes, but it all just ma, it just magically works. Right? The Internet's built on sockets. So, uh, then there's blazer WebAssembly which is different. This is running everything in the browser. You can be disconnected from the internet and nothing's required at all. And that's running in in mano interpreter, right. Frank (18:11): For now. But this AOT is coming. So the same technology we use for iPhones will be coming so that you can have smaller and faster apps too. But honestly, you're just building a crud app. It doesn't really matter. Just run with the interpreter. James (18:28): And I, uh, this is what I just shipped. I shipped a admin application for the Hanselman forms, a mobile app. So it allows me to, um, like upload photos to blob storage. It allows me to add an update. Do crowd operations literally on featured articles for the application. And I wanted that to use Twitter authentication and does that all from web assembling. I want to know server costs. That's my big goal of this. Everything's Azure functions and everything's web assembly and mobile apps. So that's my architecture. Frank (18:57): Congratulations there. That's pretty cool because now we're treading into like, you're almost a native app. It's kind of a fun area to have. Um, these web assembly apps, it's really crossing the line of what kind of app are you in? The question doesn't even make any sense anymore and I'll stop asking it, I guess. Yeah, I mean, James (19:19): cool part here is like, if that's your use case, there's going to be definitely some restrictions on what web assembly can do or can't do. I assume there's some magical thing you can interpret, right? Um, there's that already. Like, you know, where do you put your tokens and security stuff? I get what you don't want. Yeah. There's some things to think about based on those two architectures, but for me it made a lot of sense to do it in the web assembly part. Frank (19:46): Yeah, absolutely. Um, I think it's a fantastic technology. Again, as a developer of a similar library, it's fantastic. Speaking of fantastic technologies that I know absolutely nothing about James, what's Android X? I, I've heard this term, people keep talking about it. Xamarin just announced support for it or something. I don't know. Catch up please. I'm glad that Frank here has kept us on on time cause I could have talked about bleeding. Probably need to do a full episode on blazer and have somebody on. Yeah, yeah, we should. We should. I've actually talked about it in the past. I've said let's do a blazer episode. You're like, it's too big. I'm like, well then we gotta do it. Okay. Alright, so Android X, Android X, Android X. OK. So you know Android support libraries. Yes. No, maybe so yes, I did test them because I was trying to do a new build of ice circuit for Android recently and none of those things are working and I probably need your help holding my hand again, James (20:45): probably. So Andrew's support libraries are everyone's pain in the behind, but they enable new features of Android to work on older devices. It's very, very genius, but there's a lot of sort of restrictions. There's versions of them you need to be building and compiling. It's a specific version of Android, blah, blah, blah, blah, blah. So Android acts, part of the Android jetpacks um, series Android acts says let's get rid of support libraries. Hmm, that sounds like a good idea, right Frank? Okay, you had me at get rid of, but let's get rid of them, but replace them with a hundred different libraries and Android X. So let's take the existing ones and let's split them up into even smaller, minuscule, smaller packages. Not a hundred mailers. 50. Frank (21:32): Oh no, they're doing this again. They did this before. This is the last time my support libraries got messed up when they split a cup of them into a few pieces. So they just exploded into a billion. Are they just like, do they see James (21:45): Ruby and JavaScript and they're like, I'm jealous. I need more packages. We need more packages? Well you hit the nail on the head right there because the problem is they were splitting them. They were combining everything into mega packages. So they split them based on a version of Android they support. And then at some point that didn't make any sense. And they're really like, why are we shipping these as bundle packs? Let's split every feature into its own library, which kind of makes sense. Kinda. Okay. Except for casual Frank (22:17): programmers that don't know what stupid ontology someone came up with for grouping things this time, you know, you gotta put something into a category, you're going to come up with some idiotic decision that makes sense on that day and is not going to make sense in five days. Don't put things in boxes. People keep them out of the boxes. James (22:36): So they, they have split them all up and there's a bunch of them that, that, that do make sense. They make logical sounds like, here's the browser one, here's this other one, blah, blah, blah. Um, the difference is that all the namespaces are different. So there's like problems with, you know, you got backwards compatibility. What if older libraries are using support libraries, but you've upgraded Android acts and you'll need to upgrade Andrew docs because they're no longer updating support libraries and they're all moving to Android acts. So, Frank (23:03): okay, hold on. Sorry. If I have an ancient old Android phone, maybe like 4.2 isn't that like a classic old, ancient version? Um, can that run Android X James (23:16): apps? So Android X I believe has a minimum, maybe four top four, I don't know. It's like 99% of all phones probably at this point back in the four range. It's way back then. I'm pretty sure it's either. Yeah, I'm pretty sure it is. Yeah. Wow. Okay. So they are going far back. Okay. Yup. And it's really just the existing functionality but split up. So they did that. Now Android studio for Java and Collin developers has an auto migrate tool and like there's a bunch of stuff you need to change up and down and things that um, the Xamarin team also has a migration tool. What the cool part that the Xamarin team did is that you can add this migration package. And what it will do is it will look at any of your existing, uh, new get dependencies. And without you updating your code or your packages, it will swizzle. James (24:09): I'm ally, I'm just going to use the word swizzle cause I like, I love, I love sweat. Well we just have with lightning topic on swindling, but it's swizzles your source code and it updates all of your old code at build time with the new namespaces. Like it's crazy. Um, so if you don't want to migrate and change like your namespace, it'll just do it for you at build time until you actually do it. And that's nice because let's say you're using Facebook, but Facebook has an updated their STK to target Android X. It will work seamlessly. Still. It's, it's magic. It's, I have no idea how they did it, but it's magic. Frank (24:47): Oh, interesting. Um, do the same new gets work with Android X and normal, um, Xamarin, Android. So like a new guy could come in but perhaps not actually support Android X. James (24:59): yeah. So that's what this migration swindling does. Frank (25:02): Gotcha. Interesting. Okay. That's a little scary. I think I would force myself to upgrade to Android X to make sure I don't have to deal with that sling stuff. James (25:11): Yeah, you have a long ways to do it. So Xamarin forms and Xamarin essentials. Um, right now [inaudible] look, I don't know when this episode is coming out, but it may already be out, but four dot five and one dot five we'll basically have an Android X dependency and use the migration tool based on like what you're compiling against and, and what we're saying is like, Hey, it's a good time to start migrating and then all new templates and everything, we'll just do it for use of you file new. It'll just work out of the box. But for like the next year it's going to kind of stink because you might have a libraries and are they going to update and blah blah blah. So unfortunately this isn't a, this is an Android everybody issue. And um, thanks Google. So what are you going Frank (25:56): companies love renaming things like jeepers creepers, people stability. It's all I want. And things. Speaking of stability, let's talk about.net five James, something new and shiny. There is no stability in our careers. Our industry is terrible squirrel. It's ever evolving. Frank. It is what it is. I'm enthusiastic. I'm positive. Dot net five I am especially interested in dotnet five because I was telling the story of my app last week and I mentioned that I ran into this piece of code that wasn't working with mono while I was told by all the motto, devs, you just wait, Frank Kruger until.net five and then and then all this code will magically work, so that peaked my interest. I said, well maybe there is something to this.net five are you at all interested in that, James? Huh? James (26:53): I mean, to me what I believe is really, really nice about Donna at five is I'll stop getting the questions like, is Amarin gonna support.net core or should I wait for.net core support or something like this? This is run times and ideally just everything is now the same and we're all good. Everything is, you stop getting those types of questions, which I think will be nice marketing branding. You're just happy. We can just say it's not enough. Five people. That's it. It's not an ad is.net. I uh, now from a, from a runtime, you know, I had never really run into an issue that you had a, I mean I probably have, but they were probably workarounds for it, but I think it is nice that the exact same, yeah, exact same core CLR will just be there. So it is rare. But for those rarities, I guess it's really important. Frank (27:44): Yeah. Well, you know, I was thinking about it. We're actually in such a good state right now compared to five, six years ago we had.net standard and especially.net standard to, um, surprising most libraries on new [inaudible] work on iOS and Android. Now, that was not the case not too many years ago and nothing worked on iOS and Android, but now we're in a good state and not in F five is just promising to take that good state and merge it all into an even better, better state. Something like that. Um, so yeah, those, those cases were rare. Thankfully mano had come a very long ways over the last 20 years, but, uh, they still existed so great. James (28:28): Yeah. I think, I think that what you just said is, is very, uh, accurate and what I'm really excited for because yeah. And, and there's so many new libraries that are coming out, especially from like the asp.net team and like the Azure teams. And it may just make testing everything a lot easier too, because if it's supportive and it's supported and there's no quirks between the different platforms, so that'll be nice. Frank (28:51): Mmm. James (28:52): And that, that, that, that will, I think be very, very nice for library creators and for app developers too. I also hope that the CS projects are all standardized and maybe multi targeting for app developers is a lot nicer. So to me it's a lot of, I really hope that this all becomes equal across all the different platforms and that would just be nice. That'd be a nicety instead of having Frank (29:16): on different platforms doing different things. Yeah. Yeah. Uh, just in case, uh, a listener doesn't know what's going on under dot and have five is you can generally think of it as merging all the libraries together. So just one set of libraries called Cora facts, but then having to run times, um, the.net core run time, which is everyone's favorite, uh, definitely for web stuff. And then which runs on every device ever created by any human being. It's the ultra portable version of.net. And so you have these two run times and so it's, and even on top of that, uh, the mono runtime just got merged into the.net org or the foundation or it got merged into some repo, meaning that, um, when people are working on.net core or vice versa working on mono, they can make sure that the two projects stay in sync, that the two run times don't diverge from each other. James (30:15): That is super nice. I do like that. Yeah, I think all, all positive things. It'll be a fascinating transition time, I guess. You know, but Frank (30:26): Oh, transitions have their hiccups. But you know, we got through the.net standard pretty smoothly. So I have faith, I have faith that we've learned how to version libraries at this point. And we're not going to make any crazy cross-platform mistakes. I have a little faith in the Danette team. Yeah, I totally have faith. Speaking of having faith in technology, Jane, someone wrote in and said they're thinking about some tech detox. I know. I don't know. I'm, I don't know what this word means. I know what it means. It means like going out into the forest or just living your life without technology for awhile. And I dunno, that sounds old fashioned and primitive. What do you think? James (31:13): We talked about smart phone detox that I was going through before. Frank (31:19): Sure. It's still technology, but okay. You're backing off. You're lowering on the sophistication and um, dopamine hit. Right. James (31:28): And that's still going well. I have reduced a lot of the apps that are on my phone. I only install things when I need it. I use your websites when I need to and not install apps, uh, as much, um, you know, if I don't need them, as soon as I'm done, I kind of, um, just delete them. I'm very happy that, uh, office has merged all of their apps into one app. That's very nice. So I no longer have like office or word, Excel, PowerPoint, it's just one app. Um, but yeah, for me, we were just out on holiday out on the Oregon coast and how there actually had a good point, which was maybe coming out to the coast once a year and then having different themes, like maybe one is, um, turns cell phone off. Like, you know, like, Hey, if you're going to turn cell phones off for the weekend, let's, we need to drive somewhere where you don't use, some GPS are not animals, but um, you know, just turn GPS off or maybe there's, Hey, we're going to, um, just kinda chill on the beach in the hotel and do things that we both individually like, so really relaxing weekends. James (32:37): Maybe I'll play video games or read a book or you know, she'll read books or whatever or something like that where we're not, we're not on our phones, but we're doing other things. I did say playing games like that would be tacked, but it's things of your enjoyment that are, um, non cell phone related. Cause I think once you're in the cell phone is very close and you're, I don't know if there's like a negative connotation with it nowadays, but a complete tech detox. Like there's the like fireside camp. Have you heard of that? Where you pay to go do a digital detox or whatever and you just go into the woods? I guess you could just go into the woods, right? You can just do that Fran, you just go and wander. Frank (33:22): Yeah. Okay. So, um, I was making a little bit of fun in the beginning, but the truth is I don't have any problem detoxing. I, I rather enjoy it. Uh, I literally will go camping in the woods, not bring a charger for my phone because I don't care. I'm a little bit worried, like align my eat me and I would like to tweet about it while it's happening. But you know, pros and cons, um, you, you give me two days and I really have forgotten what the phone is for and what its meaning is. That said, I, I leave camping and I open Twitter. I'm like, Oh yeah, dopamine hits love this. But, um, I, I just don't have that problem. Um, I love technology, but I think my whole life I've found a way to come to a happy compromise with it and that involves just not caring about it when I don't care about it. I guess I'm lucky I have that relaxation ability. James (34:22): Yeah. You know, and, and if you don't, then you can put in some sort of guidelines. Like I have my buddy Danny, him and his family, they do, um, after basically at starting at dinner, it's no cell phones for X amount of hours, like after dinner. And they do family time. And so it might be like two or three hours and cause the guy, a bunch of kids, but they, they, they have a little basket where they all put their cell phones and there's chargers in it for all of them, you know, and they put it in there. Um, you know, things like that are good ideas. I mean, the problem I have with like saying, what do I want to do at detox? Like let's say we go on a hike, me and you are like, let's do a technology detox on this hike. James (35:04): Like we totally could. But then what if I want to take a photo? Like any part of that could be technology, which would be, um, a cell phone or a camera or my drone. Right. All those would be fun to do that. It's more of what I've been trying to do is just keep my cell phone in my pocket until I really need it. Cause let's say you're hiking, maybe don't hike and be on your cell phone at the same time like I've done in the past and almost falling and kill myself. So don't do that. But that that could be something. So I don't know. I'd be interested in what our listeners done. You know, are we Frank (35:40): on the right? I don't even know if we're answering the question to be honest with you. We're answering it the way we answer it and Oh my God, people hiking while talking on the phone are hilarious to me. Coming down the Hill, talking on the phone, you can hear him from like two miles away cause you're on a mountain and a Valley. You can hear everything. Why would you do that? I would rebel so much against Danny's rules. I love Danny. Wow. I do not deal well with rules, especially if someone's trying to limit a freedom of mine. That would not be acceptable. I would be the grunge kid dying their hair black in that household. But I'm, of course it's never easy and, um, I don't detox. But like, uh, as far as distractions and things like that, I do block Twitter. Um, when I'm working in the office, if I want to access it, I have to go to my phone or something like that. And I find that's just combating that stupid part of your brain that just wants that little dopamine hit and keeps getting distracted every time you see a progress bar. James (36:45): Yeah. What I do is I put my phone on do not disturb all the time and then I just don't get disturbed by anything. Uh, notifications are evil. Um, you want to turn those off as much as humanly possible and uh, just delete social media apps. That's really half the battle I think is, is I haven't used Twitter on my phone. I mean I have the website right, but it's not a great experience so you end up kind of using it last. Um, and that's just one way. If you're like, I just kinda wanna use Twitter last then I don't know, just use it. I tried that, Frank (37:21): I tried that. By the way, this last week, I, uh, I uninstalled the Twitter app, not this last, whatever. Um, I own installed the app and forced myself to use the webpage and you know, it's usable and like you said, it's just annoying enough that you don't want to use it. Um, but after a week, I feel like I had served my penance and I was allowed to install the app again. But I think so it was, it was successful to some degree because yes, it was so annoying that I didn't want to check Twitter that often. Um, so that, that is a good little trick if you don't want to completely remove it from your life. Yeah. Hmm. James (37:55): I think there's a bunch of these little things that you can do and I don't know. I have this endpoint, you know, my cell phone. It does a lot of other things besides that. Like, I'll listen to music. I listen to a podcast. I don't think that's bad. I'm courting to sound right. It's not bad. Okay. Frank (38:08): Yeah. You know, and you hit a sore spot there with, uh, one of your mentions. Um, I, I hiked up a mountain once and I carried my drone up. It's a very, it's not that heavy, but you know, that's weight and mountains are tall and heavy. Mountains are heavy. It turns out rooms. Yeah. And I got dirty looks from one person at the top because I wanted to fly by drone. I'm like, you know, I carry this stupid thing up. We're literally the only two people up on this mountain. It's a quiet little James (38:36): drone. Don't give me these dirty looks. I think it is that whole, I'm loud. I we're back to nature BS kind of stuff. I'm like, no, I want to experience this forest the way I want to experience as far as people get off my drone. And I think as long as you're being respectful, um, when doing, and I was recently doing this, I was doing a hike at an on an Oregon and I brought my Maverick mini and we got to the top and, and there's a lot of, we read lots of articles cause I wasn't sure where I could fly. So we were reading lots of articles and people being upset. And, and to me it's like, okay, well it's the same as like when someone takes a photo, but like you're in the photo and you're not, you're like, I don't know that person, but they're just like taking a photo of the surrounding place. James (39:21): They're not trying to take a photo of you, but you're in their photo. And I'm like, okay, well how is that any different than me flying my drone up and then taking a photo here because it is zero difference. Maybe the noise complaint could be something or, but besides that, like I'm going to be pretty respectful. It's going to be loud for like one second and I'm going to fly off. Right. Um, I dunno. I guess as I fly my drone more, I guess I'm, uh, you know, the drone people are like, yeah, dealer, don't mess with the drone, you know, but, um, I dunno, I, I'm, I'm kinda pro, but I think you have to be respectful and you have to not, uh, you have to be smart where you're flying. Like, don't fly close to people in general, especially if they're like rock climbing or something. James (40:10): But besides that, I think you should be able to enjoy it. Just like someone took a photo and it was enjoying it, you know? Yeah. I agree. And actually I was very polite. I even waited to launch until I had descended the peak. I waited until they all left. Wow. And in my defense, they had this barking dog the entire time. It was 10 times louder than my tiny little drone that you could hear for five seconds. It's the same with people. Dogs, people are annoying. Well yeah it was, yeah, that's very true. And crying babies and everything like that. But um, we have a neighbor that moved in recently with crying baby and he had to knock on some doors cause it was, uh, it was just yelling at all hours. I was that person. I said, I don't want to do that. Just going, I don't want to be that person. James (40:55): I don't want to be, I don't want to be that person that knocks on your neighbor's door. It's like, Hey, listen, your kids being a little loud but also live in an apartment complex. Just saying, ah, and it's one in the morning and this child is screaming like, why just go look at that child. I don't have a child. I don't know. Maybe children scream at all hours of the day. And um, I don't know. But um, how did our lightning talk episode turn into two old grumpy men complaining about the weather? Back in my days, no, but pretty much it started so good. We were talking about gay and plays are, and now we're just, we're just like the world's hard or it's hard, James, you know, I'm turning 34 this year. It's, you know, it's a Frank (41:34): all downhill after thinking about things. It is all technically downhill. But that actually started around like 19. I think that our physical peak 21 maybe 20 me, I think I maybe, I would say early twenties. I'd say earlier, 25 year olds had bad knees and fighting at least. Does you want to be 21 and younger? What about gymnastics? They're all like 12 mm Hmm. Yeah. I don't know. I'm old. Yeah. Oh, well there's an episode I can episode had emerged conflict at FM. Let us know how much you loved or hated this episode. You probably didn't even make it to the end anyways, but if you did, uh, I'm pretty sure you loved it. So let us know. Uh, you can tweet at us at proclaim at James Monson Magno at merge conflict that fam, uh, that's going to do it. So until next time, that's merge conflict. Speaker 3 (42:28): I'm James Matson, Magnum [inaudible]. Thanks for listening. Peace.