Welcome to the Anxious Morning, where each weekday morning we take a look at ideas, concepts and lessons designed to help you understand and overcome your anxiety. For more information, visit us at theanxiousmorning.com. Today on The Anxious Morning, we're going to continue our discussion of hope by getting a little philosophical. Hey, we do this every morning. We have time to explore ideas that make us think now and then. Mark Manson is a very popular author. In his book, Everything is Fucked, and I'm sorry, but that's the title, Mark wrote, This is where Nietzsche asked us to look beyond the good and evil espoused by any belief system. He wanted us to accept life and death for what they are, warts and all. That means that we stop avoiding the uncomfortable truth of death and insignificance. Once we do that, we can go about focusing on the amazingness of all that's in front of us now, rather than concerning ourselves with hope. Nietzsche even had a name for this embraced-avoid approach. He called it Amor Fati, which translates to Love One's Fate. Now yesterday, we kind of dissed hope a little by saying that hope is not a recovery plan. Today, we call in Friedrich Nietzsche to beat up on hope just a little more. Nietzsche was talking in much broader terms beyond simply anxiety recovery, but we can use his words nonetheless. The idea that we should hope for better days, better things, better feelings, and a better life suggests that the days, things, feelings, and life we have right now are not enough. More accurately in the case of the anxiety community, they are likely too much. As anxiety sufferers, we tend not to hope for more, but for less. We feel overwhelmed by how we feel, and we declare that we cannot handle it. So we hope for better days in the form of less anxiety, less fear, and less emotion. We hope for serenity and a life of tranquility without fear. Now is this really productive? Do we need to hope for better? When we long for change in the form of more handleable circumstances, we are essentially throwing in the towel. We are acting based on the assumption that we cannot handle anxiety and irrational fear. But is this really true? When we are fearful of outcomes that do not ever happen based on thoughts that though strong only exist in our minds, are we really overmatched? And to be sure, when we are being abused, oppressed, assaulted, or otherwise truly harmed, nobody would blame us for hoping for a better life. But when our perceived enemy lies within, do we need to hope the conflict away? Would it not be more productive on the long term to discover our true strengths and abilities to handle what we have been declaring unhandleable? If you are reading this right now, then it is indisputable that you have in fact handled every anxious, fearful, or distressing situation you have ever been in. You certainly do not like what it feels like when you do that, but you are handling it. Anxiety and fear never truly take you down yet you declare that they do. You are still standing and always have been. Think about this. You are bruised but not broken. You are discouraged but never defeated. Is this a time to wave the white flag and call on hope to transport you to commerce seas? Or would you be better served by putting hope on the back burner while you turn your attention to learning the lessons that reality is trying to teach you about how capable you truly are? I'm not telling you to abandon all hope forever. I'm not that guy. But if nothing else today, I'd like you to really think about why it might be a better idea to stop hoping for a better life and start seeing what you have in front of you already. You do not have a golden palace and unlimited comforts, but what you do have is competency, resilience, and the ability to learn and adapt. I take those over hope any day, but that's just me. What about you? Tomorrow we'll use a little more modern philosophy to teach us yet another lesson about recovery. If you're enjoying the anxious morning and you'd like to get a copy of the podcast delivered into your email inbox every morning, visit the anxious morning dot email and subscribe to the newsletter. If you're listening on Apple or iTunes, take a second and leave a five star rating. Maybe write a small review. It really helps me out. And finally, if you find my work useful and you'd like to help keep it free of advertising and sponsorships, you can see all the ways to support the work at the anxious truth dot com slash support. Thanks so much. Thank you.


So, we've got the first talk of the afternoon part of the desktop pack. So let me welcome Mathias Klassen here, the long-time GNOME contributor and desktop engineering manager in AdHat, who's going to talk on Flatpak, the new way of distributing applications on Linux. All right. I hope you can all hear me. Is this loud enough for the back row? Otherwise, there's some seats down here if you want to come closer and heckle. So thanks everybody for coming. Yes. As Jerry said, I'm Mathias, and I'm going to present Flatpak here today, and I hope to explain why we don't think that Flatpak is a threat to distributions, but actually a good thing, and I want to show some of the technical background, and hopefully I'll get to some fun live demo at the end. And before I start that, I want to say that Alex Larson, who works on my team, is really the driving force behind Flatpak, so if you like anything you see here, you should praise Alex for that. If there's any mistakes or anything goes wrong, you can blame me. I'm just cheering him on. And with that, before I get going, I wanted to ask one question, a quick show of hands. Who is actually, who is the Flatpak installed on their system right now? All right. That's quite a few. That's cool. Thank you. And I also wanted to mention that this down here in the corner is the Red Hat West Hot Office. It's not the most exciting place in the world, but it's good for decorating slides. So I want to start by talking a bit about history and how we all came to be here. So why do we have Linux distributions? Not everybody wants to bootstrap their OS from first principles and start by cross-building a tool chain and then compiling their own kernel and then getting to G-Lipsy and moving up user space. People used to do that 20 years ago and it was exciting and an achievement. But nowadays people actually want to use their computers for doing non-computer stuff. Everybody here in the room, of course, excluded. But in general, for instance, an artist may want to use the latest GIMP or Inkscape to do some artwork. And it's not really interested at all in how the computer works underneath. And Linux distributions have emerged as an answer to that need, basically. They make Linux usable by non-computer geeks and normal people. And so that's certainly a good thing. And I work for a company that makes several distributions and so I can certainly see the benefit of that. Nevertheless, there's some downsides to the distribution model. The value of software must come from a single source and that's the only place you trust and you're kind of limited to what that place has to offer. And so Linux distributions have kind of packaged up the whole world of software. I think Debian has well over 20,000 packages and Fedora is not too far behind. And there's some scalability problem there. Every package needs a maintainer or more than one. And also, for instance, non-free applications are pretty much entirely left out of this. And you're pretty much at the mercy of finding a packageer who shares your interests and wants to package that special purpose or fringe application that you might have an interest in and you might just be out of luck and it may not be available. Looking at this from the perspective of an application developer, there's some problems here as well. So you've written your code on your system. You managed to build a binary from it on your system and now you want to get it to your user without further delay and without any holdups. You also want to hear back from your users, maybe even in the form of payment. And for all these things, having a distribution in the middle is mainly just an obstacle. So it's not ideal. And how do application developers work with that? You could either try to find a distro package that is interested in your application and packages it, but that's a bit of a chicken and egg problem because how would the packages know about your application if it's not in any distros that they haven't seen it anywhere? So that's a problem. And if you decide to do the packaging yourself as an application developer, where do you even start? Do a bit in RPM, do a bit at that, do a target for 10, 20, 30, it's really difficult and once you've settled maybe on one choice and you did it, you put your package in the distro then it'll break in short time because some dependency underneath your application was updated without you knowing about it and being able to do anything about it. So that's really hard. And that's why there's not really much of a third party application story for Linux because it is just too hard and people don't bother. Now we don't really need two and a half million desktop applications for Linux, I think, like Android has in their store, but having more than a few dozen might be nice. So switching gears and talking about flatback now. Distributions are valuable, but they don't really have a good answer for you get a lot of applications available, I think. And flatback is the result of us taking, Alex taking a hard look at this situation and trying to come up with better ways of developing, distributing and running desktop applications under Linux. And it's important to stress here that flatback is meant to be an evolutionary approach. We don't want to do a revolutionary thing where we force everybody to rewrite the applications and so away all the desktop infrastructure we've built up over the years. We really want this to be evolutionary and try to preserve what we have and what is good while making some things better. So the main goals that we have with flatback are these. There's, of course, others, but I'll try to explain these in a bit. But what I mean with cross distribution deployment is two things. First of all, ideally we want an application to be built once and to be able to run the same binary everywhere it needs to be run and testing on a user system, using a modern OS or on a user system, using an ancient OS. That's an important aspect of it. We want our users to be able to run new applications on an old OS. Like a prominent example here would be to run the latest web browser on Route 6, which can be a problem. Sandboxing is necessary because we want our users to try applications without necessarily having to trust the source fully.  And the third point, invisible to the user, we want the flatback applications to appear just like applications always have on a Linux desktop. They should be fully integrated in the desktop menus or the shell overview. They should have their icons and be fully integrated in all the ways that you expect a desktop application to be integrated and behave. The last point is about being able to run the latest of what your particular interest is, like some niche application or your special interest, without having to rely on finding a distribution package that shares your interest and makes this application available to you as a distro package. And as an example for that, Telegram 1.0 was released like a few weeks ago, and I used Telegram as a flatback on my system, and I was able to have Telegram 1.0 on my system in less than 24 hours after it was released on GitHub, just by having a flatback available. And it was pretty nice for me. And of course, a distro package I can provide the same kind of turnaround if they are really interested. But with flatback, we hope that the upstream for the application might actually do the work themselves, and just because they have an interest in getting the application out quickly, so if they provide the flatback, you can cut out the middleman. Any idea what's going on here? Didn't really touch it. Just turned off. It's kind of unusual that the accident happens before I get to the demo, but there you are. This was kind of an open. Good idea. Let me see. I guess I could just try to keep talking without my bullet points here, and I'll try to explain what's going on, what would be going on on the screen while I'm talking. Although I had some fun pictures that I would have liked to show, unfortunately. That might not happen. So I wanted to switch gears here a little bit and talk a bit about the technological background, how flatback actually works. And I was going to start by saying that flatback, we try to avoid the word container when we talk about flatback, because Docker containers are really focused on server side applications, and configuring Docker containers is all about network ports, and storage, and those sorts of things. And for desktop application, you really care about connecting to the X server, and presenting dialogues to the user, which is really quite different as a focus. And another important difference is that Docker containers run as root, and your desktop applications, you want to run them in your session with your user ID. It's another important difference. So we try to avoid the word container when talking about flatback, but still under the covers flatback, as we're using all the same technologies, the current technologies that server side containers are using. The first one to mention here is namespaces. The most important one is we use a mountain namespace to hide the actual host file system from the application in the sandbox, and provide a tailored view of just what we want the application to see using a mountain namespace. We also use some other namespaces, like the pit namespace, and the network namespace, and so on. But the mounting is really the most important one. We do use C groups occasionally, optionally, if a system, the dash dash user, is available. It's not required anymore, so we took that hard requirement out because we want to be able to run flatback on older distributions where a system, the dash dash user, might not be around. We also use SecComp, just because it makes sense to reduce the attack surface, and because we can. And another aspect of what we do is bundling. Bundling used to be like a bad word in distribution circles. You couldn't really even say that here. I think we've overcome that by now, and accepted that bundling is a fact of life, to some extent. And it actually does provide concrete advantages for application developers to bundle their dependencies at some level, which is why almost invariably, if you look at third-party applications, they do that. They bundle what they need just because it gives them advantages. The bundling is, in effect, what lets us separate or isolate the application from the US. Of course, there's a cost to it. The cost is that we have a lot of duplication. All those bundled libraries are duplicated in all the applications that you have installed, at least in all the ones that use the library. And then, if there's an important bug fix that needs to go in that library, how do you find all those bundled copies and update them? I want to give several answers to that question. The first one is, hopefully, you tested your application bundle with that library version included, and the application worked fine. So maybe that bug that was found in the library doesn't actually affect your application, and then the fix is maybe not that important for you. But maybe it's a security issue, and the answer to that would be that we hope that the sandboxing helps mitigate that a little bit. If there's a security issue in the library, then hopefully the attacker can maybe attack the application that's running inside the sandbox, but the sandbox is protecting the rest of your system from that threat at some level. And the last answer is that we actually, we do want to limit bundling as far as we can, as far as practical. Because bundling all the world is not necessarily fun. In the Docker world, you start by using a base image, and you hope that works well, and it's well tested, and then you layer on top all the dependencies you need, and you end up with a single image, which has all your dependencies in it. That's not very practical for desktop applications, because our library stacks tend to be quite a bit deeper, so we'd end up bundling quite a few things that way. So we came up with an alternative for that, which is called the runtime application split. Effectively, what we do is we run a flat pack, we put this file system view that I've talked about earlier together from two pieces. We mount the application itself in the slash app, and then we have a separate thing called the runtime, which is essentially a slash user tree, which we mount under slash user. And those pieces together form the file system view for the application inside the sandbox. And yeah, that's that. So in effect, a flat pack application has a single dependency. It needs to declare which runtime you need to use to run it. And the advantage of doing it this way, of course, is that we have this runtime as a separate entity, and we can update it independently. Oh, that's exciting. And in this way, we preserve some of the advantages of the package world, where it's all about having things split out and being able to update them independently. Yes, question? Yeah, I would have shown examples here. I'll try to talk about them. So I'm interested in the radio. Right. So as an example, we do have something we call the GNOME runtime, which essentially contains the entire library stack for GNOME applications. So everything up to GTK and then some other libraries as well. So most of the GNOME applications, you can build against that runtime and don't need anything, any bundling at all, because all they need is in there. Yeah, LibreOffice would need to bundle things they need, like file format libraries or something for Office file formats that would have to be bundled. Yes? Is that the step-by-step application that I, on a common format, would not need that flat-pack? No, not really. I think flat-pack addresses are somewhat different. I mean, even if you had a single package format to rule the world, it would still be like a package that would be in this distribution mindset where you split things up atomically. I think an important aspect of flat-pack is that we do these more granular bundling of bigger pieces, like we have the application and the runtime. And that's the only two pieces here if you don't have this myriad, this whole dependency tree of individual packages. I think that's an important difference between packages and flat-pack. I think you still want to have that. Just not sure if there's a runtime that includes Java currently, actually. We do have a few runtimes built upstream currently. Like we have, as I said, the GNOME runtime. Somebody built a KDE runtime, which has the KDE libraries in it. There's a free desktop runtime, which is more minimal, has less in it. And there were people building various other runtimes for that include more things. I should maybe say that it's not necessarily always the best thing to have your customized runtime. It's perfectly OK to bundle a few things with your application. Java might be a bit bulky for that. But in principle, it's totally fine to have things bundled with the application. OK, yeah, I'll put a URL here if I could. But there's a flat-pack website that has links to basically all the stuff that's available currently, including all the runtimes and all the applications that are packaged as flat-packed. Are we out of luck here? I think that all of the other systems like we think the war is going to be. OK, well then, I guess that would be difficult for my demo later on as well. That's too bad. Well, I'll just soldier on here as far as I can. Yeah, I was going to talk next about the build aspect of this. So how do you actually get built an application so that it uses a particular runtime? Like, the runtime includes libraries. Mainly, that's what, for instance, the GNOME runtime contains all the GNOME libraries. But if you want to build something, you need more than just the libraries. You also need header files. You need debug info. You need tools like compilers and debuggers and profilers and whatnot. So we came up with an answer for that. And that is we introduced the concept of an SDK, which is essentially just like the runtime. Only bigger, it includes all the pieces you need for development. Or looking at it in another way, basically, the runtime that you use to run the application is just a stripped down version where we took out all the development pieces. And there's still this SDK that you can install, which has all that. Yes. So I talked about, like, Flatpak, when you run the Flatpak application, you actually run it in a special way.  And Flatpak sets up this sandbox for the application to run and talk about how it mounts together the file system view. But there's other things that it does. It also provides a proxy to the connection to the session bus. Do you find Docker? Do you find Docker? Well, a little bit, yeah. I mean, Docker does similar things for container. But we do a specialized sandbox setup that is necessary for desktop applications. And one thing that it does is it provides a connection to the debus to the session bus. And it's not just a plain connection, but we run a proxy that filters what you're allowed to talk to and what you're allowed to see, just because we want to have sandboxing there as well. All right, I was talking about building. So you have this SDK. And for example, if you were to build a KDE application, that you want to run against the KDE runtime, then what you would do is you would install the KDE SDK and use that and develop your application against it. Flatpak includes a command line tool, which is called Flatpak Builder, which uses a JSON manifest to let you build the application and all its dependencies in a fairly neat way. It's kind of versatile and convenient as a tool. But it's a command line tool, and that's not for everybody. So we also have Flatpak support in GNOME Builder, which is a IDE that is well-suited for building desktop applications, I would say. And with the latest stable version, 3.22, the Flatpak support in GNOME Builder is actually pretty good shape, I would say. So you can use things that way as well. And moving on, talking about more technologies. I'll be waiting for slides to come back. We use OS tree for the local storage and delivery of our content. You may have heard of OS tree in the context of Project Atomic, which is where it's also used. OS tree is a bit like Git, but for file system trees and that contain binary content, that's what it's optimized for. And Project Atomic uses OS tree for the whole OS. And we just use it for smaller trees, like for the individual applications and for runtimes. It gives us a few advantages. It gives us automatic deduplication of the content because it uses content addressing. So if a lot of applications bundle the same library, then we might be able to share that under the covers just because it's the same content. It also gives us atomic updates. So we never see a partial file system tree if you run flat pack update. And the content is only put in place when the whole tree has been updated, which also means that it's safe for us to update a running application. And we can also allow online updates for flat packs in Chrome software, which is something that made a lot of people upset when we stopped doing that for regular application. So it's great that it's coming back. Yeah, I think I'll skip talking about AppStream because there's not much to say there. In terms of security, traditional Unix security is nowadays relatively irrelevant on a single user laptop. There's no other Unix users to protect me from. So that's not really something we need to do. But what is important is to protect my private data from an app that might be untrusted that I'm running on my system. And that's where sandboxing actually helps us. It limits what the application can see. I already talked about this tailored file system view that we put together for the application. And that's done partially at least by we have some static permissions in the metadata for each flat pack application that defines which parts of the file system we need to make visible for the application and which one's not. But sometimes, of course, you do want the application to work with your data because otherwise it would be pretty pointless to run it if it couldn't get access to any data. So there needs to be some way to do that. And for that, we have a more dynamic permission, a way to handle permissions in the form of portals. Portals are services that are running in the user session outside the sandbox and they provide D-Bus APIs for the application in the sandbox via the session bus. And the way they provide, the way they make this interaction safe is by basically always keeping the user in control and expected part of any portal API call is that there will be some user interaction and the user gets to decide whether to go forward with this or not. As an example, if a sandbox application requests to open a file and do something with it, then what it would do is it makes this call to the file chooser portal to open a file and then the portal presents the file chooser dialogue. And since the portal is running outside the sandbox, the portal has a unfakeable way to identify which application that is so it can actually present that as part of the dialogue and say, here application who wants to open file and then the user gets to use this file chooser to select which file it wants to make available to the application. And again, since the portal is running outside the sandbox so this file chooser has the full file system available to it. It's not limited by what we show inside the sandbox. And then the user can make a selection or he can also cancel the dialogue. And after that is done, the portal will make just this one file that we selected available to the sandbox application via a fuse file system. So there's no way for the application inside the sandbox to get access to other stuff. There was a question there. Yeah, I mean, there's no pros and cons to how you do it. I think we ended up doing what we do now because we wanted to have an API that you can even use just as POSIX calls mainly and the application doesn't really need to do much special. It's just a fuse file system. So you can basically use whatever APIs you want on it. And there were various technical reasons why this approach is better. Don't want to go into details there. All right, so that was portals, what next? Right, so I talked earlier about how we are reusing all the kernel technologies for containers. And that's a good thing to reuse things. And we also want to be good citizens and try to reuse things in higher levels in the sec. And there's a lot of effort being put into setting up build systems and registries for containers. And that's, of course, like the main focus of this conference to work on this container stuff. And inside Red Hat, a lot of this effort is centered around what's called OCI, the Open Container Initiative. And that's a vendor neutral specification for Docker containers essentially. And we want to be good citizens and we use as much of that as we can. And so with Flatpak 0.8, which was released around Christmas, I believe, we actually support storing Flatpak applications inside OCI images. And you can install them from registry. And yeah, we will be able to reuse a lot of the good things, the good effort that's put into that stuff this way. And we also, just at this conference, we also talked to the CoG team and the Fedora release engineering guys to figure out how we can integrate Flatpak building into our build system. That's something that we still need to sort out, but that should happen within the next release or two, I think, would make it easier for us to build Flatpaks. Which is something that we want. I was going to show a slide about the roadmap here at this point and what's coming for the future. So there's actually quite a bit of interest in Flatpak from other sites, not just inside Red Hat. There's a company called Endless that you may or may not have heard of. They're building laptops and using, and an OS for like third world countries. And they're using OS3 for the OS itself and they're using Flatpak for their applications. So they are very interested in that. Recently there was an announcement from the Solos project that they also want to use Flatpak for their applications or applications in general. So we want the ecosystem of available Flatpak applications to grow. And we're working on that. Important piece for that is to have a stable runtime that third parties can actually rely on long term. An ideal candidate for that might be CentOS. But we also want to fit our runtime which will be well suited for like just converting applications that currently packages RPMs into Flatpaks almost automatically. So that's something we want to have in the near future. Right, and at this point, I was going to switch gears and actually present a case study of an application I've been working on recently and do a live demo. But I can't really do that, that's unfortunate. So I don't know how we deal with this. Should I just turn my left over on and we try to all huddle around this? I mean, it's a pretty full room to what I really want. Just an explanation that there is a problem in the projector system. And that doesn't seem to be an easy solution to that. So the technicians went for some additional help, but I'm not sure if we can fix this, save this talk. I tried to soldier on a little longer here actually. I was going to talk a little bit about this before I do a live demo, so I can still keep going for a few more minutes. So I started working on a cooking application a while ago and I had a lot of fun doing that. So I wanted to use that as a case study here to talk about how you can actually benefit from having Flatpak available for application development. And the live demo was gonna be the crowning end of this. Sadly, I mean, everybody's welcome, of course, to walk up afterwards and I can do a demo that way, maybe. So a little bit of history I was going to show first. I had this nice timeline on the slide. So I started working on this application end of October when I, after I finally received some mockups for it. And I think October 30 was the first day I committed something to Git. And then I put it on GitHub as a customer nowadays. And amazingly, I looked back in the Git history, my first commit already contained a Flatpak JSON file which used to like give the feet of Flatpak builder to actually build a Flatpak bundle. And right after I put it on GitHub, I also attached a Flatpak bundle as a release there on GitHub. So basically on the very first day that code appeared on GitHub, there was already a Flatpak binary there that people could download and test without building the application themselves. Which I think is a pretty good turnaround for like early testing. Yes, well, I mean, any effort in making builds for producible will help for that. But the question was like, if there's any particular provision for making Flatpak builds for producible, I guess the answer is no. I mean, in general, if builds are reproducible then Flatpak builds will also be reproducible. And anything we do to make builds more reproducible in general will help us for Flatpak. And it would be a good thing because the more reproducible the builds are, the better like the deduplication and sharing of content on the file system will work for us. And I guess it's just a good thing in general. Yeah. So I was talking about my timeline. As I said, end of October is when I first put some code out there and then I got more into this project and did some updates of the Flatpak bundle throughout November and December. So people could actually test the latest. And in early December, Alex figured out how to actually put a Flatpak repository itself on GitHub. So we did that for the recipes up in early December. And then on people could actually update their Flatpak install because if you have a repository you can just run Flatpak update and it'll update. And all this was like well before I had put out the first tableau release that only happened around Christmas and also well before the application is available in distribution. It's not even packaged now. So this is kind of a success story, I think for making things available for early testing without forcing people to build this all themselves. Yes, that was a question. How do you fix something or break your Flatpak stuff? Well, I think, yeah. And the system needs another. Yeah. Yeah. Fixed kind of version and the user can update it. So I guess there's no magic answers here other than that the kernel guys in general are pretty good about preserving compatibility and not breaking user space. And if something breaks then you generally have a pretty good case to make the kernel guys fix it on their side. So I'm not too worried about the kernel stuff breaking. There might be other things that are more very summing user space. You mentioned system B. But I think we're using, we're fairly conservative in what things we're using in Flatpak for setting up things. And so far we haven't had big issues here. But remains to be seen if there will be an issue like this in the future. I don't think there's a magic answer for that. Right, so I was talking about history and. Yes. They run outside of the. Yeah. The flatpak container. Which implies that there's something to try. What? Is that available in any OSes in Fedoro and do you expect it to be on? I believe we have packaged all that stuff for Ubuntu and Debian as well. Yeah. There's a PPA at least. Well, you need a Flatpak itself installed. That's the command line tool that is used to set up the. Well, it's the single command line tool that we have which does everything. Like it's lots of commands for installing Flatpaks, for updating them, for running them, all that stuff is in one binary. And we need that. And then you need like this portal infrastructure, which is a separate package. And that's pretty much it, I mean, yeah. Yes. Most of them are included. So in principle, we don't really care how you get the content inside your application. I mean, it could come from RPMs. It could come from building from tar balls or building from Git. Flatpak builder, this command line tool that I mentioned is focused on building from Git. But as I also mentioned, we are working on getting this into the Fedoro build infrastructure. And that would probably mean that we would look at a way for building from RPMs. Yeah. So we're working on that and that will certainly appear in the future. Yes, I mean, the principle with the Flatpaks is that the runtime contains all the things you need or you bundle it. So if you have the application and the runtime, you should have everything that you need to run it. So if you run it on Ubuntu, you would probably have to download the Fedoro runtime tool because that's what it will depend on. But that's a one-time cost, right? You download it once and then you can use it for all the Fedoro applications that use it. Yes. Yes. Yes.  Yes, basically, I would say yes. I mean, it depends a little bit on how it's distributed, right? If you are building your own Flatpak as an ISV independent software developer and you publish it yourself, then of course you are responsible for updating it when there's an issue, right? Or you can ignore it and not update it. But if we end up with this Fedoro build system integration where we automatically rebuild application RPMs as Flatpaks, then it would be up to us to figure out a way to make that as automatic and convenient as we can if we discover an issue to make a rebuild happen. Like, we can trigger it automatically, maybe, or we can have whatever support we need for that. Right. So, getting back to my imaginary demo here. What was I going to talk about next? Right, sandboxing, portals. It can be hard to retrofit an existing application inside a sandbox because the application is written in certain ways that expect access to the full file system and things like that and it wants to write its content in a certain place that may not be available in the sandbox. So that can be hard and actually require work. But I started my application from scratch and I could basically make sure from the beginning that I'm a good citizen and write it in a way that works nicely sandbox. So I actually started using the portals right from the beginning and I was going to show a nice list of all the portals that I'm using in my application and it generally works nicely and it's fully sandboxed. So the recipes app Flatpak does not poke any holes because it uses portals whenever it needs to. And an interesting case I was going to mention here is actually one of the portals on that list that I can show is a portal for getting account information about the current user. Basically your avatar photo and your name and what else you want to show for a user. And that's actually a portal that did not exist when I started the application but while I was writing the application I discovered that this would be handy to have so I created a portal for that. And that's useful. It was also very useful to just test all these portals in a real use case. I found quite a few bugs that way and we fixed the portals to actually work. One portal we don't have yet unfortunately is a portal for sharing content out. That's something that applications weekly want to do. You want to like publish a recipe on I don't know where Telegram or send it via email to your friends and we don't have a sharing portal yet so that functionality is not implemented in the application yet. We do have an almost existing portal for access to like the sound. Sound product to pause audio essentially which is like the sound hardware and of course we make the graphics hardware available to you anyway and there's nothing for like more specific other hardware. Would be interesting to explore maybe if you have an application that would need something like that I would recommend to like actually work this out in a concrete example to see what the application actually needs and what form that needs to have. Well the clipboard is part of the display server connection usually so you get that if you can access your X server or your Wayland compositor. Right I was going to talk about bundling a little bit as well. So this recipes app does not have too many dependencies. Basically just use this GTK but then at some point I added export functionality so you can actually export your recipe. It gets wrapped up in a little tar ball and put somewhere in the file system and for that I used a library called Knome AutoR which is fairly new so it's not in the Knome runtime. So that's an example of a library that I actually bundled with the application now just because it's not in the runtime. A little later I then decided to add spell checking as well using Gspell which is also not in the Knome runtime so that's another thing that I added to my growing list of dependencies. And yeah I would have shown how that looks in the JSON file but I can't. And yeah at this point I would have switched to doing a live demo of showing how you actually built this thing with Flatpak builder and then you install it from the repository that you create and then you run it and it's really cool. Yeah. So I will invite everybody here to like find me at some point outside or here later and see this on my screen if you want. No I don't think you do. Actually I'm not 100% sure about it. Do you use a name? Yeah. I can just look at mine. We see that this is just for the site you see here.  But maybe Owen already answered this question. I don't know. Yeah that could be. We do generate some dummy files inside Etsy for like stuff that needs to be right in some blocks. Yes. This actually builds for ARM. I mentioned this company Endless earlier. The laptop at least one model of them was running on ARM. So they have ARM runtimes and working ARM ecosystem using Flatpak. So that's at least there. Yes. That's up to the user to do the snapshots and make sure that they're not great. Well at the end of the day I think it's up to the application author to make sure that they can deal with data that was produced by an earlier version. If they don't do that I mean you can just I guess remove a link. What we do for storing data persistently is we get like if you have a Flatpak that's in a sandbox we make a small part of the home directory like it's .var slash up slash the application ID. That's the part of the file system that the application actually gets to write in. And we set the XTG environment variables to like point into that place. If you use like library APIs and you'll find the right place so that you can actually write content on the file system. And but then it's up to the application to make sure that it understands the content that's there and can deal with updates of that. Yes in the back. The libraries are patched to the water. I didn't catch that. For example. Oh yeah. That's a good point actually. Yes. That's a very good question. So we do try to hide the portal like API interaction like we don't want necessarily we want this to be evolutionary so we don't want you to rewrite your application necessary to talk to the portal directly if you can avoid that. What we've done for GTK is that we actually for instance the file chooser portal is something that GTK can just use transparently for you if you use the high level GTK API for opening a file. We can translate that and do the portal call for you. That also works for a few other things like the printing portal. We can transparently use that if you use the high level GTK printing API. And there's a few other examples like that where we can just hide the portal interaction inside the library which is the ideal case because then the application doesn't really have to be touched at all and it just magically works. And that integration is in the current stable GTK release GTK 322. And we also have somebody working on doing similar things for QT and KDE. Now there's certainly other portals where we don't necessarily have a suitable library API to hide that under. For instance I wrote a portal that lets you just take a screenshot and there's no like give me a screenshot library function so if you want that then you'll probably have to do a debas call. But we're also looking at possibly providing a simple wrapper library that just gives you a C API for each portal because it's just less of a hassle because as I said these portal API calls are all they expect to like do user interactions so you kind of have to do them asynchronously so not block on that.  Yes. Well, this is upstream GTK. Like GTKs are just supporters nowadays. If GTK detects that you're running inside a flat pack sandbox, it'll just do the right thing. It's an upstream GTK. Yes, that's an upstream GTK. And it'll also be an upstream QT at some point. Yes. No, no. The expectation for the runtimes is that we keep them stable so you'll be able to update the runtime and the application should not break. If it does, then somebody who updated the runtime did something wrong in the back. I don't know, I certainly haven't talked about that. Maybe that's an interesting idea. It hasn't been brought up before, but it could be possible. I don't know. Yes. You create like a unit without a GUI that just runs as a service or is it just desktop? This is really focused on desktop, yeah. So why distribute with the port like I've heard other talks about system D running Docker containers for services and then this thing running code with the same stuff but for desktop, why use like two systems and not main part that covers everything? Well, at your application, they start from one source, the other has to install from another source and then they're all universal, but you have to use this tool for Apache and this tool for your web browser. It's called universal. Right, it isn't. No, there's no single container. There's no single container definition. Everybody knows as their own definition of what a container is. That's part of the problem here. The kernel doesn't define what a container is. It just gives you a bunch of disparate APIs that you can use to put something together and Docker has done that, we have done that and but there's various points to my talk. I talked about some answers to that. Like one answer is that what Docker does for server containers is actually pretty different from what we do for desktop applications and they are just different things and before Alex worked on Flatpak, he actually worked on Docker support and it is really hard to get things into Docker that are not necessarily 100% aligned with what they are focused on. So it's just not realistic to think that we could like get a few tweaks into Docker to like make it work for desktop applications. We need to have our own thing. But as Dan says, we are trying to like inject some of the things that we care about into like the wider ecosystem. By breaking up Valorab is one example where we're trying to like have this non-route way of setting up containers that's interesting outside of the narrow Flatpak world. Another example is that we're actually using OCI now. I guess we are the first adopter actually of the OCI spec on some level. We can actually run OCI's, nobody else does that. We try to like fit in as where we can but the use cases are just different enough that it's unavoidable that we have to do some of our own things. Right, so let me see what answers I have for that. About the multiple desktop files, I think you can do that. I think we solved that for LibreOffice actually. I think the bigger problem there might be on the GNOME software side where there might be assumptions about having a single application for each app ID, I'm not sure. And for the command line thing, you can actually run the Flatpak, as I said, the Flatpak command line tool is what sets up the sandbox for running the application. So when we install a Flatpak, we install a desktop file and then we rewrite the exec line in desktop file to say Flatpak run your application. And you can use Flatpak run on the command line yourself and you can say, you can actually specify that you give it a, you can give it a command to run instead of the application and then you can get a shell that's running inside the sandbox for this application. Like, you set up the sandbox but then you run just a shell in it and then you can use the command line whichever way you want. There will be one way to use Inkscape as a command line tool even inside the Flatpak. Yeah, that might be in. I think there's some. I think I would, yeah, yeah. All right, I think we have time for one more question, maybe from Dan. Let me see if I can do that. The question was about help apps. Running Firefox. Yes. So the Firefox is running inside a sandbox, I assume. So I would assume Firefox is a good citizen and it calls the portal that we have for that. It's called the OpenUI portal. So you have this doc file, I guess. So you would just make that available to the outside world by putting it in the document portal and then you would call OpenUI and then the OpenUI portal is responsible for finding the right handler for that. The OpenUI portal does the right thing. They're like, basically, what happens is the Firefox makes this doc file, puts it in the document store and then the OpenUI portal lets the user choose which handler it wants. There could be another sandbox application and so then the portal would basically make sure that that sandbox has access to the file it needs to show. So we tried to do the right thing there. Can be a little fiddly at some spot, it works mostly. I think that was the last question I have time for. Thanks all for coming and sorry for the mess up.  Yeah, it's good, it's such a nice demo. But we're trying to work to possibly improve.


Aloha, and welcome to The Creative Life, a collaborative production between Think Tech, Hawaii and the American Creativity Association. I'm your host, Darlene Boyd, and joining me today as our guest is Ann Herman Nady, coming to us from Landrum, South Carolina. Ann is the Chief Thought Leader and Chairwoman of Herman International, author of Whole Brain Business Book. She is a frequent keynote speaker about leadership and cognitive diversity. And of course, Whole Brain Thinking. Her research has been featured in the New York Times, Scientific America and Harvard Business Review. And her research is used by nine out of 10 Fortune 200 companies. Through her, through two of her popular TEDx talks, she has reached a half a million people, and today she is reaching the viewers of Think Tech, Hawaii's The Creative Life. Welcome to The Creative Life, Ann Herman Nady. It's a pleasure to have you with us today. With your permission, I thought we'd like to start with just a minute or so talking about your family life because we're going to be talking about the inspiration and the founder of Whole Brain Thinking and that is your dad, Ned Herman. That's right, delighted to be here, Darlene. And Cindy, my father was an interesting guy. You got to know him well as part of your interaction with him around the American Creativity Association. And he was actually a physicist by training, but while he was head of management education at GE, he became fascinated with the brain and he was trying to find the nature and source of creative thinking. So he actually went out and got EEG equipment. And I used to come home after school and get wired up to the EEG for testing after school, which some people say explains how I turned out. I guess that's for you to judge, but... And so he was, this is where it really all started. It was looking for the source of nature of creativity and by using brain research, he was able to begin to discover a whole new way of looking at creative thinking, which he brought to GE and then later on many, many organizations around the world. Thank you, thank you for sharing that. I find that just really interesting about your arrival home and being wired up. So we don't have you wired up today, but certainly the wiring lives on in the loveliness of you and what you have to share for us. So today we'll be talking about the whole brain theory. And I think to me, we take the brain for granted. We wake up, we do everything we do and we don't think about our brain. And if we do start to think about our brain, I'm not sure we think in the appropriate manner. And by that, I mean we might be thinking about the brain in its parts, right, left, middle, whatever else is there.  So what do we need to know about our brain? Well, of course we could talk for hours and days about this, but I did a TEDx talk, my first one and it was called the one thing you need to know about your brain that will change your life. And it was hard to pick that one thing, but I believe it's really the most critical thing.  It looks for patterns in almost everything we do. And the reason is because our brains are lazy. And so we tend to look for a pattern because it allows us to then relax and rely on that pattern and not have to put out so much energy when we are encountering whatever it is that we might be engaging with. And so we see that there's lots of advantages to that. When we're writing something down with our preferred hand, we don't have to sit there and think hard about what it is that we're doing because all that patterning is there in place. Language is a great example of a pattern we use all the time. So there are lots of advantages to it. The challenges associated with it are that we do tend to stop short and often think we know what's going on. When in fact, we don't, we're just relying on the pattern. So it has its traps and it certainly is something that became very clear when my father was doing his initial research because he was trying to understand if there were certain patterns that some of us adopt more than others and how that all worked. And what emerged from that initial research was an understanding of four different clusters of thinking preference that we all have access to and for which we pick one or two or three that we rely on most because we've developed a comfort with that kind of thinking. And that really was the basis and the birth of the whole brain model. When was that birth? The birth into the world out of your home. The birth of the whole brain. When was it? Your wiring. Well, it all started really, the research actually started in the late 70s and then it emerged into the 80s and the real whole brain model as we know it today emerged in the mid 80s in its current form once all that research was done and we went beyond the oversimplified left brain, right brain notions that existed back then which led people to believe that some were only working with half a brain which of course you may think is true for some people, you know, but it's absolutely not the case. We all have access to the whole brain and so that was an important finding and continues to be. And so this notion of whole brain thinking really started then and it was fascinating because it was actually in the quest of understanding the source and nature of creativity that, you know, my father Ned stumbled upon the brain literally as part of his research and the two came together really once he understood this notion that we have these patterns and preferences that emerged throughout the course of our, you know our lives and growing up and that that would influence how we approached the creative process and certainly also led him to an aha that I think went beyond what he had certainly expected when he first looked at this work. So big aha. So as it evolved this whole brain study evolved into this theory of your dad's it's grown to such a superlative activity and process and service to a number of diverse population of people and businesses. So let's get into and you start us out by telling us whole brain thinking, how does it work? Okay, so it's pretty easy to conceptualize and understand but if we could put up the slide you can see that we have these four distinct clusters and even though there are four of them you wanna make sure to remember that we all have access to all four. So because we like to type things in our brains don't let yourself think, oh well I'm just one of those but you probably could relate to one or two maybe more than others. And so all of us have access to that analytical self that part of us that loves to solve problems and break things down and come up with data and we're often more technically inclined and love to have the facts and the key question here is what, what's the problem?  And that lower left green B quadrant is all about the structure and the details and the plan and starting at the beginning and ending at the end and understanding all the bits and pieces that need to be discovered and unearthed in order to understand any given situation and perhaps you have someone in your life who reminds you of that kind of thinking. And the right side of the model and the lower right hand quadrant, the red C quadrant we have that relational part of who we are. That's the people oriented part. So if the green lower left asks the question how the red lower right asks the question who and that's that part that's processing the emotion and engaging with others through communication and expressiveness. And then finally that upper right yellow quadrant the D quadrant that experimental quadrant which many people often think of when they think of the word creativity is looking at the big picture and is very integrating, synthesizing, taking all different disparate parts and pulling them together into a new whole. And the question here is why? Why are we doing that? Why can't we do that? Why is that happening? So all of those four come together to form our whole brain, which luckily we all have access to but certainly we, for most of us we tend to prefer two or three of those quadrants as we look at any given situation or solve a problem. And that allows us to understand how when you're sitting in a room with very different kinds of thinkers you all be talking about the same thing and seeing it in completely different ways. I was, you've answered a question that I was had forthcoming and that was why four quadrants and if I understood you correctly four quadrants because there's a commonality in most people is that, did I hear you correctly? Well, we all have, the four quadrants really emerged from the initial research really studying the brain and the research also involved once it became clear that wiring people up even though he could do it with his daughter and family and friends and ultimately my, the person who became my husband it was clear that there might be some other means to begin to detect these patterns. And so an assessment was created called the Herman Brain Dominance Instrument and throughout that very initial research it became very clear that there were these four clusters of thinking patterns that emerged and those represented metaphorically different parts of the brain but really the power of the model was in its metaphoric nature and how you could understand your thinking. So again, all of us have access to all four but that's really where the four quadrants came from it came from the research. All right, so then, so now we're at the point where we have a view of the thinking model what happens next with the model? Where did you take this next? I'll tell us a little bit about its pathway till today. Absolutely, so initially and this was at the very beginning my father was working at GE they funded all of the research and in this notion of whole brain thinking whole brain creativity and the assessment the Herman Brain Dominance Instrument and it took on a life of its own, right? And people became fascinated with this idea that everybody could be creative and but we would go about it in different ways and it was, that was the big, aha, I think for my dad initially because at the time people kind of said, well, you know, there are the creatives over there and then they're the rest of us and what his research demonstrated through the application in the workplace at GE and then later on as he continued to do this work outside of GE is that we all can contribute to the creative process we'll just do it in very different ways based on our preferences and so that application focus of the model really became the heart and soul of the work and after he left GE there were many, many programs creative thinking on a whole brain thinking on how to be a better manager using whole brain thinking and that ultimately led to his involvement in the American Creativity Association which is where you had a chance to meet him and it took a life of its own again, after that I became involved in the business and we have been growing ever since and in fact we're now in our third generation of leadership, my eldest son, Katting Nadi is now running the company so we've had to reinvent ourselves several times throughout the course of the process so we're actually an example of creativity and innovation as an organization we've applied what we know about the brain and our thinking to our own business so it's been quite the adventure. Do you have a series of trainings for trainers? Do you have training with trainers and folks that go out to companies to administer the instrument? And I'm calling it an instrument. Yes, absolutely. So, you know, really the heart and soul of what it is that we do is that we help people bring their whole brain to work as we titled this podcast and I think that's through an understanding of how we think and the best way to understand how you think is to get a measurement of that so if the whole brain thinking model is a framework for thinking the HPDI assessment is an assessment to allow you to see to what degree you have preference across each of these four areas and it allows you to understand that, you know my profile might be a little bit leaning more and let's say that analytical and experimental quadrant where somebody I work with in my organization might be all analytic and structural thinking so we then can begin to say hey, how do we come together and make our partnership more than the sum of the parts? So that is the assessment, the Herman Bray Dominance instrument is something that you can get certified in and we have been working around the globe with thousands and thousands of certified practitioners now over the course of our 40 years in business we're celebrating 40 years this year and we really help organizations take this and apply it internally through different kinds of learning experiences that we help them create and that they can then build in to their culture so that everybody appreciates different thinking and at the end of the day that's really what it's about when there's a lot of talk about inclusive leadership today and how you can be a more empathic leader and one of the very specific applications of this work is helping people figure out, well, how do you do that? How do you show up as being more inclusive? And one of the best ways to do that is to appreciate different kinds of thinking and embrace those differences as you're working as a leader or on a team and so much of our work is with leaders and managers across the globe helping them do that as well as looking at our original focus which was creative thinking way back when that's just one piece of the whole puzzle at this point so creative problem solving is certainly an application but it's one among many, many different kinds of applications.  So how do you help a business or an institution or a group of folks if they have the dissonance there? How do you bring them? What's your formula? Well, you know, it all starts with awareness and also understanding that there's no good, bad, right or wrong associated with this, right?  You just think that way.  Yeah, and so part of what that is first and foremost is understanding that we all bring a different lens to the situation that we all have our preferences and biases that we bring and that those can, you know provide part of what makes us very special and unique but we also don't want to become a prisoner of those preferences as we interact with each other. So the first step is awareness and understanding that but then the most important next step is to then understand well, what do I do with this? And that's all through application and application could include communication. So how do I best communicate with Darlene as I'm thinking about, you know, interacting with you and I think, okay, what are Darlene's preferences and how do I make sure that she can hear me the way she needs to hear my message so that she takes it in and the most effective way possible. It's about making decisions and understanding the power of how my perspective might be all about all the possibilities and another person's perspective might be all about the payoff and we would need to kind of come together and understand that and say, how do we get both? Or what is the most important thing that we can look at here? So we work to provide those application areas and I'm really excited because we've just come up with a new way for people to have this become part of their ways of working and that is a new integration into the Microsoft Teams platform where once you're in the Teams platform you can click on a tab that's called Stop and Think which is one of our main philosophical premises which is that we need to take that, you know that moment have a permission to pause in our thinking and say, what kind of thinking is best suited to this situation so that we don't get all wrapped up in that normal patterning, you know flow of thinking that just leads us down the road sometimes way too quickly. So that will now allow people to begin to see, ah, I'm heading into a meeting, let me think about who's in the room so to speak the virtual room, ah, you know I've been struggling in my interaction with Bob and I haven't been able to kind of crack the nut on that, how do I best understand how week two can come together and better understand each other or I'm setting up a chat with two other colleagues and we want to get the most out of everybody's thinking so let's pull that up to the forefront and use it as a way to begin to, you know better appreciate each other and have fun with it rather than getting annoyed by it so I'm super excited about this new Stop and Think application on Microsoft Teams because for me that's a great way to actually bring this into your day to day life and use it in a way that helps you stretch beyond your day to day preferences and then appreciate it when other people are bringing other perspectives to the table. You make it sound so simple. You do. And you anticipated one of my questions but before we come back to that let me ask you how long is it? Is it still a 90 minute instrument or how long does it take for some of it? So the instrument itself, so actually the actual assessment piece where you're answering questions is only about 20 minutes but we have an experience that takes you through an understanding of what your profile is and leads you to your results that takes anywhere between an hour and 15 to 90 minutes so you can walk away from the experience knowing exactly what you're thinking is all about and then move into a discussion about how to apply it. So yeah, the assessment itself is only about 20 minutes but with the learning package it really is a rich kind of full experience that allows you to know, okay, not just what are my preferences but what do I do with them? On this creative life we not only like to talk about the process and problem solving and the methods to be used but we also know that our hosts live the creative, not our hosts but our hosts certainly would live the creative life but our hosts and our guests do attempt to practice and live the creative life which involves often reinventing oneself and I understand that certainly with circumstances and modalities and modernization that probably your company is quite different from the beginning and you talked a little bit just a few seconds ago, how do you keep a virtual workplace engaged and productive and happy? So tell us a little bit about how you had to reinvent yourself in terms of all that's going on in the past recent times. Yes, it's been an interesting time and one of the things that we did, we actually went remote prior to the pandemic for reasons of talent attraction and other reasons that were located in the mountains of North Carolina as an organization and we found that many of the people who wanted to work with us were not located there and so we said, okay, we set up a remote structure and now actually prior to the pandemic went 100% remote so no longer have a headquarters building which was a big change and a reinvention and then we moved from being what I would consider to be a cut more of a creativity company to then a training and development company to now being a platform where we really are focused on talent intelligence and helping organizations better understand how they can leverage the thinking that everyone brings to the table and do that in a way that's very accessible so that's why having a platform that's integrated into many of our day to day systems is really a core focus. So now we are a technology company so we have definitely been through several rounds of reinvention over the course of our 40 years in business and I'm sure there's another one down the road as we move forward but it's been interesting. I think we've had a secret sauce though and I consider that we're very, very lucky because we know enough about how we think and we have the benefit of whole brain thinking as part of our DNA. I believe it's really been part of our approach what's made our approach successful in terms of our ability to reinvent ourselves, be a global company, continue to be relevant, think about ways to take the work to the world in very, very different ways and move away from an exclusively face to face kind of an environment a decade ago to a now virtual delivery system that is infinitely scalable. So it really did require though a complete rethinking and I've been very, very lucky to have had my father to mentor me and then I'm also lucky to have a son who became interested in the business and who has now completely taken it to the next level and he's the one who suggested we go 100% remote and I'll tell you when I first heard that I was like, hmm, okay, that sounds like a very different way of doing business but he was right and it was a tremendous change and it did require a very different view of how you lead, build a culture and grow. We know that those of us who play around with creativity and study creativity into research know that frequently or often than not there's some risk taking involved if you're going to be a creative producer and sometimes those risks are very non-threatening and sometimes they're big risks and sometimes they involve finances and sustenance. So are you a risk taker and how much risk did you have to take with this re-invention? You know, I don't know that I started off in my life thinking that I was a risk taker but I am an entrepreneur at heart. I actually lived overseas, I lived in France for 15 years before coming back to join my father here in the States to work with him and started a company doing similar work in Paris. So I do have a streak of adventure in me which I guess you might associate with some risk taking and of course, you always want that tempered with other modes so I think one of the things that I needed to apply from our research was surrounding myself with people who would provide me with different perspectives and just because you are more inclined to be entrepreneurial and be more of a risk taker doesn't mean that it's always easy to do it and especially many entrepreneurs listening out there can probably relate when everything is on the line and you've got to make that decision it can be a little bit daunting but certainly it's helped me I think tremendously in the way I've been able to navigate the world around us and how we needed to adapt and find ways to show up and ideally be a bit ahead of the curve in showing up so that we could stay really relevant and help the organizations we help around the world with the right kind of tools at the right time. There's one word you used and the use of that word communication comes up frequently with many of our guests and many of the situations and even in the dimension of risk taking how important communication was to talk to those that might be involved or might be act as your guide on the side or mentors that sometimes they've called and the entrepreneur support as well. I've always found your blogs since blogs became a blogging type model very interesting and I certainly enjoy your TEDx talk and I would encourage our viewers to check both of those out but in doing so I learned that you do blog about women and it's an interesting perspective you have and there is a quote on your blog it says feminism isn't about making women stronger women are already strong it's about changing the way the world perceives strength how do we as women and how do men around us as women accept our changes? How do we challenge ourselves to change perceptions? Yeah that's a great question Darlene I believe that and I became interested in women and leadership as someone who was growing up as a leader and who was a woman and found I didn't necessarily have the right kind of role models out there I wasn't exactly sure how to find my own strength and my own voice as I was growing and was very lucky to have several mentors that helped me along the way some who were men and some who were women. I think that part of where it all starts is again through our understanding of bias and I have been studying bias now very, very closely especially in recent years as I've been involved in several initiatives looking at racial inequality and how we can change the workplace to become truly more inclusive. And so bias is tricky because it really requires incredible intentionality to get very real with what your own perspective actually is. And once you do that you can begin to wiggle your way out into a different perspective and I use the term wiggle because it's uncomfortable. It's often uncomfortable to realize that we've got the side of us that maybe is looking at the world in a way that may not be absolutely appropriate for the way the world is working today. So I think- I'm sure it's uncomfortable. I think many of us would agree, yes. Yes, Anne, definitely. And you know, one of the things one of my mentors many years ago I had called him and said, gee, you know, I'm really frustrated. This is really, it's really, really aggravated with something. And his response was, Anne, I'm so delighted to hear how uncomfortable you are. And I thought, oh, great. That's really helpful, thank you. And he said, well, it's because discomfort is a sign of learning. So one of the things that I believe is key is getting comfortable with discomfort because it is a critical part of the learning process. It's often a part of the creative process. And it's really that piece that says, ah, there are two things coming together that don't feel like they line up exquisitely. And if you get curious about the discomfort, then you can begin to learn. If you shut down with the discomfort because you just don't like it, that's gonna prevent you from learning. So for me, one of the best places to start is to use those moments of discomfort as an opportunity for curiosity. And then to begin to explore that and say, you know, what can't, what could I be learning here? And how do I best understand where this can take me? And so as we look at women and men in the workplace, there's still plenty of work to be done there. But I encourage everybody to begin to address their own biases. And as they begin to address those, if you're not feeling a little uncomfortable, then you're probably not looking closely enough. And then get curious about how that might be different if you were to adopt a different perspective. And many of the women that I've mentored throughout the course of my career and I've been very, very lucky and I've learned so many from them, so many things from them have been able to find a way to get clear on what their own voice is and not only build off of their strengths, but also develop other muscles that help them succeed and continue to grow and learn. Growing and learning is really what it's all about to stay resilient in today's world. How does the HBDI, the Herman Brain Dominance Instrument, how does it work with different cultures or have you repositioned or redesigned it to match other cultures? What's fascinating to me is how it has seemingly worked across the globe very effectively. Of course, there's cultural adaptation that happens when we're looking at language and so on and so forth. But we found that the world is really a composite whole brain. All of these different perspectives exist around the globe. They may show up a little bit differently. Some cultures may celebrate some more than others a little bit differently because of the culture or because of the organization that you're working in. But we have seen from whether it be in Zulu or on the other side of the world in China, the model actually is quite effective at describing those different thinking preferences and there's value in looking at whole brain thinking. So it kind of cuts through some of those cultural differences and is really quite effective at giving people a non-judgmental way to begin to see each other because we may be different from lots of other cultural norms, but we might actually think in similar ways. And so it's being used really effectively to help break down those barriers and when there are big cultural differences. We're about reaching our close, but how would it work? How similar if I took the HBDI, which I did many years ago, is there a chance that I would be extreme, check out and be extremely different in the findings or do I tend to, in my life, stay a little bit the same? We've been doing a lot of research on that of late because of the pandemic. And really what the HBDI measures is two things. We measure your day-to-day preferences and we measure what happens to you under pressure. So we actually have two profiles that are part of the assessment results. And what we have found is that people's profiles tend to stay pretty consistent over time if your life is staying pretty consistent over time. However, we all have experienced in the last two plus years a pretty significant global universal life changing series of events related to the pandemic. And what we're finding is I'm seeing more change in people's profiles related to the pandemic because there were values changes that were associated with the pandemic for some people. For others, they stayed very consistent over time and they kind of managed their way through it without having that significant shift. So it's really quite personal. So what we find is people's preferences tend to stay pretty constant if your life and your focus and your values are pretty much constant. But if there's a major change and that could be something like a change due to a pandemic, losing a job, losing a loved one, major life changes can sometimes have that impact. So we encourage people to kind of explore that. And then occasionally people's under pressure profiles change and we saw that pretty dramatically during the pandemic where we did a survey, 60% of the people we surveyed during the pandemic said that they were living in their under pressure profile just due to all of the stress that was going on for them. Well, and we have reached the end of our conversation and I'm so glad that you were able to join us. I know that you're very busy and I know that you're always very busy and you have so much to offer to the world and especially with your global efforts that you're doing now. And it's exciting for me to have had this conversation with you and I hope we can do it again in return and perhaps with one of your trainers we could talk to both of you and see what the thoughts are there. So I hope that that comes about. And with that my thanks to you and the thanks from our viewers to you as well and we'll be back with the creative life in two weeks and until then Aloha. Thank you so much for watching Think Tech Hawaii. If you like what we do, please like us and click the subscribe button on YouTube and the follow button on Vimeo. You can also follow us on Facebook, Instagram, Twitter and LinkedIn and donate to us at thinktechhawaii.com Mahalo.


Live from Orlando, Florida, it's theCUBE. Covering Grace Hopper's Celebration of Women in Computing, brought to you by SiliconANGLE Media. Welcome back to theCUBE's coverage of the Grace Hopper Conference here in Orlando, Florida. I'm your host, Rebecca Knight. We're joined by Jarvis Sam. He is the Manager of Global Diversity Issues at Snap Inc. Welcome. Thank you so much for having me. I'm really happy to be here. So I've got it, first of all, you're wearing a Rosie the Riveter shirt. We've got these Chachkes here. Can you explain to our viewers a little bit about that? We got to talk about these first. Of course. So the shirt was actually inspired by our lady chillers. It's our local women employee research group at Snap. The idea was take the ghost, the representative mascot of Snap Inc, and parlay that with the idea of Rosie the Riveter. Of course, powerful in her own right. All right, I love it. And then these spectacles are... Yeah, so spectacles are Snap Inc's first ever hardware product, released earlier this year. They allow for you to take an in-the-moment Snap to be featured on your phone. Using Bluetooth technology for iPhones and then Wi-Fi technology for Android, they allow individual users to record snaps on their phone while, of course, not distorting the experience of being able to use your hands in the moment. So I love it.  Exactly. So they want to play with these toys, come work for us. So tell us a little bit about what you do, Jarvis. Before you were at Snap, you were at Google. I was. And really engaged on these diversity issues. So what do you do at Snap? Yeah, so at Snap, I manage our global diversity effort. What that includes is analyzing the diversity framework across three key verticals. First on the pipeline layer. So what are we doing by way of K-12 education to ensure that communities of color, as well as women. K-12. Exactly. Wow. Have specific opportunities in the space to be impactful. We often create this framework or archetype for what we think is an effective software engineer, for example, or account manager. Reframing that by providing access and opportunity to showcase to people that the image that we have is not always the image that we want to portray is critical. Next, then we focus heavily on the idea of the candidate. So candidate experience. Deep diving into understanding key talent acquisition measures as well as key HR practices that will allow for us to create the best experience moves us forward in that regard. But then finally, and this is where we get to the whole global perspective, is the idea of the employee. Creating a nurturing community where the idea of psychological safety is not only bolstered, but ensuring that your community feels empowered to the idea of inclusion. Making sure that inclusion is not just a seat at the table, but rather a voice in the conversation that can be action to bond. So I want to dig into that a little bit. There's this voice in the conversation. Before the cameras were rolling, you were talking about these very difficult, candid conversations that employees that SNAP have. Tell our viewers a little more about that. Yeah, so I think one of the greatest challenges across the tech industry and at SNAP as well is the idea of referral networks. The tech industry on its own right has grown so greatly out of referral networks. People that you've worked with previously, people that have the same academic or pedagogical experience as you. The problem with that is traditional network analysis would seem to let us know that you often refer people who look like you or come from a similar internal dimension background as yourself. In a community that's largely rooted in the dominant discourse by wider Asian males, that means that we're continuing to perpetuate that exact same type of rhetoric. That's where you're recruiting. Exactly. And so then the idea of getting more women or communities of color involved in that space can often be distorted. So that remains a challenge that we as a company, as well as the tech industry needs to overcome, is understanding, one, how do we encourage more diverse referrals over time? But then, two, creating an ecosystem where this seems natural and not like an artificial standard. Okay, so how do you do it? I mean, I think that we've pinpointed the problem and it absolutely is a problem. But what are the kinds of things that SNAP is doing to improve the referral process? So it's the idea of being innovative by design. So one thing that's unique about SNAP in particular is we are an LA-based company. So based out in Venice Beach in Santa Monica, California, we don't face a lot of the core challenges that we see in Silicon Valley and as a result have the opportunity to be more innovative in our approach. As a result, when we look to referral networks in particular, one thing that SNAP has focused on is building in the idea of diversity recruiting as a core pillar or tenant of all of our employee research groups. Not only do they join us to attend conferences like Grace Hopper, like the National Society of Black Engineers, but we actually do sourcing jams where we sit down with them and mine their networks either on LinkedIn. Sourcing jams, I love it, okay. Either on LinkedIn or GitHub or any of the various professional networking sites that they work on or technical networking sites to find out who are great talent that they've worked with before. Yeah, who do you know, who can join us? And then what's more significant than that is creating a sense of empowerment where we're actually having them reach out to their network as opposed to a recruiter. It creates more of a warm and welcoming environment for the candidate where the idea of being a simple passive candidate is further explored by activating them to showcase how your experience has been great. And how are you also ensuring that the experience at SNAP is great, particularly for women and people of color? Yes, so one area is our employee resource groups. We have a couple. So Lady Chill is, of course, who I'm wearing today, but SNAP Noir for the Black community, SNAP Pride for the LGBTQ Plus community and Low Snaps for the Latinx community. How big is SNAP? We should also just... Yeah, about 3,000 people globally. 3,000, okay, wow, wow. And so one of the exciting things that we do is ERG Day. So it's where we bring all of our employee resource groups together and they hold massive events every single quarter to encourage other communities that are either allies or individuals of the sociological outgroup to understand what they do. But this deployed in so many different ways. In June for Pride, for example, we held Drag Bingo, where our LGBTQ Plus community participated. In March, we did a whole series of events celebrating women in engineering, women in sales and women in media that resulted in a large expanse of events allowing for people to come in and learn about not only the female experience more broadly, but particularly at SNAP and some of the great endeavors that they're working on. And I know you're also working with other organizations like Girls Who Code, Women Who Code, Made With Code. Can you tell our viewers a little bit more about SNAP's involvement? 100%. Made With Code is one of the most exciting projects I've had the opportunity to work on. It was, for me personally, this great combination of working with my previous employer, Google and SNAP. So Google's Made With Code project is an idea that started to empower teen girls to code, age 13 to 18 primarily. What they found was that's the exact same demographic that primarily uses our product. And so about three months ago, we decided to come together to launch an initiative where we'd have teen girls make geo filters, one of SNAP's core products. The project actually launched one week ago and teen girls are using Blockly Technology to actually go about creating their own geo filters and then writing a 100 word personal statement defining what their vision for the future of technology is. I'm personally excited to say that after checking the numbers this morning, more than 22,000 girls have already submitted responses to participate. Wow. It will culminate in an event November 1 through 3 where we'll take the top five finalists to Ted Women in New Orleans to not only showcase women who have done incredible things in the past and present, but also showcase their work at participating in this competition as the women of technology for the future. And the next generation. Exactly. So I mean, we're running out of time here, but I want to just talk finally about the headlines. I mean, it's very depressing. Absolutely. The Google Manifesto, the sexism that we've seen against women, the racism in the industry. I mean, we don't want to talk about it at the celebration of computing because we want to focus on the positives. And yet, where do you feel, particularly because you have worked at large tech companies on these issues for a while now? Not facing challenges head on is going to be the greatest threat to the tech industry. This idea of avoiding conversation and avoiding sheer communication of these challenging issues will continue to result- And ignoring the bad behavior. Exactly. And it results in negative rhetoric that inherently puts these communities out of wanting to work in this specific industry. But arguably, given that technology not only represents the face of the future, but how every single product and entity is made for the future, we have to include individuals. Everyone often wants to highlight the McKenzie study from Diversity Matters, highlighting all of these great ways of diversity impacting the business, but we need to look at it in addition from an ethics standpoint. The idea that technology represents how we're building our future, leaving entire communities out of that, primarily focusing on people of color and women, will result in a space where these communities will never have access, opportunity, and thus employment to exist in the space. Being able to attack these issues head on, address the bad behavior, highlight what the potential negative implication is, is step one. Step two, though, is being proactive in everything that we're doing to attempt to ameliorate that from the beginning. You'll notice one thing that's very different about SNAP's diversity strategy, as we seek to build infrastructure first, then focus on talent acquisition. Once we can ensure that communities of color and women are entering a space that is psychologically safe, open, and inviting, then we can focus on how we're bringing in talent effectively, so that the idea of retention and advancement is not an afterthought, but rather top of mind. Right, because you can't recruit them if they haven't had the opportunities to begin with. Exactly, and that's why SNAP often upholds the value of the idea that diversity is our determination, while inclusion is our imperative. Jervis, I love it, that's great. Thank you so much for joining us. Thank you so much, I appreciate it. It's been a real fun talking to you. Thank you. We will have more from Orlando, Florida, the Grace Hopper Celebration of Women in Computing, just after this.


Okay, no answer got it. All right, so today we're gonna watch some Sesame Okay, you good All right, sorry about that, you know I have to handle my boy real quick, but today we're gonna be watching some creepy Weird Sesame Street videos that I found on tiktok and these are videos that have a lot of views under the Sesame Street tag So I gather up a few of them the weirdest and the creepiest ones and let's just watch it together I guess let's go What the heck Fright Night SWV oh So they're getting ready for Halloween that is creepy I Would be excited and I would be scared as crap to see all these right here like I gave I went to a haunted house or something I See Big Bird on two wheels Paper dolls How many dolls are there One just cut the head off Three by the way, this is what I grew up watching right here. That's why I'm so smart Seven seven dolls and one without a head. Whoops. You're right There was so unnecessary didn't not have to do that And make sure you go follow all these people to that pop up Yes, I'll come down Elmo where you at? We need help. Yo, why does that sound like that hurt? Like like he burned his hands on that See one piece having 981 episodes a lot of episodes Street having 4591 episodes That's how the Sesame Street has been going that is crazy Hi everybody, it's me Elmo today.  Oh, that is dull Hey, that look pretty cool. Low key. Hi key Mean Elmo watch till the end. All right. Let's see. Oh, hey made the baby in jump It looks confused and scared at the same time. Hey those toes are Those toes those toys were pretty cool back in the day That kid's not I don't think he trusted low key He's like, oh You see And now he's making kids cry It's time to retire Elmo Can't be doing this all the time, you know All right, let's see The shark puppet Hey, that shark puppet is actually pretty pop.  There is a secret message That is very sinister it actually gives you clues to access the fantasy land of sesame street Meaning that the song tells you to take your own life So you could ascend to the fantasy land of Sesame Street What the song says that it is a cloudy day and that you have to bring a broom So that you can wipe all the clouds away to get there once you get there Oscar the Grouch will be waiting at the entrance and the password to get in is everything's okay But if you don't seem okay and happy Oscar the Grouch will not let you in and nobody knows what happens after that Apparently many people have tried to access Sesame Street, but nobody knows if they ever really got there In the tickle me Elmo That's actually pretty creepy all real footage.  That's where he turns into Elmo. So this is like the beginning of the other video we watched earlier That word. Oh, this is the whole thing. Okay. And what you talked to me Talk to me. There you go. It's the full video now. We get the full story. What's wrong with you? And what's wrong with you? Look once Elmo takes a hold of you You can't control yourself. You gotta go tickle gotta go tickle. Oh, okay. So that's the last one All right. Hey, well, these were some of the most watched Sesame Street videos creepy weird whatever you want to call it There they are y'all I gathered them for you. So hopefully you guys enjoyed that Tomorrow junior will be back and we'll see what he does. We'll see what type of video he wants to do So if you want to do a specific video, leave a comment below and uh, I'll make sure he reads it, all right And other than that go follow our other youtube channel such as your pixel game squad And boulet heroes I will put the links in the description below so you can support us and that would definitely help us All right. See you guys later