Hello, everyone. I actually didn't expect that there will be lots of you here for this kind of session. We, together with Alexander, we are going to show you some theory about the deployment procedures, and another helpful presentation is about the practice. So we start with the theory, and then some practice. If, at some point, you don't understand what we are saying, just raise your hand and say, I don't understand, and we'll try to help you. So let me introduce myself. My name is Alex Eikashenko, and I'm working in IDEX. Since quite a long time, I'm managing projects, doing some technical consultancy, lots of stuff. I was a developer before. Now I moved more to project management. And as the second speaker here is Alexander. He's our technical team lead, doing a lot of DevOps for us, leading Drupal teams, have quite a lot of experience in complicated, complex projects. And just before we start, what we are showing you is the actual thing we are using for our biggest clients. This is not just it's work, it works. So you know what software delivery, right? So everyone delivers at some point, some software. It could be a website, it could be anything. Most of the time, there are four steps. You have build phase, where your coders are working on it, and then they do some magic, and the website is working. But in order to deploy it, there is another step. So you have to deploy it, then you have to test it and release. All, you cannot avoid these steps. This is like a basic stuff. So whenever you build something, you have to deploy it somewhere, someone has to test it, and it's going to be released at some point. Here is the thing. Other people think that spending a lot of time on this DevOps stuff, on the standard builds, they think that's a waste of time. And in the beginning, it's probably a waste of time if you are doing a small project. There is no need of spending lots of infrastructure and money on doing that. But in the long term, this will really help you. And this will help you standardize the process in your company. The anti-patterns of the deployment, the software release, are manual deploys. That's awful. When you need to do a manual deploy, all the time it can be a human error. It can be anything. It will not work. You don't know what to do with that. There are no logs. You don't know how to repeat it properly. That's a big problem. When you are releasing your software and you have a long release cycle, that's a big problem also. Because it will create a lot of issues. You will have regressions. You will have lots of various stuff which will create problems for you and for the business. Because in the end, you're delivering for the business.  This is something that everyone is doing all the time. And you start the project and you start doing that. You are wasting time on that. This is what's happening.  You don't know what to do. You're stucked. That's a big problem for you. You can be a best developer in the world. But you have no idea how to deploy what you actually did. Friday deployments. Everyone knows what's that. All the clients say, OK, I want to deploy on Friday night because there will be less people on the website. You should never do that. And this is what the team thinks when there is only one guy responsible for the deployment. This is for them, that's the hell on the earth. We need to test and test it again. And we cannot repeat it normally because each time it's different, the deployment. What we think the deployment release process should be? It must be frequent. So it means that you should be able to release your product faster. And you can do it every day, every hour. It depends on your skills. It must be automated. So everyone can do that in there. So you don't have to wait for someone. You don't have to get a specific guy, the only one guy in the company, knowing how the projects are deployed. I saw lots of examples like that. Small company, lots of good developers. And the only one guy, an architecture guy, who knows how to deploy stuff. And everyone else is just helpless. So that's why we think this should be automated. The deployment process, the release process, should be repeatable easily. It should be very predictable when you are releasing software. On all the steps of the release, you should know what's happening. Of course, the risk must be low. At some point, you will probably even end with deployment on Fridays. Because you know the process is working. It's probably business, which will block that. But you will be able to do it. It must be cheap, of course. You should not spend a lot of money on the deployment. This is something that will be very transparent for you. Your developers should not really understand what's happening. But they know that whenever they do something, it can be easily deployed. It must be fast, of course. Because otherwise, there is no sense. And as I said, it must be also predictable. Yeah, so again, this is like the main principles of the delivery. So it must be repeatable and reliable. It must be automated. So you cannot automate everything, of course. At some point, you will have to have one guy who say, OK, I want to deploy something. But this is the only process he should have. I have a button, and I click Deploy, and everything happens. There is no need of someone else to do anything. That can be a business guy who just arrived and say, I got a notification from my developer that the product is ready. So I click Deploy, and it's just go there. When we say done, for us, the definition of done is the project is released. It can be anything, but the main point, it's released. So everyone has access to it. Business is happy. And eventually, everyone is happy. And the main thing is that everyone is now responsible. It means that each one in the team, and you will see an example in the end, should be able to see what's happening when deployment is going. Each one in the team, the QA guy who check in the website, the developer, they all should understand and see that everything is transparent. And when I deliver something, this is what happens. And it's automated. So I can see the errors. I can see all the problems that happen. So some theory. I'm quite sure that most of you know the terminology. But let's start from that. The continuous integration, what's that? It's just the practice of continuously integrating code from different developers into the main line. So we have seven developers working on one project. And they are continuously changing stuff, and merging it in the main branch, let's say, several times a day. Continuous delivery. Lots of people are confused with different terminology. The delivery is the strategy that enables your organization to deliver new features to users as fast as possible. It means that you are delivering all the time. Every time you deliver small features, small task in red mind, or whatever you're using, you know that this is deployed. You can go and test the stuff. And your development environment is always stable. That's the main point. Lots of issues are there because of that. So developer environment are always broken. Something is wrong. You cannot test. You have to create another environment just to test your code. That's the best of time. So what we think for the continuous delivery is that every successful build on your master branch should be reusable. When you put something in your master branch, this is a stable code. It means that you can deploy it at the end. And we test the code. So it means that we are only merging branches with features only when it's tested. And the third terminology that we are going to use is continuous deployment. So this is like a next step of continuous delivery. Continuous delivery is just a continuous delivery of something to production. And we can actually automate that. So you can set up your process in the way that when something goes to the production, it's delivered. The automated tests are passed. You can deliver it automatically, like, for example, Drupal update. There is a new Drupal update. The system detects that there is a new version of security patches. It happens automatically. It gets merged to your main branch and deployed. This is totally possible. So now to the subject. So what's the pipeline? That's a way to break up your different builds in the various stages. You know that, right? When you develop the website and deploy the website, you have most of the time. You're changing some code. You need to launch some drash comments in the end, like drash update features or synchronization import from Drupal 8. We are doing this all the time. So that must be automated. So what's the goal? It gives you a nice overview of what's happening. And each developer knows exactly what's happening. So you will see the example. There are lots of nice integrations with the GitLab Jenkins. So the guy, when the guy is committing the code, in his feature request, he have a full process of what's happening. You know, he knows that the code is deployed. He knows that his drash comments are launched. He knows the output of the comments. He knows everything. So he see directly the impact. It quickly gives you feedback. It means that at some point you have a long list of drash comments to run when your site is deployed. And you don't know what's happening. But with the pipelines, you can see directly the output. And you can even stop it and restart again. Because that's one of the goals of the pipelines, that each stage of the deployment can be repeatable. And it is resilient to restart. And you can just restart if you want. So the pipelines are the enabled team to deploy and release any version of the software to any environment. It means that that's up to the developer to decide. He knows better what he's doing. That's not the deployment guy who knows as the developer. He must decide. And if he wants, in the end, he will just be able to create an environment only for his feature, for his branch. So why we need pipelines? Any changes on production can create problems. Hopefully, your code is covered by tests.  And they are launched all the time. You're updating the code. And the main point is that it basically enables the collaboration of different groups working on the project. Because you have probably different teams, the QA team, the development team, the CIS admins team. And CIS admins are doing nothing in this end now. Because everything is automated. It's up to the developer, to the team to decide what's happening. And you need to have a visibility. You don't need to just press the button and wait for something to happen. And if something is broken, you cannot see it. With the pipelines, you will see the visibility. So what's pipelines in Jenkins? That's quite a new approach. It was released recently. You can actually set up, break up one job on Jenkins to different stages and visually see what's happening. So it's called the plug-in called pipelines. So you should not confront that with the Aquia pipeline stuff. This is the actual Jenkins plug-in. It's based on the DSL, the specific DSL to describe your pipeline. This is what I'm going to show you next slide. It's very simple. So you don't have to really understand what's behind that. But just you can safely say what I need to do in what way and what are the steps to deploy my website. So the DSL is based on Groovy. So that's why we say that you should probably know more than just Drupal to understand what's happening. Because you need to understand some Groovy. The documentation is fine. So you will see what's happening. But still, the pipeline can survive restarts. That's very nice. Something, something's broken. You restarted. You restarted the job. And it will restart from this stage. Not from the beginning. You can wait. You can even ask your client all the time when you deliver something. And the client says, stop. There is a problem. There is a business issue. And you can stop and wait. That just works just fine. And it can restart, as I said. But the problem is that it's in the on-debate Jenkins version. So you can restart from save checkpoints. It means that your deployment process stopped at some point. And you can restart it again. And it will start only from that checkpoint. That's very important. Because sometimes, your deployment process is long. You're probably importing something, like a huge file during the deployment. And if you have a big Drupal 7 website with lots of features, the feature is where it takes ages. So you can restart it. And it's visualized. That's one of the main points, in fact. Everyone can see what's happening and when. And what's the output, if there are any errors. So the anatomy of the pipelines. You have a step, which is a single task. For the part of the sequence, you will see the example. Then there is a node, which contains multiple steps inside. And there is a stage. And the stage is where you define your steps. So here is the example. This is the pipeline code in the DSL. That's what they call this. That's what they say for the DSL. You have a stage hello. You have a stage build. And you can launch some comments. So echo, hello, DrupalCon. This one is just a step. And the pipeline log. This is exactly what you see when something is going well or wrong. That's it depends. So the pipeline in Jenkins can be in the Jenkins file. So it means that you can actually version it. And there is no need for you to just point and click all the time in Jenkins to create multiple jobs. It will just happen, because it's already described in the Jenkins file. And you can basically create a multi-branch pipeline, which means that you have probably different environments. You probably want to deploy some features to another environment. And you can just multi-branch it. So now to Drupal, because we are on DrupalCon. You know that now the best practice here for Drupal8 is the Composer workflow. Because it's easy to apply patches. You don't need to commit third-party code, which is vendor code in the source control. And it's very easy to manage dependencies. So this is the way now in Drupal8. So what are the requirements?  There is no sense of it. You can get it elsewhere. Why should you commit it to your code? You must focus on your code. There is no need to get some package from somewhere. You never run ComposerUpdate on production, because this will create an issue. You will have different code in different environments. ComposerUpdate, at some point, will update the library. And in the end, it will not work. And the same. You should not run ComposerInstall in Pro. Some people will say, why? It fails sometimes. You have timeouts, different issues. And you need to test the code. It means that you cannot just deploy the result of ComposerInstall, because before that, you have to test it. And it can take a long time. Everyone knows that ComposerInstall, for the large projects, takes time. So now there are some hacks you can parallelize to getting lab libraries. But still, it's still slow. So what's the problem with the ComposerUpdate? There are always problems. So how to do that? How to deliver the code to production without committing this vendor code? Everyone has different approaches. The clients have different hostings. If you're working with Acquia, for example, or responding, your target is the Git repository, where you push your code. So you have to push your vendor director inside, in the end, because it's the only way to deliver the actual code to the production via Git. You cannot launch ComposerInstall in Acquia. So what are the solutions?  It means that some intermediate procedure gets the code, builds the website, and then push it to any target. But it will not work for Acquia, for example, because you have to deliver through Git repo. And the second option, this is actually one option, Forced, not Forced, but recommended by Moshe Weisman, he said that if you want to do it with Acquia or with any other hosting company which use Git to deliver the code, you can create a system, the continuous integration system, with your own repositories. And you push your code in these repositories, some processing Jenkins gets, see that there is an update, and run ComposerInstall, manage package the code, and push it to the target environment. This is the option we will show you today. So let's stop with the theory. Here are the tools we are using right now. Composer, of course, the Dockman, this one is one of the IDEAX development tools which is open source, you can find it on IDEAX GitHub. This is actually developed by Alexander. So if you have any questions, you can ask him directly what's happening there. We have a DrewFlow, it's, again, another custom in-house development stuff which is open sourced, you can take it and use it if you want. That's about deployment procedures, Drupal procedures, of course, Drash, you cannot live with that.  It works quite well for us. So this is what we are trying to see, to use it all the time. So you can imagine that one of the steps, one of the stages in the pipeline is the Behath tests that are running. And you decide what to do with them. On our end, we are not blocking the deployment procedure because we do not have whole coverage of all the features. But you can set up your system to say, if there is any test which is not passing, no deployment happens. And the pipeline will wait, or even stop. So the pipeline, this is a plugin for Jenkins. And we have pipeline libraries to make it dry. Dry means don't repeat yourself. Because if you will try to set up just the pipelines in Jenkins, you will see that at some point, you will repeat yourself. You will say, my development environment, I'm running Drash commands. And they're always the same for development, staging, production environment, any other environment. And with just the pipelines, you will have to repeat this code. And if you want to change that, you will need to change it everywhere. So we have libraries that helps us to, and they're also available in GitHub to make it dry. So we will never repeat ourselves. And in the pipelines, you will only say, for the staging environment, I want to launch Drash commands. And this is only place where we will change it. So now, I think we can switch to Alexander and he will explain better. And with the details and show some small demo about what's actually happening. Thank you. Hello everybody. My name is Alexander Tolstikov. I'm working as team lead in Ajax for quite a long time. I see so many different approaches to do deploys for these years. Even on some project, I saw how the developer that was responsible for deployment, he did a database div with the production. He checked the structure, he exported structure of each database and then just div this. And then they applied some procedure to apply database structure differences to the production database. It was real mess. And then I was switched instead of him. And I just was very unhappy because each time it was like hell. It was for Drupal 6. And then I started wondering how we can do it better. And this time the Drupal 7 appeared and it had very good modular features. And with features you could put every configuration you have on your site into the code. And if you respect this process, you can always be sure that you don't need to do some manual click and point in the Drupal back office. I mean admin interface because you have everything in the code. And if you respect this process, you have no issues and you can do your deployments without problems. But as long as we started using this approach, I saw much that many guys developers was unhappy with this approach. They used to do some deploy and then go to the production and do some point and clicking to make sure they changes were applied and create some variables, probably change some views, et cetera. It was not okay for me. And I started to, I tried to make sure that everything is using features. And to use features well, you should make sure the features are always in default state if you know what I'm talking about. Okay, let's return to our pipelines and Jenkins. I wanted to show you some real life example which we are using some form on several projects. We have quite big projects with lots of sub-brandings and lots of Drupal sites and it's probably hundreds of sites that should be automated. All the processes should be automated for them. The essential tools that we are used is Composer. Like I already said about issues that Composer can't have with deployment. We have a document. Document is a tool that allows us to show the next slide to give it one or more source repo and give it some config and then he do his job and on output you have target result in the target repo. That's what's about that Alexey said, you don't commit your vendor code into the repository but document builds your repository and he sees that you need to run Composer update or Composer install and the document puts all the code and pushes into the target repo and you can deploy target repo on Acre for example or any other hosting provider. I'll return back. Next tool we use is named Drupal. It's about Drupal flow, Drupal workflow. This tool knows how to deal with Drupal. It knows how to deal with Drash. It knows how to deal with Acre cloud integrations. So you can do for example, copy sites copy from one environment to another or even between different doc groups on Acre or something else. So it's everything about Drupal. Of course we use Drash. But to use Drash efficiently, we need to use Drash analysis. So we can easily access any environment and any site or multi-site that we have on any of our environment. So we had created some tool. I didn't want to push it here because it's too much tools but we have some tool and if anybody interesting, I can show it after my session because it's very interesting and I'm really proud of it. So just remember it. It's one of its goals to create Drash analysis automatically. So you don't need to create it for every site and every project you have. Of course we use Behat. We use Pipeline and Pipeline libraries. Alexey already described all that. So Docman, you can see the address for the project. It's open-sourced. I've used it about two years now. It's works good. For you, it can be just a black box. You don't need to know what is inside. You just give it proper config and forget about it. Just do it, Drupal 4 already described you. Knows how to do Drupal, call it AP. It knows how to work with multi-site because for example on Acquia you can use multi-site but you don't have everything and you don't have each tool to deal with multi-site properly on Acquia. For example, you can't copy files from one multi-site to another multi-site or another environment. You can only take all the files from for the old multi-sites and in one big bunch and move every multi-sites files. So, but Drupal knows how to deal with this situation. Also it can create databases on Acquia interface and that create aliases, domain names automatically. So if you have some project with hundreds of subsites, you don't need to do minor configuration in Acquia interface. You can do it automatically based on your multi-site directory structure. Also it can do Drupal updates, automatic Drupal updates. So the client just received notification when Drupal update arrived and it possible to update. He just hits a button, deploying to def update deployed. He received notification that update was deployed. It was tested. Client can test it by himself. Make sure that everything is working and then just hit the next button, deploy to stage and deploy to production. That's all. He doesn't need to go and get and make some desks what was changed, what was not changed. It's all done automatically. Also it can do Capistrana deploys. If you want to extend it, have a pluggable structure. So if you need some specific types of deploy, you can just add it. FTP deploys, SSH deploys, name it and you can create a plugin that will do this job. This software is groovy based like Jenkins pipeline. So you don't need to learn new language for each task. You can just invest some time for your operations team to know some groovy. That will be enough to use it. You don't need to be expert in groovy for this. And when we developed this software, we tried to respect some known principles from SOLID. And just two first principles is a single responsibility principle. So as I can describe it in simple way, it's just do one thing and do it well. Don't try to do many things in one class, in one part of code. Just do one thing and do it well. And if you need to change some functionality, you need to change it in only one place. You don't need to change it in several parts of your code. And open-closing principle. It means that your class or your part of code should be closed for modification, but it should be opened for extension. So if you need to do some changes, you can easily extend this part and just do the changes you want. So let's talk about a sample of workflow that we want to show you for this session. It's quite usual process that you do during your delivery process.  Then, for example, an example of GitLab. GitLab webhook triggers Jenkins pipeline execution. And I want to see several stages during pipeline execution. Stages, as Alex said already, explained to you before it's just a way to break up steps of your pipeline. So I want to have a need, config stages. Then I want to build. So my one repository or necessarily repositories will build. Composer update will run. Composer install, sorry. Composer install will run. And then he will build your code with vendor code and create some take in the Git repository. After that, you can prepare your stage. What I mean, go prepare. You want to test your code before it gets to production and to test it, you need to make sure that everything is like on production on this environment. So in prepare stage, I want to do a copy of database from production to the staging. So make sure that everything is the same. Next step will be stage deploy. So code will actually be deployed on the staging. And then I want to test it. If everything is okay, I want to do some preparations for the product. On product, I want to backup my database. So in case of some failure, I can do a rollback. So I didn't do anything and the whole process will take as less time as possible in case of any issues. After that, I can do a product deploy, do a product testing and then finalize. It make, I mean, for finalizing, it makes some reports about test coverage, et cetera, et cetera, et cetera. And then it just gives some feedback to GitLab. So let's check how this sample pipeline can look like. Oh, something with the resolutions, but okay. I hope everyone can see this font. It's not small for you. It's okay? Okay. So we have several steps. A note step that note step just gives us some workspace and some executor from Jenkins, from master Jenkins instance or some slave Jenkins instance. Stage config, I will not show you anything because it's too much to show. Stage build, I skip some code too. And then we go. We see that we have different tools used here like dogman, like Druflo, Druflo again, Bihad, Bihad again, Druflo, Druflo, et cetera. Definitely we have some issues with this sample pipeline. What's of almost the same code? It's not okay. It's not dry. Everybody knows dry. Don't repeat yourself. If you do some copy pasting of code, you're doing it wrong because you never should do the copy pasting of your code. So it's an issue. If I need to change, for example, how I call my Bihad testing, I need to change it at least four times in the one small pipeline. And if this pipeline will be big, or if I have 100 pipelines, I need to change it 100 times. It's not okay. Logic is complicated. For example, Drupal developer will, even experienced Drupal developer, will see this code and he will say, oh, I can't change anything because I don't understand how it works. Just not possible to guy just came, see this code and say, oh, I can change it easily. It will not work. And you can end with many jobs doing the same job differently. I mean, if you have hundreds of pipelines, you can do some change in one pipeline and other changes in another pipeline.  And it becomes very hard to support because you don't know what you changed already, what you don't change. So you have issues. And you don't have any common strategy for handling standard things. For example, email notifications or how you discard your buildings or loc rotating, et cetera. So it has more issues, but this is the main issues. I don't know how to support, I already said that. So how to fix these issues? As Alexey already mentioned, we can use some library. So some common place where we can put a shared code and move out complexity from the deploy pipelines to this library and they just allow us to configure the pipeline. And just provide some glue code in pipeline that can use some stages that we have without any complexity. So development guys don't need to know the complexity. They just don't take some bricks and build a small wall with these bricks. And they don't need to build these bricks. Again, single responsibility. I already talked about it. Everything that we put in the library respects the single responsibility principle. So if this part of code should know how to deal with BCHAT, it do only this. And we wrote additional DSL domain specific language just to make sure that it is specific for Drupal. So we don't need to create some complex things because it's already moved into the library. There are several ways to bring libraries to the Jenkins. And in the last couple of weeks, the pipeline plugin was updated and using of libraries becomes very easy and much better than it was previously because previously you have only one way to push your library to the Jenkins. It's through the inner Jenkins Git server. So you just need it to make sure you have access to this Git server and set up it on your machine and then you just need to push your code into the Jenkins directly. It was not a very good approach, but now it's changed. So you can use external libraries and just pick up what library you need. You can have many libraries. So you can build it according to your needs for your project or for your shop. So it's a good news because it was an issue. And also again, it keep everything. Yeah, sorry. So you can check the code or use it as this. Okay, after we fix these issues, we have final pipeline for our session. As you can see, it's much more clear. Now you don't have any code, you only have configuration here. So this is the stage name and this is the action. Action divided into parts. Class name and the method name. It's very easy. So I want to do action document config. I just add the action into my pipeline. For example, when I want to use some command from Druflo, I added action, copy site from environment test to dev and give a parameter database name. And for every stage, we have some actions and I don't need to repeat the code that only repeats some configuration and change the parameters when I need it. So if we compare what we had, what we have now, you can clearly see that we have much more clear pipeline now without any complexity here. I think I will skip this one because I already talked about it. So what we have else? We have a job DSL plugin. Why we need this? The main goal to have the job DSL plugin is to create all the pipelines automatically. It just allows us to create any Jenkins jobs, including pipelines based on the code and configuration. So I don't need to click in the Jenkins. Again, it's a domain-specific language and this job DSL plugin is not developed by us. It's Jenkins plugin, the Jenkins community do it. It's groovy based, of course. Configuration is a code. Every pipeline create automatically and create from the code. And I think I will explain this slide. This is about to create every pipeline we have for many projects, for many sites from the one mothership config. Mothership config is just a list of projects with some links to their config wrappers. And the mothership pipeline takes this configuration and creates many Jenkins pipelines based on it. This was explained on this slide. Okay, everybody, probably everybody, knows how classic Jenkins interface looks because it was not changed for 10 years. And on the left side, it's some changes that came with the workflow or as we now know is S pipeline plugin. And there is initiative called Blue Ocean that aims to create new interface, new user interface, new modern user interface for the Jenkins where you can visualize your pipelines easily. It's on the right side. As you can see, it looks pretty good, but it's still a bit and not very stable, but you can use it in the read-only mode. So in the read-only mode, it works just okay. Some of the examples of this jobs on this plugin. We already also have a GitHub integration now. So developers don't need to have access to Jenkins to see the status of the builds. As you can see on the left side, there is a status of each commit, running, paste, failed, et cetera. And if we go into commit, we can see the stages. That the same stages that we had in our pipeline, you can see this in your GitHub, the same stages and status for each stage. Also, this is some example of AquaCult integration. When you, for example, want to copy a site, you have it in your pipeline and it calls through the AquaCult API to do a job. And I want to show you some action finally. Okay. First of all, I want to show you what we have on Aqua. I will show it on my free account so I don't have any production environment here because it's free. But for this session, I will say the stage is our product and the dev is our stage, okay? And as we have no development environment, I will show you only the final stage of the deployment delivery. This is a release stage, release part of deployment. So this is when we have our feature branch and we have it tested and now we pushed it into our master branch and we now consider it as stable. So I want to make a stable bump. For this I will use a document but you can use anything you use usually. So I just launch bump stable command that creates new stable tech in the Git repository and I just will check what happens on the Jenkins side. I will show you this with the Blue Ocean plugin. So it's more great than the classic Jenkins interface. As you can see, the build already started and now the build stage is in progress. I think I could make it a lot of bigger. You can see the current processes here. And for example, while it's in process, I can show how it looks in the classic Jenkins interface. The same thing, just another interface. It's a classic. You can check other jobs if we need to. That's all the jobs we have now for the example session. Let's go back. Probably I can answer some questions now while we're still waiting for the pipeline to finish. I think it's a good time for you to ask some questions. What else do you need? Sorry, I didn't understand you. Let me try to answer. We are, it's a feature that we are always launching them. We are usually clearing caches, running tests, doing backups of the production environment when needed. Launching some imports depends on the website. What we are also doing. I think that's pretty much sums up what's happening. It depends, of course, on your project. If you have like us, like central repository of the configuration for different websites, you are launching, for example, you have six websites based on the same code in the multi-site environment, and you want to launch every, the same command on six websites. So this is what you're doing in the building process. When the project is built, you are automatically launching the commands for all the websites in the end. So this is how it works. So, we are shifting to another stages and the stage deploy already was done and we copied the database we can check in Acquire. I hope I'm not walking, walked out. Yes, sure, I walked out. Thanks, no problem. As you can see, it's now deploying code on the stage. We came to the good time because it's already finished. Now it's pro-deploy stage. As I already said, the blue ocean is still in beta. So I think it's this stage already finished but it's not updated in here. So I'll switch back to the classic Jenkins interface and check it here. Yeah, it's already start to do pro-smoke testing. Okay, let's wait for it to be finished and I explain the stages. After each deploy, I want to be sure that the deploy was okay. And I first run the smoke test at this essential test that shows if something was wrong or like site is not open and the toilet, et cetera. And I have some simple tests for this session just to make sure we can do the failed build. Yep. It's a real depends on the project. We have some main smoke testing like home page is working or not. This can work for every project and we for sure need to put some tests for each project that will be specific.  You want to be sure that there are like no smoke when you deploy something, the website is still working. So it depends on your business requirements in there. You will probably have something which is running anything and you must check that only this is working because this is business critical stuff. Sometimes even showing home page is not that important because you must be sure that internals are working. So this is very basic smoke test. And then we have acceptance test. They are huge, normally. For example, for stage smoking testing, open this stage. And I can see that I just checked for the Drupal cone. Text will be on the web page. And I just go to the web page and check it. So we have this. So we have the test that makes sure that we have this text on the website. And now I'm going to change something and make sure that this test will be changed. I've committed and do another bump. While it's in progress, I return to the pipeline stages and explain a bit more. So when we did our smoke testing, we then do some stage. It just, acceptance testing is just another test. Then we do prod prepare and prod prepare can check the comment that asked Acquia to create a database backup for us before we do deploy. And on deploy stage, we can see how code was deployed to the production, in our case, production environment. And then we just deploy. We'll do some smoke testing and acceptance testing. Let's check the next. Yep. Yeah, we can do it automatically. Yeah, we can check the last good version of code deployed on the production, for example. And if we had some problems or failed tests, we can do the rollback automatically. Yeah, we can do it for sure. Some other questions, yeah? Evaluate it, GitLab CI as an alternative to Jenkins now that it has pipelines and you don't need the Ruby part because it's all in YAML. So I check the GitLab CI, but it's, it don't have enough features for us to use it on complex projects. And, but the Jenkins pipeline with GitLab plugin works in the GitLab CI simulation mode. That's why we can have our feedback in GitLab. So it's not an issue because it do the same job. It gives the same feedback in GitLab. I was just asking because in the talk about GitLab CI, the demo is exactly what I see here is basically a YAML file that calls on command line scripts, captured the output, and then depending on what happens, proceed with different stages down the pipeline. And it can do, basically can do tons, but it can't call on command line functions which you're doing basically here and which is the way you should be doing stuff, I guess. Have you, if, I don't know, if there's something specific that you feel is missing from GitLab CI that would be a showstopper? Yeah, it, it, it's groovy. That's actually... Yeah, it's a joke. Yeah, we just, I don't remember for sure which functionality we missed in the GitLab CI, but you're absolutely right. If it's, that's enough for you, you can totally differently use it. It's actually quite, it's actually quite hard to follow the process, to follow the development of GitLab and all these tools because I think they're developing, there is a risk each month with tons of features. And each time you have to just go and check what are the changes, when we started doing the system, just didn't exist the CI in the GitLab. And now we see that it's becoming more and more major. So at some point we'll probably, as you said, move back to the CI because we already have that there is no need to another entity to manage all this because as you said, it's the same. Yeah, now we see our build, our pipeline was failed because we changed the text that should be shown on the homepage. So it's no more here. So we had a broken build, so we didn't know any deployment on the production. So, and if we change it on the next stage where the pro smoking testing is executing, we just ended with the failed production if we have no automatic rollback. Any other questions? Okay, so we can wrap up then. Thank you guys. Any questions? Something's coming in your mind. Yeah. Just go see us. We are still around.


Good morning. My name is Kit Hayes. This is a panel about measuring impact in the sharing economy. I am campaign director at an organization called peers.org. Peers exist to advocate on behalf of the people that work in the sharing economy. I'm going to just explain what we mean by sharing economy and why measuring impact matters, and then I'll introduce our amazing panelists. So those that may not be as familiar, the sharing economy is this large sort of economic eruption that's happened that allows people to exchange assets with one another really easily. So I could lend Dan a hammer if I had one right now. I could rent Katie my apartment when she comes to visit New York, or I could share my car on my way to work in the morning using platforms like Lyft or that sort of thing. So it's created a bunch of the economic opportunity. It decentralizes wealth and power. It makes us use resources more efficiently. Or so we think I think is what the point of this panel is we're going to talk about how we're actually measuring the impact that the sharing economy is having on our communities on society on our environment and in our economy. So I want to introduce our panelists. This is Dan Rosen. He is CEO and founder of Mosaic. Mosaic is the first online marketplace to offer solar investments. So that means that I could lend my neighbor money to put solar panels on the roof. I get a return and they get solar panels for less money than they would have otherwise, which is amazing. He's an unreasonable Institute fellow was recognized as 30 under 30 and energy by Forbes magazine. He's a Brower Youth Award winner and as a serial entrepreneur with 10 years of experience leading clean energy projects. Anita Roth is sitting in the middle there. She's a city planner and is Airbnb's head of policy research. She basically works to quantify the impact that Airbnb is having in cities around the world, which must be an incredibly interesting and exciting job right now. Before joining Airbnb, Anita was a senior economist at a planning and engineering consulting firm and she had the foresight to study or been planning in both her bachelor and master degree studies. Katie Hunt Moore manages the values and impact team at Etsy. She works on improving the company's ecological footprint and finds ways to engage their community more innovatively and she ensures that Etsy's company values are part of everything they do. Katie actually has my favorite career path that got her to her job because it just makes so much sense. She was at Reuters Media in Australia before joining Etsy. She chaired the Pacific for women at Thompson's Reuters. She helped found both the Council on CSR and on diversity at Reuters. She's won the United Way Women in Philanthropy Award and the Dumbo does an award among lots of other awards. Katie's really excelled at winning awards in all sorts of things related to impact, which makes it perfect that she's in the world she's in. So, before I dive in, I'll just go over how we're going to lay this out. The first things we're going to talk about are how Etsy, Airbnb and Mosaic are measuring impact inside their organizations. We'll talk about that for a bit and then I'd like to invite the audience to ask questions if you have any and then we'll pivot to talk about what impact is actually possible in the sharing economy. So, I want to start with and jump in however you'd like. How are you guys measuring impact at your companies and what sort of prompted you to do that? So, we have sort of two sets of impact. We have our internal corporate practices and then we have our external impact on the greater economy and our sellers who all have small businesses. So, internally we measure all kinds of things about employees and part of my job is to quantify everything that we do in terms of values. So, obviously our carbon footprint, which is pretty standard, but we also developed a happiness index that was modeled after the country of Bhutan's happiness index. And we look at the University of Pennsylvania School of Positive Psychology to sort of model how happy and engaged our employees are in an ecosystem-style relationship set. So, how they're relating to one another, how they're relating to the company as a whole and how they're feeling individually outside of work. And then on the external side, our economic impact is pretty significant. So, we have a million sellers on our site, 18% of which sole income comes from Etsy, so it's 180,000 jobs that have been created. We had $1.35 billion in sales last year, so that's not profit to Etsy, that's profit to our sellers. So, we look at both types of impact and the hope is that we can connect the two. So, the things that we're doing internally in terms of environment and sort of engagement and work and happiness can be projected to our external community of buyers and sellers. Great. At Airbnb, so Airbnb started about six years ago. And ever since it started, we've been hearing tons of stories from people about, you know, the way that it's affecting their life, the way that this additional income is really providing a buffer, a financial buffer for their everyday. And as we go through and we've been meeting with people and staying with people, you hear a lot of these stories. But at the beginning, there wasn't really a way to really quantify these stories. It was a lot of qualitative, great information and great data, but we didn't have a good way to kind of wrap our hands around these and put numbers to this. So, I would say about two years ago, we started with our first economic impact study. And we looked, I think our first one was San Francisco, actually. We looked at San Francisco and said, you know, we've been hearing all these great stories. Let's put numbers to this. What does our economic impact in one city look like? What are people earning? What are they doing with that money? How are guests coming to San Francisco and spending money? Do they have very similar spending patterns as, you know, traditional guests and visitors that come? How do they compare? What should we be knowing about how Airbnb is affecting San Francisco and how Airbnb community is engaging with San Francisco? So, that first impact study really kicked us off into now. I think we've done 14 to 15 cities around the world to really think about, you know, how are we affecting cities? Clearly, every time a business or community becomes engaged, there's an impact. There can be both positive and negative. And I think it's been clear to us from the beginning that it's our responsibility to understand what that impact is. And our impact studies are really one of the first ways that we started in starting to quantify that. As we've grown and evolved, what started as just economic impact, the more stories we hear, we've understood that our impact really extends far beyond traditional and economic metrics. And so, we've started to expand our world of measurement and analysis beyond economic. And we're looking now at environmental impacts and social impacts and other things that are equally valuable and important, but can sometimes be a bit harder to measure. So, that's sort of where we started and where we're where we are right now in our impact evaluation. Great. So, at Mosaic, Mosaics and people probably know Airbnb and Etsy very well. Mosaic's more in the startup phase of our existence, but we're growing very fast right now. But for those who don't know, we're an online marketplace that connects people who want to go solar with people who want to invest in institutions that want to invest in solar. And so, you can get a loan, buy a solar system and save money from day one. And people can invest in that and earn a return on their investment. And so, what this is about from a vision perspective and a mission perspective is really fundamentally shifting how energy is financed and how investments are made. And we want to move the world to 100% clean energy that is foreign by the people is what our vision statement is. And so, in the last energy economy, you had huge companies controlling the vast amounts of the world's energy. And the new energy economy where it's going to be on rooftops and on parking lots and however the distributed generation economy works, we want that to be the prosperity to be shared by the people, by people, everyday people, not just huge corporations. And so, we want to democratize that. And so, the way we measure impact at Mosaic, even though we're very much, you know, since we were young people, very much focused on climate and these huge challenges that we face in climate and energy, we're very focused on how many people can we touch in the clean energy economy. And very specifically, not just touch in terms of people who are connected to our website, but people profiting and saving money. We want people to financially benefit from this inevitable transition to clean energy. And so, we measure investors, how many investors there are on the platform. We measure how many borrowers are on the platform. We measure how many people are making money through solar on the platform. And we try, that's the external sort of metrics. And that's every day we ring a bell every time someone takes out a loan when through the marketplace. Those are things that we kind of galvanize the company around.  But really, our major focus and thrust as a company is really getting as many people, our mission is by the end of 2016, a million people will be profiting and saving money, financially benefiting from clean energy. And so, that's a lot of what our measurements are around. Yeah, that's great. And what's so interesting, I think, is that what you're measuring is actually intrinsically linked to your success as a company, which I think probably makes it easier for you perhaps to prioritize measuring. But I'm curious what this sort of motivation was to start measuring your impact at Xeon Airbnb. It'd be easy to measure how much money you're making or how quickly you're scaling, which are the things that we traditionally measure in business. But what were the conversations like when someone started to think, oh, maybe we should measure the impact that our companies are having on society, and how did it become a priority? Go ahead. I think for us, people often think of Airbnb as one of these startup and tech companies. And there are companies that are very digital and there's not a lot of human connection. But Airbnb, and I think the entire sharing economy suite of companies, are this new breed of company that really has come out of the cloud and into the ground. And we more than I think most tech companies have both a very strong relationship and an obligation to the communities and cities that we are in and that we operate in. And so the impetus and the desire to understand how we're engaging with cities, how we're engaging with residents and guests and what that interaction looks like and what the impacts of those are, I think has been from the very beginning very important to us. You know, we hear a lot of really great stories and we hear a lot of criticisms and it's important for us internally to take those seriously and to evaluate those and to put numbers to them. I'm a city planner. Whenever I tell people that I work at Airbnb, they're usually a little surprised that, like, what would I be doing at Airbnb and why would Airbnb hire a city planner? I think I'm actually, I'm now the second city planner on staff. So there's, the company I think has long understood that we have a very clear relationship and impact on cities and the better we can understand that, the better we can, the more we can improve both our product and our service and form our community and sort of enhance and improve the entire overall offering. So I think that was a large part of the motivation for us. And has there been anything sort of surprising or maybe even startling that you've realized since you started measuring the impact that Airbnb is having? For us, I would say, so I've been with Airbnb since January and the impact studies that we've done before January and then since then, I think the surprising thing to me has always been in the cities that we've done them. New York, Paris, San Francisco, Barcelona, Sydney, Portland, Montreal, L.A. Gosh, I know I'm missing a ton. But the, it's sometimes you have to double check your data because it feels like you've maybe taken data from an old city but the impacts time and time again people are saying the same and same thing, like the same things over and over regardless of where they are, regardless of what kind of housing market they're in or what kind of employment market they're in, the way they're using the money, the things they're doing with it, the way guests are coming and spending and engaging with the city are very consistent across cities. And that to me is always very interesting that there's clearly, the community has really, there's something about the community that is very consistent globally. Interesting, interesting. And yeah, what about Etsy? How did you guys start to make measuring impact a priority? So we were founded by an artist in a loft, totally. And I think as a very small company, it was really easy to just have Etsy-ness kind of in your gut. People on staff behaved in a way that was true to Etsy-ness. But as we grew, it became really important for us to actually formalize that. There are now 600 people and you can't assume that everyone's just going to understand what guides us, what our mission and values are all about, and how that plays out in their work. And more so was this incredible opportunity where now, besides, we have 30 million members, which is this really exciting, huge base that we can use to fulfill our mission, which is to reimagine commerce. So in formalizing it, we help protect the practices of the company in the way the company operates, but we actually have the ability to amplify that out into the world. Yeah, great. I also wanted to really quickly add, in addition to us sort of understanding what's going on and understanding what our impacts are, I think one of the additional valuable outcomes of being able to measure some of our impacts in starting this process has been communication. Both internally and externally, there are naturally a lot of misperceptions or misunderstandings about who's participating or what people are doing. And to really be able to put data behind our internal and external misperceptions has been incredibly useful for us. And it's made our research a very important communication tool. Yeah, that was actually going to be one of my next questions is, you know, how are you using data? Are you sharing it? How does it affect maybe government relations or relationships with your communities or even in the sector overall?  Then what happens? Yeah, so everything that we do is public. All of my team's work is open source. So the idea behind that being that any company can take it, iterate, replicate. We really don't want every company to be starting from scratch. And I think the cool thing about the movement and why we're all here is that we can really rise all ships. If one industry benefits, then so do all the others. And the more we can get consumers engaged with this concept of benevolent business, the more we all win. So it puts us in a really good place to share information. And by virtue of that, we put together a pretty dense report. We were just laughing about it backstage that quantifies everything and it's a public. So including stuff that most companies don't share, like the results of our happiness survey. Yeah, great. How are you guys using your data? Do you have any examples of maybe when you've been able to point to data and affect the way a city planner or a regulator is thinking about the work that you're doing? Because I know we run into a lot of regulatory issues in the sharing economy on almost a daily basis. I don't know what you're talking about. Yeah, absolutely. I mean, we definitely have cities. I think Amsterdam is a good example of where we went in and they were very, very skeptical and not terribly excited about this idea of home sharing and to be able to go in and and survey our hosts and guests and put together a study that says, you know, this is really what we're let's let's like let's all get on the same page about what we're talking about and being able to use that as a starting point for a conversation was incredibly effective there. And it's been incredibly effective in other cities just so that we're all talking about the same thing and we're not talking past each other. And in Amsterdam, Amsterdam is a great example of a city that was able to look at the data and look at look at the work that we've done and the understanding that we've pulled together and and as a result changed their changed the regulation to legalize home sharing. Yeah, it's certainly very effective in our in our government relations government relations tools and it's just effective internally as well to understand, you know, what's going on? Are there things that we should be paying attention to that we're not? How do we think about them? How do we talk about them? I think it's extremely important the point you brought up about regulation and our ability to use data and point towards the positive impact we're having because I mean, just to be totally frank, it's sort of been like with Mosaic. We feel like we're this little speedboat in the ocean and then the government, you know, with all the regulation comes and jumps on board and just starts throwing anchors in every direction. It's like, well, we're trying to advance society towards clean energy, which is what we should be doing. And, you know, just the norm, I mean, we spent over a million dollars as a small company on legal work related to financial regulation within the states and the Securities and Exchange Commission. And we have 100% on time payments for our borrowers. We have everyone's making money. And we're trying to do it right. If you go to each investment, you could see a prospectus completely transparent, not just on the borrower but also on what we're doing as a company and, you know, ownership.  And so what's helpful in these conversations when you sit down with the Securities and Exchange Commission, they care a little bit less about, like, actually impact, like when you're talking to them, they're just like, here's the law and follow it. But when you're talking to the states and you're registering as consumer lending or whatever you're doing in the local places, the local governments love it because you're creating jobs and you're helping people in those areas save money. And so the more we, you know, right now the solar industry employs more people that are employed in coal mining. Amazing stat. There's more people in California employed in solar than in Hollywood. So this is no longer a small industry and you go to the regulators and you say, listen, you can try to keep throwing these anchors into the ocean, but you're just slowing down job growth. And there is an army of people that their lives are financially dependent. And you could say the same thing about Airbnb when they tried to shut it down in New York City.  They're able to support themselves by renting out their homes on Etsy and these kind of things. And so if you're, if the regulation is slowing that down, it's really negatively impacting the community. And so I think it's very important that we measure the impact and, you know, and if you look at it objectively, it points to economic growth, job growth, and just better cities. And so hopefully we're able to make that convincing argument to the regulator. Sometimes it falls on deaf ears and you're, it's very frustrating, but hopefully it's based on the merits of what the data is pointing to, which is all positive. Yeah. And I think with our size, we're now to a point where we can actually get representatives to listen. So legislation that has to do with favoring micro- entrepreneurship is really important to us, but right now net neutrality is the biggest issue. Totally.  Yeah. Yeah. So September 10th is a big rally against that. And I think everyone should participate, even just as a user, it's going to kill your experience as you shop, participate, research, anything that you do online. But our size allows us, and because we've measured that, we have some weight to put behind it. So we actually have the chairman of the FCC at Etsy, Feta Mohamed Kirkmeal, talked a little bit about this. And so it's been really helpful. And without our size and without measuring that, we wouldn't be able to have those kinds of high-level conversations. Yeah. Yeah. Mark, Mark and Jason of, and Jason Horowitz said recently in the interview, when you think about regulation, it's really built for the incumbents. And so naturally people who are building something new that could be potentially disruptive or challenged to the incumbents are, the regulation is really designed for them, not for us. And so I think we need to get very proactive. And I'm really, you know, having policy people and economists and city planners in-house is a total dream. I'd love to, you know, think about how we can, instead of being reacting to policy constantly, really try to shape it and say, this is the best way we can do to accelerate the inevitable transition to clean energy. We need to unleash public capital markets into solar energy. We need to deregulate, because, you know, we face it both on the financial regulation side, but also on the energy regulation side. If you install a solar system in Marin and Sonoma, those are two different permits, completely different permits. It's like if you had to buy a toaster at Walmart and you had a different plug in two different counties, you know, it's very complex. The back offices of these solar installers are a huge cost center for these companies. So the more we can streamline these kind of things and get and accelerate it and be on the kind of proactive side of saying, this is how it should look, I think the better for these companies and for the economy as a whole. Yeah, yeah, and that brings up for me. What is it that we could be doing sort of proactively in the new economy, sharing economy, the peer economy, however you want to frame it? Is there anything that we could be doing sort of together if we were organized as companies or that a third party could even come due without measure all of the data that's being produced because it's a remarkably new thing that's happening and I think everyone's trying to figure out what it means and what it means for who and who it's impacting and how. Absolutely, I think we started conversations with a number of companies and with a number of different groups about the value, I mean it's great for Airbnb to say, hey look at us, we're having this great impact and this is how we are in cities and this is what it means for Mr. Uber, but ultimately there's something larger that's happening here that if we could look at it as sort of an entire pie rather than all these little slices is much more effective. I've heard from people at the Treasury saying there's this thing happening and everyone's really interested in it and they want to know what the deal is but no one has any idea of how to begin to quantify this, to quantifying this. And I think that that's where we clearly as companies have something great that we can contribute to the conversation if we work at it together. I think being able to collaborate to together look at our impact as a sharing economy as a whole and to measure that I think would have an enormous benefit to the larger movement. And there's sort of a human aspect that I think is harder to quantify but what we're talking about is connectivity. So part of my work is to actually look at the brain chemistry that happens when people make a disconnected purchase versus a connected purchase and it's a completely different set of reactions that are happening for you and when you have a connected purchase when you know the person that made the item when they give you a handwritten note and thank you for supporting their business it's a fundamentally different transaction than buying something that is completely faceless that is mass produced. And the same thing with staying at a hotel that is just a giant chain could be anywhere in the world versus sharing someone's home with them. I think that's an incredible point I mean we started when we started evaluating our impacts with very traditional you know economic metrics what's our you know how much total economic activity are we generating how many jobs are we supporting sort of very standard things that you would look at but the more that we get into it then we realize that traditional metrics whether they're economic or environmental or even you know certain social metrics aren't enough for the types of things that we're seeing and we're really at this point where we need to start and I know that this is happening in a lot of different sectors we need to start being more creative about the ways that we measure our impact because they're not all traditional impacts and it's an exciting time to be a part of that to think of you know what else are we seeing and how can we really measure that and sort of the economic flow can be disrupted too so instead of just getting a paycheck and you have income and then outgoing expenditures through the sharing economy you don't need to make as much money because you're not spending as much money so if you're sharing things and utilizing assets in different ways and bartering and exchanging and connecting with neighbors then it doesn't all go down to GDP which I think is a really frightening thing for an economic system that relies entirely on GDP measurements there's a million places I think we could go when we think about trying to measure resource efficiency and how that's really working which I know Airbnb has started to do is anyone measuring we talk a lot about how the sharing economy has really positive impacts for community building and that sort of thing in the social aspect how do you guys measure that or is anyone measuring that really well like what it feels like when I borrow money to purchase solar panels from my roof from my neighbor and a company like how do we measure that, what is that that's sort of the next frontier I think is finding ways to quantify emotion and connectivity we've got a bucket of amazing anecdotes and stories from sellers and buyers and really incredible connections that have happened around the world through Etsy and sure Airbnb has them as well and Mosaic too so quantification of that is really challenging because there's a warmth and a humanity in there that a number that you're saying 100,000 people felt connected on Etsy that doesn't evoke the same set of emotions that hearing the story about how two people interacted and created something special together and there are studies out there that talk about a dollar spent on an item versus a dollar spent on an experience like those lead to different levels of satisfaction so there's clearly work being done in that area and I think we're at the point where we as companies can start pushing into that it's really hard to quantify experience though and so the difference between going into a sterile hotel room where every room is the same and it's a very sterile experience too basically the complete opposite of that which is choice and access just the heterogeneity and diversity that you get from sharing economy platform it's really hard to quantify that but I do think that that's sort of the secret sauce even though you get a better product and maybe even better economics from Airbnb and Mosaic and Etsy but then there's this other X factor which is you feel like you're directly impacting the world in a very meaningful way and you have stakeholder and you are it's a sense of belonging which I think Airbnb has really tried to capture their new rebranding but it's like this idea like people what do people want most in the world people want to connect and belong to something bigger than themselves and if you can give them that experience it's an amazing thing but can you quantify the feeling of I feel a part of something greater than myself I think that's probably hard I do love your cloud to take that I do think we are you know really we went from sort of cloud you know you have information static information websites where it's a relationship between a web designer and a person and now moving in from social networks where you're connecting with people online to now really this idea of cloud communities where the potential to connect with anyone and that experience to have an online impact the offline world is truly staggering what that can mean to our world and I love what Paul Graham he's the founder of Y Comiteur says about this he says ownership would have been was ownership a hack like as opposed to thinking of sharing as I have was ownership a hack that people did that he managed pre-internet like is sharing a natural is actually a natural thing it feels good when you share when you're connected with people is that is that the actual norm where we subjected to Wal-Mart and the the hotel experience of the sterile experience were we subjected to that for generations and really that's unnatural and really the natural thing is and we're moving in that direction and tendency because the internet enables us to connect with anyone yeah that's really interesting when you think about essence of humanity and that sort of thing and what's kind of naturally coming about as a result of how connected we all are now I have one more topic I kind of want to run through and then I want to open it up to the audience for a couple questions before we move on but I'm curious when you think about the people that are acting as providers on your platforms what what are you thinking about in terms of managing risk for those people in terms of economics or the insecurity or fluctuating economic income or safety or legality and all that sort of thing because there's also a bunch of people that the beautiful thing is that they're depending on these on your platforms to sort of subsidize their income or even use it as their primary income source and that also creates I would imagine a ton of responsibility to think through so what are can you talk to that a little bit and want some of those I think what's incredible to see at Etsy is the amount of care and passion with which every decision is made so we don't change our website we understand that when we make changes we're affecting a million small businesses and that's really the level of consideration that goes into making decisions about how we add new features and adapts the site and there's a lot of things that we could have done along the way and still have the opportunity to do where we could make a lot more money than we do but it wouldn't be in service of the community and we understand that the million small businesses on our platform are the reason that we have a business in the first place so I think there's a tremendous amount of responsibilities you said to upkeep our ability to get to allow those people to make money and to either contribute to their savings supplement their income or make a living for them and their families I would say for us it's similar and also a little bit different in that 90 some percent of people who are hosts on Airbnb and this is not their very very few exceptions this is not their primary source of income it's not this isn't sort of their bread and butter it's really supplemental income and that's not to say that the supplemental income isn't important you know we see that somewhere between 40 and 50 percent of people say that they use their hosts say they use their Airbnb income to help stay in their homes I mean this income is very important but it isn't it's not their job so we have very similar considerations but it's a little bit it's a little bit different we do have a lot of sort of risk mitigating things in place whether it's insurance you know to protect both host and guest things like that that sort of help keep things safe and reliable on both sides so those are things that we are always thinking about and working towards I think for Mosaic I mean I think for as founders and entrepreneurs can relate to the thing you think about most is thinking care of your people the employees and staff of the company and you fear that if anything would go wrong that it would impact them and you really that's like a very big fear of starting a company is that you could let people down that you've convinced to join you on this crazy journey but it's even scarier when it's like you know we're right now selling our loan product through about 30 installers and they're offering this as a way to generate business and make sales for their customers and those customers are saving money so it's even like if you know there's even a bigger sense of like well there's a lot of people who have stakeholdership as opposed to shareholdership we also everyone in the company has equity but there's also this concept of stakeholdership which is like they're your staff and then there are people who actually are kind of benefiting from the platform that are in many ways I think for Etsy you know this is probably people their sole source of income is Etsy. For Mosaic it's a little bit different that you know we're helping someone go solar there it's like if they didn't have solar they'd probably just pay a little bit more for their utility bill so it's not like they would put their lights off but but for the installers that we're working with this is their this is a financial product that allows them to really grow their businesses and they're off they're sitting at the kitchen table and offering the loan to these homeowners you know that is in a sense a way of how we crowd source our sales in the sense that we're having the installer offer it to the homeowner and so we really want to make sure that we're paying the installers on time and everything is like very tight on that front because these guys are running job to job to job crew to crew to crew and building the solar economy and it would be devastating to us if one of them was like well Mosaic doesn't have their stuff together you know that would be that would be a horrible nightmare so that's really where I guess you would say a lot of the neurotic fear energy a lot of that the kind of waking up at 2am happens is around some of those issues so yeah for us it's pretty incredible how much the complexity increases when we have millions of people participating in our businesses so with that I have lots more questions but yes anything in the audience I see hand over there and I think there's microphones that are coming towards you Hi Ian truly I think there's an extra level of good can come from the share economy by the platforms working together so I'll give you the example I'm wanting to create free rest bite relief breaks for the long term ill for example cancer patients for free and I believe that lift could provide the transport to get there Airbnb could provide the home stay and boat bound could provide a boat trip and Tash Rabbit can provide a professional carer while the unpaid spouse is going for the break away is anybody doing such a pan share platform collaboration to get some extra magic out of all the goodwill of the hosts and public who are members on there I want to make that happen and if nobody is doing that you could let me know how to link in with the platforms next week because I want to meet them all and discuss this but I don't know how to get in there so I think the question is are sharing economy companies collaborating at all to make it contribute to the greater good in some way and I want to say to just before we move on with more questions that was an amazing question and I'm glad you contributed it but let's try to keep our questions brief and then if we can focus on the question and less on the preamble that would be great too so just so we can hear from any people as possible I can speak to that really quickly we aren't working with other companies yet on sort of cross cross company collaborations but we are doing a lot of the things that you've mentioned so we have a disaster relief program that we started just after Hurricane Sandy which actually came out of our community so in New York after Hurricane Sandy we had a host reach out to us and say hey we have there are so many people in my neighborhood in my community that are homeless now as a result of the hurricane I host strangers in my house all the time can I make my home available to them for free and that sort of started this big program that we've now launched we've now launched I think in over 15 disasters around the world where if there's a disaster and we can be of help we flip a switch and notify our hosts and guests to say hey there are people in your community who have been displaced would you like to make the space that you share with other people available to them for free and that's now a program that we have we also recently hired a director of I'm not entirely sure what her name is what her exact title is but basically to look at other opportunities like this where can we link up with great with great platforms or great causes and see if our community is interested in supporting them I think cause wise we have a lot of sellers that activate but it's on the financial side so a lot of times when disaster strikes people will offer 100% of their shop sales as direct donations and then on a really personal side we see a lot of fundraising that happens for things like someone's relative has cancer and needs treatment and so they donate 100% of their shop sales to that and in a lot of cases they have come forward and either found a way to create promotion for those groups of sellers or to match their donations great other questions in the audience I thought I saw a couple more hands yeah so do you have any, and this is a continue on what was just said now do you have any really great anecdotes or insights to an insight that you either were pleasantly surprised by or really disturbed by the course correction and the direction of the work you guys do that's a great question that's a really good question do you mean the things that we've quantified insights through quantification yeah Tiffany go for it we don't have any surprises as much as the data that we've been collecting has actually just emphasized our course so for example we've known for a long time that the majority of our sellers are women but until we actually counted that it's 88% of our Etsy businesses are female owned versus 29% in the greater American economy you don't really have a number to substanti the discussion about doing right things for women-owned businesses so I can't think of anything that we've measured that's been either shocking and horrible I guess it was a small point on our happiness survey our first was workload and for a tech company Etsy is definitely not like we don't serve dinner because we don't want our employees to eat dinner at work you know that kind of thing we're definitely a 40 hour work week focused type of company very family focused and flexible in that way so when we received the workload score it was a little bit head scratching we ran a further core layer analysis and discovered that workload is actually not connected to retention and attitudes about the workplace so effectively people are working outside of their normal hours but you could extrapolate that they're doing so because they love their jobs and it doesn't actually impact their happiness and well-being nor is it required and I think that that's sort of a unique thing within the tech industry I think one of the things that we've seen it's funny I was talking to someone internally yesterday about you know is there something really negative that we found out that has caused a course correction and we couldn't think of something I'm sure there are things that have caused little things but we couldn't think of a great example but something that's come up recently we did about a few months ago we released an environmental impact study it was sort of our first attempt to try to understand how does home sharing compare to traditional accommodations in terms of energy use and water use and waste generation and all these things the results were sort of what we expected that it's much more energy efficient to stay in someone's home than it is to stay in a big hotel that's built specifically for this purpose and is not fully occupied and so the results were really reassuring and great but one of the things that we came away with was that in the survey that the people that we surveyed were incredibly excited about this and it was like what else can I be doing you know I recycle I guess how to do X, Y, and Z and tell me what else I can do I'll totally do it it really highlighted an opportunity for us to do a lot more outreach and education and it highlighted the interest and that I think for us has been great and now we're looking at how else we can use that interest and encourage people to be more energy efficient or give them tips and tricks depending on where they live to improve their homes so that's a small example of how that's happened that's neat other questions? Hi I believe Etsy is a B Corp is that correct? and so I'd be curious about your feedback for us and the other panelists about measuring your impact in that way and whether the other panelists have considered doing that or on the back end the GERS for the financial institutions and whatnot that you work with for the financial institutions yeah well Mosaic's actually a B Corp as well right so doing the impact assessment was incredibly helpful for us in our journey of formalizing our impact and quantifying things so kind of back to the comment I made earlier about it just being sort of a gut feeling the assessment allowed us to do things like actually make a volunteer leave policy now we actually have 40 hours a week as a written policy as a written policy so it's helped with the formalization aspect and I think given a sort of a target to shoot for as we work on improvement I would encourage every company under the sun to take the assessment it doesn't mean that you become a B Corp necessarily and it can be a private way to measure and they have a very good methodology so if you take the assessment it never has to go anywhere it can just give you some insight into things that you might do to help your company move along when did you guys what size were you when you became a B Corp I did it early on we did it in very beginning and we actually it's interesting because we are very morally righteous folk and we think that we're really good at everything and then when the B Corp thing came we were like oh man at the backstage he said he never trusts people who are more like us who consider themselves more it was pretty extensive and you think you do a lot of the right things but then there's always things you don't know what you don't know and so I thought it was very helpful it's a very big investment as a company to do it and do it in the right way I think the biggest thing though is not just how we act internally but what is the impact we're having in the world so even if someone I mean I think that's even in some ways more important but there is this sort of as within as without kind of thing like if you're making an impact in the world more than likely like you can't be faking it on the inside you have to kind of have the values alignment that allows you to make that impact and vice versa like if you're a good company it's gonna be hard for you to make bad company decisions and rip off sellers like if you're like doing the right thing for your employees and for the right decisions that work it creates a culture really what we're talking about is company culture and so there's company culture and then there's the greater world culture and those things are very integrated and I think you know as you said every company should think about it and it should be aligned with their values and their mission hopefully I think more and more consumers are starting to be not only for benevolent business in their purchasing but also they're looking for legit amazing factors in that they don't want to be greenwashed or just marketed to and they're becoming more discerning so when you have the b-corp symbol on your website it is basically an effective way of saying we really walk the walk with this stuff and it's not just a clever tagline that we have as a banner ad has it been useful as a way of managing sort of values and making sure that everyone stays on track internally because I know sometimes new economy companies I hear a lot that oh what we're doing is inherently good like we don't necessarily need to do that and I mean I've worked at social businesses and I found that if I can point to something it's easier to keep impact on track, is that the case? It's been huge because it contextualizes what we're doing for our employees and I think the internal struggle to define these types of things is exactly the same as it is with the external messaging so I've given our employees something to really hold on to when they're talking about our values and understanding that the purpose of their work and what they're building towards is really something meaningful that's much bigger than Etsy itself so yeah it's huge, employees talk about it all the time we have these stickers made with our b-corp score and people have them all over their computers and things like that we even have employees that yell b-corp when they turn the lights out in conference rooms it's so cute it started as a joke but now it actually happens so you'll be walking in the hall and you'll be like big harp so yeah that's amazing, that's really funny other questions from the audience Hi I'm going to try to phrase this clearly because it's kind of complicated so in the qualitative data that's hard to quantify I'm interested in knowing the people that that you sharing economy usually are people that are more conscious and that will behave in a certain way because they're using others people's things so have you found that that is a common norm or that usually it's harder to keep people in track in behavior and in being not, you know using stuff like and taking care of it as they would of their own things I mean, sorry when you go to a hotel you're paying for a service so you're expecting something when you're going to Airbnb you're paying for it but you're paying less and you're kind of coming in with a different mentality so I think maybe what the question is does behavior naturally change when you're buying from a person exactly, sorry thank you yeah, I don't work on that side, I don't work on the product side of things but from what I know I think that's certainly the case there are always outliers and there are always bad actors I think in any in any organization but for the most part the vast majority I think of the Airbnb community are incredibly respectful and incredibly appreciative of the experience that they're purchasing or providing and it's great to see and now we have such great ID currency right so there's ratings for guests and hosts so if someone's screwing up the system then you know there's an accountability that you might not have I'm the same thing with Etsy sellers at a hotel yeah the reviews are really important to our sellers and because of that sort of connected level of purchasing we actually find a much higher degree of buyers are willing to leave kind reviews then you know for example like when you go to a restaurant you probably only leave a Yopavut if you feel a little screwed and like you want to kind of stick it to them so by and large people leave reviews when they have a negative experience and want to somehow voice that but that's not the case with Etsy and I think that has a lot to do with the connectivity that people feel when they make their purchase because from the moment that you engage with a seller you're actually asking them about the handcrafted thing that they're going to make for you and then throughout the entire transaction you're getting something that's very personal and so you're almost excited to help them build their business by leaving a good review great I think we probably have time for one more question and then I want to leave some space for final comments if the panelists have any I have a question so I've heard about the B Corp hackathon that you guys did to engage your employees through that process so I want to pose the question to Airbnb and Mosaic of how do you engage your employees or other stakeholder groups using that measurement process as a journey and experience not just as an end result it's a good question we're actually not specifically through the lens of B Corporation right now about to I don't know if folks have read the book Delivering Happiness by Tony Shea but the folks at Zappos have created a spin-off called Delivering Happiness which is all about creating we have values right now but they're created by the founders and it was the beginning and it's more of this bottoms up process of interviewing and asking the question why you're here a lot of different values based questions then organically trying to pull the values and so we share them so actually kicking that process off right now we're not necessarily a hackathon we're coding up something but it's more of like hacking our culture so it's sort of saying culture is something that scales is something that we think about bureaucracy is really frustrating it has to go through all these things culture should be like people know what to do because it's like that's the Mosaic way it's being Etsy, it's being Airbnb and so we're really trying to create a culture at Mosaic that every sort of slip away and people just kind of can move into the right direction so I think a lot of the nucleus of that is values is core values that people really believe in and if they don't believe in they shouldn't be at Mosaic and if they do they should be and so I think that's sort of like the idea of building like your little tribe like this is why we exist and everyone here that you see around the table is here for the same reason I think the same is definitely true for Airbnb I want to say Airbnb does twice annually an employee survey to kind of check in we have everybody at their desk has like our five or six core values that Airbnb has and the survey that they do twice a year is related to tests like how are we doing on these core values are we championing the mission are we doing the things that we all think that we're here to be doing we also just this week had an internal hackathon was essentially like you know what else can we be improving both on the product internally externally like let's generate ideas to see how we can push this forward so yeah absolutely great and as the panelists can probably see we're very close on time but are there any just last comments you'd want to make there's probably people that are company leaders themselves or investors or employees what else what should we take away about measuring impact in the sharing economy do you think I think it really has to be a bottom up movement especially within your company so all the things that Etsy does from our perks to our external engagement come and they're successful because they come from the employees so everything that we've tried sort of top down the nation of balance doesn't has it really been effective the things that stick and last and make meaningful impact come from either our employees or from our community based online from an external measurement standpoint I think for us it's continuing the things that we've been doing but also pushing the envelope and being more continuing I think to engage with external partners and that's sort of other companies in the sharing economy but also engaging with academic institutions and external organizations which are far better positioned to evaluate and measure certain aspects of the things that we do than we are and that I think is definitely where we see this heading great I don't have anything else to say this is great to be here and share the stage with you guys and honor for mosaic to be in such good company wonderful thank you so much you guys this is a lovely conversation I appreciate all your input thank you