 Thank you and thank you everyone Let's start I can probably skip the introduction slide here, and if you are too shy to ask question in person Here's my Twitter account for let to double L double T So Calypso Brady had a really great presentations so far, so I don't really need to get too much into detail I usually start with this very simple explanation really high-level to show what Calypso means for us And of course WordPress.com is a lot more than this, but in this general abstraction. I think it's a it's a fair simplification So Calypso was actually as you can imagine a pretty huge undertaking This is a high-level view again, and it's probably way more than this but still When we look into what it took to get us there One thing that was mentioned for example in announce post was the development time and what led us there, but What I find interesting is that There is a lot more that happened even before we started writing code In the sense that the platform started really as a sort of JavaScript prototype To try out user experience a new kind of new approach. We were actually working up and deal at the moment and I've done some design archaeology and I found That yes, there were a lot of discussion and there was a really nice beautiful moment of work around Wireframes that lasted roughly a month that was done by a designer that collected Pretty much all the work done until that moment and started with balsamic Very simple wireframe that tried to collate everything. So Melchoice did this great work That in a sense brought us together to them for the also the technology side and On the other hand, this is probably a graphic that if you saw the announcement already seen it was a huge amount of work Tens of thousands of commits 7,000 reviews just in these 20 months and of course even more right now and so the question we get I Got when I present these two people that are not comfortable not from our industry is We are you are a fully distributed company. We are having trouble to talk to the other office How do you make it work? How do you make something that is probably one of the biggest? React code base in the world and one of the big say the biggest user experience is existing On the web, but how do you make it? In in a fully distributed company So I'm trying to touch this a little bit today This is one of the elements of our creed communication oxygen and Because we what we look for even when we hire people We try to look for people that are able not just to do their own job like what they formerly are hired for But they're also great communicators There are people that are able to talk with others that able people that are able to interact give proper feedback And so a lot of soft skills are spent and used here and I just check at the couple of week ago our numbers and We have 160,000 messages per week across slack Across P2s and across all our communication channels 470 people probably now even more and 1000 deployments per week, which it doesn't just mean deployments It also means that each one of these deployments was actually someone that wrote it and discuss it with at least another person to make it into production The other aspect they make us work so well Is that we are all and again this happens since hiring highly independent individuals in the sense that? The people that try to we try to get to our company are the people that are very motivated There are for example, they're often this kind of people are freelancers because there are people that have experienced in the first 10 That there is a goal to reach and they have to reach it no matter what and they don't need any guidance That if they don't know something they will look for it If they need to know how to build something again, they will look for it or ask for help And so the combination of the first the soft skills and these Highly independence are a really good combination to make it work in a distributed environment such as ours So here's my team This was a teammate period roughly when we were working around this and At the time we were probably one of the most European ones Distributed about two times on across Europe none of us living in the in the same city and Hyperion over time worked on a few elements of a calypso itself a bit of navigation themes which is our core And we help it with menus and we do also a fair amount of work in the framework itself and Today just to try to get a little bit into more the details of in a sense the day-to-day work I'm going to talk you about the theme showcase, which is again the main focus of Hyperion and So how we made a possible to create this This piece of the future of calypso inside calypso So where we start well themes are probably one of the most Relevant and visible things of warped We have hundreds of them on warped.com and of course what we want to make possible is for everyone that joins The our software to be able to find exactly the kind of design they need exactly a kind of thing That fits their business they're all blocked. They're all whatever experience they're trying to build And so we have for example of the years feels what we call the showcase 2.0 Which allows you to that your filter and then we also have THX Which was then of course a collaboration with our torque again? Matias we talked today and This brings us to two but we have even more because we try to rewrite it again And we saw we have another showcase which doubled 4.0 As you can imagine this is not exactly a good situation. It's bad for users because depending where you come in You get a fairly different experience with a different set of features And of course, it's difficult to maintain because pretty much every single bug It's likely to be happening or all the three of them Or you need to identify on which one of them is actually happening and why it is happening So of course when calypso happen We set our goal. We need to make possible retire all the three showcase and set up four to have one single theme showcase for everyone So let's start building this One key aspect of distributed companies that sometimes is underestimated is FaceTime so Some in the collective imagination when we talk about Distributed companies people think oh you never meet you never show up face-to-face. How can you do that? Actually every single fully distributed company that I'm aware of does at least once a year a full company meet-up in automatic specifically we do that once a year and Every team is able to meet up to three four times a year depending on what they need to do So FaceTime is important because it builds socialization It allows the whole team to know each other better and of course there are certain things that yes can happen in distributed But a way more efficient when done in person And so kind of surprisingly this actually happened for us in Vienna. So we came here last year and We met together the whole team appeared and in the mornings We went around the city with really good food and Anything we had a good time knowing each other and in the afternoon. We actually conducted workshop activities So we met together in one room. We discussed it if you've never done this kind of workshop I highly suggest to see and buy a game storming. It's an amazing book about the subject So we did among the various activities What I kind of call epic planning and the approach of epic planning is that everyone for 10 minutes writes down on single Posted one single milestone for each post it and that milestone needs to be in a sense a minimal viable feature user facing and so doing this Again after that you put it everyone together and the only rule is that if there are two different milestones They need to be strictly stuck one after the other So after this the team is then highly coordinated We were pretty much aware what we wanted to build in the long term And some people that never experienced it this kind of workshop were really really highly energized So then we focus so the good thing about this kind of approach. It means that each milestone is highly focused So This brings us to building the actual first milestones. We back our to our home and offices Well, it's not always this it's more like this and This doesn't exist until we communicate, but we don't have an office space So on digital you need to pay more attention to the fact that there is not an implicit space where things are shared and For us there are many different tools But the three main tools that we use on a model called at the tree speeds Is that the real-time speed is luck for us? So it's where we discuss synchronously Then we have P2s, which is for a synchronous communications And we have a special wiki theme that is for things that are meant to last longer like setting up a VPN or things like that So you get I get back. I open my environment a few of the P2s the desktop application and The first thing we do is actually writing what we call text stand-ups That's that stand-ups are very useful because make each one of us aware when we come online So we know that from that moment on the other person is online And at the same time allows each other to know roughly what they're doing and of course was questions pretty much we Like a normal stand-up you can do in person This is is a very very simple and very very effective way to synchronize across teams and across time zones And of course the other thing is we post the roadmap So until it posted nobody in automatically knows what we are building So the roadmap is as simple as a post is as simple as a bullet list You don't need any special tool and with this everyone in the company now is able to see it and The next step is that you take you take the first milestone and we write another post Which is the master thread that contains the whole history about that specific milestone Contains where I find the design where we are meant to release it where all the code is hold where all the tickets are and When the text testing happens when we start doing testing so we start designing I'm a designer in the team So I start in this case among many different tools I could have used a marvel in vision in this case. I wanted to experiment. So I used the Omni gruffle and I published the interactive PDFs which may seem solid, but They're very easy to share and they're interactive. So once you downloaded it, you can actually click around exactly as in a browser So the first iteration was just the main activation flow then we start adding Feedback and we get more the whole mapping all the flows for our first milestone And at this point we knew we got enough feedback We knew that the flows were good enough and so we proceeded to the actual visual design Another interesting byproduct of approaching these things in clear milestone and very very highly scoped milestone is That pretty much everything we need to be able to can stay in roughly a single image like this So a blueprint like this one is able both to show the screens pixel perfect But also the flows that happens between the screens And again, we tried more this time I wanted to clarify a few things with a few of the other designers But even more I wanted to make sure that the design was ready to be ported to both iOS and Android It wasn't part of the work here to do that But I wanted to make sure that every single piece I designed for web didn't go against explicitly the platform standards of the the Apple Hig and the Google material design, so I made sure of that just chatting with the experts that are developing in these fields and This leads us to again iteration five Which again got some feedback and you can see already a glimpse of what is going to be next of iOS and Android So we did five iterations What's interesting here is that all of this as you can probably imagine happens only on P2 posts and as I mentioned on slack So each one of these is basically discussion that happened and what's beautiful is that? Each one of the P2s of our teams is visible to everyone else So pretty much everyone in the company if they're interested in it of or if you want to get feedback We are then able to suddenly gather all these insights and In the meantime, of course development was going on we use GitHub now, of course, it's open source So you can pretty much see in the open how we work But internally my team choose to use also Trello as a Kanban board to just set a rhythm week by week of how we work And one interesting tweak we did is that we have the last column done and we create a new column every time We do a new week. So it's very easy to see the past history so on Github again, what's interesting here is that we use Yes, it's a very simple process when we create a PR pull request to do changes in the code It's marked in progress until the development is done. So the developer thinks it's okay I think I did everything I needed I tested it and then it's market and need the view So everyone else and we are the developer in the company could now chime in check the code and make sure that actually follows our standards is good enough and all Everything we wanted to to be aligned is aligned as we wanted And then when it's when it's done the review is done the small changes Maybe have been completed then we're ready to merge it. So again, we just change the tag and we merge it back and Then it gets deployed automatically now The interesting thing about this process is that we also do design in the same way. So Similarly if code get pushed in we are also able to add a design review tag So every designer in the company can chime in into development and check If the implementation of design is correct, which is very useful both for designs that they maybe were Big designs that were prepared before but also for very small tweaks that maybe a developer found the bug Wanted to fix it and the easiest way is just add in then a tag and making sure that the design aligns with our standards again So very simple really, but it's pretty much affected and ensure that everything is reviewed properly At least as long as we remember to tag it The thing that all these tool enable is transparency which is an incredible powerful thing because enables that things that are said once don't need to be Replicated in multiple silos and multiple channels just because someone does doesn't have access But at the same time it means that everyone in the company again can see everything So for example, just picking up one thing the code reviews It doesn't mean that the same team that is working on the feature does the code review as well Can be anyone else in the company? So this allows our knowledge to be shared across teams as much as possible Of course why we were building now We have a phase of testing so we decided that our milestone at some point was feature complete So we started first an internal testing. So we opened up to automatic and we said across all our P2s that We're done. We think we're done at least so please come and if you have some time Test it out. We want to test thoroughly and check that everything works And the interesting thing we activated is called the horizon, which is pretty much the same thing But if you go to our horizon feedback dot WordPress dot com you can actually access The work we are actually doing So we post there when we're developing a new milestone like this one or sometimes we post for features that we think were useful But maybe we want to check with others. So this is really open to everyone to join and give us feedback And so across these two items we gather even more feedback and a few weeks later. We're able to launch What's our first version of the theme showcase and yes, my team uses Neon cats to mark the milestones Now I mean numbers what does it mean One interesting thing about these numbers is that if you think about this kind of size it feature And I knew before checking the numbers that I got good feedback but I was still surprised to see how good that these numbers were because In the my past experience, especially with the agency work It's very uncommon to get this kind of thorough feedback across so many people both internally and externally And just to give you a sizing This is pretty much how long it lasted so four days of meet-up and about 3.5 months of work 3.5 months is a really good length because In my experience and took with others. I found out that in three months. You're able to build pretty much good-sized features But at the same time You're not frustrated for something that is taking too long to be released So in I found out that three months is roughly an ideal measure for for a good milestone in this sense And of course everything needs to be measured Our task here is replacing a core piece of the WordPress.com experience So our goal here wasn't growth or wasn't sales or wasn't anything but was just to keep everything stable So we want to make sure that everything we are changing doesn't impact negatively Everything else in WordPress.com so we just made sure and as you can see just after there is a small deep that's pretty much common after a release because Maybe people are disoriented. They're still figuring their way out, but then it goes back to our stable numbers So just to to go back to the principles one interesting aspect about distributed companies is that they exist on a continuum Now local companies and distributed companies are actually the simplest scenarios Because they're both homogenous. They have the same kind of people working the same kind of environment The real trouble are the companies that are remote So they have one office somewhere and some people are actually distributed Somewhere else because this creates a two-tire environment. So this is a big challenge And it's not surprisingly a sense because when you actually think of it a Lot of the companies that think they're local or a company that grows is actually a company that is becoming remote Because the moment that the company grows beyond a single floor a single office a single city or a single country That company already is a remote company And the problem often is that managers and HR tend to think about the company as it is still a local company And that creates a lot of tension and a lot of difficulty and challenges in growing So if you think about this continuum, then you can start approaching it in a different way and What's interesting these are the six principles we I mentioned today during the talk is that none of this is really Ground-breaking none of this is actually unique of distributed companies However, some of these like communication is oxygen clear communication spaces are way more relevant For the way distributed companies are set up and in general if you think really about this It just means that these are principle for doing good business having a good company that works properly and I usually like to close with a quote for a great Italian designer to invite everyone of you to simplify As much as possible and here what that's what I wanted to say. Thank you very much