Pybites Podcast

#111 - Julian asks Bob about his use of ChatGpt

Julian Sequeira & Bob Belderbos

Welcome back to our podcast. In this episode Julian interviews Bob about his recent adoption of ChatGpt in his daily work.

A bit hesitant at first he has fully embraced the tool and already noticed a significant increase in his productivity as a developer.

We also highlight some possible concerns and how experience still matters a lot.

As always we also discuss some wins and books / resources we're consuming.

Enjoy and hit us up on our Slack if you have any feedback.

---
Chapters:
00:00 Intro
01:28 Wins
07:05 Julian interviews Bob about his ChatGpt use
12:08 Julian doing a British accent lol
12:30 Bob gives another practical example of using ChatGpt
14:26 Julian on the fear of these tools and becoming obsolete
16:39 Books + Cassandra - "Make work suck less" - shoutout
20:50 Next episode and outro
---

Prompt engineering resource

Mentioned Pybites Search command line tool

Check out our YouTube Channel 🐍 🔥 

Join our Slack Community 💪 😍 

Reading:

For example, the other day I had to make a Django command to do some cron job type thing for cms that you requested from me. And I basically start the pair program with the thing and you say, can you write a Django command to parse a CSV? So you get some boilerplate code. You grab that code, which often works already out of the box, and you just adapt it to your needs. Hello, and welcome to the Pibytes podcast, where we talk about Python career and mindset. We're your hosts. I'm Julian Sequeira. And I am Bob Baldebos. 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 another episode of the Pivots podcast. This is Bob Ellebozzam in here with Julian. How's it going, man? Yeah, it's great. A lot of exciting stuff happening. How are you? I'm good. I'm finally reunited with you after what feels like two weeks, three weeks. It's been a while, man. Yeah, it seems like we only get to catch up on the podcast. Sadly enough, this is our way to keep in touch. So you're all just listening to our hangout sessions, but we'll kick it off. We're going to keep this pretty quick, not because we're strapped for time or anything like that, but because we want to keep this punchy for all of you listening, of course, as always. So, Bob, talk to me. What's your win? What's something you've been up to lately that you're proud of? Excited about something like that? Well, I took a little break without pivots falling over, so thank you for covering. You're welcome. And the coaches, especially at code clinic as well. Yeah, no, I think the win is adopting new tools, and I think we're going to talk about that a little bit as well. But definitely getting some productivity gains by adopting AI tools. Love it. Yeah. Excellent. What about you? For me? Win wise? Not too much. I haven't been winning late. No, I'm kidding. Lots of wins with the kids. They're home on school holidays, so some special things there, but I'll go into another time. One thing I'm very excited about is I've just been a little more. I've taken a scalpel to my schedule, especially in the evenings, right. With what I get up to with pie bytes. And that means cutting you out of my life in the evenings, which sucks, but, you know, it's necessary to get some stuff done sometimes. And, yeah, I've been able to start working on our print book. So for all of you listening, we have the pie bytes tips book that you all know about. Hopefully. 250 tips. Yeah, 250. I should know this. 250 tips, python tips, development tips. And our dream was to get it into a physical print book so we could hold it in our hands. And I've started work on that. So very excited. We should. I have no idea how long the process takes. I've no. Can't promise a deadline, but I'm very excited to have signed up with some publishing and have the templates and have started the work of copying it across so that it can physically be printed, which is very exciting. Amazing, super exciting. Yeah. To have a stack of copies on the bookshelf there. We just throw everything off the bookshelves and just fill them with our book. I think it will also be a nice opportunity to add some more tips, revise a few, although most of it is still timeless and people go back to it over and over again. Yeah, we'll have to rewrite the forward and all that stuff to reflect on what we've seen from the past, almost three years since we published that book, man. Yeah, yeah, yeah. Pretty cool. And on that note, actually, with the tips kind of related, as well as our new passion for YouTube, like, we're keeping the videos up, are we not like three or. Well, the aim is five. Sometimes we get three in, but almost daily videos on workdays, mostly around Python, and people love them. I have a nice flow now of doing that every day. They're short two to five. Well, average, say five to eight minutes, I guess, but still pretty short. And, yeah, we leave the mistakes in, so it's good learning. That's actually the best part because even the one that you recorded today, as I was watching it, um, before we published it, I saw the extra line of code and I was like, what is that? And then you're like, oh, I think that's from the next in there. And I was like, oh, yeah, okay. Yeah. So it's nice to see those anomalies, right? The things that you kind of forget are going to happen and they can catch you off guard. So it's pretty cool. That's where the real. I mean, we do edit and we polish them up, you know, coughs and stuff and slip ups. But when it comes to coding unexpected things. Yeah. It's super valuable to leave those in. Yeah, yeah. Unlike this podcast where you just get all the. We're just winging it, basically. Yeah. All the mess. You don't even have an agenda for today. Yeah. What were we going to talk about? Honestly, I would be happy to just sit here and record us talking about your trip and the things that you did and learned and all that stuff. And maybe, you know, let us know if you, if you're listening to this, you know, Bob and I want to do like an ask me anything type session, an AMA coming up. And it was actually recommended by a couple of people in our first annual pie byte survey that we ran last month. Yeah, yeah. And we got a lot of valuable insights, which we'll actually share in another podcast episode coming up. But one of the tips was, hey, we'd love to see you do an AMA. Ask me anything super casual. So if you're interested in that, let us know. We'd love to kick one of those off. We've never done one. Yeah, pretty easy to do with all the tooling out there. We just need to organize it. Yeah. And. Yeah. Thanks, everybody that filled out that survey, we're going to do that every year. And amazing feedback and I think we'll all dedicate another episode to dive in some trends and stuff. Right. And plans we have moving forward. So. Yeah. And congrats to the three winners that cut the t shirts. That's pretty cool. Already we. Yeah, we've got to send those out, so. All right, so we've got. I reckon I give us about seven minutes to talk about this. Sure. Let's keep it short. We can always have follow ups, which I think will be needed. Yeah, we still need to share what we're reading at the end, too. So we want to talk quickly about chat, GPT and its place in coding. So obviously this is a really meaty topic, but specifically we wanted to talk about your experience, Bob, with using it. So I'm kind of interviewing you here. So how are you currently using it in your day to day workflow, if at all? Yeah, I was kind of a late adopter, relatively. Like, I was just procrastinating a bit on it till a few weeks ago and I started playing with it. I saw our coaches use it quite enthusiastically. I need to jump on this. Right. And, yeah, I fully embrace it now because, yeah, you can use it for almost any coding task. And of course, disclaimer, right. Be very careful what you put in a tool. You're not sure where that info goes, so use it with public data or just generic code concepts. Right. Don't start to pour internal code in that tool. Don't do that. But I don't know. I have to think of an example because I use it now every day. And for example, the other day I had to make a Django command to do some cron job typey thing for cms that you requested from me. And I basically start the pair program with the thing and you say, can you write a Django command to parse a CSV? So you get some boilerplate code, you grab that code, which often works already out of the box, and you just adapt it to your needs. And sometimes it will throw an error. It cannot always take into account edge cases, but it's really mind blowing how well it understands English, how well it builds upon previous conversation. And that's where I think it trumps search engines, search engines that you don't always have that state, right? So this is fully aware of all the stuff that it has said. So it's really like a chat, a conversation. So sometimes hours happen. I'm going to interrupt you there, sorry, just for clarity, for me and for everyone else listening, when you say it maintains that state you're talking about in the specific chat. Because if you, everyone who's used chat GPT, you have that left menu that has all your previous chat histories, right? So you have one of those for coding and that specific one maintains that memory, right? Yeah. Well, I have one per task I'm doing, basically. Yeah. Sometimes I mix them up, but I try to make a new chat per, per topic and then state in the sense that you can just refer back to in the snippet, like 20 conversations back. You said this and that and it will know. Right, so, understood. But when you create a whole new chat flow, all that state is gone in the new chat flow, right? I think so, yeah. I've never seen this there. Yeah, I just want to clarify that. Okay, yeah. All right, continue. So, yeah, great for scaffolding boilerplate. When you get errors, you can paste in the errors and it understands where the bug might lie and it then will rewrite the program. For example, today I added a bit of exception handling because I got an index error today. For example, I used this well to scrape a website and it's code I can write, but I can definitely see how it will take me longer just to look things up one piece by piece. And here you get the whole code in one go. But yeah, as we've discussed, a, you need to know what questions to ask, b, also need to understand what it gives back and where potential bugs and issues might lie. And you have to have that back and forth prompt engineering mindset, which I'm still learning. Right. It's brand new and I think it's a really good skill to look into. Yeah, but looking at the history, right, of that chat and looking at the way that you speak with it, and this is something that I think everyone's just going to have to get used to, is that when you first start using it, it's very input output, right? It's very black and white, so to speak. So you'll ask it a question like, I don't know, what's the best way to accomplish x, Y and Z? Or give me five tips on how best to learn python. I don't know, it's like a Google search. But as you graduate past that stage and start to get into this flow that you're talking about, and I look through your conversation history with it, it's almost like you're on slack, chatting with a teammate overseas and going, actually, that snippet you gave me, that's actually going to produce the wrong output. Can you just go back and change it so that this value will be that? Or to accommodate that, there are going to be colons here in the text input and so on and so forth. And it's really cool that you can write so casually to it and it understands that and then says, oh, sorry, I imagine it has a british accent. And then if it was to speak, and he comes back and says, oh, sorry, Bob. Dear chap, let me. Here's a better code snippet for you. And then just go, oh, great, thanks. So I think that's amazing. I'm very impressed. Yeah, that's really amazing. Another example, yesterday I used it to quickly set up talks on Py byte search open source projects. So there was an issue open like, hey, 311 is a bit restrictive to only support that. Can you also support 3.93.10? And yeah, that makes a lot of sense. Then the knowledge comes in like, hey, I'm going to support various Python versions instead of just changing that in your toml file and hope for the best. No, you probably want to verify that. It's already my knowledge that I know. Ok, you can use tux then to test various versions. So you already come to the tool with that knowledge, and then you can very laser focused as like, hey, how do I set up tux in a Python project? And I got the minimal tux, any config file, and then you start to work with it, test it. Then of course I had to write some tests, but I was lazy to do that from scratch. So you can ask like hey, here's my module, here's my class, can you write tests for it? And it used request library. So again coming in knowledge like well if I let it do its thing then it's going to not mock anything out and you have a network call happening. So already in my query set, like can you write the test for this class using mocking? And it just understands that. So you get very specific, specifically the code you want. And then of course I had to iterate, clean it up a bit. And there were some commands I thought were a bit super fluid. So I removed the commands of course as it was giving me different codes in isolation. There was some duplication happening. So I made some pictures. So there's still some work to do. And later in code review they also said like yeah, it can be drier and yeah you can use parameterize and all that but I was just happy with that. Yeah, edited revision for a first go. But yeah, like the talks configuration, the whole test suite that saved me like so much time. Yeah, that's incredible. And I think you raise a really good point here. And this is the, I just want to wrap it up with this comment. Right is that we'll be talking more about this I think. Yeah, we'll talk about this another time. You're just getting the quick coffee chat cuts here. But tip of the iceberg. Tip of the iceberg. I think the big thing here is that there are a lot of people that are fearful, there's a lot of fear mongering as well, saying that this is going to take over developer jobs, this is going to take over your job. You're going to be obsolete. And as John Oliver put it on last week tonight of my favorite shows, it's the thing that's going to become obsolete. And I like this premise and people can argue with me and that's fine, is that it's going to be the jobs that don't utilize it and learn to partner with the AI service that are going to become obsolete and it's going to be the people that learn to work with it in harmony. Such as what you're talking about, Bob, that excel and they're the ones that become successful because at the end of the day as you've very well put, you have to know what the hell you're talking about to get this kind of value out of it. You can't just say write me a class and be done with it because you have to understand what it's spat out and whether that's actually going to suit your need, how you can customize it, whether it's going to do exactly what you need it to do without causing issues, and that it can catch all those exceptions and so on and so forth. So, yeah, lots more to dive into when we get a chance. But I think this is really cool to hear how you use it from time to time. Yeah, time to time, almost every day. Now, when I said time to time, I mean, like hour to hour every day. Yeah. Yeah. Awesome. Yeah. And I think we can definitely have some more detailed discussions about this, even look at some code examples. But I think this will do for an initial exploration. And, yeah, as always, we're happy to hear your experiences if you use it, not use it, how you use it, where you see concerns. Yeah, we're just as everybody, we're just learning the new tool set, recognizing that it's going to be important and the industry is changing. Right. So, yeah. Yeah. Awesome. All right, so just quick, before we drop, what are you reading? Yeah, mostly fiction, actually. You got me on the fiction band. Excellent. It's really another type of reading. Really relaxing and, yeah, you kind of the whole character development psychology. I really like that. But, yeah, to keep it AI, I think there's a new book by Martin Ford which writes a lot about artificial intelligence, and it's called rule of the robots, how artificial intelligence will transform everything. So I'm not that far into it because of the fiction, but, yeah, this is not science fiction anymore, it seems. So I'm reading that, and I just want to know what a specialist AI specialist thinks of it. And, yeah, I think it's cool. We should all be reading about AI these days, especially in it, I think. Yeah, 100%. Nice. What about you? Okay, well, yeah, I'm still reading my fiction. The quartet, wizard of Earth Sea. I'm on book three. Almost finished that, I think. But I've actually, you know, aside from audiobooks that I'm going through, I've picked up my iPad and have been going through my magazine subscription that I have through that with the family. And so I've been reading, like, some entrepreneur magazines. I've picked up my Harvard Business review. Again, just, I kind of like this cycle that I kind of go through of some days or some a month. For a month, I'll be really into, like, those career help books, mindset books. And then another time, I'll be into very tactical stuff, other times, fiction. And so I'm in that sort of cycle. And just before we go one thing I did want to share with everyone, that I want everyone listening to this to check out, because if you are in a job in a company right now, you're going to find this very relevant to you. Check out the. So we had Cassandra Babilia on the podcast a couple of weeks back, maybe two months ago, and she runs a blog called the Make Work suck less blog or newsletter. And I've actually been reading that because her posts are very much written, like they're long form and so on. But especially right now with the workplace and the it industry, especially being very chaotic, a lot of what she writes about is very relevant. So I wanted to make a shout out to that because it makes a huge difference. Even if some might be focused on managers, I think it's really important for employees to read that so you know what you can expect from your managers or what you should expect. So that's something I've actually been diving into in my reading time instead of reading my magazines and stuff. So. Feels like I'm reading a HBR article or something. Anyway, so there you go. Nice. Yeah. And another book I'm picking up, physically picking up. Yeah. Yeah. That was a bad joke, my cheese. That's kind of a classic. I think it's from 98. Kenneth Spencer Johnson. An amazing way to deal with change in your work and in your life. And, yeah, it's. I'm not sure, I mean, what was going on in nineties, but maybe it was the animation overall. And, you know, it's a book that you have to accept. It's more like a mindset book. Right. Like accepting change. And I think that's kind of a good reread these days with the swift changes in the industry now with AI. So that's another one I'm definitely going to read again. Very nice. Yeah, I've never even heard of it, so got to add that to the list. There you go. All right, I think that's it. Please reach out to us for preferred topics, feedback, ideas, check out our YouTube as well. Putting a lot of python out there and join our slack as well. Perfect. Nice. And we want to hear from you as always. So just shoot us through an email, send us a message and give us some feedback. We'd love to hear from you. And we'll be back next week. Thank you. I think accountability wise, maybe next week we do the survey episode if you want. Okay. All right, we'll do that. That means I got to collate all that data. Oh, I'm retired already thinking about it. All right. Fine. And next week we'll run through it and talk, and we'll actually tell you all about the changes we're going to make in response to that data. So. Yeah, all right, cool. Thanks, man. You take care. Enjoy. And thanks, everyone, for watching and listening. We'll be back next week. Yeah, thanks, everybody. See you next week. See ya. Bye. We hope you enjoyed this episode. To hear more from us, go to Pibyte Friends, that is Pybit es friends, and receive a free gift just for being a friend of the show and to join our thriving slack community of Python programmers, go to Pybytes community, that's Pibit es community. We hope to see you there and catch you in the next episode.