back to indexThe Eyes Are The (Context) Window to The Soul: How Windsurf Gets to Know You — Sam Fertig, Windsurf

00:00:00.000 |
Hello everybody. First things first, I actually have to apologize. I was coming into the fair 00:00:22.200 |
today. I was coming up the escalator to registration because this is my first day at the fair. I came 00:00:26.400 |
for my talk and I saw for the first time this big banner that said AI World's Fair. It's 00:00:31.440 |
like a place for builders, not yappers. And I was a builder once, but I'm definitely a 00:00:36.160 |
yapper now. So bear with me, but I think we'll have fun. On that note, I don't love yappin' 00:00:42.060 |
by myself. I love yappin' with others. And it is the last afternoon and the last day, 00:00:47.220 |
but there is an interactive component to this presentation. So at times, I will present slides 00:00:54.180 |
that look like this. You don't have to clap, but you do have to say the words with me as 00:00:59.520 |
they appear. So in this case, what we would say is, 00:01:02.940 |
X, Y, Z. Excellent. Thank you. I knew you could do it. One more practice one. 00:01:09.780 |
Start the talk. Okay, great. Excellent. I hear you. So my name is Sam. I am a principal forward deployer, 00:01:18.840 |
or deployed engineer at Windsurf. And in the spirit of this talk, getting to know Windsurf, 00:01:24.600 |
and Windsurf getting to know you, you should get to know me. So here are some facts about 00:01:29.600 |
me and my life. I work at Windsurf. I love slack emojis, if you couldn't tell by the first slide. 00:01:36.360 |
I sometimes wear turtlenecks, as evidenced in this photo. I have been known to exaggerate my title. 00:01:41.700 |
I'm not actually a principal deployed engineer, just deployed engineer for now. And I am speaking at 00:01:47.040 |
the AI World's Fair. It's a little lackluster, right? Hence the neutral emoji. Do you feel like you really got to 00:01:55.800 |
know me based on these simple facts? No, I don't think so either. I wouldn't expect you to. Let's do this. 00:02:02.040 |
Let's see what we can infer from these otherwise superficial observations to see if we can get to know me a little better, right? 00:02:10.500 |
And for fun, let's put a little framing on it. Let's change this fun neutral face to a little purple devil emoji, right? 00:02:17.800 |
And see what these facts say about me. Maybe I am the kind of person who brags about, you know, working in the valley, right? 00:02:25.880 |
Maybe I prioritize slack over real work, and that's why I love slack emojis. Maybe I wear turtlenecks because I think 00:02:31.880 |
I have a superior fashion sense, right? Maybe I exaggerate my title because I'm power hungry. Maybe I'm speaking here 00:02:37.780 |
because I enjoy the sound of my own voice, right? And we can do the inverse too, right? Let's turn this little devil 00:02:42.680 |
into an angel, right? Maybe I work hard, and that's why I work at Windsurf. Maybe I like slack because I value team building. 00:02:49.120 |
Still the superior fashion sense. I think that one's fair. Maybe I'm indifferent towards titles, right? And maybe I'm speaking here 00:02:55.840 |
because I like sharing things with friends. Sharing things with friends, I should say. Either way, we took some otherwise 00:03:01.720 |
superficial conspicuous observations, and we turned them with some framing into something that actually says something about me 00:03:09.620 |
and says something about my behavior, right? What we really need now would be some hard evidence, right? 00:03:15.560 |
So I see two of my colleagues over here. If they came up and, you know, as trusted sources, told you guys that I spend all day on slack, 00:03:22.620 |
then maybe that evidence combined with the visible evidence here would lead you to believe that I spend most of my day on slack, which I won't confirm nor deny at the end. 00:03:31.620 |
at this point, right? We'll come back to this. I can imagine what you're thinking. Here's one of those slides. 00:03:39.520 |
Okay, great. So in the spirit of getting to know you, let's talk about Windsurf a little bit. Raise your hand if you've heard of Windsurf. 00:03:52.520 |
Okay, great. Raise your hand or keep your hand raised if you've used Windsurf. Awesome. So for those who are not familiar or as a refresher to all of you, 00:04:00.420 |
we are, we offer an AI coding toolkit, right? And we package it in a couple different ways. One is through the Windsurf editor, right? 00:04:08.320 |
Which looks similar to what Augment just showed. And also a Windsurf plugin that you can use in a variety of IDEs, right? 00:04:16.320 |
The core value prop of Windsurf is this. Anything you do in an editor, you can do faster and you can do better. 00:04:26.220 |
Now, I could stand here and give you the whole typical sales pitch, right? And I could give you the Windsurf overview. 00:04:36.120 |
And I could give you Windsurf's differentiators. And I could give you Windsurf's pace of innovation. And I could give you, I don't even know who put this one in there, 00:04:42.120 |
the Windsurf AI stack, right? Until you turn around and you might even say something like... 00:04:53.020 |
This talk was about Windsurf. This talk was about context, right? I know what you guys want. So I'm bringing it back. Just bear with me. 00:05:01.020 |
What we've established so far, even in these funny introductions, are a couple things. One, it's hard to know someone based on surface level observations. 00:05:10.020 |
Two, you can make educated guesses, though, through a variety of heuristics. 00:05:16.920 |
Three, you can also make educated guesses via hard evidence. And you can combine those two things. 00:05:22.920 |
And four, Windsurf helps you code. You'll have to take my word for it. We have some free promo codes at the booth afterwards, right? 00:05:30.920 |
So that brings me to what I think is the principal problem of the coding AI space right now, which is this. 00:05:38.920 |
It is not hard to generate code. And it hasn't been for a while. 00:05:45.820 |
Anybody in this room in a couple hours or even less because of tools like Windsurf and Augment, right? 00:05:52.820 |
It can help you spin up a simple UI, wrap around some premier model, take some user prompt and spit back an answer. 00:06:07.620 |
However, it is hard to generate code for you. 00:06:08.620 |
Not because any of you are particular, you know, troublemakers. 00:06:13.620 |
But it is hard to generate code that fits into an existing, large code base. 00:06:20.520 |
Adheres to organizational policies or standards. 00:06:26.520 |
Everybody has their own way they like to code. 00:06:30.520 |
I'm not sure what I meant when I wrote this one on the slide 30 minutes ago. 00:06:38.420 |
In short, right, what makes it feel so magical when you're using Windsurf and you accept a suggestion that feels like we're inside your head? 00:06:49.420 |
Or when our agent Cascade recommends you do something in a certain way? 00:06:52.420 |
And you say, that's exactly what I was thinking. 00:07:01.320 |
And there are two major pillars underpinning our context philosophy at Windsurf. 00:07:13.620 |
And I'm going to break both of these down for you. 00:07:18.220 |
When we talk about context, what context are we talking about? 00:07:21.120 |
Well, I like to think of it in two big buckets, right? 00:07:28.720 |
And the second bucket is hard evidence, like we spoke about in my intro. 00:07:34.920 |
The first bucket is your behavior and what you do and what you are trying to do. 00:07:39.820 |
The second bucket is your environment and the world around you. 00:07:44.720 |
So things in the first bucket look like code above and below your cursor, open files. 00:08:04.520 |
And the second bucket, the hard evidence, is stuff like code. 00:08:10.120 |
Memories that the agent generates about you, right? 00:08:12.320 |
More code, lots and lots of code and whatever else is in your repo, right? 00:08:18.220 |
It's user state and its state of your code base. 00:08:24.720 |
And that ultimately brings us to sort of the magic formula, right? 00:08:28.820 |
What is relevant output when it comes to coding agents? 00:08:32.320 |
It's your prompt, plus the state of your code base, plus the user state. 00:08:44.320 |
But this is part of the reason that it feels so cool when Winserv generates something for you. 00:08:54.820 |
Now, for a while, a lot of people were focused on making context windows bigger and bigger. 00:09:00.220 |
Let's just shove more context into this LLM call and it'll get better. 00:09:08.920 |
But since day one, we have found much better results by optimizing for what context gets put into that window instead of just trying to make it bigger. 00:09:18.220 |
And that also helps solve the issue of latency, which is not just a preference thing, but a core feature of good AI coding agents, right? 00:09:29.320 |
So that brings us to the problem of finding relevant context. 00:09:42.420 |
But as your code base grows, it remains hard because it's hard to find relevant context quickly. 00:09:51.520 |
And that is something that we at Winserv excel at because of our background in GPU optimization. 00:09:57.520 |
We actually started as a company called Exifunction. 00:10:00.520 |
So you can go look at this little history lesson on your own, right? 00:10:08.620 |
And not only do we have stuff going on behind the scenes, but we build connectors for you to be able to do this at your level, at the user level, right? 00:10:17.620 |
We have embedding search, memories, rules, custom workspaces, at mentions, plain text search, knowledge base, multimodal input, riptide, MCP, remote indexing, re-ranking, AST parsing. 00:10:27.620 |
Some of these are more relevant than others, some of these make sense, some don't. 00:10:44.720 |
So, ultimately, you know, this should give you a better picture of how we think about context at Winserv. 00:10:52.720 |
You think about it in two ways, what context and how much, and the problem is not necessarily giving LLMs more and more context, but giving it more relevant context as it relates to your user state and as it relates to the state of your code base, right? 00:11:10.820 |
And this is why when you use Winserv, you begin to ask yourself questions like, "Oh my God, does Winserv really know me? 00:11:19.120 |
You might even say stuff like, "I am all of Winserv." 00:11:25.920 |
Hopefully, somebody got that as a sound bite and we can reuse it internally. 00:11:38.920 |
Also, while Winserv does get to know you, you don't necessarily get to know Winserv back because it is a computer program. 00:11:46.020 |
Maybe some of you have opinions on relationships with machines, but in general, I don't know if you can know them back. 00:11:51.820 |
However, you are very much able to get to know some members of the Winserv team, such as the ones here today. 00:11:59.620 |
So, I know we're wrapping up, but if you want to come by the booth, I will be there. 00:12:07.420 |
If you are a developer looking for clarity on some of the items, come by. 00:12:11.420 |
If you work at a company and you want to get Winserv into your enterprise, come by. 00:12:20.220 |
But other than that, I will wrap up with questions, unless somebody has a better idea of something to do. 00:12:43.020 |
So, I imagine when you are asking about privacy, you mean the storage and training of those things? 00:12:57.820 |
So, to be clear, we are only processing information about you in your editor, right? 00:13:02.820 |
It's not like we have access to your operating machine, obviously, right? 00:13:06.820 |
And, much like every other LLM-based tool that you interact with, that information does leave and go to our servers. 00:13:22.620 |
So, if you are interested in more of the security and legal guarantees, definitely, you know, come by or look on our website.