In this episode I speak with Quinn Slack of Sourcegraph about the universal code search tool. Also features news on AmigaOS, awesome repos for developers, the truths of lockdown, meetup spins out of WeWork, and early internet streamers.
Chris Ward: [00:00:00] welcome to the weekend. Squeak your weekly geeky squeak with me, Chris Chinchilla. I hope you are all doing well out there. You’re healthy and about the sane and, um, as, yeah, I think as sane as you can be right now, uh, I hope you enjoy it. The last episode that I am put out with an interview with critical start about a cybersecurity in the time of it. [00:00:28] Crisis actually ended up being quite current and has been a lot more in the news recently, so that podcast came out at just the right time. I’m continuing to produce quite a lot of things here. I will tell you some more of those a little bit after the interview in the show. Which, uh, the interview this week is with Quinn Slack. [00:00:45] Awesome name of sauce graphs where we talk about source graphs. Quite amazing. A code search tool. Um, there’s an interesting interview actually, because the product itself is very comprehensive, but very simple to use. So I think we both repeated ourselves quite a lot in trying to explain what they did. [00:01:06] Anyway, hope you enjoyed that interview. And in the meantime, let’s get down to my links for the week first. Great little a Roundup post from Simon. Hold off on the better programming medium blog called 10 extraordinary get hub repos for all developers. So the it hub repos, um, let’s just, if you’re not sure what that means, let’s call this, uh, sources of information, places to find things for developers. [00:01:34] I mean, if you’re a developer, you probably know know, but just to explain that a bit, that there’s some quite interesting things here. Some of my favorites are. Uh, a lot of tutorials on building your own X and X being a multitude of different things. Free programming books. Um, quite interesting. This is obviously a very good time to be learning things. [00:01:56] In fact, I have dozens of online courses and books that I really want to get round to learning, but I have, well, I’m very lucky that I’ve been busy working. Um, she’s good. Can’t complain. But, uh, yeah, there’s a lot of time for some people to learn some new skills when hopefully we kind of coming up the side. [00:02:15] So some good resources there. And also some of the more practical ones for developers, templates or get ignore files and system design primers, some good underpinnings to get your project started with there and is more, I’ve only mentioned a, not even half, obviously there’s another five or six staff, few to to say if that article appeals to you, go jump in and pick up some new knowledge and tips. [00:02:39] Next. Um, so I have been reworking with, uh, new co designer, um, Andy, I’ll just call him that for now, the chip shop board game that I started some years ago. In fact, I think when I first started this podcast, even, maybe, I’m not sure if that’s actually what the podcast initially was. I can’t even remember. [00:02:55] Now. I’ll have to go back and look. This is a board game that I hear. It was on hiatus for some time. Um. Where you run a 1980s computer company in America, um, and you get to try and release products at the pop population demand, and you have personalities and resources to help you, et cetera, et cetera. So I’m reworking that games. [00:03:17] I had been back doing a lot of research and going down. Holes, also rabbit holes of retro computing and old computers from the 80s and the computer that I remember very fondly, and I’m pretty sure I’ve mentioned this several times at the past, was the Amiga, and I don’t know if you knew this, but I’m actually, this is an old article from. [00:03:35] 2012 on computer world by Roohan peers talking about the release of Amigos for, yeah, they actually released, do you have versions of amigo S less than 10 years ago. And it’s quite an interesting profile, um, of, of what this operating system release walls. And I think I found another article, not this one. [00:03:58] Um, that was an interview with one of the programmers as well. It’s now put out by a Belgium company. I think I really wanted to try it, but it is not open source and only runs on particular power PC. She’s a processor architecture based hardware, which I don’t have access to and I’m, I’m probably could emulate it, but I’d have to pay for it when I don’t really have any use for it apart from the Stelara. [00:04:21] But still. If you’re interested to see, well, at least six or seven years ago, how, um, an old classic operating system, I’m just still developing. Then go and have a read and maybe have a play and let me know if you experimented with Amigos for, I’d love to know your thoughts and if you used it for anything practical in your day to day life, mix an article on a dazed. [00:04:46] I’m guessing this might be the digital being of days of confused, not sure an article by. Britt Dawson, uh, about, uh, well, about a couple, but kind of mostly about one person. This couple was a 10 year, Karen and her boyfriend, Josh Harris, how back in the early two thousands. They were kind of. I wonder if this was before big brother or about the same time as big brother. [00:05:08] I’m not sure, but they were one of the first people to kind of string their lives. Um, and this may not seem so unusual now, although I don’t know how many people really stream their lives as opposed to edited highlights of their life. But, um. And the article is interesting because it obviously goes into the pressure this had on their lives and it did have a lot of pressure. [00:05:29] I ended up breaking up, um, but also kind of the embracing of very early, uh, technology to do this sort of thing. I actually remember I was making, putting out online in music videos in the late nineties early two thousands when most people still had dial up and you’d have to make these files about less than five megabytes. [00:05:51] And these were live music, uh, gig recordings of gigs and things like that. Say client hard to, to get at a good enough quality. She’d go through my archive of drives and see if I still have any of those. Fascinating to see some of them now. I mean, really you could just upload videos to YouTube down with that. [00:06:07] Really having to care about how much space it’s going to take up. So seeing what sort of technology they use, how they managed to monetize it or not. And the intersection of, um, I guess the online world, early online world, the old media and their lives. Uh, it’s quite a fascinating insight and you will, I don’t actually remember this. [00:06:29] This story, this, this, uh, event at all. But maybe you do, or at least you remember if you’re of a certain age, what a being online used to be like them. So it was quite a fascinating read transitioning out of a kind of tech now, I suppose. Well, thanks. That was a good segue. Maybe this is the news that meets up, has, um, come out of, we work and is now owned by another company. [00:06:54] Well, actually, it’s interesting because PR Newswire says acquired, but then it mentioned investors. Oh, maybe it’s kind of. Acquired by a group of investors, or maybe the wording is not quite right there. I’m not 100% sure. Um, I actually tweeted it out a couple of days ago, no, last week I think I did an interview with the original founder of meetup sometime ago, Scott Scott, something rather, and before they even got taken over by we work and that, well, I mean. [00:07:26] I guess it depends who you speak to, whether that was a successful acquisition or not. I think it made a lot of sense for, we work meet up, didn’t really change very much. Um, and I suppose not people kind of think of them as separate companies that now we work is starting to fail. It maybe made sense for them to get out of that arrangement again. [00:07:44] I think it’s especially interesting that has happened right now when meetup has actually gone against one of its core principles of allowing people to have online meetups. You could kind of do that in the past, but they didn’t really want you to, they were very much focused on the in-person meetings, which if you listened to the interview I mentioned from a couple of years ago, uh, that’s actually one thing that got mentioned quite a lot. [00:08:06] But due to a current situation in the world, they had to allow this. It was quite, it’s actually quite an easy feature to add, I guess. And interestingly, meetup is not a platform. It has added that many features really. It’s probably one of the first concrete features I’ve seen on the platform with quite some time. [00:08:22] But it’s an interesting time that there’s a, there’s this company that was pretty much all about people meeting in person and now spins out at a time when people can’t really do that. So it’s interesting to see how they go from here, but I always have a bit of a soft spot for them to kind of with you next and article on the MIT technology review. [00:08:41] Bye Abby. Ohio’s, uh, is, uh, well, this is cold. Lockdown was supposed to be an introvert. Paradise. It’s not, not begin. You’re going to go into massive detail on the article itself. Uh, encourage you to have a rate, though it was more what I thought put in my head from observations of some of my friends who are very much on the introvert scale, who wane a kind of isolation and lockdown and coroutine and whatever you want to call it. [00:09:07] In various guises began a few weeks, a few months ago, depending where you are in the world. Some people I know actually kind of not, not necessarily celebrating, but as introverts they were pretty happy. Certain elements of them said, Oh, not much is going to change in my life. I don’t go out. Anyway. Some people said they were looking forward to not being forced to go outside. [00:09:28] Uh, and actually, um, I’ve noticed that in the recent weeks from, from where I am anyway. This has changed a bit and actually, strangely, some of my, um. Introvert friends are the ones struggling the most? Um, I guess maybe for a couple of reasons. Firstly, because you have no choice. I mean, if you were introverted and wanted to stay at home all the time in the past, you still had choice. [00:09:55] Um, even if you subconsciously didn’t take advantage of it, but just knew it was there, you still had choice. Um, I would also possibly say that people who are introverted or introverted to, um, a high amount maybe tend to be warriors. And, um, obviously when there’s a lot of kind of bad things going on, there’s a lot to worry about. [00:10:14] There’s a lot of things in the back of your mind. They might be other problems as well in your life to, to contribute to. Um, just being generally stressed and being an introvert is kind of. Just a part of that. Um, I would also think that people like myself who are kind of, I’m not really an extrovert. I’m somewhere on the scale, but, um, who value social connection and like going to in-person meetups and meeting people and hanging out with people and traveling and going to events and all this sort of thing. [00:10:47] Um. In some respects, we’ve been able to transition relatively easily to a new paradigm right now of socializing, but socializing online and still kind of doing exactly what we were doing before, but just always in our lounge room. Um. And I’ve seen other articles that kind of go into this. Uh, I think I saw one today that I haven’t read yet. [00:11:11] Actually. I’m saying that, and I’m finding this myself, that, um, there’s almost too much going on, which is great. I think it’s great that people are providing opportunities for people to socialize and, um, be exposed to new culture. And things like that. Like I’ve watched plays in countries I can’t get to with friends I haven’t seen for a long time, and it’s been quite amazing, but it’s a bit overwhelming on top of everything else that’s happening. [00:11:39] And this might be the biggest issue with, with introverts, which kind of goes back to my last point in that when other things are overwhelming, then it doesn’t matter if you’re in your, your safe space in your home where you feel comfortable, everything is overwhelming anyway, despite that. Anyway, it sparked a lot of thoughts in my mind about some of my friends who are struggling right now. [00:12:01] Um, and even though initially they might’ve thought this is going to be great for someone like me, it’s turning out that actually they are the ones struggling the most end of course. Trying to help them, um, is sometimes difficult. Uh, it’s not even possible. You can’t go and see them, uh, to get them out of the house or something like that. [00:12:20] So we maybe you could try, but, you know, it’s difficult. So, yeah, it’s about, it’s a lot of thoughts in my mind. Oh, I would actually love to hear people’s opinions on, on, on that subject. And the article in particular. Now, one thing that people have been doing a lot of, I know I have been, um, traditional games playing solo and with my wife, but also online board games. [00:12:43] A lot of people have been doing this. This is an article from Luke Plunkett on the site that I have referenced quite a lot when it comes to border game coverage. Saying that despite all this board games are actually having a bad time. The industry itself, and this is something that has been the back of my mind with a few, um, services products that people are using a lot at the moment. [00:13:04] This includes things like steam, um, all the various VoIP services, online board game platforms and I guess board games themselves in that, um, maybe not so much with board games cause it’s a physical product, but you’ll see my point in a minute. In that everyone is leaning very heavily on some of these industries and in some of those online platforms, they’re not necessarily making any more money despite the fact they’re getting a lot more demand. [00:13:30] A, because at the moment it feels inappropriate to charge people for some of these things. Or they are doing deals or, um, didn’t. No one is paying. I mean, whether it’s appropriate or not, people aren’t paying to match the demand. So they’re a little bit kind of bitten at both ends, if that’s actually a real phrase. [00:13:51] Um, in that the two companies are getting a lot of demand and that should equal better revenue for them, but it’s not necessarily, and then board games have their own kind of issues. Is that, um, but most board games are made in China. The Chinese supply, um, infrastructure has only really just got back going. [00:14:10] So there is a unmet. Supply for that demand. It’s harder for them to communicate with these people. It’s harder for them to go and get samples. Things are taking longer to be posted around. Um, and also then the local logistics service of even getting games apart from using certain online. Retailers is also difficult. [00:14:33] And some of those online retailers justly so are prioritizing out the deliveries. So it’s sort of interesting that there’s lots of industries that you think are doing really well out of a crisis, but maybe they are, maybe they’re not. And maybe that will change. And it’s interesting to see how some of these sectors will cope. [00:14:52] In the long run when people need them, but they’re still figuring it all out themselves as well. And finally, in other slightly older posts from long reads, and I’m actually struggling to see an author here we go right down the bottom. um, and I came across, this is an article called playing with history. [00:15:12] What Sid Meier’s video game empire got right and wrong about civilization. And I came across this post because I’ve actually been recently playing age of empires two I think, and yes, I know I’m a bit behind, but I’ve got a bit stuck. Maybe they’d have empires too, not really knowing what to do next and how to get started with things. [00:15:31] So I was looking for some strategy guides. And whilst I was looking for some strategy guides, I came across this post, not directly related, but somewhat similar. I love civilization games actually. Um, and when I say that, I mean the civilization games as well as the concept of generally, um. And the interesting thing about this article, which is always such a classic story, is everyone thinks that Sid Meyer is a hand of a fanatical historian or something like that. [00:15:59] And it actually, when you read this article, you realize he didn’t really know what he was doing. He was making it up. He just picked and very obvious historical record that most people would know sort of thrusted into this game and didn’t really pay much, um, noticed to whether it was accurate or whether it made any sense. [00:16:15] And it’s actually creates some wonderful dynamics in the game where you can be like, gang is calm. I’m getting the nuclear bomb, or something like that, you know? Um, so it actually, this interesting sort of floor in the design ends up making the game what it is. So anyway, if you’re a civilization fan, have a read. [00:16:35] So that was my links for the week. I hope you enjoyed the discussion there. And next up is my interview with Quinn Slack about the source graph. [00:16:43] Quinn Slack: [00:16:43] Well, I am Quinn Slack. I’m the CEO and cofounder of source graph. I’m a developer at heart and love building things that other developers use and love. [00:16:52] Chris Ward: [00:16:52] Okay. And you worked for source graph, or you founded soul’s growth, I guess. [00:16:57] Um, what is it the, the website kind of says in big bold letters, universal code search, but what does that mean? [00:17:06] Quinn Slack: [00:17:06] Universal code search is the one place that developers can go to find things across all of their code and to fix things across all of their code. It’s like. Google for your everyday life is universal web search, but when you’re coding universal code search is where you go. [00:17:27] When you need to find use of examples. You need to understand best practices or just debug code. Or if you own an API and you need to find who’s using it, how can you change it? Who do you need to deprecate? Or if your site goes down and you need to figure out what are all the changes related to our access token service, for example, or if you need to fix a critical security problem across all of your code, that’s what universal code search is. [00:17:54] And kind of like Google in your everyday life. When you as a developer have really good universal code search, you use it. 20 times a day or more, and we are so focused on getting universal code search out to more and more developers. A lot of developers out there have it and love it. You can see some of the companies that have searched scrap, for example, Uber, Lyft, Yelp, but also every dev ed, when Facebook has code search, they built their internal tools and they love those. [00:18:24] So we want to get this to every developer. [00:18:26] Chris Ward: [00:18:26] You even have a get your guide whose office used to be on the street behind me. But, [00:18:34] um, so as far as I understand. Um, it’s something of a way to, to understand and map out kind of on a, on a case by case basis, I suppose, um, dependencies of your application in various ways or who is dependent on your application and what your application depends on, is that correct? In my understanding, [00:19:00] Quinn Slack: [00:19:00] it knows that information. [00:19:03] You know, I, I just talked about the problems that it solves and the ways in which people use it. Just to be really concrete about what university of code search is. You have a search box that you can type things into it and it will search across all of your company’s code, all repositories, all versions on all code hosts. [00:19:25] All version control systems, all languages, and it includes metadata from the other tools you use. So it’s a search box. You type something into it, you hit enter, you see a bunch of results that are all the matches, and that’s what it is. It’s not something magical. It’s not some, you know, AI assistant that sits on your desk and tells you, Hey, type of semi-colon. [00:19:45] It’s search. So, you know, I want to make it really concrete about what that is. Does that make sense? [00:19:51] Chris Ward: [00:19:51] Yeah. I think cause for a brief second, I was thinking of the feature that get hub now has of like, depends, uh, you know, um, other codes that uses this library or something like that. And I that that is not what you’re doing. [00:20:09] Quinn Slack: [00:20:09] That’s, you know, one piece of it. You know, that that’s some of the underlying information that we can use to show you that the answer that helps you find a use of example. Because if you’re looking at your code, you want to see, or you know, you’re looking at some library, you want to see you, well, how are people actually using it? [00:20:26] You have to know that information to show people use of examples. But you have to know a lot more because you know, if you see a thousand different usage examples out there, well you need to filter down and you want to see. Uh, what are the senior engineers on our team doing and what have they done recently? [00:20:41] And, uh, I want to use a use of example that has test coverage. All of those signals are important for you to make the best determination you don’t want to use. You know, here’s how we did it 10 years ago by this person that’s no longer at the company. You know, you don’t want to use that one. So you’ve got to see these other signals about your code and source. [00:20:59] Greg brings all of these kinds of signals about your code together in one place, so that when you’re looking at code on source graph, all that information is there for you to. You know, determine is this a good way to call my code? Or if you’re one of doing one of those other use cases, you know, is this code buggy? [00:21:16] Is this code? Probably what took down our site. And we give you all that information as a developer so that you can go to one place and get your question answered. [00:21:25] Chris Ward: [00:21:25] Now you mentioned it’s a search box, but I could, I’m watching a video here whilst you’re talking, and I could also imagine this being very useful in other places as well. [00:21:34] So do you also offer. Um, IDE plugins or browser extensions or something like that as well. [00:21:41] Quinn Slack: [00:21:41] Yeah. We want to bring this to wherever you are. So in your ID you can set up serous graph and then it makes it really easy to go from what you’re doing right now to that same file on source graph with all this other metadata annotations about the code. [00:21:59] And then if you’re in get lab, get hub Bitbucket, you can look at any code, you can look at any code review, and you get all of that same code intelligence that sort of scrap has right inside of those products. It’s totally seamless. So yeah, we come to where you are as a developer. [00:22:18] Chris Ward: [00:22:18] One. I actually, I should have asked this question before that question really, but what was the origin story here? [00:22:23] Why, why, why create this in the first place? What, what was, what was your own personal or the team’s own personal problem that kept kind of hitting that you wanted to create some Scruff in the first place? Well, [00:22:37] Quinn Slack: [00:22:37] you know, in the background there’s way more code. There’s way more developers, there’s way more complexity. [00:22:43] And my co founder and I, we felt that as developers, and I use code search at several different companies, uh, large companies, small companies. My co founder was at Google. He used code search. And so, you know, with, we call this big code, this idea that there’s more code, more developers, more complexity than ever before. [00:23:04] We felt that problem. We had seen the solution. And once you as a developer have used really good code search, you can never live without code search again. So we saw the problem, we saw the solution, and we took a route. We took a look around and we said, why? Why isn’t every developer doing this? And we couldn’t come up with a good answer. [00:23:23] So he said, all right, we’re going to go and take it. So every developer does have this. And so we started. So scratch. [00:23:30] Chris Ward: [00:23:30] And how, uh, can people search? I see. On the. The front page, um, video. There’s like a sort of Google ish or you know, search engine ish, um, way of searching with, um, with, uh, asterixis and, and et cetera, et cetera. [00:23:50] But also on some of your other pages, I’m starting to see kind of more, um, natural language questions. I’m not sure if that’s just there, for example, or. How, how can the people search? Can they only search for code patterns or can they also search for kind of code patterns in a, in a sentence or something like that? [00:24:09] Quinn Slack: [00:24:09] You can search for code patterns. You can search, um, you know, actually using in a code aware way where source grapple understands the syntax of the language. Yeah, there’s a lot under the hood. We want to make it so that you as a developer, you can just type in what you know or what you’re looking for and will get you the answer in the same way. [00:24:27] You know, you just trust that Google will get you there. So there’s a lot under the hood. I can go through all the different things we do there, but, um, you know, start as a developer, start with typing in what you’re looking for and we hope to get you there through combination of. You know, filtering and expansion and understanding the code. [00:24:47] And our goal is to be the place where you can get your question answered 99.9% of the time because that’s what, that’s what a search has to be able to do for it to be really good. And we are doing that. Or. A lot of developers and that’s why people use our product a lot. [00:25:04] Chris Ward: [00:25:04] I’m guessing as your definitely going for an enterprise play, um, you can also connect up, um, local repositories and private repositories and things like that. [00:25:17] I’m assuming that would be a necessity. Otherwise the, the two would be useless to a lot of enterprises, but just to double check. [00:25:25] Quinn Slack: [00:25:25] Yeah, that’s totally right. So I mean, the problem is big code and you know, who has the problem? Well, anyone with a ton of code, a ton of complexity, a ton of dabs, and. That happens to be, you know, a lot of large enterprises. [00:25:37] It also is totally true in the open source world. And you know, we are a ton of, people use StorageCraft for open source as well, but our business is helping companies and search is totally self hosted. So you run it inside your company, it is very secure. You load all of your code into sort of scrap, but it’s totally in your own network and you manage it so you can get started. [00:26:01] You don’t need to go get approval from anyone else. You can run it on your own laptop and see it working across all of your code. [00:26:08] Chris Ward: [00:26:08] You also mentioned as well as, um, a code hosting. Um. The main ones here, get hub, get lab, bucket, some others as well in including just, uh, to, uh, your own role, your own get repositories. [00:26:24] But you also mentioned other services in the workflow, Datadog, uh, LightStep JIRA, a couple of others that are sort of less familiar or less code or focus, but how, how do they work into the search flow? I mean, I can think of Datadog for example. If I search for a certain function, does it, let me drill down into performance and and monitoring of, of that function in Datadog records. [00:26:51] Is that one example? Yeah, [00:26:54] Quinn Slack: [00:26:54] that’s exactly right. Any other service that knows stuff about code. We want to show in-source graphs so that you as a dev at one place to go. So here’s where this is really cool. Imagine you know you are an engineer at a large company and your company has a lot of these different kinds of tools. [00:27:11] You have Datadog, you have new Relic, you have century, you have code coverage, you have some other internal tools. And you know, you’ve been working there for a few months. You don’t, you don’t know all these tools by heart. You don’t know when you should use one or the other. Um. We want to make it so that when you are going to that one place, you go to solve your problems. [00:27:33] For example, when you need to figure out why is the service that you own causing problems in production, you don’t know which one of those services to go start looking for, but you know that source scrap has the answer. You know it’s going to get you to where the answer is. So you pull up the code on source graph and then in source graph you’ll see, you know, for this, these lines of code, they’re actually throwing a lot of errors in production right now. [00:27:56] And that will then link you to century, which will let you see the errors and go from there. So we make all these tools way more accessible to devs, and we help them fulfill their promise of, um, you know, they know a lot of important stuff about code and, uh, getting that information to developers in the workflow instead of relying on developers to wake up in the morning and think, Oh, I’m going to go to this other tool to find the answer to my question, which, as we all know. [00:28:24] Oh, that’s, that’s not how things work when you have so many different tools in an enterprise setting. [00:28:29] Chris Ward: [00:28:29] The one on that list that I, I’m not quite understanding how it relates, is HubSpot, is that for the customer feedback or something? [00:28:40] Quinn Slack: [00:28:40] Uh, I actually made the HubSpot integration and this solves a problem. [00:28:45] Uh, that’s really clear. We have a private. A get hub repository with a bunch of issues that are specific things that we’re solving for customers. Or we would like to deliver this feature to customers. And we also have a lot of public issues on get hub where we want to say, well, what customers are affected or want this thing. [00:29:05] Um, we have a integration with HubSpot that lets you. Basically type up, you know, uh, as you’re typing, I get an issue. You can type the dollar sign and then type the customer name and it’ll be auto completed with the URL to that customer’s record on our HubSpot, which is our CRM. You know, our, our, um, where we store all of our customer records. [00:29:27] And so for what that means is in all of our GitHub issues, our markdown files, you see these HubSpot URLs. But a is a source scrapper. When you’re looking at those, they’re actually translated into the customer names. So we have amazing insight into all of our issues and what customers care about what, and that’s the kind of thing where, um, it’s when you have one. [00:29:50] Place where you can roll out a developer tool and get it in the workflow of every developer, you know, which is what source scrap lets you do. You can do these kinds of things. Um, that, that I’m, I’m particularly proud of that. Uh, and you know, I think you’ll see more of those. And JIRA is another example of a tool like [00:30:09] Chris Ward: [00:30:09] that. [00:30:09] Yeah, for sure. And I guess that relates directly to issues maybe. Yeah, so [00:30:16] Quinn Slack: [00:30:16] you know, with JIRA it’s, we have a ton of customers using JIRA, and they’d like to do things like. They run a search and they see everywhere where they’re using this deprecated library and they just want to make a JIRA issue and the checklist from all those search results. [00:30:30] So that one’s a little clearer. [00:30:32] Chris Ward: [00:30:32] And I’m suppose, I suppose in the future, although this is a question I usually ask later, but just because we’re talking about the subject, there might be some obvious integrations with Freshdesk, Zendesk, those sorts of tools as well. Yeah, [00:30:45] Quinn Slack: [00:30:45] yeah, absolutely. Yeah. Yeah. And so then as a developer, when you’re debugging code, you could see what are all the customers that actually, you know, or use this or are waiting on a fix here, which is useful information in a lot of cases. [00:31:00] Chris Ward: [00:31:00] And now, one other claim you have here is all programming languages are supported. I would love to, to, to try and challenge that. But the bit the. More interesting is 32 programming languages have additional code, intelligent support. Um, is that basically emulating kind of a code intelligence features in IDs, but on the wider scale, I suppose is, is that my understanding of that. [00:31:27] Quinn Slack: [00:31:27] Yeah. Yeah, that’s right. [00:31:29] Chris Ward: [00:31:29] Okay. Um, and what does that look like in my ID? Do I get a like a very long, potentially long list of, of, uh, connections to that piece of code? Or is it more of a summary and then jump to the source graph site to see more? [00:31:46] Quinn Slack: [00:31:46] Well, let me just. You know, talk about the, the four discovered that without service graph scenario in your editor, even if you have really good editor language supports set up for your code, you’re only going to get results, you know, find references, library documentation. [00:32:03] You’re only going to get that from stuff that’s on your local machine. And that usually will not include the other projects at your company. And once you get to a reasonable size. You know, you’re kind of working in the dark. If you’re just looking at what is in your editor and what’s local. So with source graph, whenever you know, when we say universal code search, we mean it works across all of your code, and that means find references. [00:32:29] We’ll show you how it’s being called everywhere, across all of the projects in your code, including, you know, in some cases, even other languages. If you’re using something like protocol buffers or thrift. Or something like that. And that’s the magic. So, you know, we’re not trying to replace your editor’s language support and we don’t replace your editors language support. [00:32:51] That works great when you’re typing and you want auto complete, you know, that’s, um, you know, for the file before you’ve even saved it. But when you want to see things across all of your code, that’s when you go to source graph. So the editor extensions make it really easy to. You know, go from that file you’re working on to source graph and then see, well, where is this thing being called across all of my code? [00:33:10] Or I want to jump to the definition in some other projects. So it integrates really nicely and because it doesn’t change how your editor works, you don’t need to worry about it, you know, changing how you’ve configured your editor, you also, as you’re solving a problem and did a basis, you know, you don’t need to worry about, you’ve got your editor all set up, you’re just coding, you’re in the flow. [00:33:32] You can open up search, scrapping a web browser, and that doesn’t ruin all your editor tabs and your flow. You can go open your web browser, get the answer to your question, and then go back to your editor and it’s just like it was, you can get back in the flow. [00:33:46] Chris Ward: [00:33:46] I just like to ask about, you have this coach aid code change management feature where you, you call the, I guess the, the. [00:33:58] The card, they get the right word, but you have code change management where you have these things called campaigns, which is an interesting choice of word because campaigns will usually mean something more sort of marketing focus. So maybe explain what campaigns means in your context, just to understand how that could be [00:34:16] Quinn Slack: [00:34:16] useful. [00:34:18] If you need to make a change across a lot of different projects, you need to open up 10 a hundred or thousands. Pull requests across a lot of different projects. Well, if, if you’ve done that, it’s super, super painful to do that. And that’s what a campaign is. It’s, it’s, uh, a bunch of different polar requests that are all connected and they’re all to deprecate something across all of your code to fix something across all of your code, to upgrade something across all of your code. [00:34:51] And source graph makes it so much easier to create all those changes, open them up as pull requests, get them assigned to the right people to monitor the progress of that. And finally, you know, to know we have fixed this across all of our code, we can finally sleep again at night. [00:35:08] Chris Ward: [00:35:08] Okay. It’s making me think of, uh, I did see a talk recently. [00:35:13] Let’s go to find the, uh. All right. [00:35:19] Quinn Slack: [00:35:19] Facebook recently talked about how they do this internally. Google does this load [00:35:24] Chris Ward: [00:35:24] or something like that, I think. Yeah. [00:35:26] Quinn Slack: [00:35:26] Yeah, that’s right. [00:35:28] Chris Ward: [00:35:28] Giving that overview of the whole process as well as just doing it. Yeah. Yeah. Code modes. That was it. Yeah, yeah, yeah. Okay. [00:35:37] Quinn Slack: [00:35:37] It’s, we call it campaign. [00:35:39] Chris Ward: [00:35:39] Yeah. Yeah. [00:35:41] Quinn Slack: [00:35:41] You know the companies that do this at large scale already. Yeah. Some, some of them are our customers, they call it campaign, [00:35:47] Chris Ward: [00:35:47] for sure. A campaign for dating dependencies or something like that, but a campaign for removing. Depreciated functions, that kind of thing. Yeah, it makes sense. Yeah. Yeah, and actually the presentations I saw on code mods sometimes made it seem like ball work than they’re just doing a big project or something to say, [00:36:08] all [00:36:08] Quinn Slack: [00:36:08] right. It’s a ton of work. I mean, process can take, it can take weeks or months to go and get something fixed or changed across a lot of different projects. If you’re doing it manually, but with Sora scrap, you can roll out the change automatically. You can get it, you know, a teed up so that the code owners can see the change and their normal process and they can approve it quickly. [00:36:30] A lot of times they could even say. Oh, for any future campaigns, you know, we’d like some of them to be auto-approved so you can get this done so much more quickly with a campaigns. Then by doing it manually is solving a huge pain. [00:36:44] Chris Ward: [00:36:44] All right. So, um, how old is the, the company at the moment? Actually, by the way, [00:36:50] Quinn Slack: [00:36:50] we started about six years ago. [00:36:51] Chris Ward: [00:36:51] Okay. All right. So, um, so you’re not rushing just to, to, um. To create new things, which is good. Sometimes I speak to companies in my fund. My, one of my final questions is always what’s next? And sometimes they’re so early, everything’s next. Um, so for you as a reasonably mature tech company, what is on the roadmap for the next six months? [00:37:15] I’ll say we [00:37:18] Quinn Slack: [00:37:18] want to get universal code search out to more and more companies. And that means more and more developers. That means making it more and more universal. So we talked about. Uh, you know, all the different kinds of information that source graph knows about code, uh, how it’s across all repositories. [00:37:38] We want to make it. Um, across even more repositories so that if you’re a company and you use a ton of open source to be able to seamlessly, you know, search across both private and public code, and that means, you know, potentially millions or hundreds of millions. We want to have deeper support and more coverage or all of the languages. [00:37:57] So that we have even more compiler information and we have even more deep static analysis. We want to integrate more of the services that developers love. So deeper integration with things like Datadog, century new Relic, LightStep code coverage. Um, also other metrics that companies care about on codes such as code churn, bring in more stuff around. [00:38:19] How is this code running right now? Where is it deployed. And, uh, take all of that. You know, all of that is things that make it so StorageCraft knows more about code and make it so developers can use that when they’re trying to, you know, find things. But search also make it so developers can use that information to go and fix their code with campaigns. [00:38:39] So bringing in more things, making it more universal. [00:38:43] Chris Ward: [00:38:43] I mean, you have some almost endless integration points. There’s new development tools that are somewhat relevant all the time. I guess, yeah. You have to focus on what people are actually using. We know that developers have a tendency to want to change all the time for no, not always for valid reasons. [00:39:01] Quinn Slack: [00:39:01] All right. Valid reasons to them. Yeah, for sure. We are the kind of product, you know, in our, in our. Uh, we think eventually every developer will be using source graph. So we have to meet all developers where they are. We have to make source graph work in every developer’s workflow. So we appreciate the choices that every developer has made. [00:39:24] We don’t take sides. We want to make it so no matter, you know. Where you are, what you use. You have amazing universal code search. [00:39:33] Chris Ward: [00:39:33] Oh, on that note. So you do actually, if you want everyone to use it, you do have a free plan. It’s just code search, not the pull requests and integrations. So you get some of the way there. [00:39:44] Um, I guess the interesting question would be there. Bearing in mind some of the other things you said is do you offer any special deals for open source projects or is it very much up to the kind of typical uh, uh, enterprise, um, patron of an opensource projects to, to sign up instead? [00:40:03] Quinn Slack: [00:40:03] Well, for open source projects, for any public code, I got great news. [00:40:07] surescript.com has all public code, all open source code on it and you can just go to dot com and. Search it there. It’s already going to work [00:40:18] Chris Ward: [00:40:18] all open source code. This is another, another, another challenge accepted to try and see if that’s actually true. I think it’d be interesting for people to, to, to, to see, I don’t know. [00:40:30] It’s hard to know. [00:40:32] Quinn Slack: [00:40:32] I guess if you have open source code, you haven’t actually published anywhere [00:40:39] Chris Ward: [00:40:39] that’s reasonable. [00:40:40] Quinn Slack: [00:40:40] But otherwise, if you’ve got a project on any of the major code hosts, yeah. Then you can just go to it and it’ll be there. And if it’s at some other URL, then you can just, you know, file an issue. [00:40:51] Chris Ward: [00:40:51] And [00:40:52] Quinn Slack: [00:40:52] so works at massive scale. And by the way, surfscan by comm is running the same exact software that you can also run inside your own company. [00:40:59] We run it publicly [00:41:02] Chris Ward: [00:41:02] testbed for people to, um, to. See how it works on something realistic as opposed to kind of dummy data. So, yeah. Um, final question I always ask is, is there anything you want to make sure is mentioned that we haven’t covered already? [00:41:19] Quinn Slack: [00:41:19] No, that’s it. All right. Awesome questions. Great prep. [00:41:25] Chris Ward: [00:41:25] And that was my article with Quinn Slack officer’s graph. I hope you found that interesting. So what have I been trying this week? Okay, we’re about to start, um, test recordings for a new podcast board game jerk based on the my Twitter bot and more of that next week, started editing and new storytelling podcasts. [00:41:46] I’ve been doing some more live streams. Um, mostly documentation work. You can also now sign up a contact me for details. You can also now cause sign up for, um, office hours with me where I’ll help you with documentation, projects, documentation, tooling, things like that. Mostly doing a Wednesday and Friday, uh, three to 5:00 PM central European time. [00:42:09] Hopefully overlapping a little bit with American time there. Um, and if that doesn’t work for you, then please let me know. You can find more details, all those things on Christian chiller.com/contact/support or just to kick around. I think it’s fairly obvious we will find pieces of information. Apart from that, I have been working on some articles, mostly getting published soon. [00:42:31] Some of them have been fairly, um, long, uh. Long projects maybe. Um, yeah, and I guess that’s about all I have to report right now. Sometimes I forget what I have done. I should make a note really shouldn’t actually be better at promoting things anyway. I hope you enjoyed the show. Please write to review, share wherever you found it, and until next time, if you have been, thank you very much for listening. .