[TRENDS] ChatGPT via ChrisLang

Media Thumbnail
00:00
00:00
1x
  • 0.5
  • 1
  • 1.25
  • 1.5
  • 1.75
  • 2
This is a podcast episode titled, [TRENDS] ChatGPT via ChrisLang. The summary for this episode is: <p>Now Live! Another special *trends* episode on the popular topic of ChatGPT… through the lens of fun encounter with something called ChrisLang.&nbsp; Listen in, as host <a href="https://www.linkedin.com/in/jerry-cuomo/" rel="noopener noreferrer" target="_blank">Jerry Cuomo,</a> has an upbeat conversation with ChrisLang creator, <a href="https://www.linkedin.com/in/chrishayuk/" rel="noopener noreferrer" target="_blank">Chris Hay,</a> as he explains how he stumbled upon creating a new computer language, while playing around with <a href="https://openai.com/blog/chatgpt/" rel="noopener noreferrer" target="_blank">ChatGPT.</a> &nbsp;</p><p>One of the key takeaways from this episode involve “playing around with tech”… just to get a feel… and perhaps trigger thoughts and imagination of how and where Generational AI, and Large Language Models can be applied in your world… by understanding it’s strengths and short comings.&nbsp;And... Be sure to listen to the end, where Jerry challenges his audience to a homework assignment involving “just playing” with ChatGPT.</p><p>Chris made a more detailed video on his experience creating ChrisLang with ChatGPT.&nbsp; Here is the link to that YouTube Video:</p><p><a href="https://youtu.be/CdyTZSWitKA" rel="noopener noreferrer" target="_blank">CHRISLANG: ChatGPT: codes in my vanity Programming Language</a></p><p>Also, to do the homework assignment, you will need access to ChatGPT.&nbsp; Here is a link to <a href="https://openai.com/" rel="noopener noreferrer" target="_blank">Open.AI</a> that will get you there.</p><p>Last, Connect with Jerry on <a href="https://www.linkedin.com/in/jerry-cuomo/" rel="noopener noreferrer" target="_blank">LinkedIn here</a>. And Jerry’s <a href="https://www.linkedin.com/in/art-of-automation/" rel="noopener noreferrer" target="_blank">Digital Twin (DJ) here</a>. <a href="https://www.linkedin.com/in/art-of-automation/" rel="noopener noreferrer" target="_blank">&nbsp;</a></p><p>Also buy the <a href="http://artofautomation.org/" rel="noopener noreferrer" target="_blank">Paperback of Art of Automation</a> here (Royalties are donated to the Cancer Research for Children).</p>
Intro
00:49 MIN
Chris Lang on ChatGPT
00:44 MIN
Play and Experiment
00:20 MIN
Homework assignment
00:58 MIN

DJ: (Music) You are listening to the Art of Automation podcast with your host, Jerry Cuomo.

Jerry: Thank you, DJ. And welcome all to the Art of Automation, a podcast that explores the application of automation in the enterprise. Hey folks, today we have a special episode, another in a small series that looks at breakthrough trends relating to AI and automation. And these topics are ones that I highly recommend you pay attention to and even play with in the months to come. From all the chatter that I'm hearing everywhere from social media to the boardroom, to casual dinner conversations with my family and friends, ChatGPT is all the rage. It's a great example of the evolution and arrival of automation and AI technology. Call it generational AI, foundation models, large language models or however you associate it, this trend is a big deal and one of the takeaways from this episode involves playing around with tech just to get a feel and perhaps trigger thoughts and imaginations of how and where this tech can be applied in your world, understanding its strengths and its shortcomings. So there'll be a small homework assignment after this episode, so stay tuned. Okay, so here's how this episode came about. While recording an episode on the topic of Metaverse on my Think Blockchain podcast, my guest, Chris Hay, shared a side story of how he was playing around with ChatGPT and ended up creating a programming language that he calls Chris Lang. And I thought that his experiment and lessons learned were so inspiring and useful that I asked him to stay on this line and record an episode of Art of Automation to share his adventures with ChatGPT. Oh, Chris is a distinguished engineer and technologist supreme from IBM Consulting. And I don't want to steal any more of his thunder. So let's jump right in. Chris, tell our listeners about what you did.

Chris: One of the things I did is I ended up creating my own programming language in ChatGPT. It was crazy. It wasn't something I expected to do. I was playing with ChatGPT and I was asking it stupid questions like, " Is Edinburgh east of Bristol," et cetera. And it's a really stupid UK thing, right? Because everybody thinks Edinburgh's east of Bristol, but it's actually-

Jerry: What did it say? Did it have an opinion there?

Chris: It got it wrong and I can never remember, but Edinburgh is actually further east than Bristol, but Bristol's in the southwest of England, so you would think Bristol's Southwest, but Edinburgh is further east. And it got it wrong. And this is not a great story, Jerry. You're going, " Oh my goodness, the AI got it wrong? You're meant to be telling me something cool." What I did is I started giving it a series of prompts. So I then said, " Hey, what's the longitude of Bristol? What's the longitude of Edinburgh?" And then I said, " Now tell me whether Edinburgh is east of Bristol or west of Bristol." And then it got it right because it then used the latitude and longitude. Then I rephrased the question and that was the point where I realized ChatGPT learns. Within your session, it learns. If you can give it the right prompts and the right examples, combined with its base knowledge, then it's going to be able to figure stuff out. And then the next part of that is I was doing things like dockerfiles and it started generating perfect dockerfiles. And then I thought to myself, " Could I create my own programming language?" And I'll tell you exactly how I did it. And I just went, " Hey, ChatGPT." And it went, " My name is Assistant." And I'm like, " Whoa, okay, sorry to offend you." And I said, " I'm thinking of designing a programming language." And it went, " Oh cool." And it went, these are the sort of things you think about. And I started giving it the rules of my language. So I called it Chris Lang, I said, " My new language is called Chris Lang, it's going to support type inference, ins are going to be in, floats going to be called float, assignment is going to be a call on equals because I like Pascal, so that's what we're going with. I don't like double equals for assignment, so I want single equals for assignment." And I just started breaking down the rules. And then if you know how programming works, then you can start to think about what is my primitive recursive functions, et cetera. And you can start a build up. So you can go, these are multiplication, this is this, and then you can introduce new operators and that will allow you to do a deep inachi or whatever. So what I started doing is just giving it more rules and then I would say, " Go code me this in Chris Lang." And it would argue a little bit. So it would keep trying to say, " Ah, I'll do a single equals," and I'm like, " No, the rules of Chris Lang are this." And then it would get it right. So after a few examples and corrections, it would start to get it right, and it would start generating code in Chris Lang. And then I started giving it more rules like, " This is how an F works, this is what I'm thinking of loops." And then it would start getting that right and I'd give it more coding problems. So this thing started becoming really good at coding Chris Lang.

Jerry: Interesting.

Chris: Which is a language I made up. But here's the interesting thing, Jerry, and I didn't do this in my YouTube video, but here's the interesting thing. As I was training it, I found myself collaborating. So I started to go, " Do I want to do a let or do I want a const? Actually do I don't need a let or a const, so I could just do the assignment." And it was like, " Well, if you don't put a let or const, then how are you going to distinguish between the two?"

Jerry: Interesting.

Chris: And then I was like, " Should I use a not equals or should I use the angle brackets?" And it was like, " Well, everybody's doing the not equals, so if you want to make your language more distinct, use the angle brackets." And I went, " Ah, what about the Unicode not equal symbol? The equals with the strike through?" And then it was like, " No, that's a great idea." And then I would ask it more questions and it would be like, " That's a terrible idea. This is a good idea."

Jerry: Interesting.

Chris: And I found myself just collaborating with the AI and then changing the code as we went along.

Jerry: Amazing.

Chris: And it was incredible. And what I realized is if you think about designing a language, and I've never designed a language, you start to go back of BNF form, right? You start to think about, I've got to build a parcel or Alexa, et cetera, and you got to do all that just to test if your language is good, right? Whereas you can go through the whole prompting and design process, collaborate with ChatGPT, test it out, and then decide if it's a real language before you even build any of the parcels, Alexas, et cetera. And to be honest, I'm pretty sure I could get ChatGPT to build that for me as well.

Jerry: Chris, just listening through your example and your experiment here, how many design exercises are like this? You built a language. Think about building an architecture, thinking about building a data structure. I think the bounds are hard to find. I'm not sure that that's obvious and out there, and even if it's 60% in that range of correct, boy, that's a great jumpstart. If I had something like that as a early developer, I would be pretty dangerous.

Chris: It's interesting you said correct. So here is the caution with ChatGPT, it makes stuff up. That is the problem, because it's a creative, it's a generative AI, it will try and be creative. So if it can't get a natural solution, it'll start generating things. So when I designed Chris Lang, I hadn't told that a for loop, but then I accidentally gave it a problem that would require a loop. So it just took a guess at what a good for loop would be within the style of my language. And it was a pretty good guess, actually. And I went with it. So I was like, " Yeah, actually that's pretty good. Stick with that as a for loop." Now that's good when you're being creative. When it is bad is, I tried the same with the loop language, which doesn't support things like functions, and then occasionally it would just throw in a function. I'm like, " Dude, stop throwing in a function. It's not happening." So-

Jerry: Wonderful.

Chris: So it was good for creative. I'm not sure I'd want it to land a plane, right?

Jerry: Okay, gotcha.

Chris: But then when I really think about it and I'm focusing on the word correct, it opens up this idea of what is correct, right? And we've already solved that problem for things like data transmission, which is you resend the prompt. I think we're going to end up having to do the same thing with AI chat and generative AI's like ChatGPT, which is I'm going to have to have four or five different bots. One of them is going to be unit test, one of them is going to be a swagger document, one of them is going to be this answer. Or maybe I'm just give the same question five different times and then I'm going to rerun it through the rest of them to try and get to what correct is.

Jerry: Chris, great example. And correctness, it makes me think, is your goal to have a perfect result and/ or is it also about the journey to get to correctness and what you learn and discover along the way? So I think your example is a good one of showing ChatGPT also as an educational tool. And oh boy, in my compiler's class back in the day, we never had anything like this. Geez, an interactive dialogue with, who did you say? Assistant.

Chris: Yeah.

Jerry: To iterably create a programming language and then play around and run some test programs against it. Man, oh man. What a way to learn.

Chris: Exactly.

Jerry: Hey Chris, thanks for sharing. And I know you've just inspired a bunch of folks to play around with ChatGPT, and perhaps we'll have a few more cool stories on this podcast like this one to follow. Thanks for joining.

Chris: Thank you.

Jerry: Actually, thanks for extending your stay from Think Blockchain and now Art of Automation. Thanks, Chris.

Chris: Thank you.

Jerry: Okay, this episode is a wrap. Chris made a more detailed video on his experience creating Chris Lang with. ChatGPT, and I've included the link to that YouTube video in the description of this podcast. So check it out. All right, I promised a homework assignment and here goes. The point here is to play, experiment and just start your journey. And I've concluded another link to OpenAI. So go to that site and request an invitation to join, and it might take a day or two to get in, but after that, let the games begin. Follow Chris's lead. Remember he started asking questions about which cities were further east or west, et cetera, and then he ended up prompting it to create a custom programming language. So some ideas that you may want to consider, ask it to write an abstract for your upcoming presentation or have it explain a piece of code to you or even perhaps ask it to summarize that last email you got that you didn't have time to read because it was too long. Just spend 15, 20 minutes playing and let me know what you learned. Again, you'll likely be impressed and perhaps you'll even find a flaw or two, but either way I guarantee it will spark your imagination. And as I say, please, if you're inclined, share your findings on social media with our audience. And as Blaine Dolph said in a recent episode, " We at IBM are eager to work closely with industry groups to see how these foundation models can be best applied to banking, healthcare, and other industry use cases. So reach out if interested in collaborating." All right folks, that's it for today, and if you enjoy this podcast, it's also likely that you will enjoy the Art of Automation book, which is now available. A link to the book is available in the description section as well. And royalties from this book are being donated to Cancer Research for Children. Once again, I'd like to thank Chris, and of course I'd like to thank you all for listening in. This is Jerry Cuomo, IBM fellow and VP for technology at IBM. See you again on an upcoming episode.

DESCRIPTION

Now Live! Another special *trends* episode on the popular topic of ChatGPT… through the lens of fun encounter with something called ChrisLang.  Listen in, as host Jerry Cuomo, has an upbeat conversation with ChrisLang creator, Chris Hay, as he explains how he stumbled upon creating a new computer language, while playing around with ChatGPT.  

One of the key takeaways from this episode involve “playing around with tech”… just to get a feel… and perhaps trigger thoughts and imagination of how and where Generational AI, and Large Language Models can be applied in your world… by understanding it’s strengths and short comings. And... Be sure to listen to the end, where Jerry challenges his audience to a homework assignment involving “just playing” with ChatGPT.

Chris made a more detailed video on his experience creating ChrisLang with ChatGPT.  Here is the link to that YouTube Video:

CHRISLANG: ChatGPT: codes in my vanity Programming Language

Also, to do the homework assignment, you will need access to ChatGPT.  Here is a link to Open.AI that will get you there.

Last, Connect with Jerry on LinkedIn here. And Jerry’s Digital Twin (DJ) here.  

Also buy the Paperback of Art of Automation here (Royalties are donated to the Cancer Research for Children).

Today's Host

Guest Thumbnail

Jerry Cuomo

|IBM Fellow | Teacher - https://www.linkedin.com/in/jerry-cuomo/

Today's Guests

Guest Thumbnail

Chris Hay

|IBM Distinguished Engineer