260 lines
38 KiB
JSON
260 lines
38 KiB
JSON
{
|
|
"schema_version": 1,
|
|
"note_id": "bPprGg5DTye9H-RQXkwMuw",
|
|
"title": "All-Company Meeting",
|
|
"meeting_date": "2026-10-23",
|
|
"source_url": "https://us01mynotes.zoom.us/bPprGg5DTye9H-RQXkwMuw",
|
|
"transcript": [
|
|
{
|
|
"time": "21:29:37",
|
|
"speaker": "John Boileau",
|
|
"text": "And this way."
|
|
},
|
|
{
|
|
"time": "21:30:59",
|
|
"speaker": "Gabriel Weinberg",
|
|
"text": "Hello, everybody. We have a few quick updates that we're going to mainly do the Hack Day's showcase today that Julia's leading. Everyday AI Guild. That's Zac. Okay. Yeah, there it is. All right. Yeah."
|
|
},
|
|
{
|
|
"time": "21:31:17",
|
|
"speaker": "Zach",
|
|
"text": "Yep. Uh, yeah, sorry. Um, yeah, so just quick announcement there. Uh, Julio's moving to the, uh, DRI for that, um, and Mario is going to be, uh, the secondary. Um, so they've both been pretty heavily involved in, uh, that process, and we're excited for this transition."
|
|
},
|
|
{
|
|
"time": "21:31:40",
|
|
"speaker": "Josh Frank",
|
|
"text": "I believe I'm next. So hey, everybody. I'm taking a quick break from the gym where you can frequently find me to tell you about random access learning. Just put the link in the chat. We have a session Thursday next week. 12:00 PM Eastern time, I think that's US Eastern, on corporate sustainability and being carbon negative in the AI era. So please, everybody, come to that if you can."
|
|
},
|
|
{
|
|
"time": "21:32:17",
|
|
"speaker": "AC",
|
|
"text": "Everybody Ă last week we had our away mobile browser experience. Assessment our goals days a same they car our Browser mobile, browser experience from good to great in the previous cycle. We ship the android. And dialog."
|
|
},
|
|
{
|
|
"time": "21:32:55",
|
|
"speaker": "AC",
|
|
"text": "Internal the keyboard now always on the new tape. Device to device migration. We want to ship this before black friday. A ui that s case for split. Screen. And we want to what support for many bar. We are going to start also the new tupage experiment for new users. And they think next these mark."
|
|
},
|
|
{
|
|
"time": "21:34:04",
|
|
"speaker": "Mark Ingram",
|
|
"text": "Hey, everyone. I'm Mark from OL, the Desktop Browsers Objective. Some exciting news this week is Ivy is taking over as the ODRI, and I'll be moving on to the advisor role. I'll keep it short because I know we're on hack days this week, but I also, just before introing Ivy, I want to announce my new midlife crisis to everybody, which is. I decided to start learning the drums, and I can see Carl's excited face on the screen. Okay, that's my midlife crisis update. Over. Ivy, do you want to say hi?"
|
|
},
|
|
{
|
|
"time": "21:34:31",
|
|
"speaker": "I(",
|
|
"text": "Yeah, I'm just really excited to take over OL, and stay tuned for some exciting news about extensions on macOS coming really soon."
|
|
},
|
|
{
|
|
"time": "21:34:43",
|
|
"speaker": "Julia Abreu",
|
|
"text": "All right. Congrats, Ivy. That's exciting. So I'm kicking us off today. I'm going to actually share my whole screen because I'm going to be moving from one side to the other. So I have two demos today. So we have the Julia special, two demos. Um, my first demo is… since the meetup, I've been thinking about how, um… We need to, like, I've been thinking about the new objectives that we have about word of mouth and how we talk about DuckDuckGo and how, especially for ducklings, is hard to answer some of the questions that we get once you first join DuckDuckGo. So I wanted to create something that helps them answer those questions and understand our products better. So I do want to shout out Ben Smith because he created this. I just basically said the idea. Um, so this is an artifact, um, and you will see the different tabs here, so you have different questions per tab. Um, and then you have the specific questions here, which you can click on and see them in writing. Or, if you want to, you can actually listen to it as. kind of like a podcast episode. Um, so… let me know if you can actually hear this. I'm just gonna play a couple of seconds. Episode 1. The Big Picture. Last week, a friend of mine looked up, is it normal for your knee to click? Just once. For the next week, every website they visited tried to sell them knee supports, walking sticks, and one of those… So you get the gist of it. I hope you got to hear that. Um, so this is still a work in progress. We're going to be creating this content. Um, I really didn't want to… to be in audio, because I feel like if you get that in writing, it's different explaining as a human. So, this is what we're building. And then, the second thing I'm building… dang, the Zoom… The Zoom thing doesn't let me go to the other one. Okay, here. So this is the second thing that I built. This is coming from feedback from people who went on leave, which was around how to catch up with everything that had been happening since they were gone. Um, so this is a how… what do you miss? Uh, so basically, you add here the date you started your leave, and then the start of the date you return. Um, you click catch me up. Uh, it takes a couple of seconds, but it basically gives you, like, a summary of a bunch of things that happened while you were out. So, um… company-wide posts, uh, what was published, what was answered in odds and ends, so all the Q&A, which objectives are up-to-date, like, which assessment was the last thing, and what we're working on right now, uh, things that were shipped, uh, also, like, new AORs, retired AORs, so here, as you can see, like, one, um, sample of, like, the announcements. It gives you just, like, a summary of all the announcements. Um, and we also have a people tab, so, like, new hires, which teams they are in, uh, people who left, and then it also shows you, um, green bow ties, spotlights, in case you want to catch up with all the spotlights that were posted that. Um, the time you were away. I do want to add a tab for specifically functional team updates, so, like, if there's a new process or anything specific to the functional team, I'm just not sure yet where to get that information from. Um, so… working on that. If you have suggestions, or if you would like to be… try out these things, let me know. I would love the feedback. Um, and now, this is it for my demos. Now I have a demo by, um, Robert, who couldn't be here. So, also, please ping me if you can't, uh, hear this. Hello, hello, hello. I worked on three hacks this time around. I'll try to get through it all quickly. The first is to do with increasing Duck AI prompts. I thought that maybe a nice way to do that would be to add a bit of discoverability into our browser. So if you are looking at a foreign language page, then you get a suggestion to translate it. Can someone, uh, unmute themselves and just let me know if you can hear this? Because I'm, like, concerned because I can't see that. Okay, thank you."
|
|
},
|
|
{
|
|
"time": "21:38:59",
|
|
"speaker": "Anne Hildebrand",
|
|
"text": "Yes."
|
|
},
|
|
{
|
|
"time": "21:38:59",
|
|
"speaker": "Zaahir Moolla",
|
|
"text": "We can hear."
|
|
},
|
|
{
|
|
"time": "21:39:02",
|
|
"speaker": "Julia Abreu",
|
|
"text": "And, um, so yep, that sends the page content off into Duck AI and translates it. We already had this feature, but, you know, just adding the prompt up there. That works. And there's lots of… this is very exploratory. There's lots of different ideas along these lines that we could look into, such as, if it's a long article, maybe we, um, tell the user how long it'll take and prompt to summarize, or on a shopping page, we could prompt them to, um, compare. Uh, the cool thing is that these suggestions here, these three options, that's all generated by our local LLM, so it's completely private. Um, nothing's, uh, hitting our servers until you click on one of those. Um, most recipes too. And this is a cool one, if you, um, are looking at an event, you can ask DuckAI to compute the event details. And I added this, um… dynamic UI, this card at the bottom of the Doug AI answer, and it gives you a button to add it to your calendar. Uh, one cool idea is, if you're looking at a privacy page, it could offer to help the user understand what it is they're agreeing to, so very within our brand. And another cool idea, just because YouTube features always seem to perform really well for us, is we could, um, prompt the user to, uh, do things using the transcript that appears in YouTube here. So this actually extracts the transcript from this panel. And it can send it to DocAI. Okay. Hack number two is, um, fixing a personal frustration of mine. So, I'm a Raycast user, and I'm always doing things like… um, converting currencies and, like, complex queries like this. And, uh, it frustrates me to no end that, um, that doesn't work when you plug it into DuckDuckGo. And so what I did is I had Claude reverse engineer the raycast calculator, and I've plopped that into SERP, and so now you can, um, jump into SERP running on this test machine, and do complex queries like that. And there's all sorts of things you can do. Mixed currencies is kind of cool. Um, one thing I use a lot is, like. Adding different units. And there's also, like, sort of… Complex math bits that are kind of fun. And the way that I handled this in the UI is that —. The simple calculator stays if you're doing a simple expression. And same if you're just doing a regular. conversion, then we get the existing UI for that too, because it's nicer since it has the dropdowns. Okay, and my third hack is yet another frustration that I've had for a while. So here we are looking at my phone. Oops. And, um, so we've always been able to switch tabs by swiping on the address bar at the bottom there, and that is quite nice. But what we haven't been able to do is swipe up to go to the tab switcher. And so I added that, and it turns out that Bartosz had already been working on this, so he has helped me a lot with this. Thank you very much. And yeah, it's really nice that you can… it tracks your finger, so you can kind of drag out halfway. Real smooth. And Bartosz added, you can drag out halfway and swipe to the right. Those are my hacks. Thank you very much. All right, and we're not done yet. I have another one by Pablo. When people want their data on another device they don't go looking for things and sync it back up doesn't really tell them what it does. Chanel's usability insight report made that very clear. And the problem is getting bigger. Zac AI chats, uh, can easily be lost. Um, the more stuff we add to Zac AI, um, the more. things that are worth keeping, Sink and Backup will just not be enough. So, we are proposing MyTacticGo, a private account. It's private because it's from us, and it needs no personal data to sign in, so no email and no password to remember. It is encrypted, your data is backed up, unsynced, and we show what's ready to go, like 100 passwords or 244 bookmarks, so the value is very concrete. On desktop, MyTacticGo lives in the toolbar, where people actually look. It lists what will be synced, like your chats and passwords and bookmarks, but it also brings your subscription. So, this can become, actually, your home base, and it shows your plan and your connected devices, so it is a great opportunity for… for dependability, um, and cross-promoting other… other features and understanding our… our ecosystem. All in one place. That's it for me, and I think we're. It's Andrea next."
|
|
},
|
|
{
|
|
"time": "21:44:01",
|
|
"speaker": "Andrea Soto",
|
|
"text": "Okay, so I was thinking that we want to increase word of mouth, and stickers are a great way to do it. We also have our Easter egg. Um, logos, that would be great to… sell as stickers, so I added the option next to the logo when you click it to be able to buy the stickers on desktop and mobile. Or $2, so… That's my hack days project. Valent, you're next."
|
|
},
|
|
{
|
|
"time": "21:44:35",
|
|
"speaker": "Balint Farkas",
|
|
"text": "Hey, folks. So I'm working on the DuckDuckGo Chromium browser, also known as Duckium. We use Agentic workflows all the time, and it can, of course, see the code, but it cannot see the internals of the browser. So it can see the code, it can drive the browser via Chromium DevTools protocol, but it cannot see our own services like Sync. pixels, burn, feature flags, and so on. So I've exposed them to AI. You can just connect to the browser from your own AI terminal and then ask stuff, for example, why can't I see sync and backup in the menu? It should be here. The answer is because the feature flag in this live session isn't on. Or you can ask spicier stuff, such as performance search for I love cats, which it can do via Chromium DevTools protocol, and observe what pixels have been fired, which comes from the internals observation that I just added. And you can correlate these things and observe the browser's behavior as it happens, which will enable us more sophisticated debugging scenarios, and what's more important, more sophisticated Agentic workflows. That's my first thing. And the second thing is for Mark Sabu, who is out currently, and I'm sharing his video in a second."
|
|
},
|
|
{
|
|
"time": "21:45:52",
|
|
"speaker": "Andrea Soto",
|
|
"text": "Thank you."
|
|
},
|
|
{
|
|
"time": "21:46:02",
|
|
"speaker": "Balint Farkas",
|
|
"text": "Should be running. Hey folks! I'll walk you through the life of a Windows Release DRI in the next two minutes. After the last quick one days, we iterated on the design together with the release team, and I spent the last two days building it. The Windows Release Command Center. Until now, all of this was manual. We kept Asana and GitHub Actions in sync."
|
|
},
|
|
{
|
|
"time": "21:46:10",
|
|
"speaker": "Andrea Soto",
|
|
"text": "Ooh."
|
|
},
|
|
{
|
|
"time": "21:46:22",
|
|
"speaker": "Balint Farkas",
|
|
"text": "and dispatch every workflow by hand. Now the ODRI can check the state at a glance, and the release DRI can get through their duties by following the steps in the app. This is the state of every channel, which build is where, and at what rollout percentage. It all comes live from Asana. No more opening 5 tasks and 3 workflow pages to figure out where we are. The calendar shows what's coming up, branch cuts, rollout steps, so nobody gets surprised by a deadline. Clicking the release opens the DRI view. It shows the next section and flags anything that needs attention. Say we want to take 177 to 100% stable. I click this button and it dispatches the workflow. Because it's at 100%, the app asked me to follow these steps and upload it to the Microsoft Store. But I'm actually the DRI of 176, and I will need to do a hotfix. Hotfixing used to be the most manual part. Now I just pick from develop. Like PES, a PR that needs to be hotfixed. and just displays the bot with creation, which will actually just do this. I already done that to not block the demo. Umm. So I will need to upload the release notes. It loads the release notes automatically. So I can just approve it and upload. And now that it's done, I can just go back and simply follow the remaining steps to finish the release. And obviously, every flow syncs back into Asana, so the runbook still works if the app is down. That was Release Command Center. I hope it makes release weeks a little calmer and gives every DRI back some time for actual work. Oh, and sorry about the editing. I'm a dev, so this video was shipped as an MVP. Thanks, Odo! That's it for me."
|
|
},
|
|
{
|
|
"time": "21:48:10",
|
|
"speaker": "Alex Martemyanov",
|
|
"text": "Yeah, hey. Hey, everyone. This is me, Alex. There are so many new faces. I'm pretty sure some of you have no idea who I am. Which is fine, sometimes I'm not entirely sure myself. I'm Alex, from the Apple team, working on our macOS browser. And I thought I'd make it greater again. What would you expect from a macOS browser? During this hack… in the hack days. They say Julius was a hacker, performing live demos, chewing water into wine, accepting some cookies. Not bad for a hack days project, right? All right. Showtime. Could you please stop sharing?"
|
|
},
|
|
{
|
|
"time": "21:48:55",
|
|
"speaker": "Mark Ingram",
|
|
"text": "Thank you, Alan."
|
|
},
|
|
{
|
|
"time": "21:48:56",
|
|
"speaker": "Alex Martemyanov",
|
|
"text": "Got it."
|
|
},
|
|
{
|
|
"time": "21:48:57",
|
|
"speaker": "Balint Farkas",
|
|
"text": "Yeah, yeah, yeah, I'm trying, uh…"
|
|
},
|
|
{
|
|
"time": "21:48:59",
|
|
"speaker": "Julia Abreu",
|
|
"text": "It's a very…"
|
|
},
|
|
{
|
|
"time": "21:49:03",
|
|
"speaker": "Alex Martemyanov",
|
|
"text": "Yeah. Okay, first try failed miserably. Let's try again. Yeah, Kira. Hello. I hope you can hear the sound. Yeah, hope you can hear the sound. But seriously. What's happening to the world? AI is everywhere, too much information, too much liquid glass and beige. Sometimes I just want to burn it all down. Like this. Yeah, much better. Let's do it again. Where shall we start now? Sometimes I just want to run away back to something familiar. Or maybe look for some happiness. Or maybe I just need to talk to somebody. Yeah, maybe the problem isn't the internet. Maybe it's just how we see it. I wish I could change the whole settings of my life. how it appears. What if we could go back? Somewhere like this. And buttons look like buttons. Windows look like windows. Smells like Christmas morning, hot chocolate and mandarins, back when everybody was still around. Remember, on the websites. had some personality. When every page told you someone had paid attention to it. And speaking of the little things… You see? Even the tooltip. Respect your personal space. Your privacy. You just need to start and ask for some help. Here we are. Your protection, your privacy, your peace of mind. Thank you. That's all from me."
|
|
},
|
|
{
|
|
"time": "21:50:57",
|
|
"speaker": "Deepak",
|
|
"text": "I'll go next. Let's add the photo. Cool. Clearing my screen… What? I didn't work. Trying again. Okay. Can you all see my screen now?"
|
|
},
|
|
{
|
|
"time": "21:51:30",
|
|
"speaker": "John Boileau",
|
|
"text": "Yep."
|
|
},
|
|
{
|
|
"time": "21:51:31",
|
|
"speaker": "Julia Abreu",
|
|
"text": "We can see it."
|
|
},
|
|
{
|
|
"time": "21:51:32",
|
|
"speaker": "Deepak",
|
|
"text": "Okay. Cool. Playing a video, if you can't hear the audio, please. DuckyEye can generate a lot of great images, but only if you know exactly what to promote. ChatGPT, Gemini, and other tools have solved this with pre-existing templates for images, which has also led to a lot of virality for them. Well, now we have them too. If you go to new images, we have 15 of these different templates ranging from anime to 80s portraits to caricatures. Clicking on any of them populates the input field with the corresponding prompt. Some of them require you to upload a reference image, which is indicated by this icon, and then a user is notified to do that with this tooltip. I already did this one. So if you look at this, this was the reference image and I think it did a pretty good job. We also prompt the user to try more styles, so they can click on any of the, uh, styles, and then the original image gets, uh, pre-filled here with the. Uh, a defense bill. Another thing that really irked me was that after all of these images were generated, they were scattered across charts, and there was no one place to see them. Well, now we have this My Images tab. where you can see all of the different images that we have generated. You can delete one or all of them from here, and you can also go to the chart, where. they were generated, or use them as a reference for your next image. One cool thing that we do here is, if you do delete this image, then in the original conversation, where this was generated, we have this image deleted placeholder here, so that the continuity of the chat is not lost. That's it. Thank you. Yeah, that's it. Thank you."
|
|
},
|
|
{
|
|
"time": "21:53:20",
|
|
"speaker": "DR",
|
|
"text": "All right, so I go next. Let me see. Here. Can you see the screen? All right. So, uh, starting next Monday, our internal release, actually internal users, uh, in the internal release, will have, uh, the possibility of installing from the web, uh, Chrome Web Store 1Password. And this video showcases how it works, that it connects to the desktop app that you have installed. You can see that it works for registering your email and autofilling your password for it. You have to unlock it first, though. You can see here how it works with Touch ID. Um… You can fill the login, password. Then it's going to ask you to save it. You can also, of course, use it to log in to a site, those details. So you guys see here. Then it also works for passkeys, where you can register a passkey for one of the accounts that you already have in 1Password. Um… Again, it's going to probably ask for authentication. And then use that same passkey. To log into the site. In this example, it didn't ask for additional authentication because it was so close to the previous one, but it's working quite nicely. And we'll be posting an announcement with details on how you can provide feedback for this. I said it's quite complicated on the technical side. Thank you. Hold on."
|
|
},
|
|
{
|
|
"time": "21:54:58",
|
|
"speaker": "AO",
|
|
"text": "Hey, Elle. This is a demo that Alex, Elle, and I did. So double Alex demo. or DACAI artifacts. Hey everyone! During Hack Days, we explored DACAI artifacts. Documents, presentations, and visuals. But you know what? It's boring, so here's the twist. This presentation was built entirely in DACAI. See? It's right here, inside the chat. And you know what? I can even download it as a PowerPoint file. Now check this out. Let's ask how much I could save. I get an answer, but only for this one case. Different numbers, we need to try again. Or I can get an app that does that for me. Duck AI builds it right here, next to the chat. You can watch it come together. Not a code block, not a screenshot, a real working app. Now I can change the amount, the time, the rate, and it updates instantly. Have a PDF? You can turn it into just about anything. Study notes, a brief, key takeaways, whatever you need, as a document. You have full control over your doc and markdown. You can also let Duck AI rework it. When you are done editing, you can now export your doc. With Artifacts, you can build your own website too. If you want something different, you can just point DuckAI at it and ask for an edit. Every version is saved, so if you don't like your change, you can go back in one click. Artifacts also work well with our browser features. Let's say I have a really long article, and absolutely no desire to read all of it. Attach the top, and Dakia will summarize the main takeaways visually. Just a few seconds, and it's ready, clear, structured, and much easier to understand. And of course, artifacts work great on mobile too. Try them yourself! That's it. Thank you."
|
|
},
|
|
{
|
|
"time": "21:57:18",
|
|
"speaker": "Gary K",
|
|
"text": "All right, I'm up. Let me share with sound. a video… Here we go. Any time there is an incident, the first question is always, what changed? And the answer is potentially in a lot of different places. So I've created a command line tool that will aggregate the events that are likely to be interesting for anyone investigating new behavior. What changed is a tool that can access Azure activity logs, Asana deployment plans, Jenkins jobs, GitHub pull requests and actions, REX commands, and Mattermost notifications. Because there can be a lot of data in these sources, the tool ships with default settings that are designed to give high signal-to-noise ratio. These settings can be overwritten via a config file. or a runtime flag. Users can search backwards from now or over a specific window of time, from minutes to days. There are a host of flags designed to make it easy to use. Users can opt in to format the output as JSON and perform further filtering. and transformations using JQ. What changed uses your own credentials, so security posture is maintained. What Changed is available now at www.duckduckgo.com/gcurtis/whatchanged. Thank you. Like and subscribe for more great content. Thank you."
|
|
},
|
|
{
|
|
"time": "21:58:52",
|
|
"speaker": "Tom Strba",
|
|
"text": "Nice. Hey everyone. So over the last couple of weeks in OJ and OM, we have been trying to build tools for Duck AI. What does it mean? We would like Duck AI to be able to get context automatically from your browser. And not only that, we would like to. Duck AI to be able to control the browser. So, during hack days, I tried to put all the pieces together, and uh… I would like to show you a proof of concept that I managed to build, so… Let's say I have, uh… Couple of, uh… shoes I am trying to buy. And I would like Duck AI to recommend me which shoes should I buy. So… I will ask you. Which shoes should I buy from all these options? And I'm not providing more context. It will basically get the list of my tabs. It will read the content and it will recommend me, oh, this is the best for speed for daily trainer. whatever but this is not where the fun ends this is where the fun starts so how about now we ask Duck AI. to buy our choice. So for example, buy me stride arrow three. And Duck AI will basically open a new tab and start buying shoes for me. As you can see, here is the store and it's starting to fill the form and it doesn't know which. shoe size it should buy, so it asks me. I will just respond, for example. 10, and it now reads the form. As you can see, it filled. The 10, and now there is a… the website needs the address. So the fun part is that we already have the identity in the browser. So Dakia asks me, hey, can I use this identity from the browser to fill it? And yes, of course, let's share it. If we take a look at the store… by the way, this is the store I built for myself for testing. The address is now filled. and it asks me, it asks me last time, hey, how about, uh, I'm gonna, I'm gonna submit the form, are you, are you sure? Yes. I am sure. And my shoes are now ordered. I didn't need to click on that website. I just wanted you to see what is happening in the background. But Duck AI now or soon will be able to buy. stuff for you or do anything in the browser you want it to do. Uh, that's the first demo I wanted to show you. And the second one, this one will be really quick, and it's, like, internal tool enhancement. Uh, if you… Often test a Mac. make ship reviews, you know the process. You need to download the DMG, attach it manually. Then drag and drop it. The instance is running, so you need to quit it. Then drag and drop again, wait for installation and then run it. So I build the button and now you will just click to run and you can start reading the. ship review, and everything will happen in the background, and after the build is downloaded, I'm gonna speed this up a little bit, it will basically just runs, and you can start testing. Um, that's it for me, thank you."
|
|
},
|
|
{
|
|
"time": "22:02:22",
|
|
"speaker": "I(",
|
|
"text": "All right. I'm just getting my screen up. Please let me know if you can see it. All right, looks like it's there. All right. So as a user, why should I care about the protections report on our browser? It's a list of numbers and icons. What is the actual benefit? So I reworked it. I started with the bottom line. Companies are watching you. It's creepy. Also highlighted right away that there's an issue to be fixed. Privacy isn't your default, and here's why that matters. The more of your everyday browsing happens in our app, the less these companies get to see. So let's expand this. Immediately, we get a creepy, interactive, prying eye that follows your cursor around. And we get useful info. We block tracking attempts, but why? They target you with ads, they watch what you read, and they record what you click. It's creepy. So who's watching? Well, Google does a lot of spying, and it was on 4 out of the 5 sites he visited. And Facebook was on almost half. Again. It's really creepy. So I wondered how we could make this more like a personal infographic. Here we highlight the nosiest site of the week, and we show a ring of trackers from that site that blink like eyes to drive home the visceral idea that you're being watched. Now, we empower you to understand some of what we're doing by showing you how we prevent a digital fingerprint view from being created. You can hover over each component of the fingerprint and see what we've hid from creepy companies. And how many times? And finally, we contrast this with Chrome. Where companies swarm around your cursor, and cookie pops and ads fill the screen. We drive home the fact that Chrome is owned by Google, and that unlike on Chrome, DuckDuckGo blocks Google's tracking attempts. So maybe this really creeped you out. Why are so many companies watching you read the news? Let's share that. And just like that, a promotional infographic can be shared with a link to download our browser. So try it out for yourself on Windows on the link task. Thanks."
|
|
},
|
|
{
|
|
"time": "22:04:41",
|
|
"speaker": "Vinay Nadig",
|
|
"text": "All right, that's me next. Let me share my screen. Alright, so for hack days, I have. built an app called, QuackTime. What it does is, it lets you schedule ad hoc meetings, through Mattermost without having to do the whole song and dance of matching time zones across. uh, different geographies. So, to use that, go to QuackTime, go to Metamost, or any DM, QuackTime and DM duration, in this case 60 minutes, and then we'll set a type build. You will get a link, you can open it. you will end up on this interface, basically. You will see that all your, uh… uh, working hours and free, uh, slots through Outlook has already been filled in. And that would be the same case for another person as well. So, the other person will also open the same link. And yeah, so you can see that I'm working with Adrian, so I have this much overlap with him, so you can select whichever task that you want. And, oh, sorry. You can propose it. And the other person will… See an option to accept that. And once you accept it, an invite will be sent automatically at the correct time, along with the Zoom link for… which uses your personal Zoom link. That's pretty much it. I'll stop there."
|
|
},
|
|
{
|
|
"time": "22:06:17",
|
|
"speaker": "Nicklas Jensen",
|
|
"text": "All right, I'm next up here, and I am going to be sharing some porn. out of a conversation, actually, in a Zoom chat. So, one of the things on the meetup that happened was that we, uh… At least for a lot of the ducklings, we were freaking out about how much merch and how many things have been over the years. So the idea was to create a hall of fame for specifically T-shirts. So Miguel and I worked on that. For this, uh… For these hack days, the goal is you have a timeline, you can see all of the different designs that have been over the years. These are all the ones that Miguel could get a hold of so far. You can vote for your favorite ones. And also, if you don't feel like going through them all manually, you can just… pick out of sort of a random generated thing. And yeah, that's the T-shirt Hall of Fame. How do I stop sharing? Thank you."
|
|
},
|
|
{
|
|
"time": "22:07:30",
|
|
"speaker": "Dominik Kapusta",
|
|
"text": "All right, here's a demo of the… Long overdue feature on… macOS, which is the reader mode. Um… Reader mode. extracts text from websites. And here you can see that, uh, we're navigating to a website that, uh, is eligible for being displayed in reader mode, which contains relatively more text, uh, and, um… Just with a single button in the address bar, um… we turn on the reader mode, then we navigate away from that website, it just resets to a regular view. here, uh, you can see, uh, visiting another website, uh, that's also eligible for reader mode, and here's, uh, here's how it works, but it's not all, because I've worked on that, uh, during Hug Days, but. Um… a parallel to my work, actually. Marios was doing the same thing for iOS, so here it is, um… Here, the reader mode, uh… Button is in the website, uh… menu… And this demo will also show you that it respects the browser theme. So that, um… shows correctly in the dark theme as well. Even if you visit a website that… uh, doesn't honor the system theme, uh, then the reader mode, of course, uh, will be dark in this case, when the Guardian was in, uh, in light theme. Yeah, and this all was possible. to do thanks to a library by Meek that extracts. text from, from websites. So really the integration. It was fairly minimal here, and it was just a bit of work. That's why I said it was long overdue, because that library was published a few months ago already. That's it. Thank you."
|
|
},
|
|
{
|
|
"time": "22:10:01",
|
|
"speaker": "Valerie Kraucunas",
|
|
"text": "Alrighty, hello. Um, so, I'm Valerie. I work on the front-end team. Um, the thing I've been really heavily focused on all year is the rebrand, and that… with that has come… turning over, uh, style values from one… one way to a new way. Um… with that, we have these things called design tokens, which is basically, like, a codified design decision. And so, when we're styling… the new rebranded stuff we're using, or at least we want to be using all of these things. That said, um, a lot of times when you are handed designs that are rebranded. You end up with this scenario of… It'll be a mix of using the new style tokens and the old style tokens. So in this case, like the SDS styles are a legacy thing. Um, and I want to be very clear, this is not a shame. This is not a shame campaign or anything on designers, because oftentimes when they are building these things, they are… they have the old way in the same file as the. new way. And so it's really, really tedious to get down into every single nook and cranny and node or layer to make sure that you're using the new styles on everything and to make it even more complicated. So when developers see this, we just see this and we're like, why is this still here? Why are we still using SDS things? But when you get over into the design look, so this first column is when they're picking the first padding value, so space X07. When they're picking the second column value, space X03. They look the same. It's really easy to co-mingle the old style and the new. And so, um, basically my concept is to… be able to hand a Claude skill a Figma link, and have it go and traverse the entire. All child nodes of that, um… of whatever you linked over. So. I'm going to try this. I doubt it will… I doubt it'll work. It does not go as fast as I would like it to, but we'll give it a go. So, basically, what happens is you, you know, invoke it with the Figma link, then you give it an Asana link. And give it a name. Um… What that ends up spitting out is a nice report for designers to be able to go and update all the things that are using, uh, old values, or possibly things that are just out of system. As well, um, now I want to be clear, I'm standing on the shoulders of giants here, because, um, while we've been doing the SERP rebrand, uh, my partner in crime, Rachel Lim, created a… skill called Marlin Rebrando, which is basically a dictionary of, uh, knowledge for this was the old way, this is the new way, these are the things we should be checking for when we are executing the rebrand and the code. Um, so my skill is heavily relying on that, but, um… What it'll basically do is it will just… fully traverse like a node tree, if you will, all the way down. Um… And yeah, the things that we're looking for are the use of legacy variables. This is run from within the DDG. repo, for now, at least. So what it will do also is it'll look at the currently installed design token package and make sure that there aren't values being used in the designs that don't exist in. the installed package, then also looking for just colors that aren't tied to a system value, unselled text, et cetera. So what this ends up doing is it will create a. design token report, and. give the designers a link to the layer that. his, uh… has a property on it that's a problem, if you will, and then give it an idea of, like, this is an unexpected value, and then has an expected or a suggested value. The nice part about this as well is that developers. don't necessarily have to wait on designers to go. What?"
|
|
},
|
|
{
|
|
"time": "22:14:28",
|
|
"speaker": "Julia Abreu",
|
|
"text": "Well… I'm so sorry, I hate to do it, but I have to interrupt you, because we're at 4 minutes now."
|
|
},
|
|
{
|
|
"time": "22:14:35",
|
|
"speaker": "Valerie Kraucunas",
|
|
"text": "Oh, shoot, I'm so sorry. Okay, well…"
|
|
},
|
|
{
|
|
"time": "22:14:36",
|
|
"speaker": "Julia Abreu",
|
|
"text": "Sorry."
|
|
},
|
|
{
|
|
"time": "22:14:38",
|
|
"speaker": "Valerie Kraucunas",
|
|
"text": "Making everybody's life better, that's all."
|
|
},
|
|
{
|
|
"time": "22:14:50",
|
|
"speaker": "Stano",
|
|
"text": "Okay, I believe I was next. Um, I'm gonna… I hope you can see my screen now. Someone please confirm."
|
|
},
|
|
{
|
|
"time": "22:15:00",
|
|
"speaker": "Julia Abreu",
|
|
"text": "No, we cannot."
|
|
},
|
|
{
|
|
"time": "22:15:01",
|
|
"speaker": "Jason Ashby",
|
|
"text": "Nope."
|
|
},
|
|
{
|
|
"time": "22:15:02",
|
|
"speaker": "Stano",
|
|
"text": "You cannot? Let me try again. Where is… The sun got stuck."
|
|
},
|
|
{
|
|
"time": "22:15:24",
|
|
"speaker": "Julia Abreu",
|
|
"text": "Did you find the share button?"
|
|
},
|
|
{
|
|
"time": "22:15:27",
|
|
"speaker": "Stano",
|
|
"text": "Give me a sec, I reconnected. You can take it out of my budget, I'll make it quick. It does not want to work. You can skip me. Go on."
|
|
},
|
|
{
|
|
"time": "22:15:45",
|
|
"speaker": "Anh Do",
|
|
"text": "Okay, looks like I'm next. So let me try to share my screen. Wow. Uh, how do I share, like, a… Particular windows, um… Sorry, um, I had so many windows opening at the moment. Oh, come on. Guys, it is not fun. Sorry. OK, I'm going to share my desktop then. One sec. Hopefully, you can see that on my screen. Can anyone see it? Okay. So for context, in OK, we are helping people in the US to remove personal information from data broker by submitting our request on their."
|
|
},
|
|
{
|
|
"time": "22:16:21",
|
|
"speaker": "Julia Abreu",
|
|
"text": "I can see it."
|
|
},
|
|
{
|
|
"time": "22:16:33",
|
|
"speaker": "Anh Do",
|
|
"text": "behalf. But recently, we have a lot of issues with broker block our archive with CloudFlare and CAPTCHA, so we can submit the form for the users. So this demo has been built based on Ben Smith design prototype. Let me play that."
|
|
}
|
|
]
|
|
}
|