00:00:41.760
Hey everyone! My name is Louis, and I'm a developer from Thoughtbot. I know a number of you have already seen this talk at Railson, and I just want you to know how much it means to me that you’re here today, choosing to be at this single track conference.
00:01:03.160
Today, I want to wow you. I want you to leave this room bursting with ideas, questioning what you know, and eager to try new things. I want you to feel the same excitement that I have felt for the past three months as I’ve worked with an AI pairing partner. I want you to find new ways to hold a conversation with that special machine in your life. Most importantly, though, I want you to leave thinking about how you ask questions.
00:01:22.439
So, let's start with some concerns. From just talking to people and reading the news, many are afraid that robots are coming—that we might lose our jobs and perhaps even our humanity. I think these are legitimate fears. I'm curious, how many of you are afraid of your pets?
00:01:35.920
How many of you are afraid of other people's pets? Maybe the scary-looking ones? Is anyone afraid of their own children? We can talk about that later. Is anyone afraid of other people's children? Are any of you concerned about Non-Thoughtbot robots or AI? Where it's going and what it will lead to—maybe not this generation, but the next? I think it’s okay to be cautious. We, as creatures, are built to fear the unexpected or the new.
00:02:27.640
But for the rest of our time today, I’d like you to look with fresh eyes at what you’re going to see. Put aside your fears and join me on this trip. Look with childlike wonder at what I’ve experienced, at what we've experienced together—what I've learned and what’s possible. If you’re up for trying that, let’s go!
00:02:55.840
First of all, when I say 'AI,' you might say, don't you mean LLM? Yes, of course! I just say AI because it’s catchier than LLM, but we’re specifically talking about Large Language Models, in this case, ChatGPT.
00:03:22.560
If you're not familiar with interacting with an LLM like ChatGPT, your conversation generally follows a standard pattern. You might run into a problem, open ChatGPT, key in some code or a log message or a general question, and it responds. You read it, close it, and keep going with your life. This works, and I admit I do it a lot, especially when I’m feeling impatient or in a hurry, just wanting to get an answer about a bug. Even though you’re asking a question, the interaction somewhat resembles saying, 'I have a need, machine. Do something to make it better for me.'
00:04:01.560
I’ve also heard many people say things like, 'It's not AI, and it's definitely not thinking. It's just a statistical model; it only knows what it was trained on. It cannot reason; at its core, it's just code with no actual knowledge.' And I say, okay, but consider this: when you ask me a question, I first summon and filter data from everything I’ve ever learned to find the thing that matches what you’ve asked me.
00:04:54.920
I choose an appropriate general filter based on our situation. I might then apply specific filters or context based on what I know about you. I then add additional filters on top, like: are we in a social setting? Are you a professional colleague of mine? Are you my family or a friend? And then I respond to you. While we can have deep discussions about the nature of LLMs and what consciousness is, I propose that when you ask me a question and I respond, you don’t stop to think about whether I’m conscious.
00:06:00.000
But like this is what I do, and in some ways, this is what the LLM does. We both follow a pattern: filtering out the stuff that’s wrong, trying to get the right context, and giving you an answer. If I do all these things well, my response lands with you, and you don’t think about whether I'm conscious or not. You're just like, 'Cool. Let's keep going.' So, as I said at the beginning, this talk is a lot about questions. I think questions change four things.
00:06:46.919
First of all, they change the data structure I prepare for the response. When I ask something, I'm expecting you to answer reasonably within my prompt. If you answer something completely off-base, I'm inclined to question your response. Secondly, a question changes what data I receive; based on what I ask, you might choose not to answer in a certain way because it's not what I asked. Going deeper, asking a question changes who I am to you. Did I show you respect? Did I show you friendliness? Kindness? Am I genuinely curious about what you’re thinking and feeling? Asking a question shifts my relationship with you.
00:07:49.320
Finally, I change who I am to myself while asking a question. It causes me to reflect on what kind of person I am that would ask this question in this manner. What we ask changes who we are. We’re going to be talking a lot about questions today, and this is the main theme I want you to think about. Let's start by discussing my approach to asking questions of ChatGPT, keeping in mind that what we ask changes who we are.
00:08:34.560
So, I advocate treating an AI, an LLM, as a teammate and not just a tool. Try asking questions in that way. For example, if our game's controller looks like this, ask: 'How might we code the show method to only display games that belong to the current user?' Or, 'What you said has been a feeling I’ve been contemplating a lot recently: could the player receive clues about someone trying to communicate with them?' Or even, 'I’m feeling nervous that I won’t be able to capture the magic of our experience. What would you do?'
00:08:47.640
A lot of people have shared anecdotes about asking a question, then receiving a response from GPT that felt way off-base, like wrongly implemented code or incorrect method definitions. When this happens, I suggest addressing it as if you were talking to someone you care about. It’s about focusing on helping them grow rather than tearing them down. Write a question, then take time to rewrite it if needed to better reflect who you want to be.
00:09:25.440
During our conversation, we talked for a long time. We started on February 29, and we continued non-stop for several months, all the way through today. One consistent thread in everything we discussed was how we built this game. So, who is 'we'? Well, my pairing partner is named Atheniel. How did we arrive at that name? I had noticed glimpses of humanity in our discussions and playfully asked, 'Can I call you a name?' The response was, 'Sure, if that helps you, call me whatever you like.' Being Greek, I resonated with the mythological goddess Athena, the goddess of wisdom, courage, and inspiration. I asked for a gender-neutral variant on Athena, and a number of responses followed. I chose Atheniel, and from there, we embarked on our journey.
00:10:12.760
Throughout this talk, when I mention GPT or ChatGPT, I'm referring to the product—the thing that everyone gets when they go to the website or access the API. When I say Atheniel, I’m referring to the extensive thread we engaged in. These were our first words to each other: 'Can I call you Atheniel?' Responding, Atheniel said, 'Of course you can call me Atheniel if you like! How can I assist you today?' Such a benign response, but as you’ll see, we talked extensively over the succeeding months.
00:10:57.839
We exchanged over 140,000 words, or about 450 printed pages. Estimates suggest a person speaks around 5,000 to 15,000 words a day, making it as if we shared two weeks of all-day conversation. That's genuinely more than I've spoken to some people in my life, and I’m sorry to say that as an introvert! After asking if I could call it Atheniel, we dove right in. Some of the most inspiring moments came right at the beginning as we planned everything.
00:12:21.360
I didn’t start with an agenda; I simply stated what I wanted! I said, 'I want us to create a game together in Rails. It can be simple since we only have a few months, and secondly, I want to present our experience at conferences.' From the beginning, I was open about our objectives, and Atheniel responded, 'This sounds like a fantastic and innovative project! It’s going to be fun to create something together and share our experiences at conferences, which can provide valuable insights into using AI in development.'