TopPodcast.com
Menu
  • Home
  • Top Charts
  • Top Networks
  • Top Apps
  • Top Independents
  • Top Podfluencers
  • Top Picks
    • Top Business Podcasts
    • Top True Crime Podcasts
    • Top Finance Podcasts
    • Top Comedy Podcasts
    • Top Music Podcasts
    • Top Womens Podcasts
    • Top Kids Podcasts
    • Top Sports Podcasts
    • Top News Podcasts
    • Top Tech Podcasts
    • Top Crypto Podcasts
    • Top Entrepreneurial Podcasts
    • Top Fantasy Sports Podcasts
    • Top Political Podcasts
    • Top Science Podcasts
    • Top Self Help Podcasts
    • Top Sports Betting Podcasts
    • Top Stocks Podcasts
  • Podcast News
  • About Us
  • Podcast Advertising
  • Contact
Not in our directory?
Add Show Here
Podcast Equipment
Center

toppodcastlogoOur TOPPODCAST Picks

  • Comedy
  • Crypto
  • Sports
  • News
  • Politics
  • True Crime
  • Business
  • Finance

Follow Us

toppodcastlogoStay Connected

    View Top 200 Chart
    Back to Rankings Page
    Technology

    Metamuse

    Tools for thought, product design, and how to have good ideas.

    Advertise
    • Apple Podcasts
    • Google Play
    • Spotify

    Latest Episodes:
    https://museapp.com/podcast/transcripts/42-self-made-tools/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: Building my own tools, when I type a character in or hit save, I know exactly where the bits are going, and I think that changes the relationship that you have with your software. There’s kind of a power dynamic where if you don’t know what the company that’s providing you some software products is doing with your data, they have the power, whereas if you build your own thing, you understand exactly what’s going on, you’re in control. 00:00:25 - Speaker 2: Hello and welcome to Meta Muse. Muse is a tool for thought on iPad. This podcast isn’t about Muse product, it’s about Muse the company, the small team behind it. My name is Adam Wiggins. I’m here with Mark McGranaghan. Hey, Adam, joined today by Linus Lee. Hello, hello. And Linus, before the call you were showing me on video chat here, you have a fun new gadget in the audience would like to hear about that one. 00:00:50 - Speaker 1: Yeah, this is always good audio podcast materials when you have to show something off visually, but I semi recently got this thing called the Surface Duo, which is an Android phone from Microsoft, but the Android part’s not super interesting. What’s interesting is it folds out like a book. It’s about the size of a passport, and if you imagine. Passport, but it folds out and there’s screens on both sides of the book, and there’s like a stylus you can use on it and it’s meant to be sort of like a multitasking, multi-screen, note taking on the go productivity kind of phone, and the screen there is continuous, it’s using the folding screen technology is there a scene there. 00:01:24 - Speaker 1: There’s a solid theme there, it’s two separate screens, but it’s like if you imagine like a Nintendo DS from way back when, tilted on side. 00:01:33 - Speaker 2: Or yeah, maybe a shrunk down multi-monitor set up. 00:01:36 - Speaker 1: Yeah, exactly, and it’s great for reading, great for like general kind of content consumption, taking notes, things like that, not so. For like watching videos or like Instagram’s really struggles to fit on that screen because it’s basically square. But yeah, I’ve been enjoying using actually, one of the perks of living in New York, where I live is that all the tech stores are just lined up right down 5th Avenue so I can go visit them when I go running. Microsoft came up with a new one, I think just last week or something like that, and I went down yesterday to visit it and they didn’t quite have it on the shelf yet, but maybe soon, maybe I’ll upgrade. 00:02:08 - Speaker 2: Microsoft’s Surface line has continued to impress me. We did a quite a bit of prototyping on one of the Surface tablets from a few years back, and just in general, what they’ve done there, kind of going into hardware and doing such a good job at it, is really quite impressive for, especially such an established, you know, company which are not known for that kind of innovation or moving into brand new markets and doing a good job. 00:02:32 - Speaker 1: Yeah, definitely, it seems like they sort of see their responsibilities of doing things that are weird. They’re very reluctantly did like a classic laptop form factor. So yeah, I like it. 00:02:42 - Speaker 2: And could you tell the audience a little bit about your background and interests? 00:02:47 - Speaker 1: Yes, so my name is Linus. I say I grew up in Indiana, which is where I spent most of my childhood, before that, I spent the first half of my childhood in Korea, just where my family is from, but I grew up in Indiana, like normal kind of public high school towards the end of that high school experience, I kind of self taught myself how to code JavaScript backbone, react kind of stuff. And then got a little job over the summer at a software startup in the area called Spencer. We did agriculture, precision agricultural software, so basically using some hardware in the field. Indiana is a farming state, so hardware in the field plus some weather data and satellite imagery and other things like that to try to Improve efficiency and ease of producing food for humans or for cattle and and so forth. And so I was there for about that summer and then ended up taking a year off after high school to work there, learning Django and JavaScript and all that good stuff, and that was my first kind of real programming gig. I learned a lot there for about 2 years and then after that, the company itself ended up getting bought, then I had a few extra months to travel and things like that, and then went to UC Berkeley, where I studied computer science for a few years just in California, so went to Silicon Valley, did some other startup stuff, was briefly part of things like relate, which is online IDE. Oh yeah, they’re doing some pretty cool stuff, and a couple other projects, and then recently I moved to New York, just where I am now working at uh another software startup doing sort of tools for thought space things called idea flow, and then all through that time sort of off on the side I’ve also been doing random other. Experiments, building my own various side projects and writing a little bit and things like that, which I’m sure we’ll get more into. 00:04:32 - Speaker 2: Yeah, well, I would think looking over your homepage and your Twitter account and your blog posts that these what you call side projects appear to me like they could easily be a full-time worth of output. So doing that on the side from your regular work as opposed to, I don’t know, a retired gentleman who can spend his full day building interesting tools that certainly speaks impressively to your output or maybe passion for building these tools. 00:04:59 - Speaker 1: Yeah, that’s a misconception that I’ve gotten a couple other times. I think it’s actually interesting to think about, like, having to work a normal job, like not being completely free on your own to follow all your whimsical ideas and having a bit of constraint on not only your time but also like having to use normal note taking tools and having to like use notion and talk to people and slack and things like that I think is a good kind of way to ground yourself. 00:05:25 - Speaker 2: Yeah, we actually see this dichotomy in the we call it the research world, or even in like a classic software company that has maybe like an R&D arm with sort of mad scientists thinking big ivory tower thoughts versus the more kind of production like please our customers, keep our systems running thing and you typically have If you’re too much in the research, free floating, just have big ideas, you’re not constrained by the realities of the market, or customers or anything else, you’re just out of touch, and it’s hard to like, make things that are meaningful. But of course, on the other side of the equation, if you’re really deep in the trenches of doing an atlas holding up the world kind of thing with production systems, and you’re thinking about tomorrow and next week, and you just can’t have big open, out of the box thoughts or, like you said, explore weird whims or unusual directions. So it’s a difficult dichotomy, seems like you’re walking that line though. Yes, yes, definitely. So our topic today is self-made tools, and of course, Linus, your work is a stellar example that I’ll link to some posts here, maybe Moocle is an interesting one here. You have a post explaining your motivation for that, and there’s a few other posts we can reference here, or other folks I know who are really prolific self-made tool makers. But yeah, what does that mean for you? What are self-made tools? Why do you do it? And is it something you recommend others explore, or is it only for a certain kind of person, maybe? 00:06:51 - Speaker 1: Yeah, so the way that I look at my tools is a lot of the software that I rely on to function as a working human day to day are things that I built myself to varying degrees. I have notes apps that I built that I used to keep sort of my personal information in, in general, a little bit. I have obviously things like my website and other kinds of public presence things, but also like a contacts app, CRM. Your typical productivity suite kind of stuff, and then because these are just sort of like things that I imagine and then I go build, there’s also things that sort of don’t exist as general purpose things in the market that I’ve built out, like a personal search engine, which is the monocle that you referenced earlier, where I have all my data sort of shoveled into a search index and then I can search for anything across any of my sort of bank of data from people that I’ve met to conversations that I’ve had to websites that I’ve bookmarked and things like that. So some of them are sort of what you would normally imagine as side projects, so like off the shelf libraries and frameworks and things combined into things that I put on the cloud, and other ones are more involved. Monacle, I think is a good example where the search index that I use for that is one that I built myself. It was originally a project to learn how kind of full text search worked and then that is then written in a programming language that I wrote called Inc and this that kind of goes very deep into that. Yeah, things that I built myself to fix my own problems or solve my own solutions, or solve my own problems, I guess, and really for myself only, nobody else, I mean I guess if you wanted to, you could go to get up and clone those down and deploy yourself, but a vanishingly small number of people do that and so it’s mostly just for me to use. 00:08:29 - Speaker 2: As you sit there and describe, writing your own full text search engine, writing your own programming language, sort of not just the end application, but really going down the stack. I’m reminded of this, it’s basically a meme now, but I think it’s like an excerpt from a movie where there’s a guy that wants to change a light bulb, so then he goes to get the light bulb out of the cabinet, but then it turns out that the cabinet’s got a Loose things that he’s going to get the screwdriver, but then the screwdriver turns out that it’s in the squeaky drawer. And at the end, I think like his wife comes home, what are you doing? He’s like, I’m changing the light bulb, obviously. So it feels like with technology and software systems today, I mean, the stack goes very, very deep. How do you decide when to like stop diving down. I guess another way to put it was, how much is the decision to say, for example, write your own full text search is that a pragmatic decision versus following your curiosity. You want to learn how this works. 00:09:21 - Speaker 1: Yeah, I mean, to the question of when do I stop, it’s really when my curiosity stops being strong enough to get me through learning whatever I have to learn. Back months and months ago when I was more naive, I mean this is all endless yak shaving, right? Like I needed note taking app and then I realized I need a front end library and then I realized I need a language. And there was a point in time when I was sort of made to myself the argument that ultimately this is sort of a more productive way to work because in the end, the little time that I take to build my own tools is gonna kind of come back because it’s sort of so fit to the way that I think and things like that. And I think to some degree that’s still true in that. When I’m really in the flow, I’m more productive with the tools that I built, but I think really the argument that building your own kind of software ecosystem is more productive may be a little flawed, but I think the change of mindset that I’ve had is, I mean, I still do it and so there still has to be a good reason that I do it, and I think for me that reason is that it just changes the relationship that I have to the software that I use. And that if it’s my own tools that I built on top of my own stack, running on it runs on the cloud, I use digital lotion, so I don’t want to control everything, but to a large extent running on sort of things that I understand, I can trust it more. It feels more personal. I mean, I made it sort of handmade it obviously and so. I think it changes the relationship that I have with the software that I use, and the data that I get to keep on it and trust it a little more and makes it feel more little more personal and durable. And so I think that’s the benefit and along the side, I get to kind of learn a lot, right? A lot of my side projects are motivated by just encountering some new piece of technology that I don’t understand, and then I use. Building a kind of prototype clone of whatever I’m trying to learn how something works. I use that as the excuse to build another tool like the search engine or I have like a toy assembler that I made which I don’t need to assemble X86 code very often, so I don’t use that as much, but it was a cool learning project. 00:11:20 - Speaker 2: Yeah, I really like the personalization angle. I think there’s also this element of agency or self-actualization or something like that, that fits into the same theme. You know, we had Wei Wei Xu on the podcast, for example, we talked about the fact that you have this homogenizing effect of now that most technology is made by these absolutely massive companies that are practically nation states, and of course, they’re appealing to the widest possible audience, and that fits into the kind of software. Yeah, basically, the wider an audience you can reach with your software, you know, the more you can become one of these huge empires, but then very much lost in that is not just sort of niche software, but also just things that are weird, different, appealing to a smaller audience, and in a way, the personalization side is, you know, when you’re making something just for yourself or just for yourself in a small group, that’s about as personal as it gets. It’s a nice antithesis or palate cleanser or something from Let’s say the mass produced software that honestly is what rules our lives now. 00:12:23 - Speaker 1: Right, definitely the phenomenon of like every fast website looking like Stripe, but a little bit worse. We were talking about something related right before the show about how there’s sort of two bifurcating kind of classes of software, the one that you just referenced the kind of big company one. is things that are meant to be sort of lines of business, things that companies sell to other companies or other people, and they sort of have a tendency to grow indefinitely, like you build a prototype, you start selling it, people need more things and so kind of grows unboundedly both in terms of like feature setting complexity. Technical debt, but also in terms of just codeba complexity. It’s just easier to add things when you need the product to do newer things and more things, whereas the idea of situated software where you have a very finite group of people you’re building for and a very finite use case you’re building for, which is frequently what I think my tools are, I just needed to do these three things. Take my notes, save them, I want to be able to read them, I want to be able to send it to these places or receive some notes from these places. And I know exactly what I want, maybe I’ll want to add one or two things there, but it’s definitely not going to grow unboundedly. It’s definitely meant for only me or only the small group of people, and I don’t really care if that many people use it. It’s sort of an underrated group of software, but I think there’s places where it’s the right thing. 00:13:41 - Speaker 3: Yeah, and just to riff on this piece a little bit, so I agree with all of the sort of first order reasons we gave around, it can be more fun, you get to learn, you have the potential for it to be more fit for purpose for you personally, but there’s also interesting second order effects with this focusing. So you talked about how the ge…

    Full show notes at the publisher

    https://museapp.com/podcast/transcripts/43-storytelling/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: One of the characters is a poet that evokes much emotion with his work, and one of his fans asks, how do you do it? How do you come up with these words that are so moving? And he says, well, the key is the poet has to speak the words that are already in the person’s heart. Hello and welcome to Meta Muse. Muse is a tool for thought on iPad. This podcast isn’t about Muse the product, it’s about Muse the company and the small team behind it. I’m Adam Wiggins here today with my colleague, Leonard Sursky. Hi. And Leonard, it’s one of my favorite times of year now that I live in a place with seasons. When the leaves turn orange and red and fall off the trees, kind of have that smell of the, I guess it’s the decaying leaves in the air, little bit of a chill, but it’s not too cold yet, Halloween and pumpkin carving. How are you enjoying your fall so far? 00:00:55 - Speaker 2: Yeah, I love it. It’s my favorite season, I think, especially since we both live in a city in Berlin which has a lot of parks and a lot of forest area. It’s just really great to be able to go into a forest and enjoy a long walk in that atmosphere. 00:01:09 - Speaker 1: My dog loves it as well. Basically, the leaves on the ground all over the place, I think, give like plenty of stuff to kind of sniff through, so it makes dog walks more interesting as well. 00:01:19 - Speaker 2: Even for humans, I feel like the smells in the autumn are more exciting than in the summer. 00:01:24 - Speaker 1: Absolutely, yeah. Well, I’ve got exciting news. The Muse team is growing. I’ll link to our jobs page here. We actually have two positions now. Longtime listeners of the podcast might remember we talked about our partnership model all the way back in episode 4. That’s when we were hiring the 5th member of our team who ended up being Adam Wulf. That was a good year and a half ago, I think. And it’s certainly nice, the stability, I think, team dynamic compared to the kind of fast hiring growth startup environment that I was previously used to where you just always have new people coming in, you’re constantly on boarding, group dynamics are constantly changing. We’ve had this really stable group for a while, which is nice in a lot of ways, but also it’s really exciting to think of new perspectives and just fresh faces coming in to to join us. And I guess growing from 5 to 6 or 5 to 7 isn’t such a huge jump, but also it’s a pretty big change for us, I think. 00:02:17 - Speaker 2: Yeah, it’s a really exciting moment for the company. So we’re hiring for two positions. One is a local first engineer and one is actually a design slash storytelling position, and that’s what we want to talk about today. 00:02:30 - Speaker 1: Yeah, that’s right. It felt like something really worth digging in on that we landed in this kind of maybe slightly unusual job description. Well, I suppose local first engineer is also unique in its own right, but The designer and storyteller versus other ways we could have titled this role led me to really reflect on like what is storytelling and why do we want to call it this for a marketing role or just a designer or brand designer or something like that, and how does Muse tell its story today? And what do we think of the unique qualities of a person like this that could join our team and That’s kind of the whole deal with this podcast, right, as we take a relatively straightforward thing like a job listing and then go very philosophical. So, maybe we start there. Our topic is storytelling, so, Leonard, for you, what does that word mean? 00:03:19 - Speaker 2: Yeah, I think it’s been an interesting process to figure that out internally for us as well. You and I have been kind of filling that role as the storyteller from MS and doing all the marketing and the design on the marketing side for that. And on one hand, we have had really great success. I think with telling our story, I think that’s kind of what we have to do for Muse, since we are a small company and we don’t have that much budget basically to spend on advertising and stuff like that. So we kind of have to tell our story and share our ideas. And the good thing is for us, for us, we have a lot to say. We have built the product based on research that you’ve done at I can Switch for many years. And so there’s actually a story to tell here and we just need to be able to really tell that story well. 00:04:04 - Speaker 1: Yeah, I think there’s a couple of different layers of it telling our story as a team, telling the story of the product, telling the story of how people think and how technology has helped or hindered that over time. There’s many different dimensions here, but I think it’s pretty important, the software by itself without the explanatory elements would be at a minimum hard to understand and possibly worse, just easy to dismiss if you don’t have that kind of backstory in context. And so I found myself just kind of researching this fundamental question, what actually is storytelling and of course, I think we all sort of know that stories are fundamental to how humans understand the world. That’s how we, for example, share culture or instill moral lessons, how we bond with each other, entertain, obviously, and everything from religious and mythological texts, the Bible or fast forward to Something like modern day superhero movies, those are sort of our modern myths and those stories are ways that we not just are entertained, but yeah, we kind of understand the world and what we as society value or don’t value. You can even look at something a little less that’s sort of like a fictional story and something more directly explanatory. I think like TED Talks, for example, you can make fun of the format and people do, and maybe they’re sort of annoying sometimes, but in a way, I think they have been so successful and so far reaching because they’ve found. a format that on one hand is addressing big meaty questions about how we improve the world, but they also have kind of a gather around the campfire vibe. Let me tell you a story that will enlighten and entertain, but also instill a lesson or at least some enlightenment. So I think once you start thinking about this, you sort of see it everywhere. 00:05:50 - Speaker 2: Yeah, I think TED Talks are a great example of a format that’s made for storytelling or like built around storytelling. Yeah, I think the most popular TED Talks are all just really, really great stories and it becomes less about the point that’s being made or that’s something you could also get elsewhere and less time if you want to, basically. But the reason they’re also so popular is because the story is so well told. And that to me points to the interesting thing about storytelling, which is that it’s really independent of the specific medium that we’re talking about. And I think that’s why it’s so difficult or so unusual to have an actual storytelling job, because most people see themselves more as craftspeople for one specific medium, right? Like maybe a, like a video person or you have a writer, or you have someone that makes music that is a great public speaker. But all of these sort of have the underlying element of storytelling and you kind of need to be great at at storytelling in order to be a great artist in your specific medium. 00:06:49 - Speaker 1: Or in some cases it may even just be a CEO or a leader or an entrepreneur or product person. So Steve Jobs comes to mind as probably one of the greatest storytellers, certainly in the tech industry, but also of our age. Now, folks like to point to that original introduction of the iPhone video, but also many others of his, even here now, more than a decade after his death, we’re still sharing. Videos and other clips that show him, in some cases really specific anecdotes, but in other cases, he’s introducing a product, he’s framing how to see the world, and how this product fits into that, and how it serves user needs. That is storytelling. 00:07:28 - Speaker 2: And I think that’s an often underrated aspect of that sort of role where we say usually, OK, Apple, you know, they have great designs, Steve shops had a great sense of taste. But yeah, I think a lot of it really comes down to storytelling where, OK, the iPhone can be really nicely crafted and it can be a great product, but the thing that will make it feel right and will make it feel like something that people want is actually the story that’s told around it and the story that the product tells. And I think that’s something that A lot of people don’t like consciously consider and often I think it’s sort of naturally like a story builds around it without the people making it really considering what that is, but I think it’s really valuable if you do actually sit down and figure out what kind of story you want to tell. 00:08:13 - Speaker 1: So then if we bring it to the realm of, yeah, business and yeah, especially tech products, you know, clearly Steve Jobs or anyone else getting up on stage to announce a product that is conventionally you would call that marketing, right? You’re marketing your product. And I think it’s interesting here to kind of compare a little bit how we see. I think actually originally we had had sort of two job descriptions here for this role and you’d call it a marketing designer and I think I’d called it a marketer and storyteller and so notably there we both were using this term marketing to capture part of what the role would do and I kind of think that marketing has a bad name or It’s sort of disrespected, I think compared to all the other disciplines that go into building a company. Certain product development, because people think of annoying or bad marketing, you know, invasive paid media advertisements getting in your way, whatever, shoving information in your face that you don’t want or demanding you to do something. But I do think marketing is a really important function. You can build a great product, but if no one knows that it exists, or how it fits in their lives or whether it’s for them. Then it kind of doesn’t matter, right? People need to be able to find out about it. And I also think marketing as a discipline has a lot of great tools, which includes, for example, this concept of the marketing funnel, which we do rely on. Especially in the early days, we looked at stuff like how many people convert from essentially downloading and logging into the app for the first time to kind of making it far enough that maybe they’ve sort of like figured out what the app is for and call that the onboarding stage. And we use that to figure out that our onboarding, we tried a bunch of different things, and basically it wasn’t working. So many people just didn’t even make it through it because they just couldn’t figure out what this weird app was about. It’s kind of how we landed on the onboarding, the you design that we have now that Still plenty of people get confused and don’t know what the hell this weird app is, but enough of them make it through to make it work. So those concepts like the marketing funnel, I think, are really valuable, and we do use those, and I do think that there’s a misunderstanding of what marketing really is, in the sense of a conversation with the market, understanding the market, figuring out how to explain the product to the right people, all that kind of thing. But at the same time, it does come with a lot of baggage that maybe it’s better to kind of leave off and certainly it implies a pretty transactional or you’d say pragmatic, but sometimes almost crassly pragmatic, just like try to get people in your funnel and get them all the way through. With whatever annoying tricks and dark patterns you can versus the longer term investment and we’re telling a story about the product, about us, about you and about the world and over time, if you like that story, you know, maybe that also means the products fit for you. How do you see marketing that terminology, does it have the same kind of negative implication for you, or how do you see that connecting to what we do at Muse with selling our product? 00:11:09 - Speaker 2: Yeah, I feel like we both had a similar realization during this process of writing the job description that we were sort of at opposite ends of the spectrum where I was thinking more from a marketing perspective and you were thinking more from a storytelling perspective. And as you said, I think like the realization is that These both kind of need to come together since they both touch so many different things and it would be wrong to just think of marketing as, OK, we are doing paid advertising, we’re doing a website and we’re doing like a few little banners of local design. And it will also be wrong to just think of storytelling as this purely artistic activity. Instead, we kind of need to bring them both together and really think about how we can use storytelling in our marketing and how we can sell our product in a way that also tells our story. 00:11:57 - Speaker 1: And maybe this question of selling, which is almost is more clarifying than talking about marketing, which is a pretty broad, maybe term or discipline, maybe that helps clarify, which is there’s the very artistic side, which I’d put this podcast in that category, you know, we’re basically here to explore philosophical topics that are of interest to us and our guests. Basically, Mark and I started it essentially for fun and then things got out of hand. Whereas maybe something like the memos we write where we describe the philosophies behind a particular product feature, maybe that’s in the middle, like, you know, we want to explore why and how we made this thing, but in the end, it’s partially to to that, hey, this feature might be useful if you’re a person that needs whatever it offers, and so in a way that’s sort of selling the product a little bit. Then you take something like our website or the app store listing page, and that is very explicitly when someone comes to your website, or at least when I go to a website for a product. Tell me, right? Tell me what’s good about your product. Tell me quickly, like, pitch me, impress me, help me figure out right away, is this for me, is this not for me? Do I want it? Can I afford it? Does it fit into my life? Does it solve the problem I have? Does the vibe of the product and the team like, fit with me well, and I want that, that’s appropriate for that setting. So yeah, there needs to be, or at least for us, what works is this balance between, we do have a product to sell, we have a business to run, and we need to be pragmatic about that, but at the same time, we’re all here because we want to express something artistic, we want to, as Mark would say, make a statement and, you know, our goal is to have an impact on the industry and how people see creative computing, and also we need to be viable as a business. Now, on the product side, how do you think storytelling does or doesn’t fit in there? 00:13:39 - Speaker 2: So we have already talked about all the different mediums that storytelling is really useful for. And I feel like Adam, you’ve been doing most of the exploration for us there and trying different mediums to tell our story and what’s been your experience so far. 00:13:53 - Speaker 1: Yeah, for sure. I think medium is incredibly important. The medium is the message, I think they sometimes say, but by here, by medium, you know, we talked about the TED Talk is one kind of format or like conference talks or lecture maybe is the medium there, but a different medium would be, for example, long form writing. So this is something I’ve done a ton of in my career, including at Hiroku and these long kind of academic essays that I can switch. And that’s actually quite different from the much shorter, punchier kind of copywriting you do for a website, for example,…

    Full show notes at the publisher

    https://museapp.com/podcast/transcripts/44-media-empires/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: We both really, really like writing and are good at it, and care a lot about the written quality of the product, and we both also have this product DNA where we’ve built software products before, and we know how that works, and we’re trying to figure out if you put those two things together, what can you make? 00:00:23 - Speaker 2: Hello and welcome to Meta Muse. Muse is a tool for thought on iPad. This podcast isn’t about Muse the product, it’s about Muse the company and the small team behind it. I’m Adam Wiggins here today with Mark McGranaghan. Hey, Adam. Joined by our guest, Dan Shipper of every. 00:00:40 - Speaker 1: Thank you. Thanks for having me. 00:00:41 - Speaker 2: And Dan, I know you like me are quite a reader, reading anything good these days? 00:00:47 - Speaker 1: I am. I’ve been actually reading a lot. I also just have to say, like, the way that you do that intro, it feels so calming. I feel like I’m in good hands. I wanna like slow down and just bask in it a little bit. Perfect. Yeah, but what am I reading? I just finished this book by John Green, who I love called The Anthropocene Reviewed, and John Green, he typically writes novels. I know him for his novels. He’s written a couple books called like A Fault in Our Stars, another book called Turtles All the Way Down, which have been really impactful for me, and this is the first series of his essays that I’ve read. It’s basically a collection of essays. And the conceit is that in the Anthropocene, which is the era that we’re in right now, which is the era in which humans are affecting the environment. One of the central things that we do is we give reviews to everything. If you go on Google Maps or Yelp or whatever, everything in our world has like a review that boils everything down to between 1 and 5 stars. 00:01:43 - Speaker 2: Yeah, I always find it funny when you look up something like, I don’t know, the Atlantic Ocean or like an abandoned power plant or something like that, and there’ll be reviews in there, which are often hilarious to read, but yeah. 00:01:57 - Speaker 1: Yeah, it’s really funny. He opens it up by saying that he noticed that someone had given a park bench, like a 5 star review, and it’s like, what is that? What is that about? Why do we do that? And so the conceit of it is every essay in it is a review that boils everything down to between 1 and 5 stars of lots of things like sunsets or sycamore trees or bacteria or every single topic at the end of it, he’s like, I give sunsets 5 stars, and then every time he does it, it’s hilarious, but it says something I think really interesting and I just tore through it in like 2 days. It was really good. 00:02:30 - Speaker 2: Yeah, for sure. I feel like he’s got quite a personality as a podcaster. I think YouTube was even maybe where he got started, kind of classic blogger, but yeah, great observations on the world, but also, yeah, very poignant observations, but also just really funny, really entertaining, and so that makes it, yeah, easy to read. I am at the point in my life actually, where there are many great books that have had a big impact on my life that are kind of a slog. But with being a busy parent and business owner and whatever else, I really appreciate something that’s just easy to read. It’s fun, it’s written in a way that it just flows smoothly and you can both get those great insights and widening of perspective, that is the reason why we consume media, especially things like long form books, but in a way that maybe it’s a little less costly in terms of your own personal activation energy. 00:03:22 - Speaker 1: I totally, totally agree. Like, there’s all those books where you’re like, I should really read this and I should really like it, but I’m just feel like I’m kind of out of gas, like, I don’t have the mental energy to do it, and then there are other books where you just kind of tear through it. I just went through this whole series of books. I basically went through the ouvre of this guy Irv Yum, who’s like a psychiatrist, and he writes, basically what I would term therapy fan fiction. And it’s so good. I read like 5 books in like 3 days and I just could not stop reading it, and I just like finding those things sometimes as a refresher to all the heavy stuff that we end up thinking about and reading day to day. 00:04:00 - Speaker 2: Absolutely. Well, tell me a little bit about your background. You kind of come from maybe a more classic Silicon Valley tech entrepreneur background, but then you had this journey of being early as a kind of substack paid newsletter, and now you’ve got your business every, which is very interesting, kind of modern internet media business, writers collective has some elements of some of the small giants, the business stuff we talk about here, but yeah, tell us the journey that brought you here. 00:04:28 - Speaker 1: The journey that brought me here, so my background basically started in software, really in technology and software. I started programming when I was in middle school. I read a Bill Gates biography and decided I wanted to start a Microsoft competitor, so I learned Basic, and I was going to build a Microsoft competitor called Megasoft, and Didn’t actually end up ever writing an operating system, although I really wanted to, but just fell really in love with that whole thing because I was super interested in business, and the only way to really start a business when you’re in middle school, is to be able to program cause that’s the only way that you can start a business where the only cost is your time. So, built a lot of apps, started with apps for BlackBerry in high school. And then the iPhone came out and I started building iPhone apps. That’s kind of how I paid for gas and food in high school, and then in college, finally met people that were also programmers and were also into like starting companies and stuff like that, and started my first company, it’s called Firefly. And there was an enterprise software company we built co-browsing, which is kind of like screen sharing, but all of that happens in a web browser, and we applied it to customer service, so built that for several years, primarily bootstrapped, so you’ll notice like a thread in my life is kind of this whole bootstrapping type mentality, and then sold it to Pega, which is this big public enterprise software company, right as I was coming out of school, and that was really, really good experience. I learned a lot about building a business. I ran the firefly business inside of Pega for a little while, and then I spent the next couple of years just like trying to figure out what I wanted to do with my life. 00:06:06 - Speaker 2: And I think this may have been the point where we met and I think what you described to me at the time and you had just started the super organizers newsletter and you were starting to interview people. Correct me if I’m wrong on this, but what I remember is you’d reached out to me and said, you know, hey, can we chat? I’m working on this kind of interview newsletter and the way you described it was, well, you didn’t exactly know what was next, but you figured talking to lots of really Interesting, accomplished, productive people might lead you to that somehow, and it really resonated with me because I was working on ink and Switch at the time, which in some ways had a similar origin after my sort of big career success in the form of Furoku and that ending and me trying to figure out what was next. Starting a research lab was a way. To kind of maximize my optionality, stay in divergent mode, not pick a thing to work on, basically, and eventually that did turn into something that was pretty focused around some specific goals, but at least in the beginning, the point was to do a thing that was incredibly exploratory and didn’t like tie me down to one very specific path. 00:07:10 - Speaker 1: Yeah, totally. And I definitely did that and the newsletter that I started Super Organizers was part of that. I think like, I went through this phase where I was writing a novel, which I wrote like 4 drafts of. I did tons and tons of other like little software projects and worked with a bunch of different people and had a bunch of different ideas that I was excited about. And eventually, I started this newsletter called Super organizers, cause I realized that I was just super interested in productivity and note taking. I’d had a bunch of ideas. In the, I would say like tools for thought space for a long time, kind of stemming from my first company where I just felt like I was this information processing machine, but my tools for processing information were like not great, and I was really interested in building software to like make that better. So when we talked to you, I basically started super organizers and the conceit for me, the reason for starting it was I wanted to build a productivity software company. But I didn’t exactly know 100% what I wanted to build, so I decided, hey, I’ll start a newsletter. I’ll interview like really smart, interesting people about how they think about their own productivity systems, and I’ll use that to inform the product I make. I’ll write the interviews up and get an audience, but like the real idea is it’s a way for me to do customer interviews with smart people. And so talk to you, published a bunch of interviews with a bunch of really, really smart people, and along the way, I just actually decided or found that people loved the newsletter, and loved the writing, and I could build a business with it, and that was very exciting to me and not something that I’d really considered before. So it kind of put me on this path of like, how would I do this as a business instead of like actually just going and building software cause I love writing, I love business, and this is a way to put them together. 00:08:56 - Speaker 2: Another interesting thing here, I feel like is the timing that sort of email newsletters were on the rise, maybe as kind of a replacement for blogs, RSS. I’m not sure exactly. Substacks obviously a big part of the story. You were early there and sort of the concept of paying a subscription for an email newsletter was something that I feel like kind of came out of nowhere, but then suddenly was getting a lot of traction and you were, I felt like very much in the right place at the right time to take advantage of that. 00:09:26 - Speaker 1: Yeah, it was a really, really interesting time. It was that wave about a year and a half ago where this started to really pick up that I was running super organizers and starting to think about this as like a business, and at the time I didn’t really understand that it was becoming this like trend, and it was kind of at that time that I started talking to my co-founder Nathan Behez. We’ve been friends for a long time, and we just both, at the time he was the first employee at Substack, so he was really feeling it and like, had been on this train for a long time and kind of knew that this was coming, I think in a lot of ways, and we started talking together at the time he was no longer at Substack. And we started talking about what could we build together, what we do together, and what that turned into is us kind of thinking about what would it look like to build a media company in this kind of environment where solo paid newsletters are becoming a thing, lots of writers are leaving their publications to do it on their own, and there’s a lot of benefits to that, but there’s also a lot of drawbacks, both for writers and for readers, that I think People maybe aren’t as sensitive to right now, but will become more and more important over time. And so we started thinking about how do we build a publication or a media company under this kind of environment, and we knew we wanted to build something that had a group of writers that was covering topics that we’re most interested in, which is basically topics in tech, topics that are about business, but that, you know, when you read them, you’re both entertained and you kind of feel like you’re getting something out of it. I would put this podcast in that kind of category too, where you feel like you’re getting something that is going to help you think better, make better decisions, be better at your job in some way. So we’re kind of like toying around with what is that kind of a media company look like? How do you build that? and how do you build the supply of writers and create incentives for them to all be in one place when there’s so much incentives to be on your own, especially if you’re someone that can write well enough to do that. And so, that’s where we started to come up with this idea for a writer collective, which I can explain, and start on this journey of like taking all these individual writers who could really write on their own in this environment and figure out how do we actually write together because in a lot of ways that’s better. 00:11:34 - Speaker 2: Well, that brings us really nicely to our topic today, which is, let’s say, building a media empire in the internet age, or just simply creating a media brand, an internet era media brand. And I think one of the things that was maybe eye-opening for me, watching your journey on this was thinking about what I would call classic media brands, I guess that’s the way to put it. Something like magazines and newspapers like The Economist is one that comes to mind, or The New York Times, maybe if you go more to entertainment, you have something like Disney, there’s one that I’ve read quite a bit about just because, yeah, Walt Disney is a really interesting entrepreneur and everything that’s been created there and how that company has evolved over time, is also really interesting. But I remember you telling me a bit about some of these what I would now call I guess like internet native media brands, and that’s something like Vox, for example, or Vice. So both of these to me are very evocative of like I know instantly what their voice is and what their kind of view on the world is, but they’re not one single media, right? Like you know, the Economist is a magazine. And so it’s writing, and that’s pretty much it. And then they have, I don’t know, data visualizations and things, but Vox, well, they have articles on their website, but they also have a bunch of podcasts, and then they have some YouTube videos, but they also have like a Netflix series and there’s definitely something that unites all of them, but at the same time they feel different to me in some ways from these more classic brands. And then you’re on this journey of bringing your perspective as a software entrepreneur, I don’t know, maybe it’s a software is eating the world kind of thing to, OK, how does the internet change media and especially if you’re doing it more at this indie level and yeah, as you said, like, how writers and publications and stuff even gets distributed to people, all of that is changing, which maybe creates confusion. It’s hurting some of these existing classic publications, and people have talked about the death of journalism and that sort of thing, but that it also creates new opportunities. 00:13:35 - Speaker 1: Yeah, totally. There’s a lot in there, there’s a lot to unpack. I think on the kind of like traditional media side, the way it has worked for a long time is, yeah, you have an editor at the top that is kind of assigning stories, is responsible for the voice and the vision of the publication, and writers kind of like slot into that more or less, and the publication is. Well, for, they pay you a salary, they give you an editor, they give you kind of like support, you kind of know what to expect. And a lot of cases, they don’t even give you a salary now because it’s too expensive, but like they give you some money and the publication’s job is to…

    Full show notes at the publisher

    https://museapp.com/podcast/transcripts/45-native-apps/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: So I do think it’s a really tough sell for classic native apps into the enterprise. Now there is another market which you might call independent creative professionals, and these buyers value different things and say what they want is powerful tools that are shaped to their needs and workflow that they can deploy on their platform of choice, and that give them a lot of abilities and that are kind of unique to them as a creator. 00:00:26 - Speaker 2: Hello and welcome to Meta Muse. Muse is a tool for thought on iPad and Mac, but this podcast isn’t about Muse the product, it’s about Muse the company and the small team behind it. I’m here today with my colleagues Mark McGranaghan. Hey Adam, and Leonard S Saberski. Hello. And I don’t know if you fellows noticed, but we changed the intro a little bit. I did. So this is a bit more aspirational than actual, but exciting news, Muse 2 is coming early next year, that will be in early 2022. I’ll link to our roadmap memo talking about that, and one of the top features there is a MacA. 00:01:07 - Speaker 1: Very exciting, the pieces are coming together. 00:01:09 - Speaker 2: Yeah, and certainly this has been part of our vision from the beginning, tying together all the devices where creative people do work. Clearly, the iPad, while we think it was sort of like an underserved device and has a lot of potential for creative uses, particularly this thinking work that Muse is all about, but having, I think, pretty well explored that, we also need to fill in these other pieces of the puzzle. And so, desktop is obviously the next step there. And of course, one answer on desktop is you make a web app, either something runs in a browser or something that runs in a, what’s called an electron app, which is basically just kind of a wrapper for a browser or a web technology app. But we’re opting to do something that is what I would call a native app, and I thought that would be a great opportunity to explore the topic of native apps generally and what those even are and and what they mean for users of the software. So maybe we can talk a bit about the technical side of that because it is fundamentally a technical thing, but then the design user experience, you know, what does it mean to design a native app and what’s the benefit to users or how should things look or feel different for them. And I’d also like to speak a little to the business side at the end because we’ve seen a big growth in a lot of interesting productivity tools, both kind of business team, enterprisey stuff, but also personal tools and see how the native app question fits in there. So Mark, you’re the most technical of this group, I think by a fair shot. So maybe you could briefly define for us what is a native app or what’s even the alternative to that and how do they differ. 00:02:48 - Speaker 1: Well, there are a lot of different axes here, but let me give you the classic native app and then the contrast with say the web app. So classically, a native app is something that you download as a binary artifact like a DMG versus a web app where you would go to a URL. It’s implemented in the native language and stack of the platform. So for an Apple products that would be Objective C or Swift. And it integrates closely with the platform features and libraries for things like UI systems access, input and output, and so forth. Contrast with web, it’s going to be implemented in the language of the web, you know, HTML and you might have more or less access to the underlying platform features you might not be able to read it and write the disk, for example. And then I think importantly, traditionally native apps store things locally. On the local disk and web app store things in the cloud. Now, as we’re going to discuss, I’m sure you can mix and match different axis here, but that’s the classic native app as I see it. 00:03:45 - Speaker 2: Right, so I think of the classic native productivity tools would be something like the Microsoft Office Suite. So if you were on a Windows computer in the 90s or early 2000s and you would download or even install it from a CD probably, so you’ve got the, as you said, the binary program, you copy that software onto your computer, you run it there, and then when you want to save something, a XLS. or a doc that goes onto your hard drive somewhere and you can transmit that to someone else, you can email it, put it on a floppy disk or a thumb drive, but everything is very on the local device and the software is there and downloaded and runs right there on your computer. And nowadays, both with things like Google Docs, actually, I think Microsoft has even transitioned to cloud kind of web apps with their stuff as well. That’s something where you’re really connecting to someone else’s computer or cluster of computers, AKA the cloud through your web browser and everything stored. Basically, most of the sort of software itself is run on their computer and sort of the results just transmitted to you and the data itself is also stored there. 00:04:52 - Speaker 1: Yeah, and just to give an example of mixing and matching these different aspects, you have electron apps which are distributed as binaries like DMGs on Mac, but under the hood they wrap what is basically a web browser, so you have a web implementation and then the resulting feel and storage characteristics is often in between that of a native app and web app. It feels kind of webby, but also kind of native, depends on the individual developer, but that’s an example of how you can mix and match some of these axes. 00:05:22 - Speaker 2: Electron has become incredibly pervasive. Slack’s desktop app is Electron, so it’s the Spotify app, so there’s the Notion app, so there’s the FIMA app, so this sort of, yeah, wraps up, would otherwise be a web app. Another piece on the technical side, I think is it’s not just this kind of web and cloud versus local program and local storage duality, but it’s also how you implement that interface. So there’s typically APIs that are customed to a platform, so Windows. has a set of APIs, Mac has a set of APIs, iOS has a set of APIs, there’s often widget toolkits that go with that, you know, on Linux, you have something like GTK, often there are different widget toolkits, and so the degree to which you use or don’t use those can make it feel native. Now, Leonard, maybe you can give us the user experience or the design side. What does native mean kind of within your discipline? 00:06:18 - Speaker 3: Yeah, I think there are a few different ways of looking at it. So one is to just take the technical definition and look at, OK, we have a native app. What does that mean for the design of the interface? And we have a non-native app, what does that mean for the design? And there are sort of implications on both sides that can make the user experience better or worse. But what I actually find more interesting is thinking about what makes an app feel native and look native, even completely separate from the technical implementation of it. So I think there are a lot of different factors to untangle that just from the user experience, make an app feel native. 00:06:55 - Speaker 1: Yeah, and we can enumerate a few aspects of this. So one that you’ve mentioned already is the look and feel based on the UI toolkit and how the controls look. Another, I think is how the app interacts with the underlying platform. So for example, different platforms expect applications to write user data in different locations on the disk, you know, like Unix has like the slash user or whatever, and Mac has the till the application support or whatever it is on Mac, right? And sometimes you get these apps that are multi-platform, they start writing data in really random places and it confuses you. And maybe a third example, the most subtle would be the mental models and metaphors that an application uses. So on Mac kind of uniquely there’s this idea of app that’s separate from Windows, like physical instantiations of the app, and so you can have an app open with no Windows. Or you can have an app open with multiple windows, and that’s quite different from how it works on Windows, where if you click the X, like the application exits, because the window is the app and vice versa. 00:07:50 - Speaker 2: Linux window managers typically work the same ways, and also that you can run the program twice, right? So that was something I has a Linux on the desktop user for many, many years, and I actually really liked that if I ran my Text editor, for example, a second time with my command pallet or from the command line or just by clicking the icon, I would get a second window, a second instance of that, and with Mac, when you click on it in the dock or you all tab to it, it brings whatever was already there to the front. So basically whether the program is running or not gives you different behavior when you go to launch it. 00:08:24 - Speaker 1: And maybe one more thing we could throw in there in terms of platform access is just the power of the features that you have access to. So a lot of audio and video things, for example, are hard to get at if you’re not a more native app on the iPad, for example, you can only get 120 hertz if you can’t do that as a web app and so forth. 00:08:40 - Speaker 3: And I think a lot of that is not just because you don’t have technical access to those features, but even just because these apps are designed for so many different platforms and so many different devices that basically every feature that isn’t available on all of these platforms just isn’t that important and isn’t that easy to build. 00:09:00 - Speaker 1: Yes, and this brings us to what you might call the implied aspects or dimensions of native versus non-native apps. So you mentioned one which is if you’re building a non-native app, it’s often because you’re building for multiple platforms and then you tend to get this least common denominator effect where you only use the features that are available on all platforms. Another one that we found is quite important is performance, where sometimes but not always, if you implement the app in a way that’s less native, you can suffer worse performance or perhaps have a lower performance ceiling. 00:09:30 - Speaker 2: One thing we learned working with web technologies and styluses was, for example, that the data you could get from the APIs was just less. Yes, you can get input, maybe you can even tell it’s a stylus, but you couldn’t get, for example, the asimuth of the pencil. And maybe that doesn’t matter for your particular application, but for example, for Muse where we wanted to do weird stuff with you hold the stylus in a different grip, and then you get a different tool, and we thought this would be a cool and interesting and powerful way to take advantage of that unique form factor, but it just wasn’t on the web at the time. And I think the web tends to catch up eventually, but that stuff always comes first to the native platform APIs. 00:10:08 - Speaker 1: Yeah, it’s a good point that there’s a time dimension here where, as you said, often web or multi-platform umbrellas will catch up over time, but you’re less able to change as the underlying platform makes changes, you need to basically wait for the change to propagate up through the various abstraction layers that you’re using, whereas if you’re native, as soon as the underlying API changes, you can adopt it. 00:10:32 - Speaker 2: Now another slice maybe of the kind of native versus not, again on the technical side here is the web I think of as being the sort of universal runtime that won the wars of the early 2000s, so for those graybeards like me who are around to experience that. Java and the JBM was a very big push in the industry to create this concept of right once run anywhere, that you have different computing platforms or different kinds of computers, different operating systems, different manufacturers, but in a way they were kind of especially pre-mobile, they were basically all pretty similar in terms of they have screens and keyboards and some kind of pointing device and seems silly that you have to rewrite your app to run it in. Different places and the JVM had this concept that it could make this universal run time, make it run anywhere and Flash had a version of that as well, but they both were basically pretty terrible experiences for anyone that ever remembered running Java Servlet applications or Flash had its uses, but in the end also it felt like this this very confined box that was just constrained. From interacting with your computer in all these useful ways, and I think the web eventually won that war where essentially everyone now has a web runtime environment. It’s called the browser. It’s become extremely powerful. It often can tap a lot of the operating system APIs for hard audio and video access and things like that. And of course we do love the web for a lot of reasons and that has unlocked a lot of things, but in the end it is this essentially kind of translation layer. Another type of translation layer that isn’t requiring the user to install a runtime, that is a browser or a JVM is something like React Native, or something like Cordova. It’s the right ones run anywhere concept, but rather than trying to give that sort of general bundle to someone on Windows and someone on Mac downloads the same program, the Java jar or the web HTML plus related assets bundle. Instead, you actually compile it, trans. You might even say to each of these platforms. So React Native, for example, is a mobile application platform. You write your app for a phone, but then it can compile to iOS and it can compile to Android, and these are true native apps in the sense that then you compile them and build them with the normal iOS and Android tool chain, they become a binary artifact that is probably hard to tell from casual inspection. That it wasn’t built kind of directly using Xcode or the Android equivalent workspace. And yet of course it has the downside that now as you said, lowest common denominator there is this translation layer, but it just kind of happens at a different time. It happens on sort of the developer’s computer when they do the build and through this toolchain rather than the end user’s computer. And so that probably gives you some performance benefits, but there is this thing where you’re kind of homogenizing between the platforms. 00:13:36 - Speaker 1: Yeah, and with React Native in particular, you seem to get the now you have N +1 problems issue, which we have to some extent with browsers, sort of famously web developers deal with browser quirks and every browser is a little bit different, although that seems to be less of an issue these days with auto updating browser. But with React Native, it seems to be a huge deal. Probably because of the surface area and complexity and dynamism of the underlying APIs, just trying to write something that compiles reasonably and runs reasonably on these two platforms which are very different and have very particular APIs just has proven to be quite hard, but we can talk more about how that’s played out. 00:14:07 - Speaker 2: But where I thought the technical side interleaves pretty well with the designer user experience side is I feel like this. I don’t know if it’s a siren song, or at least it is an appealing idea to developers and to certainly to businesses that don’t want to have to maintain code bases and multiple platforms that you write kind of one single code base and then you can deliver it to different platforms through some kind of minor effort, minor translation layer. And I feel like it’s so compelling to the creators of the software, but then as a user of the software, then there’s this thing where, yeah, it just seems like it’s never as good. It’s gone throug…

    Full show notes at the publisher

    https://museapp.com/podcast/transcripts/46-industrial-research/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: And I don’t hold this against Apple or anybody else. There are billions of people on Earth who need great computers, and most of them are not scientists or authors or policymakers, but we believe that this has left a gap where there just simply isn’t a major computing group that’s actually focused on how to use computers in this intelligence amplifying way. 00:00:25 - Speaker 2: Hello and welcome to Meta Muse. Muse is a tool for thought on iPad and Mac. This podcast isn’t about Muse the product, it’s about Muse the company and the small team behind it. I’m Adam Wiggins here today with my colleague Mark McCrannigan. Hey, Adam, and my frequent collaborator, Peter Van Hardenberg from I and Switch. Hi, it’s good to be here. And Peter, one of the things that I find fascinating to talk to you about is your varied hobbies outside of the world of computing. What’s your latest interest? 00:00:56 - Speaker 1: Oh yeah, I mean, when I’m not, you know, brewing beer or getting into some strange creative hobby of one form or another, well, I guess I’m always picking up another one. So lately I’ve been doing a lot of hydroponic gardening, and I’m not growing anything of legal dubiousness, but with the pandemic, first I was focused on trying to basically have some green space in my home, because I was living in San Francisco and we didn’t have a yard. And then more recently, I have moved back to my ancestral homeland of Canada, and it gets real dark and cold here in the winter, and I wanted to make sure I could secure a steady supply of Mexican ingredients, particularly herbs and chili peppers and things that you just can’t find. Sort of north of the wall in the offseason. So that’s been a lot of fun. I’ve been learning a ton about electrical conductivity and how to take pH measurements and having a lot of fun with automating all the components of this system over time. So these are going to be the most expensive cherry tomatoes in the world by the time I’m done, but it’s just a blast learning about all this stuff and, you know, what kind of absorption wavelengths are better for different kinds of plants and so on and so forth. 00:02:09 - Speaker 2: And correct me if I’m wrong, but I think the term hydroponics typically refers to growing plants without soil or with minimal soil. That’s right, I assume here you also have the artificial light element as well with the northernly climate. 00:02:22 - Speaker 1: Yeah, and basically what I have is sort of, if you imagine like a 2 m by 2 m bed or maybe a 1.5 garden bed, that’s sort of cut into 3 pieces and then stacked into a bookshelf. And then nutrient and oxygen-rich water circulates sort of around these U-shaped trays and then cascades back down to a reservoir in the bottom, where it gets pumped back up to the top in a loop. And so I routinely come in and I have to top up the water, there’s a lot of water loss due to transpiration, which is where basically the water goes out to the leaves and then evaporates, and then you have to sort of monitor how much water there is, but also regularly top up the nutrients to make sure that all of the vital macro and micro nutrients that the plants need to live are present in the solution. It’s a fun little chemistry project. 00:03:10 - Speaker 2: And I would be disappointed if there wasn’t, I don’t know, a raspberry pie or something connected in this mix somewhere. 00:03:17 - Speaker 1: Oh yeah, there are 2 computers now involved. There’s one that doses out the nutrients using peristaltic pumps. And there’s a separate one that came with the unit, which handles notifying me when the water levels are too low, there’s a little ultrasonic sensor that can tell when the reservoir tank gets low on water, and also handles scheduling the lights off and on during the day. I’m still hopeful about automating the nutrient sensors, but it turns out that monitoring pH over time is actually a surprisingly difficult problem, and that a good hardware solution actually involves a fair amount of like upkeep and maintenance and expense just in sensor probes alone. So so far I haven’t quite taken the plunge there, but I think it’s just a matter of time. We’ll get there, don’t worry. The end state, of course, is to build a robot arm that will like use computer vision to spot when a cherry tomato is ripe, and then pluck it for me and place it on a conveyor belt. But uh, you know, I think we’re still a few years out from that, both in terms of like technological feasibility, but also just in terms of like, I got a lot of other projects on the go these days. 00:04:23 - Speaker 2: And surely plucking the ripe literal fruits of your labor is the funnest part of the whole thing, so save that for last to automate. 00:04:33 - Speaker 1: Yeah, my kids really enjoy going into the garden. They get the little step ladders out and climb up and peer into the different tiers and pluck leaves to sample. Honestly, this thing is the only way I’ve ever convinced them to eat green leaves, because they’ve learned now that there’s lots of interesting green leaves they’re allowed to eat in the garden. But if you put a salad on their plate, they won’t eat it, but they’ll go and like forage some mint leaves or basil or things like that. They’re into that. 00:04:57 - Speaker 2: And I mentioned we’re frequent collaborators, so the three of us worked together all the way back in the Hiroki days. Nowadays you are leading, administrating, directing the I and Switch Research Lab, which was a position I had previously held before entering the new spin out, which we can talk about the relationship there, but I’m sure the audience would love to hear about your background. How did you end up connected to this unusual band of misfits and unusual space in computing? 00:05:26 - Speaker 1: I always tell people that I like to move like a knight across the chessboard of the industry. I don’t like to go in a straight line and I don’t like to follow an obvious path, so I move a little bit to one side and a little bit across. So before Ink and Switch, I had been working at Hiroku with the two of you. But my background is super varied. I have been an Arctic oceanographer and spent time collecting data at sea. I’ve had waves roll over the side of a flat bottomed research vessel and swamp my boots while I was working on the aft deck. I’ve worked in game development and written physics engines for the Game Boy DS. You know, it’s really hard to ride a physics engine using only integer math. You really sort of take the ability to like divide numbers for granted in day to day computing, and so that was a really cool challenge. Yeah, I’ve done computational Shakespeare, which was cool. There’s the Internet Shakespeare editions are like a scholarly Shakespeare, so if you want to be able to ask questions about, like, can we tell who typeset this page of an original edition by analyzing their use of combined letter ligatures. You know, because they think they can tell different typesetters had different habits for where they would draw type out of the frames. But all those kinds of questions about provenance and genuineness of Shakespeare, we were building technology to enable that kind of computationally. So, yeah, I’ve done a lot of weird and wonderful things before I wound up at I and Switch, and if I’m lucky, I hope to do many more in my career, so, so far so good. 00:06:57 - Speaker 2: And then another important piece here is, what actually is Ik and Switch? What does it do? 00:07:01 - Speaker 1: Right, yeah, I and Switch is an independent industrial research group. We’ll break that down a little bit more, but basically, the way I describe what we do to people who are sort of outside the field is that we think that computers have much more potential to Make us smarter and more capable than we’re really seeing happen with the kind of technology platforms we have today, and we know that that’s true, but we don’t really know how best to pursue it, and we sort of feel like a lot of the fundamental requirements to be able to do that work aren’t in place yet. And so, I can switch research. It is about trying to light the way to make possible these kinds of breakthroughs in the way people build software and the kinds of software people can build by unblocking and discovering paths forward for people. 00:07:57 - Speaker 2: And if one were to flip through the publications on the I can switch website, I’ll link in the show notes, you’d quickly get a feel for, I think a lot of research areas that are things that Mark and I mention and with our guests here all the time on this podcast. So end user programming, for example. Yeah, what a coincidence, increasing the accessibility of programming, obviously kind of tablet touch interfaces or next generation interfaces generally. Local first software is a huge one. We had Mark Klepman on just. Recently to talk about that, and there’s many kind of sub branches of that sort of you think of it as like oh what comes after the cloud or how do we give data agency back to creative people. So those topics, many, many of the things that we talk about here really do come from or have their roots in the research there, and the research is ongoing, so those ideas are continuing to be developed and pushed forward by you and your team. 00:08:48 - Speaker 1: Yeah, there’s an endless amount of work to do, and I think the hard part is really just sort of continuing to find the efficient frontier, right, which is where are the most important unanswered questions, who are the people that can do that work, and how can we convince them to come and spend a bit of time with our ragtag band of adventurers? 00:09:09 - Speaker 2: Could you give us an example of something you’ve published recently on, just to give a taste for the kind of research work that’s undergoing there? 00:09:18 - Speaker 1: I’ll give a little preview of two unreleased papers that are coming up. Maybe that’ll be even more exciting for folk if anyone out there follows us. We have two pieces that are currently in editing and sort of preparation for publication. One of them is called Inkbase and the other one is Paratext. Now, Ibase was led by James Lindenbaum with Shimon Kliski, and it was an exploration of how you could program ink. Now, One way of looking at this is to say, well, what should the programming language for Ik be? But in fact, we sort of deliberately cut that out of scope. What we wanted to know was what would an ink programming environment feel like? What would it be capable of? You know, how could you use it if you had it, even though we didn’t have it, right? As a research project, what we wanted to know was kind of like, well, what would happen if you did? This was also in partnership with Josh Horowitz, who came to us from Dynamic land on his way to grad school. 00:10:22 - Speaker 2: So we built an environment that allowed you to program ink drawings to make them interactive, and ink here you mean the digital ink, the same exact kind that is in use, except there you scribble on your board or whatever, and that ink can be moved, it can be deleted, it can respond to To your interactions and create interactions of its own. 00:10:31 - Speaker 1: And so we saw really cool ideas explored there like Shimon built a music sequencer that produced MIDI out of the system and let him drive sound synthesis engines using drawn lines. James demonstrated how to build like a fitness tracker, you know, sort of like the Seinfeld streak that people often use. What if you could make that a programmable thing or like a to do list? You know, like a Zettel casting or a personal GTD kind of system, but one that you could mold and actually make smarter over time by adding interactions as you develop them the same way that sort of like an Excel spreadsheet grows out of a simple table of numbers into some fully featured and powerful computational environment. We want to know what happens if a drawing evolves over time to become a computational environment that responds to your needs. And your discovered requirements. So that’s the ink-based paper. It was presented at live very briefly this year, but in classic Ink & Switch style, we have a massive paper going into all kinds of detail and with links to some code coming soon. And that kind of represents one angle of our work. Another piece that we’ve been working on, we’ve talked about local first, you mentioned earlier, we’ve been exploring something called CRDTs, that’s a conflict-free replicated data types. A really gratuitously confusing name for what is basically maybe more usefully to think about like Git for data structures, mergeable data maybe mergeable data, yeah, if you have like a JSON file in Git and then you check in changes and then somebody else checks in changes and then you go to merge and you just have like some kind of nightmare of text editing and comma placement and figuring out what really happened. The idea behind automerge is like, well, what if the data structures were smart enough to synchronize themselves and what kind of new capabilities would you get that? And that’s really been sort of foundational research that’s enabled a lot of local first work over the last few years and we’re by no means the only game in town, but one of the problems we keep running into with that is we write a lot of these big essays and we want to have local first tools for it. But today the kind of state of the art is like, OK, well, you can do plain text editing. Or you’ve got nothing, and our essays are these like complex multimedia documents with videos and asides, and we won’t be able to make suggestions and comments all throughout them as we edit. And so, what we needed was a rich text CRDT and that is to say a CRDT that was aware of formatting and spans. And we talked a lot in the Paraex paper, which is coming out soon, I hope, is in concert with Jeffrey Litt, who led that project with Slim. 00:13:12 - Speaker 2: Notion, former guest of the podcast, in fact. Yeah. 00:13:15 - Speaker 1: So we’re looking forward to publishing that because it turns out to be a surprisingly subtle problem. If you’ve ever dealt with non-hierarchical data, like extent data overlapping extents, it just leads to a lot of like really interesting and subtle, quite literal edge cases. So, we’re eager to present that to everybody as soon as we stop finding bugs in the implementation. I think we’re close, we’re close. 00:13:43 - Speaker 2: I think we said before we talked with Lis Lee in a previous podcast about whether software is ever done and certainly research is never done. You have to just kind of draw a line in the sand somewhere and say we’ve advanced the state of the art enough that we think others can build on this. Let’s publish. 00:13:59 - Speaker 1: Oh, I have a great Dune quote for this, it’s right in the zeitgeist now. I’ve been using this line for years, but the way I think about this is in the words of Frank Herbert, Araki teaches the way of the knife, it is finished because we stopped here. Yeah. So by that, I mean, you know, you kind of go into a space and you work for a while, and you can spend your whole career bashing away at one problem, but one of the things I think we do really well and actually that we’ve inherited from your time as lab director is like this ruthless discipline about sort of pencils down on a given date and moving on. If you don’t do that, it’s really easy to get caught up in what you’re doing and to continue to pull that thread, you could be at it for the rest of your career. And maybe that’s good, but by stepping back and sort of re-evaluating, it forces you to kind of Both take the time to publish, but also to sort of take the time to think about what’s next and what’s really important now. 00:14:49 - Speaker 2: I think that maybe this is differen…

    Full show notes at the publisher

    https://museapp.com/podcast/transcripts/47-designing-creative-tools/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: I think complexity gets a bad rap because I think a lot of times people think complexity is the opposite of simple and everyone loves simple because simple is elegant. How do you have your creator tools give people the knowledge of how to be able to address such complexity? 00:00:23 - Speaker 2: Hello and welcome to Meta Muse. Muse is a tool for thought on iPad and Mac, but this podcast isn’t about Muse the product. It’s about Muse the company and the small team behind it. I’m here with Mark McGranaghan. Hey, Adam, and our guest today, David Hong of Webflow. 00:00:38 - Speaker 1: Hey, thanks so much for having me. 00:00:41 - Speaker 2: Now something that we talk about quite a bit in the Muse world, maybe we take inspiration from physical workspaces, physical studios, but I understand you are creating your own physical studio screen free these days. 00:00:54 - Speaker 1: Yeah, it’s one of the pandemic projects, if you will. We’ve been working in our garage and trying to create a more creative space that just really fosters movement and I think the inspiration just came from Back pain, you know, and just sitting in front of your desk all the time and just being on Zoom, which is a lot of my day these days. And I was watching Brett Victor seeing faces again and just really got a lot of inspiration of like How do you leverage like physical spaces to create stuff? So my girlfriend’s an interior designer and I used to do a lot of art. I went to school for art, which ties a lot into a lot of the work I’m interested in these days and really just wanted to create a space for us to be like, let’s just work all analog and really Just to feel something, right? Just create something really physical, just to really deviate away from what feels like a 100% digital world right now. 00:01:57 - Speaker 2: Yeah, doing things with your hands, the texture of paper or certainly craft materials. I like to go to just art stores, craft stores, and yeah, I like highlighters and I like chunky markers and I like butcher paper, and I like all that sort of thing, and I have less as the digital tools get better and better and in fact. Superior, particularly in their shareability, which is really important on your kind of distributed teams, those things become more of a curiosity maybe or something I keep around, but every once in a while I get them out for a similar reason to that. But yeah, maybe that means I should really just take up like wood block carving or something like that. 00:02:34 - Speaker 1: Yeah. The thing that’s interesting about that too is I think in many ways, our tools are processing way faster than we can think about our ideas. And the thing I love about working on paper and those chunky markers like you said, is it gives you time to really kind of flush through the idea and work on it because the problem today is not the level of computation you have access to, maybe 10 or 20 years ago. It’s like you can process and build anything, but it’s just like how do you Hash out the ideas and I’ve really kind of found this return to working on paper recently and that’s whether it’s drawing up a user flow or creating low fidelity wireframes. It’s been really helpful to work in that material that almost intentionally slows down and gives you time to think a little bit deeper. 00:03:24 - Speaker 2: And I’d love to hear a bit about your backstory, days before web flow, and then what you’ve been doing now that you’re there. 00:03:30 - Speaker 1: Yeah, so, right before I joined Webflow, I was the head of product design at a health tech startup called One Medical and was there for about 4 years. I led design and research there. 00:03:41 - Speaker 2: Quick personal note, I was a customer there while I lived in San Francisco. This was kind of A doctor’s office, but reimagined a bit in terms of being more user experience centric. Is that a right way to describe it? 00:03:54 - Speaker 1: Yeah, that’s accurate. I hope you had a good experience with it too. 00:03:57 - Speaker 2: I did. I’m missing that there is no such thing in Berlin as far as I know. User experience is not a key feature of doctors I visited here, sad to say. 00:04:08 - Speaker 1: Healthcare experience is something where I think we need more designers and more technology, like thinking about that end user experience. Yeah. So when I was at one medical, one of the first features I started working on was our video visits platform. So it was being able to do a one on one virtual call which You and your doctor, and I built that prototype using Quartz composer and kind of started that from the initial prototype of like how we could even wire the AV and really test these cases. So a lot of what I’ve been interested in is design prototyping in a lot of ways. And prior to one medical, I was director of mobile design at a company called Black Pixel that was really focused on Like iOS and Mac apps doing our own products, but then also doing a lot of client services as well. And what brought me to web flow was after I left one Medical, I think. It’s really great when you leave a place that you feel like you could be there for another 4 years, and that’s kind of how I felt at one medical and was just looking for something a little bit different. So I took a mini sabbatical, probably about 2 months off trying to figure out what’s next. And my original idea was considering to do a startup around like prototyping on the iPad, because I think that was the year when Swift UI came out and I thought to myself, it’d be really cool to Build tools for people to build, and really build layout, and whether it was like a full-on developer tool or prototyping tool. That’s what I was exploring, but I think for me, I know how hard startups are and the life expectancy of those. So, you know, it’s something that I was continuing to explore lately, but then got connected with web flow. And for those who don’t know, web flows a visual development platform and it’s really focused on websites, blogs, and more dynamic web experiences. And I think the thing that got me really interested in that is this bridge between design and engineering. And it wasn’t just prototyping, but the stuff you build goes straight into production right away. So you can build your site, publish it, and you know, wire up a domain and you’re done. And I was just like, wow, you know, I think this is a really interesting space to be able to take the things that I was really excited about, which is like visual programming. And that is naturally just a part of it too. And I was like, OK, this is a company I have to join. Like I think at that time, they were growing and still growing, and I figured, you know what, instead of doing my own thing, I’d love to join forces with a company that’s already doing a good thing. 00:07:02 - Speaker 2: And thinking about the product positioning there. Is the target user or I’m sure you have a lot of diversity of customers now, but when you’re doing this design work, do you think of it as someone who’s coming from maybe a simpler tool, I don’t know, Squarespace comes to mind, and they want to upgrade and do something that’s more powerful and gives them more control over the CSS more capabilities, or is it actually the other way around, which is someone who’s been hand coding their HTML and they go, you know, this is a little bit tedious, and I’d like a visual tool that augments my ability to do that. 00:07:35 - Speaker 1: Yeah, oh man, that’s such a good question, and I think it’s something we’re talking about a lot. And the thing that I know for sure is, you know, our end user and who we’re targeting are designers, and not to get into this existential crisis, but it’s like, what is a designer, right? There’s so many different flavors of what a designer can do. I would say this predates my time at web flow, but I would say like when the early product was being developed. I think it was really focused on the web designer and the web designer that really knew, really familiar with HTML and CSS, you know, that material of code to create and build these sites, but I think as Our customer base has grown, you are kind of seeing people who maybe their mental models are more from the Squarespace or using a tool like FigMA or Adobe XD to really understand design, so they’re kind of bringing those mental models in. So I think the thing that I think about a lot is What are the different types of personas of designers that we’re looking to serve, and that could be many different levels, you know, could be designers who know code really well or they want to use no code tools so they don’t have to know code. 00:08:52 - Speaker 2: If I can make a comparison to Hiokku, this was a similar, I think dilemma we had, you might say in our user base, and of course a good product can be used by different types of people and it works to try to understand the different segments you’re trying to support. Yeah, Hiroku both had developers who were people that maybe would have struggled a bit to get like a production deployment of. on rails and a SQL database and so on, and we made that much more possible for them to do, but it also had the other way around, which was professional developers that completely knew how to buy a server, install Linux on it, put it in a co-location facility or set up a VPS or whatever, do all that server and operation stuff. They said, I don’t want to bother with that. I would rather outsource. To you, it’s undifferentiated work. I just want to build my app, but we have people that are sort of coming from two very different skill directions that land on kind of needing the same solution, but as you said, like their mental models of how everything works is going to be wildly different in that, hence the huge design challenge to make a single product that works for both of them. 00:09:57 - Speaker 1: Yeah, it’s such a tough challenge because what I ask myself is, who do you serve in that instance? And for me, the answer should be both approachable software for these sort of tools. is you want to be able to abstract away the complexity, but you also want to be able to pop the hood open, if you will, right? So if someone wants to use code and make things more extensible, there’s a lot of challenges if we cap that from people and they don’t have access to it and to what you mentioned with Hiroku it’s like. Do people go with a different solution, or do you find ways where it can be a little bit more flexible for what people’s needs are? And I think that’s the sweet spot you want to hit and it’s really hard to find, which kind of makes me really excited about this space because it’s not only like a diverse persona, but it’s also the different use cases and how people learn too. So really trying to figure out how you find that place where it meets both of those ends of the spectrum is really challenging. 00:10:57 - Speaker 2: Maybe that’s a good moment to introduce our topic which is designing for creative tools. Now creative tools can include a pretty big gamut from word processors and video editing. Here we’re talking about maybe the fairly far end of the spectrum on complexity, which is dynamic modeling tools, web design, development, but if you think of that spectrum as being on one far end as the pure consumer, very everyday apps, something like a kitchen timer. Whether maybe things that are in the middle but still closer to that consumer side might be social media, for example, not to say there isn’t a ton of complexity in that, but compared to what you can do with creative tools or what the user can do with creative tools, there’s the variety of possible states essentially that a user can put their document into with anything on this end of the spectrum is vastly greater than some of those everyday apps. And that creates some pretty big challenges, but also for the right kind of person, and I would count, I think the three of us in that category, those challenges can be very fun and interesting. 00:12:02 - Speaker 1: Yeah, it keeps you on your feet, for sure, and I think the word I keep attributing to this is just dynamic, right? It’s that it’s always changing, it’s always evolving. And I think what’s most interesting for me in this space is you build a set of capabilities for people and you see what they do with it, right? And that’s different for what you alluded to is that, you know, a lot of my background before was consumer apps or networks and e-commerce and they’re more rigid in the user experience, so it’s more predictable with what people will do. Like, of course, there’s flows you want to Optimized for, but I think there have been times where I imagine a lot of spaces of people working in creator tools see this a lot, where end users just subvert and find new ways to use your tool and you’re always so surprised by it and I think Rather being worried about what happened to you, embrace that and see where it goes, and I think that’s really interesting. It’s just kind of like, uh, you know, this whole notion of like, I think Microsoft uses the term citizen developer or you know, end users creating stuff. Now it creates such a unknown journey map for a lot of these users, which I think is personally really cool. 00:13:22 - Speaker 2: Yeah, that rigid design you mentioned in, for example, e-commerce, that’s actually by design, you want a checkout form, for example, the number of forks in that path should be pretty minimal, right? The data is different, where I’m shipping to is different, maybe there’s a few options in there, but you don’t want to choose your own adventure on a checkout form and perhaps the work you did in the medical space was similar that you want something pretty structured, pretty rigid. Everyone kind of does it more or less the same way with some essentially minor variation is really the complete opposite of a great creative tool. I think almost by definition is one that your users will use it to make things that you never expected. They like you said, that subversive element. 00:14:08 - Speaker 1: Yeah, and I think that’s why at Webflow, we tend to call things capabilities versus features, and we want to focus on that lens where it’s like, what are we equipping end users being able to do versus like, here’s this feature that will do X or do Y but it’s more like, here’s this capability, here’s this offering. Let’s see what you do with it. 00:14:32 - Speaker 2: I’d be curious to hear if there’s any cases you’ve seen so far of web flows, users and customers doing something interesting, unexpected, even even subversive. 00:14:43 - Speaker 1: Oh man. 00:14:43 - Speaker 3: Have you had any bitcoin miners like we did on Hookku? 00:14:46 - Speaker 1: Not yet, not yet. We’ll see, there’s still time for that. I’d love to hear the Hiroka use case. There’s two that come to mind for me, and one is a weblow community member created, I think it’s called The Big Bed, and it’s a children’s story that he illustrated. I can’t remember if it was directly about his daughter, but it was this narrative that they created. So he created an interactive site with web flow that had audio and just this really great immersive experience. And then there’s another use case where someone in the blood flow community created a game that I used to love playing is he actually recreated some of the intro and functionality of the game Civilization in web flow, and I’m just like, oh my goodness, there’s so many events, so many interactions built this, and you could tell like the people who built this is just, it’s pure passion for learning and just love of creating stuff and like. When I saw those two things, especially, I’m just like, oh my goodness, like this isn’t just for building like the websites built on Twitter bootstrap where they all kind of look the same. It’s kind of returning this s…

    Full show notes at the publisher

    https://museapp.com/podcast/transcripts/48-rich-text/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: There’s been very little innovation and research more generally into what is a good interface for inputting equations. So I think most people are probably familiar with Microsoft Word or Excel have these equation editors where you basically open this palette and there is a preview and there is a button for every possible mathematical symbol or operator you can imagine. 00:00:28 - Speaker 2: Hello and welcome to Meta Muse. Muse is a tool for thought on iPad and Mac. This podcast isn’t about Muse the product, it’s about Muse the company and the small team behind it. I’m Adam Wiggins here today with my colleague Mark McGranaghan. Hey, Adam. And joined by our guest Sarah Lim, who goes by Slim. Hello, hello, and Slim, you’ve got various interesting affiliations including UC Berkeley, Notion, Inc and Switch, but what I’m interested in right now is the lessons you’ve learned from playing classic video games. Tell me about that. 00:01:01 - Speaker 1: So this arose when I was deciding whether to get the 14 inch or 16 inch M1 MacBook Pro and a critical question of our age, let’s be 00:01:10 - Speaker 1: honest. Exactly, exactly. I couldn’t decide. I posted a request for comments on Twitter, and then I had this realization that when I was 6 years old playing Organ Trail 5, which is a remake of Organ Trail 2, which is itself a remake of the original. I was in the initial outfitting stage, and you have 3 choices for your farm wagon. You can get the small farm wagon, the large farm wagon, and the Conestoga wagon. I actually don’t know if I’m pronouncing that correctly, but let’s assume I am. So I just naively chose the Conestoga wagon because as a 6 year old, I figured that bigger must be better and being able to store more supplies for your expedition would make it more successful. I eventually learned that the fact that the wagon is much larger and can store a lot more weight means that it’s a lot easier to overload it. Among other things, this requires constantly abandoning supplies to cut weight. It makes the roover forwarding minigame much more perilous. It’s a lot harder to control the wagon. And yeah, I never chose that wagon again on subsequent playthroughs, and I decided to get the 14-inch laptop. 00:02:12 - Speaker 2: Makes perfect sense to me and and what a great lesson for a six year old trade-offs, I feel like it’s one of the most important kind of fundamental concepts to understand as a human in this world, and I think many folks struggle with that well into adulthood. At least I feel like I’ve often been in certainly business conversations where trying to explain trade-offs is met with confusion. 00:02:35 - Speaker 1: They should just play Organ Trail. 00:02:37 - Speaker 2: Clearly that’s the solution. And tell us a little bit about your background. 00:02:42 - Speaker 1: Yeah, so I’ve been interested in basically all permutations really of user interfaces and programming languages for a really long time, so this includes the very different programming languages as user interfaces and programming languages for user interfaces, and then, you know, the combination of the two. So right now I’m doing a PhD in programming languages, interested in more of like the theoretical perspective, but in the past, I’ve worked on I guess, end user computing, which is really the broader vision of notion, I was at Khan Academy for a while on the long term research team. 00:03:18 - Speaker 2: Yeah, and there I think you worked with Andy Matuschek, who’s a good friend of ours and uh previous guest on the podcast. 00:03:24 - Speaker 1: Yes, definitely. That was the first time I worked with Andy in real depth, and I still really enjoy talking to him and occasionally collaborating with him today. So, I guess, prior to that, I was doing a lot of research at the intersection of HCI or human computer interaction and programming tools, programming systems, I guess. So, one of the big projects that I worked on as an undergrad was focused on inspecting. CSS on a webpage or more generally trying to understand what are the properties of like the code that influence how the page looks or a visual outcome of interest, and there I was really motivated by the fact that you have these software tools have their own Mental model, I guess, or just model of how code works and how different parts of the program interact to produce some output and then you have the user who has often this entirely different intuitive model of what matters, what’s important. So they don’t care if this line of code is or isn’t evaluated, they care whether it actually has a visible effect on the output. So trying to reconcile those two paradigms, I think is a recurring theme in a lot of my work. 00:04:30 - Speaker 2: And I remember seeing a little demo maybe of some of the, I don’t know if it was a prototype or a full open source tool, but essentially a visualizer that helps you better understand which CSS rules are being applied. Am I remembering that right? 00:04:43 - Speaker 1: Yeah, so that was both part of the prototype and the eventual implementation in Firefox, but the idea there is The syntax of CSS really elides the complexity, I think, because syntactically it looks like you have all of these independent properties like color, red, you know, font size, 16 pixels, and they seem to be all equally important and at the same level of nesting, I guess, and what that really hides is the fact that there are a lot of dependencies between properties, so a certain property like Z index, you know, the perennial favorite Z index 9999999. Doesn’t take effect unless the element has like position relative, for example, and it’s not at all apparent if you’re writing those two properties that there is a dependency between them. So I was working on visualizing kind of what those dependencies were. This actually arose because I wrote to Burt, who is one of the co-creators of CSS and was like, Hi, I’m interested in building a tool that visualizes these dependencies. Where can I find the computer readable list of all such dependencies? And he was like, oh, we don’t have one, you know, we have this SVG that tries to map out the dependencies between CSS 2.1 modules, and even there you can see all these circular dependencies, but we don’t have anything like what you’re looking for. That to me was totally bananas because it was the basic blocker to most people being able to go from writing really trivial CSS to more complicated layouts. So I was like, well, I guess this thing doesn’t exist, so I’d better go invent it. 00:06:12 - Speaker 2: Perfect way to find good research problems. Now, more recently, two projects I wanted to make sure we reference because they connect to what we’ll talk about today, which is recently worked on the equation editor at Ocean, and then you worked on a rich text CRDT called Paratext at In and Switch. Uh, would love to hear a little bit about those projects. 00:06:34 - Speaker 1: Yeah, definitely. So I guess the Paroex project, which was the most recent one was collaboration with Jeffrey Litt, Martin Klutman and Peter Van Harperberg, and that one was really exciting because we were trying to build a CRDT that could handle rich text formatting and traditionally, you have all of these CRDTs that are designed for fairly bespoke applications. They’re things like a counter data type or a set data type that has certain behavior when you combine two sets, and we’re still at the stage of CRDT development where aside from things like JSON CRDTs like automerge, we don’t really have a one size fits all CRDT framework or solution. You still mostly have to hand design and implement the CRDT for a given application. And it turns out that in the case of something like rich text, it’s a lot harder than just saying, oh, you know, we’ll store annotations in an array and call it a day, because the semantics for how you want different types of formatting to combine when people split and rejoin sessions and things like that are all very complex and it turns out that we have a lot of learned behaviors that arise, even from just like, Design decisions in Microsoft Word, where you expect certain annotations to be able to extend, certain annotations to not extend, things like that. Capturing all of the nuance in that behavior turns out to be really difficult and requires a lot of domain specific thinking. But we think we have an approach that works and I would really encourage everyone to read the essay that we published and try to poke holes in it too. This was like the 5th version of the. algorithm, right? So like months ago, we were like, all right, let’s start writing and then Martin, who has just an incredible talent for these things is like, hey, everyone, you know, I found some issues with the approach and, you know, oh no, 00, and sort of we fix those, we’re like, all right, you know, this one’s good and just repeat this like week after week. So I really have to give him a ton of credit for both coming up with a lot of these problems and also figuring out ways to work around it. 00:08:33 - Speaker 2: We talked with Peter a little bit recently, Peter van Hardenberg, about the pencils down element of the lab, but also just research generally, which is there’s always more to solve, you know, it’s the classic XKCD, more research needed is always the end of every paper ever written, which is indeed the pursuit of the unknown. That’s part of what makes science and Seeking new knowledge, exciting and interesting, but at some point you do have to say we have a new quantum of knowledge and it’s worth publishing that. But then I think if it’s just straight up wrong or you see major problems that you feel embarrassed by, then if you want to invest more. 00:09:09 - Speaker 1: Right, exactly. I think in this case. There was a distinction between, there’s always more we can tack on versus we wanted to get it right, you know, and in particular, the history of both operational transforms or OT and CRDT for rich text, just text in general is such that it’s this minefield of I guess to use kind of a gruesome visual metaphor, just dead bodies everywhere. You’re like, oh, you know, such and such algorithm was published and it’s such and such time and it was new hotness for a while and then we realized, oh, it was actually wrong and this new paper came out which proved like 4 of the algorithms were wrong and so on. And so with correctness being such an important part of any algorithm, of course, but also kind of this white whale in the rich text field, we thought it was important to at least make a credible effort to having a correct algorithm. 00:09:57 - Speaker 2: Yeah, makes sense. Yeah, I can highly recommend the Paroex essay. One of the things I found interesting about it, maybe just for anyone who’s listening, whose head is spinning from all the specialized jargon here, CRDTs are a data structure for doing collaborative software, collaborative documents, and then, yeah, rich text, the Microsoft Word is the canonical example there. You can bold things, you can italic things, you can make things bigger and smaller. Well, part of what I enjoyed about this paper was actually that I felt, even if you have no interest in CRDTs, it has these lovely visualizations that show kind of the data representation of a sentence like the quick brown fox, and then if you bold quick, and then later someone else bolds fox, you know, how do those things merge together. But even aside from the merging and the collaborative aspect, which obviously is the research, the novel research here. I felt it gave me a greater understanding of just how rich text editing works under the hood, which I guess I had a vague idea of, but hadn’t thought about it so deeply. So, highly recommend that paper. Just give them the figures, even if you don’t want to read the thousands of words. 00:11:05 - Speaker 1: I’m glad you like the figures. They were a real labor of sigma. 00:11:08 - Speaker 2: Perfect, yeah, so. 00:11:10 - Speaker 1: The one thing I would add is that CRDTs are a technology for collaboration, but the way they differ from operational transforms or OTs is that a CRDT is basically designed to operate in a decentralized setting, so you don’t need a persistent network connection to all the parts. you don’t need a centralized server. The idea is you can fluidly recover from network partitions by merging all of the data and operations that happened while you were offline, and this turns out to be really important to our vision of how collaborative editing should work because we think it’s really important for people to be able to do things like not always be editing in the same document at the same time as everyone. Maybe I want to take some space for myself to write in private and then have my changes sync up with everyone else thereafter. Maybe I’m, you know, self-conscious about other people editing. are seeing my work in progress, but I think that it would be interesting and helpful to look at what the main document looks like and how that’s evolving while I’m working in private, and you can have that kind of one way visibility with something like a CRDT versus with something like Google Docs, where it’s just sort of always online or always not editing in your own personal editor. Conversely, maybe I’m OK with everyone else seeing the work that I’m doing in progress, but I just find it really visually jarring to have all these cursors and different colors jumping around and People inserting text, bumping my paragraphs down the page. I’ve definitely been there. I’m not particularly precious about people seeing my work in progress, but I just cannot focus on writing when the page is just changing all around me. So in that situation, maybe I would want to allow other people to see my work in progress, so that we don’t duplicate effort or something like that, but I just have like a focus mode where incoming changes don’t disrupt my writing environment and these kinds of fork join one way window. Microgit style branching paradigms are really only enabled by a technology like CRDTs where you have the flexibility to separate and then come back together. 00:13:12 - Speaker 2: And I’m incredibly excited by the design research that needs to go into that. Now at this point, I think we’re still on the technology level, you know, one way to think of it is Google Docs came along, I don’t know, 15, it’s almost 20 years ago now, I can’t even remember, let’s say 15 years ago, and this novel idea that We could both have a shared document or several people could have a shared document, all see the up to-date version and type into it and get, you know, a reasonable response or have that be coherent was an amazing breakthrough at the time and has since been kind of widely copied notion, Figma, many others. But now maybe we can go beyond that, much more granularity, like you said, maybe borrowing from the developer version control workflows a little bit in a lightweight way, giving a lot more control and flexibility, and giving us a lot more choices about how we want to work most effectively. But before we can even get onto those design decisions and how do we present all these different things to the user, what are the different options? We need this like fundamental underlying merge technology, hence the endless fascination that we have the lab and increasingly the technology industry generally has with CRDTs because it has the potential to enable all that. 00:14:23 - Speaker 1: Yeah, when we were working on the Paratax project, Peter was pushing really hard for, don’t make this just a technology project. It’s a socio-technical endeavor and we need to invest a lot of time in the design component, also just doing user interviews, identifying how people interact with and. How people collaborate in the status quo on te…

    Full show notes at the publisher

    https://museapp.com/podcast/transcripts/49-software-longevity/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: Which by the way, something that’s a little bit unique to digital systems versus classic analog systems, you know, if your wrench is rusty or doesn’t work as well, but it still basically works as a wrench, whereas if you have one bit off in your software, just crashes, you know, you’re out of luck. 00:00:21 - Speaker 2: Hello and welcome to Meta Muse. Us is a tool for thought on iPad and Mac. But this podcast isn’t about me as the product, it’s about me as the company and the small team behind it. I’m Adam Wiggins here with my colleague Mark McGrenigan. Hey, Adam, Mark, you were giving us a very interesting little workshop at a team summit recently about the use of iPads in aviation. 00:00:44 - Speaker 1: Yeah, so aviation is one of the most interesting and powerful use cases I’ve come across for iPads in the wild. It’s so powerful and important that folks are willing to spend $100 200 dollars, $300 a year for high-end aviation-related iPad software. So there’s something right going on there, no pun intended. And as I’ve been exploring that world, there’s a very interesting contrast and sort of technology share between these super shiny iPads and this new software that’s being updated constantly, and the very old general aviation aircraft you tend to see out there. This is the Cessna from the 60s, which by the way, is basically exactly the same as it was 60 or 70 years ago. And then they’re being flown with these iPads from 1 to 2 years ago, and it’s very interesting to compare and contrast those worlds, and it led into this topic today actually because we were noticing that longevity of the aircraft versus the almost ephemerality of the iPads and the software and how much churn there seems to be in that world. So we want to dig into it on the show. 00:01:51 - Speaker 2: So Cessna, which is kind of a small private plane, is an extremely complex piece of technology and also one that is used in very high stakes situation, i.e. if it fails, you fall out of the sky and die, and it has very complex controls as well, but those are all I guess analog is the right name, but, you know, again, they look the same as they did in the 60s, even new ones built today, and the ones built in the 60s, they continue to, essentially, you need to maintain them, you need to replace parts and upgrade them to comply with newer aviation regulations, but Again, they haven’t changed much in that underlying technology and that’s so wildly different from the world of not just iPad, but software and internet in general where change is at an incredible pace and in fact that’s probably desirable in this what’s the piece of software that’s kind of the commonly used pilot software. 00:02:44 - Speaker 1: For flight is the most common one. 00:02:46 - Speaker 2: So that’s got maps, it’s got weather, it’s got flight routes, it’s got locations of other planes, all of the stuff is being presumably downloaded or even streamed in through APIs. It’s all very real timey and current information, and you want that, in addition to just keeping up with all the new capabilities of the iPad. So you get maybe that separation is nice, you get the benefit of the really fast moving software and internet world that’s on this device that’s strapped to the pilot’s knee, but it’s completely decoupled from the safety reliability oriented core instruments that are built into the plane. 00:03:24 - Speaker 1: Yeah, researching this reminded me a lot of navigation in cars. So my experience has always been if you buy or if you see a car that has like built in navigation, it’s always gonna be bad because it was designed 2 to 4 years ago and it wasn’t designed by a software company, but everyone just wants to use their iPhone, right, to navigate and they want to be able to plug it in and have it just their iPhone apps be displayed in the car. That’s a good way of embracing the reality that there is some shear between those two layers in terms of how fast the technology tends to evolve. 00:03:54 - Speaker 2: So then our topic today is software longevity, and I think you can slice this two ways. One is the software itself and how long that lasts or how durable that is, and then you can also cut it the other way, which is, yeah, software is eating the world or is invading everything from, you know, toasters to cars, and how does software’s dynamism impact the longevity of everything else as it creeps its way into the rest of our world. But as always, I like to start at the very beginning. So I guess first I have to ask what it means to you to talk about something being long-lived or having longevity, whether it’s software or a plane or something else. 00:04:35 - Speaker 1: Yeah, I think it’s the software being able to serve its stated purpose, which sounds very straightforward but has several important constituent parts. First of all, you actually need the software, you know, sometimes we just lose it. It needs to run, it needs to run correctly and needs to have access to the relevant data, needs to have access to the relevant pieces of the outside world in terms of APIs, and it needs the appropriate substrate to run on and interact with, and that’s probably other pieces that we could come up with. But there’s a lot of moving pieces that go into the software actually serving its original end goal. 00:05:07 - Speaker 2: For me thinking about that word longevity. I tend to think about what is long, I guess, what is a span of time that counts as long and of course it depends a lot on. What you’re talking about. So if you’re talking about all of society, culture, humanity, then perhaps you’re talking in the thousands of years, hundreds or thousands of years. So for example, the long now is a phrase that we used in the local first paper, we tend to use it internally on our team to refer to longer term thinking. This comes from the Long Now Foundation and the Long Now clock project, which is sort of this idea to build a clock that can keep time for, I think it’s 10,000 years. And it’s basically an art project, but it’s designed to inspire us to think longer term, and that can obviously connect to things about climate change or human culture, and since humans are naturally inclined to think probably pretty short term, actually really short term, we think about the day that’s ahead or the week that’s ahead of us, maybe at most, the year that’s ahead of us, we don’t tend to think in 10s or hundreds or thousands of years. So it’s maybe a society level thing. I think for individuals and thinking about, you know, softwares that impacts our lives as individuals, I think there a human lifespan actually is a pretty good chunk of time to compare something to. One interesting subreddit that I stumbled across years ago and still subscribe to is called Buy it for Life, and it’s essentially people just posting. Photos or anecdotes of products they purchased, they’re often something like a cast iron pan handed down by their grandfather or a pair of work gloves they bought 30 years ago that are still working just as well as the day they were purchased, and I think implicit in that is that there’s some kind of inherent beauty or virtue in something that does have this long lasting value versus something that’s more flash in the pan. And it’s interesting for me to try to tease apart the pragmatic aspect versus the, yeah, that inherent beauty. Which again, it feels to me like a virtue, but I’m trying to like dig a layer deeper and see if there’s something practical that drives that. Maybe it isn’t, maybe it just comes from a place that it seems right to me that something like products you purchase, that their lifespan of the product could be measured in something that is a portion of a human’s life that’s not thrown away in a month or a year even. 00:07:32 - Speaker 1: Yeah, and I think we can come up with a few good reasons why longevity is valuable. The zero reason would just be economic, depending on how long lived a product is, it has different economics. On the one extreme you have consumables like toothpaste, you know, you use your toothpaste, it’s gone forever. On the other extreme, you might have. Extremely durable things like stone tablets and mason reconstruction that could last hundreds of years. And in the middle you have the classic capital goods, durable goods, things like really nice hand tools or really well maintained car that you expect to last at least several decades, potentially longer, like you were saying a lifetime or more, and the economics of those things are all very different. This goes a little bit back to the pricing podcast that we had a while ago. Another thing is I think just continuity, like, for example, if you run a business on a piece of software or you run your own creative process on a piece of software, there’s real costs to churn in that. And another thing would just be preserving history, you know, having access to the past. I think this is especially important with software because it’s very easy to lose that both in the sense of the software itself and the data that it was manipulating. 00:08:36 - Speaker 2: And that side of it makes me think of some of these submergent field of sort of digital preservation, archive.org is probably the one of the biggest players they’re doing incredible work to save copies of websites, but also product manuals and old video games, and indeed other kinds of software. And maybe that brings us to, when you do leave the world of durable goods, it brings us to the world of information and information longevity. 00:09:02 - Speaker 1: Yeah, and one other point I want to add relates information is, I think there’s a dimension of longevity, which is, and I’m gonna make up a word here, roll over ability, you know, the ability to buy a new or get a new version of something that rolls over your previous state. So for example, like maybe you rebind a book or something in that way roll over the pages, or you can put a new engine and transmission in a truck and you roll over the truck frame. But some stuff can’t be rolled over. Classically the black box data, just some opaque binary format now you basically like once that software is gone. So I think that ability to roll over is an important dimension, even if it’s separate from a single instance having long longevity. Hm. 00:09:42 - Speaker 2: Yeah, well, information has this particular property that exists on a substrate or a medium of something physical atoms, but in the end, the information is not the physical thing. So, the book rebinding example, you can either rebind the same book or in some cases just transcribe it completely and as long as it’s a correct and accurate copy. Older books are an incredible artifact, maybe they have margin notes, something about how the pages were made or whatever does carry some history. There were the artifacts and objects of their own right, but ultimately the contents, the words on the page are probably what we care about. And so on one hand, information technology has actually been getting worse in the sense of the durability of the underlying thing, right? stone tablets were very durable, papyrus and later paper were less so, then we go into the digital world and it’s actually vastly less so, you know, everything from CDR. to cloud storage, the failure rate is pretty high, but because it is so easy, cheap to copy those bits from one place to another, to replicate it, you potentially have the ability to roll it forward as far as it’s worth your while to do so. Right. Then if we sort of come to software as a special class of information, and it is information, but it’s highly dynamic, and I think that points to some of the particular challenges with it in, I guess that would be sort of the first category that I mentioned there at the beginning, which is the software itself and its ability to be long lived. And I think some of this is cultural, you know, the tech industry is dynamic, it thrives on change, that’s sort of the nature of it and many things that are good about software and the internet and the tech world come from that willingness to embrace the new and almost an endless seeking of novelty. But the downside is, yeah, you get something that is not just an upgrade treadmill, but it just seems like it can be very much the case that the lifetime of a product or of data or any particular piece of software can be measured in Again, years and only a small number of years, which is comparatively just a very, very short time span. But I guess one question is, why is that? Why should software sort of default beyond just sort of tech? Maybe that’s what it is, but I, I feel there’s more to it than just culturally, the tech world doesn’t do the buy it for life, built to last thing. I feel like there’s something inherent to the dynamic information nature of software that makes it hard for it to be long-lived. 00:12:11 - Speaker 1: Yes, I think that’s true. There is a lot of things that need to go right for software to work, and you can see it in fact as something that’s strictly harder than preserving simple textual information for the following reason. You have at least that problem to start because you have the source code, then you need to preserve information about the dependencies, you potentially have the compiled source. And then you have the whole run time around it very broadly defined, you know, the computer, the APIs, maybe even the data, and it’s just a very broad multi-dimensional, and in many cases ill specified. State space that if you don’t get your thing exactly right in that state space, it doesn’t work at all, which by the way, something that’s a little bit unique to digital systems versus classic analog systems, you know, if your wrench is rusty, you know, it doesn’t work as well, but it still basically works as a wrench, whereas if you have one bit off in your software just crashes, you know, you’re out of luck. It’s very high dimensional and it’s very sensitive to errors in preserving the environment. 00:13:15 - Speaker 2: I think it’s one wants to even think of a binary artifact. So here you’ve got a compiled executable, you can download it, you don’t need the dependencies, you don’t need the compiler chain, and I think there’s the feeling that shouldn’t that just kind of work forever, but of course it’s as you said, it sits within this context of the system. If it’s accessing files on your file system, it’s calling out to APIs on the network, it’s accessing APIs in the operating system, even something like it just makes assumptions about what kind of hardware exists on the keyboard and mouse as being standard input devices that exist, and then you go onto a touch device and those aren’t there. And so over time those fundamental assumptions and APIs and the system changes around it. And I think that’s gotten dramatically more so with the internet, where you might call out even something as simple as a static website that has a Google Maps embed. Well, now, a big portion of that website, this big pain is depending on this exact integration to the service, and that that service is still online. And so I think that the one-off binary build shouldn’t have worked forever, does make some sense, for example, games, which kind of don’t have as many hooks, so let’s say just like a single player game, not some Complicated cooperative thing, but it tends to have very simple inputs and outputs. Displays things on the screen, maybe it needs to save a high score file to the disk as opposed to productivity software where all those little integration points you drag and drop and how do you open a thing in the browser and what all the different APIs that use to be a good citizen on the system, and those change all the time. They should with an operating system that’s growing and improving and evolving, but then that means the…

    Full show notes at the publisher

    https://museapp.com/podcast/transcripts/5-gesture-programming-for-the-ipad/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: Also something that makes it very unique is this like you’re you’re basically floating through space and you’re zooming deeper into your hierarchy and all of this is like a perfect illusion of seamlessness when it’s actually not seamless at all. 00:00:22 - Speaker 2: Hello and welcome to Meta Muse. Use a software for your iPad that helps you with ideation and problem solving. But this podcast isn’t about Muse, the product, it’s about Muse, the company and the small team behind it. My name’s Adam Wiggins. I’m here today with my colleague Mark McGranaghan. Hey Adam, and my colleague, Julia Rogats. Hi, Adam. And Julia, you have now made 2 have 2 years in a row to spend the entire winter in a sunny location away from your home in Germany. How’s that working out for you? You can repeat that again next year? 00:00:56 - Speaker 1: Oh yeah, I mean, I guess we’ll see about next year and what traveling is going to be like in the future. Um, but at least for the past 2 years, I’ve really enjoyed that. I think, I mean, I love my hometown, Berlin, um. And I love being here in the summer, but in the winter it can get quite gloomy and dark and cold, uh, and I’m very much a sun person, so, um, yeah, I’ve really been making good use of this remote company set up and you know, make your own work hours for the most part. So spending lots of time in Adventurous places, kind of splitting my workdays in half, which is something that I really like to do, get some work done in the morning and then do something nice outdoors and then work some more hours in the night. Um, it’s been really been a really nice balance for me throughout the winter time. 00:01:42 - Speaker 2: You have a very impressive ability to get stuff done while also interleaving it with adventure. You’ll, you’ll ship some major new feature and then go whale watching. 00:01:57 - Speaker 1: And then fix a bunch of bugs and then go kayaking or I’d be like, guys, I’m going to be 20 minutes late from the meeting. I’ve just got back from a scuba dive. 00:02:04 - Speaker 2: That’s yeah, absolutely. But it’s also a reflection of the kind of work environment we built. Mark and I talked about this on a previous episode of trying to make a space that is flexible. For all of the the people on the team to live the kind of life they want to live. And for you apparently scuba diving and uh whale watching and kayaking is is the life you want to live. 00:02:23 - Speaker 1: Yeah, it’s definitely been amazing to not have to separate your life so much between like work and traveling. Like usually traveling for me always happened on vacation, um. And I actually find the mindset that I’m in uh when I travel, when I’m in a different country to be extremely stimulating in many ways and actually that to make me more productive. So being able to mix that has been quite a blessing. 00:02:47 - Speaker 2: So our topic today is iOS development, and then from you specifically, kind of our gesturerer system and why that’s so challenging to implement. But I thought maybe for contexts for people that don’t know how IS development works either because they know about software development generally, but not necessarily kind of mobile development, or even people who aren’t necessarily that familiar with how software gets built. They might like to know, what does it look like for you? You sit down in the morning or maybe the afternoon to work on some features or fix some bugs, you’re going to start crafting muse out of artisanal ones and zeros. What does that actually physically look like? What devices are you using? What software are you using? 00:03:31 - Speaker 1: Yeah, so in terms of devices, I use a MacBook first and foremost, as far as I know, you still can’t develop iOS or Mac software on any other platform. So that’s where everything starts and it comes with the with the IDE basically to develop for the iPad or iPhone, which is called X code. 00:03:51 - Speaker 2: IDE being integrated development environment. 00:03:54 - Speaker 1: Yes, correct. Uh, so basically it’s kind of the entire tool kit that you need to write software for the iPad or the iPhone. You write all your code there, you compile it there, you debug it there. So what I usually do um is that I plug in the actual physical iPad. The XO also comes with a simulator and you can run all of your um iOS apps in the simulator itself. So basically just brings up a little screen on your computer that looks like an iPad or an iPhone and you can do most things there. But for an app like ours, which is extremely gesture driven and we use the pencil for many things, it’s a bit tedious to actually um work with the simulator and some things aren’t possible at all. So I work with the physical device plugged in. You can actually also build to it wirelessly as of a couple of years ago, but it is a little bit unstable, so I try to just depend on the cable there. Um, and yeah, then I just write some code, like click one button and then it runs on the device and then I can test everything there. 00:04:59 - Speaker 2: And this is the SWIFT programming language. Uh, we’re storing our data, or sort of the persistence layer is core core data. Do we use any other fancy libraries or APIs or is it mostly just kind of the Apple gives you a pretty complete kit for development, everything from the editor through to the language and all that stuff, the simulator like you said. Uh, whereas like I come from Mark and I actually both come from more of a web development background, there you’re putting together more mix and match, uh, the tools, the language, and the different pieces. But here you get this one kind of, it’s the Apple style thing, you get this one pretty complete kit. 00:05:33 - Speaker 1: Yeah, pretty much. Um, so I think. It’s fairly rare for an IOS project to have no like zero dependencies to any sort of third party libraries, but ours are actually quite minimal. I think we have something in there, for example, for like zipping and unzipping files. That’s something that as far as I know is not built into the IRS kind of standard library. But for the most part, really like the IOS SDK is extremely comprehensible. You can do all kinds of things with it. They over the years they’ve added um much more stuff, especially from kind of open source third party frameworks that were very successful, have often been integrated in one way or another into the um IOS ecosystem or they’ve basically rolled their own, their own version of it. So our dependencies on on external frameworks is actually quite small. 00:06:28 - Speaker 2: And at one point we were doing the, maybe this is back when Muse was still a lab project or a persistence layer was Firebase, which is this kind of mobile back end data service from Google. Um, what was our, I think you like we like that pretty well, developer experience wise, but what, what led to us kind of replacing that with the Apple standard on device storage? 00:06:49 - Speaker 1: Well, I think the main motivation here was that we basically didn’t want to be dependent on Google and kind of giving giving our users data um to be stored on Google servers. So I think that was that was the main motivation. 00:07:02 - Speaker 3: Yes, speaking of Sending or not sending user data to Google. I’m really proud that we don’t have any third party analytics libraries integrated into Muse because these are notorious for scraping all kinds of data and sending it to a bunch of third parties. You saw this recently with Zoom, for example, where they had, I think it was the Facebook SDK integrated and apparently unbeknownst to them was sending all kinds of user data to Facebook, presumably for advertising purposes. Um, so I think that’s a really healthy thing that we have with our current minimal dependencies. 00:07:30 - Speaker 2: We do have analytics, but this is a, a system built by you or, or it’s sort of a roll our own type thing. 00:07:37 - Speaker 3: Yeah, and it’s it’s extremely minimal and deliberate. So every single field, which is like basically like 3 or 4 that we send this analytic service, are handpicked by us. It’s in our code, it’s it’s explicit versus a dependency that’s updating every week and it’s scraping new random things from the OS and sending it to third party servers where you have no control over it. 00:07:58 - Speaker 2: Mark, you end up building the back side of things. Ya, you do the client side of things. How do you coordinate around that API? How do you, how do you figure out how to make those two ends meet? 00:08:08 - Speaker 1: I think um for the most part, it’s been pretty lightweight. We chat on Slack about what’s needed for a certain thing. Um, often Mark ends up kind of drafting a notion document or something that like API docs or design specification kind of thing. 00:08:24 - Speaker 3: Yeah, exactly. So, so typically these notion docs will have first the mental model, which I think is really important, like what’s the shape of the domain here, what are the key objects and key verbs, and then a sketch of the HDP API which again is usually very simple, and then a discussion of the behaviors that are behind that. 00:08:41 - Speaker 1: And then as soon as we get into implementing that, um, it’s usually we end up being online around the same time and I’m telling him, OK, I’ve just implemented this API. Uh, is it deployed yet? Can I, can I start hitting it and then I’ve just, you know, depending on what it is, I send some sort of event and mark checks in the logs if you see if he’s seen the right thing and you know, often there’s a few things from there that we need to fix like something is not encoded in the right way, but we basically just tackle that together via Slack or a video call. 00:09:12 - Speaker 2: Be just to round out the tech stack discussion since we referred to the front end there with, you know, SWIFT and core data on the back end we’re basically doing Ruby postgrass and Hiroku, which for Mark and I is kind of our very standard tool kit. I think they say, you know, we came out of this research lab where our goal was to push the boundaries of technology and what what we can do there and try lots of Weird and interesting cutting edge things. But once you have, once you’re moving into the realm of production and commercial products, they say, choose boring technology. Choose the boring things that are workhorses that have worked really well. I’ve used Postgrass, for example, for, I don’t know, now 15 or 20 years, um, and there’s always a shiny new thing, but the stuff that’s really reliably and the stuff that is performed reliably for you for a long time is often just the thing to do. 00:10:02 - Speaker 3: Yeah, I’m really happy with our back end stack, and of course, Hiroku, but also Postgrass in particular, such a great database, super rock solid, super flexible, and now we can use it for both our sort of online um data as well as our analytics data. 00:10:16 - Speaker 2: Yeah, and a quick shout out on that kind of from the product perspective to data clips, which is a little way to bundle up a SQL query in a form that you can share it as a, um, as a web page. We use that quite a bit as our kind of our ad hoc analytics sharing system. Right, well, let’s get into the media part. I hopefully that gives some good context for um technical or um less technical folks about exactly what the pieces are here. Now getting into something that is pretty, and all of that I think is fairly sort of standard stuff that you might see in a in an iOS app or an iOS app that has a small back end. But getting into Muse, which is trying to really push the boundaries on what you can do with a tablet app, with these unique gestures, the different treating, treating the pencil differently from the the hands, that there’s multi-handed gestures and all this. So we have quite a bit of both design and engineering effort that has gone into our, our gesture system. But maybe we can start at the very beginning. Julia, what is a gesture? 00:11:20 - Speaker 1: A gesture is uh it’s a good question actually. I don’t think I’ve ever defined that for someone. Um, in terms of IOS development, there’s actually a whole system around gestures and gestures can be of one or more categories. So there is a pen gesture which would be just setting your finger down on a screen and moving it somewhere. You might be actually touching an item that you want to drag along, but you can also, you know, pen for any other reason, for example, to draw something. Then there are things like swipe gestures, which are also a pen in a way, but they’re like distinct here like just flipping through pages. Then there’s scrawling, which is a more of a continuous leaving your finger and scrawling something. There’s a scrawl gesture, um, there’s pinching, which is sort of you’re zooming in and out of of things and there’s a whole bunch of uh other gestures that you can. You can combine in your app to achieve different things, but they usually triggered with your finger or in our case or in some other apps cases also with a pencil. 00:12:22 - Speaker 2: Yeah, probably from a user perspective, you don’t even think that much about something like a tap, a double tap, a swipe, a pinch. These all part of the magic and the beauty, I think of multi-touch screens and why they’ve um Sort of taken over the the world in terms of interfaces, is that they do seem so natural, and it seems so obvious, the difference between, for example, a swipe, a scroll, and a pinch. But in fact, it’s quite a bit of logic to um make sense of that stuff. And I have experience with sort of mouse, um, wouldn’t call them gestures, but basically interpreting what the user does on a desktop computer with a mouse, um, in my past life as game developer, and There things are actually a lot simple because you’re a lot simpler because you generally have the X and Y position of the cursor and whether the buttons are down. And there is a time element for some things like double clicking, but it’s pretty minor. Most things are really discrete. Uh, the thing that I think really opened my eyes on this was, um, we both were at UIO last year where you gave a talk. And another talk there was, uh, Shannon Hughes, who worked for Omni Group. They make the some great productivity tools like Omnigraphle and Omnifocus. And she had worked on, I think the iPad app for one of these, and had done gone pretty far on these um these gestures and even has written an open source library for basically making a diagram. And she showed this, these kind of these gesture disambiguation diagrams, uh, in real time and you could see that actually this, there’s this huge time component where what makes a gesture a gesture is not a discrete moment in time. It’s a collection of positions and You know, touches in different places and movements of those touches over time and the accumulation of those things eventually resolves itself into the system deciding, OK, I just saw a pinch. 00:14:17 - Speaker 1: Yeah, exactly. And gladly we’re getting pretty much. All of that for free from the iOS SDK. So you could, if you wanted to and you, you know, you had the time or which is an interesting experiment for you. You could actually write all that yourself, so you can get just very raw touch input events from the system. If you have a screen. You can basically just implement a couple of methods that will fire whenever a finger goes down and moves somewhere just with a position and nothing else. And you could go from there and build your own, you know, this now. I think these fingers moved apart from each other, so it must be a pinch out. But um gladly the folks at Apple have gone through all of that work for us and uh developed this concept of a gesturerer that you can just attach to any view and that will make that view respond to speci…

    Full show notes at the publisher

    https://museapp.com/podcast/transcripts/50-build-in-public/ Oct 05, 2023
    Show notes

    Discuss this episode in the Muse community Follow @MuseAppHQ on Twitter Show notes 00:00:00 - Speaker 1: When I think of real world analogies to this, like supporting a painter or a ceramicist or like glass making that’s kind of handmade, usually those things are more expensive than the Walmart equivalent. But in software, it’s kind of inverse, where the subscription to Microsoft 365 is going to cost you a lot more than your indie text editor. 00:00:24 - Speaker 2: Hello and welcome to Meta Muse. Us is a tool for thought on iPad and Mac. This podcast isn’t about Muse product, it’s about muse the company and the small team behind it. I’m Adam Wiggins here today with my colleague Mark Grannigan. Hey Adam, and joined today by Perjean of Kinopio. Howdy. And Peron as knowledge workers and people who sit in front of computers all day long, I think it’s really important to have something physical, get out, move around, do exercise. What do you like to do for that? 00:00:54 - Speaker 1: Well, these days I run, but before COVID, I used to box. We used to go to Gleeson’s boxing gym, which if you ever seen like a cameo or clip of like a boxing gym on TV or movies, you’ve probably seen it. It was a pretty great place to let out steam, but mostly it was a cardio workout where you train and occasionally you’d spar, which was kind of like a very high stress situation, which makes other situations seem less high stress, which is kind of good in its own way. 00:01:21 - Speaker 2: That’s interesting. I remember seeing, maybe it was in the classic surfer documentary that they said one of the reasons surfers are known for being so kind of chill and low key is that when you go up against these incredible primal forces of nature. Than regular human stuff, the volume seems very turned down by comparison. Would you compare the, yeah, I guess, sparring with other humans, even though it’s not like a real fight in the sense that you’re going to get hurt is having some of that quality. 00:01:48 - Speaker 1: Yeah, I forget who said it. Maybe it was Mike Tyson or something, but there’s this like really famous boxing quote, which is like, everybody has a plan until they get punched in the face. It’s a life lesson in a way, and I think it applies to a lot more than just boxing. 00:02:02 - Speaker 2: Yeah, absolutely. Actually, I had a colleague who was doing that for a little while, but his wrist got sore enough. Maybe he was doing it wrong or something, but he ended up basically not being able to type for a week. Ouch. Obviously, as a creator, your hands are second only maybe to your eyes and your brain as being key tools. Do you worry about that at all or do you have any sense of like I’m sort of taking my delicate crafting tools? Using them to pummel a bag of sand or another person. 00:02:30 - Speaker 1: I think there’s something to be said for making your delicate tools a little more durable, but I think for me, actually, like things like yoga stress my wrist a lot more than boxing did. And I think it’s just like different things might stress out different people in different places. And I think like trying all the different types of physical activity and going with what works for you is, it kind of makes sense to do, even though it’s kind of a slog to figure it out. 00:02:55 - Speaker 2: Yeah, when it comes to fitness, and I definitely became a huge believer in the importance of doing something physical, both for the change of pace, but also really because it’s so important for maintaining our health earlier in my life as a kind of tech person. And I think one of the things that’s important is just to find something you enjoy. Some people love running, I do. Many people just cannot stand it. Others like lifting weights, others like riding their bike, others like boxing, climbing, but whatever it is, if the activity itself is enjoyable, not just the result of enhancing your strength and flexibility and endurance and general health and well-being, metabolic well-being maybe, then you’re likely to do it. And if you’re likely to do it, then that’s sustainable over the long term. 00:03:39 - Speaker 1: Yeah, totally. If you don’t enjoy it, you’re not gonna stick with it, right? 00:03:43 - Speaker 2: And so maybe you could tell us a little about your background. You’ve worked at some pretty interesting companies. 00:03:48 - Speaker 1: Sure, so most recently, before working on Canopio, I was working at Fog Creek, which eventually became Glitch, which is a web development tool similar to Hiroku’s web development tool once upon a time, and I was the co-creator of Glitch and did its original design and the editor and stuff like that. I think nowadays things are very different, so the glitch you see now is very different than the glitch of 3 years ago. 00:04:12 - Speaker 2: When you first mentioned that to me, it made perfect sense. The visual style of Glitch, at least as I remember it from a few years back, very much matches what you’re doing now, and I wouldn’t have made that connection, but then you mentioned it, and it instantly made sense. 00:04:26 - Speaker 1: I feel like, yeah, Canopo is kind of an evolution of some of the ideas that I had when I built that interface. 00:04:31 - Speaker 2: And Fog Creek also is interesting to note for maybe some of the younger folks in the audience. I always like to pull my technology graybeard card here, but one of their principals, Joel Sppoolsky, was really the one who I think defined modern blogging, and we’d probably find His style to be nothing special today, but this idea of a software engineer or a company founder who writes pretty humanistic blog posts about ways of doing things and you know, experiences and whether it’s technology or hiring or something like that. I think he really kicked all that off, and that’s in addition to, I don’t know exactly what the structure is there, but somehow the fog Creek nexus of people produced trello, stack overflow, later stack exchange, and Glitch, which is quite a run. So, yeah, it must have been interesting to be part of that little sphere. 00:05:23 - Speaker 1: Yeah, Fog Creek was interesting cause like it was this kind of technology innovator and it was wild working so close to that. So for the first two years of me working at Fog Creek, we shared an office with Trello, so like, I got to see how that sausage was made as well. But also like Fog Creek had a lot of failures too. There was like a thing that was called. I think it was co-pilot where like you could do screen taking over and this was way before other solutions existed. It had kiln, which is like GitHub before GitHub, but based on materials, nobody used it. And yeah, it was just like wild seeing like so many ideas come from this place and Glitch was one of those ideas that just happened to be successful and how those things got incubated, you know, it was pretty unique experience. 00:06:04 - Speaker 3: And didn’t they write a whole programming language? Is that still a thing over there? 00:06:09 - Speaker 1: Well, yeah, so before I started, I don’t remember the details, but basically they couldn’t get what they wanted with like the existing .NET compiler or whatever the Microsoft stack was at the time. So they wrote their own programming language called Wasabi, I want to say it was called. That’s right. And they pulled it away while I was there, a really talented developer basically was part of writing it and then also part of migrating the code base away from it and it was like a really Contentious idea at the time, cause they were trying to do something they couldn’t do conventionally. 00:06:44 - Speaker 2: Well, that is key to being a technology innovator though is you have to take a lot of swings, you got to try a lot of things, and that also implies a lot of failures, and the failures will be more or less forgotten to time and then you’re known for your successes. So, yeah, very interesting firm. And I also understand your educational background is a little different from the conventional computer science path that a lot of folks in the technology world took. 00:07:08 - Speaker 1: Right, yeah, my degrees are in technically biology and urban planning, so I think I might approach things from a slightly different place. 00:07:17 - Speaker 2: And if you’re interested in urban planning, certainly check out our episode with Devon Zugle about cities. We haven’t done a biology episode yet, but I’m not ruling that out. 00:07:27 - Speaker 1: I’m definitely not the one for that. I was really bad at school. 00:07:31 - Speaker 2: And did you find that that different kind of education has fed into the work that you do now, or did you feel that that was more like something you were interested in, but didn’t end up leading to your career or feeding into how you approach your work today? 00:07:45 - Speaker 1: Yeah, I would say like kind of the inverse of what you’d expect, doing a grad degree and urban planning in general. The main thing I learned was like how to spot bullshit because like you read a lot of academic papers, you have a lot of professors, I don’t really do anything. There’s a lot of like authority gained by being a professor and How can I put this, didn’t really match the reality of what they were capable of. And also urban planning was really interesting. This might be really, really hot take, but the urban planning department was always kind of like mad at or like kind of had an inferiority complex with the architecture department. And I took a lot of architecture courses and like the professors in urban planning like really got on my case about that a lot. And so that kind of disillusioned me on the whole profession and the whole idea of graduate studies as like this kind of I don’t know, I think I held it in some sort of reverence, and I definitely don’t do that anymore. I respect speaking plainly more than like, saying a lot, I guess. 00:08:49 - Speaker 2: So I guess the big takeaway there was the academic world didn’t seem like a good fit for you less because of the specific fields, but more because of all of the petty rivalries or status games that frankly exist everywhere, but maybe they take on a different character in the academic world. 00:09:07 - Speaker 1: Yeah, a lot of pettiness. That was not something I expected. 00:09:12 - Speaker 2: And then why don’t you tell us about Canopyo. 00:09:15 - Speaker 1: Sure, so Canopo is, well, it’s kind of hard to describe, but it’s like a thinking tool, you know, you could do mind mapping, whiteboarding, note taking, all that sort of thing, but it’s a spatial canvas where the core interaction is clicking, writing down a thought, clicking somewhere else, writing a new thought, and eventually connecting ideas together with lines and with groupings and kind of getting to new ideas or solving problems both personally or professionally or like together with a group collaboratively. So it’s like a thinking canvas. 00:09:45 - Speaker 2: Yeah, and certainly folks in the audience will probably immediately recognize that description as being very similar in a lot of ways to Muse. You could potentially describe our tools as competitors, although I feel like when you’re so early in a space trying to I guess convince the world that it’s worth thinking with computers in the first place and that we need new kinds of tools to do that, and that the spatial canvas is one that’s kind of under explored at the moment. From that perspective, I consider us very much allies in the sense that we’re trying to Bring people on board with this model or prove that it can work. But part of what I like is on one hand, what you’re doing is incredibly similar in terms of the core aim and this very basic idea of kind of the spatial canvas, but at the same time, stylistically, it’s completely different. You’re on the web. You’ve got collaboration as a core interaction, less about the tablet, the inking, I don’t know, PDFs are necessarily a big part of it. So there’s the core idea is the same, but you’re exploring a very different branch in the tree, so that makes us, I think, have a natural affinity. 00:10:49 - Speaker 1: Yeah, I also think, correct me if I’m wrong, but the way we kind of arrived at the very different takes that Muse and Canopo have are very different in the sense of, I started with like a core interaction, just trying to make it fun, and that came from an observation that when I was working as I worked as a designer and a developer, but when I was working as a designer, I’d often like write out notes or little thoughts inside of a larger sketch document to myself. 00:11:13 - Speaker 2: And here by sketch you mean uppercase S sketch the sketch the app. 00:11:16 - Speaker 1: OK. Yeah, just kind of trying to like make ideas and mockups make sense to me or like write down the goals and rationale for things and kind of after leaving Glitch thinking about like, how can I kind of make that a thing that other people could do cause like you’d have to know sketch, which is kind of a weird design tool to take advantage of that kind of thinking and something built around that idea just kind of turned into Canopio. Canopo kind of started from me experimenting based on my own experiences using Sketch, the app. And writing with the text tool notes to myself while doing mockups and kind of trying to bring that experience with the advantages of being able to write anywhere on a page in a more approachable way to more people, as opposed to my impression of Muse is that it started a little bit more academically or rigorously. I don’t know what the right term is, but it feels pre-planned or well thought out and well fleshed out before, at least from the outside looking in. 00:12:12 - Speaker 2: Well, I’m glad we’ve got you fooled. Joking a little bit there. Obviously it did come from pretty deep research, but yeah, you’re right, our origin story was more about tablet, tablet and stylus form factor, where do we do our best thinking as well as kind of gestures and the touch screen as being something more intimate and trying to think about what it would take to get a sketchbook or a whiteboard into a digital space, and then maybe one of the missing things is, yeah, being able to use your hands or more directly interact with the ideas. But I think in a way we have arrived at something similar. Text has become a bigger and bigger focus for us. We have these text blocks in beta now we have sort of big plans for that. And so we’ll see where that goes. But I think that idea of text and visual thinking together or written thinking and visual thinking together has become sort of core to our idea. So in the end I think we all organically develop towards a vision, right? 00:13:06 - Speaker 1: Totally. I mean, I think it’s interesting that we both kind of met in the middle, as you say, but you started more as like image oriented and I started more as text oriented. And then I guess people want all the things. I think that’s kind of the story that also guides the evolution of both these products. 00:13:25 - Speaker 2: Probably the way I’d put it is symbolic representation of thought and visual representation of thought both have their place. Computers have always been great at the former, but not at the latter, but then often you do have these more visual oriented environments, something like sketch or Photoshop or whatever, but then text is a trying experience to bring in there. And one thing that always struck me when you look at as part of our user research a few years back, we went through a bunch of photos of whiteboards, just to kind of get a sense of like, OK, when people are using this analog tool, how are they expressing themselves visually? And I was always struck by, like, how much text is up there. It really is at least 50% text in the sense of handwritten text or occasionally a printout that’s been like magneted to it, even though it’s combined with, OK, you wrote t…

    Full show notes at the publisher

    Previous 1 11 12 13 14 15 17 Next

    Related Podcasts

    Reply All

    1

    Reply All Games & Hobbies
    Inside VR & AR

    2

    Inside VR & AR Gadgets
    Note to Self

    3

    Note to Self News
    BrainStuff

    4

    BrainStuff Natural Sciences
    This Week in Tech (Audio)

    5

    This Week in Tech (Audio) News
    Hands-On Tech (Audio)

    6

    Hands-On Tech (Audio) Technology
    footer-logo

    Contact Us

    Toll Free: 844-670-7747

    Links

    • Home
    • Top Charts
    • Networks
    • Apps
    • Independents Podcasts
    • Podcast Advertising
    • Podcast News
    • Contact Us
    • About Us
    • Analytics & Insights

    Stay Connected

      Privacy, Terms of Use & Our Code of Ethics Protecting Content Creators Copyrights