Inside DuckDuckGo

DuckDuckGo

Behind the scenes with the DuckDuckGo team — sharing insights on product, engineering, leadership, and AI. insideduckduckgo.substack.com

  1. Duck Tales: The fire button, a delightful way to delete your browsing data (Ep.28)

    -1 J

    Duck Tales: The fire button, a delightful way to delete your browsing data (Ep.28)

    In this episode, Beah (Chief Product Officer) and Sveta (Design) discuss the fire button, the recent redesign, and how it improves both user privacy and delight. Disclaimers: (1) The audio, video (above), and transcript (below) are unedited and may contain minor inaccuracies or transcription errors. (2) This website is operated by Substack. This is their privacy policy. Beah: Hello, welcome to Duck Tales, where we go behind the scenes at DuckDuckGo and discuss the stories, technology, the people that help build privacy tools for everyone. In each episode, you’ll hear from employees about our vision, product updates, engineering, or our approach to AI. In this episode, we’re going to talk about the fire button. And I will be your host today. My name is Bea and I’m on the product team. And we have as our guest Sveta. Sveta, do you want to just quickly introduce yourself? Sveta: Yeah, I’m Sveta. I work on mobile apps at DuckDuckGo for now five years. Beah: Sweet. Thanks. And you’ve been, you’re a designer by trade, right? Sveta: Yeah. I’m on the design team. Beah: And you’ve been doing a lot of work to improve the fire button on mobile. And so that’s what we’ll jump into today. Okay, so first of all, let’s start with the basics. Like, what is the fire button? What does it do? Sveta: Right, so the fire button is a button that’s located quite centrally in mobile UI and it looks like a fire. And when you press it, it removes, it deletes all of your tabs and all of the browsing data and all of the history. So pretty much removes everything, all of the browsing activity and you can start from clean slate. And it also shows a really cool fire animation when you do that. Beah: That seems like a good prompt to actually show it. So let me see if I can share my screen here. Can you see that, Sveta? Okay, then hopefully our audience members can as well. Alright, so this is the fire button here. I’m just on a website, on NASA’s website. I’m going to tap the fire button. And so I have, what are these two choices here? Sveta: So the first, the primary button will delete all of the tabs, all of this data for all sites. And the second button is a choice to delete activity for only this one tab. So it will close this tab and will delete all of the site data associated with the sites visited in this one tab. Beah: Alright, I’m going to choose that one here. Delete this tab. Awesome. All right. I just, I wanted to only delete the one because I also wanted to show like if you’re using, if you’re a Duck AI user, this is a new feature. But if you’re on a particular chat, for instance, a chat about what music your dog might enjoy, you can hit the fire button and now you have this opportunity or this option to just delete this chat. So remove it from your chat history. Sveta: Nice. Beah: Boom. All right. let me get it shared on. Okay, I don’t think we’re sharing anymore. Cool, so like what is the benefit of using the fire button? Sveta: Yes, the primary benefit is privacy reasons, because as you browse the internet and you visit sites, you accumulate different site data such as cookies or different user preferences that then tracking companies can, if you accumulate a lot of it, they can use it to identify you and connect your browsing activity to you. Sell that information to other companies to show you targeted ads. And our browsers, we actually block most of the trackers and most of the cookies, but there are still some cases when we can’t do it. And then that’s a good practice to delete all of this data every now and then. And then the second reason is just still schooled and it makes you, lets you start your next session from clean slate. Beah: Yeah, I like how those two, they’re like different reasons to use the fire button, but I kind of like how they converge too. Like part of what feels good about a clean slate and not having like stuff everywhere is, I think for me, like not having your data everywhere, you know? Like it’s just clean, it’s like a sense of control and I don’t know, care, I suppose, that you can apply more easily with fire button. Like you can tell me if this is how you would characterize it. Like you can delete data in most browsers, but it’s just a lot harder, right? Like you don’t have a button front and center with just the options that you need, like one or two taps away. Sveta: Exactly. It’s usually tucked like hidden somewhere in the settings. I think it’s actually pretty cool that we managed to turn this really mundane and boring technical thing in a really satisfying experience. Beah: Yeah, and one thing I didn’t show is that you can actually pick between, I think, three different animations. Like the fire is the default animation, but there’s like this kind of nice swirly animation and all like water animation. And then you can also just turn animations off if like what delights you is speed and efficiency and not an animation. That’s cool. Cool. Tell me a little bit about like how the fire button has changed over time. Sveta: Yeah, so what the confirmation that we’ve seen just now, that’s updated design that we’ve launched recently. But for years, I think since we first introduced the fire button in our mobile apps, we just had this system, little system confirmation to confirm, delete all of your tabs and data that was very small in the bottom of the screen and it was really easy to press. And it was of course good for users who were regular fire button users because it was quick. But then there was also a big risk that you could just accidentally press it and delete all of your tabs and data without intent. Beah: Yeah, so if your intent was to blow everything away all the time, fine, great, it works great for you. But if you wanted to be a little bit more surgical about it and keep some tabs around, then it neither worked for you. It didn’t really work for you, and if you accidentally used it, you might really regret it. Sveta: Yeah, we did get some that obviously there’s if you’ve accidentally deleted all of your tabs without wanting you would write us an angry feedback, which we sometimes received you open it and you see all caps that chances are from someone who just deleted their tabs. Beah: Yep. So take note, dear reader, if you are writing angry feedback, a kind human like Sveta is reading it and taking it to heart. And so in this case, what did we do about it? Sveta: So we’ve changed a lot how the confirmation dialogue looks like. It’s bigger, that you’ve seen it. It takes a lot of space on the screen, so it’s harder to miss. We’ve on purpose moved the buttons a little bit high up. So when you press the fire button and your thumb is right above the fire button, the confirmation buttons, they are not on the same spot. And there is an animation, pictogram that also attracts attention. it’s just everything is made for you to pause, read the label, and make an informed decision. And then another big change is that we’ve added a second option because before you could have only deleted everything, all of your tabs and all of your data. And now we have a second option that you can delete just one tab and the data for that tab. Beah: Yeah, yeah, I love, by the way, like, I’ve developed, you know, I’ve been using our mobile apps for a long time, but I’ve developed this kind of workflow recently now that we have the single tab, single chat burn, so handy, we have this kind of, we’re in the process of updating behavior when you open the app after an idle period, we take you to a new tab automatically, so you can just start typing your query or your chat or whatever. I like realize there are tabs that I want to keep around, the things I want to keep around, but there are a lot of things that I just want to do a quick search, a quick whatever, and it’s just, it’s throwaway. And like now I open the app, I’m in exactly where I need to be, I don’t have to think do I want a new tab or do I want to, you know, override this tab? And then like when I’m done, you know, five seconds later, just doop, tap, burn that tab, and it’s just, I don’t know, there’s, it’s a very satisfying and efficient workflow for me for the I don’t know, 70% of things I do that are just quick interactions with the app and don’t require any kind of historical retention. So I love it, Sveta. Thank you. Sveta: I think there’s something interesting about this approach to delete activity from one tab, because in other browsers, the way they solve this problem, the task of deleting some of the data, not all of the data, they use time. So you can delete an activity for, let’s say, last 20 minutes or last hour, but then it deletes it across other tabs, all tabs. While in our browser, like you said, you just did one thing in one tab, and then we delete that one tab without affecting any other tabs. Beah: Yeah, yeah. I think it’s a great shift. Do you want to talk at all about the design process that you used with the team to get to these improvements? Sveta: Yeah, so our first hypothesis or first direction that we explored for this new mobile confirmation was the same approach that we have on desktop browsers where we have a list of options for users. Every time you press the fire button, you can choose, do you want to delete tabs or keep tabs, delete the side data or keep it. And that is a good direction because it gives most flexibility, but it also, we realized that in mobile context, just looks, it looks heavy. It took over the whole screen, the confirmation just, we were asking users to make these choices every time. We, well, in our old design where you had to only press one button. There was something nice about that privacy package. We gave users the most private option with one button pressed. So we decided to instead just add another option so you could either delete everything. With one button press or

    20 min
  2. Duck Tales: How we privately sync bookmarks, passwords & AI chats across your devices, without you needing an account (Ep.27)

    22 AVR.

    Duck Tales: How we privately sync bookmarks, passwords & AI chats across your devices, without you needing an account (Ep.27)

    In this episode, Beah (Chief Product Officer) and Emanuele (Engineering) discuss Sync — which lets you have consistent bookmarks, passwords, and AI chats across devices — how it’s unique from a privacy perspective, and what’s coming next. Disclaimers: (1) The audio, video (above), and transcript (below) are unedited and may contain minor inaccuracies or transcription errors. (2) This website is operated by Substack. This is their privacy policy. Beah: Hi, welcome to Duck Tales, where we go behind the scenes at DuckDuckGo and discuss the stories, technology and people that help build privacy tools for everyone. In each episode, you’ll hear from employees about our vision, product updates, engineering or approach to AI. In this episode, we’re going to talk about our Sync feature. So today, Emanuele has joined me. I’m Beah. You haven’t met me before. I’m on the product team here at DuckDuckGo and Emanuele is, well, I’ll let you introduce yourself. Emanuele: Yeah, thanks. Hi, Beah. Welcome everyone. I am Emanuele. I have been at DuckDuckGo for about six plus years and I’ve been involved in Autofill and Sync almost from the start. Yeah. Beah: Cool. All right, well let’s dig in. I have a few questions for you. So first of all, what are we even talking about? What is Sync? Emanuele: Sync is a feature that lets you synchronize your data from one device to another. For example, you may have a collection of bookmarks on your desktop and you want to see the same bookmarks on your mobile device. You set up Sync and all your data is showing across both devices seamlessly. Beah: It sounds very handy. So you can sync bookmarks. What else can you sync across devices? Emanuele: Yeah, you can sync also autofill data, credentials, and credit cards. You can also sync, well, we said bookmarks. Recently, we added Chat Sync, so you can sync your Duck AI chats across devices. This is currently only available for our own first-party applications, but we are expanding to other browsers as well. Beah: Nice. So like, just to kind of paint a picture here, I have a MacBook Pro, I have a Windows laptop, I have an iPhone, and have an Android phone as well. And I’m like, you know, trying to log in to Reddit in all these places. If I save my Reddit credentials, my login, my username and my password on any of those devices, then it can automatically sync to all of those. So then the next day when I’m like out and about on my phone, if I logged in on my laptop, like the password just autofills and I can log right in. Is that right? And then now with that... Emanuele: Exactly. Yeah. Beah: Duck AI chats, as you’ve mentioned as well, if I wanted to like, so what’s the yeah, tell me about chats. What’s the use case there? Why do I care that it’s across my devices? Emanuele: Well, the use case, I use it a lot personally when I chats on the desktop and then I want to continue in the evening on the couch, I can resume the same chat and continue the conversation with Duck AI from there. I also use it for looking at older chats and basically maybe I chatted with Duck AI for something a while ago, and all of a sudden I remember, oh, well, there was this information that I already discussed with Duck AI, and I can go when I’m on the go outside with a friend and show my finding even when I’m on the go. Well, with Duck AI specifically, the Sync feature also increases the limits of how many chats you can store in Duck AI. The limits used to be 30, we bumped it at 100, but with Sync you have a lot more storage, so you can store a lot more chats with Sync activated. Beah: Nice, so if I’m like chatting on my phone, chatting on my computer, I’m like, you kind of need it because you potentially are like doubling or whatever, multiplying the volume of chats that you’re having and you don’t want to be like penalized, like lose those because they’re synced across devices. You just want them available. Emanuele: Right. Yep. Beah: Yeah, that makes sense. Tell me, like, let’s talk about how we do Sync from a privacy perspective. Like, are there any considerations there? How do we do it in a way that is not identifying and protects all of our users’ privacy? Emanuele: Yeah. First of all, all of the data in Sync is encrypted end to end, which means nobody but you can access your data, not even us. We don’t have the decryption key, so the information stays encrypted on our servers and nobody can access them. We went a step further in that we don’t really ask you for emails to sign up on anything. We don’t ask you for your passwords or anything. We just set up an account in a way that’s secure with basically a random string that is used to encrypt, I’m kind of simplifying things, but like a random string that is used to encrypt your data and then the string stays locally on your device. This ensures that, you know, whatever happens in the server, the data cannot be decrypted by a malicious actor. And we, as a company, cannot know who you are. We don’t have any information on you and we don’t have any way to tie your data with a specific person. Beah: How does that compare, like, how unique is that? Like, is that what everybody does with sync and password management or is that pretty unique and how so? Emanuele: The end-to-end encryption is a pretty common pattern in password managers specifically. Not as much maybe in browsers, I don’t think. But the fact that the account is... that you don’t need an email to log into your account, that’s pretty unique. I don’t know that there are many other companies that do anything like this. Beah: Yeah, I can’t think of any mainstream, well-adopted examples anyway where you don’t need an account. Cool. How hard has that been in practice? What technical challenges did it create? Or was it just hunky dory? Emanuele: Yeah, no, it’s not easy, especially when you create an account that doesn’t have an email associated with it, it means that certain things that users are accustomed to, that they expect, they’re not there. So you have to kind of create user experiences that allow users to use their accounts seamlessly without thinking about an account, but with all the features that they expect. Specifically, the recovery part is the complex part because we don’t have data. We don’t have any way to retrieve your data. Therefore, you have to save a recovery code to decrypt the data on your side. The complexities that we face are both in terms of UX, as explained, but also there are complexities on the engineering side, as we need to ensure every time that all the flows are accounted for in this sort of accountless account. And yeah. Beah: Yeah. Emanuele: When we start to connect certain things together, like the chats and Sync and, you know, so we will look into subscriptions as well. We’re basically connecting different systems that all are sort of blind to the user concept, but they still have to sort of contain this data. So that’s a high level. Beah: Yeah, as you were talking, I was thinking, this is like a great example of one of those things that’s like deeply, deeply complex. And like for it to work, you just have to like, you have to boil down that complexity and like, shield the user from that complexity and present a very simple, it works, very little room for human error, no requirement of deep understanding of how it works. And I think that is a really interesting challenge. Emanuele: Yeah, I think our UX for setting up the account has this advantage that you don’t have to type anything and you just set it up and when you have to transfer it to another account, you just scan a QR code and the data is automatically transferred via that QR code scan. I think that’s kind of handy in the setup step. But again, it poses a few challenges then in the recovery phase. Beah: Yeah, like you don’t have to remember a password or remember what email you used. You just have a device, another device, and then let them talk to each other. But getting there was really hard. I mean, and maybe there’s still places that we want to improve the UX, but I just, I know we’ve been like finessing it for a long time. Now I’m somebody who like has to sync things all the time because I’m constantly like uninstalling and reinstalling and trying new devices as part of my job, like testing and you know, understanding our products and looking for gaps and like, so I go through the Sync setup, you know, way more often than any normal user should have to. And it has gotten a lot better. Like I, there are moments when I’m like, that was easy, which is what we’re going for. Emanuele: Magic. Beah: Yeah, magic. Magic. Emanuele: Yeah. We are actually working right now on an improvement to the Sync screens. We are going to launch an experiment on iOS first. And we hope that the Sync flow will be easier, even easier for users to understand specifically the very first step when you decide whether you want a new account or you want to connect to an existing device, that should be easier. But they’re just improvements around the existing flows rather than a new different flow. Beah: Yeah, I think one of the things you’ve done really well as a leader of this work, Emanuele, is continuing to watch the data and poke holes in the flow and basically make sure that we’re simultaneously building new features and optimizing what we have and just making it better and better and better as we learn more. I’m curious if there are any kind of in that vein or you can leave that direction if you want. You can say whatever you want. If there are things that have surprised you in the process of building Sync and getting feedback and watching the data points and so forth. Emanuele: Yeah, I think one sort of surprising thing was that the people were not really finding the feature organically. As soon as we started building entry points where they were useful to the user fl

    17 min
  3. Duck Tales: How we build, design, and trigger instant answers on DuckDuckGo search (Ep.26)

    8 AVR.

    Duck Tales: How we build, design, and trigger instant answers on DuckDuckGo search (Ep.26)

    In this episode, Greg (Product) and Karl (Design Engineering) discuss how we build, design and decide when to show Instant Answers. Plus, how we’re balancing instant answers with optional AI generated answers. Disclaimers: (1) The audio, video (above), and transcript (below) are unedited and may contain minor inaccuracies or transcription errors. (2) This website is operated by Substack. This is their privacy policy. Greg: Hello and welcome to DuckTales where we go behind the scenes at DuckDuckGo and discuss the stories, technology and people that help build privacy tools for everyone. In each episode you hear about our vision, product updates, engineering, our approach to AI from employees at DuckDuckGo. I’m Greg, I work on the search engine here at DuckDuckGo and with me today is Karl. Karl, would you like to introduce yourself? Karl: Yeah, sure. Yeah, so I’m Karl. I’m a design engineer here at DuckDuckGo and I work across the search engine on instant answers and our Search Assist AI module. Greg: Awesome. And that’s actually what we want to talk about today. DuckDuckGo Instant Answers, how we show instant answers for different search queries. Obviously, in a search engine, we show links to websites. But there’s a lot of other content that we show on the page as well, which I think broadly we sort of refer to as instant answers. You know things like if you search for the weather, you know, we might show a weather module at the top of the page. I’ll just share a couple examples of these. You know, so you search for weather and we try to show, you know, relevant information about the weather at the top of the page in addition to then all of the, you know, the links to different websites. Karl: Nice. Greg: We have things like unit conversions. If you search for a temperature and you want to convert it from Celsius to Fahrenheit, different calculations, all of these things are kind of within the umbrella of instant answers. We have had instant answers for a long time. I think really early in the history of the company and the product, recognized that when you’re pulling information from a lot of different sources, you have the ability to present that information in different ways to help the user find what they’re looking for, whether that is looking for a website that they want to navigate to, looking for an answer to a question, or looking for something a little bit more complicated. So yeah, we have lots of different instant answers, and thought we’d talk a little bit more about that today. So I guess as a starting point, I’m curious to talk about, and you mentioned being a design engineer, what are some of the challenges involved in designing and building instant answers? Karl: So I think one of the things that I’ve always found working on these is it’s very easy to just basically take everything we get. So we will work with like a provider. Let’s say if we’re doing where to watch something, let me share my screen actually as well and we can have a look at this. We are working with a provider. So in this case, we’re working with JustWatch and using their API data. When you come to design something like this, it’s very easy to look at that and say like, okay, cool, let’s go to JustWatch’s website and have a look at what’s available. We can see their website, how they present the information they have and they give us. And you could kind of jump to say like, well, we’ll just take what they’ve done. They’ve got that data, we’re using the same data, let’s just copy the way that they’ve presented that information. That would be like the easy solution. But then you’ve got all of these sort of legacy things to deal with, like we talked about a bit earlier, we’ve had instant answers for a long time. We’ve got ways that we present our information on the search engine and we need these modules, whether they’re pre-existing or they’re new, like we need them to all feel like they belong together in some way. So it needs to sit in the search engine nicely, you know, and feel kind of like it belongs. So we can’t just do like a one-to-one copy, which, you know, as designers anyway, we don’t want to just copy what someone else has done. But when the data is so vast and so complex, it can be kind of hard if you’re not familiar with the domain so much as an individual to just figure out like, what do I even care about here? So like, here’s an example with a movie, we were trying to figure out where you can watch this, but like, where are you in the world? You know, because that’s like the first thing that’s probably one of the biggest challenges is we can’t show you the same thing if you’re in the US or the UK or Australia. You’re going to see something different. Greg: I think you touched on a lot of important pieces to this that make this challenging. One is just understanding the user’s context. Obviously, we have limited information about our users based on our privacy policy and our privacy standards. We can approximate things like location accurately enough to be able to do things like the weather one that I showed, or this where to watch example. But that does limit us in what we are trying to do where we’re not trying to overly personalize the things that we’re showing down to a very specific user profile. And so, we have to kind of generalize and try to figure out just from the search query and that limited bit of information, what is it that we’re going to show to try to answer the user’s query. The other thing you touched on that I think is important to highlight is just the fact that this search query here is very specific and I think has a pretty clear intent where to watch a specific movie. Sometimes the intent is a little bit harder to unpack. And so you might have more different things that you could show. If you just searched for the movie title, for example, maybe someone’s trying to figure out where to watch it. Maybe they’re interested in the release date or different news about it. If it’s an upcoming movie, maybe they want to know what the cast is like. So trying to figure that out and then present the information in a way that gives users the ability to see what they’re looking for and also then refine their search down to the more specific thing. I think that adds some challenge as well. Karl: No, I agree. I think probably one of the biggest things that I found difficult around this is exactly that is the like figuring out the query, figuring out the query space, and then defining the data set, the golden data set, as we call it, that helps us to understand when do we trigger? How do we decide what we trigger? And entertainment is especially challenging because we have three different modules that are part of the class of entertainment. We have the titles module, which is the overarching piece that tells you, you know, this movie is from this date. This is a brief synopsis and you can get to the two other modules. So this where to watch module. And then also you can get to the cast module from that parent module. But like you say, you have to trigger these differently and figure it out. And so we can do these really clear ones where someone puts the keyword in that we’re looking for, but sometimes we’ve got to try and use all these other signals from what we get from the organics or like other pieces of information that we’re retrieving to say like, actually we think this is best and you will know better than I, but like it’s incredibly hard and sometimes, you know, it doesn’t matter how hard you try, the intent might feel really obvious to the person typing it, but as far as we can derive from that information, we can’t always figure out the right thing to show you. And so we do our best, but you know, there’ll be misses sometimes. Greg: Yeah, I want to ask you about something that’s on your screen right now because you can see, you searched the query Project Hail Mary cast and we’ve got the cast module at the top left there. We also have that Search Assist box to the right side that attempts to kind of answer the question. I guess, we’ve talked a little bit on previous episodes about Search Assist and what it’s doing. You know, how would you describe how we think about showing those two things next to each other, the different kind of roles they play, and maybe how that’s evolving over time? Karl: I think, yeah, that’s been a big challenge for us because AI summarization is a really useful tool for some people. It’s not for everybody. And obviously, we’re super careful about giving people optionality and letting you say, I don’t want to see this. But for people who want it, people who are interested in seeing that, we don’t want to just always put that front and center as the key answer to every query. Because in a case like this, for example, Search Assist is giving you the same information, but it’s giving you it as text. And maybe we’re giving you a little bit extra too. But if I’m specifically trying to ask about the cast, there is a high chance it’s because I’m thinking of an individual who I’ve seen in the film, or I’ve heard is gonna be in the film, or what have you. And so I’m trying to see their face to be like, yes, okay, so it is Ryan Gosling who’s in Project Hail Mary. Okay, cool. And so in this case, like that is probably what we feel the most critical piece of information. So we want to give you that module upfront. But at the same time, if you’re someone who’s interested in getting a kind of AI summary as part of your query, we don’t want to then say, just, we won’t show you that tool then. And so we have this like convenient little right rail slot where we can say, actually, we’ll just move this over here. So you get kind of the what we think is the best of both worlds where we can deprioritize Search Assist in this case w

    19 min
  4. Duck Tales: Hack Days at DuckDuckGo — why we do them, and the role of trust (Ep.25)

    1 AVR.

    Duck Tales: Hack Days at DuckDuckGo — why we do them, and the role of trust (Ep.25)

    In this episode, Gabriel (Founder) and Julia (People Operations) discuss hack days (our version of a hackathon), how we encourage participation, and some of the product changes it’s led to. Disclaimers: (1) The audio, video (above), and transcript (below) are unedited and may contain minor inaccuracies or transcription errors. (2) This website is operated by Substack. This is their privacy policy. Gabriel: Hello everybody. Welcome to Duck Tales again. I’m Gabriel, the founder of DuckDuckGo. And with me today is Julia. Julia, do you want to introduce yourself? Julia: Yeah, I’m Julia. I am part of the PeopleOps team. Been at DuckDuckGo for three years and a half. So yeah, almost four. Very excited to be here. Gabriel: That’s cool. Yeah. It feels like a long time. I’m really bad at time. I know I’ve been working with you for a long time. You’re wearing a DuckDuckGo sweater from our... one more swag like that one. Yeah. Nice. Okay. So today we’re here to talk about hack days, which is something, it’s not exactly PeopleOps, but it’s something that you also just work on here. You’ve been responsible for it for a while. So yeah, tell us, tell us what hack days are. Julia: Yes. Gabriel: I know they’ve preceded you and I can talk about that too, but talk about your journey with hack days. Julia: Yeah. So it’s, I love actually owning hack days because it’s not as... it’s related to culture, but not so specific to HR and PeopleOps. But hack days actually, it’s also known or mostly known as hackathons. A lot of companies in the tech industry do them. It’s a combination of the word hack, meaning creative exploratory programming, and marathon, which is something that you do fairly quick and in a short amount of time. So it’s kind of about working very intensively for a short amount of time and see what you can accomplish. It became popular in the late nineties, beginning of two thousands. And we just happened to call it a little differently. So we call it hack days. At DuckDuckGo, the way that we do that is about three or four weeks throughout the year. We do our hack days. It’s from Wednesday to Friday. So from Wednesday to Friday, we allow folks to just put all their regular work duties on the side, on pause, and using good judgment, of course, and work on anything they want that relates to DuckDuckGo. So full creativity, autonomy, and collaborating with other folks and in other domains. So that’s what it is. Gabriel: Yeah, so a couple things with it. One is we, you do your largest part of this, so tell me what you think about this, but we’ve really tried to encourage people to do it too. So you don’t have to do it. I mean, that’s one thing, you can continue working your normal working day, but we’ve really tried to encourage as many people as we can to participate and also as we’ve grown to collaborate with others. With the idea being here that when you step away for those kind of three days, you know, without the constraints of like regular project scoping and oversight, and you just kind of left to like build from scratch, you can come up with and try new ideas. And especially if you collaborate and cross-pollinate, and as a result, I mean, we’ll talk about this, but a lot of good things have come about it. So we’ve been really trying to encourage people, but I think some people are kind of reluctant to do that. Worried they’re going to fall behind on their work or whatever. So yeah, so maybe you can speak to how we try to encourage people. Julia: Yeah, it’s an interesting part of... So our culture has a lot of autonomy and one of our values is to build trust. So we treat people with trust, we trust folks when they are hired, we trust our hiring process. So we know they’re going to use good judgment, they’re going to put their work on the side if they can, they’re going to keep doing the things that they have to do and balance things out. But it is interesting because as folks come from other organizations, they do have... like some folks, some people have a fear of like, no, I’m going to leave my work behind. I don’t know how this works. Like, is it going to be okay if I actually put it on hold? Thankfully, we’ve been doing it for a while and a lot of people participate. So I feel like after you’ve gone through the first one and you see how many people participate, you’re like, this is actually a big thing here. And it’s cool to do it. So we try to motivate in a way that we build our culture, just like letting people know, like we trust you. We trust you and you can make that judgment call. We’re all grownups here. We all know it’s a business. We all know what we have to do. So it’s, I think that’s the way that we motivate. We also try to ask people to plan ahead. So we remind folks when we post the whole calendar of the hack days in the beginning of the year. So folks already know when that’s going to happen and they can kind of make sure that things that are more pressing in their regular work is taken care of in advance. And we announce a couple of weeks before it happens, so folks also have that just as a reminder. So those are some of the things that we do to motivate them. And they can also, if they’re not able to do the hack days that week, they can actually make it up to hack days in another week. So if that week actually just becomes something like, you know what, now I have to actually focus on my work, I won’t be able to pause things, they can do that in another week that seems more suiting for them. Gabriel: Yeah, I was going to mention that if you didn’t, because it’s a subtle thing that we eventually did. I think another subtle one, but it’s just, it’s not even something we’ve done, but to your point, since so many people participate, is a lot of the leadership also participates. And I think, yeah, and I participate sometimes. And so when people see that, I think it may give more permission for people to do so, you know? Yeah, exactly. Julia: You participate! Yeah, that’s an example thing. Gabriel: And then on the other side of it, I know we’re gonna wrap this up, but maybe not as a good time, is like, you know, I agree, we have a good cadence now of like encouragement and lead up and stuff, but then the end of it is also kind of fun, as like kind of the end of the hack days. So what happens at the end of hack days? Julia: Well, so we do hack days for several reasons, but one of the reasons is engagement. And one of the really cool things about hack days is you have from Wednesday to Friday, for those who don’t know, every Friday at DuckDuckGo, we have an all-company meeting. So we all get together. We talk about company updates. It’s kind of like what a town hall, a traditional town hall call would look like, but with our cool twist. So for hack days weeks, we actually try to, we cancel all the other meetings and that’s the only one that stays. And during that meeting, we have a showcase specifically for hack days. So that week is just about the showcase. We allow folks to talk about what they worked on for two minutes. We actually have to time it, which is kind of, it’s one of the things that... Gabriel: We have a lot of people now. Yeah. Yeah. Julia: I do not like. I’ve been really hard not to interrupt people and to just let them do it, but we are growing as an organization, so it becomes quite challenging as we grow the amount of hack days demos that we have. But during that call, you just get to listen to everything that folks created in three days. And it’s really fascinating because you get to see, well, for me, for example, I’m not in the tech team, so it’s really interesting to see how tech folks are thinking about the product, what are they doing to make things better? And from any other domain, you just get to see how people work and how fast they can accomplish things and how, you get to know more of the products because obviously they’re demoing things. So it’s kind of a win-win even if you don’t participate because you just get to learn a bunch and you just leave that call so motivated and so inspired because you get to see we are really a big bunch of like really smart people who are overachievers. So it’s really crazy what we can achieve like in three days. And it’s just like beautiful to see and you just leave that call feeling proud and feeling inspired and then you get your own ideas from it and you get to reach out to the folks who worked on things that you found interesting and just like talk to them about your feedback on that. So that is really special and I think that is the most special and impactful part of hack days, aside from, of course, the fact that it ends up impacting our products because several things are shipped and also internal processes are improved throughout those projects. So, yeah, it’s really exciting and really beautiful to see. Gabriel: Yeah, agreed. I mean, let’s talk about that last part for a bit. So you can work on anything. We don’t even say you need to work on something that needs to ship. You know, like people can work on kind of pie in the sky ideas or little improvements they want to make. But some people do work on either internal improvements for like work process or development process or actual changes in the product that do end up shipping or spark ideas that end up shipping. And we do encourage that. I mean, so we had one, I’m just thinking of the Duck Tales episodes we did. We did one episode with, I think with Rachel, with the AI, no AI image filter that came out of hack days. Are there any others that jump out to you of like projects we did the last year or so that we ended up shipping? Julia: Oh yes. I love that one. It’s so interesting that you say that because that is one of my favorites, basically, as someone who creates some imaging myself, as someone as an artist myself, I actually really ap

    20 min
  5. Duck Tales: DuckDuckGo browser updates — custom themes and password manager (Ep.24)

    25 MARS

    Duck Tales: DuckDuckGo browser updates — custom themes and password manager (Ep.24)

    In this episode, Peter (Product), Stephen (Design) and Balint (Windows) discuss updates to our browsers, from the most popular custom themes, to why over 40% of our iOS users have made DuckDuckGo their system-wide password manager. Disclaimers: (1) The audio, video (above), and transcript (below) are unedited and may contain minor inaccuracies or transcription errors. (2) This website is operated by Substack. This is their privacy policy. Peter: Hi, and welcome to DuckTales, where we go behind the scenes at DuckDuckGo and discuss the stories, the technology, and the people that help build privacy tools for everyone. In each episode, you’ll hear from DuckDuckGo employees about our vision, product updates, engineering, and more recently, approaches to AI as well. My name is Peter. I am on the product team at DuckDuckGo, often working on our browsers, which we’ll talk about today. And joined here today, I have my colleague Stephen. Stephen: Steven, work on the product design team. Peter: And Balint. Balint: Hey, I’m on the Windows Developer Team. Peter: Awesome, and today we’re going to talk a little bit about our browsers, as I mentioned. So many people don’t know we have browsers. They’ve come to know us through DuckDuckGo Private Search, which of course you can use in any browser. But we’ve for many years offered browsers on iOS and Android devices. And more recently, in the last few years, we’ve expanded that to Windows and Mac desktop computers as well. Our browsers are amongst the most popular in the market. For example, in the United States on iPhones, we are the most popular browser after Safari, which comes built in, and the Chrome browser, which of course many people have come to know over the years. So our browsers are used by lots of different people. When we started building our browsers and as we expanded our browsers to desktop computers, we started to prioritize the features and functionality in our browsers based on sort of two things. One, having privacy at their core. Of course, that’s our brand promise, and we want to deliver on that. But also, we wanted to make sure our browsers were easy to use replacements for the privacy invasive browsers that people have been using for many years. And so we prioritize a lot of features based on what would make it easier to use. We base it on people’s feedback, which we’ll talk about a little bit more. And often internally, we talk about focusing the features we build on the three Ds. We call that dependability, discoverability, and delight. The features should just work. It should be easy to find. And they should be delightful if we’re doing them right. So today, we’re going to talk about a couple different browser capabilities that fall into a few of these buckets that we thought would be interesting to share a little bit about. First, we’ll talk about custom theming. Stephen, do you want to tell us a little bit about that? Stephen: Yeah, custom theming to me is pretty simple. It’s where you can go into your browser and just choose which color you want to use. It can be that green or blue or purple. I think we have a range of colors to pick from. Peter: And why did we build custom theming? Stephen: Originally, we didn’t plan to. We were going to try to keep it simple and just have a light and a dark mode. But we got into it we discovered that people really like to customize their UI. It’s just like a fun way to make browsing more fun and personalized. And they really like that. And it also can help you pick your browser out from other browsers. So it’s really also a functional improvement. Peter: Do you want to give us a little bit of a demo on how that works? Stephen: So we built two ways to get into this. If you’re on the new tab screen, you can open the customized sidebar and we have a theme picker up here with a few colors. You can pick gray or blue or green, purple. Lots of people love purple. And you can also change the theme from light to dark or just to use whatever the system decides. So we support all of these. And if you want, you can also change the new tab background screen to be separate from the rest. And we’ve spent quite a bit of time making sure that this works on all surfaces. So you can see it in the settings and the bookmarks in the history and elsewhere. Also, we have a neat little feature here where you can change the app icon and the dock to match the theme. So that’s a little more continuity and a little more fun added to the feature. Peter: Stephen, were there any challenges in building this as we started to introduce it? Stephen: Yeah, so like I said, we didn’t really have themes on the roadmap when we started. So we kind of had to go back and rethink the way we were styling things and build a whole theme system so that we could apply a bunch of different themes and make sure that it was, we could have more themes in the future. So now it’s all centralized and easy to work with. So we could probably add more or maybe even enable customization at some point, user customization. Peter: And would you say, what’s the response been from our users so far? Stephen: It’s been pretty positive so far. We got a lot of feedback saying, thank you for adding this. And it’s been pretty positive and monitoring people using it. It’s going up. So that’s good. Peter: And you’re saying the certain colors were the most popular, I think you mentioned earlier. Stephen: Yeah, so I think the most popular color is, let’s see, it’s sleet blue, I think. And then the second most popular color was violet. It’s kind of neck and neck there. Personally, desert is my favorite, but it was not the most popular. Peter: Got it. Cool. Where are we going next with it? Stephen: We’re looking into adding a dark mode for web pages that don’t have it, which is going to be pretty interesting. And like I said, we may, depending on if we get more feedback on how many themes we have, how many colors we ship with by default or expand that out to letting people choose their own colors. Peter: Yeah, the dark mode for sites to use dark mode, that’s starting to roll out. We have that on mobile devices, on Android starting to roll out on iOS. And it’s something, as you said, we’re looking at on our desktop browser. So I think our users can look forward to that in the near future, which is awesome. Great. Let’s talk about password management next. Maybe Balint start with what is a password manager? Maybe people don’t realize that in their browsers they have typically password managers. Maybe just grab that at a high level first. Balint: So the password manager is the thing that comes up when you go to a login screen and the browser offers you to fill your username and password automatically. And it’s a critical piece of feature because one of the most dangerous attack vectors used to be credential stuffing where an attacker got hold of your passwords from one site. And if you have been reusing the same password on other sites, they could just brute force. They could just try the same password with your username on other sites and usually get a hit. And the password manager is a perfect defense against this sort of attack because it takes the burden of having to memorize passwords off your back. Peter: That makes sense. Yeah, I guess, you know, over the last 10 years, a lot of you hear a lot about third party password managers like 1Password or Bitwarden or LastPass and more people are using those. But I think it’s probably safe to say that most people use their browser as their password manager. Maybe they don’t even recognize that it is a password manager, but it is, as you’re describing overall. Why did we choose to sort of build it into the browser and start to build out a lot of those capabilities? Is it because that is the easiest way for people to protect themselves, as you’re describing? Balint: I think it matches perfectly well with the 3Ds that we have. So it’s a core part of dependability. You want your online experience to just work, not have to memorize passwords and not have to think about where those passwords are stored. Of course, if you explicitly want to, you can use a password manager, but it is very nice to have a secure default built right into the browser. And we take care of the whole lifecycle. So when you register to a new site, our browsers will suggest secure passwords, which are randomly generated and long enough, take care of storing them, and if you turn on sync, can get your passwords synced across your different devices so you don’t have to re-enter them on every single device you have. Peter: And we’ve had the core capabilities in our browser product for some time. What’s been the user response and maybe describe where we’re going with it next. Balint: So we see on our anonymized dashboards that uptake for these password managers is very high and we keep adding new features. For example, recently over the past months, we have shipped a feature for Android and iOS devices where you can use DuckDuckGo’s password manager as the main system password manager and you can fill passwords in other applications from the DuckDuckGo database. And uptake for that feature has been phenomenal. We have almost half. So a bit more than 40% of our iOS users enabling us as their primary system-wide password manager. We have more cool features in the works. My personal favorite is something that is called TOTP. It is that six digit number you see on certain websites, which is used as a second factor authentication. This is something that many password managers already offer, but browsers don’t really tend to. We would be one of the first on the market to ship this. And it would present a second security layer that is much harder to phish, so much harder to steal than a conventional password. Peter: And do you think we’ve hit challenges in building this along the

    14 min
  6. Duck Tales: Why DuckDuckGo is giving users a choice about if and how they use AI (Ep.23)

    18 MARS

    Duck Tales: Why DuckDuckGo is giving users a choice about if and how they use AI (Ep.23)

    In this episode, Gabriel (Founder) and Zac (SVP, Insights) discuss AI adoption, common user concerns, and why we’re building AI that users can control and customize. Disclaimers: (1) The audio, video (above), and transcript (below) are unedited and may contain minor inaccuracies or transcription errors. (2) This website is operated by Substack. This is their privacy policy. Gabriel: Hello, welcome back to Duck Tales. I’m Gabriel, founder of DuckDuckGo. I have with me today Zac Pappis. Zac: Yep, I’m Zac. I’ve been here for about 14 years now, so I think we’ve had the pleasure of working together for a very long time. And we’re on our insights team, so generally doing a lot of market research or user research and generally trying to give us better insight into what our customers and future customers want. Gabriel: Cool, and yeah, happy to have you. And we’ve been friends for 15 years. But we are going to talk about AI today. You’ve done a lot of research in AI over the last year. And we obviously recently put out this kind of Yes AI, No AI public poll. And we’ve talked about AI a few times on the show here, just in terms of product, but also just more generally. So our approach to AI has been a bit different than the other tech companies. Obviously we’re asking people if they want AI, no one seems to ever be doing that. But more generally our approach is to make AI features that are private, of course, because we’re a privacy company, useful, which I think lots of customers have different opinions on what AI is useful and what is not useful across all sorts of products. And most importantly, I think to this discussion, optional. So we’re making all of our AI features optional. You can turn them off or tune them, actually. We’re going to get into that too. So that’s been our approach, private, useful, optional. And we thought we would talk about, with you today, who’s been actually doing a lot of research with consumers and looking at other research, kind of how those three things kind of thread through the research. So if we were gonna, you know, obviously that’s a big topic, maybe we can start at the highest level and work our way down. Like, yeah, highest level landscape of AI right now, kind of like what are you seeing in all of the research trends that you’re looking at? Zac: Yeah, I mean, generally, I think what we feel just as being consumers and people downstream of a lot of technology is that it’s been pushed on us as well as the general market, despite not really asking if we wanted it. And the market moves so fast that I think we feel the consumer has been left behind and no one really ever got an informed choice or consent into how prevalent AI has become in every product. And we think that’s a mistake, right? So for users and the companies that are building it, that choice as you laid it out is to make these things really truly useful and optional and of course, private. But that’s not what we’ve seen. And I don’t think that’s how most people have felt in terms of the ways that the companies have rolled these products into, or I should say rolled them out to their broader consumer base. Lots of tech companies have put AI overviews into products or turned AI on by default without really asking for consumer consent. It really reminds me a lot of what had happened through the 2010s and the cookie era or social logins or a lot of cases where technology just sort of appeared for people without a lot of demand for it or really a lot of cost to use it or a lack of concern into how exactly their data was going to be used or how would it impact the usefulness of the product they were using. Gabriel: Yeah, that makes sense. I mean, giving them the best intentions, like, even though we kind of just screwed the approach, I think somebody saw a lot of people’s assumptions seem to be it was super useful and everyone’s going to love this. And I think to some degree it’s turned out not as useful for lots of people in different scenarios. And then some people just don’t want it shoved down their throat. You know, they would like the choice. They might use it anyway. So with that in mind, like, I know you actually — so like that’s kind of the general consumer sentiment, but like in terms of like actual adoption, like data points, where are you, what are you seeing right now? Zac: Yeah, so we see that this is everywhere. We also see that people are using it a lot. Some studies that we have looked at and run ourselves, as well as those that we’ve evaluated from external companies and polling services, or things like Pew had run a study in June of last year showing that there is a lot of variability when it comes to who is using AI and who has a strong preference for it. A good example might be that 29% of parents use AI daily, but 15% of non-parents use it. And that’s almost twice the rate from parents and non-parents that are using it. That’s just the type of disparity, I think, that we see across different consumer types. So older or younger, more educated, less educated, there is a real preference and usage gap between these groups. And that doesn’t mean that this product is going to be right or the specific implementation is going to be right for everybody. And so that level of specificity or attenuation for exactly how the product appears to people is really important to us. So despite the fact that you have lots of parents, 30% of parents using AI daily, I think even more, 50% of Americans are actually concerned, more concerned than excited about AI. And that’s gone up over the last few years. So you have these two things happening. You have a lot more exposure and usage of AI and more familiarity with it. But as people are becoming more familiar with it, their concern is going up. And that to us is evident that someone’s really living with a choice that they didn’t really get to make. Gabriel: Yeah. Well, I think one thing is usually said in there and it goes to some other data points I’ve seen very recently, correct me if I’m wrong, but there was another Pew that came out really recently on teenagers and it was about, I think about half the teenagers were kind of regular daily users. And then there was another one, just about ChatGPT usage and it was like maybe 40% of desktop people were weekly users. What I see on that is I do see that’s obviously very significant adoption in three or four years. However, that’s still like majority of people close are not daily users. You know, so like the one headline I take from what you said and what I’ve seen is that yes, there is a lot of adoption, but this idea that everyone’s using it all the time is that narrative just seems not true. And it relates to your concern points. Like the people who are using it are concerned. People who aren’t using it are also very concerned. And so there’s just like generally a building concern. There are obviously lots of different issues people have with AI. So like, how do you like think about that concern? If you kind of try to piece it apart, like, where are people expressing, how are people expressing that concern, I guess, and how is it related to their... Zac: Yeah. I think it’s something that we know pretty well because we’ve seen a similar type of concern with tech overreach before. Just some stats that we have on hand to share because I did look into this a little bit before today. There was a study by Resilience [CHECK] in December, so pretty recent, December 2025, showing 54% of those polled, US adults that they surveyed, have avoided AI-powered features. And in our own polling of US adults, we’ve seen something closer to like 13% of people actively disabling AI search or browser features in their browser to protect themselves. And when we look more deeply at why people are doing that, taking, you know, kind of these extra steps either to tune or to completely avoid the way that AI has been integrated into their products, we see a couple of, I should say, familiar concerns. There is a concern that companies are rolling these new technologies into their products so quickly that they come with new types of privacy trade-offs or data security concerns. And of course, we’ve seen that in the past with Cambridge Analytica and other cases where a lot of data collection can just increase the surface area, the risk surface area for having that data. So when asked why people were avoiding AI or were turning these features off, I think 51% had said they reduced data sharing because of AI, meaning a behavior that they’re taking to proactively not share as much as a result of AI being in the product. And when asked what they wanted, the majority of answers from those folks were opt-out rights, data traceability, and disclosure. None of those things are no AI. They’re consistent more with a theme that would be control, right? Not no AI. They just want to know when it’s being used, how it’s being used, and to have some input and flexibility into where it’s applied to the product. Gabriel: Yeah, I mean, those seem like totally legitimate concerns to us. I think more broadly, like what I’m hearing is, I mean, that’s, privacy is one of the main concerns people have. That’s obviously why we’re building private AI and giving people that control. The second is that people do want options to your point. It’s not just yes or no. It’s, like, yes, some people, but it’s a smaller percentage like you pointed out, totally want to get rid of all AI because maybe they have more objections for various reasons. But it seems like the majority of people actually just want it to be useful and private. So what’s useful to somebody may not be useful to another person. And so if there are 10 AI features, maybe they want to engage with six out of 10. Maybe they want to turn the dials on them a little bit different. And so it’s like this br

    20 min
  7. Duck Tales: Why DuckDuckGo is building its own web search index (Ep.22)

    11 MARS

    Duck Tales: Why DuckDuckGo is building its own web search index (Ep.22)

    In this episode, Gabriel (Founder) and Caine (CTO, first employee) discuss the history of our search engine, why now is the right time to build a full web search index, and how our scale makes us uniquely positioned to ship, learn and iterate quickly. Disclaimers: (1) The audio, video (above), and transcript (below) are unedited and may contain minor inaccuracies or transcription errors. (2) This website is operated by Substack. This is their privacy policy. Gabriel: Hello, welcome back to Duck Tales. I haven’t been here in a while. And I am Gabriel Weinberg, the founder of DuckDuckGo. And I have with me someone who I don’t think has been on Duck Tales at all yet, but you should know, Caine Tighe, who I know very well, who’s the first employee of DuckDuckGo and now our CTO. Caine. Caine: Hi Gabe. Gabriel: We’ve been working together for a very long time. And we’re here today to talk about something we’ve both been working on. Caine more than me, but I’m working on it some, which is our web search index. So as some background, first some background. DuckDuckGo started as a search engine, as many people know, and it was actually started by me. I was by myself for a few years. And the first thing I did was start crawling the web and building a web index. Caine: Yeah, for sure. Gabriel: But you know, I soon realized that that is very expensive, especially as one person. And there were other places to get a web index at the time. And what was more interesting was maybe adding value on top of the web index. So building other indexes, this was a time, this is the mid 2000s, you know, there weren’t, there obviously wasn’t AI, but there wasn’t even really many instant answers on search engines. Caine: I mean, that’s what we were working on together at the very, very beginning. Like we were working on, you know, you had the knowledge graph. It wasn’t called a knowledge graph at a time, but you were doing all the structured content from Wikipedia and otherwise. We worked on some other smaller indices. So yeah. And then actually fun fact, in hiring our backend project is still based on some of the original spam and content farm crawling, like one of the projects is based on some of the spam and content farm crawlers that you originally wrote. So that lives on 15 years. Gabriel: Yeah. So we were doing lots of indexing and lots of crawling. Yeah, exactly. Just not, you know, we started, but then we stopped doing a full web index, but just as examples, right? We started like the code that you were talking about indexing Wikipedia, which became our knowledge graph, you know, which is, powers a lot of answers, which also we used when we started working on AI answers. We’ve been doing local indexing for, you know, over a decade, local businesses and things like that. You know, then all sorts of kind of niche indexes that involve some crawling like lyrics and things like that. So indexing technology is not new to us, despite what some people say about it. Sometimes we do lots of search indexing, but we hadn’t been doing a full web index until relatively recently, last few years-ish. But now we are. And so the question is, the questions and why you’re here, and we’ll talk about it for a few minutes, is kind of why, what’s going on, how, all the main questions, which we’re obviously not all gonna answer today, but we can start with, I think, kind of the why, but why are we well positioned to work on this? So to speak, and you’re kind of at the center of it, so I think you’re a good person to ask. Caine: Yeah. I mean, I think, the why now is a mixture of like our needs. Like we want to support our own AI use cases. That’s we have two primary agent, agent driven products out. Search Assist, which is on the SERP, search engine results page, duckduckgo.com. And then we have Duck AI, which is our chatbot. And both of those products are hungry for this kind of data. So it, yeah, it just makes sense for that. Gabriel: Yeah, in particular, right. You could maybe talk percentages, but like there’s some percentage of search results now, what is it like 25%, I think that have Search Assist answers. And then, you know, the percentage better made for Duck AI, but some significant percent call the web, 15% maybe. Caine: Yeah, I always do. I do, I have my numbers based on, absolutes make more sense. Yeah, yeah, just, yeah. Gabriel: You know what? Bad question. Ignore numbers. Doesn’t matter. Good percentage of queries and Duck AI prompts require web search. And so we need a web index for it, essentially, right? Caine: Yeah. I mean, I think on the chatbot side, it’s really good, like to ground. If you’re deciding whether or not to ground and you’re on the line, you should probably use RAG, retrieval augmented grounding, and go out to a third party data set. For us, raising the standard of trust online. We want to do that because the more that you ground, it’s known empirically, the answers are better. So we err on the side of grounding where I think maybe not everybody does. So it’s really good that we need to build our own index in order to be able to accommodate that. So that’s kind of some of the why now. And again, it’s on Search Assist and it’s on Duck AI. One of my favorite parts about this whole thing is like, we’re very used to working for customers, like our end user. For the search index, duckduckgo.com itself is the customer. A very nuanced, unique thing for us to be able to serve ourselves, which creates this really tight feedback loop internally. So it’s been cool to like use our own and we are live for, you know, some amount of the traffic today. That’s just growing day over day for these use cases. Gabriel: That’s a good point because like, I think in terms of like our position, well, positioned to do it is, you know, being live, you know, maybe we talk about that a little bit, but like that creates a feedback loop that we have that a lot of people don’t have because we have, you know, many, many millions of people using our search engine and now Duck AI. And so we’re getting constant feedback about the relevancy of the search results that we’re serving, not to mention the fact that we have almost 20 years of evaluating relevancy ourself on our own search engine. Caine: Exactly. Yeah, exactly. So like, humans are unsurprisingly and appropriately more, more critical of results than agents are. So it kind of creates this higher fidelity feedback loop because, you know, through our, through anonymization and whatever else, like we can privately understand what is most relevant on the internet for customers and users. And that really helps us to, positions us to be pretty competitive in the space quickly. So like, I think that’s kind of interesting and it’s exciting and like the true DuckDuckGo way as you and I know well, like we like to ship stuff. And so it’s been really cool to, yeah, like it’s just been really cool to be using it already and in production, our own index. And it creates that flywheel and we could, you know, use buzzwords like reinforcement learning and this, that, and the other thing. But at the end of the day, it’s just really the relationship of consuming your own internal API product. That’s the flywheel and allows you to like establish relative priority really quickly and be like, I ran this experiment. Like we really think this query set is going to be well suited to our own index. And then we tried and we’re like, we’re not working that well on that. Let’s move to this other one. And then it just changes the game for how quickly you can iterate, which has been really exciting for, and I know the team’s really excited about it too, because engineers like to ship things. So that’s been cool. Gabriel: Perfect, I think that’s a good intro. But let’s do, to your point about buzzwords, let’s do a few more buzzwords in terms of like, just give us the broad tech flow, like, you know, without getting too deep into anything, but just to give people a sense of kind of how it works and then maybe. Caine: Yeah, so kind of the way that I think about this is like a little pipe or a train or whatever. You have your frontier that kind of is the web that you’re looking to crawl, like, because you have to pick what your frontier is. Then you crawl that. Crawling, all of these components are extremely complicated by themselves. To crawl, it means like, you need to crawl politely. Some sites want you to crawl, some sites don’t want you to crawl. And so to be a good trustworthy netizen, you have to respect those things. And that’s an important part of crawling. It’s also important to have the bandwidth and the throughput to crawl at the scale that you need to crawl. And so fortunately for us, we’ve had a lot of experience with that, so we have that. The rendering side, you have to, when you fetch content, you have to render, including JavaScript and everything else like that. The only way to get the content is to literally run the whole webpage. Otherwise, like you get no content. So that’s quite an expensive process. So we kind of do a naive approach and then a more complicated rendered approach. Then you have content extraction, which is like the next step, where you think about your title, your description, your headings, metadata, main body stuff, where you extract the content, what the page actually means. And then we’re very fortunate in today’s day and age to have semantics. So semantic search is a big part of the pipeline. And what that means is what people are calling embeddings. And you calculate embeddings on extracted content. And then we use a database, which I quite like, called Vespa. And it’s all ingested into Vespa. In my opinion, kind of your indexing, your ingestion, your features, how you calculate those things, and how they describe, that’s a big description of your product. Because i

    13 min
  8. Duck Tales: Browser onboarding — why first impressions matter, user education, and the role of personality (Ep.21)

    4 MARS

    Duck Tales: Browser onboarding — why first impressions matter, user education, and the role of personality (Ep.21)

    This episode, Mary (Associate VP, Brand) Beah (Chief Product Officer) and Bobby (Director, Product) discuss how DuckDuckGo’s browser onboarding was designed, why it matters for a privacy browser, and how Dax’s personality helps users feel confident in their protections. Disclaimers: (1) The audio, video (above), and transcript (below) are unedited and may contain minor inaccuracies or transcription errors. (2) This website is operated by Substack. This is their privacy policy. Mary: Hi everyone and welcome to Duck Tales where we go behind the scenes at DuckDuckGo and discuss stories, technology and people that help build privacy tools for everyone. In each episode you’ll hear from employees about our vision, product updates, engineering and our approach to AI. I’m Mary McGee, I work on brand and marketing here at DuckDuckGo and I have two fellow product folks here with me today that I will let introduce themselves. Beah, why don’t you start? Beah: I’m Beah, I’m on the product team. How was that? Mary: I mean, I couldn’t have done that. You did great. Bobby. Bobby: This is stuff. I’m Bobby. I’m also on the product team. Mary: Wow, this was good. Beah: And furthermore, we both have the word burger in our last names. Mary: That’s true. Bobby: This is true. Mary: We are here to talk about browser onboarding today. And we have both Beah and Bobby here as folks that have worked on onboarding over the years. We can take you back to its origin. We can take you to some of the new changes. That’s kind of what we’re gonna do here and talk a little bit more about it. So why don’t we jump right in? I think, you know, why don’t I ask this to you Beah? Why don’t we start with you? What do we mean by browser onboarding? Like what is effective onboarding and why do you think it’s important for a privacy browser to nail this? Beah: Yeah, so I think of onboarding as like, basically, the user’s first experience getting to know the app, what is this, how do I use it, and potentially beyond that first experience, could onboarding could last over multiple uses of the app or multiple days. But like the thing that you need to do to get a user from interested, sure, I’ll download it to like, I know how to use this. I know what this is. I know what the value is to me. I know that I want to keep using it ideally. And it’s really important, I think, for probably any app because many, I think for most app categories, the majority of users become non-users after one initial trial of the app, if not the majority, certainly a lot. And so that is a very important moment to show users what you are and what value you can bring to them. And to your question about for a privacy app or privacy browser, I think one of the challenges is that our apps are browsers with a built-in search engine, and all of that should just work. And the privacy protections that we’re providing, for the most part, aren’t really visible for intentional and just organic reasons, like we don’t want to get in your way, and like when, like the absence of bad things is just kind of invisible. So like, you know, I think it’s important for us in particular to like communicate in onboarding what actually is happening when you use the app. Mary: So there’s like an explanation component of like how to use the app. And then there’s sort of a first impression, like this is who we are, this is how you should feel using it. Bobby, like can you talk a little bit about the role of the more like emotive kind of relationship in onboarding? Bobby: Yeah, ultimately, there are, I think, stages to actually understanding and feeling connected with an app. And the first one is just knowing what it does. But there are stages beyond that which are feeling connected with what it does and really feeling like you understand it through experience, not just in theory. And so we try to reveal both through the tone with which we describe things and just really emphasizing demonstration and nudging you to try our features and see them and experiencing them for the first time and let you draw your own conclusions about whether that serves you. Mary: There’s this line in our current onboarding that’s like, it’s something about a tracker losing its wings. Beah, has that been in there since the beginning or is that like... Beah: Well, yeah, since I’ve been working on onboarding, which is like seven years maybe now, it was one of the first big projects that I worked on after I joined DuckDuckGo. Yeah, I think that, I mean, that copy was part of the, I think every time you browse with me, a creepy ad loses its wings. I think that copy came out of the very first version that we pushed live. And yeah, I don’t know. I think it actually hits with people. I mean, maybe, probably not all people, but just all things. I just remember, first of all, the early versions of that onboarding, some of the copy was super silly. I was hand sketching things and just saying whatever I wanted. And then our copy team had a little conversation with me and was like, hmm, maybe we can dial it down a smidge and I was like okay yeah maybe. Mary: It’s, yeah, but it’s a good example of what Bobby you’re mentioning and Beah, your point. Like, it’s like, how do you talk about what the product does, but do it in a way that develops that sort of emotional connection. And it’s a funny testament that it stayed around this long. Since you, go ahead. Beah: I was gonna say, I remember like user testing in like doing video user testing sessions with some of the early prototypes, which were like messy and weird and like hearing participants like laugh out loud, like chortle, say like wow and shriek or like, get mad. Like just have like an emotional reaction that like I definitely had not seen in user testing other components of the app. And I remember being like, I was still relatively new to DuckDuckGo. And I was like, this feels like it’s like doing something different, but maybe I’m just like, want it to feel like that. And I remember sending the videos to our like, kind of head of user insights and being like, am I wrong? Or is this like, are people like really having a reaction? And he was like, no, that’s yeah, they’re spitting their water out. Like, yeah, that’s interesting. Mary: A chortle. Haven’t heard one of those in many, many years. I mean, since you mentioned it, Beah, like what was onboarding before? So we were talking about onboarding as this like personality, emotive. We can get into who Dax is as we talk about this, but I’m curious, like when you started, when you were doing these explorations and these videos, like what did we have and what were you, what sort of made you start doing this? Like why did you start the exploration that you did? Beah: Yeah, it’s funny because we had these, I think the onboarding that we replaced was these tooltips that popped up as you moved around the app that were like, this is the fire button, it burns things, this is where you type, I don’t know. And I realized in retrospect after we launched this that on paper it was not that different. We went from tooltips explaining some of the features of the app to what we call Dax dialogues, our mascot Dax telling you things, but there were just a lot of details, I think, that made it feel very different. You could almost imagine the same onboarding coming out of the same written spec, like both, sorry, both very different onboardings coming out of the same written spec, but in practice and application, they felt very different. Mary: Hmm, that makes sense. Do you have, I know you have maybe some images to share at some point, but yeah, we can always throw these in in post. But I want to, if there’s, yeah, if you want to share, we can always take a look. Beah: Yeah, yeah, yeah, I can share things. I don’t know. Wait, okay, I think I can share things. Oh boy, I gotta do settings. You talk amongst yourselves. Mary: In the meantime, Bobby, I’m curious, like you came into onboarding. So Bobby came in and was sort of tasked. It was maybe your first project of how can we improve this thing that is working really well, which is not the easiest task. I’m curious, like, what was your first impression? What did you think was working? Where did you want to focus your time? Bobby: Yeah, I think, well, we’ve been talking about the feeling that we were trying to evoke from people. And one thing that immediately was already working in the version that Beah had previously done is helping you feel confident in the app about how to protect your privacy. And I think that’s a pretty high bar. That’s kind of a challenging thing. Privacy protections can be this vague, intimidating concept, but the tone and particularly using Dax’s voice to deliver these messages was not only unique to really any browser that I had seen, but certainly unique for a pretty serious topic and something that is somewhat technical to understand. So the first thing that stood out to me was that lighthearted approach and the lighthearted language while still being very clear that you can be confident that your protections are active and working for you. And then I guess the second thing I mentioned a little bit earlier, which is just really focusing on demonstrating and helping you experience things. The aha moment for me, and I think a lot of the user tests that we observed was when you see the trackers that are being blocked on the first page you visit and it names the companies. You can find that on any page in DuckDuckGo just by clicking on the shield in the address bar, but to reveal it and the first time you visit any page with trackers that are blocked, you see that list right at the top of the screen. And I think that is really illuminating and eye-opening to understand that it’s actually working and that these trackers might be even more prevalent than you think. And they’re probabl

    22 min

À propos

Behind the scenes with the DuckDuckGo team — sharing insights on product, engineering, leadership, and AI. insideduckduckgo.substack.com

Vous aimeriez peut‑être aussi