Good afternoon everyone. My name is Marcin Kierdolevich. I'm a director at Canonical responsible for channel business development worldwide. During the track today there are a lot of technical sessions. You learn a lot about you know the great technologies that we're building and I'm sure you're all very excited about that. Now for this one what we want to do we want to bring you a little bit of the real solutions that we built together with partners in order to solve real problems for our customers. That's presentation. I'll share a couple of slides with you tell you about what we do and we'll also be presenting a customer case study here. Can you imagine we can we still get this question asked about you know who is Canonical. I just want to you're now but I want to confirm Canonical is a company behind Ubuntu. We bring you all those great technologies all the software all the tools for you to be able to build the solutions to solve the customer problems in a kind of pretty simple way. Now each time we build it those technologies the proposition we bring to the market is not only about the technology. We wouldn't we wouldn't be able to build others great systems without without the partners that we have and we this is just an example of a couple of technology partnerships that we have. We partner with large companies like IBM like Microsoft like Cisco but for you to know we also partner with small medium sized organizations companies like Plumgrid or Big Switch. Now all of that helps us in creating a best offer available on the market.  How much of Ubuntu technologies and solutions they would like to use and again this is a representation of a couple of customers that we have and some of them use Ubuntu as the Linux OS only. Some of them build open stack clouds on Ubuntu. Some of them are using our tools to build open stack. That's something what we call the canonical open stack. More there are customers who want to have a fully managed service that we call boot stack just so it's in order to have actually a cloud deployed and managed by us so they can focus on building solutions on top of the cloud. It is a best offer on the market and it's not that we're saying that. The recent survey from OpenStack Foundation confirms that there is a vast majority of OpenStack platforms built on top of Ubuntu. Now all these builds wouldn't happen without resources available on the market to actually bring and help you building the solutions to solve those problems. For that reason we're building a network of implementation partners. We have a global network partners available in all the countries where OpenStack deployments are happening. If you're interested in talking to us about technologies, tools, solutions, but also local resources available, feel free to do that. One of our implementation partners is InterCloud Systems. I would like to introduce Akhil Asim who is VP of cloud services for InterCloud, our partner. Akhil? Hello everyone, this is Akhil Asim. I'm vice president of cloud services at InterCloud Systems. Thanks for joining the session. I have almost 20-25 minutes of presentation just going over the real-life challenge which is to how to move your workloads from VMware-based environments to OpenStack. First, a quick introduction of InterCloud Systems. We are a New Jersey-based company listed on NASDAQ. We have three pillars of excellence. First being our software automation and orchestration. We have written hundreds of thousands of lines of code, and our real focus is towards cloud-based services. Our entire software is born in cloud, so there is no legacy, there is no background. Everything is built from scratch for cloud-based environments. Besides software development, we do a lot of professional services. We have hundreds of consultants across US, and our focus is not only legacy-based but professional services. We are building strong teams around emerging technologies, and our focus is really on SDN and OpenStack-based deployments. The third one is managed hosting. We are in seven data centers across US, and our focus is again private cloud-based services, and we have some limited version of public cloud as well, but the real focus is we enable our customers to adapt cutting-edge technologies with a hybrid approach, where they can have in-house resources, and they can have access to our public-slash-private clouds. First, I would like to thank Marcin for inviting us for this important event. We have a strong partnership with Canonical, and the real focus is that we are an implementation partner. We have teams around Ubuntu's OS and OpenStack, so we help our mutual customers to go quickly adopt newer and latest and greatest OpenStack platforms. We are a certified BootStack provider, so for any deployments where we take the ownership of the entire cloud deployment, and we help our customers to quickly adopt and operationalize the entire OpenStack for them. We are contributing on JuJu's marketplace. We think that is a great tool, and it can help our customers to automate the deployments on OpenStack-based platforms. Just to give you an example, we have deployed OpenStack-based projects, literally less than 20 minutes, so it's a great tool, and we think there's an entire great future of this tool, and we've been actively participating and contributing on this platform. We are also in Canonical's certified training partner to train our customers on this cutting edge platform. In the last but not least, we have developed our own convert solution, which is entirely based on Ubuntu's OpenStack distribution, and I have some slides to go over it. So we've been talking about a lot of industry trends. What we believe in, they are no longer trends. These are the real requirements. Increased agility. So our customers, what we are seeing that customers are looking for rapid deployment of apps. There should be no longer need for days and weeks of time for them to just to roll out a new app. Introduce cost, enhance experience, and risk. What we are hearing is that the customers they are looking for agility, lower cost points, enhance experience, but not at the cost of security. So security is really important. So we really focus on all these four parameters, and we've been successfully delivering it for our customers. So from today's existing IT infrastructure perspective, we all know that with a user they request for a change, or they want to roll out new apps, whether in DevOps environment or Greenfield, it's not about minutes or hours, it's about days and weeks. That's where most of the big enterprise service providers stand today, and that's where they want to be. It shouldn't be, there shouldn't be any human intervention involved. It should be click and operate model where users should be able to go into an internal portal and they should be able to get whatever they want to do. But this all comes with a lot of complexities, and the complexities are SDN, orchestration, security, protocols, intelligence and support. So we are here to solve all these problems and make it easier for our customers so we can take care of entire of these challenges and become a single point, one stop shop for all of these challenges they face today. So based on these requirements, what we just mentioned, we have built three solutions. Simplified OEM, which is operations and management, integration of VMware and OpenStack, because the reality is that most of the deployments are today for Fortune 500 companies, it's all based on VMware. So it should be very simple and inoperatable model where our customers, they can feel comfortable moving towards OpenStack. It has to be an operationalized model. Meta orchestration should be a single dashboard where they can manage their entire workloads and their different applications, whether they are multi-tenant or single-ten. They have to be one pane of glass where they can manage the entire infrastructure. And the last one is seamless integration of OSS and BSS with this OpenStack-based environment. So we are going to answer three things today. What is why, what and how? What is the motivation behind moving from VMware to OpenStack? So I like this quote by Jack Walsett, change before you have to. So it's not about an option anymore. You have to go as a CIO or IT administrator, you have to look OpenStack really seriously and see how it fits into your existing environment. So the motivation, we have listed few points that what could be the motivation behind for any CIO or IT administrator to adapt OpenStack. What the trends we are seeing in the market, most of these IT decisions are no longer made just by the CIO, CFOs, and they are being really involved into these decisions. And they make these decisions as well because cost and speed and it's becoming really important for their IT infrastructure. So your platform should be business-aware. Your business should not be built around IT. It should be the other ways. Like IT should be built around your business. So the first and most important thing is open architecture. You have a keynote speech. For yesterday, there are more than 27,000 developers actively contributing on OpenStack. So it's a really decent ecosystem and it's really important. Really for production. So open architecture is a really important point for any CIO to make that decision. Reduce cost. Of course, cost is an important factor when you make a decision to migrate from VMware to OpenStack because there are no more licensing involved. APIs, compatibility of APIs, that's really important. Now again, you want to build your IT around your business. So regardless, if you're going through an M&A process, acquiring multiple business and merging them together, openness and APIs, they're really important. So OpenStack is really important. You can write your APIs. You can put a couple of developers. They can write APIs and you can seamlessly integrate any system into your infrastructure. SDN solutions, overlay networking is also getting really important as you grow and you build multiple data centers. You really don't want to touch your physical infrastructure to launch new web servers, database servers. So SDN is part of the strategy and OpenStack becomes the foundation and platform for any SDN-based deployments. Non-vendor locking. So you don't want to get locked in with any vendor and OpenStack provides you that platform where you don't get hosed by any vendor for any future plans you have for your IT infrastructure. So with this, we'll get into reality and challenges. The reality is that VMware is going to stay. VMware has all these applications and most of the vendors, they only support applications on ESXi. So KVM or Zen, these are fairly new from the application vendor perspective. So even though we have successfully deployed applications on KVM-based hypervisors, but still from vendor perspective, from OEM, they support only on ESXi. So that is the reason we believe that for now, for the short term next two to five years, it's going to be a coexistence between VMware and OpenStack. In-house teams to support VMware. So there's already teams built around VMware-based solutions, so it's hard to make and bring a change. So it has to coexist with OpenStack. In-curve and legacy infrastructure, those are also very important factors when you think and decide to have a hybrid infrastructure running OpenStack and VMware. Fortune 500, they have already built their infrastructure around VMware-based software. And again, as the community gets bigger, we will see more and more KVM-based certified, validated design into the Fortune 500 companies. So what we believe in that future IT architectures will have three components. Public SaaS-based architecture, which is like Salesforce, Office 365, SAP, HANA, you have public cloud. And then what we think is the most optimized solution for large enterprise is going to be private cloud or private slash hybrid cloud. Now, the next thing is strategy for migration. So once you have made the decision that OpenStack is going to be an essential component of your infrastructure, what is the strategy? How do we go from point A to point B? The first step is identification of critical and less critical workloads. You have to go through entire infrastructure, your applications. And what we do is we go in and we put our entire application into four buckets. It's productivity apps, business apps, DevOps, and then you have Greenfield. What we have learned through our experience that the easiest part is to go with DevOps and Greenfield applications to move because usually it's not really into production. So to build the confidence and trust level, we start from there. And then the next thing is that you cannot forklift your entire infrastructure, so you need the resources. And that's where private cloud comes into the picture. So you want something fully baked, ready to take the workloads in. So you don't have to go through a six-month or year time frame of procurement, design and data center, space and power, all that, those parameters which are involved to make those resources available for infrastructure. And after you have the resources, then, of course, you need to look into each one of those apps and see what are the drivers and what is their OS requirements. You need to make sure that all of that is the environment is available on your OpenStack infrastructure to migrate to the infrastructure. And once we go through that validation process, certification process, we want to make sure that we launch those apps into OpenStack-based environment and make sure that it can take the load and they can easily launch through Horizon and NOVA.  They should be available on the new platform as well. So with this, we get into the steps for migration or slash coexistence. So the first step, like I said, you go through discovery and audit process. Then you go into validation and certification process. And inter-cloud is the first step. And then you go through the process and inter-cloud has a service we launched almost a year back. We call it POC as a service, proof of concept as a service. And then after that, once we validate certify applications on OpenStack, then we get into resources. So private and hybrid cloud comes into the picture that you should have enough resources so you can move those workloads into OpenStack. And of course, last one is orchestration and you integrate the entire new environment with OSS and VSS. So POC as a service, so that's after you get done with your audit and discovery phase, POC as a service as we call it technology validation. So what we found out after talking to more than 100 CIOs and TCTOs and different verticals and enterprise and service providers, there are major challenges when it comes to SDN and OpenStack deployments. And the challenges are infrastructure resources. So if you want to validate hundreds of applications, you really need to build millions of dollars of worth of environment to test and validate. And it's not like a workshop where you come in and you show that, okay, this application can work on KVM or OpenStack. Customers, they want to see real deployment, a replica of their production environment into the lab, which is always multi-vendor and everything should be gelling into each other and it should be seamless integration and because you don't want to hurt your business while you're going through this migration process. OPEX model, they don't want to spend millions of dollars just to validate and certify things. So what we do is that we have huge resources available for our customers so they can come in and we can, so we package it together. We have infrastructure resources, human resources because even in any organization, the teams are not really designed in a way which are meeting with the new, matching with the new platform where you need to have network engineers who can code as well. You need application engineers who can understand storage as well. So we think a different kind of human resources are also needed when you go with this new platform. So human resources are also a challenge when you migrate from a VMware-based or legacy infrastructure to private cloud or OpenStack-based infrastructure. So we fill up those gaps. We have created packages where you have infrastructure resources. You can go and get hundreds of nodes from us. We provide a team, network engineers, OpenStack administrators, and since having a relationship with Ubuntu and Chronicle, we have resources where even for customized deployments, we have access to Chronicles teams as well. And the third one is the use cases. They need a starting point that, okay, now you have made a decision, how do we start? What is the first step? So we actually built, we did a big POC, the case study for a large media company of New York, and the objective, I know there's a lot of stuff, you're probably not able to see it, but the objective was that how do you manage your VMware existing infrastructure through OpenStack? How do you do interoperability testing? Management of VMware clusters into OpenStack. And how do you move your workloads from ESXi-based hypervisor to KVM? So what we did with the case study, we built three parts for our customer. One was VMware 5.0, 6.0, and KVM. And what we did, we basically deployed OpenStack. We managed both parts, 5.0 and 6.0 through OpenStack, and we successfully pushed Contrail across the three parts. So you can actually build overlay tunnels connecting all three different hypervisors. And after that, we successfully demonstrated service chaining concept, cloud mobility, high availability, and performance. And after we got done with all those steps, we wrote a deployment guide for our customer so they can just take that document and give it to their existing operations teams. Okay, go from page one to 100 and just follow these instructions. You will be able to migrate your apps successfully on OpenStack. So just to give you a low-level design, how it looked like, so you can see 5.0 running, 6.0, and KVM. And this is all in our data center out of Manhattan, New York. And we give access to our customers through a private point-to-point circuit or through a VPN tunnel. So this is the physical portion of it, but from hypervisor management perspective, you can see you have KVM hypervisor running on the top, and then you have two hypervisors running on ESXi, two parts. So on your left, this is a physical component, on your right, you can see that we built two virtual networks VNs, green and red. And in green virtual network, those VMs you see G1, G2, and G3, they are all across different hypervisors. So that is the power of SDN contrail running on top of OpenStack, which you can build your virtual network across multiple hypervisors. And then you connect them through service chaining, there's a firewall in between connecting red and green. So without making any changes on your underlying networking physical infrastructure, you can create these topologies. So this is just a view of OpenStack horizon you can see on your screen, like you can see VMVIR and KVM-based host nodes showing up on the screen. So you can easily manage your VMVIR-based environment, ESXi-based host nodes through OpenStack. Again, availability zones running ESXi and KVM managed through one single dashboard. So once you are done with the nodes management through OpenStack, the next thing is the SDN. How do you create those virtual networks across multiple hypervisors and then do service chaining to connect them and to enforce your security policies between virtual networks? So this is an example where you can see that there are two virtual networks, 10.10 and 20.20, and they are across multiple hypervisors on different versions of ESXi and KVM connected through a virtual SRX from Juniper. So that was the technology validation, POC as a service. Now we get into private cloud and what we believe in that if you really compare that in-house ID with public cloud, these are the two major options available today. What are the issues or what are the challenges when you have in-house ID infrastructure? You have high-cap acts. You got to refresh your technology infrastructure every three to five years. You get locked in with the vendors, lead times, you want to roll out new applications, you have resources requirements, you're talking about if not months, weeks of lead times to get new hardware in. IT staff. IT is we believe in becoming a utility just like you pay bills for your electricity and gas. IT is really becoming a utility for the organization, so you shouldn't be having hundreds of people just managing their servers and applications. Space and power. Where do you host your environment if it's on premises? Then you compare it with the public cloud, which doesn't have all these problems, but they have their own problems, which is non-deterministic costs. You really don't know when it comes to budgeting that how do you forecast and allocate budgets? What we see in large enterprise, they're different business units having different, their own individual relationship with public cloud providers. It's really hard to combine and have one assessment of the entire utilization on public cloud platforms. Lack of control. It's like more of a one-size-fits-all. When you have customized requirements and you want to have your own requirements around certain applications or usage, you're really locked in and you need to go and follow your public cloud providers buckets that they have designed. When you're locked in, we also see when you're locked in with those public cloud, when you put your data, it's free to push the data in, but when you take it out, it becomes really expensive. And sometimes it's built on their own hypervisor, so it's really hard to move your apps running from one public cloud provider to another. Data security and compliance, it's another key factor for most of large enterprise and service providers where you need SSA 16, 17 SOC, or HIPAA-based compliance. You cannot be in a shared environment. So the solution, what we believe in, is private cloud. It's not shared, but again, the perception to our customers and large user base is that private cloud is really expensive. It's going back to the same place where you were when you had in-house ID infrastructure. But between our partnership with Canonical InterCloud, we have solved that problem. And what we have successfully shown, that with our private cloud, we call Depod, you can see the cost price points are really attractive. As your requirements for resources grow larger, our Depod private cloud becomes really attractive. So the blue line you see here is for Depod, our private cloud, and you compare it with, we haven't named those other lines on the graph, but these are the major public cloud providers and the cost you can see is really, it makes a lot of sense to go towards private cloud-based environments. So with this, I'm going to just have a few slides to go into architecture for private cloud. So InterCloud systems, we have a strong partnership with Juniper and Canonical. So we're using Juniper's platform from physical standpoint. We're using QFX, the top of the rack switch, EX, MX for routing and switching, and their SDN control for overlay networking. Canonical Ubuntu is the leading OpenStack distribution and we're using OpenStack through Canonical and we have optimized the hardware and software and on top of that, we have our own intellectual property, which is the service enablement platform and our network function virtualization orchestration, NFEO. So from architecture perspective, you can see we have an SDN layer, which is the control system. Then we use Ubuntu OpenStack, JuJu for automation for rapid deployments and this becomes really attractive for our customers. And then you have NFE grid, which is InterCloud's product for the orchestration of virtual network functions. Hypervisor, it's all built on KVM and we support mass through Canonical OpenStack distro. From hardware perspective, we are using Juniper switching fabric. We have optimized Ceph distributed storage, which comes with that solution and we use compute from SuperMicro and HP. So with this, the last one slide is just to show different models of our private cloud. We call it D-Pod 100, 200, and 300. D-Pod 100 is literally a quarter cabinet solution. D-Pod 200 is a half cabinet and D-Pod 300 is full cabinet solution. It's highly dense, so you can see that with a very small footprint, it can deliver a lot of resources. Now, the beauty of this entire solution is it's available on OPEX model. From business perspective, you get the same features of public cloud, so it's OPEX model. There is no CAPEX involved to use this platform and you get one single point of contact for an entire support model. You don't have to deal with 10 different vendors. Since we are Canonical's certified boot stack provider, we take the ownership of the entire solution and we provide 24x7 support to our customers. It is scalable model. It can be deployed in our data centers, the seven data centers we have in U.S. and we're expanding, or it can be deployed on premise and customer location. So just from the density perspective, you can see D-Pod 100 is 1TB of RAM in literally 11RU box. D-Pod 200 has almost 3TB of RAM and 300 D-Pod 300 is 8TB of RAM in one cabinet. So it's a really dense solution and as you go scale up from D-Pod 100 to 200, we can help you move from D-Pod 100 to 200 by adding more resources into it. So it's not that you just locked in into one platform, you cannot just do any upgrades. So with this, any questions? And also I would really encourage if you can fill up the feedback form before you guys leave. Thank you very much. Any questions? I'm sorry. There's storage in your D-Pod 100. Right. So 30 terabytes. 30 terabytes of storage, yes. Is the POC as a service your product or is your approach? It's basically our service. It's our service we provide, we have packaged it together. So POC as a service, we have defined the use cases, but if you have any specific use cases we can always add in. But it's our trademark, our service. Yeah. Sorry? Sure. Absolutely. We'll pass on the contacts. Yes. Thank you. All right guys. I think. Thanks, Marcel.


And now, for your strong Europe spotlight. Lieutenant General Ben Hodges, commander of U.S. Army Europe, welcomed German Brigadier General Kai Rohrschneider as the second multinational chief of staff. This is a symbol of the trust that we have that a German officer is the chief of staff of U.S. Army Europe. 30,000 soldiers, hundreds of millions of dollars of budget. He is responsible for all of it. Rohrschneider replaces outgoing Brigadier General Markus Laubenthal who was thanked by Hodges for his outstanding leadership as U.S. Army Europe chief of staff. Laubenthal said it was a distinct pleasure to serve within the command at a time of significant importance. U.S. Army Europe has set the pace in support of powerful NATO decisions and has in parallel invited our host nation Germany to take a transparent look at what we do here in Wiesbaden for Germany and for Europe and for NATO.


I am the Fedora project leader and this is a Fedora council video meeting Fedora council is the top-level leadership governance body for the Fedora project We try to not conduct our business via meetings because meetings are terrible But it turned out that not having any meetings meant we were getting a lot of things piling up and not getting done And then we also wanted to have some high bandwidths kind of things where we use You know video to actually communicate rather than doing a lot of typing back and forth Which actually typing back and forth is what this particular call is about because we have Matthew Hodgson here from element Matrix new vector. I maybe he can actually explain what all that is all about And we are in the process of setting up a thing chat that Fedora project org which is based on matrix They are hosting it for us. It's an all-open source thing and It is basically a next-generation alternative to IRC I would say and this is partly a work that some work that We've been working on the Fedora council in Fedora for a while where There's a huge amount of work that goes on in the Fedora project every day every year on there's something like 11,000 I haven't done the accurate at number now, but a thousand video or chat meeting text chat meetings every year in Fedora that happened in IRC We have a lot of email going back and forth but these days IRC especially but even email are kind of Arcane ancient internet protocols to a lot of people and It seems so all that activity is you know basically happening underground in the project and IRC has a lot of things that make it Not not just that it's an old protocol But just some of the way it works are barriers to entry for new users So we've been looking at providing a newer chat platform to people And so that thing that we've selected and will be launching soon is matrix-based So I guess I'll turn it over to Matthew here a little bit to talk about Matrix and element and all of those things Awesome, thanks Matthew and some thanks for inviting me to come and talk to everybody and Please button with any questions at any point I should also apologize first of all for any background noise because I am in what looks like a kind of Victorian Tardis interior, but actually is the role. Let me get this right. It's the Royal Society of Chemistry where I know I've been here for a Thing for element during the day and they're going to keep me out at half past. I apologize, but they gave me a room which is It's really amazing. It looks like you've got some sort of super elaborate fake background, but it's actually the genuine Yeah, wow Very silly if way and thanks for giving me the opportunity to explain matrix and elements and you're right that the Names are confusing Nowadays, you only need to worry about sort of two names to get up and running One is matrix, which is the open source project and the protocol that we've defined and I quite like the Characterization of it as being a modern IRC because that is completely shamelessly what we were aiming for when we created it back in 2014 because we were and still are massive IRC geeks I've been IRC opping a Tolkien network since 1999 Which gives you an idea of just how geeky I am and also how entrenched IRC is in our culture And in fact the company that Ended up emitting matrix started off at university as a student college IRC server Which we continue to run for five years after everybody on the server had left the university because we left it built into a wall eventually they did To do some building works, but it gives me an idea of how serious IRC was for us and It's kind of frustrating because we were running Our little startup at the time doing communication stuff lots of sip lots of VoIP lots of kind of SS7 and PSTN stuff And we did it entirely of IRC and we were very very smug because it felt like a huge Advantage to get stuff done and obviously in the open source community. It's an o-brain of the back in the early 2000s Everything happens over IRC and yet here we were doing both a bunch of open source stuff I was hacking on video land and deaf and fan-peg and stuff at the time and also just for the day job Everything happened over IRC and then when Slack came along and people started to say wow You can actually use chat rooms to get the job done This was not exactly news to us and it was a bit frustrating because you know if somebody had done a IRC as a business start-up 15 years earlier than perhaps lack Would not have got quite the momentum that it does today Either way what we did was to create matrix as a protocol based on years of geeking out on IRC and other communication protocols and it was really a thought experiment of Why isn't there a standard API for doing instant messaging like? If you want to send any kind of text message on the internet you've At the time you have a choice of X and PP where you're having to kind of custom TCP line protocol And you go and chuck blobs of XML over it and the XML doesn't really demarcate the tool There isn't actually a kind of knowledge. It seemed it seemed like a good idea at the time I think is the summary of that one Yeah, and I mean we we ran X and PP servers before matrix We had a bunch of each other D is a bunch of open fires And we wrote lots of X and PP clients But we felt that we were fighting an awful lot against the protocol to add on things like message history or push notifications And no, this was seven eight years ago. Obviously X and PP has moved on a lot since then has got a lot better But at the time we kind of thought if you were creating a new protocol from scratch in 2014 what would it look like? Well, first of all, it's obviously going to have an HTTP API because everybody understands web service APIs and you know sending a message should be an HTTP put to some endpoint probably called send message And you give it to Bob adjacent with the contents of the message and then you've sent it and then to receive a message You're probably gonna know the simplest thing in the world The most stupid solution possible would be to just get a sync API and it will block until there's a message And then it returns the message and that is all the matrix is it's just a standard HTTP API for sending and receiving gloves adjacent in real time Now it does have a slightly interesting additional facet Which is that it's not just message passing by email or X and PP Instead, you're actually replicating a conversation history for a chat room between the various different users in the service So the full story Is that if I'm sitting here on matrix org I might do an HTTP put to my server It might say that you're in the room on fedora.i am or Fedora's org or whatever the main Ends up being and it my server will then do an HTTP put to your server Um, and then you will receive it by doing a get request on your side So it's a classic trapezium style Put put get kind of model, but the trapezoid in america Oh really you don't do trapeziums. Yeah. Yeah, right. It's totally different shape. I mean the same different name for the same shape so, but As long as I mean Trapezium trapezoid is I know it's scaling rhombus or something. I'd be completely freaked out at this point Okay, so it's trapezoids reaching Mechanism, but the fun thing is that you're not just passing that message What you're actually doing is replicating and synchronizing the copy of the room on my server with the one on yours And tech speak what we're technically speaking It's much much more like git than anything else that our servers are building up a direct today's circulate graph They've signed messages just like a git repository is a bunch of signed commits in a graph It's literally the same data structure as git frankly every time I send a message I'm effectively pushing a commit onto my version of the room And it then goes and pushes it to your version of the same clone of that same room and this is Surprisingly subtly important just like the first time you use git rather than subversional CVS or whatever Everybody has that sudden. Oh my god. I've got the entire repository on my sort of local machine here Everybody's got a clone. There isn't one to truth. GitHub isn't the truth It's just to pay it to my one on my computer and people have that epiphany So people have the same epiphany with matrix But there is no longer any single point of control or failure that the copy of the conversation on my server is Just as equally valid as the one on yours is as valid on the one on element.io or any other server, which is participating Let me ask you a question about that. How does moderation work in that model? Is there I mean, so if I do a git revert or whatever on my git thing I can't very well push that to all of your repositories How does that work for matrix moderation? Yeah, so we kind of approached this really pragmatically and thought okay How do I make sure that when somebody kicks somebody or they ban them or they try to speak That everybody else participating in that room gets the message and acts on it correctly We kind of approached it as an engineering problem and thought well, how would I do that? I should probably prove to you that I'm allowed to kick you and so every operation you do in matrix contains a little proof Which is literally a Jason array of Events which have happened in the past which demonstrates to your server why my server thinks I'm allowed to do that operation So if literally we were having this conversation though for a sophisticated open source technology like matrix rather than blue jeans Then I might go and kick you from it and I will say hey, I'm kicking Matthew And the justification is that I am I set up this conference. I created it. I'm an admin And you can see that because I joined at this point. I created it and I got given this power at this point What you will do on your server is to execute the proof against your version of reality And you literally use the same algorithm on your server implementation to say well, okay Did Matthew Hodgson create the conference? Is he allowed to kick me? No, he is completely lying He's a bad actor. He is coming up with fictions and I'm not going to Accept his kick event and so as long as everybody in the room Is executing the same proofs every time they receive a message Which is pretty quick because it's literally just running it through a series of rules to say whether you're allowed to do The things or not Then you get effectively decentralized access control Now the interesting thing is what happens if there are net splits and you have partitions and what do you get if for instance, somebody Maliciously sculpts a message that they fork from the very beginning of time so imagine that you like check out the Linux kernel on git and you go and Push a commit against the initial commit and it's got some badness in it And then somehow that gets merged back in later on that's quite a No fiddly malicious thing to do but in the matrix. Well, that could be pretty catastrophic if you say well I actually didn't you get the message that I did get power levels right there on day one And you were just net split at the time you didn't get the message Then there is scope to try to manipulate it to do nasty things So we have this thing called state resolution and it's the most sophisticated bit of all of matrix And I apologize for people that we have gone straight into the end I I feel like you've been talking to politicians and you're like oh now finally I can let the geek speak flow, right? Yeah, oh, yeah, so I might have overstayed a bit I promise everybody I'll come back up to like The surface in a minute. But if you're interested in the decentralized sort of Architecture of it. This is the crown jewels because you basically need to define a merge resolution algorithm So the if my server has out of sync with your server and your one No says that I was given ups and my one says that I banned you How do you resolve these two things together in a consistent way? And interestingly when we first implemented this we got it wrong and we didn't really realize how wrong it was for a few Years until weirdly enough somebody noticed it and exploited it and started taking over rooms and Breaking rooms and it was all very embarrassing and we had a far drill to Redo the merge algorithm and this time get the rules right and this time prove mathematically formally that we got the rules right So that it wasn't Subjects of abuse like this now the interesting side effects of this is that according to Karlsruhe Institute of technology and the decentralized systems research group This is a new field of maths or at least computer science called Congratulations access controls without finality where the first people apparently to have figured out how to do decentralized access control without basically taking out a lock like sealing a block on a blockchain Or an afs or something you would literally have a global lock to try to make sure that the file system is AFS awesome The flashbacks, yeah, basically trauma flashbacks right there I have actually have a question from the comments here is If it's like a get repo is basically is a home server like the repo or is it on a per room basis? Or is it what what is the repo? Yep, the repo is done per room and the server Holds a copy of the node and the client itself is very thin and very stupid So we don't expose any of the funky um graph data structure to the client at all. It's a bit like a um I described it. I mean Yeah, if you were using a git web interface like git here or something or even the git lab or github Webfront and that's more like the matrix client and it's just talking a really simple htp interface to the server Which is then actually where the repo lives and is doing the funky stuff for keeping that I'm saying One of the interesting things I learned as we were setting this up is that Messages like someone so and so joined the room and so on that show up in the chat are actually Protocol messages happening that are being exposed in the client Or in well, yes and no, so okay What I've learned is that if you delete those messages it could actually cause the thing that happened to be deleted not just the The Right, like if somebody if you if you change the room avatar and you delete the message that the room avatar was changed You revert the change to the room avatar, which is surprising So complicated Other than the bugs it should be absolutely It's quite a nice solution I think so basically the primitives you get in the matrix room are the timeline which is just a series of messages Which can fork and it can reform if they're in that splits, but it's just like the git repository idea You also though get key values in that room. So for instance, who is in the room? What are their avatars? What's the room avatar? What's the room name? And if I any key value you like It's completely freeform and we use kind of java style reverse dns namespacing so that You can go wild and you could have a org dot fedora dot Coffee pot event or something which would track how much coffee there is in the pot And it'll be specific to you or whatever It's basically allowing you to replicate around the decentralized hash From key values. I won't use the word decentralized hash table because that comes us up completely different mental images but the end result is basically you're replicating key values around the place and These appear when they get updated like normal messages in the timeline It's just that they also happen to be updating a key value thing. So when you change your avatar It literally is in some way a normal message But on the other hand it also updates this table which is then used by clients to track what people look like Now if you redact that which is the term we use for deleting the message how it actually works is to Delete the human visible information So you're right that if there was semantic information like Matthew joined a room or Matthew kicked somebody the the actual kind of skeleton of the semantics would still be there But if you redact it then it ends up deleting Anything human visible like the name of the person when they did it or the display name or the avatar of the person when they did it Which is what I think you're seeing there So it and one level it has removed the human visible stuff So it it did revert the name change and it's kind of a moderation function to stop people If they turn out with an abusive name you want to be able to as moderated delete it But you also it would be horrible if you Took an immutable thing because matrix isn't a mutable data structure And you could actually go and somehow delete the fact they entered the room and that kicks them out of the room It gets really icky so one of the One of the things I somewhat related to this that we want that doesn't exist So we have a room that is supposed to be for announcements And I found that that room is not a room for announcements It is a room for five days worth of people who don't have permission to post in the room joining and part leaving the room So would it be Possible to make it so that Those join and part messages aren't shown to clients when the person doesn't have the permission to post Is or is that is that like an implementation detail? Or is there something deep that's hard in that? Bit of column A bit of column B So you can fix it on the client by just hiding joins and parts and you can do that an element today I think you can do it on a per room basis Yeah, there's a bunch of stuff that cannot be hidden. It's frustrating. Um, but that's details. Um, interesting I I reckon that there should be a join and part thing, but it might be global in the you want All settings an element and um with what we call granular settings, which are a bit like your good old GTK configuration files where you can drill into any level of granularity you like in order to override a setting Um, we can expose that in the ui an element to make it easier to hide them But it's still a bit of a waste of bandwidth because it's not going to be downloading all of these random joins and parts all the time So a much better approach would be what so we call auditorium mode Where the client just is never told about the members of the room apart from the moderators And I filed a bug for that about five years ago and I'm afraid it has not yet hit the top of the to-do list All right I'll look for that now that I know auditorium mode because that's definitely a thing thing we're looking for. Thank you That was a sidetrack. I forget what we were actually talking about but that came to mind Three levels deep in the stack We were talking about decentralized access control, but I think we bottomed that one out before that it was names And what is matrix? And I never quite got to say that matrix is a vertical but element is an app And oh, yeah, that's where we were going. It was all right. Yeah, all right So the kind of it should be a pretty familiar model because matrix is to Linux as I know red hat is to element If I've got that the right way around or basically elements is a red hat equivalent But for the matrix ecosystem in that it's a random text data Which is the profit that is employs a lot of people who hack on matrix just like red hat Has employed lots of people who have on the Linux kernel and it's slightly different in the I founded element I also founded matrix with my co-founder amondine And it's more as if what if linus had gone and done the Linux startup If I think he briefly did once possibly but That's more the analogy But the point of element is basically to pay for the matrix core team to keep hacking on matrix full time And also To be a flagship client because a lot of the open source and open protocols that precedes failed We think because there was never a good app like what what was the killer app for x and pp? iMessage possibly like Google message. Yeah. Yeah, and then they decided to not do it so that That just made my phone ask how it could help me. So, uh, yeah You can't have this at dystopia All right, you seriously Yeah pigeon pigeon is the killer app One one comment Alexander made a long time ago is I'd said this is going to what I forget what I said about IRC An alternative IRC. I think it more of an enhancement to IRC in a lot of ways We are actually bridging all of this to Libra chat and all of our official rooms at this point or most of them are bridged Um, I don't honestly that people ask me about this I don't want to scare the IRC folks away. I know we love IRC, but um I really think we need to be matrix first for a lot of our decisions when when there are things because our The bridge is always going to have some mismatch and trying to Decide to things that always work perfectly on IRC I mean we're held back to things that work perfectly on IRC Um, so IRC is always going to be the other side of the bridge. I think um, and you know if If you disagree come talk to me I'll be happy to take your criticism on that point But um, I think that's the way we've got to go if we want to make if we want to move forward And I think we need to move forward I mean as I said, we are and still massive IRC fans on the matrix side from the first bridge that we wrote back in 2014 was the IRC bridge and I think as of the last couple of months particularly after Libra came online Um, we have hit the kind of platonic ideal of IRC bridging in that we have We bridge absolutely everything that we can as faithfully as we can Um, which is not the case until Libra frankly And what can how can I put it they? Encouraged us very strongly to improve the bridging semantics to be the optimal solution before they would let us turn on the bridge between Matrix good for them Yeah, no, I mean, it's fine. It's fair enough. I get it if I was throwing now See now all these annoying matrix people turn up and they keep editing messages and doing reactions and things I feel pretty upset. Um, so they use the opportunity to reset things and we did so and they now have an official Matrix server so you you can join rooms or channels on Libra by going to hash Whatever cologne Libra dot chat on matrix. So it's very very transparent and the improvements that we did were to improve So I can I can join an arbitrary Libra chat channel. I had no idea That's I'm going to go join some right after this meeting. Uh, yeah, thanks. Nick says it's what uh Basically channel at Libra chat. So they've got okay. Well, that's that's cool. Um, and super useful So we could actually double join our channels for Um, oh, please please don't double bridge Yeah, um, I sorry, I just went to the horrible horrible approach right away. Um, yeah, so um in fedora. We're basically offering Um, two things here. So we have well if we have three home through two home servers and a client basically so The main thing from a End user point of view we're offering is chat dot fedora project org, which is basically a hosted instance of the element web client So you can log into that Matthew, you know, this is for the for the audience at home, right? So you can log into that and and that basically access the fedora chat thing and a lot of ways that is the Preferred experience because that will automatically connect you to some of our spaces and rooms And so you'll kind of get things set up the way we're planning to have them set up for you But we're also Since since it is this distributed protocol You can actually connect to those spaces and rooms from any other anywhere else on the matrix basically and so We have two different home servers. One is the fedora project org home server and all of our official rooms our channel name fedora project org and then We have we may have like a bot account running with the fedora project org matrix address as well Then all of the user accounts are fedora dot im Accounts and so you'll get username fedora username fedora iam account And then you can also set up informal rooms and spaces and things using that that namespace if you're a fedora project member and you know Basically our rule is and we're still working on our policies, but as long as it's fedora related in some way You can use that space for that, but you know, please keep it fedora related because we do not have an infinite number of resources here that's basically it um Yeah, anything else you wanted to share with us So much so much So on the rc version side of things the fixes that we did were to improve how replies look So that they actually look idiomatic for rc Something that we haven't landed but will land soon on the bridges Is also the ability for the bridge to disable features on the matrix side So that if you happen to have some existing rc channel And people want to communicate with the subset of matrix which doesn't have reactions or edits or typing notifications or any of the stuff which Where a matrix exceeds rc you would actually be able to negotiate it to turn it off So I imagine for the fedora once you want it on because you actually want to have the emoji and the No reactions and all the other richer stuff But if you are going into I know hash hash linux or somewhere which hasn't changed since the nineties then Yeah, it basically will try to give the most faithful bridge impossible. It's basically an important mismatch in engineering Right. Yeah, and so we'll have to see how this goes But actually one idea I actually have is that if we find out that that's causing more frustration than good We can keep our bridge rooms, but put them in a irc bridge space and have that be the irc Bridge section and then have those. Yeah, I didn't know about that possibility But that would be perfect and basically have all those just be this is the these are the bridge rooms And then these are Have, you know separate rooms that are not there and that may be For you know for like the pound fedora channel that's been around forever and has a lot of irc culture Behind it. Maybe that's the way. We'll we'll see what happens when we eternal september that channel with our new server that that's I think the biggest risk is if people are using reactions for semantic purposes like To agree with somebody or to vote on something And we don't bridge those to irc because seriously how would you it would be horrible if every time somebody sends a thumbs up He got literally a random thumbs up turning up with the message posted again Then I think that might be the point where either you decide so matrix is primary or irc is primary Yeah, that's like like twitter dm notifications do that. It's terrible Um, right. Yeah, so that is a bad thing. I'm glad you don't do it. Um, yeah So the question is matrix compatible with like meat bot for logging meetings. Um, I think I can answer that. Yes It basically works over the bridge Although sometimes some of those rich things get a little bit confusing I think one of our bot things that we have for irc we use we do username plus plus gives you cookies And in matrix when you complete somebody's name it puts a colon after it and our bot doesn't recognize username colon space Plus plus as they cookie granting thing. So yeah, so yeah, I mean, you know, it's fine. I think probably fix the bot there is The thing to do I think eventually we probably want to make our meeting bots matrix native. Um, which is uh That way we can have the bots do things like keep track of the reactions. For example, I think that in particular is a useful thing right there We we could actually even use the you could use the reactions for semantic things where you could actually use the reaction to tag something in the meeting as Oh, yeah, we need to put this in the meeting minutes rather than actually Basically use the the reactions to annotate. I think that would actually be really useful Um, we'd have to then have the bot regenerate. Anyways, the work work to do there, but I think that would be cool That's precisely how we did it actually for fosden. Um, the big European open source conference which ran on matrix this year And every single talk that they had and had like 666 talks, not really scary Um, and each one had a green room where the presenter and the kind of moderator Would hang out whilst people watched the talk and then you'd have a live q&a session afterwards And what the bot did was to count the thumbs up on the questions Which were presented for the audience whilst they were watching the recording of the video And then summarized them and presented them actually as a widget Which is a concept we have in matrix where you can basically iframe arbitrary web content and embed it in a chat room So you basically almost Almost all content because a lot of it does not like to be iframed these days I Yeah, this is true. This is true. We you get to know banana graphic if i remember correctly if you try to iframe something Which has a x no frame header on it or a cause having to stop you from getting at it A lot of the stuff I wanted to put as widgets in a fedora infrastructure is protected in that way already unfortunately So I need to figure out some workarounds for some things Just go and buy the sre's a beer or two and Yeah Get them to special case the headers for your Yeah, um, well, I'll just figure that out. Um See yeah, one of the other neat things I saw with matrix reacts. There's a um This weekend matrix or something. There's a matrix weekly news So it's just a a channel where every week the bot goes back and scrapes and looks at the different reactions He actually use a different emoji for what category of the newsletter this is to go into So, um, I think that's kind of fun and we could use that for we could also You know Use that for things that get a certain number of votes get put up as highlights. That seems really cool I'm very interested in setting something up like that once we get time to do that because I saw one of the most um hilarious and that hackerish uses of reactions ever yesterday Which is that we've got some a moderation bot called me on it Which is open source and it's Is designed to let big communities go and like enforce bans. It's a bit like an egg drop bot back in ioc days And um historically its user interface has been completely playing commands. They'd like playing ban Whoever or playing kick or redact or whatever and it's a pain particularly where if you're under attack and People are brigading a room or something and you're sitting there on a mobile device typing exclamation mark redact and a matrix idea. It's a huge pain and as of yesterday They merged on this user interface. They call it rather comically where rather than having plink commands You just have lots of reactions every time something happens And so you basically start off giving a menu of like eight different reactions It's like one plus one redact plus one ban plus one kick etc And then you just have to go to click on the reaction button. I'll have to see what that looks like And it's basically diy forms in a really simple sense hacks using reactions So it's literally just one clicks if you increase any of them beyond one then it will do the action for you If that makes sense, it's a stupid stupid hack a bit like people on facebook or whatever saying Hey vote with a different emoji depending on whether you believe in hacks or not Yeah, it's well, that's Pan pandering for likes is what that one is but um I had another thought but it's come entirely escaped my mind. I'm here Um No, what what interesting things do you think are coming in the next couple years in matrix So spaces was this big feature that just launched and it's pretty important to how we're using it in fedora We really because we have so many different channels organizing them with bases was basically mandatory for us Um, what what else is exciting that's coming up other than the auditorium feature obviously So there's um the kind of second phase of spaces is synchronizing access control based on space membership Also hierarchies of spaces. So you have that today, but the ux isn't fully um finished But that's what I'm most excited about because it allows anybody to curate a hierarchy of spaces a hierarchy of rooms and This thing can be public or it can be private And if you combine that with the decentralized ACLs that I was banging on about earlier You actually end up with a global hierarchical namespace where you can delegate control to anybody you like And joking aside, it's a little bit by a fs or coder or one of these Distributed global file systems except it anybody can join it. It's by some time for tolerant and You actually have strong ACLs So if you think that's a use net and all the drama about getting a new news group added and You know, we're going to have spinters in the namespace and we're going to have the alt dot namespace and all that sort of thing Of different moderation policies You could do the same thing with matrix and basically carve up every single chat room there into a great big taxonomy It's like the sort of quintessential On the ontological problem of going and trying to categorize everything and say a kind of have animal vegetable mineral or whatever Criteria you have and everybody can do their own one if they want or they can pile on Pick a root and start curating and it's a bit like demars or one of these Kind of ground and classification projects and I cannot wait to see people using spaces for that And unlike those things, um, I don't know if any of them had links But a space can belong or a room can belong to multiple spaces rooms in the same hierarchy as well So if you have a categorization problem, you can put things into two spaces and be like here It's both places Which I have a terrible terrible thought based on something you said earlier about distributed hashes Can't can't we just use matrix for nfts instead of burning up the planet using blockchain for it? Oh Yeah, I mean if you want to start using matrix as a kind of immutable Chain you could but what the character the properties we don't have are double spanned and The global lock there is never one single truth in matrix that I don't know if you're on the fedora project server And I'm on matrix.org and the two net split and we just keep randomly talking on our respective servers to ourselves And I might mince an nft on the matrix server Which is all very well, but it's not a globally unique thing because there is never a global lock if we never Heal that net split all I've done is to create some signed data on a data structure on my desk That's just I can get you could you can't nft get commit because if you don't push it anywhere then Big what what does it mean? Oh the big what what does it mean actually also applies to the other ones as well, but I'm getting trouble saying this on youtube, I don't know I know the brilliant thing about nfts is that the It only works because of the scarcity of it being a novelty thing that it has value because people don't know what they are And they have to tell their mate, but I Square patch you yeah On the moon or whatever right it sounds very it is very much the square mile on the moon. Absolutely. Yeah, or the names of stars and the scarcity Immediately banishes I can't wait to see what happens to the price of the things. Yeah, right. We should probably not crash the We'll get this the most popular most downvoted fedora council video ever Um So other things coming up. Um, we've got a native matrix video conferencing coming up in a few weeks. Hopefully we're aiming So does that um, how does that fit with what we're paying for in fedora already? Is that an add-on thing or is it? Um, you would so at the moment, uh, you get jitzy integrated, which is great and we love the jitzy guys Um, but it doesn't um tool matrix. It's not integrated with the access control model It doesn't directly use matrixes end to end encryption and it's not decentralized So if your jitzy server goes down then it's curtains for everybody on that call Whereas matrix, of course can just be used for native proper video calling and we've always had it for one-to-one calls But we've just finished adding in msc 3401 written by yours truly if you're interested um that adds it In adding group video and voice calling and it just extends the one-to-one stuff to work with groups And it's kind of fun because it's a meta protocol. It's not Saying they'll shout do conferencing a matrix in this manner It's basically giving you the building blocks with which to build a conferencing Approach so it could be a stream forwarding unit like jitzy or it could be a An mcu a multi-point conferencing unit Polygonals, but from a pragmatic point of view, are you also building an implementation of that in the element web client? Yep, and we have it on a branch of element. Um, we actually realize that it's By baking it in specifically to element It would slightly limit its appeal. So we're actually going to launch it at first as a standalone web app very similar to jitzy Um, it has a name, but um, I'm not going to announce it yet But um, it will be talking on matrix and so once element itself does have it natively built in And or any other matrix client, um, then you could just hop on And it's designed to be really easy for the clients to implement if your client can talk web rtc Like I think um, neco can as a native matrix client Obviously anything in the web browser has it automatically. I think caternion might have it by qt six or 5.6 or whatever. Um, then you would be able to pretty easily Make give jitzy style capability Within the client, but the really fun thing is that it's decentralized so that if You have I know The conference like this one and people doing it literally over matrix rather than blue jeans We might have 10 people on the matrix.org server and we might have 50 people on the fedora project server And if something did go horribly wrong on one of the servers or there was a net split All that would happen is that the people on the local server would still quite happily keep chatting to themselves so if you're thinking of it in a Geo distributed office context and I know you're in australia in australia's bat bones go down But everybody locally in the office can still keep chatting to one another or in the same country can keep chatting That's super powerful and like you normally have to pay loads of money from some funky Cascaded conference inventors like blue jeans to try to provide something like that and in practice. I don't think anybody does so does that Just one of the things with the jitzy thing that we're missing The permissions in the jitzy thing are not linked to the the matrix rooms at all will with this will that be solved? Can I make a call that? Well then good. That's a straightforward answer. Yeah, so it'd be nice to have a room a chat a you know Linked to a room and then people who can speak in that room can speak in the thing And if somebody gets moderated in the chat or they automatically get kicked off the conference Perfect So it's literally using the same well the the web rtc signaling effectively goes over The same thing that you would use for sending messages So all the same normal rules apply and all of the end to end encryption you basically get for free So then the second question is Streaming and recording options. What are those basically? So for jitzy what you do is to have a headless x server That you run chromium in and you pipe the virtual frame buffer into ffmpeg and put it to disk That is all what gibri does which is the tool that jitzy shared in order to record jits And we would do precisely the same thing with the catch that we're going to make very sure That the little web app client Is predictable in terms of what it shows on the server because i'm sure anybody who's ever tried to record and jitzy is familiar with a slight pain Where you have no idea what the server is going to be recording and you discover you've recorded an hour if somebody's ear or like Yeah Yes, that's very frustrating. Um Or yeah, no video from the speaker for some reason on the recording Oops just decided to pin to somebody because the active speaker detection wasn't working all that stuff So it's just got a lot of moving parts. It's a great product We love the team and they use matrix for the end to end encryption But it would be even better if it natively taught matrix. They're not going to do that So kind of mohammed had to come to the mountain as it was Okay, so with with that will it be able to just do like the jitzy.org thing Or jit dot whatever it is You can basically stream it to youtube It doesn't have a like a thing that will generate a downloadable file for you Can will this do that or do you can you do that? So we can actually do that today with jitzy. It can chuck out hls um, http live streaming It can also stream our rtmp the last relics of flash over to youtube, right um, but so yeah We would swap it out. So you get the same thing for the new generate next generation The the thing that I like about blue jeans that we're using right now is after this call I will get a mail that says your video is ready and there's a web interface with a link to it where I can Download it or share it. That would be a nice feature You know that jitzy doesn't have as it is Something I should warn is that we probably won't be hosted in fact We definitely won't be hosting that for free because yeah mentioned Fair that's dps for anybody who's recording one of these and yeah, most obviously will be open source And you can run it yourself if you want to do it yourself To do it at scale it will be a paid element Thing yeah, if you want us to host it for you that makes sense and we'll look at the options for that when that comes out Yeah, how many should we see about Does anybody else have any questions Either high level or deeply technical We clearly have room for both here Mo says logging what's the question about logging are there clients that enable local logging? Yeah, I guess this is some of our irc folks like to have a local log And are surprised that the log is a thing that belongs to the server. Yeah, she says crepping my irc logs is a gold mine So the good news is that as of Monday, we shipped element web 1.9.1 And that has the first time ever conversation export in it And this was contributed via a google summer of code student called jwamp who did an incredibly good job Let's sing way by himself over the summer and single handedly implemented this huge logging capability Where you can basically take any given room And you can export it as html or irc style utf 8 or As jason for structured logging and you can say hey, I want them that the last six months last 20 000 messages I don't want attachments. I do want attachments or whatever So this is a huge step in the right direction But it doesn't give you real-time logging of the way that mo or myself would love to have Because and I've still got all my xchat logs dating back to the liners and I really miss that So we also want to improve the server side search a lot And there's the perverse thing that we do support client side search For um end-to-end encryption because you obviously can't do that server side because the server can't see the messages So in element desktop, you actually have a encrypted SQLite database Encrypted with sql cipher, which contains all of your end-to-end encrypted histories so that you can search it locally So we're tantalizingly close to actually having greppable logs. They're just encrypted logged in the sqlite database And specifically for the encrypted rooms. So long story short, we've got all the infrastructure in place Lots of people would love it and I miss scripting my irc logs too All right, another question is some clients don't respect the message callback operation So the deletion event is not replicated and all the connected clients any plans on somehow making that uniform across all the clients No, it is a um causality paradox. Unfortunately We can't force the humans or their computers to delete messages Even if we awesome very very much the any way we could do something like that would be via drm at which point We all go to hell so I mean honestly, um It's a feature that if I try to delete my message, there is no way to reliably force anybody else to do it Um, I have yet to see any server go and disable redactions You could obviously write in your own server to disable it On the clients all of the normal ones should and it tends to be such a socially important thing in matrix That if somebody posts a password into a room and then wants to redact it and they accidentally go and send a Selfie that they thought they were sending to their other half and actually goes out into 25,000 person chat room you kind of want to be able to remove it And so I haven't seen a native matrix client that ignores redactions for a long time But kashdeep, do you know what client you were talking about? I bet it's an irc bridge because obviously message goes out over the irc bridge and irc bless it doesn't have redaction semantics you're screwed and Yeah, what does what does matrix do does it post like it whoops, please ignore It's like send an emoji of an eagle or something Yeah, right, so this was an irc this was an irc bridge chat And so actually honestly this might be another reason for that thing I was talking about earlier which is to separate out the bridge channels and the matrix channels So people know what to expect on the other side But I don't intend for us to do that now But if we end up coming up with a lot of problems and this becomes difficult we have that option Yeah, nick really wants the main rooms bridge and nick is one of our tireless irc and matrix admins. So I think that's a last resort thing I guess the rough impedance mismatch is to the I know frankly IRC is effectively a public media particularly in a public chat room obviously and Just as you can't force people to delete messages if people do pay something stupid Then the worst case people are going to start taking screenshots of it before it gets Redacted so the analog gap is always so it's a bit of a fool's errand to try to Make the deletion successful there But if you actually want more privacy And you want a private chat room event went encryption and obviously in the fedora context This is going to be a lot rarer a bit imagine that you got the security team coordinating on some release And it's a really sensitive disastrous issue. Some of these being printing ssh Private keys with the same You know how we're going to do that we're going to be doing that on the phone actually so Well, I hope not given how insecure the phone is Yeah, well Yeah, obviously we're a lot lot lot better than gsm in terms of security but basically That kind of breaks a bridging scenario because if you are relying on the signal style end to end encryption that you get In the private chat rooms and matrix and then somebody wants to be dm'd Obviously is obviously not end to end encrypted. It's very often not even transport layer encrypted So You would have to compromise the end to end encryption of matrix to go for the bridge terminate the encryption at the bridge and then send it out plain text as rlc So that's obviously not ideal from a privacy or a security perspective And that's another point where you might want to say actually bridges aren't the right tool for this because we want matrix for the security But for a very no domain specific thing like a security response Okay um, yeah Nick you've been doing a lot of work on all of this. Thank you very much by the way You've been doing a huge amount and really appreciate that Do you have any questions or comments or observations you've come up with as you've been doing all that? Not to put you on the spot too much, but maybe a little bit I've figured most of it out and thanks to um The matrix people that are in our channel. We've been using to discuss all of that um The comment which I don't know that there's really a way to solve it because I know they explained to me that it's because of limited connections, but um the thing about how Um, if you're idle in a channel, it will kick you Ha I can explain that one. Um, so that is part of the contract with Libra and before them three nodes where they don't want a situation where random people Passed by some channel on IRC via matrix and then they close the matrix client And because matrix is a persistent chat idiom And that doesn't kick you out of the room like it would if it was an IRC Client where obviously if you close the connection you leave the server and you leave the channels on that server So it would be very easy for some random flyby person to go and experiment with matrix join hash fedora pound fedora and then Close their client and never come back at which point the bridge would otherwise be keeping that connection open um to the IRC network for the rest of time And that is like literally just going to keep um Stacking up resources and they're going to keep randomly replicating the messages down the tcp socket to the bridge And it will just be stacking up patiently in case bob ever comes back So, um, I think it's very relatively reasonable that the Libra and the three node guys before them Said look bridge is fine. But if somebody's gone completely absent from matrix for 30 days Can you please get rid of their ghost on the IRC? That brings up. So is it they're absent from any channel or they're absent? Oh, okay, okay I didn't I didn't realize that I thought it was in a particular channel like I'm in some bridge channels that I don't rarely talk in but I talk in others So then I wouldn't I wouldn't get kicked from the other channels And also, um, I don't think it's even That you are you don't even need to be active on the network. You just need to be active on matrix So the logic that we use is that if we haven't seen any Traffic of any kind like presence or type of notifications or a login from that user on matrix for 30 days Then we add them to the send bin and get them off the IRC network. So they really need to be a goner It's happened to me once because I actually went on holiday For ages and one of my accounts pinged out and honestly, it does feel a bit violating But then again It's a lot better than an IRC model where you obviously get kicked out of the second that you close your window Oh, yeah Okay, well that that reason I mean that resolves my concern I didn't realize it wasn't per I didn't realize it wasn't per channel So that that's good because I think that's awful on people should be on Matrix doing something at least unless they're totally gone Why I think so, but yeah, it's a you know The error isn't as clear as it should be We can get that fixed or shall follow up And one last thing here any request to the fedora community from you know from the matrix side What what can we what can we do to help you? Well, um, honestly, I haven't heard any Like problems from the food from my flight as the project lead to matrix where I'm the people working with a fedora community are turning up and say god Those fedora people don't understand anything And so it's been the opposite that oh, it's so nice to work with people who really understand what matrix can do And it's so nice to see people From IRC to matrix rather than discord or slack or some proprietary closed and unencrypted privacy Destroying solution like that. So, um, honestly, I don't think they've got any asks at all other than if it works Please tell your friends and tell your other projects and spread the word and help grow the network because Um, you know, if we build it they will come as it were So we're still in the bootstrapping phase Yeah, I'm glad you added. I'm glad you added the What's it called allow unconnected matrix users? Um setting because we were running into With the um before we really started this whole project. I mean before we really started moving to matrix We had some bridges and we were running into Where I guess someone didn't show up on Matrix or on IRC from matrix. So then the bridge wouldn't pass any messages, but Since but lately I've been setting that in all of our rooms Um, and that's made that go a lot smoother Cool. Yeah. No, I mean, I know that some of the feedback we've had from you guys has gone straight into Um, our kind of immediate roadmap to make things um successful So if there's been stuff like that, please keep it coming because even though we have a lot of Issues coming in, uh, we do also try to prioritize them for particularly impactful folks And yeah, and the classic example of an open source community We want to be overjoyed for the experience of using matrix And yeah, that that having that setting now has made it A lot better and I mean, I've I've really been pleased Um when I've been setting it up. I've um It seems easy to work with and everything Cool, I'm glad And I have to drop I'm afraid because I was meant to be kicked out of here half an hour ago And nobody's kicked me out, which presumably means I'm now locked in the royal society for chemistry and was I hope this is the beginning of an amazing story. I thought I would like to hear later Look, I hope that that's here. I guess you're probably many in seeing your reflection Matthew But that some of these books are incredible. I feel like a library and Hogwarts here If anybody has any questions about alchemy, it's all here It's like books written by Boyle written physically by Boyle by the looks of it Very exciting That that is that's amazing. All right. Yeah, I hope you're locked in there overnight. I want to hear the story later Thank you everybody. Um, thank you very much Matthew. This was a really fun session and we'll get this up and publicized I had hopefully Have our thing launched soon. We're still waiting on a few things where we need Some documentation and there's a legal thing I need to deal with but Hopefully very soon. We will be launching all of this And again, thank you very much. It's a help things along in terms of legal stuff Oh, it's it's it's a it's a gdpr something something thing. Um, yeah Should be good I'll tell you later what the deal is. Um, okay the um Yeah, anyways that should be coming soon for fedora council business. Um next week we have our next week next month We have the fedora release party instead of our normal video meeting. So please come join us at the fedora 35 release party that will be fun. I'll be doing my 35 releases of fedora in 30 minutes talk there and there'll be a bunch of other fun stuff as well And then I don't think we have anything planned for december yet, but we'll see and again. Thank you everybody. Bye


At one point we looked at the six most common types of outs or ways that a batter can be put out and I said in that video that there are a lot more than six and so someday I would come back and make a video and fill in the rest so that's what we're going to do this will be one in a continuing series so what I want to look at here are four ways that are kind of let's say they're technical outs or they're kind of in the sense that the ball doesn't have to be in play in order for the batter we're just talking about the batter here to be called out for them and so the first way that we can look at is if the batter hits a ball with one or both feet on the ground entirely outside the batter's box so he hits a ball with one both feet on the ground and so obviously the batter's box is this area here that is painted in chalk on either side of home plate and this drawing is obviously not to scale where home plate is much smaller than the batter's boxes but basically this rule is saying that the batter must stay within his feet have to be inside the box the whole time so if his feet are here and here that means he's good and his foot can be on the line and a lot of times this is where you'll see a major league batter stand will kind of kick the dirt away and they'll try to get as far back as they possibly can in the batter's box but as soon as the batter steps for whatever reason if he squares around to bunch and he steps out here or up here if he hits the ball when his feet are entirely outside the box then the umpire can call him out the second way that we can look at is if the batter steps from one batter's box to the other while the pitcher is in position to pitch if the batter steps from one batter's box to the other when the pitcher is in position to pitch so this isn't really something that would happen all that common and really none of these rules that we're looking at here are all that common of situations but this one obviously would be if we have a batter and this would be a batter usually they would pick either a right handed batter and they would bat on this side or they're a left handed batter and they would bat on this side but on occasion there are some batters who are called switch hitters so let's write that down just these are switch hitters and they can bat from either side of the plate and so this is just a skill that they have taught themselves to be able to do that and that might give them an advantage depending on whether they're facing a left handed or right handed pitcher usually so this rule is basically saying once the pitcher is ready to pitch you have to stay in the batter's box and that could arise in the very rare situation that you actually get a switch pitcher who is able to throw the ball with either hand and that's a very rare situation but that's another way that that could pop up but basically it's saying once the pitcher is ready the batter has to stay in the box he's in the next way is if the batter interferes with the catcher's fielding or throwing by stepping out of the batter's box or making another movement that hinders the catcher so this is he the batter interferes with the catcher's fielding or throwing by stepping out of the box the batter's box or by making another movement so this will be on I think we've discussed this before if if there's a batter attempting or a runner attempting to say steal a base in the batter if the catcher stands up to throw the ball the third base in the batter might take a step back out of the batter's box to get in his way then the umpire could call him out now something important to remember is that the batter he is entitled to his space in the box so as long as he you know if he stands there and he doesn't move then he's perfectly within his rights to do that but he basically this is saying that he can't you know step out of the box or or make a movement you know when he's in the box he can't you know hold his hands up or something like that to try to block the catcher so the final thing to look at is is probably something that you know you certainly never want to do if you're a batter and that is if you if you batter uses a bat that has been altered or tampered with and to cause a you know the batter to be better than it you know to be outside the rules and there are certain rules that we that there are that about what a bat can be can only be a certain size and so when it can't be you know filled with certain materials so let's write this out first he uses uses or attempts to use so I guess if they catch you you know before you actually get to hit the ball then they can call you out in advance a bat that has been altered or tampered with to improve the distance of the ball and distance that it will hit the ball so this could be something like something that has happened in recent years is if a player puts cork will hollow out the inside of the bat and they'll put cork in instead of wood which would actually make it lighter and so and some people are you know that's it's so miniscule this may not help but but basically the rules say it you know the bat has to be solid wood solid wood and and so so this is really the the the worst way or you know of these four that you can do because not only can you be called out but but in especially if you do it in a higher leagues you can actually get suspended and oftentimes you will if you are caught using an illegal bat so these are four you know kind of technical ways that a batter can be caught out