 Hello Come on I know it's five o'clock, but bring it up a little bit here. This is your wake-up session So you guys can go out and drink tonight. That's my whole purpose. That's why I'm here Anyway, you're at Drupal for customers a shift in our thinking I'm web Kenny that may have may have seen me present before I was in London I was in Chicago if those of you that made it over there you shot nerf darts at me That's who I am talk a little bit more about who I am I started in the web in 2002. I was working on cold fusion back then if you remember that language That was fun times. I got with Drupal in 2007. I joined aqueer in 2009 and About three and a half years later. I now work with blink reaction a partner of aquee is a development firm See now, of course naturally you'll ask what I did before technology. I Did this I looked a little bit like this too. I mean the hair is different now, but I was a carney I actually worked on a carnival before I the year before I started in technology. So Yeah, so why should you care about who I am and why should you tweet this session? If you want to tweet this session the hashtag is D4C so D the number four and C easy enough Drupal for customers And you know, why would you care? Why would you tweak this session? Why would you pay attention? Well now I'm gonna lay a little bit of guilt on you and say that today is my two-year wedding Anniversary that I am missing to be here in Prague presenting for you people So can I get a round of applause for that? And if you really want to shock my wife, that's her Twitter handle right there So go ahead and you can all just tweet her randomly happy anniversary sandalgail Anyway, so today we'll talk about my favorite my favorite topic and as my career has always been a developer But always a developer with an eye on customers. That's always what I've done So on one way or the other I've been involved in requirements gathering in some kind of support of customers And now I help customers with their solutions and run a technology team for a delivery company So my whole job while being a coder has always been about my favorite topic Customers and they basically say I'm gonna pay you and you're gonna solve my problem, right? So how many people in here build sites for free? Excellent. That's fantastic. How do you how do you keep your lights on? We'll talk about that later come see me later. All right But now honestly customers are such an important part of what we do, right users customers There's lots of different words for it You know, they really are the most important person in your world and even for those who build free sites users are your most important people and You know that gets forgotten forgotten There's a lot of different types of customers that we work with You know, there are what I like to call sort of the technically challenged customer. All right There's also the know-it-all customer. We'll talk about each of those So the technically challenged customer calls you at, you know, 2 30 in the morning and says my website won't come up And you say well as your internet cable plugged in, right? And they say, oh, yeah, no it isn't thanks. Let me call my IT guy And the know-it-all customer of course is that customer that did computer science 15 20 years ago they built a little you know something little screens for a for an ATM machine and Now of course they can tell you everything that they know about UX and how to build websites, right? But I do assert to you that there's one thing that will keep every customer happy no matter what and that is being Transparent with them. All right, that is it's transparency. It's the most important thing around what we do I'm a big believer in teaching customers I think that too often as developers as technical people we get into sort of this this way All right, we get into this way what we feel like we know something you don't and so therefore that's job security for us But truthfully, it's a lot easier to work with smarter customers. So we have to make our customers smarter So what I've done is I've actually taken time sometimes to explain get to a customer I've actually explained a database to a customer, you know to sort of give them that edge so that they can feel as though They can have a conversation with me and I show them Drupal. I do it every day So today we're going to talk about the Drupal site life cycle, okay? Not the technical life cycle So if there are you know if you're expecting to hear about hooks in here and libraries and include files, you should leave now We're going to talk about the Drupal site life cycle in terms of what it's like to build them All right, and we're going to talk about five stages today Selling planning building them deploying and then contributing All right, I see the five of those as basically being the the key five things now under those five areas There could be any number of subtopics. I mean we could talk about sales for an entire session I could talk about performance for an entire session and I have But first let's talk about the old way All right the pre the pre open-source way that we used to build websites and many websites are still built this way today Does anybody remember this from computer science school? Yeah, so this is the old SDLC, okay? It is this concept. They also call it waterfall All right it's the process where you analyze requirements and you go through in quote and then you do a mock-up and then you Create it and you stage it and release it and then you go back to the beginning and do it again now What is wrong with this particular approach? Can anyone tell me? What happens in a website when you build them in waterfall? No, I'll tell you Basically software is like childbirth. All right, you wait nine months for something and then the screaming starts All right, that's effectively what it what it's like when it's built that way right so and a lot of that is because we We sort of we don't know what the customer wants when the customer asks for it They don't know what the customer wants when they ask for it, you know, they don't even know what they want So let's talk through how we can sort of break through that a little bit The first thing is selling it. How do you sell Drupal? Okay, how do you sell this sort of we all come to Drupal con? We know we throw down a bunch of money we travel from all over the world. We love Drupal right? We bleed blue it's so exciting for us to walk through the halls and talk to people and meet people But our customers they don't really know the inside of Drupal. So how do you sell it? The first thing you have to be comfortable with before you begin even your first Drupal project is this You're already awesome All right, you're already excellent because you're as much an assembler as you are a coder So, you know, there are some people out there who could write custom modules on one of them There are others who just site builders. There are folks who are themers There are folks who literally just can assemble modules together and understand requirements You know what you have to remember in the Drupal space is that people are actually or actually this is open source in general But they're paying for your ability to distill the complexity for them. That's what they're paying for you to do All right. Yeah, they're also paying you to write code Sure, they're also paying you to launch their site. Absolutely, but they really are paying you to distill it and to make it less complex So you don't have to be dris to be very successful You want to stand out from the crowd all right by engaging with your customers You want to contribute to the community? Collaborate with everyone around you. All right, and finally you want to be the best All right need to attend training. They're already halfway there. Here are a triple con give yourselves a round of applause for that Yeah, you're already halfway there. So you're here at Drupal con you go to Drupal camps you go to meet ups You're already sort of moving towards being the best Soaking up as much knowledge as possible in this space and you will be it's about as much It's actually as much about your ambition to build something great as it is your ability to build it that actually you know It's called outcome visioning. We're gonna talk about that too later All right now. It's the quiz part of our you're ready for the quiz This is the quiz part of our of our session So everybody in here knows what the GPL is I would assume. Yeah, obviously, I would hope so however. We shouldn't be here So let me ask you a question and just by show of hands. Are you forced to redistribute all of your Drupal code? Raise your hand if it's yes Okay, can you sell the Drupal source code with your modifications and or the executable? Raise your hand for yes Okay, can you distribute the GPL code with proprietary code without distributing the source of the proprietary code raise your hand for no Okay, see we don't really know GPL all that well Let's go back. First of all, you're not ever forced to redistribute your Drupal code. That's a no All right, so you guys most that you got that right the second one Can you sell the Drupal source code? You absolutely can there are many people who have made lots and lots of money because what I Have dealt with when I built projects for people where it's there the next great Facebook, right? Because everybody has the next Facebook there. It's gonna be awesome We're gonna have puppies and pictures and it's gonna be fantastic the first question that I get is Well, Kenny if you're gonna build this with open source, what's gonna happen six months from now? You know when because that's all it's gonna take is six months What's gonna happen six months from now when Microsoft comes to buy my idea? Can I sell this and the answer is yes? You can All right, so the good news is this very simple here it is When you run your proprietary software written in PHP Drupal on Linux and my SQL It does not mean you have to redistribute your proprietary source code It just means that should you choose to read to distribute it you have to distribute it under the original terms of the GPL That's it So you never have to redistribute it you could sell it to five people But if you decide to that's when you get into licensing But I want you to remember one very important thing about this session, which is I'm not a lawyer All right, so if you have questions about your particular project, you should call your lawyer. All right, they know better than I do So that's licensing all right now the next thing is to talk about this sort of this is a tough one for people to Digest customers at least which is the evolution of our project our project changes so frequently I used to do support for Aquia back in the day And I used to joke and I'd say doing support for Aquia is like being a dog chasing a ball attached to a pickup truck You're never actually going to reach the truck, but you're always going to stay directly behind it All right, and the reason for that is because every single day something in the community changes right views yesterday Is not what it was it is today. There's a new patch. There's something new. There's something that's going to break That's just how open source is not really Drupal although Drupal certainly seems to move at a much faster pace It appears not major versions, but that's a whole separate talk so You really have to tell your customers to embrace the change all right embrace the change of Drupal and You know talk to them about the changes and teach them to Sort of accept the fast-moving pace and how do you say that and you know the good news is there's an upside to this Which is that because it changes so much it means when they change their mind and they will you'll be able to change with it Okay, they will change their mind obviously three months ago. They didn't know then what they know today So it basically means instead of charging maybe $50,000 for a site you build in ten weeks. Maybe you're charging them $2,000 a week until the project is done You know there are sort of ways to look at that there. There's fixed price. There's time of materials There's all sorts of ways to structure it. There was a great session earlier today about that I won't go into it But you basically have to structure your pricing model around the way that Drupal moves and around the way that your Development shop can move All right now. Let's talk about planning All right So this is the dreading dreaded planning stage You know which is how do we know what we're going to build if we're going to do this just a little bit at a time What about specs and requirements and how do we get into that? So the first thing is I'm going to say this Bold if you're not talking to your customers. You are boring them Okay, you are actually boring your customers when you get on the phone When you don't get on the phone with them and you let weeks elapsed between conversations as you go off into a hole and build Something or plan something, you know if you're not comfortable talking to customers You probably should find another job because this is the new breed of developer. All right 25 years ago It was different right coders 25 30 years ago They could spend all their lives, you know at a computer Basically hacking out cold all day and that's still true to some degree. I mean there's still some you know There's some some people that can do that but I think that the more you want to advance in this in this sort of in this business the more you want to advance in web Development the more you want to advance up your career become a better developer become an architect become a lead But now whatever you're going to do you have to get comfortable talking? Obviously, I'm comfortable talking. I talk too much But you really want to get the conversations down You want to record them if you need to you want to reference them when you talk to them again And probably the most important thing is listen to your customers your customers know what they're talking about All right, even though we think they don't they really truly do because they know their customers, right now What usually happens when people hear the word planning? How do you react? All right, this is usually how most people react to oh we have to plan it. All right Well, we sold this website. We're gonna have all this money, but how what are we gonna do? How are we gonna plan it? Well, here's the thing. So instead of panicking. I'm going to tell you that you have the greatest Planner in the world and you don't have to spend a single nickel on anything else. You're sitting with it right now Your brain All right, your brain is an amazing planner All right, it has this little thing which you can look up when I'm done to see if I'm talking jazz But I'm actually I'm not this is true You have this little thing in your brain called the reticular filter And it's this little part of your brain basically that when you focus on something It will give you all the data that you need about that particular item. All right, so let's test that out right now All right, everybody in here just close your eyes bear would be for a second close your eyes Now tell me where there's red in the room Spot red in the room and you're just in your mind Got it. Okay, open your eyes All right, great one more time close your eyes blue. Where is there blue in the room? All right, so there's more blue in the room than there is actually red All right as a proportion of color blue is actually the the color that you probably see the most standing up here It's in my presentation. It's here. It's on the carpet, right? But while I was asking you about red blue was there the whole time You just weren't looking at blue you were looking at red And so what I try to assert to you with that is that when you focus on a particular problem Your brain will do the work for you, but it's all about actually sitting down to focus So we're going to talk about something called the natural planning model. All right The natural planning model is consistent of five steps. All right, you know You could easily probably break these down into words. Why what how organize and action? Okay, that's sort of the natural planning model of how things go and sure, you know this what I'm talking about This could turn into a All these these planning steps that I refer to could actually turn into a 25 page spec that you put in front of a developer But how you get to that spec is what's important The first step in the model is to define your purpose and principle. Why are we here? Why are we building this site the immediate answer for most people who get paid by developers is money? So if that's your motivation fine, but really it's why your customer is building the site Why are they building it? The second is outcome visioning so there's a lot of studies out there that show that Olympic athletes they actually do most of their training Visioning the goal that they're gonna make before they actually go out and do it. All right There are studies that suggests that doing that makes them a better athlete and so we're athletes We're code athletes just because we don't all go out running I mean I certainly can't run I took the elevator up and down the stairs, you know all day today I didn't I don't think I got on the stairs once but I still vision when something's gonna be successful and That's what we have to do. The third step is brainstorming All right I mean I think brainstorming gets short-circuited when we develop because a lot of the times we especially as developers and I do this You know, I spend a lot of time wondering what's a good idea, right? What's a good idea and automatically my brain shuts down because I know deep down I probably don't have the you know, I think I don't have the capacity for the good idea But the thing is you have to have a lot of bad ideas before you have a lot of good ideas All right, so what I would what I would encourage you to do to prove that theory for yourself is to go back because it's out There and take a look at Drupal one Okay, go back and look at Drupal one. We all know Drupal today. It's so awesome. It's all these API is fantastic But go look at the terrible idea that Drupal one was and Drupal two and Drupal three, right? It was a good idea, but wasn't executed all that well a lot of bad ideas before we got to where we are today The fourth step is organizing so once you get all that brainstorming done you get it all out into the open All right, you then have to figure out how you're going to organize all those thoughts How do you brainstorm you could do it any way you want you can use a piece of paper I use a mind mapping software You could do something as easy as popping open Microsoft Word and taking an outline There's a lot of different ways you could do it But basically the whole exercise I just taught you on blue and red you basically do that you think to yourself login feature What are the things that go with the login feature? Well, I'm going to need to form probably need some theming done right Oh, I may need to make sure that they don't want it to integrate with their external systems that they're a big company things like that And the last and fifth step it really is to identify the actions that come out of that All right, so once you determine that you have to build a theme that's your action build a theme You know, maybe you need to go find a theme first if you're going to build a sub theme of something and it's going to be responsive Then maybe your first thing is actually going out and finding what you're going to use to build this So let's have some fun. Does anybody in here have a website? They have to build that they haven't started yet Yeah, excellent. You want to be a test subject for me right here in the third row? You mind All right, just stand up for me All right, first of all, tell us about the website you're building. I'll repeat it over the microphone Okay, so it's an e-commerce store. Yeah. All right, great What's one of the features that you have to build on that a cart shopping cart? Okay So by show of hands and I'll call on you. What's the first thing that comes to mind? We need to think about a shopping cart. Go ahead raise your hands everybody in this room shopping cart payment gateway what else Products right what else Security there we go. I knew there was an aquian in the room He's hiding back there. He's actually taller than all of you All right security good. What else What else comes to mind? He's ability. Awesome. Great. We have a designer in here. So you can sit down You don't have to stand the whole time. Sorry But the point being, you know, we just got four really good ideas All right four things in here that we have to think about usability security Products right a payment gateway now. We have to go out. We have to create actions on those things Well payment gateways. We've got authorized that we got PayPal got a lot of different things We could use we could integrate with somebody else's system We could build our own if we wanted to and then we sort of then we'd identify the actions that are based on that Right. So what are the actions involved in choosing a payment gateway? You're probably gonna do some googling You know, maybe you're gonna hop an IRC and ask what people use Maybe we're gonna go look at the issue queues and see what modules are well supported. That's what a thing Now you have to actually build what you said you were gonna build right so after you've after you've planned it And you've sold it now you have to build it. All right. Now. Here's the good thing in Drupal We don't have to build Everything from the ground up right? That's why we love this platform But how do you choose what to build when there's so many choices, right? How do you know like today? I think that this I don't know what the actual statistic is But I know a few that I've seen I can think of at least at the top of my head probably four or five image galleries today in Drupal seven All right, I'm sure that there are probably 15 or 20 or 30 I don't know how many there are I want to spit out a statistic, but I've seen probably four or five So how do you make the choices around which one you're gonna use right? Y'all you have a couple of ways to do that you can find it by hand You can go to Drupal.org and you can search Drupal.org for keywords and you can see if anything pops up and You can find it by accident right you can find it by accident on Drupal planet There's a feed on Twitter that I subscribe to call Drupal modules that basically will every time a module is posted It pops up on the on the screen what the module is and you know I see it sometimes and if I'm working on something and it pops up that sort of happenstance, but doesn't always happen Also the support forums and Drupal.org You know they You can see it in the form of questions from other users about their requirements Many of the cool things I learned about when I was first starting in Drupal in Drupal five I just got by trolling the forums and seeing how other people did it and it's simple enough And in the Drupal five days we weren't clearly as huge as we are today, right? I mean that was like you know beginning of Drupal five not nearly as many people The other way is the Drupal showcase This will be posted by the way after and I'll have all these links for you But the Drupal showcase is another place You know these are places these are case studies effectively around sites that have been built with Drupal You know not invented here, so you know we took the trees talked about that in the keynote same as true when we built sites Right. I mean we we don't really we don't want to go through we don't want to go through building a thing custom again Now you have to evaluate. Okay. You found the perfect module. This has happened to me many times I thought oh, I need I need flow player. I need the flow player on my site. I found the flow player module I'm so excited. I didn't get a 404 when I went to the link page loads. Oh, there hasn't been a commit in 68 weeks All right, and there's 5,000 open issues in the queue. What do I do now? All right Here's how you can basically give some general sense around how this works if the last updated date of the latest release is Several months in the past then it could indicate a few things it could indicate that there's a lack of maintainer activity Right and interest in the module is possible It could also mean you found an example of a completely perfect module and nothing needs to be done Right, but that's not usually the case So the other thing you can look at is usage statistics. You can go look and see all right Well, here's a module. It really hasn't been used in a long time or has been committed to in a long time So you go and then you see well how many people are using it? You know there are actually some really excellent modules out there that are really rock-solid that are being used on Tens of thousands of sites, but haven't seen a commit in six months and that's okay, you know So it's all about sort of evaluating in that way This is an article that never really gets old this one here It's sort of you know how to choose modules for a Drupal installation. I was written by Angie So it's a really a great great one Also when you're building, you know, you have to be honest about design looks matter of course You know in it is in a design now whether you're a designer or not that's fine You know, it's all about negotiating with the customers on what they're willing to pay for what resources you have what resources they have a Lot of people will come at you and say we've got a really rock-solid designer and he really wants to learn Drupal So he's going to do that on this project and you're just going to build the modules for him Right and we all know how that typically goes not all that well So what I suggest is you know, certainly we have this concept in development of fixed cost, right? We get an RFP from a customer and it's 22 pages long and it's got all these requirements We have to do and we basically have to come up with a magic number, right? We have to guess. Oh, it's got to take us a hold on 5,000 hours, right? You just make it up and You know, it's based on past history based on past experience, obviously It's based on past numbers. There's lots of ways we do that But in the end really you should iterate and build an agile even if the project is a fixed cost now How can you do that? You know, how can you have a conversation with customers that says? Well, you've asked for these 15 features Okay, and I can build these 15 features. It's going to take us 25 hours to do that Or if you're willing to sacrifice this feature and that feature I can give you the five star module and then we'll do it out of the box, right? So this is where conversations with customers come in you have to know your work You have to know Drupal you have to be able to talk confidently about that And so that's why the learning that you do when you first start off in this kind of development really cannot be understated It's so important Then you have to launch it, right? There's always this is the sort of the launching process and you have to scale it if you're going to do sites for any any large business you effectively have to scale the you have to scale the site at some point, right and People might say well, why does scaling matter? I mean, well, I guess we could all say we all know why scaling matters but customers sometimes be like why does scaling matter and The truth is that we know when people consume information. They become bored very easily, all right, and See what I mean like it's a very boring process We just sort of sit there and wait and read and do those sort of things now What happens if we don't scale websites, right? What if we don't care about caching and we just throw a site out the door? No one cares about scaling it What usually happens? All right, the site goes up in horrible flames and goes down, right? So let's talk a little bit about caching I'm going to keep it a little high level because this isn't a super technical session But I do want to talk a little bit about some of the things you can do off the shelf to help you with with this stuff So caching comes in a lot of flavors in Drupal. All right I think that it's become a lot more important in Drupal 6 and Drupal 7 as we've been exposed to the enterprise more in Drupal 5 maybe not as much although one of these modules have been around since 4 So the first one is Drupal's default database cache, right? That's those tables for those developers in the room you've seen these they have the cache prefix and You know those that's basically your your caching system interestingly The only one that actually gets affected by the only one that gets served to your users really is cache block and cache page Everything else is all caching for the system itself when you turn off This is like one of those annoying things as developers you notice like when you turn off caching and yet you still see things That are cached that's because there are other caches in your system They're still working because they're just to make Drupal faster a little bit And can somebody tell me in here if you're tactical and you know those tables there's a particular table that actually is not a cache Can somebody tell me which one that is? So it's cache form right so people see cache form and I think that that's a cache it actually isn't it's what's called a state machine So it's what prevents it's what enables you actually to go from page 3 of a form to page 4 and not lose your place It's a it's an ill-named table in the Drupal space The next thing is an object cache This is really technical, but I'll just you know I'll sort of leave it to you to go research this This is so this is one of those questions You want to ask if you're building a high availability website or you're building a site for a large customer You want to ask does your host have right? So one of the things that you would be asking is does your host have a PC? It's not marked up here, but it is something that it should be you know looked into so it's a PC if you're taking notes And that's an opcode cache. All right effectively that makes PHP run faster. It's the easiest way to say it Memcache is a little bit different. That's an object cache And so what memcache does is it takes all those fancy tables? I just told you about and it basically gets rid of those and puts everything into the system ran and obviously things are Going to move faster between the CPU and the RAM then they are between the CPU and the database So again, you don't really have to know what it does all you really have to know if you're more on the business Side is does your hosting have this or are we offering a hosting package that has this? Then for the hackers in the room or the folks who are actually doing the implementation There's something called a static file cache This is one of my favorite modules actually and I think it gets sort of understated in the world of Varnish and reverse proxies, which I'll talk about next but This actually can be used with a varnish, you know this this this is a really powerful module called boost and What boost does is it basically goes through your database or it goes through yeah Goes through your database picks all the things that should be cached and then creates HTML copies of them All right, it goes through and it just creates copies in folders in your files directory So it's a very useful module and I've been using it for three versions now now people will say well wait a minute Kenny I have varnish so who cares about boost well The thing is that boost actually a lot can have a much longer lifetime than varnish can so let's say Not can varnish can have an endless lifetime But the point is if you want to set your varnish cache to be let's say 60 seconds But you want your the cache underneath it till to persist longer You can do that and you can use all sorts of fancy modules out there like cache actions and rules and all these things to say Because there's always a marketing person that says I can't use caching. I'm sorry But when I write a blog post it must be up immediately All right, well the good news is there is a solution for that problem, okay? There is a solution for that problem and it's called cache actions It's a very easy module to implement and effectively it says when something is updated clear the cache for this one node All right, and then they get their fresh blog post and the site doesn't come to their needs I mean sometimes if you want to just be a jerk, you can say all right. I'll turn off caching then You know, but you're all you're gonna get a call at two in the morning. So And then there's the big boys, right? There's the big people to keep it to keep it in drudges, but there's varnish squid Nginx Apache proxy Akamai, I mean I could go on forever. You know this I don't want to say the other one with a lime in the name I can't think of it, but there is these are the proxy caches These are like, you know clusters of machines or machines or servers that are software that is entirely powered to do Caching now a reverse proxy and a CDN are a little different absolutely, but believe it or not in most in Akamai's default configuration. It's really nothing more than varnish with 50,000 servers. That's it's really the same thing and What these do is they sit in front of your website and They basically take traffic instead of sending it back to the web server. So it's a really good, you know it's a really good way to to have a high availability website and There are a lot of hosts out there today that already have this stuff So you don't really have to think about that. All right now I don't work for them anymore But I do believe that one of the greatest hosting platforms out there is aquea cloud You can disagree with me if you want we'll fight all day afterwards. That's fine, but I do think that's great Pantheon is also another excellent project. All right Also a really great product that you can get and these are already built to scale. Okay, they already have all the things I just mentioned and the kitchen sink. All right So you don't really have to worry too much about what you're at what your code is gonna Do once it gets to production once it gets to stage is it gonna scale the answer is yes So if your customer is willing to spend the money It's out there if they're if they're not willing to spend the money and this happens, right? I assure you there are tons of ways to squeeze every little Piece that you can out of the hosting before you actually have to get into a multi-availability setting There really are you know There's all sorts of ways you can do it you can layer boost and varnish and memcash and apc and every other caching technology You want and quite honestly as long as you're not getting like you know thousands of hits per minute You'll stand up, you know Drupal can do a lot of really powerful things like I'm a famous guy, right? You know me I'm famous No, all right. Well my website gets like you know I mean it's a lot of traffic my website at least 25 hits a month and 23 of them are my mother But the truth is the hosting that I'm on Is a little shared hosting but I have my site set up in such a way that if I do some tweet That's like so super awesome that it gets like tons of retweets and everybody's on my blog I can handle it, you know, I can handle now I can handle it to a point, you know obvious I only pay about 20 bucks a month of that hosting because I'm cheap, you know And at some point I would have to upgrade but the point is you can squeeze an awful lot out You know, and I think that I think what we get to to do, you know, and I'll come off this in a second But I think what we end up doing all too often is As developers or as tactical people I should say as people who are in the technical field We tend to think about scale before scale is even necessary, right? How many times have we thought about this idea and said, huh? If you get mentioned on Oprah, you're gonna be it's gonna be over, you know, I mean what are we gonna do that? You know sites don't actually blow up overnight. That's a fairytale They don't actually usually do that and I've worked on a lot of sites and they usually ramp. You can tell when it's coming Sometimes it happens, but sometimes, you know, but most of the time it doesn't You know and most of the businesses out there, they know when they're gonna be on CNN because they're all watching So you'll know ahead of time. I think probably one of the more challenging conversations to have with customers is around contribution Okay They talk about how, you know, why should I pay you to contribute to the open source project? or you know, why should my ideas become part of the Drupal source project open source project Drupal and a Lot of you know, I like to tell the story of IBM. Does everybody knows IBM? Of course, right? Worldwide company They did something 20 years ago called the Linux Technology Center. Has anybody in here heard of it by show of hands? Great. So what they did is this huge company. Okay is they made an investment They knew that they were gonna they were gonna use Linux in their organization and actually today Something like this they have called OCTO, but it's very similar and effectively what they did was they brought into their organization All the best Linux core developers and they paid them full-time to work on Linux They made an investment in open source and IBM at the time that they did this was dying Right, they were on their way up because they were part They were they were really part of the of the these their PCs weren't really very good and there was a lot of other competitors out there that were sort of edging them out and By investing in open source today. They are what they are one of the world leaders in in open source If not the world leader really, you know in terms of what they produce and what they give to people So that's a fun story to tell you can look it up on Wikipedia and you can tell your customers that but also You know, there's an investment that they make in the future of their product by contributing back to Drupal That's an easy conversation to have right. It's easy to say, okay. Well All we really need to do is contribute this little piece, you know And here's the thing you can believe that the more that they have to come to you for work The more money you're gonna make but the truth is the more that they have to come to you for every little thing The more you're gonna annoy each other. Okay, that's what's gonna happen Like I have clients today that I've had for you know I have like a guy that I used to work with five years ago who to this day I still deal with he still sends me emails once in a while And I'm the kind of guy because I'm like always in development So I like something new and fresh and you know, whatever I'm the kind of guy that like doesn't want customers around that long Like I don't like I'm around five or ten years I know I'm like I'm a CEO's worst nightmare, but truth. Well, that's kind of how I am I like to build it and move on right now. I'm a technologist. That's what I like to do The next shiny bright thing is my new thing and So what I tend to when I tend to have conversations with customers I sort of center it around, you know if we release this into the community then you will have more developers working on this for free and Customers love the word free right and so you have to explain that to them You have to explain that process because ultimately one person cannot do it all All right. I mean we can't just have sort of you know one ten twenty. What do they say today on the keynote that it was? 1700 people who contributed to Drupal 8. Is that what I heard? Yeah, so 1700 people, right? That's not enough It's not enough. We just heard from Dries this morning that Drupal 8 will be ready when it's ready But he estimates it'll be early 2014 I don't know if anybody of you were at the keynote last year at this time But it was supposed to be when? This year now we should have already had it So so clearly and that's okay I mean Drupal open source moves a little slow But in order to in order to move it faster Yeah, he said probably a fantastic quote this morning about being I can't even quote it directly But about you know We can move quicker as one as one and we move further as a group I'm paraphrasing But the truth is when it comes to open source when it comes to models when it comes to sustainability of a customer's product They have to understand that open source process. So you have to understand that open source process You have to live it And when that doesn't work, there's really only other there's really only other one of the way you can do it You have to just beg plead prove and bribe That's really all you can do. All right, or basically stay up at night and contribute on your own time Okay, that's actually what you have to do. Sometimes you get paid to do it. So you have to do it on your own. All right All right, so this wasn't meant to be a very long session I was only meant to be about 40 minutes and looks like I'm a couple minutes under so I will open up the floor I'm sure a lot of you have customers right now. Anybody have questions This is brilliant. No questions No none Right that's I mean not yes, and I'd love to answer them But I've never had a session without questions before I you know why this isn't a very tactical session So if I had a technical session everybody would have up the mic challenging my whole technical thing in my point of view Anyway, so thank you very much for coming to this session. I hope it was somewhat enjoyable And if you liked it by all means tweet go fill out a survey Let me know what you did like what you didn't like what I left out all that good stuff and have a good time in Prague Thank you