Elm Town 76 – Between the paving stones with Andrew Lenards

JUNE 11TH, 2024
|
01:10:15
Andrew Lenards illuminates the liminal spaces of his mind, from lo-fi DIY punk rock, meditation, & coaching to Joël's Triangle & The Mental Side of Programming.

Details
/
Transcript

[00:00:00] Andrew: established in 2016. Spanning three hosts. A podcast about people making and using the Elm language, and the things they do. Welcome to Elm Town with your host Jared M Smith Excellent.

[00:00:18] Jared: Hey folks, welcome back to Elm Town. I'm your host, Jared M. Smith. We'll be visiting with Andrew Lenards today,

[00:00:25] Sponsored by Logistically

[00:00:25] Jared: but first, let's talk about our sponsor, Logistically. At Logistically, we make intuitive software to help logistics teams make better decisions and improve efficiency. Logistically pays me to record Elm Town episodes as well as pays for our production and hosting costs.

[00:00:44] We build the front end for all new features in Elm. If you're interested in our mission and enjoy writing Elm, send us a message at elmtown at logisticallyinc com. I'll put a link in the show notes.

[00:00:58] Introducing Andrew

[00:00:58] Jared: Now, let me introduce Andrew. Andrew is a Senior Software Engineer at Corvus and a Certified Meditation Coach.

[00:01:07] He's a co host of the nerd splaining focused podcast on Star Wars called Is This the Way? And a guest host and contributor to the Do Nothing Project with Jeff Warren. Andrew has contributed behind the scenes in Elm Town as a producer. He's starting a new podcast called The Mental Side of Programming.

[00:01:27] Andrew, welcome to Elm Town.

[00:01:29] Andrew: Thank you Jared It's a pleasure to be here

[00:01:32] Wrestling announcer Elm Town intro

[00:01:32] Jared: Yeah, well, I think, your voice is just so strong here. I, I, one of the first things that I wanted to talk about was You told me before when I was getting some information from you that you were a wrestling announcer in a life. Would you mind to give an Elm Town intro in that wrestling announcer style

[00:02:00] Andrew: I, I will hopefully we won't blow out everyone's speakers here. it's a little bit of background. I was a wrestling or a ring announcer for a wrestling promotion in the Phoenix area. um, somebody I went to high school with, who knew me my whole life and knew that I was a loud person, who given a microphone could yell somebody's name and the town they're from and things along those lines, uh, they had started it up and thought, hey, this would be a great idea to do that. And I had really, Very little training. It was just more of a see things and kind of mimic. So anyway, but, um, but yeah, it's a, I'm super happy that, that, uh, I got to do that. And then I worked on the ring crew, and the pandemic was, uh, was sort of the thing that shut that, that whole operation down, unfortunately.

[00:02:47] So our last promotion was, maybe the 7th of March, 2020, uh, right before everything sort of officially sort of shut down. So, um, so I, we talked a little bit about the potential of me doing something like this. So I pulled in a few facts and we'll see if, we'll see kind of, uh, if this is a, a, a pleasing Elm town bumper.

[00:03:09] So, established in 2016. Spanning three hosts. A podcast about people making and using the Elm language, and the things they do. Welcome to Elm Town with your host Jared M Smith.

[00:03:25] Excellent. Oh, I love it. So good.

[00:03:31] So that's one of those things it wouldn't

[00:03:33] Jared: disappoint, but

[00:03:34] Andrew: When it gets out in mixed company, then you end up with things like, Would you do the announcing? Or would you announce so and so to come to the stage at, you know, company events and stuff? And sometimes I regret my impulse to do those sort of things. But yeah, thank you for indulging me a little bit in that.

[00:03:55] Jared: Yeah, no, thank you. As I mentioned, it was kind of at the risk of being like, Hey, do a trick for me, but I appreciate you doing it. I'll jump through hoops, man. Not a problem. So....

[00:04:10] Oh, um, and what's so

[00:04:12] interesting to me as I was thinking about this is, so before we even started, we did a little meditation together and I was thinking about how, what a juxtaposition it is between these two different things, right?

[00:04:28] This, this really loud, in your face, we're getting ready to have a fight, right? You know, versus how we actually started this podcast, which was calm, collected, you know, creating this connection. And so,

[00:04:44] From Julian Pistorius: Side roads with crucial impact

[00:04:44] Jared: I went out, I reached out to Julian Pistorius for some, some things to ask you, and he came back with several things, but one of the first ones, I think it's related to this, is, quote, In Steve Jobs Stanford commencement speech, he talks about some of his early experiences, and how at the time they appeared frivolous, dropping in on a calligraphy course, or even detrimental.

[00:05:09] Getting ousted from Apple. But, which in hindsight, ended up being crucial for his own success. And that of various projects he started. Are there any experiences or side roads in your own life which have surprisingly crucial impacts on your work and your approach to it? End quote.

[00:05:29] Andrew: Um, well, that's a great question from Julian. Julian's a great guy. Um, I hope that at some point he's on it, or he will, he will agree to be on Elm Town, or something along those lines. But, um, yeah, I So, um, I have always been in the software space kind of this like in between, I guess you might say like somebody who's been in a liminal space.

[00:05:53] And so, a little bit of context, I work with Julian on a science project that was about trying to give, trying to empower scientists to get access to cloud computing resources or compute resources. And then also make it so that those things were, More replicatable, or as a scientist, if your tool got popular, you wouldn't end up becoming like a lot of us, I'm sure, who are listening to this, you know, your family's IT support, uh, you know, and so everybody wants community, but at some level for scientists, that, that kind of, um, becomes unsustainable.

[00:06:29] A lot of these past lives and a lot of these things that, as you pointed out at the beginning, are very much juxtapositions, where like, doesn't seem to fit. And so, uh, I started out as a photographer, um, photojournalism, and that was like my thing. And sometime during my schooling, I realized that The newspapers that I was likely to be employed by were not going to potentially exist for much beyond when I graduated, and I was off by about maybe 25 years on that prediction.

[00:07:01] So I took what were art skills and tried to be a little bit flippant and be like, okay, well, what if I build the thing that I think is going to replace newspapers? And so the web, that, that's in essence kind of how I ended up going into web programming. And then, in doing that, you know, you end up taking all of these art classes that you, they bake into the way you look at life, or they change your perspective.

[00:07:29] And so, very similarly to how Steve Jobs is talking about, you know, Type meant a lot to the early Mac, um, the early Mac team, right? And they included typography in a way that, you know, wouldn't have happened if he hadn't had that experience. So a lot of things for me are these haphazard things of, I was really into, DIY punk rock as a kid, and I was really into, like, what can you do from a low fidelity perspective to, like, get things done?

[00:08:02] I was really into Um, I was really into sports, uh, and I, I wanted to be a minor league baseball announcer. And that was actually one of the things is you, you, you don't get to just be a minor league baseball announcer. Like you have to have another job within the organization. And so you write press releases and these other kinds of things, which, you know, sounds a lot like, uh, journalism.

[00:08:24] And, uh, and so I had all these little things of like trying to find my way, um, into these areas where in between the sort of. Uh, Paving Stones. Um, you know, and the interesting stuff grows between those paving stones. And so, I found myself sort of being an industry person who had too much science or academia interest.

[00:08:46] And then in the world of academia, I was too industry. And so that's what I mean by the, the, you know, I found myself in these sort of liminal spaces. and I think folks that I worked with, like Julian, they liked the fact that they could bring something to me and they wouldn't know if I would be like, oh, this looks like a punk rock flyer from like the eighties and we could, Change the design of this to make it look like this and, or, you know, in comic books, you lay these things out and you need to have frames around them so that you know you're moving in time.

[00:09:15] So what if we did this to the design to make it clear that we're moving in time? And so those are the kind of, like, they didn't mean anything to me because it was just like, that was a. clear connection. Uh, it was obvious to me, but it was one of these things that, that some of the folks that I had collaborated with would delight in.

[00:09:33] Some of them would kind of be like, you know, well, I've heard this before, but, uh, but yeah, so, so that would be like, you know, reading comic books, um, you know, the, that lo fi interest, um, it comes in incredibly handy in the, in the software world because, um, you know, my tendency would be to, try to make things as rigid, or as, um, as robust as possible, and maybe I don't need to do that, or maybe I don't need to build this feature that, that with as much care until I know that it's going to get used, or it's what they actually want on the other side.

[00:10:07] Hopefully that's a satisfying answer to Julian.

[00:10:10] Jared: I want to first touch on what you mentioned there at the end. It makes me think when you talk about this kind of lo fi and it makes me think of MVP, right? Like getting

[00:10:21] Andrew: yep.

[00:10:22] Jared: the simplest solution that works and you can kind of test and iterate on it, right? So, yeah, I think that that is definitely a transferable skill that you found a thread across these different things.

[00:10:37] So And then another thing I wanted to go back to is, you mentioned working with Julian Pistorius in the past, and I just wanted to bring up that one of the episodes that we recorded was with Chris Martin, and that all came about because you messaged me on Slack and said, Hey, you know, you should check this out.

[00:10:58] This might be a good project. You know, Julian and Chris have been working on this. And so, yeah, I think that's, you know, a big credit to you for, for reaching out and, making that connection because I was looking for something in that space where I was trying to find like, you know, folks who are doing something with science and you know, trying to somehow be connected to, the climate and, you know, all those things.

[00:11:22] So anyway, I, I just wanted to make those connections. Um, and then a follow up question about that is.

[00:11:30] Helping others see between the paving stones

[00:11:30] Jared: When you found yourself in these liminal spaces, right, between these paving stones, as you put it, what, obviously, you know, you had these transferable skills, but how did you convey to someone who maybe didn't read between the lines or, you know, look between the paving stones to see, to see this connection to how these things could be related?

[00:11:56] Andrew: So, I mean, I can tell you what I did in the early part of my career, and then I can tell you what I try to do now. But, um, like, early part of my career I sort of couldn't understand. It's a little bit of the curse of knowledge where I couldn't understand why other people weren't seeing it. I was a non traditional computer science major.

[00:12:14] Um, I taught myself a lot of things and so I always kind of felt like the dumbest person in the room. Um, or like, you know, I'd kind of like snuck in and like nobody had thrown me out yet. And, uh, and so I made it through my courses and stuff. And so. I was, you know, I was making a lot of these different connections and they seemed to make sense to me.

[00:12:31] So early on, I didn't like, I didn't have, it was like explaining a joke where you're just like, no, no, of course this is the thing. And so, uh, that like made me kind of a, a pain to be around, I think, to some, to some degree. And so now I'm a little more in the realm of what you'll hear from, uh, consultants, where it's a demonstration over discussion thing.

[00:12:53] So, you know, showing that it'll work may be a lot better, um, than trying to, or, or, Discussing it enough to get a little bit of, of agreement and consent, and then trying to do something that'll be able, you can be like, okay, here's, here's like how you can do it. Um, and then, you know, that doesn't work for things that are at really gigantic scale.

[00:13:16] that is like still, it's still kind of a pain point, but when you can get something and you can say, Oh, we could do this and we can tease this apart. Or if we take this problem, when we turn it on its head a little bit, um, the, you know, then we can kind of demonstrate how it could be, uh, and, and that's something that I've had to grow into.

[00:13:34] Um, And if there are folks that I've worked with in the past, they'll point, they, they will know on the number line of, or the, on the progression of growth, where they worked with me at, uh, in a given time frame. The other, uh, aspect that I did a lot of in the physical space when we were working, when, when work wasn't, uh, as remote, is we would go to a whiteboard.

[00:13:56] And I would talk through things on the whiteboard. Alistair Coburn talks about this idea that communication on, there's a communication spectrum, uh, for like how high fidelity there is for communication and sort of two engineers at a whiteboard is like the highest end of that communication spectrum as far as he's talking about and I have I've always felt that into the marrow of my bones.

[00:14:21] Where, you know, you can get something on a whiteboard. Now, granted, that whiteboard doesn't always turn into a thing you want to ship, or a thing that your folks using your software are happy with. But, the information and the Collaboration and the ability for people to combine ideas at that point is at its highest.

[00:14:39] And there are a number of things that are in that that make that incredibly special, where it's like the, you know, the medium is anybody can grab a pen and, and, or hopefully everyone can grab a pen and do that. There's a lot of people that don't feel like they can draw. And so if you draw bad, actually, it actually is helpful to draw people in a room up to the board.

[00:14:58] Uh, and. And then, you know, in essence, you have this thing that you can step away from and take a picture, um, and that's one thing that is like, oh, okay, now I have kind of a captured the context. And then the other is You can replicate a little bit of that experience by throwing your camera phone video on and have somebody talk through, like, here's the point we got to, and here's how we did that.

[00:15:22] that's some of the ways that I used to do that. I would say, from a standpoint right now, I don't I don't do that as much. What I will do is I'll draw stuff on a piece of paper and I'll take a picture of it and then throw it on whatever the appropriate wiki is. Um, and then try to put enough words, uh, words and or audio around it to, to say like, here's, here's the context that I think might help. But, I think, It is difficult for people when you see these connections and, um, how to articulate them. And I did not have a really good way of articulating them early on because I, all these other people were like knocking it out of the park as far as the high end mental skills. And, and I wasn't. And so I was like, well, if you're the, you know, you're this smart, and you know, you know, Haskell, I guess we'll get to this at some point, but I always thought that people that knew Haskell were like wizards in comparison to me or Jedis.

[00:16:15] Um, If you know that, then you should be able to pick up this, like, work a day connection that I came up with. And, uh, and that wasn't the case. Like, and so it takes, it takes a little bit of time to try to figure out how to, how to do that effectively.

[00:16:30] You touched on what I was wanting to follow up with is, you know, how do we do that today? Because it's funny, I was recently having a conversation with some coworkers and we were talking about this phenomenon of engineers who have been engineers from when there were offices, and then who now work with engineers who have never really worked in an office with other engineers.

[00:17:01] So, you know, there's this disconnect between what it, knowing what it was like to work with a whiteboard versus not knowing to work with a whiteboard. And I was a very much a whiteboard person as well. It's like, let's all get in this room. And yeah, like, I think. Very much that connection is what's important.

[00:17:21] You know, we're, we're now speaking the same language, okay? Even if this whole idea is, you know, going to be morphed and these chicken scratches turn out to be, you know, maybe just 2 percent of the final solution. It's, we're, we're now, Working together, we're communicating. So, yeah, as far as trying to do that today, um, I, one thing I'll just mention briefly is, uh, we've, we're just experimenting with it, just starting, but a co worker, uh, Jackie Cross, she is designing this new, Uh, group project where we're kind of, um, as opposed to what we've done in the past where we had these, uh, tech topics, each person would present, I've talked about this before, um, but now having a, a sort of group project and, and so now we're going at these meetings where instead of a, a single person getting up and presenting their entire idea, it's going to be more of a, a group activity, and we're going to bring in some ideas from experience I had with, uh, Doing a Google Design Sprint and she came up with this great name called Logistic Collab.

[00:18:29] Like a collaboration, you know, so we'll see how it works. But, but it's definitely something that I think, you know, we're now a few years past, the real core of COVID and, and the real lockdown. So, you know, I think folks are trying to, uh, to get back to that. Uh, that feeling and that, you know, sense of, of how do we, how do we do this and, and, and get that, what we, uh, what we knew we had and we now miss.

[00:18:59] So,

[00:18:59] Yeah, and, and I think the interesting thing is that, um, So my dad was really fond of hiring engineers who worked on their cars. That was a thing like, you know, he didn't exclusively hire people that worked on their cars, but somebody who had, had worked, you know, had worked on their car and, and his, uh, uh, his argument was that, that, um, the more digital side of, aeronautical engineering to him or, uh, was abstract enough that

[00:19:29] you still needed to have the ana you knew it was going to translate into parts in the physical space and so you had to have kind of an idea around manipulating those parts and doing those things. And there is something that feels clunky to a lot of people that don't have the making things with their hands quality for, um, you know, I used to make mixtapes of music and then I'd make my own, you know, cassette liner, Uh, and you had to figure out, you know, the dimensions of the cassette box and what would fit and when it folded and all these other sort of silly things.

[00:20:04] You're solving these problems with really raw skill or raw materials. And that has a lot of these knock on benefits. This is actually a little bit of a unintended connection to Julian's first question. But, you know, I did a lot of these little like maker things like, um, I'll show you at some point, but I like, I made a zine for, we had one of our get togethers, our in person get togethers.

[00:20:28] Martin Fowler wrote something about this recently, about the remote first teams still need to have a get together phase, or the benefits of getting together if you've, Um, and this is an opportunity for you to do these sort of, of collab jams or, you know, things along those lines. You can do those in those spaces and you can do it in a form and then you can figure out how does that translate back, into another space. I've worked with amazing people at Corvus, and, um, and they'll grab, you know, a drawing tool, and then we'll screen share, and then we'll, we'll try to, like, draw things out and everything, and that, that, like, has this, like, simulacrum, it sort of is like, is to Pumpkin Spice Lattes, What pumpkins are like, you, it feels like a whiteboard activity, but it's not.

[00:21:16] , and it doesn't have quite the same effect. It's still beneficial. It's still on like Alistair Coburn's, uh, you know, engineering communication spectrum that, that it's somewhere on there. Um, but it's not the same as grabbing a pen and having that direct manipulation and being able to pull that off. Um, you can get away with it to some level with a touch device.

[00:21:40] Maybe, uh, if people are like not self conscious about that. So, um, I have doyed with making a I have toyed with making a drawing tool that has like the XKCD drawing levels in it. Uh, or you know, or the, there's a library that somebody's put out that puts in the, the, um, Moore's, uh, his squiggles that his hand kind of does as he draws things, as he draws things out.

[00:22:05] So it's like a, you know, it's a, it's a, it's a high fidelity tool that's trying very hard to look like hand drawn, uh, hand drawn things. And so, um, but. But yeah, so I think, I think one, I think it's awesome that all y'all are doing that, and it is kind of an interesting thing of like, how do you handle that?

[00:22:23] And I just want to like, double underline the hilariousness of engineers who haven't worked in the office. Because one of the reasons I wanted to go into software engineering, or I wanted to go into computer science was my idea at that time was I could do this job from anywhere. I don't know how long it'll take me to get to that point, but I can do this job from anywhere.

[00:22:46] And that meant a lot to me when I was looking at, uh, from a career potential, um, where if I was a. If I was working, it was a photojournalist or a photo journ, uh, you know, or, or a journalist in general, you know, I would have to, you know, go to the story. And, and there was an aspect of that that I think is. That draws some of us in and you're like, Oh, that's what a great idea. You know, I want to fly to, you know, Austin, Minnesota and get the story of what's going on in Austin. What is it like to be in Austin, Minnesota? Right. Like, um, and so at the same time, there's, I don't want to have to be on a plane all the time.

[00:23:20] Uh, and so, you know, the, that aspect of the locality, it is an interesting place to be in. Uh, so Julian and I worked for, uh, what was called CyVerse. Before it was CyVerse, it was called iPlant Collaborative and I had been a part of it for a long time and it was a virtual organization.

[00:23:39] And so, um, so this is a slightly tangential thing, but excuse my tangent here for a moment, but the National Science Foundation was putting these grants out and they were deliberately putting them out so that they spanned across universities because they wanted to understand how these larger projects would organize and self organize and handle.

[00:23:58] Problem solving, uh, being in different places. And the notion was that any research team that was going to be able to solve what they deem in their terminology as grand challenges was going to have to be, uh, distributed by its nature. And so they were making a lot of these bets and allowing the structure of these organizations to be virtual and distributed in that regard.

[00:24:19] And the hope was that they would be able to then try to pull together a study quality of like, how do things work and, and what makes a particular location within this virtual organization node, um, more receptive or, uh, you know, increases the output or whatever they were looking at from a standpoint.

[00:24:38] And so as members of this project, we would get interviewed by an external group. In essence, that was in, you know, 2009, 2010, 2011 ish, um, and it's still, it's still going on. But, but that was trying to learn for when we get to a point where we are now, where we have people who have only been virtual.

[00:24:56] So

[00:24:59] Jared: Wow. That's really cool.

[00:25:02] Discovering Elm, or "I don't want to know that there's a better way to do what I'm doing right now"

[00:25:02] Jared: Well, I want to bring up Elm now, because we've been

[00:25:08] Andrew: I was going to say, we've talked

[00:25:09] Jared: and we've

[00:25:10] Andrew: who is this guy and why is he on the Elm, or the Elm, why is he in Elm Town?

[00:25:16] Jared: So, do you want to talk a little bit about how you first discovered Elm? What that was like? I think this thread works with talking about Julian,

[00:25:27] so Yeah, I was just going to say, so Julian, who asked the question at the beginning. Um, so Julian and Chris Martin, who is a previous Elm Town, um, uh, guest, they were doing this thing that was code retreats and they were going off. There's a, there's a, uh, used to be a mining town in the southern part of Arizona, Arizona called Bisbee.

[00:25:47] Andrew: And they were kind of whisking off and doing their own kind of retreat. And they were trying to. Along those same lines of things we've talked about. They're trying to find this minimal viable product that would allow people to, to, um, interact with a, an OpenStack cloud and, and get compute resources. And, um, they went off and at the time I either had something, uh, that was a conflict or, or couldn't make it. And when Julian came back, he said, uh, to me, um, well, I, I should give you, so we were all working on this before mentioned cloud computing, um, project for, uh, for CyVerse and we were using react and I was the front end lead and I was perfectly happy doing react. And it was, it was like pre hooks days before, um, a lot of things.

[00:26:37] And, and I was, Rather sort of fond of what React was at the time was like, okay, this is cool. You know, I've got state, I've got props, I've got a render function, like, let's rock and roll. Uh, and like, you know, I can do this, like, this is, this is great. And, um, and so to a certain degree, it was like, oh, you know, This is kind of, uh, a thing that I had gotten good at and I'd gotten fond of, sort of in the parlance of, of Cal Newport.

[00:27:06] I was like, I had become good enough at it that I was thinking, well, I can't kind of, kind of be ignored. And, you know, like I'm, I'm, I have enough skills in this that, you know, this, if, if, if I wanted to do other things, I could totally go do other things. And Julian sat next to me and he sort of said, you know, we had this really cool week.

[00:27:25] writing in Elm, and I think you should really take a look at Elm, and I, I remember as plain as day, turning to him and saying to Julian, Julian, I don't want to know that there's a better way to do what I'm doing right now, um, because then I might not want to do anything other than that thing. And I had no idea how Unfortunately prescient that became, because then it was, when I started doing Elm, it was like, Oh god, this is the way to do stuff, and like, I don't want, I don't want to do anything else.

[00:27:57] Or like, I don't want to have to, I won't put in a, straw project, but you know, insert your less than favorite, uh, JavaScript, uh, complexity laden fatigue engine, uh, you know, um, that, you know, is constantly redoing releases and, and distracting you from the actual problems that you're solving. Uh, and so that, that was sort of that moment.

[00:28:23] And I've had some of these moments in my past life where, you know, I was at a conference and heard about cloud computing and I was like, who, who would do this? Um, you know, and I had these sort of dumb reactions, you know, I was, I was in, I was in Seattle in 2002 when Amazon was talking about AWS. And I just, at the time I was just like, who would do this?

[00:28:41] Like, this doesn't make sense to me. Like, uh, and you know. feel really stupid about that, uh, that, and this was another one of those things where Julian, you know, very earnest, very sincere individual, you know, like, you know, wanted, uh, you know, when he found a better way, wanted to share that better way. Um, and then it, it, it fed a bit into my world in that I had always seen functional programming as sort of the thing that really productive, awesome.

[00:29:10] Sort of Jedi power programmers do and I had a lot of I had a mentor and other individuals in my computer science program that were sort of into LISP and things. And so, and I had some colleagues that had went really deep and they came back from that going, like, we should not be doing what they're teaching us.

[00:29:30] We should be doing something else. Um, and like the industry is wrong. And, you know, I read, um, I think it's called Beating the Averages. Um, from Paul Graham and talking about their experience with his startup before it was purchased and became Yahoo Stores. And, um, I'd even done something crazy, which was I was a manager and I Without asking for any permission from the project, we changed to Clojure.

[00:29:57] And, um, and so our entire backend system went from being shipped in, you know, Java jars. Like, at the end of the day, it was all Java jars, so I didn't have to really tell anybody. Uh, you know, it was a jar, it was jars and wars at the end of the day, so it didn't really matter. Um, and so I had this sort of Julian was very astute in knowing that I was a prime person to hear about this.

[00:30:19] But I had been leaning or living in the world where I wanted, um, I wanted, I was using scripting languages like Python and stuff and I didn't want a type system. I'd been at a conference in like 2001 where I'd heard Christian Nygaard, who's Nygaard and Dahl are the creators of Simula. And I'd heard Nygaard basically rant through a talk about how type systems were fascist, uh, and that we shouldn't, you know, it was, it was, it was very compelling.

[00:30:47] And I found out afterwards that Nygaard had, um, I had a love of political speeches and whatnot. So I had this sort of priming in a particular direction of what things should be. And to be honest, without throwing too much shade on the OO languages I was using, those type systems were Kind of like making sure that the form that you submit so your car is registered, uh, you know, goes through, like, you know, it wasn't a pleasant experience.

[00:31:17] It was like, I have to do this if they, because if they don't, then it just like, it won't work. The Elm type system, as I learned it, became a way of of communicating the expectations and limitations of what you were doing and then, and then imbuing this metadata so that the compiler infinitely had your back.

[00:31:38] Um, so refactoring in JavaScript is just like this, like. It's like watching people throwing knives and having flamethrowers shot at them, right? Where you're just like, I guess it's an adrenaline thing, maybe? But why are you doing this? And I have been trying to find a way to communicate this notion about how an Elm application really isn't magical and amazing until it gets to a size that you have zero fear in making wide sweeping changes.

[00:32:10] Uh, and it's that notion that it won't rot from the inside out that I think is the most compelling thing, um, about it. And so I went from being like somebody who was like, no, no, no, you don't understand my resume says I'm a React dev. And that is the way I want it to this like person who's like, I will only go where Elm is.

[00:32:33] So give me a list of places, and one of those places is Corvus. And so that was, you know, kind of this wild transformation. Uh, and it has, like, I really didn't expect to become, like, The strongly typed guy. Where, you know, like, we work in Elixir and we work in Elm, and then I understand, depending on when you're listening to this, Elixir may have a strong type system, or a gradual hinted type system of some sorts, so it may not be the case anymore, but so as you move back and forth between Elm and Elixir, you have the ability to do type hinting, like you, you know, very similar from an affordance perspective to maybe Python or something, uh, or type hinting in Clojure a bit, but not really.

[00:33:17] Um, but you move back and forth. And then when you get back in, in Elm, it's like, you know, it's like, you know, that somebody's got your back. So you're not going to make some. You know, change and, and have everything blow up or you make a change and it compiles and you go, okay, cool. Like now we write up our, our, you know, QA and we'll go ahead and do that, but you don't have to be like, okay, now we run it and see if I forgot something or, or something along those lines.

[00:33:44] And so, uh, I was, you know, chasing a change through like, 10 files or something with an associate the other day pairing. And I think I had said in passing, This is a thing I wouldn't have done in any of the JavaScript codebases that I've worked in in the past. But I can do this with, you know, extreme confidence.

[00:34:05] And so, That and I guess I also, um, kind of fell in love with the fact that the Elm compiler, or the Elm compiler was right. I just didn't know how wrong, how I was wrong yet. Like, so the Elm compiler was like, telling me the state of things. And it was just the moment at some point, it was a moment of like, okay, let's, you're behind, like, you'll catch up to where the Elm program or the Elm compiler is here, you know, program, or like, let's chop chop.

[00:34:32] Um, and so that. That confidence, I think, is an extreme testament to what Evan has done with both the language and the compiler. So, it's an incredibly amazing experience to do that, so, um, so, yeah. A very lengthy answer. But, hopefully, I got the points that you want.

[00:34:51] Jared: I think you covered a lot there. Yeah. I, a couple of questions here. I think, um, I can kind of scratch now because you, you know, you really answered them. But one of the things that this kind of brings me into now is

[00:35:05] Elm & mental health

[00:35:05] Jared: I mentioned at the beginning, The Mental Side of Programming this, this podcast, and I mentioned that you are a certified meditation coach.

[00:35:12] And I think these things are related here because, you know, we talk about, you know, you, you mentioned you, you wouldn't have done this, this kind of a refactor in a JavaScript code base. And it makes me think to ask. How does Elm affect mental health from your point of view?

[00:35:32] Andrew: Well, there's, um, oh gosh, that's, one, that's a great question. Uh, two, not being a mental health professional, I don't know that I can give an appropriately solid answer, but I'll give you my I-language experience version of that. And so, Plugging back to you, uh, so you gave, you gave a talk about, um, JavaScript, uh, JS fatigue.

[00:35:56] Um, and so one of the first things I would do is just crib a bit from that notion, um, having watched that talk and then also having, having experienced, there's a certain level of, I don't have to go chase around what's the latest and greatest, uh, language feature to come in. You know, like, what has TC39 bestowed upon us?

[00:36:16] Like, they're doing great work. I'm not trying to, but, but it's one of these notions where, um, there's two things that I think are incredibly important and they're, um, oh, sorry. Um, there's two things that are incredibly important. And, uh, And they, they, they're not, they're kind of, they live in the realm of like, "Choose Boring Tech", that blog post, um, but, um, Elm gets you to the point where you can confidently look at, you actually are looking at the domain that you're trying to work in, or what needs to be done, and you are confident that whatever you build isn't going to like, collapse from the inside out.

[00:36:57] Um, so There's this disturbing thing around a lot of projects where you'll see, like, can't build from source is like a thing, like, where, you know, there's a project out there, there may be a JavaJar or some artifact left over from it, and they actually can't build this project from source anymore. And, and so you, or you end up in these situations where there's so much rapidity around, like, the point release and the, you know, like, And Semver, thank God for Semver, but not everybody understands how to not screw up Semver.

[00:37:30] And it's baked into Java, or I mean it's baked into Elm, right? So you make a change and Elm, the Elm compiler is like, guess what? This is going to impact people who are using your library, right? That is amazing. That means that I don't get people mad at me. So if I do the good thing of putting a library out into the world, and you know, you do that amazing thing, which is like kind of the tightrope walking thing that I think is awesome, so like everybody that does that, that's super amazing.

[00:37:58] But you can, you have the confidence that you're not going to make a change and then actually ruin someone's day. So that is cool in that you don't have that guilt. You don't have to go chasing around, sort of, like you're not sort of chasing the tiger tail that you end up doing with a lot of, um, With a lot of projects that I've worked on in other places. Uh, and to be frank, uh, I have a, uh, a very good colleague who was writing, was writing tools around trying to help people understand what vulnerabilities and issues they have in their code bases, um, based on whether or not they'd upgraded. And at some point things just move too fast and they just stop updating things.

[00:38:38] And I think that velocity is. is, you know, a problem in some level. So when people come to Elm Slack, you see a lot of these things that are along the lines of like, Oh, the language hasn't been updated in certain, you know, whatever, you know, insert answer here, or this library has, you know, no patches in the last two years and, you know, like the kind of answer that some people will give, which feels smug to the person who's coming into the community is, yeah, it didn't need updates.

[00:39:05] you can get complacent around that. Not saying that, you know, but, uh, so that I think those kind of things coupled in there are really important. Um, and so when, you know, I'm not very good persuasion person, like I don't, I'm not going to get someone to adopt Elm necessarily. I found that out after doing my six, I wrote, uh, or I did a talk here in town that was like six months, six months of, of Elm and experience.

[00:39:32] Right. And, and I, you know, put together, you know, like, here's all of the experiences that I sort of had of it. And, and a lot of people were like, yeah, well, we're still not going to change. And I was like, okay, cool. Well, I, you know, I'm still this, like that, you know, we're still like, It's still, I think, really, like, it would be really awesome and you don't have to, you know, yank out your entire app.

[00:39:54] You know, like, there is a way for you to build an element in Elm, or there is a way for you to build, like, this part in Elm, or this workflow editor, or whatever it might be. The fact that versioning, you're not going to accidentally break people's things. You can make changes.

[00:40:07] So you don't have to, you don't have to say to a project manager or someone, yeah, I can't make this change because. It's like too, basically too close to vital organs, uh, for lack of a better metaphor. Um, and so I think those are, are beneficial things. Um, I don't remember where I said this, but at one point I said that working in Elm is a little bit like being behind the waterfall.

[00:40:32] Um, this is a metaphor you hear sometimes in mindfulness circles where like when you actually kind of are able to meditate and like your chattering mind actually calms down for, you know. 65 seconds or whatever and then starts back up. You have this behind the waterfall moment where like everything is kind of like all the noise is like kind of separate, but you're still sort of like in the mix and that is an experience.

[00:40:53] I think that you have a bit with Elm in that you're still shipping and doing the kind of stuff that you need to do, but you're not like caught up in whatever the latest. You know, everyone's changing to this, or, you know, we've all decided that we don't want this state library anymore. Um, and so there's an amount of, to come back to the mental health perspective, and Hopefully not upsetting too many people with this, but there's an amount of fashion in software that is kind of boggling when you are not, when you're new to software, where David Nolen has this comment where he's like, for a lot of people, um, conference talks are like, here's things we're doing.

[00:41:35] We think it's cool. You should do it too. Um, that is the structure of a lot of, of things. And there's this like sort of fashion of like, this is the latest thing. And, um, So, I have felt that feeling in Elm where I don't have to worry about that, like it's like I'm not worried about if I've got the latest cool things or if my sunglasses make me look like a total moron or whatever.

[00:41:58] Um, and so that I think has an amazing mental health benefit of like, That means that you can be focused on the value that you're intending to deliver to whatever your community is. And so, um, that community could be the people that are, are employed at your company, or that could be the people who want to ship their less than a truckload of, of, uh, shipping, you know, in the easiest way possible and actually get an invoice out on time.

[00:42:21] Um, and so, It's those sort of things. I worked at a company that did motor vehicle software, which probably to most people would just be like, mind numbing, like, oh, why would you do that? Um, and, and I took a lot of pleasure in the idea that The Department of Motor Vehicles, uh, um, is, it's a place that a lot of people find hellish.

[00:42:43] Like it is like, you know, it's like a one, you know, Dante left it off of the circles of hell because it didn't exist yet. And, uh, or it's purgatory or whatever your favorite way of thinking about it. And so if you can do something that gets somebody in and out of the Department of Motor Vehicles sooner, and they actually can get back to their life, that's great.

[00:43:00] The goal for a lot of the software we built for iPlant was to get people. That we're doing bioinformaticians and biologists get people back to their, back to the bench, doing the things they wanted to do as quick as possible and not sort of like live in that world. So anybody has been to a doctor's appointment in the last, uh, 10 years in North America realizes that the medical professional who's talking to you is spending usually a lot more time typing into a computer than they are looking at you.

[00:43:30] Uh, and so if we can do some of these things. From a software perspective where you can do the thing and then get back to what matters to you, that's super amazing. And I think there's a little bit of that in Elm.

[00:43:44] Jared: where do I start here? So I guess the, uh, the last thing that you said there, I'll kind of work my way backward here. Um, you mentioned, uh, the folks, uh, The doctor's office, you know, that are spending more time on the computer that just it brought up, uh, that I used to work at a company called IWT Health.

[00:44:02] And one of the things I loved about it was the owner, Bernie Hogan, he really had this vision of how to improve that process. And we worked on, uh, software that would allow them to touch a screen, you know, enter, quickly enter in their nursing documentation and get back to caring for the patient.

[00:44:21] So that's just an aside, but I wanted to, to bring it up because, uh, that, yeah, that, that I think is, um, uh, very astute point in, in something that, um, can't, can't be overlooked because bringing back to the motor vehicle, um, So, uh, if you're not in North America, I don't know what that's like, but if you have ever seen the movie Zootopia, there's a scene where they go in and they're trying to quickly get some answer, but the person at the desk is a sloth and they are

[00:44:57] answering first a, there's a joke that's, that's coming. And so it's, I don't know, you just got to check it out, but it's pretty hilarious. It, I think that it's, it's probably similar in other places, but oftentimes it's a lot going on, there's a lot of people who need to be served and not enough time to do it.

[00:45:18] I was at the local branch yesterday and it's a smaller town and the people there were, honestly, so delightful because they were not overwhelmed.

[00:45:29] And so I'm trying, I'm working backward again to what we were talking about with Elm. And this is, you know, one of the things with JavaScript fatigue and that I talked about in this talk was this feeling of overwhelm.

[00:45:41] And it was this overload, this feeling of like, okay, what are all the things that I need to do, which are out there, which, you know, could make this better. And I want to do the best job I can. And I'm looking, you know, and it's just like there's more coming in than I could process. So I think one of the things that, you know, you were talking about are, you know, some of the things, some of the things, your points you're

[00:46:05] pointing out with, uh, with Elm is, uh, you know, what the job that Evan's done with the compiler. And this ties into, you had brought up a couple of links talking about the mental side of programming. And one of them was this podcast called Against the Rules with Michael Lewis, I believe. And, and this season two talks about coaches. And one of the episodes on there talks about this invisible coach.

[00:46:34] And it talks about just coaches in general across a couple of episodes and how they could either be a good coach or a bad coach. You know, a bad coach is trying to mislead you, trying to misdirect you, trying to overwhelm you, prevent you from, uh, the example that I'm thinking of is with your credit card debt, preventing you from being able to pay off your credit cards and entice you to, uh, spend more.

[00:46:58] You're stressed. You can't really think and focus on solving that problem. And they don't provide the tools for it, right? Contrast that with a good coach who is making the process of fixing that credit debt easy, making that the default. And I think that is what Elm does. It, the compiler leads you to nice solutions.

[00:47:29] You can, you can work harder and, you know, use, the tool in an obscure way or, or try to find workarounds. But if you follow that, you know, then, you know, the, the kind of the way that it guides you, I think that it turns out to be a much calmer, a much more sustainable way of working. So

[00:47:52] anyway, um, yeah, that, that's what, uh, that's what I got from that.

[00:47:57] And, um, I guess to kind of, we're getting toward the end here. I wanted to bring up a couple of Oh, no, no, this is great. I think, you know, this has been an excellent conversation. And it's usually easier when I can listen and, you know, just take it all in. So, this is great. One of the things that you have it's quote, , your goal is to lessen the frustration or suffering around the construction of software. Uh, maybe this was on LinkedIn. I don't remember,

[00:48:30] Andrew: Yeah, I think it might've been. Yeah, Yeah, it's LinkedIn, and I think I may have stole this for the mental, um, for the landing page for the, The Mental Side of Programming. So,

[00:48:41] Jared: that, um, I think just ties in this, this similarity in goals between your job as a mindfulness meditation coach and your goal with this podcast and what Evan is doing with Elm. So, um, I guess that's not really a question. It's more of a statement. But then the question, since I brought up these, uh, this Mental Side of Programming, how would folks find out about that if they're interested?

[00:49:18] Andrew: Well, hopefully I will have a better landing page to, to include in the show notes than Podbean. There's two things. Um, and, I'll hit this in our picks when we get to the picks, but a, a little bit. So if you, if you look at kind of the bottom line, the software eng software engineers are, are making and if, if they're paid effectively, they're making, um, a lot of money, as much money as that, you know, like early sports, um, athletes were making, and so.

[00:49:48] At some point I thought, why aren't we approaching the mental skills or the mindset tweaks or things that are beneficial and not in a, everyone has to think a certain way, but more in a, how do I approach this in a, in a way that, uh, avoids that, that aspect of suffering that comes from things?

[00:50:06] And so, this is an experience that I've had, which is the skillset that I have that makes me good at trying to look for problems in a system or figure out and predict what's going to happen in a given software cycle when applied to my life, turn my life into a corrosive, horrible place.

[00:50:20] And, uh, and so I have to, at some point, figure out when to turn those things on and off, or be able to know this is a hammer. And when I hit a nail, it does the thing I want. If I hit a window, it does the thing I don't want. I think there's a realm around performance coaching and sports psychology where there's been a skill set around those areas that has made like sort of being an athlete in the world, um, less difficult, uh, or allows them to do the things they want to do.

[00:50:47] And then there's this amount of coaching that goes on in a way that I didn't realize was really happening. And so the Against the Rules podcast was like kind of an aha moment for me. Michael Lewis, I'm kind of, I've become kind of a Michael Lewis fanboy in that I really appreciate the way he tells stories and does profiles and narratives around the people that he finds. And so getting a window into those things. And so I've been trying to figure out, uh, one of my coworkers had this reaction when I said that I was going to make the, I was going to try to make a podcast called The Mental Side of Programming. Uh, her response was, if that doesn't exist, it should. And that was the response that made me go, okay, I, I guess I'm probably not the right person for this necessarily, but it's worth a shot at, uh, and so, um, I want to go ahead and do that.

[00:51:34] And so the hope then was, um, So I became, I didn't really intend to become a mindfulness meditation coach. Um, one of my colleagues on the atmosphere team that we talked about, Julian and Chris was part of another individual, Jason Hanson. Uh, we were having one of these retrospectives and they were like, what would make, you know, what would make things easier for the team as a whole?

[00:51:56] And his response was, we should have Andy teach everybody how to meditate. And. And it was like a seed that had kind of like, like one, I was like, Hey, you know, I'm not, I'm not qualified to do that was like my first sort of response. Uh, and, and then it sort of stuck in my head. And at some point I was like, you know, wait a minute, maybe that's not a, you know, maybe that's not a, uh, maybe that's not an idea that I should discount immediately.

[00:52:23] So I've been trying to kind of figure out what are ways, what are ways to avoid the, Inevitable burnout, inevitable burnout for people like, you know, if you talk to a software engineer who's been doing stuff for 10, 15 years, they will like count the number of burnouts they've had, like it's plural. Um, and so that is startling.

[00:52:44] And so anyway, so that, the, There's this, there's this idea I have around, is there a way for us to approach coding from this contemplative posture? Um, and, and the mental, understanding the mental side of programming, I unfortunately feel a bit like George Lucas in that I wanted to do the contemplative coding thing.

[00:53:06] But I realized I couldn't do that without understanding the mental side of programming first. And so I had to go back a level and that's the, the piece there. So, so hopefully that gives a, and I found as, as I've tried to explain this to you and in the lead up for our recording, uh, this now I have found that it has been difficult for me to try to explain what the heck I'm talking about.

[00:53:26] So that's part of how, uh, the, the, the podcast has become a little bit more of a, oh, how do I get this out in a form that means it's out, and knowing that it's not going to actually be the most articulate, most, um, well crafted sort of thing that, that it's, it, if it's out and it's maybe helpful for a smallish percentage, hopefully enough people will have patience at the beginning to continue listening.

[00:53:52] Jared: Yeah, so what's the lo fi DIY punk rock solution for this right

[00:53:58] Andrew: Exactly, right? So,

[00:54:01] Jared: Excellent, okay Well, we've talked about your journey from things completely outside of the realm of coding that seem like they're not related, but then when we look between, in that liminal space between the paving stones, we can see that these things are all related, co related, and connected. And we can see that now, I think, I'm excited because whatever it comes to be, you know, this, this podcast that is, that is up and coming. Um, it's something that's being created, right? It's a seed and it's going to turn into something. And I'm excited to see what that might be.

[00:54:51] Andrew: Thank you for that.

[00:54:52] Jared: Um, is there

[00:54:54] Andrew: I'd be remiss in not asking now that, or I should say, just to, and I would love to have you on at some point. So just to make sure I extend the invitation, um, before we

[00:55:05] Jared: yeah, yeah,

[00:55:06] Andrew: our next topic, so.

[00:55:08] Jared: I would love to do that. Yeah, that's, it's right up my alley as, as you guessed. So, yeah.

[00:55:17] Joël's Triangle

[00:55:17] Jared: So then, is there anything else that you want to talk about before we get to pics?

[00:55:20] Andrew: No, no, I mean there's like And yeah, I mean, I could talk about a million things, but I don't think there's anything that we had plans to, to discuss. So one, just to appreciate the chance to chat with you. And it's a, it's a super big honor to be included in the, in the catalog at Elm Town. So, um, you know, this was one of the resources that when I first started learning Elm, um, I was the only programmer that was, or I was the only Elm programmer on a team of like six.

[00:55:48] And so I spent a lot of time. Um, listening to podcasts and like reading blog posts and, you know, doing stuff, so like, I don't know that a lot of people realize, you know, like, so I don't, you know, I've never met Joël, but, uh, Joel's, um, posts about, uh, what makes good Elm code, I turned them into a, I turned them into a little, um, um, zine that I printed myself and then handed out to folks at Corvus, so that, you know, like, a lot of these folks that are putting things out into the world, I, I just, like, There's a little bit of like my own little love letter back to people in the community that have done stuff and what's happened with that, you know, so, so I was like, you know, a solo, like, it was me and the Elm compiler, much like Wilson, the volleyball, uh, and on an island building stuff.

[00:56:36] And, uh, and so it's, it's, uh, Elm Town is a, is one of those things for me that I remember early on listening and trying to get a handle on. The best way to solve something, or what's a way I can solve this now and then come back to it. And so, um, so yeah, so anyway, thank you. Yeah,

[00:56:53] Jared: beautiful. Yeah. Um, so then, um, If someone wanted to find those zines, you pointed that up there. I haven't seen that before. How do we get those?

[00:57:05] Andrew: you don't. You have to, you have to track me down in person. Um, uh, I guess, uh, I don't know, find me on Elm Slack and maybe, uh, give me your address on Elm Slack, I guess, or something, and I can, I've got, I think I've got maybe, like, four, you know, so, um, and for the audio, I'm waving something around for the audio listeners, uh, This is Arboriculture, uh, number one, and the title was, uh, Joël's Triangle, uh, and the triangle was mentioned because there are three tips that Joël, uh, has included that make better Elm code and, um, and so that was, uh, something that, um, Folks have probably heard, um, uh, Joël Quenneville talk about, um, And, um, yeah, so, I don't know, I guess I, I didn't, I actually didn't expect you to ask that.

[00:57:57] Um, but yeah, I'm, I'm lenards

[00:58:01] Jared: I

[00:58:01] Andrew: on, uh,

[00:58:01] Jared: that.

[00:58:02] Andrew: No, no, you can't, you, you, that's totally fine. Um, You can find me on Elm Slack, like one way to get a hold of me probably would be to find me on Elm Slack. I'm lenards, uh, at lenards on Elm Slack. And if you're comfortable giving me your mailing address, um, I will mail you one.

[00:58:20] Um, so, and they, they fit in a, in a standard envelope. So, uh, so the postage is like, you know, super cheap. So.

[00:58:31] But yeah, I had intended, as you can see, since I numbered it, I had intended to make more of these, uh, and then haven't. Which is a constant theme for me.

[00:58:40] Jared: Well, um. Putting seeds out there, right? So yeah, I like it. Um, so yeah, I want to say thanks to Joël for those posts too, because those have been instrumental in my process of learning Elm as well. So,

[00:58:57] Picks

[00:58:57] Jared: we may have already covered some of these, but what pics do you have for us today?

[00:59:01] Andrew: I will be, uh, uncharacteristically concise, uh, since we're running, uh, up against our time together. Um, so the, the first one was this idea of, um, there are coaches in all sorts of places that you don't expect, or the idea of coaching is happening. And I think this is really, really important to understand because when you see someone doing awesome stuff, you don't know what's behind that awesome person.

[00:59:24] Like, it's kind of this, like, iceberg of performance. And so, that I think was one of the things. You know, like, behind every amazing software engineer is a ton of mistakes and a bunch of problems and a lot of heartache. Probably a lot of mentors that they may or may not talk about. Um, and so, uh, Michael Lewis was talking and, you know, in the, Against the Rules about this in that season two, will be in the, as a pick in the show notes, um, about the, the coaching effect.

[00:59:52] And so, um, I also will acknowledge the self serving quality of this, that I'm trying to turn myself into a mindfulness meditation coach at some levels. You can see there's some, uh, aspiration in there, but my hope being that it is from a standpoint of like, how do I, you know, how can I be useful, in that regard?

[01:00:10] Um, and so I've been looking a lot at that coaching aspect because that comes up in you, those people who are coaching in a lot of cases, um, are using performance psychology or sports psychology at some level. And then my second pick was a course from Kirby Ferguson it is called Content Creation with ChatGPT and AI in 2024. Um, researching topics can be kind of a horror show now.

[01:00:36] You know, you go into a sports psychology thing, and depending on the website, you end up with being bombarded with ads and all these other sort of things, and your attention kind of gets pulled in different directions, and so I've been trying to play around with Using ChatGPT to summarize papers. Give me a list of who are the, you know, who are the top people, you know, tell me who the top people are in sports psychology, or what's the difference between sports psychology and performance psychology?

[01:01:06] Playing around with that from a standpoint of, of, I am somebody who wants to do some things that hopefully are cool and helpful, and I am not doing them, so what if I made them easier, or how could I like, you know, sort of smart cut my way to a solution, and so I've been begrudgingly, um, You trying to use the various tools that are out there.

[01:01:28] I don't really, I guess I've already named one of them, but, um, so just as an, as somebody who has been very, very, very reluctant to use them, I thought, you know, what, if there's a way for me to make this thing that I'm trying to do, if I can get over some of the speed bumps with it, uh, and so Kirby Ferguson, some, some folks may know, uh, Kirby Ferguson from a TED talk that he gave in like the early like probably 2011, and it was called Everything is a Remix and it really talks about this idea that a lot of the things we think are creative genius come from these three acts of like, being able to collect influences, and recombine or remixed things. And as someone who has listened to this podcast at this point you would probably not be surprised that I'm somebody who pulls in a bunch of different ideas and they may not collide very often and so this is somebody like Kirby Ferguson is somebody that I've been like he's one of these people that if you talk to me long enough I probably will bring Kirby Ferguson up.

[01:02:24] Um, and so this course is a little, this is not a techno, uh, technological course. So a lot of the folks that are listening are probably going to be way more up to speed, uh, on chat GPT and AI and LLMs than, than what you would get in that course. But for me, from this like, sort of begrudging, reluctant, like adolescent kid who didn't want to go do this thing, uh, the course was helpful in just sort of looking at what is a creative individual.

[01:02:49] How does a creative individual see the ability to use these tools beyond just generating wild pictures of unicorns with koalas riding them, um, or something, you know, like, and, uh, and beyond that? And so how does it fit into the creative process? to a certain extent, these tools may be things that we work, that we are, work alongside us in the future as software engineers.

[01:03:14] Uh, and so that's a little bit of a, an opportunity for that. And then the last link was something called Empathy in Tech, which I unfortunately have talked too much about the other links to really give the just do for Empathy in Tech. But, Some of the Elm community will, may know Andrea Goulet.

[01:03:27] , from her appearance on Richard Feldman's Software Unscripted. Um, and Andrea and a couple other colleagues have put together Empathy in Tech as a way to explore the notion that empathy is a core skill for technology professionals. Uh, it's not like an afterthought. It's not a thing you do afterwards.

[01:03:48] It's not something you can ship after you get the MVP out to a certain extent. Um, and so, really cool stuff there. Andrea's also um, uh, involved with uh, I, uh, I don't think she is, um, C Suite there anymore, but is involved with and was one of the co founders of CorgiBytes. And they take this attitude of a mender perspective to software.

[01:04:08] And so it's about how do we, how do we mend software and, and make it, make it able to live in the, into a further space without having to go through and rip it out and rewrite it. One of the most uncompassionate things you can do is rip something out and rewrite it because you don't understand it. And so for her, a lot of things are around that.

[01:04:27] Comes from not having an empathy perspective in some cases, and then also the lack of context. So, um, Andrea is In the process of writing a book that I think is called Empathy Driven Development. Um, I can't remember the title, but the, the, the show notes gods will correct us. Uh, and so I will, I'll provide a link to that.

[01:04:51] But, but, I have, dropped in and got to go to a bunch of the Empathy in Tech events and just wanted to kind of put that out there. And, um, I would say that the, one of the hallmarks of the Elm community as a whole is an aspect of empathy. If we look at the fact that we want to use language that is inclusive, um, you could get that, you get that feeling when you're on Elm Slack.

[01:05:11] We want to use language that is approachable and not just like math. It doesn't have the, you know, there is a benefit to the, the terseness and compact power of having terminology, but I think the fact that the Elm community as a whole has said, you know, Hey, let's, let's like call it this, the thing, what it does, um, and, and not, you know, bring in these other things that, you know, you might have to, there's an elegant simplicity and amazement in, but. But yeah, so, um, so I'm plugging, I wanted to plug the Empathy in Tech just because I think it is a thing that I feel like when I look at, you know, one of the things I'm proud about being part of the Elm community, it's, it's the fact of that it is an empathetic and inclusive environment.

[01:05:52] Jared: Those are great picks and I agree regarding the, the Elm community is one of the reasons that I stuck around. I've, I think I've told the story before about going to Strange Loop and Elm Conf and, and having this just overwhelming kindness, uh, around me and all the folks, even though I was a beginner, you know.

[01:06:17] Let me into the group and so, yeah, it's, uh, it's definitely felt like this is my way to be able to give back for that is to be able to, to host this. And so, my picks. I will start with this idea that it fits really well with this episode, because I feel like you and I have got to know each other pretty well, and I had recorded this episode with Aaron Strick, and he said that he doesn't like to just generally give out recommendations.

[01:06:52] It needs to be to somebody, and so I think these are more like picks for Andrew Lenards than necessarily everyone, but If you, uh, if it sounds interesting, you're welcome to check it out as well. But there's this song called Just Let Go by Sturgill Simpson. It's on his album, Metamodern Sounds in Country Music, which if you're a punk guy, it might sound like, uh, well, you know, that's, uh, That's not really up my alley, but I would say Sturgill is one of the the most punk in terms of country music But

[01:07:29] yeah, I think Hank, Williams was

[01:07:31] things there

[01:07:31] Andrew: Hank Williams was more punk than a lot of punks, so like, uh, I get, I definitely, I'm open to that, so I'll check it out.

[01:07:38] Jared: Cool And then the other two are books. The first one's Zen Computer by Philip Toshio Sudo and This book is one that I have marked up nearly every page in it. I have dog eared a bunch of the pages. He's written another book called Zen Guitar, which I read first, but I don't know if it was the time of my life or because I'm a software engineer, but for some reason this one really stuck with me, and there are a lot of, bits in here that I take and I apply to software development.

[01:08:20] I, I compare them, of course, with, you know, Zen and then with Stoicism and just all kinds of, um, different, uh, ways of thinking that I can, um, learn from this and, uh, and really help create clarity in the way that I think. And then related to sports psychology. There's this book called Pleasures of Small Motions, subtitled Mastering the Mental Game of Pocket Billiards by Bob Fancher.

[01:08:54] Uh, for those of you who, uh, have heard me talk about this before, I, uh, did a collaboration with Andrey Kuzmin, where we worked on a 3D pool game, and, um, I have a, a long appreciation and love of billiards. And this book really helped me think about psychology in a, a way of separating my emotional state from what I was attempting to do.

[01:09:34] And to help me think about the, my goals, my aspirations for. Whatever the activity was in this context, billiards, but you can apply this pretty, it's a pretty transferable concept here for gaining that clarity.

[01:09:49] And so, yeah, those are my picks. So, yeah, thanks to all the folks listening out there. Please rate and share if you're enjoying the show. And thanks, Andrew, for coming

[01:10:03] Andrew: Thank you, Jared.

[01:10:04]

© 2024 Jared M. Smith