To the bookend, Gary?
Hang on.
Go back to the beginning.
All right, uh… Good evening, everybody! The recording has started. Uh, this is the St. Louis Linux user group meeting, the St. Louis log. It's part of Slug, the St. Louis Linux Unix Users Group.
Too much information.
The… today's date is Thursday, May the 22nd, or 2025. Yeah, I'm getting used to this entry.
So, our, uh, presenter tonight is Craig Buchek. His topic is, uh, voice.
Doing AI and programming for voice. It's, uh, second to series.
He's still…
And somebody was trying to put something in there? Yes? Okay, all right, so as I said, the recording is on.
So, uh, our agenda for this evening. Is, uh… Let's see… you're here at 6 o'clock? Well, you were already here at 6 o'clock, testing out your bikes, your sound.
6.30, we're starting right now. The recording is on. And, uh, we've got a few announcements, and then we'll go to our main presentation. It'll be about 6.45.
And, uh, after the meeting. Uh, we'll probably be around for a bit afterwards, so if people want to ask general questions.
You know, not apropos to tonight's topic. That would be a good time to ask them after our main presentation.
Next slide.
Uh, this is recorded, so, uh… Okay? The, uh… Chairman of this group is James Conroy.
I'm the MC this evening. My name's Gary Meyer. Our host is Lee Lamert. Uh, we're… At least, uh, some of us are broadcasting from Omnitech, which is Lee's company.
And, uh, Lee's always good about providing us with, uh. Equipment and services.
Uh, Stan Reichert is doing the production, and uh… He's the other voice you hear out there.
A chat monitor. Hey, if somebody would like to volunteer, that's just somebody to kind of Keep an eye on the chat in the Zoom tonight, and if something shows up in chat And you think it's worth, uh, pointing it out for the speaker.
Uh, if you monitor that, we'd be grateful. Anybody want to volunteer?
Actually, if you could use… raise your hand in Zoom. I would appreciate that, just because… Uh, if you start talking, or anyone else starts talking.
Uh, it may… it may run the voice control. Uh, or… or dictation, so… If you can use a raise your hand feature, someone… can someone test that out right now? I think I can see it.
Okay?
Did someone test it out for me? Does anyone have their hand raised yet?
I don't see anyone. Yep, yep, okay, Lee's got his hand raised. Okay, yeah, if you could do that… That would be the easiest way for me to answer questions.
Good, good catch. Thank you, uh, Craig. Okay, I haven't heard anybody volunteer to monitor chat, but if anybody changes their mind, let me know.
Uh, topic wrangler, that's just kind of a general thing, not necessarily tonight, but just for this group.
If anybody has, uh, you know. Wants to try and help us contact speakers.
Arrange for presentations. We'd love to have the assistance, so uh… You can, uh, send an email to me or to Stan after the meeting, if you'd like, and uh… Uh, we'll help get you organized and get you on board.
Speaking of speakers, uh, for our next meeting that we have a speaker at.
Uh, that will be, uh, Wednesday, the second Wednesday of next month. I believe that's the 11th of June.
And, uh, that will be the SLUG meeting, and Scott Granum will be our speaker.
They'll be doing another one of his history talks. It'll be the history computing from 2000 to 2009.
Sure. Um, so the other groups that are affiliated with SLUG, uh, tonight's group, the St. Louis Linux user group.
Uh, so the Slug General Meeting and this one, the LUG meeting, are set presentations. We have a topic, a specific speaker.
He's gone to the effort of making a slide deck, and actually pairing something. The next two meetings, namely the new Linux meeting, in the Slack meeting.
Neither of those have speakers, at least preset speakers and preset topics.
Uh, so the new Linux meeting basically runs… it's a beginner's workshop.
Whoever claims to be the most beginner, the newest person to Linux.
Gets to ask the first question. And uh… that's kind of the way the meeting is driven.
All questions.
Well, all questions, yes. So, um, and uh… so that's not to scare off those of you who consider themselves to be experienced users. You'll be amazed at Uh, you know, one person will offer a suggestion of what's a fix or an answer, and you'll go, I didn't know it works that way. That's a new one.
Next slide.
Um, so… and of course, having you folks who are more experienced users come to this meeting is what makes the answers, so… the Slack… the Slack meeting is the St. Louis Area Computer Club. It's more hardware-oriented. We'll even talk about Microsoft Windows.
Okay, uh, moving on. Announcements, uh… Okay, next meeting dates, June the 19th, July the 17th, and August the 21st.
Uh, that's for the, uh, this beacon, the St. Louis Lug Meeting.
Five days from now, on the fourth Tuesday, it's the monthly new Linux meeting.
The next Slack meeting is usually the first Thursday of each month.
The actual general meeting is the second Wednesday of each month.
Uh, so… preview our new Slug website built by Sean Tweed House.
Uh, uh… October the 14th of this year.
Here's Stan's giving us a little sample of what the new website will look like.
So it's… Oh, okay.
Actually, Craig's running the show.
Well, thank you, Craig. So yes, that shows you what, uh, what we're working at.
Getting to.
Okay? Um… Let's see… Coming up on October the 14th, Microsoft Windows 10.
It's its end of life. So, uh… You'll probably be having friends and family going, what was that Linux stuff you were talking about? My Microsoft boxes stopping working.
So, uh, be prepared. Okay, any other announcements?
I'd like to point out the next slide covers bye-bye windows.
Okay? And… That's a PDF.
Book, whatever you can buy paperback from Amazon, or you can get the PDF from Those two website links.
It's free, or you can buy a… like I said, a paperback for $11.95 from Amazon, or a Kindle.
$2.99. Or, if you've got Kindle Unlimited, it's free. The nice thing about this write-up, it's done by one of the guys in the Atlanta lug.
And, uh, half of the book tells people how to use Linux, the other half tells them how to So not interested in Linux, how to buy a new machine that will work with Windows 11. No.
And it's pretty well balanced between the two. Yes, sir. We're all worth it.
The price, $99 free, is good.
And of course, the best solution for dealing with the death of Windows 10 put Linux on the box.
Forget about that Microsoft stuff. We just go out to EPC and buy a box for 100 bucks angel.
Next slide.
Okay, next slide. Presentation Archives. Uh, unless our speaker requests otherwise, we always try and have a recording of our presentations, and uh… We put them out on that website, you can see there in blue at the link at the bottom.
And uh… the recording of the talk. From Zoom, both the video and the sound.
And, uh, we also have… chat recorded, usually.
If the speaker is good enough to provide us with a slide deck, we have that as a separate entry.
So, uh, you can go out there and look at old talks.
And I'll recommend the one from last Wednesday. That was, uh… Greg's basically part one to this.
Part 1 to tonight, so… Okay, privacy and security.
Um, okay, so we only post the recordings of this meeting and the general monthly meeting, the SLUB meeting.
Um, so, uh, and I told you pretty much. Where they're found, what's there.
However, remember, those are our official recordings, but anybody at the meeting can be running a recording, so… It's possible you're being recorded, remember that.
Stan, you want to say anything about the simple screen recorder?
Oh, go back… oh, there's a link to… I did a presentation in October 2020, as the PDF is the presentation.
Um… that I gave… Those are the slides, and, you know, in the recording.
Uh, I… I thought I changed the slide that… It says that it's the base portion.
And it's not actually, uh, in a normal… sequence of events, because at that presentation, Ed Howland was doing it. He wanted to go out of sequence, so I need to change the specifics on that slide, but the PDF there and the video recording, it's… it's later on in the recording. It's not during the first
48 minutes. It's a little bit later. But… the whole thing was recorded.
Hey, DexLive Calendar. Uh, Salute maintains a calendar. It's, uh… Um, uh, got… Originally, it was the technical stuff we knew of here in the city of St. Louis, or the St. Louis area.
Uh, certainly with the age of COVID, the world became more of a Zoom and Jitsi-oriented operation. And, uh, so we really show meetings that we think may be of interest to the opening standards community.
Um, so Linux, Unix, BSD, Uh, they're open standards type software.
However, the meetings that are in red or meetings that we ourselves organize, and so look through meetings and read, and come.
Moving on to the next entry, uh, mailing lists. We maintain a few mailing lists. One is the announce list.
Very liminal… limited traffic. It's not open for everybody to post to.
Um, so it's basically just announcements. Like, there's a meeting coming up that we know of, or you might be interested in this.
Um, so it's kind of an edited thing. Uh, the discussion list is open to anybody to post to.
So, uh, or anybody who joins the discuss list, and it's basically a place for everybody to discuss, and… say they've got a problem, and they know a solution to this, or hey, this is something interesting I'm doing, so… steering committee, if you like sausage, watching sausages being made, come to the steering committee meetings, or at least read the steering committee mailing.
Sausage being made, how we put these talks together, how we keep the group together.
So, the sysadmin list is not an open list, it's our volunteer support staff who actually Do the work of keeping our computer systems running.
Uh, as I say, it's not open, but if you care to help us run these machines.
We'd love to have you, and then you'll be able to be on the list.
It's a good experience, by the way. You're used to running your own box.
It's a different world, you know, it's like… Yeah, you don't care if it's down, because you know it's down there. You don't care if something isn't quite right, because you know it.
Uh, this is a little different, it's almost like, you know, what you might do at work.
That you gotta make sure you don't screw up other people and keep things running, but it's not work, it's…
Next.
Call for help! Okay, before we go to our main speaker, um… As I said, after the main talk tonight, uh, we can discuss You know, other problems that aren't germane to our topic tonight.
Um, and certainly anytime you can ask these things on Discuss.
But, uh, before we go, or before we go to Craig, our main speaker.
Anybody got anything that has to really be talked about here at the beginning?
Cricket, not hearing anything. Okay, Linux presentations, like tonight.
Great catch.
The idea is that, you know, something about Linux. And, uh, so hopefully we Try and keep them on that topic. Every now and then, they kind of go kind of broad, but we try and keep them on that.
Sometimes they're very advanced, detailed, other times they are… You know, something that's timely in the news?
Other times, they're, you know, perhaps more of a tutorial in nature.
Uh, if you're going to be a presenter, figure you need to put some notes together, hopefully make some PDFs.
Some scripts, maybe some slide decks. And, uh, we'd love to have you, so please consider being a presenter. It's always amazing what you learn during the presentation.
Greg, I think you've already asked, because you're doing this voice presentation tonight.
Uh, maybe the audience should not just turn on their microphone and speak up and interrupt you, but rather push the raise hand button, and uh… wait until you've disabled the voice, and then you'll ask people to talk. I understood that correctly.
Yes, thank you. All right, am I ready to go?
First, just a quick… hey, you got… anybody got any questions, again, that you need to ask before Craig starts?
No? In that case? Craig Buchek, long-time member of our group.
He escaped out to California at the beginning of the age of COVID, and And, uh, of course, always available to talk to us online, and we're taking advantage of that tonight.
Even though he's in town. So I'm going to turn it over to Craig.
Thanks. Uh, so I've been in town, I think, 4 weeks, and I've got another week to go.
Thank you for everyone that showed up last week. We had our… Apparently, the first in-person meeting in 5 years.
Uh, it's great to see everyone. I'm sorry I didn't get to spend more time.
I invited another, like. Half dozen or more friends, too, so it was… it was very busy and crowded, and it was great to see people in person and talk about tech things, and Yes. Missed it. Definitely missed that kind of stuff. Missed y'all.
So thank you all. Um, so… Uh, part two. So, last week, uh, we talked about… Uh, voice, and we mostly covered Talon.
So, um, I'm gonna update you from last week. What I've learned, what's happened since last week, last presentation.
Uh, review a little from last week. Uh, this week we're going to talk about voice and AI, coding with voice, coding with voice and AI, Um, and then some experience reports.
And then some conclusions that I've… I've come to. Or temporarily come to, at the very least.
Um, if you want to follow along, I'm actually Uh, running this off of craigbuchek.com slash voice.
Um, so you can follow along. I'm on slide 50, you can see in the lower right corner.
If you need to catch up, uh, there's no way to catch up except for putting a pound50 in the URL.
Uh, in this slideshow deck. Uh, let's see… I'd say you can have me, tweet me, but I don't… I haven't looked at Twitter forever, and I haven't looked at whatever the new things are, either.
Um, so, last week, updates from last week. Um… A lot of… lot of trouble last week demoing, um, the demo gods were not kind.
Um, but that's kind of what I'm showing here, like, how… how… how is the situation?
Um, and it's still rough. Um, so Talon, if you have an error in your config file.
They will file Silent… fail silently? Um, there's probably a log file somewhere, but It's just everything else still works, and that file stops working, and… You're like, what the hell happened? So, um… Turns out, when you're testing.
Or even when you're not testing, um… Voice controls, sometimes it will insert things.
Um, if you're not in sleep mode, if you're in command mode, or especially in dictation mode.
It can easily insert things. Um, so sometimes that happened in my config files, and I saved them.
And then they stopped working, and I didn't notice, because it, you know, put somewhere I didn't see.
Um, so, um, some of my problems last week were because of that.
Um, also… Uh, the config file system is kind of weird.
Um, if you have two rules. That are the same, or conflict.
It's the one with the more specificity. Um, if you're familiar with CSS rules.
Like, the more specific one. Wins. Um, so… I've added language… English specifier to all my personal config files, so that hopefully they override the other ones.
So, my emojis were not working. I got them working. I learned a lot, and I configured a lot since last week Um, so I got emojis working.
Uh, anywhere. I got both, both… Alpha Bravo Charlie, and Airbat Cap to work for Frenetic Alphabets.
Alfa Bravo Charlie is the NATO one. Um, AirBatCap is the… I guess the community… version of the phonetic alphabet.
So, Alpha Bravo Charlie for NATO, they wanted to make sure that, you know, in a poor communication system.
That there weren't any mistakes, whereas Um, Talon wants to be quick.
They want to be brief, but accurate, so… That's why they… they have single syllable instead of multiple syllable, so… Um, but I found a way to work with both, so that's… that's pretty nice, actually.
Also, if you know your NATO and you don't know, you don't have to memorize the new ones right away, so that's kind of nice.
Um, I'm considering adding my own personalized ones somewhere… Uh, the last time I tried to get into Helen, I came up with a whole long list of, oh, these would be great for this letter.
Um, so I might… might add that later. Um, I made it easier to change modes, not sure if that's working today.
Um, we'll… we'll see. Um… So, Bash… actually, the Bash community configuration was broken, it was missing, like, half of the stuff.
And I think most of the other stuff wasn't working for me very well either.
Um, so I haven't tested that out, um, since I… since I fixed the config files or added to the config files, but uh… That's working significantly better.
Um, you know, I can list files and change directories, and uh… Um, I can even type things to sort.
Um, just by voice. Um… let's see… Oh, um, subtitles were… Um, so I've been using a lot of, uh, Claude this week.
Uh, Claude AI client. Um, and, uh, when you speak something to Talon.
At least the way I have it, it shows you in subtitles what you just said.
So that you can make sure that it heard you correctly.
Unfortunately, that was blocking where it was adding my text into the text dialog, so… Uh, I… it took me a long time to figure out how to move those Um, but I finally got that figured out.
The help font. Um, this is a little too small for me, at least on my laptop.
Now I have a big monitor, so they're probably gonna be too big, but that's fine.
Um, and I found a vocabulary file, which I'll talk about next.
Um, so there's this vocabulary file that I found. Uh, we can add additional words and phrases.
And, um, it's pretty cool, actually, and I don't understand exactly how it works in all cases. So… It adds words for the recognizer, the speech recognizer, to expect And to listen for. Um, so if you add something to the vocabulary list.
Um, it's much more likely to… to hear it. Um, if it's not in the vocabulary list.
An example is, let's say, the word NASA. I put the word NASA in the vocabulary list Without that being the vocabulary list.
It's not going to know NASA as a word. You say NASA, it's not going to understand it, and it may find another word, or it might just do nothing Um, so that's pretty handy, but it can also replace words and phrases with other words and phrases.
Um, and that's handy for a whole bunch of different reasons.
So, if, uh, if you want to make sure something is spelled correctly.
Uh, you know, it naturally is spelling it incorrectly. And you always want that word to be spelled that way, like.
Um, if you're in, um, if you're using a British English dictionary, recognition dictionary, and you want to add… change the S's to Zs.
Or vice versa. Your personal vocabulary list is very helpful for that, for spellings.
Um, for capitalization. Um, like GitHub.
Github likes to have a capital G, capital H, So, you can put GitHub spelled with the proper capitalization.
And it'll work there. Um, acronyms. So I talked about NASA.
Um, so I entered that in there. I can say NASA now.
Um, and I added NBC. And the interesting thing is, normally, if you say NBC, Um, it will not spell it. You have to use the phonetic spelling, but if you put it in your vocabulary list.
You can spell it out in BC. Um, actually, you could try… I added ABC, Also, and I was able to say, ABC.
And it… it recognized ABC. Uh, so that was kind of funny. So, I guess Nibke… Probably would be recognized as well if you put, uh… And I think with NASA, I'm pretty sure, yeah, I tried that you can say NASA if you want to.
Um, substitutions, so… Um, if I want to, you know, talk about my GitHub page.
I can say GitHub Booch, and it'll just put the URL instead of those words.
Um, so that's… that's really handy substitution, and… You could probably do a lot with that.
Um, so I added BooCheck. My last name to the vocabulary.
Um, but I also… Um, a couple times before I… at least before I put it in there, and I think even before… after I put it in there.
Sometimes it heard his boot jack. Um, and so… I'm never gonna say boot check.
So I put that in my vocabulary list to change to Buchek, so… Um, very handy.
And reduced my errors a lot. Um, so last week, we talked about text-to-speech, so that's where you provide some… some text input, and the computer says it. It talks it aloud.
Um, and then we… Moved on to dictation, which is speech-to-text.
Where you talk, and the computer Um, recognizes with an automatic speech recognizer, and there's… there's engines and models and A lot going on there.
Um, to recognize what you're trying to say, and turn it into text.
And then I attempted… Uh, to demonstrate voice control last week.
That's where most of the failures happened. Um, uh, I used the built-in Apple one But I use the, uh.
Telling one much more. And that's the one that is cross-platform, so… Um, most appealing to the Linux group here.
And, um, I'll be doing some more talent, and I'll be, uh, doing some more voice control in different apps today.
Um, anyone have any questions, uh, from… from last week? Um, did that jog anyone's memory?
Or, uh, want to ask about, uh, or see… maybe see my vocabulary file?
Actually, I think I will try to do that. Let's see… Zoom, you're in my way.
Right. Let's see, so… okay.
All right. So… let's see… Let's see, that would be my vocabulary.
Oops, that's the… Okay. Oop, nope, not that one either.
I only listed in Boochoo. So, here's my vocabulary list.
Um, and I like to comment my code. Um, actually, I like to not comment my code if I can get away with it, but with proper naming.
Um, but this isn't quite code, so… I explained, uh, what's going on here.
Um… So, like I said, I can say ABC… Um, and actually, I'm going to turn on the… listener here… And I'm going to put it in dictation mode to demonstrate this.
Abc? Def.
Def.
Go to sleep. So, because I have ABC in here, it recognizes ABC, But it doesn't recognize DEF, because I need to spell that phonetically, and it's not in here.
Um, so some of these are just common words, um, and some are technical words that I… that I use, so… AST is a compiler thing I've been playing with compilers lately.
Uh, civilians, my handle here. I've been using Claude a lot, so I wanted it… it was coming up with CLAD a lot.
Um, but when I put this in the, uh, vocabulary list here.
It's much better at identifying clod instead of clad. Um, got my email address in here, so I can say my email address, and it'll… It'll… it'll figure it out much better. Um, cursilis is something I've been playing with, which I'll talk about later.
Um, Dockerfile, it would end up being two words if it even understood it, if I didn't have this here.
Um, sorry to Don Ellis, but, uh, his last name is is the ls command no.
Um, they sound pretty similar. Um, I can say, et cetera, in 3 different ways, depending on, you know.
What the speech recognizer is gonna… gonna think of it as, but I'll always put it as ETC.
Um, and like the, um, some of the British, um. Style guides. I have stopped putting periods at the end of, uh, etc, and Mr. And abbreviations like that.
Um, so don't, don't need to add that. Um, some other files that are… that are pretty common.
It's funny, um… It heard the word… Uh, last week when I was doing some… some dictation, I'd heard invalid… invalid is invalid, and I'm like, oh, that changes the sentence really badly.
Um, it also heard, um. I said depression, or I'm being… something about being depressed, and it said I was being oppressed. I'm like, oh, that's… That's a very different thing.
Um, just some… some things I like. Uh, good for bash scripting here, I can just say pipe to.
Or piped 2. I do pull requests, so PR is a good thing. Readme, couple different ways I could interpret it.
Repl. So, actually, I can say REPL now. Um, and it knows what I'm saying after I edit this in here. Uh, REPL is a programming language read.
Evaluate print loop, uh, basically lets you, um, play with a programming language Uh, like in real time.
Um, sudo? Or sudo? Take your pick, you can say it either way.
Um… Talon is actually… Talon has trouble picking up the word Talon by me.
Um, it's come up with a lot of talent. Towel in, and I forget what the other one is.
Um, but, uh, this is health recognition, um, but in my rules, I've also put talent, um, so I can say talent.
Or Talon, and it'll… it'll do the right thing. Um, but talent is a word that I'm still going to use, so I'm not going to have it automatically convert that in this, uh… vocabulary list. And then, you know, TCPIP…
Whitespace I want to be one word. Yaml is the one I used.
Uh, that was very useful. Actually, YouTube was working just fine before I put this in here, so… All right, let's… Let's make sure I didn't, uh… Didn't mess anything… oh, I did.
All right, back to the presentation. Any questions before I move on?
See if I can see anyone's hands up. I do not. All right.
Yeah, Craig? Okay, so it was a nice, pretty list.
Uh…
Yeah.
But I'm not sure… Just because you typed it on the list.
I think I missed why it's going to recognize it when you say that.
Hmm. Oh, why?
Ah, magic. Um, it's… it's being sent to the speech recognition engine.
Yeah.
Um, and how it does that, I… I cannot tell you.
Um. It's… it's kind of weird, though, like, it would have to… you would think that it would have to… like, Buchek is very curious, like, how did it… How did he figure that one out? I don't… I don't even know. It kind of blows my mind, honestly.
Um, some of these were… I… in fact, one of my questions for the Talon, um… Slack. The Talon's documentation is not great.
Um, a lot of it is basically look at the, um, source code.
Uh, which is Python, so it's not too terrible. Or look at other people's configurations, which is kind of… Not great, especially if you are getting on the internet and looking, you know, hundreds of people's.
There's actually a search for people's configs. Um… But, um… Yeah, I haven't… I haven't figured that out.
Um, and I was going to ask on the Slack. Um, like, how do I… how do I give it a… Phonetic spelling, or how do I record something so it would recognize better?
And I didn't need to, really. Although there are… the modern speech recognition automated speech recognition engines, ASRs.
Um, are meant to work with anyone's voice. Which is… which is very interesting, because you used to have to train them to be specifically for your voice.
Um, that does lead to the question is, what if you have a strong accent?
Um, how well does it work? I don't know. And I haven't asked about personalized training yet, because I don't really need it, at least not very much. I would like to do that eventually.
Um, but, uh, right now, that's not… really very close to the top of my list.
Does that… did that answer the question, Gary, as much as I can?
Yeah, I think so. Okay, so it's a miracle.
It's a miracle. It's the miracle of modern engineering.
Okay.
All right, uh… alright, so voice and AI. Um, so we've got to talk a little about large language models with voice.
Um, and then voice generation and synthesis. I have voice cloning, which is a pretty cool concept.
Uh, and some future possibilities. So, um, some… some, um… Vocabulary here.
So… We have… to do artificial intelligence.
Somewhere down below is machine learning, and I don't know exactly where that distinction is.
Um, but machine learning is more like the low-level stuff and the computations, and the math, and the data.
And AI is kind of a layer that sits on top of that, as far as I can understand.
So, when we're talking about AI getting involved in voice. Um, it does something called natural language processing.
Um, and… We had to talk back, oh my gosh, it was probably 12 years ago, maybe… maybe more than that.
I think that it was Professor Scanlon, I think? Um… And he talked about… he talked about this at a Linux user meeting way back then.
Um, so this stuff has been going on for a long time.
Um, and he talked about textual-based systems, um. A little more than… a lot more than voice at the time.
Um, but… but that all gets involved. So, natural language processing is sort of, um… the sort of the lower level thing, and it is… but it's also wide-encompassing.
Um, as a subset of that, in sort of a higher on the stack, is natural language understanding.
So it's… it's all well and good to get the words, right?
To get the speech turned into words, but what do those words mean?
And that's where natural language understanding comes from… comes in. Um, so it tries to figure out the meaning of the words.
The context of the words, the intent of the words, and sentiment of the words.
Um, and AA has been doing a lot of sentiment for… oh, it's been doing that for at least a decade.
Um, so… Um, if you are… let's say you're marketing for Anheuser-Busch, and you want to see how Michelobe, how people in the… in the world are… are thinking about Michelobe.
So, you do a web search for Micheloba. Everything on the web that's talked about Michelob.
At this point, that probably includes video and audio and… And text, right?
Um, uh, tweets and… and YouTubes, and Facebook, whatever.
Anything public about Michelob, they can go take a look at.
And then see what words are near Michelobe to… to get an understanding of Well, are people being more negative about Michelob, or more positive about Michelob?
Um, what words would be associated with Michelobe? Is it, like.
Drunk? Is it, like, happy? Um, so that… that sentiment, um, understanding.
Um, and then it does semantic analysis, you know, it's trying to figure out, well, what are the verbs? What are the proper nouns, what are the nouns?
Um, although, uh, Professor Scamlin actually said that you would think that the way this would work is you find… you get your sentence, and you… You break it down like a human would into, oh, well, this is the subject, and this is the…
The verb, and this is the object, and… Um, it turns out that they just throw data at it, and it kind of figures it out for you. You don't have to actually break it down.
Specifically. So, uh, that's kind of interesting. I don't know if we have anything of his talk.
Available, um, but maybe standard Gary can, uh, look that up and see if we can… I'll provide a link to that.
In the… in the chat box. Um, ontology. So, also, like, how… if you've got words in a sentence, how… how do they relate to each other?
Um, if I say, uh, Gary was sitting next to Lee.
What is that relationship? Is that a two-way relationship? Sitting next to, you know, that's a relationship that's, uh.
Um, that goes both directions, usually. Um… So, figuring out the relationships between words help us understand what the words mean.
Um, and then, um, I'll talk a little bit about generative AI. So, generative AI Um, so it generates text.
Um, which is what the LOMs are mostly doing.
But it can also generate images. Um, we had… we saw stable diffusion started that a few years back.
Um, ChatGPT can do that, I don't remember which tool it's using.
Um, Odali, D-A-L-L dash E. Um, is the tool that it's using now.
We can generate audio. You can generate music now, just from AIs.
And, um, there was another announcement yesterday of generating video. Nvidia, I think it is with audio.
So, we're gonna have deepfake video now, and that's gonna… That's gonna ruin the world even more, probably, so, uh… Wish us luck.
Um, any questions on that stuff before I move on? Raise your hand, if you can find it.
I can't figure out where to raise your hand button is.
Alright, I'll move on and watch for him. Oh, go ahead, I haven't… I'm still… I'm still in sleep mode.
Well. I don't really have a question now, but I just couldn't find the darn button. Button, button, who's got the button?
All right, well, we'll fight it now and try to figure out… try to remember where it is.
All right. Yeah.
Yes.
Um, generating video. I mean, it would seem to me that's gotta be… major, major… or requirement of resources. Are we about to be under threat from falsely generated videos as much as we've already found ourselves under threat from bike audio.
Yes, yes, it's getting worse. Um, and there was an announcement at Google I.O. Yesterday about Some new way to… better way to do it.
Um, so… Yeah. Um… It's… it's not good news as far as I'm concerned.
Yeah? You good, Gary?
All right. Can you… can you mute the other one, then?
Oop, yep.
You're talking as Lee.
Oh yeah, no, I said yes. That's because he's sitting right next to me, Craig.
Yeah, I know, I know. All right. All right.
Alright, so LLM. So, LLMs are the big thing. They are large language models.
Um… I don't… I can… I can explain partly why they're called that, but… And I can't… I don't remember the acronym for GPT.
Um, but there are sort of these technical ways to to make AI work.
So, LLMs are all the rage right now. There's, I don't know… Probably 5 or 6 companies, uh, working on it.
So you've got OpenAI with ChatGPT, You've got Anthropic with Claude.
We've got Google with Gemini. You have X with Grok.
Who else? Who am I missing? Um… Uh, Llama from, um… From Facebook, you've got DeepSeek from, um… somewhere in China, and there's another Chinese one or two.
Um, so actually, I guess there's, uh… Probably closer to… to a dozen.
Um, so these are trained on large data sets. So, they have a corpus, so they basically read all the English text on the internet.
And… Basically, they do the math on this huge corpus of gigabytes, probably a terabyte, actually.
Actually, it's terabytes. It has to be terabytes. Because they condense down… so they do all the math to figure out How were they related to each other in this corpus of text?
And they're doing that so that if you have Um, Craig was at the… Um, it can figure out what the most likely next word is.
So, LLMs work mostly by just figuring out what the next word is.
And it works. It's amazing, actually, that it works. And a large part of it is just that it knows enough context about the language that we speak.
That it can… It can interpolate and figure out what the next word is likely to be.
Um, now, it's not quite that simple. There's some layers on… there's a lot of layers on top of that now.
Um, but it's… And it's not… it's not just the next word, it's the next word in the conversation, so it's, you know.
Your whole question and your context that you gave it. Um, we call those prompts, so you, you prompt the AI by saying Okay, uh, what's… Um, I'm programming, I'm writing a program to do this.
Write the program in Python. Now, the problem with these kind of AIs is they need a lot of context.
So, some of that context may be on the internet. So, if I asked, uh.
To write a Python program to do Um, Fibonacci sequence.
It's gonna know how to do that, because that's on the internet. I can just say, write a program to give me the Fibonacci sequence.
And it's got enough context from all the stuff that it's found on the internet to do that.
Um, but most likely, I am doing something more novel. And so I'm going to have to give it more details.
And figuring out how to give it the details, how much detail to give it.
Um, how to interact with it is… is… what we call prompt engineering So you're figuring out how to write a good prompt.
And actually, I'm going to show you… Um… Stand by. I will show you… Get that window out of the way for the moment.
I will show you my prompt engineering. And it's not it.
Oops, wrong thing. Open prompt. Ai Prompt Engineering. Okay.
Here is… Grab that, where's the…
Here we go.
It almost did it. Okay, so when you're writing an AI prompt.
Um, you want to be clear, specific, relevant? And include all relevant content that you can.
And it turns out that when we're talking to AI, the best way to figure out how to talk to the AI is.
Get help from the AI. So this is where things get… really interesting, right?
And it's a little bit… what do they call it? The singularity. So… The AI singularity is when the AI can learn faster then… I don't know what is faster than. I think it's… it… well, I guess it learns faster than humans. Basically.
It starts learning on its own without the help of any humans.
Um, but I don't… It feels like we need to give it input, like… where does the input come from? I guess it could go search the internet and, like, look for problems that aren't being asked yet.
Um, but… but… But is the singular in here?
There's some indicators that it's… that is close, because we're using AI to help AI get better.
To use AI to help get better, and we're getting into these… cycles of reinforcement.
Um, but there may be, you know. There's this, you know, this hockey stick of exponential growth, right?
But eventually, all exponential growth runs out of resources. Um, I mean, the exponential growth of human population, you know, it's starting to stabilize, right? It's been exponential Now it's starting to slow down a bit, because we're running out of resources. We're…
We're running out of, uh, you know. Oil and clean air and clean water, and… And livable… livable space.
So, um… everything exponential eventually.
Runs out of resources. Um, as Gary was talking about, these things take energy, right?
I saw something today that, um… I think by 2028, 22% Or the energy required for AI in the US will be the equivalent to 22% of U.S. Households.
So, it is significant. It is significant. Um… And while… Um, some of the CPU makers are making a lot of this Um, able to work locally.
A lot of it is on big-ass Computers with neural processing units, GPUs.
Just beefy. Um, computer specifically for AI.
The specific kind of AI processing required for this. Um, so this is… This is actually… Um, stuff… basically, I grab pieces of this for my prompts.
If I can, I actually include this whole thing. Um, but, um, you know, I tell it how I want my answers. I'm like, I want them to be… concise, whereas someone else might want them to be, you know, more thorough.
And wordy, and friendly. I don't… I don't really care, the… Claude is very friendly, like.
Every time I correct, it's like, you're right! I'm like, okay, don't tell me I'm right, just tell me… just tell me things.
Um… Uh, I can tell it to use web search. Web search is actually a new tool, so… Um, if you've heard about MCP, Model Context Protocol.
It's a protocol to help the AIs use tools. Um, and one of those tools is browsing the web.
And that is added a lot of capabilities. It's able to work with files, though.
Um, on your… on your desktop. It's even, um, there's even ones that can… Um, run your desktop.
Those are… are pretty significant, um. Cpu, GPU load, though, because And bandwidth, too, because it's… it's… It's gotta basically take and process the screen, figure out where the words are and the buttons are, and figure out where to click to do things, like, that's… that's a lot of processing there.
Um, and also a lot of security risk, right? Um, if you're letting your AI loose on just clicking on things on your screen, who knows what it'll do.
Also, when you give it access to your files. It has access to your files, and what's it going to do with those files? So, you gotta think about these things before you give them access.
So, I asked for, you know. Links to the documentation and sources, you know, cite your sources, uh… 50 years ago, you know, you're in, um, your college comp.
Classes, and it's like, cite your… cite your sources. Still need to cite your sources. Um… Very, very helpful. I've been asking for confidence levels.
The confidence levels are not very good. Do not trust them.
Um, but, uh, it is starting to get better at calling out when I'm speculating, when it's speculating or unsure.
Um, I'm trying to get it to double-check its answers. I think I need to be more specific on how to do that.
Um, also, I've actually… these are… Some of these rules have been because I had a problem with an answer.
Um, and it was… it was speculating, and it said, you know, it's… It's confidence level was 85%. I'm like.
So, you know, I… It says, oh, I'm sorry, I was speculating, and I'm like.
Okay, you need to explicitly call it out. And can you write the sentence for me to use in a prompt?
Um, so… This is… this is self… self… improving. It's self-improving.
Very cool. Um… Large language models are notoriously bad at math.
Um… A couple months ago at the LA Ruby Users Group.
Um, we had someone doing a demo. And they were using some of the latest models.
And they were, um… The question was, how many R's are there in strawberry?
The letter R, how many are in the word strawberry? It could not get 3. It did not get three. It got two. It kept getting 2.
So, I'm asking it to use a calculator tool, or… or… Write a program. So that's… that's another interesting thing that… Okay, um, it might not know how to do something.
But it can probably write a program to do that thing, and that's pretty… That's another, uh, it's learning.
You know, it's learning how to… Um, figure out how to find the answer.
Wow, that's a… that's a… that is an interesting way to put it. It's learning how to figure out the answer.
Um, and I remember when I was, uh, mentoring. The most powerful… three words that I've ever said in my life were, I don't know, let's find out.
14-year-old kid I was mentoring. And what he realized was.
I don't know all the answers, I just know how to find out the answers.
Ai is starting to figure out how to find the answers.
With our help. And with our prompts to, you know, what answers do we want? What things do we want to accomplish?
Um, memory. Llms are bad at memory right now? They're just starting to get good at it.
Um… So, basically, this is… this is basically when I tell it to remember something or correct its behavior, this is telling it to write something to put right here.
Um, and I ask it, I don't think it's been successful with this yet. Uh, when I ask you questions, tell me what else, like.
Dan or should be asking you that… are related to the answer that it could answer for me.
Um… challenge my ideas and assumptions. It's been really… it's very, um… What's it called when… what's Trump's cabinet do for him? What's that word called?
Bubber up?
Psychophone, sycophants. So, Claude is a sick of hand.
Um, and, you know, it's always saying, oh, that's a great idea, but it doesn't push back.
And… I'm engineering. I need pushback. I need… I need to look at the design space and, like, push the boundaries of the design space, and it's just kind of taken what I said, and like, oh, hey, yeah, that's a great idea, we should do that, and I'm like, no!
Tell me… tell me the cons, like, okay. Pros and cons, I need to weigh pros and cons here, that's… that's what engineering is.
Um, some stuff about me, blah blah blah… Um… Uh, the devices, sometimes I'm asking, hey, how do I make this work?
Um… oh, hey. Do I need to update this? Am I… I'm on 15.5 now. All right, gotta update that then.
All right.
All right, big update two days ago. All right, um… Okay, writing, um, I'm telling, you know, I usually think in outlines, and I write in Markdown, like.
I am almost… I do much more markdowns than I do code Um, I don't generally touch Word.
I'm pretty much doing all Markdown. I'm in Mesibian… Obsidian now?
Which is, uh, um, basically a knowledge-based Um, where you connect It's basically a personal wiki.
That's really what it is. Um, it's all in Markdown, so… If obsidian goes away, I've got my markdown files.
I'm thinking about just getting rid of obsidian and just doing everything In, um… VS Code, because it has more of the tools, it's got the AI built in, it autocompletes.
It's got autocomplete. Autocomplete with AI is amazing. About half the time, you type the beginning of the word, the sentence, and it finishes your thoughts.
And sometimes it gets in the way, and, like, it's finishing thoughts, and I'm like, oh, that's stupid, or that's repetitive.
But sometimes I let it, like. Give me, like, um, oh man, I should… I should come up with an example for this.
Like, I'll let it… give me… I'll let it autocomplete and see what it does.
And then I'll let it keep auto-completing and see what it does.
And those sometimes give me ideas of things I hadn't thought about.
Um, so it was auto-completing wrong. But it was maybe auto-completing something I needed to think about in the future.
When I… when I try to get the LLMs to edit my text, it wants to rewrite I do not want it to rewrite.
Um, and so that's… that's a… that's a… that's been a real struggle, actually, for several months.
Um, especially cover letters. It cannot write a cover letter to get me a job.
Um, but it can edit cover letters. I've been honing and crafting my cover letter for months And it is pretty amazing. I basically asked for suggestions, like, give me 10 suggestions!
For, um, give me 3 suggestions for this paragraph. Um, the suggestions, the 10 suggestions would be, like, something to improve like, a wording or some… some… putting some sentences together. I'm not very good at putting sentences together, so I get help with that.
Um… Uh, blog articles, planning. So, this is the new… It's… it's interesting. Um… The industry, and by the industry, I kind of mean the software engineering industry.
Is learning how to use this tool. And a lot of times, we're kind of learning these same things at the same time. And I saw this with the Ruby programming language community, Ruby on Rails.
In the, uh, the late aughts. Um, metaprogramming is this tool we had, and we overused it.
And we all learned… you know, the community learned that we were overusing it, and so… Rails was overusing it, and so they… they… they… pulled back and used it less. They used to… removed it where it didn't need to be used, where it wasn't helpful, where it was actually harmful
And, like, I kind of learned that at the same time the rest of the community was learning it, but then I would see, you know, people, the New York City community and the learn it, like.
The same pattern, but they were a little further behind the community.
Um, and I guess probably part of the problem was the community wasn't sort of Well, there's two things. The community didn't communicate it, but it's also a lesson you had to learn on your own.
So, the big thing in AI LLMs Right now, besides MCP and… which is used to use these in different tools to give the AIs tools is prompt engineering.
And the, um… the meta prompt, the… Oh, I forget what the golden prompt, I forget what people are calling it, super prompt.
Um, so basically, it's to have a conversation with the AI.
To have the AI be your assistant and have it back and forth.
Instead of giving it, like, all the ideas up front, you tell it the idea, and you tell it to ask questions.
And come up with a document, like the specification or a business plan.
Um, and ask follow-up questions. And so, what I want to get out of that is.
Um, like, a specification that I can… like, a two-page document that I can give to a programmer to write the program, to meet the specifications.
Um, now, you would think that you could just say, well, why can't I just… have the AI write the program.
Well, that's because AIs can only have so much context. You know, they've got… They've got data on, you know.
They've got, like, a gigabyte… I think the… The data sets out there are… On the order of, like, 6 gigabytes.
Um, so that's… you know, a good chunk of… of… local memory. So, these are running on bigger systems.
Um… But, as I said, it's taking… it's stringing these words together.
Um, but by the time it gets to the, you know, millionth word, it's forgot the first word and all the things that you were talking about at the beginning.
So, what we need to do is basically link them. So So you have the first one write a document.
For the second AI to use and do its little part.
Um, which is interesting, because that's kind of the way we build software.
Um, you have the… the product owner, write a specification.
You have the specification, make some tests, you have the test. So.
Um, it's interesting not finding that the… AI-assisted software development lifecycle is the same as the agile software development lifecycle. So, very interesting.
So this is basically this super prompt that says, hey, let's have a conversation about this.
Um, my coding preferences… Um… I wanted to follow TDD rules, I want to refactor a lot.
Specifics bash, here's my bash rules. Um, I don't need tests for Bash sometimes.
Um… I want them to be idempotent so I can run them again. Um, okay, so that's… that's prompting.
That was quite the interview there. Any questions about prompting? Or these specific prompt… Um, engineering things?
All right, I don't see any hands, I don't hear any voices yet.
All right, back to here. Okay, so the LLMs… are… they have recently under-added understanding. Now, that's… that's a loaded term.
Um, I forget who said it, someone here probably knows, because it's kind of on the tip of my tongue.
Someone says, whether a submarine swims or not is not really important, right?
Um, like a fish swims and human swim. Does a submarine swim?
I don't know, but it's doing similar things to swimming. That's what's important.
So, it's maybe not understanding, but it's doing something close to understanding.
So it's getting that context, that meaning, that intent, and that sentiment.
Um, really well. Lately, they've added on top of this reasoning.
And deep thinking. Um, today, yesterday, today. Um… Anthropic announced Claude?
Sonnet 4. We've been using 3.5 and 3.7, and 4 came out today.
Or yesterday. Um… And it's getting better at deep thinking and reasoning.
And… the… they said they have gotten it so it can basically spin an 8-hour workday doing all the things.
So, where I said, you know, make a plan. Uh, for the next phase, make a plan for the next phase, it's doing all of that.
So, you can get it to do 8 hours of work, and it's good work, then… Yeah, unfortunately, that's gonna put a lot of people out of… out of work, right? Where's gonna enhance what we can do, enhance our capabilities.
I wish we could just do that, and realize that we all need jobs, and stop firing people when When the economy's going to be bad. You know what happens when you fire people? The economy's gonna be bad!
All right. So, memory. I talked a bit about memory. So, short-term memory has got this context. Like I said.
Um, it's got a million tokens, and a token is roughly… like, a word or half a word.
Um, so I think thinking would probably be two tokens, think and ing.
Um, so it's, uh, typically the big ones have a million tokens.
So, if you've gotten, like, half a million words in. It's probably forgotten the first… the beginning.
So, what they're doing now is giving you access to… documents, and that's creating long-term memory. So, you write this document, it can go look at it, you can keep looking at that document.
If it loses context. So that's how we're getting long-term memory.
And it's… it's pretty amazing. Um, and I think I already talked about generative AI. Yeah, yeah, yeah.
Um, oh, so what I want to talk about on generative AI is… Um, so… the… the… things that create… images… And video and audio.
They do it in a similar way to… well, first, it takes, like.
It tries to… you give it a description, and it… creates a more… a better description, or a more detailed description.
Um, like, I think I asked for something like, uh, drop me a picture of a pirate ship, and it said, you know.
It's into the next phase, draw a picture of a pirate ship, um… It should be, you know, a large ship with 3 masts, and… and floating on a water near an island, you know?
And so it gives me a nice picture, and I can tweak it, ask it, you know, follow-up questions, or how to improve it.
Um, but a lot of that is just still following the… the, alright.
Given the context that we currently have, what's the most likely next word to has this generator create me the right kind of picture.
And in fact, the picture is generated in the same way.
Okay, if I'm creating a picture of Uh, a pirate ship.
Okay, I've got… let's start with a few blobs. Let's have a, you know, brown blob and a green blob for the island, and some blue For the ocean, and maybe lighter blue for the sky.
And it'll start there. And, like, okay, that's… That's the simplest… Um, image that I can make, given that description, right?
Now, what's the next thing I can do? The next thing I can do is… is… so it does this pixel by pixel.
But it's not really necessarily… it can be pixel by pixel, or it can be, like.
Large pixels going down to individual smaller sections. Um, so it's using a similar thing, and it does a good job of generating pictures.
Um, so, what are we using AI for, um, in the voice field?
Uh, we've got Apple Siri. Did I activate anything? Nope, not yet. Uh, we got Amazon Alexa.
We got echoes and dots and Google Assistants, and… ChatGPT has a voice mode you can talk to now.
Um, I don't know if Microsoft Cortana is a thing anymore, or Samsung Bixby, so… A lot of players in this AI assistance space.
But these AI assistants are… A little bit limited.
Um, in fact, I think Siri is more limited than it used to be. I thought I could go ask it, like, questions, and it could do internet research, and like.
Tell me the answer, and I was like, here, go find this… go look at this webpage. I'm like.
I wanted you to give me the answer, not tell me where the answer is.
But I've heard that, uh, Siri in the next version is going to be as good as ChatGPT.
So, that's encouraging. Um, so AI systems can currently do simple tasks.
Um, and, you know, limited tasks, like. There's a limited number of things that it can do for me, right? It can play some music, it can look at my calendar.
But it's gonna be given these extra tools, and… tools that'll be added on, um, a lot quicker with this MCP protocol.
Um, so voice cloning. Um, actually, I saw something on, believe it or not, SlashDot, I was reading SlashDot the past few days.
Um, the Screen Actors Guild is suing Um… makers of some Star Wars thing for… doing an AI version of, um… of Darth Vader's voice.
Um, so… this voice cloning, so we can… we can create speech, we can do text-to-speech well enough That it can sound like somebody.
Um, and there's… there's a lot of good things and a lot of bad things there.
Um, some of the good things are is, okay, we can get a Darth Vader that sounds still like Darth Vader without having the original voice actor still around, right?
Um… we can do voiceovers without having to pay people for voiceovers. We can do movie dubbing.
So, we can have automatic translation from one language to another, and then do text-to-speech on the language.
So, we have AI doing the… speech-to-text.
You know, generating the subtitles, and then we take those subtitles and we translate them to a different language.
And then we do text-to-speech for the language we're translating to.
And then we can do audio from that. We can… we can do the dubbed movies. So, very cool.
Um, at this point, we're probably getting to the point where we're changing the… the way the mouth moves, to fit the words too.
Um, and you can have your virtual assistant, if you had your voice, you can have it call somebody and use your voice to, you know.
Make an appointment. Um, I want to dig into this Apple Personal Voice thing. Um, it's pretty cool.
So, it says it will create a voice that sounds like you.
And it uses machine learning. Um, it has you record 150 different phrases.
And then it processes overnight. Like, this is some hardcore stuff, right?
And it's local processing, but it's… it's… it's pretty significant. Um, so it creates a synthesized version of your voice.
So, so what good is that? Well, it's actually helped people that don't… that can't speak.
They can… they can vocalize, they can, you know, make sounds with their vocal cords.
But they're… they're… the problems with speech they have are more on the mechanics of the mouth or something.
Um, or, or, or cognitive And so… They've gotten these people to… they don't get the 150 phrases, but they've… They've gotten them to vocalize things, you know, just make sounds.
And they've created personal voices that sound like that person would sound if they could vocalize.
And that's… that's pretty amazing. Um, that's… that's… that's one of the good things that this, uh.
To synthesize voices is giving you. So, you can actually try this today.
Um, and it works with, um… I don't remember what it works with out of the Apple ecosystem, but there's also… well, there's accessibility.
Um, oh, you can do voiceover with it, which is kind of weird, because it reads stuff to you in your own voice, I don't know if I would like that at all.
Um, but uh, there's augmented speech apps and things that will use that.
Voice that you create with Apple. Um… I'm not sure what I was gonna talk about there.
Um, but I will talk about, oh, multimodal generative AI is just the concept of Okay, we're gonna generate voices, and we're gonna generate text, and we're gonna generate video.
Um, so all the things together. Alright, so coding with voice.
All right, I think I might get to a demo here soon.
All right, so I'm gonna… talk about and demo. Oh, uh, Gary, go ahead.
Um, so multimodal generative AI… Drop back that. Okay.
So, what's single modal? Generatively, I've heard people use the term multimodal before, and it's like, okay… What's the alternative?
Okay. Yep, yep, yep. So, single mode would just be generating a picture.
Or generating text. Or generating sound But multimodal just means It's basically multimedia, right? So, you're generating the sound, the picture, the subtitles.
Um, all together, and synced up, even. That's… that's the harder part.
Okay, yeah, it gives me an idea.
Does that answer the question? Is that good? Yep. Well, talk about something related to that towards the end.
Um, coding with voice. Okay, I'm gonna do some demo with VS Code Um, some with Copilot, which is a plugin for VS Code.
Um… I'm not gonna demo cursor windsurf, and Zed, they've got voice and AI and all kinds of things.
Um, and I'm gonna… show a video of cursorless, it's too amazing, and I… it's… it's… It's got a steep learning curve, but it's pretty amazing.
Um, and I'm actually going to use Talon with VS Code.
Um, it's got some, um, app-specific configurations. Um, that I played around with, and hopefully… the most of the ones I have remaining still work.
Um, because it's some pretty good stuff. All right, VS Code with Copilot. Okay, let me pull up my VS Code here.
Right, um… Don't want that one.
Okay, we'll find my window… a presentation slides, okay, it's on that one.
Okay, this shouldn't be anything too surprising. It's, in fact, I believe, the slide we're looking at.
All right. Um, well, I guess I should talk about this first.
Um, so the VS Code… VS Code has a speech extension, which does speech-to-text and text-to-speech.
Funny enough, I haven't done text-to-speech with it yet, I… haven't tried any of them.
Now that I think about it, speaking back to me. Um, but I really need to get in there.
Um, so I can have that… verbal conversation. Carrie, you have another question?
Alright, just leave your hand up.
You know, uh… remind me, is VS Code… Microsoft?
Uh, yes. Um, yes. Visual Studio is a Microsoft product. Um, code is basically the… open source version… Although there are some proprietary things in there.
Um, technically, this co-pilot is GitHub Copilot? Um, so GitHub was bought by Microsoft.
Um, but it's… I mean, honestly, Microsoft has been doing a lot of good things, and they're pro-open source.
The open source today the Windows system for Linux, and uh… a command line editor, and a couple other things. So… They seem to be doing pretty good, um, as far as not being evil.
Um, in fact, they might be doing a better job than, uh, Google right now.
Ooh, ooh.
Um, yeah, it not being evil, but, you know… Seems easy to be eagle these days.
Um, okay, so… Copilot is an extension, and I think it's not open source.
Uh, no, I think they open sourced that one today, too.
So, I'm gonna do a demo. I've got some, uh. I generated some sample Python code, and I'm gonna have it do some editing and… updating, stuff like that. All right, so I'm going to…
Alright, I'm going to move my… this over here. Okay. I'm not gonna do that.
Can I do this? Okay, because I want to see what I want to tell it here.
All right, so at the top, I'm gonna… All right, so, like, at the top, I've got my slide, which is what I want to tell it.
And at the bottom, I've got some Python code here. Right. So… I'm gonna hold Command-I and speak to the Copilot.
All right, and I'm going to… I'm gonna… I guess I'll go down to the… bottom of the file here.
I don't… I don't know if it matters. All right. All right, this is where I… I need some silence here. Oh, actually, I should turn… This guy completely off.
While I do this… Okay, any other speech guys? No. Okay.
Add a factorial function.
I don't see a factorial function. I'm like, God.
All right. I don't know if it's because I went down here… Let's try this again. I'm in… I'm in edit mode, so there's… there's different modes that AI can be in. You can… Just have it answer questions, you can have it edit your text, or you can have it, like, run your command line. Um…
I don't try to do that too much yet. All right, let me… okay, I don't need to turn anything off. Stan?
That Command I… that's the… means the command button on an Apple machine, right?
I only ask because I'm a Linux guy.
Mm-hmm. Right. Yeah, it'd be… it'd be controlled. Anywhere you see command would be, uh, control in Apple and in Linux.
Usually the mappings, you know, I'm not 100% sure it's going to be CTRL-Enter.
Thank you.
Might be a little bit different. Um, so key bindings might be different.
Honestly, I don't recommend the Copilot, um… voice. If you're gonna do voice.
I don't recommend the Copilot voice, and I'll show another way to do… voice with Copilot that's not Copilot's voice stuff.
All right, gonna try here again.
Add a factorial function. Hey, there we go!
Alright, um… Now, I didn't find a way to actually accept this with my voice.
Um, I found things that should have, but they don't. So… I'm going to hit this Accept button.
Or I can hit escape to… to cancel it. Um, so I'm gonna hit accept. Actually, I can hit Command-Enter, so… I'll do that. Okay.
Well, it was bad, because that shouldn't be here, it should actually be… Um, unindented.
Let's try unindenting that with text. Or with… with… with AI.
Unindent this.
No results, okay. I'm just… I'll just hit the Shift tab. It's a lot easier.
Okay, now I'm gonna… I'm going to, um, have it delete some code, so hopefully this works. It worked earlier today.
Delete this.
It's just bad. It's just bad at its job. So, you know, if you're bad at your job, AI is probably going to replace you, because it's bad at its job here.
Um, so it did… it did not delete that, it replaced it with whatever that is.
I expected something to do with the prompt that they put in, um… I call it a… Built-in prompt, um… It's basically a prompt that's before any of the stuff that you can prompt it with.
And it's doing things that say… saying things like, you know, don't tell the person how to build a nuclear bomb.
So, literally, it's got things like that in… To keep you from jailbreaking, to get information that's dangerous that you shouldn't be.
Trying to get. All right, let's see, let's go back to the slide and see what we got.
Um, dictation, so… Tried that earlier today, it didn't work at all.
Um, Command-Alt-V, so let's see what happens when I hit Command-Alt-V.
Man… I'm sorry, something went wrong. I can't build the AST.
Okay, great, thanks. Alright, so that's not working.
So, um… AI, uh, voice.
Pretty much broken, half broken at this point. Um, okay, so this one's pretty cool.
And… alright, I need to hide… You all… Right. So that I can see what I want to say.
Okay, so…
I'm gonna hide that… I'm gonna make this guy bigger again.
Okay, do I want the Python? All right, sorry, stand by.
All right.
So I gotta start channeling.
Hell and sleep. All right, so I'm going to demo some stuff here.
Um, actually, I can demo it right here. That's pretty cool. Okay.
Tell and Wake. Bar extensions.
Bar search. Bar files.
Bar Explorer. Bar files.
Bar clothes. Go to sleep.
The funny thing is, I got bar clothes working, I added it myself, and now it's not working.
Um, so… Yeah, the… so these are our… Talent configurations.
And, you know, I added mine to close, because they didn't want… so this is the sidebar.
Um, so I added… so I could say sidebar, you know.
Close, but… Apparently that's not working.
So, let's see. I'm gonna do some of these other ones. I'm gonna close this. I can do Command-B to get rid of that, so… don't quite need voice on that.
Talon Week! Focus Editor.
Panel terminal.
Panel problems. Go to sleep.
So, this is a list of problems, and… You know, I've got Markdown.
Uh, linting, um, so make sure my markdown is perfect. Um, and I got spelling, so it's, you know, showing me all the words that are unknown.
Um, so, kind of cool. Right, um… So, where did I… okay, I think I… Nope. Uh… Let's see, do I have a really long way? Okay, here's a really, really long line And, um, I want to make it… wrapped. Um…
And just to visually wrap, not… I'm not going to change the code, I'm just going to have the editor show that line on multiple lines.
Wrap switch. Oops. Wake up.
Wrap switch. Wrap switch.
Go to sleep. So, very handy. Um, because I do like to toggle between those modes frequently.
Um, so that's one I'll probably start memorizing. Um… I didn't get these to work yet.
Um, so it should be able to show suggestions and hints, but I'll show that actually manually.
Um, so… Pretty cool. So… I, as I said, it figures out what I want to type.
Pretty often. So, uh, let's see, let's see… Of course, it's not going to want… It's not… wow.
All right, let me see if I… if I… I've… I've had work before
It really does not want to… All right. Let me try creating a new file.
Uh, and I'm gonna turn it to Bash. So… And who knows if this will work or not.
And that's just a snippet. All right, that's… that's my snippet.
Oops. All right. Um… okay. So… let's see… Um, if… We are… In an interactive…
Why does it not want to do this?
The demo gods! All day long, it's telling… it's putting… I can just hit tab, and it would… They would do, like, if… dash I, or whatever it is.
Like, it would have filled in all of this for me.
And I would have been… I don't… I don't know why it's broken all of a sudden.
It's just the demo gods. Um, because I don't remember changing anything that would have affected that.
Um, the only setting I changed was keyword activation turned off.
Um, oh! That was another thing in the VS Code Copilot, you can say, hey, code.
Um, and it would actually be the same as hitting the, uh, in holding Command-I.
Um, so… I… I'm not a fan of it just… listening all the time. I'm a fan of doing something.
Um, like hitting a button to… to get it started and stop listening when I… when I do that. So that's… that's the way I'm headed.
Um, so… Earlier today, I couldn't get these hints and these suggestions to show by voice.
Now I can't even get them to do with typing, so… Um.
So, definitions show, basically, um, if I'm using a function, it will show me where that function is defined.
And, um, references and… and… goes the other direction, and definition peak doesn't actually go to the definition, it just pops up A little side panel.
Um, you can format the selection. Um, let's… let's see if I, um… Can do an example there. Let's say… Python's probably a bad example, because It, uh… yeah, that would be… okay.
Um, let's see… I say… Format selection, okay.
All right, I'm going to select this.
Talon Wake. Format selection.
Alright, demo gods are mad again. I don't know what I did.
All right. All right.
And maybe… maybe we'll use… Will this work too now? Right.
Fold that. Unfold that.
Select this. Select more.
Select more. Select more.
It's a like word. Select line.
Select line 59. Go to sleep.
Someone raising their hand over there? Stan.
Yeah, uh, does this thing know when it gets tired, and it's, uh, and… to keep track of… things it doesn't understand, and then at a certain point say, oh, I'm too tired to to do anything better, so I… it'll just quit working, or will it tell you that it's too tired?
It got too many errors, or too many unrecognized phrases. From you. Because sometimes I see… you towel on, and it comes out Tail Lion.
And other times, it doesn't. You know, so sometimes it worked, and sometimes it doesn't.
So, is it keeping track of that, and can you go back and… And…
No… no buts? Um, there is…
Um, recording. So…
Which is amazing. Like, it… It… it created an audio file for everything I said.
So, this was when I was doing… practicing YAML, oh, these are not much earlier. Um…
All right, so yeah, so I can actually go here and see, and it's got the audio, so if I wanted to take the time to try to fix it, and try to, you know, teach it.
I could. That's a lot of work. I don't think anyone's doing it yet. I hope they are, but uh… Uh, yeah, I don't… I don't know.
Actually, this is not current either. That's interesting.
Huh, okay. Demo gods again, I guess.
All right. Okay…
Is there any documentation that tells you What it's trying to do that way?
You know?
Um, well, it shows… Um, Talon Wake?
Tell and sleep. Okay, so you saw it said tall and sleep, right?
Right.
Okay, so… I've actually programmed it to know that tall AND is the same as talent.
So I can say either one. I've got a couple different options.
Um… But, um, those… those subtitles that it showed on the screen, that's what tells me what it heard, and… what it… based its actions on.
Right.
So, I mean… the fact that it's listening or not listening tells me that, you know, it understood what I said.
Um… I kind of wish it would show me, like, show me what I… you thought I just said. That would be a… In fact, I should write that one down. Show me what you just said would be an amazing addition to this.
But… but not a thing yet. And… and with this open source thing, who knows when that will be a thing?
Um, but, you know, we're fairly far, far along. Um, I don't remember this being curse, I don't know… what curse was? I suspect that this… got changed. Um… Okay, so I'm going to do a few, um… text editing? What?
She's up next. Sue Hurst is up next.
Oh, okay. Sue?
I just have a quick question. I noticed this last week, too. You said, like, delete this, or… Or, like, here you've got fold that, unfold that, or this and that.
Keywords that you can't use for anything other than for giving in instructions?
Ah, alright. That's, uh, okay, that's a very interesting question, and I will Um, show you the configs to answer that.
Okay, where are they? Okay. Okay, that's… there's the vocabulary list that we were looking at before.
Um, let me find…
So, here's the stuff… that I was trying to add to, um… to VS Code. In fact, I'm in VS Code, so let me… let me try that again.
So, let me see if I can get this back working.
So, the parentheses mean, oh, that's why I screwed that up. Okay.
So now… bar files. Oops. Wake up.
Bar files. Talon Wake.
Bar files. Bar clothes.
Hell in sleep. Okay, so… This is a rule, and the things before the, um… colon are basically the words.
And so, I have to start with the word bar. I have to put the word either Explore or Files.
And then it will run this command. Now, VS Code is very cool because It's got tons of actions. It's got tons of commands, and I can just give it the commands.
Um, so I actually went to the keyboard shortcuts, and I'm like.
Oh, I know I want… Um, Command-B… Um, to clone sidebar.
So… Um, so I right-clicked on here, and I copied the command ID, And I pasted that right here.
Um, right here. That's… that's… what I just copied. So, I looked at the keyboard shortcut, and I figured out what the command is.
To give VS Code. So… VS Code makes this very easy to, um… to control with, with, uh, talent.
Um, so the syntax is… Um, kind of like a regular expression.
So… Basically, this means that I have to say exactly the words, keep that or accept that.
Um, I… or keep that or accept all. So there's one rule that says keep all.
Except all in another rule that says. Keep that, accept that.
Um, so if I say… keep that, it will be… it'll accept the hunk.
And if I… keep all, it will do accept, which I assume means Accept All.
I'm not exactly sure what it does. I know that the Keep That is working.
Um, I was having trouble for it with it understanding me, and it heard this.
Frequently, and I could either put this in here. Or I might just change it to keep that, you know, I might just… change my settings to… to… accept what it's easy to hear.
So it seems to understand what you meant by this and that.
Um…
Um, well, it's… it's… my command is that. It wouldn't understand… if I said, keep this, it wouldn't know.
Um, because I don't have a rule for that. So these are rules.
So, if I say, I'm gonna… I'll… mmm… Let me, um… Go ahead.
It just seemed like, especially last week, I noticed, it seemed like whatever you… just told it, and then you said, delete that, it was like… It seemed to know… At least, it looked to me like it… it knew you were talking about what it just did.
And not anything else.
Okay.
Yeah, um… Yeah, so Talon, it actually understands, sort of, what's… what it just typed, and… It can basically select what it just typed and do the command on that. So… In this particular case, it does whatever this VS Code command does.
Um, and in that case, it doesn't matter what's selected, I don't think. Um, I think it just matters what's on the screen at the time.
Um, in some of my… I don't know if I've got anything… Um, passive format… Let's see… And I don't know that these… So, I could say make this loud, and it would make this completely uppercase.
Um, so… I want to say lowercase that, or downcase that.
And we will reformat the selection. Um, but it's also got this idea of, okay, if… Here's what I'm trying to do. If the text is selected.
Then work on the selected text, otherwise work on Um, what you just wrote.
Um, so that's… it's… it's programming, it's some Python code that I'm gonna have to figure out to make it understand Okay, when I say that, I mean either what's selected or what you just entered in the last… the last phrase that I entered.
So, it's… it's… it's part of the… the rules. The rules can do whatever you want.
You know, you could throw all the way… all the rules away and start over fresh.
Um, and do exactly what you want it to. Um, so… Basically, these are anchors, so it has to start with title, or capitalized, or capital, or capital.
And it has to end in that. Now, a lot of the rules don't have a… an anchor at the beginning or the end.
Um, because… Talent expects you to sort of stream a series of commands together.
Um, and unfortunately, I am not good enough to show you that.
Um, but I will show you a video of someone that's just, like, amazing at this, and… And just go on above and beyond on that.
So the square brackets means it's optional, so I could say title case that.
Or title that, capitalize that, capital that. And I spelled capital both ways, just because I… I have no idea, when I say capital.
It could… it could recognize either one, and either one could be correct.
Um, and… and, um… I can… I can demonstrate. So these… these are homophones.
And if I was dictating, I could just double-click on it and… And called the homophones, and I'll actually show you that right now.
Um… Talon Wake.
Phones that.
Talon Sleep. Okay, maybe because it only had two options?
Um… let's see… oh. Actually, I've got a demo on that later, so I don't actually need to do that now.
So, yeah, it basically has to do with… with however you define these rules.
And however you define these actions. These actions are basically calling Python code.
And their community-contributed Python code, so… I have to work with either What they give me, or write my own Python code.
Um, and so, so far, I'm at the point where I'm just using what they've given me.
Um, but I'm getting to the point where I'm gonna start doing some Python.
All right. So I'm gonna go back to here, and I'm gonna show some, um… some text formatting.
Um, that should be a little familiar to Unix people. All right. Um, any questions before I start?
Okay. All right, where'd my mouse go? There we go.
All right. Tellen Week. Snake that.
Oops, it didn't wake. Talon, wake! Snake that.
Dunder that. Oops.
Dunder that. Hammer that.
Dove string that. Hammer that.
Go to sleep. Of course, now the editor is offering me suggestions.
I mistyped hello, and… Um, I've got a slight misconfiguration. I should be able to hit tab, but, um… It's… it's currently not working, because, you things are broken all the time. But I can just click on this word, hello here, or this blue thing.
And it will autocorrect. So, oh, and here's some other suggestions. So I can hit tab here.
And it was… we'll, uh, accept this… this text in gray.
So, it's… it's assuming that you know, given all the things I've said here.
It's likely that I'm going to say, comment that and uncomment that.
I don't know if those work or not. They may or may not work. It may be hallucination.
So… I'm gonna go back here… go back to what I had.
All right. So, you know, we've got snake case and camel Case, and… and… double-coated strings and dunder is double underscores, so… things that, especially Perl programmers and Unix programmers are familiar with a lot of those. Although I've never heard the term hammer that.
So that might be a telling-ism. Um, and… Um, I've decided to call it Shout That, you know?
Um, if I've got something selected and I say, shout that.
Um, and I'm gonna actually be in… so I can say, shout that or shout this. That's what I want my rule to be.
Um, shout that or show up. This should take my… Um, my selected text and make it all caps.
Um, and maybe I'll allow it to say all caps, or all caps that, so… haven't decided. The problem with… with… All caps, that, is… Um, all in caps are slightly harder to understand.
Um, and also might be used for other functions. Um, the… phonetic alphabet that Talon comes with. It uses the word cap, so it could get confused.
By, um… by sort of overloading that word. Um, especially when A lot of these rules are not.
They don't have an anchor, so… like I said, they expect to string some things together.
So, when you say…
Cap that, it might think that you mean to… Enter letter C, and then the word that.
So, you gotta worry about those kinds of things. Um… okay.
All right, now, that's me playing around. Doing an okay job. Um, but this guy is going to, um… show you what can be done.
Okay. And… okay.
So, this is… Um, another addition to Talon, and it's… Oop, go ahead.
Someone had a question, or someone just Not muted.
Okay, so that was basically… Talon Basic… rules for VS Code.
This guy has made this… additional set of rules for VS Code that are just… Um, an entire language.
So, I learned about this at Strangeloop a few years back.
Um, the guy that wrote this, um, the guy that we'll be watching in the video.
Talked about the language he wrote, and that involves a parser.
Um, and… So, this is… all the… so, these are the actions you can perform.
So, um… How, um… which is a good one. Oh, take.
Take is a good one. So, there's a lot of these actions, right? So, take bids, basically, to just select the text.
Okay, so… you say take, and it'll select something, then you say target, and then… It figures out what to target.
Well, here's the different things they could target. It can target things inside of the square brackets, or curly brackets, or double quotes.
Depending if you use that. So if you say. Take quad, it'll pick the… double-quoted thing that's… that's nearest to it.
Um, or you can say. Take ARG, and it'll take the argument that's nearest.
Or you can take block, which is a paragraph. You can take the class name.
You can take func, which will take the… select the function name, like, this whole language is just… crazy. And then… It gets crazier, and you'll see, you'll see in a minute.
Um, so, and then you can modify it, like, so, you can say, take down 5 to basically… Select 5 lines down.
Um, and so he's got, in his language, he's got this and that.
So, that would be the previous thing, and this is the current selection. So… To not confuse myself, I might want to follow his standards if I… if I want to… Let's try to get to this level.
Um, so his language accepts, you know, ands and betweens, slices.
Um… And then where to move things to, or copy things to… Um, yeah, this language is… It's a language. It's a language you have to learn.
So, let's… Um, so this is pretty well documented, actually.
Um, but let's… let's watch him give his demo. It's a 4-minute first one.
Um, I will actually pause the video. Um, and… I'm gonna turn this completely off, just in case.
I'm actually gonna pause frequently and talk. About what he just did, because he goes a little fast.
So this is 4 minutes, and the next one is 2 and a half minutes.
Um, so I will let him go. Um, let me know… let me make sure my volume is up.
Um, someone shout out or raise your hand if you can't hear what he's saying.
Welcome to Cursorless. This is the first in a series of tutorial videos designed to get you slicing and dicing code fast.
All right, can you hear that?
Yes, I could hear it.
Okay, good. Right, so this is Poki Rule, he's the one that presented it, um, Strangeloop, he's the one that wrote all this.
And he… basically runs his editor like no one you've ever seen before.
And it's super efficient, but a high learning curve. Um… I think I've got captions on. Okay.
This video assumes that you've already installed a cursorless. If not, check the description for a link. It should be a breeze.
This video also assumes that you're familiar with the Talon alphabet, which is a way to map from words to letters. So, for example, we say air for A, BAT for B, etc.
If you're not familiar with that, there's tons of great resources online. I've dropped a couple in the description below, or with Talon Listening, you can just say Help Alphabet. Let's see that.
Help Alphabet. Okay, the first thing I want to call out is he clicked He did a click. Instead of saying, uh, you know, Talon Wake or Wake Up, or whatever.
He said, he said. And I want to do that. I definitely want to do that, but it takes some effort to set that up.
Um, and, um… He says, drows to end, which I don't know why the community picked that word.
But I want to say, shh, um, when I'm… when I'm done.
So, I kind of like that idea. It's something I definitely plan to do, but it's going to take some effort.
Um, so he's gonna say help alphabet. And I will show you my alphabet here. Well, now.
I guess I probably showed you the alphabet last week, but I've actually got it to have the, like I said, multiple different alphabets that I can use.
Droughts. So, the next thing you'll notice, uh, probably there was that I made a popping noise to wake Talon up.
And I said drows to put Talon to sleep. So you can safely ignore both the popping noise and drows.
Um, if you hear them, it's just a way for me to quickly switch back and forth. We've been talking to you and talking to talent. Note that those commands are not standard, so you won't have those in them in a vanilla talent installation.
On this channel, those are the only commands that I'll try to use that are not standard. If you want to see videos of me jamming with my fully custom setup.
Check out my personal YouTube channel. The first command I'll show you today is… Chrysalis docks.
Drows. Now, that command just takes you to our documentation hub, where you can learn more about cursor lists.
Tap close, focus code, drows. The next command, uh, is our cheat sheet.
Cursorless Cheat Sheet. Drows. Just a quick reference, um, so you can see what's out there. And then the docs and the videos are a way to actually learn how to use all these things. With the boring stuff out of the way, let's actually do some proper cursorless commands. The first thing you'll notice is these little hats that are over various letters and cursor lists. The important thing is which letter the hat is over.
That's how you're going to refer to the token. So, for example, if I wanted to refer to the token AND, we can see that it has a Okay, he goes a little quick here.
So, he wants to select the word AND right here. Um, on that third line. Second last word on the third line So, it's got the little hat over the N.
So, that indicates, to select that word, he needs to say the code word for N, the phonetic Word for N. So… I don't remember what it is in either phonetic alphabet, but he's gonna say it real soon here.
And, uh, you'll see that he selects the word AND because it's got the There you go.
But he's not gonna use November, he's gonna use the shorter word.
Hat over the N, so I need to use near to refer to it.
Take near. So, that was our first curse list command, take near. So, every cursorless command has an action and a target.
So in this case, the action was take, which means select And the target was near, so the token with the hat over the end.
So, the other interesting thing I'll point out is. Uh, when he selected it, things changed.
So, it doesn't have it over the end anymore, it's over the D, and so, like.
You've got to basically learn to look at the Word, look at the dot over it, look at which letter that is, and then think of which letter corresponds to that.
And then think of the commands. So, there's a lot of cognitive stuff going on. It's gonna… it's gonna take some… some learning, I'm sure.
That hat is not gray, then we need to reuse the color in addition to the letter.
Take Blue Urge. Droughts. That's single tokens. Now, let's say we want to refer to something bigger. So, URGE was the U, Um, so this dot was over the U at the time.
And you'll also notice that there's only one dot over each word.
Um, but there's other dots over punctuation.
We can use past to create a range between two targets.
Take odd past each. Drought. Somewhat ironically, as you can see, cursula set is actually great at moving your cursor around. And in fact, even at adding multiple cursors.
Take urge and fine. So, urge here is the using.
And fine is lifting.
Droughts. But let's do some properly cursorless actions. So, if I want to delete the word dice, I can just say.
Chuck Drum. Drowse. And you can see, it deletes that token without ever moving my cursor.
Now, so far we've been doing everything in terms of tokens, which is useful, but they're not the only way to look at a document.
Let's work with lines. Chuck line near.
Droughts. If I just say line, then that refers to the line or lines containing my cursor or cursors.
Take line. Drops. Now you can select, and you can delete. Let's give you a few more actions to play with.
You can use the action pre to move your cursor before a target, as in… pre-urge.
Drows. Post, similarly, will move your cursor after a target. Like, post-air.
Droughts. Another useful action is change, which will delete a target and then leave your cursor where the target used to be, so that you can insert something new there.
Change heart. Drows. One of the great things about Talon is that it allows you to chain commands together so that you can code much faster.
Change look we're using drows. And that's part… All right, that's what I was talking about, chaining things together. So… What were his words here? Change look word using.
Okay, so change means the command is to… to… you know, he's gonna… he's gonna select it and replace it, right?
So, then the word look here is… Because the word is… he wants to select is lifting, it's got the L over it, so… I find it a little confusing that you can't just say, change lifting, right?
That's the way the Apple voice control works. Um, but it's… In some ways, it's harder because I guess there's pros and cons to doing it each way. This probably has a little more cognitive, but Um, when you're using full words and phrases to tell it what to select.
It's gonna have some recognition problems sometimes that makes it fail, so… This is pretty much a way to do what you're doing.
Without having to worry about the recognition. Problems. So… He does change look, and then the word word means he's gonna say a word.
And that word… so is… that word is going to be using, so he's going to change the word that's got the L over it.
With the word using. Change look we're using.
Droughts. And that's part one of the tutorial. I'll quickly remind you before I go, cursorless docs to pop up the documentation, and cursorless cheat sheet to show the cheat sheet.
Next time, let's write some code. Thanks for watching.
All right, I'll take questions now, because that was… that was a lot, right?
Anyone? Anyone? All right, I'm… I know, right?
That's a… that's a bit overwhelming, I think. Oh, man.
It's… it's getting… it's gonna get worse, so we got another two and a half minutes!
He's gonna… gonna get more complex, and… Amazing!
Jeez…
Yeah, it's my… it's literally mind-blowing, right?
Yeah, my biggest problem is I'm so used to the NATO alphabet, you know.
The Alpa, Bravo, Charlie, you know. That other thing he's using it, that… That… that really… makes it difficult for me.
It's… it's completely customizable. I can… if you want to use it, I've already got it customized, so I can use either the NATO alphabet that you're familiar with, or the… the Talon Community one.
Or you can pick whatever you want, you know? That's the… that's the crazy part, right?
Did he… did he give a… did they give a reason why he's using the… the… We identify the thing by the period over.
Yeah.
Instead of… the alp, uh… Apple way of doing the word.
Worth? I… I… it's more efficient, I think, is the answer to that.
I'm pretty sure this is about efficient editing. The most efficient leeway possible.
And… Yes.
But it requires you to be able to see the letter, the dot over letters, so you're visually impaired can't do it.
Right, correct. Um, yeah.
That's an interesting question, but, you know, how would they select That brings up the question, how would visually impaired select words by name, so I'm not… I guess it would… it would say them, and then you'd… to hear it and remember it to say the word.
Yeah. Uh… Has, uh… So, Ed Holland has vision problems, pretty bad vision right now, right?
Right, yeah, I talked to him about this, and he said that Uh, he just didn't think he'd be able to do this kind of thing, because he does everything keyboard. You know?
Oh, okay, that makes sense. That makes sense.
Yeah. And to the extent he's even written his own Specialized Editor with, with, uh.
Using some of the VI, uh. Key command kind of, uh, uh… paradigms.
Yeah, so… I don't know about pokey, but some of the people that have worked on this Um, have, have, um, motor impairments, like RSI industries injuries, like.
Um, Tarp O'Connell… carpal tunnel, um, and things like that.
So, they can't type, or they're not very good at typing anymore.
I think my typing is actually slowing down, and it's pretty… error-laden, so that's… that's part of my, uh, my reasons for… for wanting to do this.
Um, any other questions or comments before we get to see this even get more mind-blowing?
I don't think I'm gonna pause this one, I don't recall if… I might pause it once, but we might let it go the whole… two and a half minutes. This is part two of the cursor list intro tutorial series. Today, we're going to focus on some code. When writing code, we tend to think in terms of statements, functions, etc. So, let's start out by cloning a statement.
Clone states it. Okay, I am going to pause a lot, it turns out.
Um, okay, so clone means he's gonna copy something. And state means a statement, and SID is the letter I.
That's the worst choice for the letter I I can think of.
Like, um, there's… That… that's the standard one that it comes with out of the box.
Um, the one they recommend to replace it with, if you don't like that, is ink.
Which I find, if you're going to have short little one-syllable ones, that's a pretty good one for the letter I.
Um, so ink is over the… eye is over the if there, so he's gonna… clone, whatever clone means, this… this statement.
Um… so I believe the statement includes the return in Python? I'm not… clear on that, but we'll see.
Drops. Okay, yeah, so we… basically, the entire statement that started… or that that enclosed the if.
Like, he could have picked any… Word on that line, on those two lines, well, not the second line, because that's a… Uh, it's own statement within this statement.
So he could have picked any of these. Um, the I, the R, I don't know how to say the equal sign and the colon, or the K.
He could use any of those letters. And done clone, state, and whatever that letter is.
Statement is just one of many cursorless scope types. To see a full list, cursor List Cheat Sheet.
Droughts. You can use the cheat sheet, like always. You can see on the right here, there's a bunch of scopes.
Cursalis tries its best to keep your commands short. That's part of what makes it so efficient. So, in the following command.
Notice I only say the word string once, but it infers that both targets are strings.
Swapstring air with whale. All right. Luckily, we've got Luckily, we've got, uh, the YouTube is showing us the… what he's saying before he says it, and he might… he practically probably did that on purpose.
And somehow he's actually highlighting in purple Um, the words he's talking about here. So… swap string, okay, swap is the command we're doing, string.
So string means, apparently, what's between… Double quotes, and then air selects the A… And then, with whale… Um, oh, so the whale is W. So, he's gonna swap the black With the white here.
Let's learn a new action. The poor action inserts a new line below any line on your screen.
Or urge. Drows. Okay, so he added a line after U.
Which is the return right there. So, and you'll also notice, well, there's one of the reasons why you can't just say return.
Because there's a lot of returns on the screen, right? So, that's one of the main reasons that he's… he's using the, uh… the letter names, the short… instead of the full words.
Any questions yet? Oh, Stan.
What's putting the dots over the letters? Is that the particular editor he's using, or what?
And it is the extension that he has added to, um, co… to VS Code. So… Um, I have to turn it off because it's annoying if I'm not using it.
Okay.
Um, but, um, actually, it worked even in the markdown here.
Take Indigo. I'm not on… I'm not running.
So, I've got the cursorless. Uh, things there. By the way, um.
I've mapped, shift, shift. To give me the, um… the command palette, so… A lot of programs now are getting command pallets, so you can do I can do Command Palette and then cursor, I can just… Um, like, it autocompletes, and I can, like, oh, I want to add a cursor above.
So, I kind of can do commands Um, in my… in my editor now, which is really nice.
And it also remembers the most recently used one, so I can just… undo that real easy.
All right. The opposite of that is drink.
So now, let's apply an action to the current cursor. If you say this, that refers to your current cursor.
To dent this. As a programmer, you probably do a lot of code reuse.
The curseless bring command makes this easy. Bring state or…? Okay, bring state, so it's a statement.
The return with the U highlighted, so it's return black, it's the statement, and it's gonna… Bring means he's gonna put it down here, be dented.
Drows. Now, in addition to bringing to your current cursor position, you can also use bring in a cursorless fashion by supplying a destination.
Bring Bluecap to value red. Drows. One of the neat things about cursor lists is that it tries to leverage its knowledge of the syntax tree and your programming languages to leave you with valid code whenever it can.
So, notice when we delete this argument, it cleans up the comma.
Chuck Arg, BlueVest. Chuck, alright. Okay, so Chuck means it's gonna delete something.
So, it's the argument with the blue V, highlighted, uh, right there, okay, the invert.
So that's Blue Vest. And he's gonna… it's an argument, so he's gonna check the entire argument here.
So this should be print color color without the invert anymore.
Grouse. We injured… Just a lot of scopes and actions today, so if you're anything like me, you've probably forgotten them all already. So, that's what the cheat sheet is for. So you can just say, cursorless Cheat Sheet to see what exists, to refresh your memory.
In addition, we are creating interactive versions of the tutorials, which run within VS Code and guide you through step-by-step while you run the actions.
Hopefully that'll help to cement these things. That's not available as of the date of this video release, but I'll update the description when that's out.
And so check back to see if that's available. The best way to learn is by doing, so I've also put a link to this file, uh, within the description.
You might want to copy and paste it into your editor to play around with, and of course, when we have the interactive tutorial, then you can do whatever you want with the file. Thanks so much for watching, and happy coding!
All right, any questions? Besides, what the fuck?
All right. Um… Sure.
I have… I have a question. Um… Since this is all voice and everything.
Uh… does whatever you're using, you're… app you're using to convert your text-to-voice, I mean, your voice-to-text, or whatever.
Does it matter? Does it have to learn your voice, or can it recognize any voice?
Oh. Now, that's what I was saying, it's any voice. Like, all the modern ones use any voice.
Um, so talent is definitely any voice that… I was saying earlier that Um, I would like to train it with my boys to be more accurate, but I haven't found a way to do that yet.
I suspect there is. I might have to change which voice engine is using, or voice… Um, engine or model or whatever.
Um, to… to have a customized recognizer, but uh… These currently don't… don't need it, and it works pretty well without it.
And what about dialects? You know, like, someone with a southern drawl. I mean, is it gonna understand that the same as it would
Yeah. I… I… I don't know how well, but I know that these… I mean, a lot of big companies are involved in this. Whisper was written by OpenAI, Um, and it's one of the models, um, that's being used.
Uh, that's pretty good. They've got so much data that it most likely works fine with the southern drawl.
Now, if you're from… You know, a foreign country, and you have a really thick accent, that's probably a different story.
Mm-hmm. Okay.
All right, so next I'm going to go through Um, some experience just trying different voice control, voice dictation with various apps, and with AI.
Um, so… My… I'm realizing that my typing skills are pretty marginal at this point.
Um, and I'd like to supplement them with voice. Um, to… to have better typing skills.
I want to have a conversation with the AI. Um, I do a lot of pair programming.
And, um… My general rule for parapro programming is that the junior one should be doing the typing so that they are Um, getting more ingrained in there.
Um, and their ways of thinking. Um, which is probably why my typing skills have actually gotten worse Um, so when I'm pair programming, I basically see the code on the screen.
And I talk about what kind of changes we should make as a pair.
I want to do that with my AI. So that's… that's where I'm trying to get.
And I want to not have to think about the input. I just want to think about the code and what I want to say to my pair.
Stan. Uh, pair programming is when you've got two people.
What… what is pair programming? I have no idea.
Um, in the same editor, at the same time. Um, and you're talking about… so, if I was in here, we'd be like.
Um, okay… We need… so we've got that add function, we need a… we need a, uh, we need a subtract function, too, so… let's… let's add a subtract function.
So, um… So, hopefully my pair is the one doing this.
And then I can, you know, do the subtraction here. So, it's… it's two people talking about the changes to the code they want to make, and why, and what the trade-offs are, and… Um, it sounds like it'll take twice as long, right?
Um, the numbers say it takes about 17… 11 or 17% more.
Um, but it ends up with much better code, and it's less fewer bugs, so in the long run, it actually pays off. It's basically collaboration winning.
Um, so… My main problem with… speech input is, I have to think about it, because… I can't just say a whole sentence and have it understand it, because it's going to make a mistake. So right now, I'm pretty much in the…
Um. I probably was in words, and now I'm in phrases, so I can speak a phrase.
And it gets that phrase, I speak the next phrase, it gets that.
Um, I talked last week about latency. So, one of the problems is if I do a phrase that's too long.
It's… takes too long to, like, come up with what it was, and show me, and by the time it shows me, I've kind of forgotten what my next phrase was.
Um, on the other hand, if I do too short a phrase, I've definitely forgotten what the rest of the sentence was.
And it actually has an easier time with a medium-sized phrase.
Because it has context to understand what the… what the… the phrase or the sentence was.
I'm sorry, I was… forgot to mute.
Danny, you have another question, or are you… Okay. Um, okay, so… Um, been hanging out on… it's… the weather's been nice here in St. Louis.
Um, so I've been hanging out a lot outside. It's been kind of windy, though.
Um, so… the wind noise is… is… impacted the recognition fairly significantly, not awful.
Um, if I speak up, it's pretty good most of the time.
Um, but occasionally it'll pick up, like, a… a command, like a little word.
And I think I said something when I didn't. Um, and that's how I'm kind of ended up with, um… with some extraneous stuff in my files.
And as I said, I want to solve that by basically holding a key, or actually, when I get back to my standing desk, I've got some foot pedals.
Um, I want to use foot pedals to When I'm pressing the foot pedal, it should… translate, and when I let go, it should stop, so… One-foot pedal for command mode, one for dictation mode.
Um, so right now, it's taken a lot of cognitive effort, like.
Having a conversation here with you. Easy! Entering text.
Like, I can't just have that conversation and expect it to enter the text. And part of it is just me not realizing I can have a conversation with the computer.
But part of it is also that I have to babysit the recognition engine, because it's gonna miss things.
Or it's gonna get things wrong. Um, and here's what I… I want to get to complete sentences.
Um, I've gotten to short phrases, I'm starting to lengthen the phrases.
Um, but, you know, I kind of started out with just kind of words, like.
Uh, this is… a slow… way to do this.
Like, now I can say, this is a slow. Way to do this. And ideally, I'd like to get to… this is a slow way to do this.
But maybe it's okay. And a lot of that, I think, is just my own thinking of, I can't just talk to a computer.
Um… Alright, I said that.
Um, so even in quiet environments, I'm getting some… Yeah.
Hey, Craig? You got, uh, Suehurst has a hand up
No, I don't. That's Stan. That's Dan.
Stan. Stand.
No, that's… no, that's… that's me, that's Stan. And, uh, yeah, um… I don't look as good as Sue, that's all a problem.
Nonsense, Dan. You look better.
Uh. Oh, thank you. Um… Okay, can you go back a slide?
Uh, maybe that'll help me remember what I was gonna ask you.
Uh, see?
You're talking about words versus sentences versus phrases. Could you build some kind of buffer to do that for you?
I don't know. Um… I expect that it does.
But… I've also been doing, like, typing and swiping on my phone, and mixing that, and… The problem is, by the time… I'm 3 sentences past, and it's fucked up the first sentence, I don't know what the fuck I was saying.
Like, it's… it's hard enough when you're not trying to get the computer to type the right thing in.
And when it gets the right, wrong thing, like, four sentences ago, or missed the complete thing, like, you… I don't… it just doesn't work.
It just doesn't work, right? So, it's not so much buffering.
As… I can't think… in small pieces like that
Can you, um… can you create an outline first with your voice?
Commands?
That's… yeah, that's what I'm trying to do, so… And I do kind of think… I think in bullet points a lot.
Um, and outline. So That's… that's where I'm headed.
Um, I'm gonna try to do an outline. And then have the AI basically take that and turn it into maybe a blog.
Article, I tried that, it wasn't great Um, I think I need to guide it more.
Um… I think… even doing… even when I was… When I was making these slides, I basically just rambled on and just had some thoughts. I was basically having some severe ADHD, and… And thinking of, like.
Two or three different things at once. I was trying to do the slides for this and also add to my list of things I want to do in Talon.
My configuration. So… Until I made it clear that I was working on those two things at the same time, it wasn't great, and the slides weren't really great.
So, I probably just need to enter my bullet points as phrases and work from there.
And sort of, um, in collaboration, and then collaborate with the AI.
On turning it into something else. Anyone else?
All right, um, so even quiet environments, like. Oh, that's funny. Um… These ended up being the same thing, but one actually has space between in complete sentences versus incomplete sentences.
And it kept hearing, Claude is clad, but I put it in the vocabulary, and that mostly went away.
I talked about that one. And he was seeing that it keeps hearing talent is Talon.
Or talent, or something else. And so, um, I can show you my config file.
Where, um… I think I called it.
Nope, nope, wrong.
Um, so here's how I dealt with that. I say talent, or talent, or talent, or tail end.
And so I let myself… you know, have various options, and also let the recognizer you know, recognize various options.
Um, so Telen, lots of configuration. The subtitles are great feedback for me.
Um, I don't… know that I would be… well, maybe I should turn them off and see how that works for me.
And just watch the text input box, now that I think about it.
Um, but that's when I'm doing dictation. When I'm not doing dictation.
I probably do want the subtitles to tell me, you know, what did it hear.
So, I know what it was actually going to do with that.
Um, but maybe it's a… it's a crutch I should get rid of.
Um, right now, I'm doing some dictation. And editing. So when I get it wrong, I can just say the replacement. So… Let me demo that, actually.
This is some long code, a long sentence, it's probably going to get seen… tell and dictate.
This is a long sentence, I'm probably gonna ramble on.
Maybe I should see how long I can talk, and see how long it will keep typing for me.
Apparently, it's just me, not the recognizer that has a problem with long sentences.
Tell and sleep. So, okay, so what I would do, and I wouldn't… I wouldn't sleep, I'd just leave it running.
Um, and there is a bug where it's adding spaces before what I say when I'm in dictation mode.
Um, it's not when I'm, like, in a sub-dictation mode. Um, and I can… hopefully I'll show that in a minute.
So… Okay, so I don't want to say gonna, I want to say going to.
So, what I would do is, I would say this sentence.
And actually, I would probably do the paragraphs. I'm getting better at not having to get the sentences, as long as I can trust.
It's about building trust in And that the… Recognizer will type the right thing, and I won't get, like, a paragraph later and not know what it was saying. So I'm trying to get to a whole paragraph here, actually.
Before I start editing. So, what I'm gonna do here is I'll turn it back on, and I'll do my editing.
Talon dictate. Going to.
Keep speaking for a while. Tell and sleep. So that's where I'm headed, where I'm… I'm augmenting, I can select what I want to work with.
With the keyboard, um, but I can… can change the dictation, I can correct the dictation that way.
That's been working really well for me. Um, I talked about, sort of, um, so there's dictation mode.
Um, but then there's also… Um, if I'm in command mode.
Um, I can just have it do, like, a word or a sentence.
So let's… let's try that. Talon Command.
Word, hello. So, it should be out of… dictation mode now.
Um, so it's back in commandos. So, since I've said word, it only listened to one word, and in dictation mode. So that's not putting the space, is what I was saying.
That's only when I'm in full dictation. All right, um… So, I don't remember to use it as much. Like, I'm not used to talking on the computer, so I don't use it all the time.
It's… I find it telling better than voice control, especially when I'm using it this way.
Um…
All right. Going to… okay.
Where was that? Okay, slides. And… okay, I'm gonna go… put… this playground down here.
So, I'm gonna… okay.
Tell and dictate. There's a lot of stuff there. They said they're going to get two more, too.
Tell and sleep.
Talon Command.
Phones that.
Choose two.
Phones that.
Choose one. Go to sleep.
The cat hears me talking. So… Phones that is, if I'm on a word that has homophones, it shows me the homophones I can choose from, and I can tell it which one to choose from Um, so that's been working pretty well, too.
You know, it can't always get the right word, because it's homophones are a thing, right?
Um, unfortunately, for my demo, it was putting the screen on the little pop-up showing my selections on the other screen, so I had to drag it.
Um, and it was also trying to… the text editor was also trying to, uh.
Auto-select for me here. Um, so I had… I had it escaped for… for that to stop. Um… It's next.
Um, Claude. So, Claude is the AI of choice I'm using instead of chat GPT right now.
Um, seems to be significantly better. Um, there's voice on the iPad version and the iPhone version, but not on the Mac version.
But I can basically go do something on my iPhone or iPad.
And it'll show up pretty quickly when I'm back on the Mac.
So, when I'm on the Mac, I'm just using Talon with it. It seems to be pretty good.
Um, so I tried… I tried the other day, and working on these slides to just talked randomly, and trying to get to convert that to coherent text.
Um, it didn't work too well. But I'm gonna try it with pros and try with outlines, and see if that works.
Um… So, when I do speak to Claude.
What it seems to hear and respond to seems completely different than what is shown on the screen that it heard, so… I'm not really happy with that part, so… That's probably why I'm sticking with, uh, the Mac and Talon for Claude, for the most part.
Um, iPhone has limited choices. Because it's a Mac, you can kind of… get into the, um… uh, system level, so… you know, Talon can get in the system level and provide You know, input into the input system, whereas on the iPhone and the iPad.
It's a closed environment, you don't really have the opportunity, only Apple has the opportunity to to get into the keyboard, um… input, although they do let you do custom keyboards. The problem is that they don't let you use the microphone in the custom keyboards.
Unless you're using a custom app. So, um… I might use some… per app voice input, but I haven't found a dictation app that really works for me, so… I'm probably just going to use voice input that's built in, and some keyboard editing.
Which is starting to work out okay for me. Um, the iPad still has limited choices, but they're a little bit better. I can also use the external keyboard.
Um, so that's kind of where I am with that, and it's… It's usually more the… basically the one-handed, the thumb keyboard I'm using.
And I might try voice control… I had been doing okay with it, but I'd want to tune it to be more like Talon.
And have similar commands. Um, so that might help. Um, but I… I might just give up and try to be… do an input on the back more.
Um, so my conclusions… Oh, look at the time. Um, anyone have any questions before I get to that?
I have a question. On… you've built those paragraphs and stuff like that.
But command line, you… That goes to a file. If you found anything like, uh, AUCK or FMT, at command, it would help.
Modify that stuff, or do you even want to bother with that?
To help with… with what? With… with misrecognized, or…
Uh… was… the extra lines, the spacing, the blank lines, was that a problem when you were building it?
Excellent. Um, yeah, I said, um… the playground. Um… Yeah, when I… when I spoke, it was basically putting extra spaces.
Yeah.
Um, it's… I don't know how to hook into that, to throw it through AWC.
But, I mean, it's probably easier to just fix the bug, first of all.
And second of all, in the meantime, I just, you know, deleting those spaces, or, um…
Hmm, actually… I think I've been good enough.
It cannot do reformatting?
Sure, man.
Yeah, no, that didn't work. What'd you say, Phil?
I was just more or less reiterating, could you be able to make it do… reformatting.
Yeah, if it's… if it's code, yes. Um, I'm a little surprised that it doesn't have formatting for markdown paragraphs.
Um, but, uh, maybe I'll add that later. Um, to… that would be a VS Code thing.
In fact, there's probably a plugin I just need to find.
There's tons of plugins in the, uh… Uh, VS Code World.
All right, so my conclusions, um, this technology is far from perfect.
It takes a lot of practice, it takes a lot of time.
Is it worth the effort? For most people, probably not, but, you know, it's likely to get better.
Um, so… maybe take a wait and see, or if you'd like to be on the cutting edge, then, uh… Uh, maybe worth your effort now. I am… I'm gonna try to stick with it. I'm gonna try to stick with Talon.
There's a lot of customization. I like to tinker with things.
Unfortunately, it takes a lot of time, but uh… like I said, I kind of need to… to… to make up for the fact that my typing is slowing down.
Um, very fiddly, uh, config files. It's programmable! But it's broken half the time, right?
And a lot of setup. Um, so… talent is a lot like Vim, that it's got two different modes, and they're called Command Mode.
And dictation mode, which is basically input mode. I have trouble with VIM for the same reasons.
That I'm not very good at thinking in modes like that.
Um, because I just get confused, and it's cognitive overload. Um, I did find some help. As of yesterday, there is… Um, a… Uh, I forget what it's called. I talked about it when I talked about what I changed.
There's a mode indicator. Which puts a little dot on my, um, my screen. I've moved it up to… like, the… my toolbar, so basically, like, right up here next to help.
Um, and if I'm in command mode, it's green. If I'm in record… dictation mode, it's red, like recording.
Um, and if it's off, it's black. So, that's been helpful, but it didn't work today because I was looking at this screen And it's showing up on that screen.
Um, so… a bug or something I need to fix, or… see if someone can fix it and put it on all the screens would be very nice.
Um… yeah, the visual mode indicator helps. Um, and a lot of times I want to dictate and edit at the same time, so… I… that might be, uh, me having to learn to say, you know.
Um, I can… I can basically say, um, I… I've got end words, like, he's got drows, um, I've got the word over.
So… Or I can add commands to my dictation mode as well, so, um, that remains to be seen, is how I'm going to set up my rules.
Customize my rules. So, voice is a tool, it's another input method.
Um, it's augmenting us. Um, got a lot of rough edges.
Um, effort, practice, and time. But I think it's here to stay.
Um, so I talked about multimodal. Um, and… and I asked… I asked Claude about that, and it talked about multimodal interaction.
Which is sort of a large… so… I talked about multimodal output.
Um, the AAA is generating. This is multimodal input.
Um, which is sort of a sub-part of multimodal interactions. So MMI, is a part of human-computer interaction.
So, we've got, you know, what do we got? We've got, we've got the keyboard, we've got the mouse, we've got the trackpad.
We've got… we've got voice. What else do we have? Um… I mean, some people have little twiddlers.
Um, some people, uh, Talon also supports eye tracking, so you can You can, like, just move your head or your eyes.
And… and click a button, or… or… Something to press the button?
Um, so there's… there's a lot of different ways to interact with our computers.
And the fact that, you know, we've got the iPhones now, but… Um, OpenAI is talking something within the next year.
Of having… what do they say, 100… They want to be the fastest to have 100 million devices on… on… in people's hands than any other company has ever done before.
And it's not gonna have a screen. It's just gonna be voice interaction.
So, um, this is probably somewhat of the future? Um, so… we'll wait and see.
I think that's my last slide. It is. All right, thanks folks. Hey, my timing was pretty good.
Any questions? That's a lot, I know that was a lot.
That's kind of how I do presentations, though, right? I get… I get thorough. Stan.
Uh, say I want to dictate my, uh, uh… version of War and Peace. What would be a better choice?
You think?
I… I don't know, like, 10 years ago, or maybe even… 5 years ago, Dragon Dictate was good.
Um, but it's kind of been… And I don't think there was ever a… Linux version, and they discontinued the, um… Mac version, and the Windows version even seems to be going away, so… They got bought out by… some other company.
Nuanced, I believe, yeah. So, Anna's pretty expensive. Like, it used to be…
Okay, I guess they're still going. Um… And they've got specialized ones for, like, medical.
Dictation and legal dictation. Are, um… specialized, so they've got specialized vocabularies, so… Better? Um… Honestly, I'd probably still recommend this. I don't… I don't know. I haven't really looked into it.
Um, and maybe there's nuance to have some other things. I don't know. I would… I would probably do some… some more research.
But that's my inclination. There's… there's… there's a lot out there, though. There are a lot of dictation apps on the… on the iPad and the iPhone.
Um, on the Mac… There's two that seem… I talked about last week.
Um, Super Whisper. And, um, better dictate that look like they're not gonna piss me off too bad.
So, I'm gonna try those some more, they might be better.
Answers for the dictation side.
Well, thank you all for coming. Um, the slides are… available, and I will also upload the PDF version, or get that to Stan and Gary, uh… Tonight or tomorrow?
Thank you, Craig. It's good to hear your voice again, and… See you again!
Please just send it.
Good to see you all the other day. I wish I could talk more, but uh… Did COVID change the world?
Oh, yes.
Yeah. Yes.
And now AI is changing it, and uh… A lot of… it's a very, um, tumultuous time. Every… everything's changing a lot more in… In various ways. Politics.
Geopolitics. Uh… economy, the economy.
Mm-hmm.
Jobs, there's… there's a lot going on.
Mm-hmm. That's an understatement.
Yeah. Just don't say that this year can't be as bad as last year.
Please stop saying that, everyone.
All right, um… I will, uh, talk to y'all sometime in the future.
I'm gonna…
Okay, thank you so much.
Thank you very, very, very much, Greg. It's really, uh, really good to hear from you, uh, so… And Craig and I did laugh that, you know, here he is, he's traveled all the way back to St. Louis, and of course.
We could have these great, uh, uh, uh, talks from them all the time via Zoom. He doesn't have to come to St. Louis to do a Zoom broadcast for us. It's technology that'll reach all the way to the West Coast.
I think when I told you I was… going to commit to the talk, or talks on voice.
I think I was thinking of doing it from there, and then I'm like, hey, I'm coming to town, and then it didn't occur to me that you really having in-person meetings yet.
But I have started to go to in-person meetings in LA now.
Ooh!
Um, we're starting to have a Ruby group, and then there's a Code and Coffee Um, that's, uh, very close to where I was living in, uh, Long Beach.
Well, he had to be here for the pizza last week, though.
We have seen…
Yes, a Nick and Elena. Yes.
We have seen that the attempts at hybrid meetings with people face-to-face and video, uh, remote video, just don't seem to work with a lot of people.
Yeah, and… and honestly, I don't find remote meetings all that great either, so…
At least the sound is usually better than… then what gets recorded
Yeah, yeah. Um… I mean, I guess I have to be in a certain mindset, um… But it's… I miss the… the… physical interaction, the… yeah. I miss people.
Camaraderie?
The way I've been saying it, you know, I miss people. For 5 years.
Well, not quite 5 years, but… For a few years, we didn't see people. That's why I moved, because we weren't seeing people.
I realized I could be anywhere. I wanted to.
Um, but, you know, I've been a remote worker for most of the past 12 years, and I miss people. I miss having an office.
Um, when I get a job, I'm gonna get, like, rent a, like, a WeWork space or something with an office.
Um, with a door. Um, so that I can speak to my computer or my pair programming partner?
Um, and… and it's… been, like, working from home.
And my wife is, you know, in a room nearby. Voice is not a great option.
The irony dozens escape me. You know, we have an ultimate computer geek here who says, but, but I miss working with people.
I mean, what are we… what are we building the software for?
Oh, my…
People, you know? I mean, a lot of us, I think, got into computers because we didn't have to deal with people, but uh… In the end, that's what we're really doing.
Yeah, it's… Okay, I promise at the end of, uh… Craig's, uh, part, if we're done with questions with respect to Craig's topic and talk tonight, uh… Anybody have any just general questions, uh… what's the winning lottery ticket number?
I… I had noticed that, uh, the week of The last week of July, we don't have a sponsored meeting going on.
That might be an opportunity to… Uh… burning a candle at both ends and have yet another meeting of some kind. Any suggestions on what we might do?
From the peanut Gallery?
Okay.
Anybody feel those anchovies calling their name?
Be another opportunity for an in-person meeting somewhere, beer, pizza. Bring your hardware?
Crickets, crickets!
I suggest, uh, shut off the recording, do a bookend. Not in that order. Bill Ganuk shut off recording.
Alrighty.
Okay, this is, uh… Uh, Thursday, the 22nd of May, 2025. Hey, I got the date right this time. Our speaker tonight was Craig Buchek. Uh, he was talking about, uh, programming and AI for voice.
And