Pybites Podcast

#172 - From Punch Cards to Git: The Legendary Journey of Jeff Haemer

Julian Sequeira & Bob Belderbos

"The sooner you make your first five thousand mistakes, the sooner you will be able to correct them." - The Natural Way to Draw - Kimon Nicoliades

Jeff Haemer’s career spans over five decades, and in this episode, he openly talks about his continuous passion for learning and solving interesting problems.

We talk about his experience teaching computer science with almost no prior knowledge, his love for Unix, how he landed a job at Twitter in his late sixties, and why he believes networking is key to landing jobs.

Jeff also generously shared his list of books he keeps going back to for inspiration and wisdom. 

If you’ve ever felt stuck or uncertain in your tech career, Jeff’s journey will inspire you to take bold steps, embrace failure and adopt a persistent mindset to succeed at work and in life.

Reach out to Jeff or us if you like this conversation, thanks for listening.
- Jeffrey Haemer
- Pybites community

Chapters:
00:00 Introduction, welcome Jeff
03:33 Wins: learning Rust / Pybites Rust platform
08:10 Jeff’s journey: from punch cards to modern programming
16:20 Random luck vs being prepared (networking!)
20:04 What's great about Unix, what makes it timeless?
25:05 How to learn and making engaging presentations
29:21 Persistent mindset, embracing failure (it's inevitable!)
33:37 PDM ad segment
34:02 Jeff's favorite books
44:11 Practical SW dev vs book learning
46:35 Wrap up and CTA

---
Jeff's reading list:

* Current audiobooks
- J. K. Rowling: Harry Potter y La Piedra Filosofal
- Robert Galbraith's The Ink Black Heart

* Paper
- The Living Talmud
- Edward Frenkel Love and Math
- Tulsi Gabbard For Love of Country

* Daily Reads
- Ryan Holiday, The Daily Stoic
- The Holy Bible

* PDM books (useful advice + inspiration)
- Kimon Nicoliades, The Natural Way to Draw
- Eric Temple Bell, Men of Mathematics - There is no one, true path.
- John Stuart Mill, On Liberty (I recommend All Minus One, which is just Mill's arguments on free speech, and only about 30 pages).
- Plutarch, Life of Caesar - Caesar was assassinated; when I read this, I was amazed that he lived long enough to get assassinated.
- Mark Twain, Huckleberry Finn - “All modern American literature comes from one book by Mark Twain called Huckleberry Finn.” – Ernest Hemingway)
- Bob Drury & Tom Clavin, The Last Stand of Fox Company - Marines
- Jim Watson, The Double Helix
- Kernighan & Plauger, Software Tools (not "... in Pascal") - Perhaps the best practical book ev

Or having your network and hitting up your network and make that a habit. Right? That's absolutely true. I have a lot of interesting jobs that I've gotten simply because of who I know. And I am very social for a software engineer, as I suspect you are. Some people are not, but it really helps. So whenever I talk to people about getting jobs, and I try to help people find jobs a lot, I say, well, what you need to do is to reach out and go to meetups and join various organizations that let you actually physically socialize with people. Hello, and welcome to the Pibytes podcast, where we talk about Python career and mindset, where your hosts. I'm Julian Sequeira. And I am Bob Baldebozenhenne. If you're looking to improve your python, your career, and learn the mindset for success, this is the podcast for you. Let's get started. Welcome back, everybody, to the PY Bytes podcast. It's Bob Ellibles and I have a very special guest with me today. Here with us is Jeff Hamer. Jeff, welcome. How are you doing? I'm fabulous. I try always to be fabulous. Don't even have to ask. No, don't even have to ask. So Jeff and I go back quite a while. I'm not even sure how we got connected, but I was very happy that that happened because we check in on regular times. And, yeah, it's always an inspiration talking with you because you have so many cool things in your background and your experience. And, yeah, we always end up geeking out on Python, Unix, and all that. So, yeah, for people that don't know you yet, can you do a quick intro? Sure. I'm Jeff. Hi. I don't know what to say, except that perhaps this interview will teach you some stuff. I've been doing software for a long time, and I've done a lot of odd things, as most of us have. As many of us have. And I think. I'm not certain who the audience is, but I think if it's the folks who normally come to you for mentoring, that it's people who are coming in from a lot of different directions. And so I think they'll understand. Yeah, it's mainly python developers, maybe get into rust as well, but it's mainly python people. Yeah. Yeah. Cool. So thanks for that. Do you have a win of the week? I do. I try to have several, but one of them is I'm starting to do rust, and that's the first language that I've learned since I tried to learn Python. So that's very exciting for me. And I started doing that for two reasons. One was that I was inspired by your constant attempts at rust, and I thought, nah, if Bob can do it, anybody can do it, and that's true. And also I started using uv, and uv is in rust and it is fast, and there are some things that I have done in Python that I would like to be. I'd like to be a lot faster, and so it's an excuse to try something out in rust that I'm actually interested in. Yeah, uv is amazing. It is. Now everything. It works very well, very fast, and I switched to it 100% and yeah, it's a joy. Cool. I'm excited that you're learning rust. I went a bit quiet on that, but I also win. We built a little platform to host rest exercises, so we're going to do it on the existing platform, but then decided to keep it separate. And it's kind of nice to go in tandem because now you're learning it. Tenor is from the community is learning it, I'm still learning it. So now with the deliberate practice of not only doing exercises, but actually building the exercises, I think it's a nice motivation for all of us. Yeah. Once I can get the platform to work for me, because I having some kind of technical glitch that is me, I'll see if I can contribute a bite or two. Awesome. Yeah. Cool. So I wanted to ask about your career progression, your programming experience, and what makes you excited about coding, but also want to highlight in your case, it's that passion of always relearning that which always inspire me with. Well, it's a little hard for me to remember that far back. I think I wrote, I wrote my first serious program in 1966 and it wasn't much program and then I didn't write another program, probably till the mid seventies when I was in graduate school, and I wrote it to solve a problem. And then I didn't do anything almost, I think, until I got my first job. I dabbled a little, I wrote a little bit of code when I was a postdoctoral fellow, but then I was a biologist, so my degree is in genetics and I came to Colorado from Washington from, to do a postdoc and I made a friend in the computer science department, which was over in the engineering school up on the 8th floor of the engineering tower. And, you know, I did a couple of years of postdoc and it wasn't very exciting for me. I didn't, I didn't do, I thought a very stellar job and as with most of academia, it would mean I going to do another postdoc at that point. And I didn't want to do that. So I didn't know what I was going to do. Was I going to write? Was I going to be a street musician? Who knows? So I remember going over to the engineering building to visit my friend and ask him some questions. He's a mathematician, basically. And I got in the elevator on the ground floor, and this other guy got in next to me, and he's looking at his shoes and shaking his head, and finally he looks over at me and says, you don't know anybody who wants to teach an undergraduate computer science class, do you? And I said, thinking quickly of my rent, you mean for money? And he said, not much. I said, sure, me. And he looked at me with some skepticism because I had hair down to my butt and holes in my jeans, when in fact he should have been skeptical because I didn't know anything. But he was, it turns out, the chair of the department, he'd just come from a faculty meeting where he discovered that he had 3250 person undergraduate courses that he needed to give as service classes and he didn't have faculty to teach them. And so he was desperate. And so suddenly I was a lecturer in the department of computer science, and I had two tas and 250 students and three lectures a week. And so I started programming, but that was a long time ago. Sometimes I tell people that when I started programming, I wrote programs by punching holes in little pieces of cardboard. And it's hard for people nowadays, I think, who are under, oh, I don't know, 50 to even imagine that. And one of my friends, David Wilson, said, he heard me say that. And he turned to me, he said, really? I said, I think so. It seems so implausible that maybe I dreamed it. People say, what ide did you use when you were young? And I said, ide, we didn't even have screen editors. You punched cards. And then when you actually, finally, we finally got terminals, we used what are called line editors. You can still find those, but I don't know anybody besides me and a couple of other people who use them. So that's fascinating. Yeah, yeah. So I started programming by being a faculty, a computer science faculty member. It also shows that you take on those challenges and you go outside of your comfort zone. Right, because that sounds pretty scary. Well, I'm, I'm a Marine. I'm actually a Marine Corps veteran. And you don't become a Marine if you're risk averse you know, it's just not what we do. Right. So. And if you're teaching, at least nobody's actually shooting at you, so that's a good thing. They might wish you were dead, but they're not actually physically trying to kill you. Good point. So, yeah, that's kind of interesting how these things go, right? Same with how Julian and I met. And it was all through some coincidental thing of me booking out the lab and he tapping me on the fingers. So you getting into the teaching seemed pretty. Yeah, just a random event almost, right. Or do you think that you. I mean, getting into that elevator, was there like a build up to that, or was it really completely out of the blue, completely random? People ask me about my career path. I say career. I didn't have a career. I had jobs. And they were interesting because I'm usually the person that gets asked because everybody else is afraid to do it. People say, hey, want to go to Kuwait and give a talk, help organize a conference? And I go, hang on. And I looked up. I went to the library. I got a fromrs guide. You remember those? They were tour guides for regions. And you open it up. And I looked up Kuwait and it said they hadn't burned down a us embassy there in six years. And I said, sure. So I went. And like a year. No, six months, I think, after I left, you know, Saddam Hussein invaded and killed off a bunch of people that I met while I was there. But. So if the timing had been wrong, I'd be dead, but I'm not. I've done lots of interesting things because when people invited me, I said, okay, but it's not all random, right? Because I want to contrast that with putting your work out there because I think you have another story. I think it was around Twitter. Yeah. And that one was pretty deliberate. Right? Like, you put your work out there and then you got hired there. Maybe you can share that story, surely. I'm happy to. So let me see. How can I get to this? No, it's pretty random. One of the people that I met when I was teaching computer science was Evie Nemeth. And Evie Nemeth and I spent a bunch of time hanging out together. And I don't know if you know the series of books that she wrote, but she was a ski bum who ended up at the University of Colorado when she ran out of money. And she invented a field called system administration, and it was Unix system administration. And then she wrote a series of. Of books. And so she said, oh, you should learn this Unix stuff, and nobody else wanted to do Unix. And so I learned about that. And through a series of happy accidents, I ended up at a company called Interactive Systems Corporation, which was the first commercial Unix vendor. I worked on the port of Unix to the intel architecture, the. The first actual series port. So that was cool. But then I bounced around through a variety of different jobs, many of them interesting, again, for the reasons that I said. And I was working at a job at a company that I didn't like. I just didn't like the job. I loved the people around me, but it was management, and I did not see eye to eye, which is usually the reason people change jobs, right? So I got this offer from Pearson, which is the world's largest publisher. They bought, like, Addison Wesley and Prentice hall and places, people like that, to do a set of videos about git. And I thought, sure, you know me, right? And so I talked to some people and said, well, nobody ever makes any money doing those. It's really a money loser. And it takes a bunch of time, but it's good marketing because then people think you know something. And so I ended up working two full time jobs because, first of all, it did take a lot of time, but I had a lot of vacations saved up. And so I would work Monday through Thursday for my day job, and then Friday through Sunday, I take Fridays off as a vacation day. And. And I did these videos, and they got published. And just by dumb luck, they became popular. They made Pearson's list of most popular videos and also best reviewed videos. I was on the same list as that year was Don Knuth's art of computer programming. And I belong in the same list. Is Don Knuth in, like, Superman, bizarro comics, or something like that? That's not. You can't even take that seriously. But then when the company I was working for became a penny stock, that's, I guess a technical term, it was tanking. I called Trent Hein, who was the co author of a. Who was a co author of mine in a book that was part of Evvy's series. Right? I don't know. Can you see this? Yes. Okay. And I said, france is a serial entrepreneur and has made lots of successful companies. What should I do? And he said, oh, you should go work for Twitter. Because I just talked to somebody who said, twitter's hiring. I said, okay. So I applied, and apparently they desperately needed some git people. And so I looked like a git person, and they hired me. And I could say, they say, do you know anything about get us, get. You know, I've got videos on Pearson that are bestsellers, and, you know, it's just. It's just dumb luck. Yeah. But God's being good to me, you know? Then you look pretty knowledgeable when you have that. Yeah. Really? That's kind of cool. How are you? Yeah, well, first of all, dedication, right? Doing two jobs Monday through Sunday. Amazing. I mean, I guess you have to just think like it's a sprint, right? You do that for a year, I'm not sure how long. It's not forever. It's a sprint, right. You have to make those sacrifices, right. And then, you know, it all comes back, as was the case in your case, but it's also networking. The fact that you reached out to that, uh, person, Trent, I think you said, yes, that that goes in hand. In hand, right. It's not only putting your work out there, but also making those, uh, strategic, um. Or, you know, just. Just. Or having your network and hitting up your network and make that a habit, right. That's absolutely true. I. I have a lot of interesting jobs that I've gotten simply because of who I know, you know? And, uh, I am very social for, uh, software engineer, as I suspect you are. Some people are not, but it really helps. So whenever I talk to people about getting jobs and I try to help people find jobs a lot, I say, well, what you need to do is to reach out and go to meetups and join various organizations that let you actually physically socialize with people, because that matters. I worked for fold up as my first job out of academia. I taught for a couple of years and taught my way through some of the curriculum. And then I decided I knew enough to get a job, and I was wrong, but I'd go to places and they'd say, show us your computer science grade. I said, I don't have computer science grades. I taught computer science. And you hire my students, and they'd go, don't call us, we'll call you. We need grades. That's in our list. I worked for a fold up. You've worked for startups before. This was a fold up. It died shortly after I left. As it was dying, I was trying to recruit some people, and I called a guy that I knew as a musician, but I knew that he had gotten, like, a masters in computer science at MIT. And that was, in those days, a very rare thing. And so I said, do you want to. Are you interested in a job? We'd like to. We're trying to hire. And he said no, but would you like a job? And I said yes. And so suddenly I found myself working for Interactive Systems Corporation, which was, as I said, the first Unix vendor. And I was suddenly doing Unix instead of trying to program on, you know, in assembly language on screens that were this big and stuff like that. Apple Iis. So, yeah, yeah, go ahead. I want to ask you about Unix and git. So Unix, what makes it timeless? What is great about Unix? Again, it's sort of hard for me to explain that to people who are under 50 or so because they assume that things are like Unix. But the real contributions of eunuchs are the kinds of things that happened to make it different from the things that preceded it. And so, for example, the first job that I had, that I told you, the first Unix job I had, I was working for one of the two guys who invented screen editors. That's a big deal. The idea that you can like have this thing on your screen and move the cursor around and change stuff and then write it out and you don't have to play blindfold chess or punched cards or something like that. That's a big deal. I think the shell, there were command interpreters, but there were things like Command.Com and a lot of the things even today or Command Exe, whatever it's called, in Windows, I've never really had to use Microsoft software since like 1983, which is DOS 2.0. But a lot of the things that apparently made their way into that were from Unix. And Unix had this shell and the shell was this elegant, beautiful little way to put together little programs like Tinker toys and actually get things done. And I sort of think of the shell as my first language. It's my first programming language. It's the idea of little tools, each of which does something well. And you can then write them in ways that let them snap together and work in tandem with one another. And I think before that everything was giant monolithic pieces of junk, some of which I actually contributed to. But yeah, it's the tool based approach to the world. It's the idea that there are standard in and standard out that you can read from and write to in standard error. It's. I'm going to say something that's going to sound weird, but it's the idea of individual contributors instead of giant corporations running things. It's the whole open source idea. It's the idea that you as a person can actually contribute something. You don't have to join a giant corporation and work for IBM for your entire career and work on this little tiny focus thing, you can do stuff. That's a good point, because these utilities, they are written by different contributors, right? That's a big deal about git. Also, one of the things that Linus did when he wrote git was to make it really easy for you to write a new git command in the same way that it's really easy for you to write a new Unix command. You just put it in your path and git, you can write a new git command, put it in your path and then it's a git sub command. Boom. And I emphasize that early on when I'm teaching people about Git. I also like how it's related to good software. Best practices like functions. Utilities that are decoupled can easily be tested and combined. You see that all with Linux or Unix years ago. The idea that you can do that with whole commands and that the commands themselves can be decoupled and then put together if they're built correctly, it's huge. It's huge. Awesome. I might skip the git question because we do come up on time, but we can always have a follow up discussion on that. But I want to ask you about how you learn because you're a big proponent like us, for Jit learning. Just in time learning, right. And also you gave quite a few presentations. We were fortunate to have you on a couple of code clinics in PDM. Your presentations are always really insightful, fun. And so, yeah, I want to ask you how you learn. How do you go about that and how do you make those presentations engaging? So I'll go backwards for that. Presentations, it's like everything else. You learn to do presentations by doing presentations. And so ever since graduate school, in graduate school we had an obligation as students to give a presentation to the entire department every quarter, you know, once every three months or so. And I also play a lot of music. So I stand up in front of big crowds and talk to them. And at first it's really scary, but then after you've done it a bunch of times, you get practice. And I usually do presentations now by starting out by making slides. I just, I have a slide template that I arrived at after giving a whole bunch of talks. I volunteered a couple of meetups that are technical meetups. And I say, whenever you have a speaker cancel, I'll try always to have a talk. And I try never to give the same talk twice. So I have lots of different talks and forces me to go learn about something new. And I do it by just I think about it for a while. I read a little bit, and then I start to make slideshow, and that organizes my thoughts. And then I go back through and I put in speaker's notes because I use Google present. I think that's what it's called. And then I always, I learned, do the step of doing the entire presentation timed out loud. And then I get really depressed because it takes way longer than it's supposed to take. And I spend a lot of time doing uhs and ums and losing the track of what I'm supposed to be saying. But you have to do that once, at least, and you don't want to be doing it in front of other people, you know? And I usually then go through a second time fixing all those problems and fixing the order of the slides and fixing my notes and throwing things out, and. And by the second time, it's pretty good. And then when I have to actually give it, it's ready. So that's a big help. How? I'm sorry. Those are awesome tips we can use. Yeah, it's a big deal, is give lots of talks. Always practice them out loud, end to end, timed before you think about doing them, because you'll discover you're wrong, you know, and there are big holes. And I. And then the question is, how do you learn? And my answer is, because I always accept challenges, opportunities. I just learn about everything I try to. And so my life is a lot of squirrel. I see something, and it looks really cool, and so I go and I learn something about it, and it's squirrel combined with panic, because accepting a challenge means that you have to do a bunch of jit learning in order to go back to the thing that lets you say, sure, I'll try that, and actually learn it a lot more deeply. And usually that's sort of terrifying. But I'm used to failing a lot. I fail constantly. I mean, I've had lots of opportunities and done lots of cool things, but I've also failed at an awful lot of things. And so I'm used to failing. It's like dating, I think, for guys. You ask a woman out when you're 16 or something like that, and she says, no, I wouldn't go out with you. And at first, that's crushing, but after a while, you get used to it. And so you say, you ask some woman out or ask her to dance, and she says, no, go to the next one. Then when you find somebody who says, yes, you discover that it's probably not who you expected it was. And that's really fun to learn about. I think that's important. Same with jobs and same with programming, right. You have to accept that there will be a lot of failure and struggle and to get there, right? Yes, absolutely. Yeah. And that's all mindset, mostly mindset. But how do you persist through that? Because it can be because you. You try to solve some really hard problems also with math. And how do you persist through that? If it gets tough and it seems, like, unsolvable, you know, you get used to failing, you know, and you say. And you say, oh, yeah, okay, that didn't work. So that's an exposure thing, right. Because the more you get into that mindset of failing and failing, you become almost comfortable with that then, right. And you have to accept the fact that you have limitations because we all do. Right. And we all have different limitations. We all, each of us has our cross to bear. And so for some of us, it's being cripples. For some of us, it's being old. For some of us, it's being stupid. For some of us, whatever. But you have to decide that you're going to do something despite your limitations, not just sit around and whine. Ulysses S. Grant was a drunk. So was Winston Churchill. They did okay. You know, Washington, George Washington had these bad false teeth and probably bad breath, and he did okay. Right? And so I remember I went to a music festival right around when I got my first job in software when I was about 35. And this guy who was actually a software engineer, a programmer is what we used to call ourselves, came over and he was very concerned and he gave me what he thought was and probably was good advice, which was, you shouldn't do that. You should go into some other field, because programming is for people in their twenties. And by the time you become 40, your career is over. You need to be a manager or something like that, and you're too old to do that. And if I'd believed him, he would have been right. You have to just say, okay, I'm going to do this, and I don't care what other people say, and I don't care about the fact that I may fail. And so I took my first job as a software engineer at Twitter when I was. I just about was 69, I think. And that's over 40, right? Well over 40, yeah, well over 40. I've had lots of jobs. I've had a bunch of the jobs that lasted a while after I was 50. And. And I'm still writing code because I think that it's fun. I'm going to learn rust because it seems like it's fun. I'm going to rewrite some code that is hard stuff, at least for me in rust that's now in Python so that it can be a lot faster and I can answer some math questions that I have for myself. I hope to turn some of that writing into bytes because I think some of it is illustrates things in rust that I'm doing in Python and that might be useful for some people who are coming to rust through Python. So I just, I read a lot. I pick up anything that catches my fancy. Awesome. Your inspiration in just twelve weeks, pyrites elevates you from Python coder to confident developer. Build real world applications, enhance your portfolio, earn a professional certification showcasing tangible skills, and unlock career opportunities you might not even imagine right now. Apply now at Pibit, DS, PDM. And that's indeed the last question I had. What are you reading right now? Or if nothing specific, if you have a book for the audience? I have a couple of things that I do for reading. One is I now listen to audiobooks or do things that I read every day because I get stuff sent to me in the mail automatically that I sign up for. So on a daily basis in my car, I've got an audiobook. I've got an audiobook at home that I listen to when I'm late at night. And both of those right now are by the same person. Who is the one in the car is this one, which is JK Rowling. Oh, nice. Harry Potter y la piedra philosophal, right? Oh yeah, reading in Spanish. Yes, I speak Hispanics. I was a high school dropout. I was a high school dropout that your parents warned you against associating with. And I went to off to the University of Madrid and learn some Spanish. And that of course was like 1965. So every once in a while I try to practice some Spanish and I get that I'm reading a book that somebody sent me in the mail without telling me as a gift. And this is by a guy named Edward Frankl, who is very interesting. I recommend his love imagine podcast that he, that he did a little interview on numberphile and I'll try to send that to you. I read the Bible every day. This is bar Crumb's genesis because I started doing that many years ago. They send it, send me a passage and I start at the beginning of Genesis on January 1 and finish at the end of the year. Right. And so I've read it through a whole bunch of times. And it's very interesting. It's a fundamental part of our intellectual tradition. And so I thought time is right, we should learn it. Right. I saw a very nice dutch edition in Holland. It was 2000 pages. And I might get it because it's timeless. Right. Well, it's interesting because it affected, you know, all the people who founded our country. It doesn't matter whether you're religious or not. It's fundamental, you know, things that people say, oh, you have the patience of job, who's job, right. It's full of stories. Right. And that's also how we learn. How we learn. And I also get, I'm very interested in the stoics. I've got a bunch of math about modeling stoicism. But part of that is because every day I get this thing called a daily stoic and they send me and I read the day's stoic things and I've been doing that in circles for years and it really helps my attitude. Stoicism is awesome. Yeah. I'm reading the daily Stoic Orion holiday. I'm actually reading it with my dad. So we both read the same day every day. Yeah. And it's awesome. It's so much wisdom in there and. Yeah. Especially how to control emotions and be more rational. Yes, yes. And so you can see that that's going to be a part of our, the way that we look at life for large. You know, there's a few things that I read a little bit of every day, right. I have books that I recommend to people because I go back to them and one of them is this the natural way to draw. And I don't know, my family is an art family. But they look at me, they say, nice boy, too bad he has no talent, can't get a real job. And I picked this up one day, my father's third career, because my father did a lot of different things too, was being an art professor at the University of Oregon, which he started doing when he was in his sixties. And I opened it up at random and I read this paragraph which was unfortunately most students, whether through their own fault or the fault of their instructors, seem to be dreadfully afraid of making technical mistakes. You should understand that these mistakes are unavoidable. The sooner you make your 1st 5000 mistakes, the sooner you will be able to correct them. So that's. Wait, that's true of everything. That's a nice question. This is an awesome book because it brings it back nicely to what you said about then, you know, that you need to fill a lot. This is a book that's important that I started reading when I was a high school student, and it's little biographies of famous mathematicians. And you get to see all the horror shows of their lives and the paths that they took and how different they are from one another. And it's inspirational. Right. This is an excerpt from Don Struten Mills on liberty about free speech. And I think that, again, if you don't talk about things to people that you disagree with, then you don't learn. This is the best book ever written in America, Adventures of Huckleberry Finn. And again, it's sort of, this is a novella, Picaresca. It's a picaresque novel about episodes from some, from a kid. And the writing gives me goosebumps. It's so well written. There's a book that I recommend to people, and I don't happen to have a copy because I think I keep giving them away by Jim Watson. You probably heard of him. He's the guy. Biology of the gene. Yeah. Watson was the guy who did with Sir Francis crick the double helix stuff. And he has a book that he wrote around the same time as this. This is a technical book, but he wrote it and it's called the Double Helix. And it is a great and inspirational story about the kinds of stuff that he went through because you think of people, as I said, as sort of going lockstep through these things that you're supposed to go through. And he didn't do that and neither did Sir Francis Cricken. This is a great book. I know I've recommended this before. Oh, suffer tools. Yeah. That got lost, actually. I tried to order it and never got to me, but I'll try it again. I think this is the best software book ever written and I keep going back to it. Every once in a while I'll go back and I'll have done something and I'll say, what's it say in software tools? And discover that. Awesome. Their approach is smarter, for sure. Yeah. And then there's another one that I also don't have now. Ten tips. Well, these are books that I just keep going back to, the Staples. So I recommend them because I think they're inspirational for people who are trying to learn PDM like things. Right. And there's another one that I will recommend that I keep giving away. So I don't happen to have a copy right now, but I've read it at least three times, maybe four so far, and it's a history book. It's a true story about an episode in the Korean War in the 1950s in the Marine Corps. And it's on the reading list. Marines read. Who knew, right? But every rank has a reading list of books that you're supposed to read at that rank in order to get far enough along to go to the next rank. And this is a book. This is one of two books. One of them is technical and this is historical. That's on the reading list from, for every rank from private up to the generals. You gotta read it. And so I ordered it and I read it and I've reread it many times and it's, again, it's about PDM like things but in a different field. Right, sorry, what's the title? And the title is the last stand of Fox Company. And I'll send you a link, this list and stuff like that. But it's an awesome book. And I got it. And it was one of those things where I got it from Amazon. I unwrapped it, I started to read it. And this was in, you know, like in the afternoon and the next morning I was still awake finishing it. I couldn't put it down. I stayed up all night reading it. Wow. And you go, okay, I get why this is on the reading list. Yeah, that says a lot, right? Yeah. So anyway, that's fabulous. That's a lot of interesting, inspiring, life changing titles. Which makes me want to ask you one more question. As software is so practical in recoding and it's all about implementation, jit learning books is almost like the opposite, that you invest a whole bunch of time learning and sometimes you don't see the immediate results. So how do you balance that? What are books to you? I mean, obviously you're a big reader and they're important. How do you see it as. I don't know if you can see the bookshelves all around me, but yeah, I, I, as I said, it's sort of squirrel. I see something and if it looks really interesting, then I read it. And then later when I have problems, often I go, wait, I have an idea that's completely outside the box of how to approach that. And that's how I get those things. And so I keep learning because it pays off. And the other thing that I try to do is I spend lots of time trying to help people because that all, you know, if you help people, then finally you, when people, when you want help people will help you. It's part of building your network, I guess is one way to say it. But mostly it's. And having a lot of different kinds of knowledge makes it easy both to help build your network because you're interested in more things that other people you meet are interested in. And it helps you if they need help, you go, wait, I remember I read about this thing and I learned about this and this applies and you probably haven't thought about that. Oh, yeah. Interesting. So you build up a bigger reference. Right? And I like what you said about out of the box thinking like the math and the programming is so linear. And maybe left side, this develops more like your creativity and maybe your right side reign, right? Yeah, yeah, absolutely, Bob. And speaking of helping people, what can I do for you today? Speaking of, you've done already so much. Well, but if sharing all this, this amazing experience. So this has been awesome. I've done a lot of things and many of which we haven't even talked about, but yeah, I definitely want to have you back at some point. So don't worry. Okay. But if there's something that I can do to be helpful to you or somebody else who watches this, if somebody else ever watches this, you know, send me a note because if I can help, I will. Yeah. Also the CTA, if you're watching, listening, your contact details will be low. Right. People can reach out and. Absolutely. You're in the pie bytes community as well. Yeah. Although I don't, I don't do social media. Yeah, that's our private instinct. I don't do Facebook, I don't do Twitter. Amazingly, I don't do, I don't, don't do any of that stuff. But I respond to email and I also actually respond to phone calls. I always put my phone number at the bottom of my email in my signature and people say, oh, you shouldn't do that because you'll get stalked, people will call you and that hasn't happened yet. But you don't become a git guy, for example, and do version control if you're not used to taking calls in the middle of the night from people who say, oh, well, I just messed up my repository and I did this commit and I've got to find some way to, can you help me? And so my girlfriend is used to my picking up the phone and rolling over and saying, wait, are you on call? You know, so I take calls at all hours of the day and night, especially if somebody has a problem. Amazing. Very inspiring. Well, Jeff, thanks for hopping on and sharing all this and very much really enjoyed our interview and hope our audience will enjoy it, too. Yeah. I always like talking to you. Yeah. It's a pleasure. More of a chance to talk. Yeah. Find you inspirational. Oh, you too. And thanks for sharing it on the Pivots podcast so more people can chime in and listen. Yeah. Thanks, Jeff. Thanks, sir. We hope you enjoyed this episode. To hear more from us, go to Pibyte friends. That is Pibit es friends, and receive a free gift just for being a friend of the show and to join our thriving community of python programmers, go to pibytes community. That's Pibit Es forward slash community. We hope to see you there and catch you in the next episode.