<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Mark Mayo on Medium]]></title>
        <description><![CDATA[Stories by Mark Mayo on Medium]]></description>
        <link>https://medium.com/@mmayo?source=rss-5c6a321cb3bd------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*k8dvbn5PdkwPOegEHNn-fA.jpeg</url>
            <title>Stories by Mark Mayo on Medium</title>
            <link>https://medium.com/@mmayo?source=rss-5c6a321cb3bd------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Tue, 16 Jun 2026 14:47:04 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@mmayo/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com" rel="hub"/>
        <item>
            <title><![CDATA[Why I’m all-in on the fediverse]]></title>
            <link>https://medium.com/@mmayo/why-im-all-in-on-the-fediverse-ca5b22ec230d?source=rss-5c6a321cb3bd------2</link>
            <guid isPermaLink="false">https://medium.com/p/ca5b22ec230d</guid>
            <category><![CDATA[ios]]></category>
            <category><![CDATA[fediverse]]></category>
            <category><![CDATA[mastodon]]></category>
            <dc:creator><![CDATA[Mark Mayo]]></dc:creator>
            <pubDate>Fri, 24 Feb 2023 17:04:05 GMT</pubDate>
            <atom:updated>2023-02-27T09:44:07.475Z</atom:updated>
            <content:encoded><![CDATA[<h4>I <a href="https://www.vmunix.com/build-the-fediverse/">moved this post to my personal blog</a>.</h4><p>Seemed fitting.</p><p>-Mark</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ca5b22ec230d" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[(Re)defining the Tofino Project]]></title>
            <link>https://medium.com/project-tofino/re-defining-the-tofino-project-6d3c98521cc8?source=rss-5c6a321cb3bd------2</link>
            <guid isPermaLink="false">https://medium.com/p/6d3c98521cc8</guid>
            <category><![CDATA[web-development]]></category>
            <category><![CDATA[javascript]]></category>
            <category><![CDATA[firefox]]></category>
            <dc:creator><![CDATA[Mark Mayo]]></dc:creator>
            <pubDate>Tue, 15 Nov 2016 20:08:27 GMT</pubDate>
            <atom:updated>2016-11-16T18:57:05.715Z</atom:updated>
            <content:encoded><![CDATA[<p>TL;DR: s/Tofino/Browser Futures Group/</p><p>Our original 3-month goal was to investigate what a browser designed in 2016 would look like.</p><p><em>(Of note, this is different than exploring what an implementation of the web’s platform should look like — see </em><a href="https://medium.com/mozilla-tech/a-quantum-leap-for-the-web-a3b7174b3c12#.fas2nkric"><em>Project Quantum</em></a><em> and </em><a href="https://servo.org/"><em>Servo</em></a><em> for that.)</em></p><p>In those three months, we experimented with lots of different parts of the browser: from the way you navigate, to the way you save things from the web, to the very way in which the front-end for a web browser is built.</p><p>Now that the initial project is over (in fact,was over a few months ago…), it is time to look at if and how we move forward. The <a href="https://medium.com/project-tofino/engineering-update-on-tofino-8381d82398e8#.h5nj5hsv8">Engineering Update for Tofino</a> post by Joe Walker is live, and posts from the product and UX teams will follow, but at the high level this is what we learned:</p><ul><li>User testing our concepts ahead of even completing a prototype was extremely valuable.</li><li>Boy howdy do normal users have hard time with non-conventional browser interfaces!</li><li>A User Agent Service is a good idea. We want one in Firefox, like, yesterday.</li><li>Writing a new browser UI in React is flexible and easier to develop in than XUL. Mixing XUL and HTML in a single product/interface was harder than we thought.</li><li>Electron is great for prototyping, but some work is needed if you want to build a full browser.</li><li>Getting out of our Firefox developer bubble and engaging with new open source teams and projects was great. So much awesome feedback and energy!</li></ul><p>So what is next?</p><p>The ideas behind the user-agent service and a React UI sound good on paper, but do they work in practice, and are they useful to Mozilla? The <a href="https://github.com/mozilla/tofino/blob/master/docs/UA-service.md">User Agent Service</a> is designed to store a broader set of data than Firefox Sync can currently handle, but we’re not sure if can it scale up with large volumes of data or if it’s as flexible as we need.</p><p>There could be lessons from our React based UI that we can take into mainline Firefox. To that end Dave Townsend is going to be starting with <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Tech/XUL/tabbrowser">TabBrowser</a> and seeing if there are things that Firefox can learn and we’re going to continue to evolve what we’ve got to be more workable.</p><p>We’re going to continue using an environment that makes it easy to prototype fast. We’re not wedded to Electron (far from it) but the fast prototyping aspects of that have been really nice.</p><p>It’s also becoming clear that the name Tofino doesn’t really work with what we’re doing now; What we’re working on now is less of a product or user experience exploration, and more of a set of technologies that need testing out, so we’re renaming the group to the Browser Futures Group.</p><p>We’re working on a roadmap.</p><p>Tofino is dead — Long live the Browser Futures Group.</p><p><em>A brief aside: We briefly called this team the Browser Research Group, and asked for help picking a new name. The internet provided! Background: Naming things is always hard.. so a brief clarification is required because I agonized over using the word Research. The timescale of our ‘research’ is short (months rather than years) and what we’re doing is closely aligned to the goals of the Firefox product organization — i.e. building and shipping a popular browser. The team does not do the kinds of research Mozilla Research in our Emerging Technologies group does, things looking years ahead like </em><a href="https://www.rust-lang.org/en-US/"><em>Rust</em></a><em> and </em><a href="https://servo.org/"><em>Servo</em></a><em> and </em><a href="https://hacks.mozilla.org/2016/10/webassembly-browser-preview/"><em>WebAssembly</em></a><em>. Calling the team the “Browser Innovation Group” felt even more awkward. Got a better name suggestion? Comment below!</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=6d3c98521cc8" width="1" height="1" alt=""><hr><p><a href="https://medium.com/project-tofino/re-defining-the-tofino-project-6d3c98521cc8">(Re)defining the Tofino Project</a> was originally published in <a href="https://medium.com/project-tofino">Project Tofino</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Browsers, Innovators Dilemma, and Project Tofino]]></title>
            <link>https://medium.com/project-tofino/browsers-innovators-dilemma-and-project-tofino-ef634c6164f0?source=rss-5c6a321cb3bd------2</link>
            <guid isPermaLink="false">https://medium.com/p/ef634c6164f0</guid>
            <category><![CDATA[firefox]]></category>
            <category><![CDATA[startup]]></category>
            <category><![CDATA[design]]></category>
            <dc:creator><![CDATA[Mark Mayo]]></dc:creator>
            <pubDate>Fri, 08 Apr 2016 00:30:21 GMT</pubDate>
            <atom:updated>2016-04-08T20:49:24.710Z</atom:updated>
            <content:encoded><![CDATA[<p><em>update 08/04: I should have been clearer that Project Tofino is wholly focused on UX explorations and not the technology platform. We are working with the Platform team on technology platform futures too, and we’re excited about the Gecko and Servo-based futures being discussed! Also, don’t forget to check out the companion post from Philipp: </em><a href="https://medium.com/project-tofino/designing-a-browser-that-isn-t-a-browser-685b63c4b6f1#.bagvb8q4x"><em>Designing a Browser that isn’t a Browser</em></a><em>. Finally, go straight to the </em><a href="https://github.com/mozilla/tofino"><em>GitHub repo</em></a><em> for actual project details. Thx!</em></p><p><a href="https://medium.com/art-marketing/content-blocking-is-the-web-at-its-best-71c7eef309bd#.sdhka1w1s">Last time I posted</a>, I talked about Content Blockers. We <a href="https://blog.mozilla.org/futurereleases/2015/12/08/announcing-focus-by-firefox-a-content-blocker-for-ios/">ended up making one</a>, and the world didn’t end. Yay! Blogging helped me sort it out in my own head, and that helped identify a path forward at <a href="https://www.mozilla.com">work</a>. So I’m going to do some more blogging, because I’m kicking off a new project which triggered a bunch of soul searching about products, innovator’s dilemma in particular, and what taking risk feels like. Maybe talking about it will help me sort some of this out. So, here we go.</p><p>Let’s jump right in and say yes, the rumors are true, we’re <a href="https://github.com/mozilla/tofino">working on browser prototypes</a> that look and feel almost nothing like the current Firefox. The premise for these experiments couldn’t be simpler: what we need a browser to do for us —both on PCs and mobile devices — has changed a lot since Firefox 1.0, and we’re long overdue for some fresh approaches. It’s worth noting that we have a <a href="https://wiki.mozilla.org/Firefox/Go_Faster">ton</a> <a href="https://wiki.mozilla.org/Test_Pilot">of</a> <a href="https://wiki.mozilla.org/Firefox/Recipe_Server">work</a> underway on our flagship product, Firefox, that’s all about evolving the browser experience. Not to mention the huge bet we’re making this year that we can get the biggest changes to Gecko we’ve ever attempted (<a href="https://wiki.mozilla.org/E10s">e10s</a>) to land so that Firefox is on a healthy, competitive footing for years to come. But it’s not enough, when someone has a totally different idea they want to explore.</p><p>We’ll blog on the P<a href="https://medium.com/project-tofino">roject Tofino Medium channel</a> about the project itself, but what this and subsequent posts are mostly about is thoughts on what the business of doing “innovation” at an organization that has a lot to lose feels like. It feels hard. Up to this point in my 20 year career (20 years? right?!), I’ve never experienced anything quite so “textbook innovator’s dilemma” as my last year at Mozilla. Let me explain. What’s probably not surprising is that the team that builds our browser has a lot of great insights and ideas about how people actually use browsers and the kinds of problems people have that aren’t currently solved by<em> anybody’s</em> browser product. Also likely not surprising is that said team would be stoked to build an entirely different kind of browser focused on solving those problems. Focus. Freedom. Yes! What’s not intuitive to anybody that hasn’t experienced the backside of a very successful product run is that creating something new and different is incredibly difficult. Every little decision can bring crushing stop energy. At an academic level, this is fascinating. Everyone’s read about this in books. When you live it, it’s very personal. The reason new things at old shops is difficult, mostly, I think, isn’t because people are bad, or stupid, or actively sabotage new projects or any nonsense like that. It’s largely because doing anything that might conceivably impact the current product creates unavoidable tension. Nobody likes tension, so you replace it with that self-created stop energy. <a href="http://www.newyorker.com/magazine/2014/06/23/the-disruption-machine">Innovator’s dilemma is a real thing</a>.</p><p>For example, the prototype we’re feeling good about right now is built with <a href="http://electron.atom.io/">Electron</a> and <a href="https://facebook.github.io/react/">React</a>, not <a href="https://developer.mozilla.org/en-US/docs/Mozilla/Gecko">Gecko</a> and <a href="https://en.wikipedia.org/wiki/XUL">XUL</a> (our go-to technologies for building browsers). For a small team starting out pursuing a new product concept it’s a great choice — Electron is a wonderful tool for us to do prototyping with — but a simple decision like picking the right tool for the job becomes an epic FUD generator when it could be perceived as threatening to the existing product. Immediately, you worry. Does it signal we don’t believe in Gecko? What will the platform team think? Will they believe us that the project has nothing to do with technology selection, that’s what <a href="https://github.com/browserhtml/browserhtml">browser.html</a> is for? What if web developers think we’re abandoning Firefox, and Gecko? We’ll lose on web compat, and nothing will work in Firefox! Consumers will abandon Firefox in droves! We’ll lose our influence at the W3C! OMG the web is dead! I’m not making fun of that. I’ve had all of those thoughts. And spent countless hours thinking about how to deal with the others that will inevitably have them too. Before you know it <em>everybody involved </em>is spending countless hours worrying about about outcomes that we aren’t in control of anyway. Not having an awesome Firefox will kill Firefox. End of story.</p><p>There’s a great deal we don’t know about creativity and innovation. But the research does suggest some patterns are more common than others. You can expect tension. No amount of “messaging” can work your way out of that. The tension will be there, you have to accept it, or you never move. There will be risk. Again, accept it or you never move. You should trust in small, cohesive teams. You should support them, and encourage risk taking. That’s often referred to as “creating space”. My personal experience has been that all these things are true, but I’ve also seen that if you make the innovation process “easy” whatever is being built ends up sucking. Especially at the front end of the process. Maybe it’s because ideas are free to create and valueless on their own. I don’t know.</p><p>In that spirit, today I’m placing a bet on a small, cohesive team that for the last 6 weeks spent hours I know for a fact they didn’t have, hacking on an idea they simply refused to let die. God knows the last month of stop energy should have killed it. Years of fear of hurting Firefox, by rights, should have never even let the idea germinate. But somehow they held on and fought for it.</p><p>We’re setting up the project a little differently too. The team is not open for internal transfer. The team no longer has access to their own calendars. They’re being unsubscribed from all email lists. They’re not going to attend even a single Mozilla meeting. We’re kicking off in person, everyone in a room, in Tofino on Vancouver Island where the idea for this UX direction originated last summer, and from there we’re going to co-locate the core team in Vancouver for 3 months. That’s how much time I’m giving the team to prove there’s something here that we could turn into a product. If not, we kill it. We’re not going to expect help from anyone at Mozilla and we’re not going to distract the other 95% of our team that’s doing hero work on Firefox.</p><p><a href="https://www.youtube.com/watch?v=4Q7FTjhvZ7Y">Origin stories</a> have always fascinated me, and when I look back, a great deal of Firefox’s origin story is not well known. Whether a successful product or feature set comes from this project or not, I can’t say, but I’ll at least document the story of how we’re building new browser experiences inside one of the world’s most experienced browser teams. I’m looking forward to being their story teller!</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=ef634c6164f0" width="1" height="1" alt=""><hr><p><a href="https://medium.com/project-tofino/browsers-innovators-dilemma-and-project-tofino-ef634c6164f0">Browsers, Innovators Dilemma, and Project Tofino</a> was originally published in <a href="https://medium.com/project-tofino">Project Tofino</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Content blocking is the web at its best]]></title>
            <link>https://medium.com/art-marketing/content-blocking-is-the-web-at-its-best-71c7eef309bd?source=rss-5c6a321cb3bd------2</link>
            <guid isPermaLink="false">https://medium.com/p/71c7eef309bd</guid>
            <category><![CDATA[advertising]]></category>
            <category><![CDATA[ios]]></category>
            <category><![CDATA[tech]]></category>
            <category><![CDATA[firefox]]></category>
            <dc:creator><![CDATA[Mark Mayo]]></dc:creator>
            <pubDate>Wed, 23 Sep 2015 00:52:16 GMT</pubDate>
            <atom:updated>2016-07-13T23:08:55.504Z</atom:updated>
            <content:encoded><![CDATA[<p><em>Disclaimer: I’m SVP of Firefox at Mozilla, I’m clearly biased, but I’m writing here just as me. IT’S ALL ABOUT ME, DAMNIT.</em></p><p>Boy there’s been a lot of attention on content blocking in the last week! Apple entered the debate with the blunt instrument that is Safari / SafariViewController for iOS9, and all of a sudden everyone noticed. As they should. Tim Bray’s <a href="https://www.tbray.org/ongoing/When/201x/2015/09/19/Money-and-the-Web">Money and Ads on the Web</a> links to a bunch of writing worth reading, and I’d recommend Zeldman’s piece on <a href="https://medium.com/@zeldman/ad-blocking-and-the-future-of-the-web-78e44e57edb9">Ad Blocking and the Future of the Web</a> as a must read. But for all the reasonable, intelligent articles that try to wrestle with the fact that content blocking is a complex issue, it pretty much boils down to this:</p><h3>Kontra on Twitter</h3><p>Then Users: Please DoNotTrack me AdTech+Publishers: Screw you Now AdTech+Publishers: Please DoNotAdBlock me Users: Screw you</p><p>I’ve spent a lot of time in the last year thinking about how to evolve the web’s relationship with ads responsibly, and you see that work shipping in Firefox’s <a href="https://support.mozilla.org/en-US/kb/tracking-protection-pbm">Tracking Protection for Private Browsing</a> mode, which is moving to <a href="https://www.mozilla.org/en-US/firefox/channel/#beta">Firefox Beta</a> tomorrow, and also in how we designed <a href="https://wiki.mozilla.org/Tiles">Tiles</a> for the new tab page to respect user choice and privacy. I’m really proud of the work we did, and I’ll talk more about it soon.</p><p>Right now, though, in the middle of all this attention around content blocking, <strong>what I’m struck by is that the web’s model allows us to have a debate about content blockers at all</strong>. The web is still fairly unique in that its fundamental architecture is built around a “user agent” that sits between the publisher and consumer and that agent mediates the experience. Also of note, the <strong>web browser is the only agent the user chooses separately from content </strong>(thx for reminding me, <a href="https://medium.com/@osunick">@osunick</a>). It’s a pretty powerful model that has benefitted all parties involved over the last 15 years, and without that design tradeoff we wouldn’t be having this debate at all. The web’s kinda old, yeah, but it’s still got some fascinating properties that differentiate it from everything else!</p><p>The other big thing I’ve been thinking about over the last week is <strong>whether I should have had my team build a Safari content blocker</strong>. We considered it, debated it, decided against it, and in retrospect, I suspect I held too tightly to an opinion that <a href="https://medium.com/@zeldman/ad-blocking-and-the-future-of-the-web-78e44e57edb9">Apple was being irresponsible in their pursuit to harm Google</a> by implementing content blocking with little to no user interaction capability. “We’d never ship something this crude!”, I argued. An opinion rooted in the fact we’ve had the technical ability in Firefox to do what Safari is effectively doing for over a year, but we decided that we didn’t have good enough answers to “well, what should the system work like, then? how and why do sites get on/off these lists?” and until we did we wouldn’t ship for general browsing. This is where Apple differs from a pure web browser vendor like Mozilla, I suppose; Apple has an answer for publishers to the often shitty experience of web advertising: don’t use the web, use apps with iAds, use Apple News, use Apple Music, use Apple… Apple’s answer isn’t a better web, really, it’s Apple’s iOS ecosystem.</p><p>It’s not too late, of course. We <a href="https://github.com/mozilla/firefox-ios">know how to build for iOS</a>, have the policies/tech/lists we developed for Tracking Protection in Firefox, have no need to ever charge money (and therefore, arguably, no potential conflict of interest) for a content blocking app or list curation service, can credibly say we could operate in the open with transparency, and of course we have a running theory that users might want Mozilla to have a part in how this plays out on iOS.</p><p>Whereas Marco <a href="http://www.marco.org/2015/09/18/just-doesnt-feel-good">just didn’t feel good</a> about the success of his #1 app, I think for many folks at Mozilla<strong> it just doesn’t feel good for us NOT to be there for our users</strong>, skin in the game, working to make the web better, despite the <a href="https://www.webkit.org/blog/3476/content-blockers-first-look/">severe limitations that Apple’s placed on developers</a> implementing content blocking.</p><p>A final thought on Apple and the web. John Gruber argues that the outcomes, whatever they may be, should not be framed as “<a href="http://daringfireball.net/linked/2015/09/16/because-of-apple">Because of Apple</a>”, but as “because of us”, and that’s true but I think he is underestimating Apple’s influence and role in this somewhat. First with Flash, and now with content blocking, Apple is shaping the web as we know it. It’s almost ironic, then, that while the health of the web isn’t top of Apple’s mind (hurting Google and advancing their own ecosystem clearly is), they have an uncanny ability to create these watershed moments that force the web to adapt and get better.</p><p><em>This is my first Medium post, go ahead and note it up and I’ll use that feedback to evaluate whether or not I should post more these sorts of personal self-doubt-meets-product-strategy pieces! (only half joking..)</em></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=71c7eef309bd" width="1" height="1" alt=""><hr><p><a href="https://medium.com/art-marketing/content-blocking-is-the-web-at-its-best-71c7eef309bd">Content blocking is the web at its best</a> was originally published in <a href="https://medium.com/art-marketing">ART + marketing</a> on Medium, where people are continuing the conversation by highlighting and responding to this story.</p>]]></content:encoded>
        </item>
    </channel>
</rss>