Drupal Planet Feed https://purkiss.com/drupal-planet-feed.xml en Co-operative.club - Part II: To Drupal or not https://purkiss.com/blog/steve-purkiss/2017/03/23/co-operativeclub-part-ii-drupal-or-not <span>Co-operative.club - Part II: To Drupal or not </span> <div class="field field--name-field-image field--type-image field--label-hidden field--item"> <img src="/sites/default/files/styles/max_325x325/public/2017-03/fist.jpg?itok=lVdfAJJJ" width="325" height="244" alt="first" typeof="foaf:Image" class="img-responsive" /> </div> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Thu, 23/03/2017 - 15:10</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><p>"You'll write about this one day" she said. "and you'll make it sound like you're the hero. You should go to L.A." she added.</p> <p>Well, turns out for a number of reasons this happens to be that day, and as for the latter, I'll let you the reader decide, although to be quite honest, I don't much care either way as you weren't there, and I'm not asking for opinions. I'm writing this because I want to conclude the story about what I've been trying to create in this world whilst I am still able to. I believe there is a better, more fairer to all, way of living and that we have all the tools we need in order to achieve this change, leaving the world in a far better place than it currently is. For me, for her, for everyone. This isn't going to be an easy read, there's no pretty pictures, no subheadings and no holds barred. I'm sorry if you wanted that, I'll get back to 'normal' mode after this, but I have to get this out as it's been over ten years now and I need to move on, and this is my therapy.</p> <p>In <a data-entity-substitution="canonical" data-entity-type="node" data-entity-uuid="c3422ace-9478-4232-9a81-979fc61022ed" href="/blog/steve-purkiss/2016/12/12/co-operativeclub-history-part-i-project-blueprint-and-first-test">Part I of The Co-operative.club story</a> I explained how <a href="https://www.gnu.org/philosophy/free-sw.en.html">Free Software</a> had enabled me to connect with others through a social business network based on the <a href="https://drupal.org">Drupal</a> platform after being made redundant and having to leave London and return to my father's house. Thirteen years hence I find myself back here/there again, broke again (and more so this time round), but still with the ability to get myself out of this situation thanks to Free Software, and Drupal. The latter however I am, and not for the first time, too sure about given the events of the past 24h, and that's where I'd value your input - not just in words but also in actions. Inaction is also action, I guess we will see.</p> <p>First let's go back to where I left off last time, in Toronto, where I'd just set up a 'Test Box' which had ended up being just an expensive party and an art gallery. What I hadn't mentioned in the previous post, and which is why I found it hard to write the second part, was that I was at the time in a relationship with a girl I'd met at the <a href="http://www.bovinesexclub.com/">Bovine Sex Club</a>. Not a sex club, but a live music bar near where I was staying in Queen St. W. I'd been talking with this pretty girl and when she and her friends were going to leave I thought I'd ask for her number - something I'd never done before but being in another country knowing I'd probably never see her again if I didn't pluck up the courage I thought I would. I did, and she smiled and wrote her number down. I don't think you could've met a happier guy that night than me after that. Sadly, it didn't carry on that way.</p> <p>I invited her out on a date - one of my favourite British comedians <a href="http://www.davegorman.com/">Dave Gorman</a> was playing a gig in Toronto and I thought it would be a nice thing to go to, have a meal and all that jazz. Nothing too serious - a bit of fun to see if we still liked each other outside the dark sweaty confines of a Toronto music bar. The day came, I waited. And waited. And waited. She didn't turn up, I went to the gig alone. Dave was hilarious as usual, talking about the time when he decided to find all the people in the world with the same name as him then go meet some. Silly comedy, that's what I like.</p> <p>I decided to phone and find out why she hadn't turned up - perhaps something had happened, perhaps she had just changed her mind. She said she thought I wasn't going to turn up, that I didn't really mean what I'd said, and that she didn't want to get hurt again so had decided it was better to stay at home. Coming from a broken home myself and seeing girls get hurt by blokes at college and uni, I kinda could see a little where she was coming from and assured her my intentions were honest, forgave her for not turning up, asked if she'd like to try again and was delighted when she said yes. What I didn't know at that time was she hadn't been on meds for three years and was classed as having 'Borderline Personality Disorder' and a rapid-cycling Bipolar. Heck, I didn't even know what 'meds' were.</p> <p>We met up again, and again. We talked and talked, and I had stories of how bad the situation was living with her parents and within a very short space of time - perhaps a week or three, she had moved in with me. She seemed like she was in a really bad place at the time so although it seemed to me too soon, I thought I understood her situation and was willing to give cohabiting a go - this could be 'the one' and I didn't want to look back and regret missing that chance at that long-held dream I'd had until then of meeting someone and spending my life with them.</p> <p>She moved in but pretty soon things started to get very strange and scary. Within a week or two she was crying uncontrollably and cut her wrists. Not in a blood-gushing out gonna die right now way, but enough to make it bleed. I didn't know what to do - I was in a country I didn't know, and I'd never experienced anything like this before. I actually ended up phoning my mum, who of course ended up worried out of her mind and could only suggest we go to the hospital, which she didn't want to do. I saw other scars and found out in time this is how she 'released the pressure'.</p> <p>I slowly discovered the truth about her diagnosis and medication or lack thereof, and heard stories about how she became to be on that medication - her parents said it was a 'chemical imbalance', however her story was one of a guy at school who had tried to attack her when she had shunned his advances towards her and who had later been jailed for some predatory activity. I don't know to this day what the actual truth is, on either side of the tale. Being rapid-cycling meant she was fine half the day and, to be brutally honest, batshit crazy the other half. She was highly intelligent, with a degree from one of the top universities and previously a fairly high-powered job until that fell apart when her body started to become immune to the lithium she was taking - or not, I don't really know, that's just what she told me.</p> <p>We used to argue a lot when she'd accuse me of everything under the sun - from looking at other women to me being a 'dictator' because I wanted to create these open source cafes. I remember one night when she decided to rip up my copy of <a href="http://www.free-culture.cc/">Lawrence Lessig's 'Free Culture'</a> book one page at a time and shove each page under the door of the lounge where I'd barricaded myself in so that she couldn't physically attack me. The rapid cycling meant she'd calm down in a few hours and all would be sweetness and light again, as if nothing had happened. But it had, and I couldn't forget that, which annoyed her more as I didn't feel at all in the mood for anything unlike herself, which I guess is another part of the being on her high. So the cycle would repeat. She'd punch holes in the wall then go to the DIY store and fix them up after. All things I look back at now and think "why the hell didn't I get out of that situation straight away". But you don't - well I didn't. I can't explain how it feels to be in that situation - all I knew is she said she'd be out on the street if I'd chucked her out, and I didn't know why she had this distrust of me that I'd go off with other women. For a start I hardly had the chance because we never seemed to leave the house and when we did it was a nightmare as she'd have a breakdown in the middle of a store and of course everyone would stare at me with that 'what this nasty bloke had done to this poor girl' look in their eyes.</p> <p>I tried to go to networking meetings - after all I was only on a visiting visa and was there to see if I could connect and build business - but we only managed to go to a few and I wasn't getting enough business in to survive, and my credit cards by this time were maxxed out. The way I usually get business is I'm connecting with people every day, writing blog posts, and talking about Free Software. I couldn't do that in this situation where everyone we met was a 'bad person' if they were male, or a potential threat if they were female. I used to go for long walks when she was mad at me for apparently looking at another girl or whatever I was supposed to have done - I'm a networker and an essential part of that is talking to other people so yes, I talk with other people and I'm friendly with them - doesn't mean I want to go to bed with them. I used to go to the local library and read up on Borderline Personality Disorder and Bipolar. I read a lot, and the main thing I came away with was that saying you didn't have it was a symptom of having it. She said she didn't have it, and the meds were just to dumb her down, she would be able to cope without them.</p> <p>I managed to convince her that if we were to have any future, it was going to have to be going back on the meds again - at least for a while as I simply couldn't deal with fighting every day and perhaps a different combination than before might help. She went back on them - a horrible to see process as she had such a high dose she was asleep for most of the day and yes, all they seemed to do was make her inactive so she wouldn't think or do much.</p> <p>This too didn't last long though, she'd not take her meds some days, and things got progressively worse until one day during another attack she'd bitten my arm. I went to the clinic as it had started to go green and the doc said I'd gone just in time as human bites were worse than snake bites. Then another time she'd knelt on my hand so hard she broke it and I had to go to hospital, with her all the time saying "it's not broken" when it plainly was. I see that every time I look at my hand with the knuckle where it shouldn't be and the bone sticking out also where it shouldn't. I've had guys 'joke' to me suggesting that's where I punched her - if only they knew. I only ever restrained, which I hated having to do but there's pretty much nothing else you can do apart of course from getting the hell out of that situation but I hope others who have experienced similar will understand. I guess that's why I've found it hard to talk about at any length until now, because I fear what people assume. What has helped me finally write this is mostly down to people in the Drupal community who have been brave enough to talk about their situations, they know who they are and I'd like to thank every one of them for doing so, I don't think they realise just how much it helps others like me have the confidence to even consider doing this when I still worry hopefully unnecessarily about potential retribution and consequences.</p> <p>Now she was back on the meds but not doing too well with me there her parents rented her a flat but that didn't go too well either, when I went to visit she hadn't eaten for days and thought she was hearing screams from down the road and had to go investigate. We decided that we wanted to be together(!) but that would involve being nearer to where her parents had moved to out on the lakes a couple of hundred miles up the lake in Kingston, Ontario. We briefly moved into a bed &amp; board place but moved out soon after as I'd managed to find a local client who of course I couldn't work in the office as I was 'just visiting', but I have clients all over the world so work remotely and they don't employ me. That didn't last long though so I went into their office 'just visiting', but that didn't last long either as she'd be on the phone every five minutes.</p> <p>I started to make connections locally and garnered quite an interest in my project - they had a 'Think Kingston' campaign who said the local uni wanted closer ties with the town as they hadn't invested much of late and this sort of thing could help - in fact so much they said it would be good to have one central location and one in each of the six suburbs to connect the community. No one person would put up the money though so it was a case of continually networking until I brought enough interested parties together to make something happen. I met some interesting people there too as Sun Microsystems had a big office there and had offered me all the computers I'd needed which was great as they had keycards so students and office workers could plug in and be on the same systems they used. I even met one of the first people to have a Unix business who said my main issue was going to be getting everything up and running at the same time - the events, the tech, the food, etc.</p> <p>At the same time the half/half life was still going on and although she was managing to go to a few Cognitive-based therapy meetings it wasn't working. One day I got a black eye - I'm not sure if it's the same day I was asking about food regulations to the librarian who happened to be female but I have a feeling it might've been. I decided to call the police but they said there wasn't much they could do, she could only admit herself back in hospital. We went to the doctor, she ended up getting up on his desk waving an umbrella at him and shouting racist comments at him. She went back into hospital, I saw her trying to bend her fingers back, and she ended up talking her way around the weekend staff as they weren't as trained and she was back, attacking me. I left. My friend who I'd met through the networking in Toronto offered to pay for my flight home but when I went back to Toronto I decided, in my stupidity, to go back again.</p> <p>It didn't last long again, I'd be in the kitchen making food and I'd forget something so the light ended up being switched on and off a couple of times - this apparently was me making secret signals to the next-door neighbours wife who I was apparently having an affair with. I kept myself busy online and it was at this time I rediscovered Drupal as one of the fairly high-profile sites I'd built back in the UK had been rebuilt in Drupal - I'd built it in another Open Source CMS called XOOPS. I had a pretty similar view of Drupal as many still have "Ugh, Drupal", however this time I decided to look under the hood at the code and saw that it was just as - if not more so - capable as the system I'd been involved with back in the dotcom days. I saw an API with business logic infused, and all the hallmarks of a system which anyone could use, whether they could code or not. It was modular, capable, and could build anything. I didn't however realise there was a whole community behind it as every time I went to the forums I'd get questions about who I was talking to and they'd end up with the usual fighting, so I just saw the code.</p> <p>Things go worse again and I found myself many nights out in the freezing temperatures wandering around until she'd calm down. My friend again paid for my flight home, but this time I went. I had no baggage, just a big winter jacket and they thought they'd caught their terrorist so searched and searched but all they found was my tired soul waiting to get the hell out of there.</p> <p>There were good times, but there were also many very bad times. I haven't covered everything that happened because it's amazing how much did in such a relatively short period of my life and yes I know it's only my side of the story, however I'm not the one who was on meds who then went off them and one of the first things I did when I arrived home was get checked out as she told me that it takes one to know one. I went through interviews and they said I was 'normal'. To be honest, I don't know what normal is, I don't think there is such a thing as normal. I do know where we were in Canada was around the area where the "pill for every ill" started with placebos and the medical world doesn't know much of how our brain works. I also know the culture there seems to be if you don't fit into the 9-5 lifestyle you're obviously in need of meds, whereas here in the UK it's getting more that way but different.</p> <p>So why am I writing about this now? Because I find myself again questioning whether Drupal is the right tool I want to use for my project, and this time I feel it has relevance with the experience I went through and the knowledge I gained about the wonders of the brain. A prominent member of the Drupal community whom I've had the pleasure of meeting a few times has been 'ousted' due to his personal beliefs. The founder of Drupal, Dries, says he is doing it to protect the values of the community, however the facts as they are available at the time of writing seem to show that nothing nefarious has actually happened, only that there is the perceived chance that something might happen. I don't follow these beliefs, in fact I hadn't heard of this specific community previously and I, along with many others, do worry about it. I have seen vulnerable people and know how people can manipulate situations, and even though there is consent in the situation it is often a blurry line as to whether people are in a capacity to really know what that is and whether it's a good thing or not to be doing it. My personal view on the situation is though that it is none of our business and it should not be affecting the project, it is however and that's a problem. We now have a situation where another person who has practically dedicated their life to the project is now in a place they don't want - or need - to be, all in the name of 'inclusion'. </p> <p>Our project recently ousted another member of the community who has given similar amount of their life to it and who now has a gaping hole where friends, fun, and code used to be. I made an official complaint but was met with the usual brush-off and told that there was not much they could do with "undiagnosed autism". So we are now the medical establishment diagnosing people?</p> <p>We are all human beings with our quirks and strange ways. Free Software (more specifically <a href="https://copyleft.org/">Copyleft</a> software which ensures users freedom both up and downstream) gives people the opportunity to be included in society no matter who they are and we need to preserve that. If Drupal is to decide who is and who isn't allowed to be part of this, without them actually doing anything which is breaking the law of their respective residential countries, then where does this leave the platform? A Minority Report way of thinking will just keep it to a very small minority. Yes, we need to look after our community and make it as welcome to everyone - and from what I've seen of the actual work this community member who's just been ousted has done he's been nothing but a boon to this. He hasn't - as far as we've seen - done anything illegal or untoward, yet we are branding him otherwise, causing untold damage to his reputation in the process. And that's not fair.</p> <p>So why do I even bother with Drupal? Aren't there other things I can use? Sure, but none are as advanced as Drupal is in terms of the ability for non-coders to build what they want in order to be able to communicate via the medium of the internet, for free. Drupal although a much smaller share of the market currently than other certain systems, has freedom built in its DNA. I don't have to buy a plugin to do what I want, and if I don't know how to code something it doesn't stop me from using modules or giving something to the community from my skill set which will help others and perhaps others will then be more likely to help me when I need help with something that needs some code. Drupal is pervasive in government institutions and education, and, if the community is scaled organically then we have the opportunity to change the world with it. We can save tax money by sharing code, local communities can be involved in building and maintaining the technology they need, and people who want to build their own businesses and lives online can do it freely and often without code. On top of that, creatives can publish their videos and art and writings online, and we can build a framework for freedom. But not in this current configuration, not when it is seemingly the business players who are supported. Those same ones who many in the community have had to help rescue projects from and been squeezed out because they don't conform to the 9-5 mentality so don't fit into the current corporate structure which seems to be gradually taking over this project. Those corporates who we hear find it fine to <a href="https://nateofnine.com/2016/12/04/a-tale-of-two-communities/">take people to strip clubs</a> to help make a sale but then say they are ousting people because they don't align with their values. Well, I don't value taking people to strip clubs just to win a sale - does that mean I'm not Drupal enough? If so, then I don't really want to be part of that, I find that way more harmful actions than any alleged future actions.</p> <p>Back to the story, because that's why I do support Drupal as it enabled me to earn and live. I began to build my life back up again. I rented a room in my sister's ex's house who lived just down the road from her - they had a son together so were still in contact regularly. I had my newly found interest in Drupal and I did various things to promote it as I thought it was amazing. There was a site which you could post up short videos of 12 (I think) seconds so I used to do my 'module of the day' and tried to make them entertaining - I think I still have them somewhere. But it was when I put the word 'Drupal' on my LinkedIn profile that things changed as I had a call the next day from a London agency who needed some 'urgent' help. It was for a sponsor of the triathlon who wanted a Facebook app integration so people could support their friends. The agency had promised the app but it was late, however they were under contract to deliver so although I built it, it was only live for a day before the event itself. This was my first experience of the digital agency world, there have been many to follow, most of which haven't been that good, which is why <a href="https://www.youtube.com/watch?v=MtmCnpninEs">I believe the agency model is dead</a>.</p> <p>The project gave me enough money to move to Brighton - a place I'd heard was the epicentre for the web in the UK so thought it would be a good place to set up my open source coworking cafe concept, and I could fund through my Drupal work. I'd made a little block for my website which displayed my LinkedIn profile and as Drupal had helped me, I decided to post it to the site so others could use it too. I got no response (well I did six years later after talking about it), so I still didn't see the community side of it much. I networked like hell in Brighton and within a short time had gained a couple of high-profile sites to work on, one of which the developer I worked with decided he was moving to London and gave me a couple of his old projects he didn't want to deal with any more. Not realising the amount of work involved with one of these projects I ended up massively underquoting but I'd promised the work so I did it, ending up moving out of my flat into a small bedsit to save money in the process. When I handed over the project I said "you'll need to work with a designer now as I've only selected rounded corners" but still to today all they've done is put a front-page on the site. It's still one of the projects I'm most proud of - it's got more information on children's books than amazon and is highly respected in the industry. I'm surprised it's still going, but my background has always been making things work well so they don't break - not so good for business I guess but I like to take pride in the work I do. You can check the site out at <a href="http://booksforkeeps.co.uk/">BooksForKeeps.co.uk</a>.</p> <p>I finished that project and did more networking, including going to an event called 'Connecting Innovation' where I saw Ken Thompson present his work on 'Virtual Enterprise Networks' in which he details how the organisations of the future aren't the big monolithic corporations but instead networks of smaller organisations, freelancers, and so on. He'd written a book including all the models he'd used in practice to build these Virtual Enterprise Networks around the world, for example when NASA wanted to deal with suppliers from outside the U.S. but had no interface for doing this. To me it was an eye-opener as this was precisely how the Drupal community worked. I had set up a local Drupal Users Group and we all shared code and information. I still hadn't been to an 'official' Drupal event, I simply didn't have the funds at the time so only dreamed of attending.</p> <p>Business grew and after less than a year in my tiny bedsit with an outlook of a wall I managed to have enough to move out. I'd been checking the property ads every day and this amazing-looking apartment with floor to ceiling windows became available in the centre of Brighton which I thought would be a great base for my business, not only the Drupal side as I worked from home but also to start something up on my vision of the open source coworking cafe side. It was central, I could fit a few people in for lunchtime talks, all was good. So I thought, more on that later, first back to the Drupal.</p> <p>I also had enough funds to attend my first DrupalCon, this year it was in Copenhagen so I decided to go. It was weird though, there were all these people sitting around long tables working away at their laptops to which just confused me - why would they go to the trouble of paying to get to a conference then not go to the talks and just sit tapping away at their computers? Didn't make sense. </p> <p>I was keen to talk to someone 'in power' about my findings about the Virtual Enterprise Networks as I thought I'd be bringing them a potential answer as to how they could spread 'good' Drupal by connecting and helping each other out - just as we did with the code and at our local meetups. I saw someone go past who I recognised from the Drupal Association so asked him if there was anyone I could talk to at the DA about this, to which he replied that they were 'all too busy working for large corporations' and brushed me off. I was later told he was 'autistic'. My friend who I was with at the time just looked at me, both of us in surprise. I resigned myself to finding out what else was going on and decided to stop at one of the tables where people were working away and find out what was going on. That's when I first met Angie/webchick who said they were testing the upgrade script from 6 to 7 so I could try that on a site I'd built. The only one I had was the children's book site however I was in my 'module buffet' phase so there were masses of modules on it (tabs within mini-panels within panels and so on!) and surprisingly it didn't work.</p> <p>This experience didn't stop my pursuit of what I thought was trying to help the community solve its scaling issues though and I started to go to more events. I went to my first DrupalCamp in Cambridge and that's where I met a team of guys who were building native CRM in Drupal which I thought was amazing. Having come from an integrated platform previously I could see how this made Drupal much more of a full product and how essential to the framework it could be. I ran a couple of DrupalCamps in Brighton at which one of them they did a 36 hour BoF on the CRM which again I thought was amazing as this was how software should be debated and developed, by collaboration not everyone in their own pigeon hole making their own version of some common functionality.</p> <p>I started to go to the CxO meetups which were happening as I wanted to achieve two things - grow my own business so I could build my vision, and connect the Drupal business as that would support my vision too. A platform where we commoditise common functionality across the world - every business vertical has similar functionality required, it's the people and the products that are the differentiators, unless you're a software company. I tried out one of the exercises from the Virtual Enterprise Network book at one of the CxO events - the synergy discovery - but I'm not a good person at this type of thing and when getting people to put up post-it notes of their skills they all just put Drupal. The idea is people obviously have all different skills, experience and expertise and the goal is to group and cluster those and connect with complementary skills so as to create collaborative products and services. I was told at the time by the organiser that it was the way of the community - if something didn't work then people simply weren't interested and the idea wasn't worth pursuing. I realise now that's just another person's opinion, you have to have belief in your own thoughts in order to make things happen.</p> <p>So, on we go and a few more CxO events down I find we're all talking about the same issues over and over again. Where the code is shared and discussed online via the drupal.org infrastructure, the business people don't use the complicated site and so don't have anywhere online to share. They do collaborate in 'secret' in their own groups, and as I went to more events they all seemed to get further away from community and more 'business', with restrictions on the size of company you had to be to attend, which basically pushed me out of the picture. At one of the last events I went to though I met another Director of the DA and it was at the time when they first introduced community elections for an 'at large' Director. I asked how many had applied to which I was told three, to which I though did no-body care and decided that night to apply. With my following I had grown on social networks by helping others out with their Drupal issues due to the seeming lack of support channels due to many businesses making money from the support side so no want to fund and/or foster the free ways of support, I was voted in and within a week I found I was now also a Director of the DA.</p> <p>Obviously having to cut a very long story short before we all fall asleep, I didn't get much in the way of communication or involvement in my time there, I did manage to help push through a Marketing &amp; Branding Committee which wasn't really supported that much, and I found myself realising that the agenda was there to stay and they had their way and that was it, I was just seen as trouble. I remember once sitting around the table when they were talking about revenue and how much the individual memberships didn't bring in (look at how they compare to total revenue) and the founder's remarks were "well why do we even bother having them". Now I understand that could've been taken out of context, but then I look back and wonder - this guy is running the fastest growing private software company in the country and has known pretty much nothing else apart from uni and successful career, I don't think he's ever had to really worry about where his next meal is coming from. He's obviously good at business, and seems to be good at people skills when in public, so I gave him the benefit of doubt that I'd just either heard it wrong or taken it the wrong way. Drupal may have been released by him, but it's his army of contributors who build and maintain it, many of whom work tirelessly and often for free in their spare time, even those who do get paid to work on it.</p> <p>So skipping along, when my term finished at the DA I decided to set up a co-operative online as I'd met many people from many Drupal businesses who were more than keen to help market the project and product better, and who lacked a place to communicate and gather online. Sure there's the partner networks and the DA itself they can sponsor, and the events, but they're all run by someone else with their own agenda - a Virtual Enterprise Network is where the members own and operate the group, much like a co-operative if you look at something like Mondragon Corporation. This was surely a better way to scale than a top-down infrastructure which seemed to result in many issues - helping some get richer but at the expense of making the product and processes harder for the rest. I set up the site, I set up some skills tags and people connected and did business but I failed to capture the business model myself and at the time had high monthly costs so could not keep it going without revenue. I asked for membership dues, of which about four people paid, of which was the equivalent to about half a day's Drupal development, so didn't last long.</p> <p>By that time I was quite disheartened so I kind of went back to just doing projects but then in 2014 an opportunity came along to rent an annexe opposite the coworking space in Brighton which I had been a member of on-and-off since its inception and as I'd heard that this space was now full I thought this could be an opportunity to finally get my space up and running. I took a gamble and paid the deposit and rent, and worked on two projects at the same time to ensure it had some time to get up and running whilst the overspill from next door came forth. This didn't happen, and I didn't have the time to do enough promotion. The building wasn't exactly right either, and it ended up being a costly three-month experiment and I lost over ten grand. We did however have another spectacular party, and I was proud to host the first VR Brighton events, something I shall never forget being a huge VR fan. As for getting enough things up and running at the same time - well apart from not having enough time, the space wasn't big enough to do that and so it never would've been the dream. I knew most of that but was hoping at least I would be able to get enough members to cover costs and start to build the rest. </p> <p>I then started to do my first commercial collaborations with the CRM guys and decided it was something I should promote more as it was profitable and gave me time to work on my other project as opposed to if I was sitting there building sites all day. I was once again too confident and as DrupalCon was in L.A. that year I decided I should go and spread the word about CRM, and I wanted to see the place in real life too, after all, I'd been told I should go there by you-know-who so I thought what the hell and booked my tickets. I guess I was on a high too as I decided as the hotel was the main cost I would take along my friend as he was looking for a way to change his work and I'd been extolling the virtues of Drupal to him and saying how it helped anyone build a career if they wanted to. He obviously just saw it as a free trip, but I don't regret offering, I just need to choose more carefully whom I offer opportunities like this too if I am ever in a position to again.</p> <p>So L.A. was fun, and we did a BoF on the CRM where a few people turned up - all from very large corporations, but nothing came of it as I didn't have the team around me to make something like this happen. I returned back to Brighton and carried on the continued search for work and odd project. But times were different now and many agencies had grown up and the available pool of work was less. I didn't do front-end so I worked with others on that, but one kept continually letting me down and mocked me when I worked with them again at the fact I had, and in the process had practically lost me any faith that client had in my judgement by then. </p> <p>Then came along winter and my flat where I was day in day out became infested with mice. This had happened a few years back but this time they were back with a vengeance. The landlord flat refused to do anything proper about it, a temporary fix was just that, and I was getting ill with the stress of it all. I managed to get some work with a local digital agency but they were another one who knew little about the product they were building so I had to, for the sake of the client's project, do the opposite of what they asked. I implemented a rock solid architecture of custom entities, purposely making it hard for them to mess around with and as far as I know the site is still based on those. They wanted to play around with different views and lots of front-end stuff, which you can do fine if you have the base to do it on, but if you start by doing that you soon end up in trouble. I couldn't deal with their want of me being in the office all the time as nothing apart from seemingly useless meetings happened all day then at the end of the day they'd asked how it was going and I'm sure they must've thought I had a double working on the stuff whilst I was at their inconsequential meetings they just wanted a face at. I ended up working all over the Xmas period with mice running around my flat making me more ill, and I turned up the day they all came back from hols with their architecture and recommended they find someone now with more front-end skills than myself. I recommended a couple of people, they eventually found someone who is still there today but I hear they don't have the project any more. That was the idea that it would be handed over to the client to maintain, but it was months overdue so I don't know what went on after I left. I do know that when I tested the site out I did a search which resulted in no results, that wouldn't have happened if they'd followed my advice using facets and bottom-up SOLR search from actual data instead of top-down "nice looking" but fundamentally flawed implementation they made. Such is life.</p> <p>So I'm back in the flat, mice running around, and a landlord who refuses to fix it. Why is this relevant? Well it took me four years to get a replacement boiler - the original one made loud bangs and I ended up boiling water for years as I gave up trying. I think this is relevant because I see a pattern of me getting into interdependent relationships where I'm the submissive and I let people dominate me. Do I do it for kinks? No. Am I vulnerable? Maybe - stupid more like and just need to raise my own self-confidence and put up a few barriers, at least know when to get out of situations and when to say no to stuff. I said no to my landlord, I refused to pay him rent until he sorted out the mice problem, and he then decided to use the law to evict me from the flat as laws to stop this were only introduced in 2015 and my contract with him was from before that.</p> <p>Back on the Drupal side I decided to try again with a different angle, and bought the domains drupal.contractor and drupal.agency. I set up basic sites and I emailed Dries explaining what I was doing and asked if it was ok to use the domains to which he replied that as long as they're community run and open to anyone then he doesn't see a problem. There are many people using the drupal name in domains, some agencies, some I've reported before but nothing has been done about which people have told me about and I've reported to support them. I was excited to talk about these at DrupalCamp London however directly after the camp there was a marketing event which three UK agencies went to and represented themselves as Drupal, and had a domain drupalagencies.co.uk which they used for lead capture, claiming on the site that "we collaborate on the code but compete in business". I found this to misrepresent the community - for a start it made them look like the only people in the UK who provided Drupal-related services, and so I complained on twitter asking them to take it down, which they didn't. Someone DMd me details of the domain owner, and that it had been purchased in the name of his defunct company. I decided to tweet that information and I was then accused of harassing this person who was misrepresenting the community. I also found out that although the year before it had been a co-marketing event with the Drupal Association, this time they had took it upon themselves to rock up under the Drupal name unofficially. It was me however who was called a 'super troll' and reported to the Community Working Group. I had lengthy discussions with them about the fact it wasn't me misrepresenting the community, but they said that was not their remit and they were just focusing on my apparent harassment of this individual. I voiced my opinions then about the CWG and DCOC being a protection racket. I was found to have violated the Code of Conduct to which I asked so what happens, they said nothing. There was no 'punishment' as such, I had just violated it. Even if there was a 'punishment' like banning me from the system, Drupal is GPL licensed software so I would still have access to the code but of course that is not even half the story with Drupal. I don't believe anything happened to the companies involved, I did hear though that the process and recommendations as to how to deal with trademark violations was changed as a result, but I don't know what the details are, all I know is I seem to be the one who came out worse for something someone else had done who then hid under the Code of Conduct. I stepped back again with my work for Drupal - why bother if they're just going to protect the few business friends.</p> <p>I was finally evicted in June last year and served me notice that he was taking me to court. I wrote up my defence, including all the info about the boiler and how he'd left me without a gas safety certificate for months when the original one finally failed it. His solicitor sent me copies of all the certificates which I thanked him for as it proved my defence, but he still didn't back down, although eventually dropped the case late last year when he realised he wasn't going to win as the evidence was stacked against him. I decided it wasn't worth trying to stay in Brighton and pay expensive living costs when I couldn't afford to start my other business vision due to the extortionate rents there (higher than Silicon Roundabout in London), the town was full of rubbish and with 1 in 69 people homeless the streets were lined with those I wanted to help but couldn't because there was no funding for that sort of thing down south. Sure, if you want to make an internet of things gadget which will suck up lots of data you can sell to the system you'll be fine, but do something which will benefit many but not maybe those who are currently rich getting richer and you're sod out of luck.</p> <p>As funny as the world goes, I decided to stay with a friend for a week before returning back to Essex to stay with my folks for a while until the next DrupalCamp visit or going abroad opportunity came up (couldn't see the point in staying in expensive UK), and whilst staying there I found my dream space to set up my vision. It was the White Hart Hotel in Lewes and it was where Thomas Paine used to attend the debating society there. He used to talk about his ideas and vision but it was only when a fellow attendee said he should write about them and publish it that he ended up writing Common Sense, attributed to helping the American and French Revolutions. I believe we are now at this point with the internet - we have all the tools we need to communicate, share our ideas, and co-operate together for a better world, we just don't use them. We have the corporate version of the internet where it isn't their interests to help you but to grow their own business. So instead of having local spaces where people can go make use of things like video studios, rooms for presenting in front of people and streamed online, art on the walls and online, and everything else I cover in the <a href="https://co-operative.club/concept">Co-operative.club concept</a>, we have instead a surveillance society and a few corporations at the top with many working to keep their systems going for little or no pay.</p> <p>The Lewes building is £2m. It could work from crowd-funding, but quite rightly I see you need to build community first and grow from there. So I've thought about starting one up here, but first just building the network online and running a few events locally to get things up and running. I didn't do that before because I thought it would take too long but here I am 13 years in, £60k or more in debt, and a community I'm not even sure I actually should be worrying about as although it's kept me alive for years, I've never wanted to build websites and that's where I fail on the business side because my heart simply isn't in it - I enjoy helping people improve processes by making the most of software, not making swishy looking virtual castles which look pretty but don't do much under the hood. On top of that we have all the community issues which people again and again talk about and a community which isn't equipped currently to collaborate at scale as a community, they all seem too happy to take the quick cash, keep in their top-down partner networks and everything's ok. Well, I personally don't think that's going to work in the long run, and I'm more upset about the vision we won't be seeing if it just turns totally corporate. You can't pay people to have passion, and some of us aren't equipped or indeed want to 'have a job'. </p> <p>I want to help people, including myself, enjoy the time they have on this planet by exploiting free software. It's the <a href="https://libreplanet.org/2017/">LibrePlanet</a> conference this weekend which I hope some will be streamed as it will give me a boost I need. I was lucky enough to attend when I first went to Toronto back in 2005 before all the crazy stuff hit the fan, that's where I met Larry Lessig and one of my heroes Eben Moglen who I believe is one of the best orators in the world. I spoke to them about my concept and they 'got it', and that counts for a lot to me. Or is that just my attachment issues again? Am I still suffering from worry about being abandoned when my parents split up? Should I just "get off my arse and do a job?". Well, on the latter front I've a little money due, but no - no job in the immediate future, once I decide on a direction I'll be out there networking like crazy whether on or offline, I don't have the want for trinkets I used to have as I realise that's not what makes me happy and there's a lot cheaper places than the UK I can go live. I did start a <a href="https://youtu.be/MtmCnpninEs?list=PLAWrYTz66w82UALp3kkEtY2tmjsUUMN5N">daily vlog on my project</a> but I've focused it on the Drupal community as I thought that would be a constraint good enough because we do already collaborate. But now with all the issues I'm not sure of whether it's worth pursuing without some serious backing, and it seems everyone's hunky dory with the way the business runs, down to the everyone-except-for-me clapping at the recent talk mentioning we should stop all the debate about Free vs Open when it is so obviously not an insignificant thing, Open Source is for business, Free Software is for life.</p> <p>If we don't scale Drupal the community and it does turn totally corporate we lose out on another 16 years of innovation in integrated modular web app systems - we are only now getting back technically close to where we were back in the dotcom days. There is no other system like Drupal around, and I believe we have a stronger community than the small minority of 'players' who control the strings at the top. It is up to the community to decide whether they wish to continue to support these people who only have business on their minds when they refer to community. If things are to change then the system has to change. For sure, we need stable systems of support, but when they act as single points of failure we need to build distributed, resilient networks of support which will counterbalance that power. We have none of that right now which is why I've been trying to build a platform co-operative. We can, as a community, collaborate at scale and still keep our values as a community, business and everyone else, but it doesn't come easy, it takes a lot of faith, effort, grind, and time. And of course cash and people willing to give it a try in order to build a better future for all not just the few and the foolish. Our current top-down control by a few which we give our power to works fine for them but is broken for many, it has been for many years and I don't see that changing anytime soon unless there's a new, scalable way built. As I've said before, all I've been trying to build is the modular business model on top of the modular software. It is possible, if people want it. But people don't like change. It doesn't mean anything has to change with the current set up, but a new, scalable structure can be built over time which will support that existing one and a whole load more too. Drupal, currently, is limiting its own growth - it's a shame those in power don't see that, they don't seem to see further than their own IPOs. That's too bad, as what they're building on the software side - and much of the community, is an amazing way of living in this world but they seem keen on destroying that.</p> <p>Anyway, that's the ramble. I was going to write this up much nicer but it's been three months and that hasn't happened until today, I'm just sad it took such a shitty event to make it happen and I hope things will change. I certainly need to as I keep seeing buildings which would be perfect for connected community spaces.</p> </div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/creativity" hreflang="en">Creativity</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/drupal" hreflang="en">drupal</a></div> <div class="field--item"><a href="/tags/drupal-association" hreflang="en">Drupal Association</a></div> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> </div> </div> <section> <h2>Comments</h2> <a id="comment-15"></a> <article data-comment-user-id="0" about="/comment/15" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1490373358"></mark> <footer> <article typeof="schema:Person" about="/user/0"> </article> <p><span rel="schema:author">Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Mark (not verified)</span> on Fri, 24/03/2017 - 15:51</span> <span property="schema:dateCreated" content="2017-03-24T15:51:44+00:00" class="hidden"></span> </p> <a href="/comment/15#comment-15" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/15#comment-15" class="permalink" rel="bookmark" hreflang="en">Why not get a grant to start a social enterprise?</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Sounds like what you need is to get a business plan together and apply to Business Gateway to fund a social enterprise business. </p> <p>I think an open source cafe is a good idea and fits well into social enterprise. A place where freelancers can come to work together or any person/company interested in OS web development can come learn something new. You can run meetups and talk sessions. Get interested investors to come to these events. In addition, you can setup sessions to anyone looking to run an alternative Operating System (ie, Linux) for those that have old laptops or reused PC (ie, helping the environment). </p> <p>Regarding, the recent controversy with Larry Garfield who was force to resign; I don't know him personally nor do i know what the facts are for Dries to take such drastic measures. But from what i have read, it seems Mr Garfield questionable private life got out into the public domain and this obviously reflects badly on the Drupal brand and corporate responsibility (i doubt t was the code of conduct in the community). Yes, it is all about the brand, not community anymore. </p> <p>I don't know the complete story regarding Larry Garfield and what he has done or didn't do to offend a certain group of people. But from what i have read on his blog, i strongly disagree with his believes. However, i think he is aware were to draw the fine line between what he believes in and what is expected of him in society to not mix it up with his work life and treat people as equals. So he should be given the benefit of the doubt and see if he does live up to expectation of treating everyone as equals despite their differences in values. After all, he hasn't hurt anyone physically or mentally and have contributed so much to Drupal, i think he should have been given a chance to prove his private thoughts does not cloud his judgement with the Drupal community values. </p> <p>Dries is the board member on the d.o Association and the founder of a corporate, and amazing made it such a big successful of it which is great. However, isn't it a conflict of interest? can he serve the community and not bow down to the pressures of the investors or build something more of an acquia's product line?</p> <p>it is a difficult one because there have been so many benefits from companies investing their time and finance into what make Drupal it is today. But who is it for now?</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=15&amp;1=default&amp;2=en&amp;3=" token="rNqCNcQQOXfzbkOZt-lpzNIGd8-5jMcJXc7motnrTtc"></drupal-render-placeholder> </div> </article> <div class="indented"><a id="comment-16"></a> <article data-comment-user-id="1" about="/comment/16" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1490374378"></mark> <footer> <article typeof="schema:Person" about="/u/steve-purkiss"> </article> <p><span rel="schema:author">Submitted by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span> on Fri, 24/03/2017 - 16:52</span> <span property="schema:dateCreated" content="2017-03-24T16:52:58+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/15#comment-15" class="permalink" rel="bookmark" hreflang="en">Why not get a grant to start a social enterprise?</a> by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Mark (not verified)</span></p> <a href="/comment/16#comment-16" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/16#comment-16" class="permalink" rel="bookmark" hreflang="en">Grants</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Hi Mark,</p> <p>Thanks for your comment - one of the missing parts of this story is my first efforts when I moved to Brighton was indeed to enquire about grants for such a project. I was in contact with the main local tech business support groups there who flat out told me I wouldn't be able to get funding for such a project because Brighton was down South and wasn't 'needy' enough. Soon after that same group secured £200k of funding to run a digital festival for two years and used some of those funds I believe to set up their own space which they use for events and such like. They've received further funding to expand their work and are now a 'digital catapult' centre and the place where 5G networks are going to be trialled. They are also into IoT and do many talks about how to protect your IP. The issue is not that the funding isn't available, it's that the current top-down business system only understands the proprietary way of things. So you end up with situations where councils are pressured to make their data 'open' so that companies can make apps and products in order to use that data and sell it back to the councils. The funny thing is there's so many more ways to make money when your raw material is free, they just don't see that well yet, but of course they will as soon as more make money from it.</p> <p>Last year I also met with Caroline Lucas about funding for this as there was an old pub lease going cheap right opposite the job centre in town. I was met with the same response. I also enquired about Lottery Funding but received no response. I realise I need to communicate this better. I may try locally, however I believe this would find funding "up North", I am just unsure as to whether I personally want to be the other side of the country, amongst other decisions. I actually think it would do well as people coming from a manufacturing background who are used to working with physical materials as opposed to virtual ones may help 'round' the product better as they are used to having to get things right otherwise there's physical waste - in the virtual world there's millions of lines of code and much of it dubious quality hence why so many data leaks happen.</p> <p>But thanks for reminding me, I shall look into which areas have current funding available and for what activities. If I can do it locally to start I think I'd prefer that - I kinda understand the 'mentality' here so I think that helps.</p> <p>As for the situation with Larry, you're right that it's about how things are seen and I do believe there is conflicts of interests, however that's the way it is and I don't see much will change if anyone else were in there, I believe we need to build new institutions for the way we now work in the commons-based peer production world, which is why I've been trying to set up a platform cooperative. I believe we still need the DA, but we shouldn't rely on them for *everything* as they simply cannot do that.</p></div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=16&amp;1=default&amp;2=en&amp;3=" token="aa82bESdGQKCWi8uMRdL3XKUwTNWpzYQezXugPbYeDs"></drupal-render-placeholder> </div> </article> <div class="indented"><a id="comment-17"></a> <article data-comment-user-id="0" about="/comment/17" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1490379715"></mark> <footer> <article typeof="schema:Person" about="/user/0"> </article> <p><span rel="schema:author">Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Mark (not verified)</span> on Fri, 24/03/2017 - 18:08</span> <span property="schema:dateCreated" content="2017-03-24T18:08:00+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/16#comment-16" class="permalink" rel="bookmark" hreflang="en">Grants</a> by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></p> <a href="/comment/17#comment-17" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/17#comment-17" class="permalink" rel="bookmark" hreflang="en">Guess you should have…</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Guess you should have followed your gut instinct and applied for funding instead of approaching the local tech group. But i understand, sometimes you can't do it alone.</p> <p>You never mentioned about social enterprise business? since it means you are given something back into the community, i would have thought it would be easier to secure funding?</p> <p>"I believe we need to build new institutions for the way we now work in the commons-based peer production world, which is why I've been trying to set up a platform cooperative."</p> <p>Not sure if it will work? Most Drupallers are too hardcore and loyal to change places. Look what's happening with BackdropCMS. A lot of Drupal developers were complaining about Drupal 8 at the time. But still they stuck around d.o and just moan instead of getting behind Backdrop. There's been talk about 'getting off the island' throwing around recently on d.o, that is some irony... lol!</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=17&amp;1=default&amp;2=en&amp;3=" token="5isjmYk2KTZEcK1HtfaH0Ku5AQT2eBHTBu8nta57bes"></drupal-render-placeholder> </div> </article> <div class="indented"><a id="comment-18"></a> <article data-comment-user-id="1" about="/comment/18" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1490380238"></mark> <footer> <article typeof="schema:Person" about="/u/steve-purkiss"> </article> <p><span rel="schema:author">Submitted by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span> on Fri, 24/03/2017 - 18:30</span> <span property="schema:dateCreated" content="2017-03-24T18:30:38+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/17#comment-17" class="permalink" rel="bookmark" hreflang="en">Guess you should have…</a> by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Mark (not verified)</span></p> <a href="/comment/18#comment-18" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/18#comment-18" class="permalink" rel="bookmark" hreflang="en">Social Enterprise</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Well, they were the ones saying they can access funding for you, hence why I approached them! They're pretty good at getting it... for themselves and then distributing the crumbs that are left - it's just how 'trickle-down' economics works.</p> <p>As for Backdrop, I think it does have its place - for those who don't like change. Personally I love Drupal8 as my pre-Drupal days were OO. I couldn't understand most of D7 so did hardly any actual coding whereas I've a few - 11 - commit mentions in Drupal8, the first about four years ago now when I split up the password strength and password matching code. I like the work going on over at https://gitlab.com/drutopia - they have an interesting co-operative model and I'm trying as best as I can to follow and see if I can base on that distro but as with every other distro it's hard to match speed of development when working on different projects, especially at such early stages. I do believe distributions are the way forward though.</p> <p>I've been to a few events at the local university recently and met a professor there who's into social enterprises. They're supposedly the most entrepreneurial university so I sent their biz connections contact a long email last week offering to teach Drupal for free. I've heard nothing back.</p> <p>But yes, funding, I shall check it out again!</p></div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=18&amp;1=default&amp;2=en&amp;3=" token="jVhirhDd91eC6XV9WsQl4PLehFgKsOgX9j8i4FgvScs"></drupal-render-placeholder> </div> </article> <div class="indented"><a id="comment-19"></a> <article data-comment-user-id="1" about="/comment/19" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1490380318"></mark> <footer> <article typeof="schema:Person" about="/u/steve-purkiss"> </article> <p><span rel="schema:author">Submitted by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span> on Fri, 24/03/2017 - 18:31</span> <span property="schema:dateCreated" content="2017-03-24T18:31:58+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/18#comment-18" class="permalink" rel="bookmark" hreflang="en">Social Enterprise</a> by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></p> <a href="/comment/19#comment-19" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/19#comment-19" class="permalink" rel="bookmark" hreflang="en">Social Enterprise</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>I should contact that guy direct I reckon, see what he says. </p> <p>Do not worry, the journey doesn't stop here ;)</p></div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=19&amp;1=default&amp;2=en&amp;3=" token="pFM0YP_kPDKouK2EtUL6FOjpmw7K7wAbolYISDNrUb4"></drupal-render-placeholder> </div> </article> <a id="comment-20"></a> <article data-comment-user-id="0" about="/comment/20" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1490392343"></mark> <footer> <article typeof="schema:Person" about="/user/0"> </article> <p><span rel="schema:author">Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Mark (not verified)</span> on Fri, 24/03/2017 - 20:06</span> <span property="schema:dateCreated" content="2017-03-24T20:06:47+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/18#comment-18" class="permalink" rel="bookmark" hreflang="en">Social Enterprise</a> by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></p> <a href="/comment/20#comment-20" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/20#comment-20" class="permalink" rel="bookmark" hreflang="en">Personally, i will not offer…</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Personally, i will not offer free training in hopes to get work out of them later. Based on past experience i realised, it was unprofessional and makes it look like you are not confident at what you do, hence why you are afraid of asking to be paid for the skills you have acquired over he years. </p> <p>It may seems like a goodwill but these institutions are also businesses at the end of the day so treat them that way.</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=20&amp;1=default&amp;2=en&amp;3=" token="mjQjIFksqJ6ZjM-qsZdXnbdMOPuJzQMyYgUZM2WJMiA"></drupal-render-placeholder> </div> </article> <div class="indented"><a id="comment-21"></a> <article data-comment-user-id="1" about="/comment/21" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1490392889"></mark> <footer> <article typeof="schema:Person" about="/u/steve-purkiss"> </article> <p><span rel="schema:author">Submitted by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span> on Fri, 24/03/2017 - 22:00</span> <span property="schema:dateCreated" content="2017-03-24T22:00:47+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/20#comment-20" class="permalink" rel="bookmark" hreflang="en">Personally, i will not offer…</a> by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Mark (not verified)</span></p> <a href="/comment/21#comment-21" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/21#comment-21" class="permalink" rel="bookmark" hreflang="en">Free Training</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>It was more of a Global Training Days thing, I've done it before in Brighton &amp; a few of us trained about 50 people. It's spreading the Drupal love, not in the hope of work. You always meet people through it.</p> <p>There were quite a few students at one of the events who have biz ideas so helping them to understand how they can use Drupal to build their sites (and products for some) would be a Good Thing.</p> <p>My income comes from doing collaborative commercial projects with other Drupal suppliers, mostly of late the CRM people, we're working with Friends of the Earth Europe at the moment &amp; just got the OK from them to talk about it so will be writing about that. Probably not on this site though, I think I obviously now need to keep this one a bit more personal and have a 'business' one, settling on the co-operative.club, think I'll merge DrupalDynamics into that so I'll have drupal.co-operative.club and drupal.co-operative.club/dynamics so I can separate bits out.</p> <p>There has to be a free level of free software, it's about the opportunity - I wouldn't have been able to do stuff unless there was a free level, and training is incredibly tough to sell, plus you get a different type of person showing up. Just my view I guess!</p> <p>Thanks for your input, it's made me think more about how to execute this time round, most appreciated and if I sound like I'm brushing off any ideas then that probably means they're really cool and I'll end up going with them ;)</p></div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=21&amp;1=default&amp;2=en&amp;3=" token="Ggjh53CjBkn-negFdWrONd_yCijxV8Mb1wMgJ0wJqUw"></drupal-render-placeholder> </div> </article> <div class="indented"><a id="comment-22"></a> <article data-comment-user-id="0" about="/comment/22" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1490451520"></mark> <footer> <article typeof="schema:Person" about="/user/0"> </article> <p><span rel="schema:author">Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Mark (not verified)</span> on Sat, 25/03/2017 - 13:49</span> <span property="schema:dateCreated" content="2017-03-25T13:49:36+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/21#comment-21" class="permalink" rel="bookmark" hreflang="en">Free Training</a> by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></p> <a href="/comment/22#comment-22" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/22#comment-22" class="permalink" rel="bookmark" hreflang="en">&quot;...Global Training Days…</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>"...Global Training Days thing, ..."</p> <p>Ah! that makes a bit of difference from saying "...teach Drupal for free". </p> <p>I've ran a few Drupal meetups in the past where we taught people what Drupal is and all you need to know on getting started with Drupal. It was in hopes to spread the words and networking for new opportunities, as you pointed out.</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=22&amp;1=default&amp;2=en&amp;3=" token="rJ2syhXxSTzPtO3f-xSV6Fs1M_Nsn-df2k3Ognh9R1A"></drupal-render-placeholder> </div> </article> </div></div></div></div></div></div> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=73&amp;2=comment&amp;3=comment" token="7FycrUQswYBd0O_Ooie4CmmRDBiCYg9EsoCa7NQwC44"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2017/03/23/co-operativeclub-part-ii-drupal-or-not" data-a2a-title="Co-operative.club - Part II: To Drupal or not "><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2017%2F03%2F23%2Fco-operativeclub-part-ii-drupal-or-not&amp;title=Co-operative.club%20-%20Part%20II%3A%20To%20Drupal%20or%20not%20"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Thu, 23 Mar 2017 15:10:55 +0000 Steve Purkiss 73 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2017/03/23/co-operativeclub-part-ii-drupal-or-not#comments DrupalCamp London 2017 - 5th and best yet! https://purkiss.com/blog/steve-purkiss/2017/03/07/drupalcamp-london-2017-5th-and-best-yet <span>DrupalCamp London 2017 - 5th and best yet!</span> <div class="field field--name-field-image field--type-image field--label-hidden field--item"> <img src="/sites/default/files/styles/max_325x325/public/2017-03/dclondon_2017.png?itok=unoSkjby" width="300" height="100" alt="DrupalCamp London logo" typeof="foaf:Image" class="img-responsive" /> </div> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Tue, 07/03/2017 - 21:15</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><p>Two days back and I find myself still exhausted from an exhilarating <a href="http://drupalcamp.london/">DrupalCamp London 2017</a>!</p> <p>To me this felt like the best one so far, with a number of contributing factors - the new entrance and layout to the our host City University I believe was a major contributing factor with all but the keynotes on one subterranean floor which meant much less wandering from floor to floor between sessions and far more opportunities to chat with fellow attendees it being all in one space. Crowded at times for sure, but much better than spread over multiple areas - this is one thing I've learned about Drupal events, the more close together everything is the more interaction it creates.</p> <p>With Drupal 8 development fully in swing and growing in functionality at a pace no previous versions experienced due to the adoption of semantic versioning (i.e. 8.1, 8.2 and 8.3 very close as we speak) there's also a lot to catch up on, and being from an OO background before my Drupal days I find the sessions far more interesting. Many of my camps of late I have spent in the sprint rooms or the <a href="https://en.wikipedia.org/wiki/Birds_of_a_feather_(computing)">BoF (Birds of a Feather)</a> sessions, however this weekend I went to quite a few sessions which I'll provide summaries of below.</p> <h2>Friday - CxO Day</h2> <p><img alt="Photo of DrupalCamp London 2017 CXO Day audience and presenters taken from the back of the room" border="0" data-entity-type="file" data-entity-uuid="211e4135-1ead-4cd9-8259-efbc359852d5" hspace="5" src="/sites/default/files/inline-images/dclondon_cxo_day_0.jpg" vspace="5" class="align-right" />Billed as an event primarily aimed at Drupal service providers I attended the first few CxO days however as the ticket price increased and as a veteran of many events I felt I knew most of the attendees already (I'm a networking junkie!) I had decided to skip last year's CxO Day and sprinted instead. This year though they had a much more affordable ticket price for freelancers and charitable foundations/NGOs (they may have had it previously too but I must've missed it) so I decided to attend as I thought the audience would also be a little more diverse with the new tickets. One of my current clients is an NGO, so thought it would be great to meet more as they do operate quite differently to for-profit businesses and it's good to understand where their needs differ.</p> <h3>Organisational Stupidity</h3> <p>The day started off well with an inspiring session on the 'stupidity paradox' from City University Professor of Organisational Behaviour <a href="https://twitter.com/andre_spicer">André Spicer</a> where he outlined the trouble with organisations wanting to hire the best people but not providing the best environments for them to excel in. One of the examples he covered was the Ford Pinto issue they had where the petrol tank was badly placed and caused explosions. When it first happened an employee had a hunch there was something serious but due to peer pressure of other work colleagues saying did he really want to take it further up through all the management levels and so on, he had decided not to however of course it turned out there was and it caused untold amounts of mayhem.</p> <p>Having been independent for the past 16 years I don't have much love for the corporate infrastructure so found these stories quite amusing and pondered what better ways there are to organise. I've been investigating cooperative infrastructures for the last few years and find they have many issues too, most seem to be around decision-making at scale. A third way - and the way Drupal works - is <a href="https://en.wikipedia.org/wiki/Commons-based_peer_production">Commons-based Peer Production ('CBPP')</a>where both individuals and organisations alike collaborate on products. This works well with the production of software, although does suffer from a few issues around influence however due to the openness of the framework the opportunity is there to make changes if you want to, and of course forking of projects as a last resort is always possible although not favoured, especially with a community the size of Drupal! CBPP is not perfect though, especially when it comes to issues around the <a href="https://en.wikipedia.org/wiki/Tragedy_of_the_commons">'Tragedy of the Commons'</a> - something which I am trying to address by creating a <a href="http://platformcoop.net/">'Platform Coop'</a> where community members can collaborate on initiatives and issues at a commercial level - hop on over to <a href="https://drupaldynamics.com/">DrupalDynamics.com</a> if you'd like to get involved.</p> <h3>A tale of Drupal woes</h3> <p>We then moved on to the second session from <a href="https://twitter.com/iamreevo">Paul Reeves ('reevo')</a> who took us through his Drupal journeys, focusing most on his time at mega-corp Viacom working on their various media sites, mostly the MTV UK ones. Paul seemed very nervous but I don't know why, he'd presented before at a CxO event and sure knows his Drupal stuff!</p> <p>Paul detailed how over the years they had adapted Drupal for their needs and created a system they called 'NOAH' (Node Object Affinity Hub) as content they created went out to a number of different websites and systems, for example the text snippets of info you see appearing at the bottom of the screen when a song is playing.</p> <p>When Paul presented previously in 2013 I asked whether they had collaborated with any industry peers on this functionality as to me it seemed something which was fairly generic and could be useful to others and of course would help share the workload of building and maintaining something of this size in terms of complexity and functionality. Paul said they hadn't but would like to - after all, it's Viacom/MTV's content that provides their competitive edge, not the code they use for their systems. Sony understood this years ago and that's why we have the Drupal Views module as they wanted functionality their non-technical people could use and decided to contribute the outcome back to the Drupal project, and views is now part of core as of Drupal 8.</p> <p>Sadly it seems this sharing didn't happen and seems to be a major contributing factor as to why MTV UK and Viacom's other brands are now moving away from Drupal. I feel bad as I've said for many years we need to help people at the industry level to share more - it's only by sharing code that Drupal is what it is now, and to build and maintain such functionality as NOAH provided is not an easy task, especially with a team of four or five people as Paul had. Neither I or anyone else has successfully created a comfortable environment for sharing at the industry level yet. <a href="https://www.acquia.com">Acquia</a> have their 'LSD - Large Scale Drupal' initiative however that's pretty closed so I don't know what goes on much there. There's also the <a href="https://www.drupal.org/project/thunder">Thunder Drupal distribution for publishers</a> and a sprinkling of others including the interesting <a href="https://www.drupal.org/project/farm">FarmOS</a> however I do believe that with Drupal 8's more OO architecture and adoption of many tools to make distribution creation and maintenance easier such as composer, configuration management and continuous deployment, we have the opportunity to re-visit a re-address this area by creating more industry-specific distributions. Linux has various distributions, but Drupal's can be geared towards business functionality as that's where the value is with Drupal, it's built-in business experience from many years of real-world implementations as opposed to other systems where functionality is made in order to sell licence fees - most Drupal functionality is built because someone needed it.</p> <p>I was a little disappointed as the session ended as I go to Drupal events to be uplifted about Drupal, not to be disappointed that we failed in a situation, and although it's good to present these retrospectives, perhaps it was the time slot being the first Drupal-related session and just after an inspirational session that made me feel like that. I also thought it wasn't a great intro to Drupal for anyone who had attended from 'outside' of the community, especially with the new tickets for charities and NGOs. I realise the event is billed for Drupal service providers, I do feel as it's on a Friday it's going to attract those interested in adopting Drupal and although the camp organisers said they'd changed the line-up due to feedback from previous years, the people providing the feedback aren't necessarily the 'customers' you want to follow the needs of 100% - a point which was covered in the next session.</p> <p>When asked what he'd do differently if given the chance, Paul did point out collaboration as a key ingredient, as mentioned now we have better tooling hopefully we will be able to change these sorts of scenarios in the future. I still see a lot of duplication when it comes to areas like local councils - unfortunately the mix of business pressures in terms of competition and ability to sell hours of time, along with no independent bodies funding core Drupal initiatives it is not an easy nut to crack - again something I'm trying to address partially with <a href="https://drupaldynamics.com/">DrupalDynamics</a> - we will see. As economic pressures mount, hopefully the want to share and lower costs the idea will become more attractive to industries.</p> <h3>What to build next?</h3> <p>The third and final session of the morning was by <a href="http://www.benfinn.uk/about.html">Ben Finn OBE</a>, who gave a presentation on how he calculated which were the most important features to create for the music software that he created then sold for millions. I found much of the content very interesting, including the part I mentioned earlier with regards to who you listen to - often the loudest ones aren't the ones who actually make you money. I did find it a little hard to work out how to apply his methods of calculation to our Commons-based peer produced software where we are not selling licence fees - it is an entirely different minefield of a multitude of options and it would've been good to get his thoughts however I realise this is not his area of expertise. It did make me happy I'm no longer working in the proprietary software world and do have control over the features I want, although I left the session wondering what actual value the talk had to the Drupal world - I realise they wanted to make the talks more diverse, to me this was a little too diverse. Interesting nonetheless.</p> <h3>A Trip Down Memory Lane</h3> <p>After eating the substantial lunch (food is *always* good at the CxO day!) I felt a little deflated and tired from the very early start so I decided to skip the afternoon and take a short walk down the road to <a href="http://exmouth.london/">Exmouth Market</a> where I lived 17-odd years ago back in the dotcom days when I worked for a J2EE software company which basically did the same as Drupal but proprietary and in Java. We had the first modular web app software with modules covering content management, commerce and collaboration along with a web management interface where you could create your own content types... sounds familiar ;)</p> <p><img alt="A montage of views of Exmouth Market, a small street in EC1 full of shops, restaurants and bars" border="0" data-entity-type="file" data-entity-uuid="6513f238-48a0-4ff9-a1f2-03f41519effe" hspace="5" src="/sites/default/files/inline-images/dclondon_exmouth_market_0.jpg" vspace="5" class="align-right" />Exmouth Market is one of these little havens in the middle of a city which you wouldn't necessarily know but is a small community unto itself. I walked past my old flat (pictured, above the tattooist), which was next door to a blue plaque commemorating <a href="https://en.wikipedia.org/wiki/Joseph_Grimaldi">Joseph Grimaldi, the first 'clown'</a> and visited my old local <a href="http://www.cafekick.co.uk/">Cafe Kick</a>, having a little giggle on the way at the sign next-door for 'Barber Streisand'. It was nice to see an old friend too as the Portuguese lady who runs the kitchen there is now approaching her 20th year of service. We remarked on how things had and hadn't changed, I sipped my drink, then went to check in at my hotel only to return to Cafe Kick later to meet up with my colleague so we could catch up on the next day's session we were running and on old times as although he lives in London it's been two years since we last met in person back at <a href="http://montpellier2015.drupaldays.org/">Drupal Developer Days Montpellier</a>.</p> <p>Happy hour at Cafe Kick is 4-7pm 7 days a week, so with £2.50 beers fun times ensued although I noticed a considerable difference in the clientele this time round with it mostly being students as opposed to city workers as it mostly was when I lived there, and the music was far more commercial then the cool tunes I had been used to in days of old - I'd discovered <a href="http://www.manuchao.net/">Manu Chao</a>, <a href="http://www.stgermain-music.com/">St Germain</a> and many others there!</p> <h2>Saturday - The Main Event</h2> <p>After a disturbed night of sleep and a much needed Full English at the <a href="http://www.thistle.com/en/hotels/united_kingdom/london/thistle_city_barbican/index.html">Thistle Barbican</a> (the closest hotel to the venue, just a short 5 min walk - book on their site for a free breakfast!) the camp 'proper' kicked off with a keynote from <a href="https://twitter.com/nmdmatt">Matt Glaman</a> who works for <a href="https://commerceguys.com/">CommerceGuys</a>, creators of the awesome <a href="https://www.drupal.org/project/commerce">Commerce suite of modules</a> and associated native e-commerce functionality for Drupal. I say awesome as, unlike some others, I believe native commerce is the way to go for Drupal so fully support their efforts - I prefer my clients to invest their budgets in virtualising their business models as opposed to continually paying for external integrations often into SAAS products which may change their APIs at any time or disappear off the face of the earth if their business model changes or doesn't work. Integrations may be more lucrative for the supplier but costly for the client in the long run - integrated is the way forward - IMHO of course and based on my previous experience with winning clients back in my J2EE days which not many also experienced so guess I see it from a different angle.</p> <p>I was a little hesitant at first as this keynote was different than many others previous but I was extremely glad they did make this choice as Matt really hit the spot talking about his journey from delivering beer to delivering Drupal. Coding had been a hobby of his and something he didn't even think he could make a living out of, let alone one which enabled him to live anywhere he liked and travel the world in the process. It was a refreshing change from the 'normal' keynote we have at 'camps and 'cons and gave a really good insight into the Drupal community and how it can help people of all walks of life build a future doing something they enjoy. It's certainly helped me massively over the last thirteen years since I first encountered Drupal through the now-defunct ecademy.com business networking community which ran a heavily customised version of Drupal, and his talk provided a great intro to those who may have only just joined the community perhaps as part of their jobs. Too often people don't really understand the community and this was the perfect intro so a big thanks to all who made it happen, and of course to Matt for coming along and sharing his journey with us!</p> <h3>The Future of Content and the Unknown Consumer</h3> <p>First session of the day for me was from <a href="https://twitter.com/richardjones">Richard Jones</a> whom I know well from the <a href="https://groups.drupal.org/brighton">Drupal Brighton Group</a> I'd set up many years ago when I first moved to Brighton. Richard always seems to be doing a talk somewhere on Drupal and has provided much support to the Brighton group over the years and I was interested to see his latest talk 'In Real Life'.</p> <p>Richard covered the multitude of devices which now deliver content as opposed to just the website and how we can prepare and cope for these - mostly down to understanding that content is separate from design, something many from a print background need to understand more as you never know where or how your content is going to be consumed - by a talking box in your kitchen or as one interesting example he showed where a billboard in Piccadilly Circus showed a kid pointing at aeroplanes as they flew above, listing out the actual flight details as they went past, as seen in the video below:</p> <div class="video-embed-field-responsive-video form-group"><iframe width="854" height="480" frameborder="0" allowfullscreen="allowfullscreen" src="https://www.youtube.com/embed/RYOUvIeSqsw?autoplay=0&amp;start=0&amp;rel=0"></iframe> </div> <p>Richard's talk was entertaining and informative, and anything which helps make people think twice and again about putting anything other than content in their content is a Good Thing in my books!</p> <h3>The Empty BoF</h3> <p>In the coffee break between sessions I went along to a BoF session as it was entitled 'How we can help other projects' and being run by the organisers of the camp. As they had just become - and the first DrupalCamp to do so - a <a href="https://www.drupal.org/association/supporters/partners">Premium Supporting Partner of the Drupal Association</a> I thought I'd go along and see if they'd be able to help out with the <a href="https://drupaldynamics.com/">DrupalDynamics Platform Coop</a> I'm creating to support the community. There's many areas I'm going to need assistance with apart from just gathering members - all the operational sides of building a cooperative and advice on legal sides of things, and so on.</p> <p>Sadly the BoF had been cancelled and removed from the whiteboard but not the website so I sat in an empty room for a while, but eventually caught up &amp; understood with the hectic day it was just not possible to squeeze the BoF in too and we agreed to catch up in the future to chat about it.</p> <h3>Change your life with Xdebug</h3> <p>Second session of the day for me was a practical session on getting Xdebug set up with <a href="https://twitter.com/ed_crompton">Ed Crompton</a>. Despite having spent many years previous to my Drupal days using debuggers, I've never managed to successfully get Xdebug working on my machine. I've been close many times but just didn't manage to get everything hooked together right so I was determined I wasn't going to leave the room until I did, not sure if Ed appreciated that but with his help and that of his colleague we finally figured it out so big thanks to Ed &amp; co, now I don't have to keep all those variables in my head lol ;)</p> <h3>More than a CMS: Native Drupal CRM &amp; BPM</h3> <p>After lunch it was time for the session I had organised for my friends who've been building native CRM &amp; BPM functionality in Drupal for 7 years now but have little coverage in the community for a number of reasons. They're not a VC-funded operation and although they've tried before to work closer with the community to incorporate their work they've been knocked back for various reasons unknown as what they've built could seriously place Drupal in a league of its own. Sure, Drupal provides content management functionality but it's a platform, and when it comes to CRM functionality it shines, especially with Views as they provide a great interface for creating reports. Again I guess I see many of the benefits due to my previous experience with integrated functionality - we used to win deals all the time as our competitors used to propose a number of different packages plus integration costs whereas we could provide a set of common modules and only charge for the business-specific functionality to be built on top, thus providing a complete 100% solution instead of having to maintain a number of different packages and relying on other people's business models for your core business model. The integrated approach IMHO is far better and enables clients to virtualise their core business models, then connect to any beneficial third party software as and when they so wish.</p> <p>I believe Drupal trying to compete just in the CMS marketplace is not a winning formula in the long run and doesn't really market what Drupal does well, providing sovereignty over code and content, and a platform for functionality which is integral to the operation of today's web-based businesses. With integrated content management, commerce, and CRM/BPM, Drupal stands out in a league of its own. There are many far more polished CMS systems out there, but none which include the sort of functionality Drupal can provide organisations of all levels, and the more we support those integrated projects like the modules <a href="https://twitter.com/yautja_cetanu">James</a> and his team at <a href="http://freelygive.org.uk/">FreelyGive</a> have been working on, the better Drupal the product will become. That takes a bit of forward-thinking though, and many of the business people just go for what's already proven and easy to implement - to me that's never been the way Drupal the project works and as I'm in this for the long term I'm more than happy to provide what support I can to such efforts, hence organising this and a few previous sessions we've delivered.</p> <p><figure role="group" class="align-right"><img alt="James and I presenting native Drupal CRM &amp; BPM at DrupalCamp London 2017" border="0" data-entity-type="file" data-entity-uuid="a04e5114-d8ed-42f1-ac20-e41e078367e9" hspace="5" src="/sites/default/files/inline-images/dclondon_native_crm_bpm_0.jpg" vspace="5" /><figcaption>Photo courtesy @wmortada<br /> https://twitter.com/wmortada/status/838028390225620992</figcaption></figure></p> <p>I provided a short introduction and James then gave his talk, which sadly had changed since I'd last seen it as he'd spend the previous day with his commercial manager (I had suggested his time would be better spent networking with the CxO attendees that day as many agencies were there who could be potential implementers but hey, I can only do my best to advise!) and to me seemed to be a bit OTT on the sales side saying how much money there is to be made providing this functionality to clients and not enough of the 'meat' of what it is they've actually built, with only a couple of screenshots at the end which, to be honest, aren't great as it's software developed by developers and lacks the more polished design of functionality that's out there in the community and being used by many people like many of the other CRM options there are in the Drupalsphere.</p> <p>This was a shame as having now worked with James and his team on a number of commercial projects I've had nothing but amazing feedback from clients who much prefer the integrated nature as opposed to them having to fiddle around with often huge external CRM systems and not being able to get exactly the information they want, or having to go through often manual workflows of exporting data in CSVs, manipulating in spreadsheets then importing into other systems in order to gain the management insights they need. Instead with native CRM functionality the exact information you need is there, in realtime, when you need it, and Drupal's built-in functionality of content types, fields and views make it super-simple to customise to your exact requirements. They have implemented systems with over 200k contacts using this system and built an amazing event ticket system as many of their clients have particularly complicated needs where for example one person is in charge of organising the tickets and others pay deposits and so on. Due to the integrated nature those contacts who then later want to perhaps change their details can do so and the system will acquire the details and create full user accounts for them on the site.</p> <p>In Drupal 7 they've had to do some pretty complicated code to create a 'userless user' but what they have built means you can build systems which simply cannot be created using the other CRM offerings as they all depend on a 'contact entity' as opposed to this system which uses the notion of a 'marker entity' which stores the data about contacts. James did detail a number of systems like this they've created, such as one where they have thousand of people camping and need to be able to organise which part of the camp people are going to be in based on a number of factors - a process which used to take two to three months which now only takes a couple of weeks with their system in place.</p> <p>I've signed James up to do another talk on this at <a href="https://seville2017.drupaldays.org/">Drupal Developer Days Seville</a> in a few weeks which as a previous attendee he knows is more developer-oriented so will bring out more of the 'meat' one would hope. I think I put it down to they're just really keen to get more people involved and it's hard to know how in the Free/Libre Open Source Software world without talking about how it can make them money. Drupal 8 will hopefully make things a lot easier as it provides a much easier architecture to work with, so they now have the <a href="https://www.drupal.org/project/decoupled_auth">Decoupled Auth</a> project along with <a href="https://www.drupal.org/project/contacts">Contacts</a> providing the base for their work. James has shared a google doc of the plans for a Drupal 8 MVP to make things more visible and easier to use for other community members so looks like it won't be long before things will move which is great.</p> <p>Ever since I first met them a few years back when I recorded their <a href="https://archive.org/details/DrupalSciencecamp-CrmInDrupal-CivicrmPartyAndMore-RobertMumford">Native Drupal CRM session at DrupalCamp Cambridge in 2012</a>, then hosted their 36-hour BoF at our DrupalCamp Brighton I've been a big fan of their work - it's how Drupal should be built and is a shining example of the amazing things Drupal can achieve as a platform and so much more than just a CMS. Sadly it's not always the best technical solution that wins (I always cite the <a href="https://en.wikipedia.org/wiki/Atari_Jaguar">Atari Jaguar</a> as an example of this - the first 64-bit games machine you've never heard of!) but the one which is marketed the most, the latter is where I've been trying to help, and hopefully my work with <a href="https://drupaldynamics.com/">DrupalDynamics</a> will also provide more support too in the long run.</p> <p><a href="https://www.slideshare.net/stevepurkiss/more-than-a-cms-native-drupal-crm-bpm">Click here to view the slides from "More than a CMS: Native Drupal CRM &amp; BPM"</a></p> <h3>Native Drupal CRM BoF</h3> <p><img alt="Photo of the CRM BoF we held at DrupalCamp London 2017" border="0" data-entity-type="file" data-entity-uuid="6042dac2-cff6-4d6d-a2ce-24bb2fd641b6" hspace="5" src="/sites/default/files/inline-images/dclondon_crm_bof.jpg" vspace="5" class="align-right" /></p> <p>The guys had booked a BoF session for the coffee break after the next session so I hung out with them for a debrief and although the feedback I had from a couple of people I knew was good, that's kinda what your friends are going to say. I guess the perfectionist in me is saying that - one person did turn up to the BoF, but of course it would've been nice to have a room full of people ;)</p> <p>All in all I'm glad they did give the presentation - getting anything noticed in Drupal is not always an easy thing, especially when you're covering an area as big as CRM. It's also a continuous effort - you've got to keep at it and be present as much as possible. I've built a number of communities up over the years and it does take a huge amount of effort, but I believe it pays in the long term as the more people you have using your stuff, the better your product becomes and the more help you get.</p> <h3>Freelancers BoF</h3> <p>To finish off the day I went to the Freelancers BoF <a href="https://twitter.com/farez">Farez</a> organised. These BoFs have become a regular thing and we generally discuss the same things but this time I took the opportunity to hand out sets of the profile cards I'd designed along with my awesome illustrator I met back in Brighton, <a href="http://www.lucyirving.com/">Lucy Irving</a>. I love her work and she seems to understand my ways of thinking, and more importantly puts up with my crazy rants (as you obviously do too if you've made it this far lol!) - I highly recommend her work if you need anything done!</p> <p><img alt="Photo of the DrupalDynamics profiles - Dynamo, Blaze, Tempo and Steel" border="0" data-entity-type="file" data-entity-uuid="da47d6f9-6fbe-4a7b-85ce-16c4c4880f7c" hspace="5" src="/sites/default/files/inline-images/dynamicards.jpg" vspace="5" class="align-right" />I explained the four different characters and how they are associated with four different frequencies - <a href="https://twitter.com/drupaldynamo">Dynamo</a> - Spring energy always asking the question 'What?' which I am, is all about the ideas, promoting other people's products and services, and good at starting things but not so good at finishing hence the need to work in flow with other profiles. Then there's <a href="https://twitter.com/drupalblaze">Blaze</a> - Summer energy who's all about connecting with people and is always asking the question 'Who?'. <a href="https://twitter.com/drupaltempo">Tempo</a> - Autumn energy and all about the 'When?' and 'Where?' and is concerned with the timing of things, very down to earth - total opposite of my Dynamo energy - my sense of timing is awful at best! Finally there's <a href="https://twitter.com/drupalsteel">Steel</a> - Winter energy and all about the system and the details.</p> <p>I first discovered this system through ecademy.com which I mentioned previously was my first experience of a Drupal site where I met Roger Hamilton who has his system of 'Wealth Dynamics', essentially all based on the <a href="https://en.wikipedia.org/wiki/I_Ching">I Ching</a>. There are numerous profiling tools out there, but this is the only one I've found which really lets people discover what their 'flow' is. For example, although I can code and have done for many years, I am definitely not the person you want sitting in your office all day coding. I thrive when I'm promoting other people's products and services, and whenever I do projects like this the result is always far greater than even I expect so that's why I'm continually working towards focusing on that as a business model, along with my <a href="http://www.nickheap.co.uk/articles.asp?ART_ID=210">'core process'</a> - another tool I discovered through my ecademy connections and came out as 'fostering connections', which totally described what I do both in terms of technology and people.</p> <p>I believe this profiling is something essential to us being able to collaborate at scale with others around the world. When you work closely with people, perhaps even in the same office, in time you get to know what the person is like but with the disparate nature of our community we often don't get the chance to do that and this helps us discover quickly who we could be teaming up with in order to achieve results. Many in our community, especially freelancers, do *everything* whereas if we teamed up and stayed in our flow we could collaborate and be able to sustain our lifestyles without the usual thing that's happening that people end up giving up and going back to employment or long contracts because they can't survive on the feast and famine environment they create by trying to go it alone.</p> <p>So anyway, I gave the cards out and explained about the <a href="https://drupaldynamics.com/">DrupalDynamics</a> project and how the previous incarnation worked well with matching skills tags (see <a href="https://gitlab.com/drupaldynamics/website/issues/2">this issue on GitLab</a> for more background and forward thinking on that) and how we can promote our services and collaborate on products there but I'm not sure I managed to explain myself very well as people were still asking about how we could continue the conversations after the event - I guess we will see, I'm going to be continuing to build the system at pace now anyway! It happens at every freelancer BoF we have, also all the marketing meetings over the years. ATEOTD the *.drupal.org infrastructure is good for sharing code and is the reason Drupal is what it is today, but when it comes to collaborating at scale and having discussions of a less technical flavour it's really hard to get traction on there, so instead of just talking about it for years I'm going ahead and building it, but this time with a business model attached so I can sustain it!</p> <p>If you want to find out your profile, register on the <a href="https://drupaldynamics.com/">DrupalDynamics website</a> and follow the one-time login link which will then show you a link to <a href="https://www.geniusu.com/">GeniusU</a> where you can take a free test to find out which profile you are then paste your GeniusU profile link back into your DrupalDynamics link so we know which profile you are. The free test only takes a few minutes and I believe it can help anyone improve their life by knowing what their 'flow' is - many don't follow their flow as it doesn't seem like work when they do (like me typing now heh!). The GeniusU also has more products but you don't have to buy anything it's just I can't link the test up unless I pay loads of money which I haven't got for a partnership so I'm hoping in time we will have enough members to attract more interest from Roger's crew to build a partnership. These four profiles are only one part of the education, there's much more to it and I hope others will join me on my journey through it as I've learned a lot about how I'm going to build my legacy - I also think many of their members would benefit from Drupal systems so plenty of opportunities to be had on all counts! Their community reminds me much of Drupal - doing something good but often misunderstood, meets regularly offline and sits around tables collaborating on projects, and so on.</p> <p>Finally on this topic I thought I'd explain why I decided to make these profiles a required field and thus a requirement. First, it's free so doesn't preclude anyone joining, and second to be honest I'm tired of trying to collaborate with people, wondering why things aren't moving as I had imagined, then finding out it's simply because I didn't know what frequency they are, for example a few days after I submitted the CRM session I finally managed to get James to do the test as he hadn't wanted to as I'm sure many others out there feel but seriously just do it. Turns out he's Steel energy and I watched Roger's video on 'Your Losing Formula' which I've embedded below where he says the last thing Steel wants to do is go out and meet everybody I just need to analyse everything! Also Steel is metal energy and chops down my Dynamo wood energy, so every time we brainstorm my ideas just get shot down every time. The worst thing about this is it's not personal - it's just the different energies, so whatever you think about this system just give it a go as I've as much belief in it as I have of Drupal and I've been in both communities for 13 years now but this is the first time I've brought them together. I've been to many Drupal events around the world and tried my hand at many different parts of Drupal wondering where I 'fit in' but it was only last year when I was looking back and realised this is where my life experiences fit in, bringing the WealthDynamics to Drupal, hence the name <a href="https://drupaldynamics.com/">DrupalDynamics</a>, so do <a href="https://drupaldynamics.com/user/register">join me on this journey of discovery</a>!</p> <div class="video-embed-field-responsive-video form-group"><iframe width="854" height="480" frameborder="0" allowfullscreen="allowfullscreen" src="https://www.youtube.com/embed/7HQUBwEWcpw?autoplay=0&amp;start=0&amp;rel=0"></iframe> </div> <h2>Sunday Sessions</h2> <p>After the big night out on Friday I didn't stay that long at the Saturday social so missed out on lots of singing and dancing I see, but was up bright and early for <a href="https://twitter.com/HornCologne">JAM</a>'s keynote. Jeffrey's a well recognised figure in the community having presented at seemingly every Drupal event there is so it's always good to see what his latest topic is about, this time it's diversification and raising the level of services you're providing clients. So not just talking about Drupal - in fact not necessarily mentioning Drupal at all - but the value you're providing for clients instead of just coding websites. He went through a number of examples like <a href="https://roomify.us/">roomify.us</a> which provides hotel booking systems all based on Drupal, and a QA tool <a href="https://probo.ci/">probo.ci</a>. The gist of the talk was to help raise what we talk about with clients so we're not just moving things around a page of a website which many can do, but focusing on what our specific areas of expertise are. It's the generic platform nature of Drupal and its ability to provide any number of solutions which enables us to do this, and fantastic as we are only on this earth once AFAIK so we might as well be the best we can. So thanks once again JAM for another interesting and inspiring talk, you rock the Drupalsphere!</p> <h3>Configuration deployment in Drupal 8</h3> <p>Although I understand the concepts of the configuration management system, and indeed it's very similar to how we used to do things back in my Java days, I haven't used it that much yet in complicated scenarios so I went along to this session to find out more. <a href="https://twitter.com/gambry">Gabriele Maira</a> took a great approach to splitting up the various use-cases of configuration and made sensible separations between different parts of configuration, for example often you'll want things on development but not in production, there's parts you don't want clients to be able to change, and so on. The <a href="https://drive.google.com/file/d/0ByHewtGL2_TlWFNCVkVoWFpvNjA/view">slides for Configuration deployment in Drupal 8 are already online</a>, however things are moving fast in this area as best practices are still being figured out so doesn't mention the new <a href="https://www.drupal.org/project/config_filter">Configuration Filter</a> module created recently as a result of <a href="http://nuvole.org/blog/2017/feb/27/introducing-config-filter">Drupal MountainCamp</a>, or another interesting effort by <a href="https://twitter.com/andrewl">Andrew Larcombe</a> - <a href="https://www.drupal.org/project/environment_config">Environment Config</a>, which both go to help the workflow in their own ways.</p> <h3>Dependency Injection and Service Containers</h3> <p>Another session where I've used the functionality but don't feel I'm totally confident in it (although now I do!). When I was helping the <a href="https://www.drupal.org/project/rules">Drupal Rules module</a> upgrade some actions and conditions I learned a lot about dependency injection and a little about service containers so it was great to have a brush-up on these by <a href="https://twitter.com/Ashish_Thakur">Ashish Thakur</a>, who gave a detailed walkthrough of the work he's been doing on this not only in Drupal 8 but also Drupal 7 as well - crazy stuff!</p> <p>By far my most favourite part of Ashish's talk though was his introduction when he referenced the previous day's keynote and explained that he was from the mountains but now lives where he wants to near the beach, and it's Drupal that's enabled him to do that. Awesomesauce!</p> <h3>Closing Keynote - Danese Cooper</h3> <p><img alt="Photo from closing session" data-entity-type="file" data-entity-uuid="a9a02871-55b5-4ca4-95ce-ecd4664aca2d" src="/sites/default/files/inline-images/dclondon_youngest_attendee.jpg" class="align-right" />After lunch the closing session was upon us where the organisers gave out some key stats like how much coffee we drunk, details of a £5k spend in the bar at the Saturday social, and the youngest attendee being only 5 months old!</p> <p>Once the stats were done the final keynote was upon us and freshly flown-in from Frisco was <a href="https://twitter.com/divadanese">Danese Cooper</a>. I've had the pleasure of meeting Danese previously during my time back in 2012 as the first community-elected Director of the Drupal Association (if you're reading this before 18th March 2017 <a href="https://www.drupal.org/association/blog/its-time-to-vote-community-elections">go vote in the latest round of the Drupal Association community elections</a> <strike>now!</strike> when you've finished reading this!) and whilst I'm more of a fan of copyleft due to wanting to know what code is running inside of my body if I get implanted with tech in the future, I'm in total admiration of her stern work over the years moving the Open Source world forward.</p> <p>A veteran of the Open Source industry, Danese presented an enlightening talk on the history of Open Source with a fleeting mention of the <a href="https://en.wikipedia.org/wiki/Richard_Stallman">founder of the Free Software movement Richard Stallman</a>, and asked us all to stop arguing about the <a href="https://www.gnu.org/philosophy/open-source-misses-the-point.en.html">difference between Free Software and Open Source</a> as apparently it's all the same, upon which I was seemingly in a minority of one who didn't join in the round of applause from the audience. I'm not sure RMS would've joined either, and I do tend to agree that we all want to not confuse or alienate community members old new and forthcoming. With my love of copyleft licenses as I believe that's the way in which the organic world works where freedom is inferred as opposed to restricted if placed into other products ("here, you bee, you can take my honey but you other bee, no you can't") actually think my beliefs go further than the Free vs Open argument, something I call "organic software". That's a much nicer term, but a much longer conversation than this blog so I'll be ending it here and saving that can'o'worms for another lengthy post. Just always be aware of who is being paid by whom to say what and how they could benefit from those words.</p> <h2>Final Thoughts</h2> <p>Well if you've made it here then thanks for reading, I hope it's given you a little more insight into last weekend's proceedings and the things I'm working on at the moment, and I look forward to posting more updates soon!</p> <p>Finally as always a massive thank you to all involved in organising, attending, speaking etc. at the weekend, your hard work is much appreciated and I look forward to catching up again next year, same time same place, right?!</p> <p>Peace.</p> <p><img alt="Photo of a rainbow shining over the DrupalCamp London venue, City University" border="0" data-entity-type="file" data-entity-uuid="c6a92b9f-85ed-490d-8495-65919e7c7ee8" hspace="5" src="/sites/default/files/inline-images/dclondon_rainbow_0.jpg" vspace="5" class="align-center" /></p> </div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/events" hreflang="en">Events</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> <div class="field--item"><a href="/tags/drupalcamp" hreflang="en">DrupalCamp</a></div> <div class="field--item"><a href="/tags/events" hreflang="en">events</a></div> </div> </div> <section> <h2>Comments</h2> <a id="comment-13"></a> <article data-comment-user-id="0" about="/comment/13" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1488934421"></mark> <footer> <article typeof="schema:Person" about="/user/0"> </article> <p><span rel="schema:author">Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Alex (not verified)</span> on Wed, 08/03/2017 - 00:30</span> <span property="schema:dateCreated" content="2017-03-08T00:30:50+00:00" class="hidden"></span> </p> <a href="/comment/13#comment-13" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/13#comment-13" class="permalink" rel="bookmark" hreflang="en">Wow thanks Steve, this means…</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Wow thanks Steve, this means a lot and i will share with our other organisors :) im still lagging from the crazy busy weekend! See you soon.</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=13&amp;1=default&amp;2=en&amp;3=" token="Ou6y29anVjWqLTSkfLj1VBJgcbZCKOzE9EDLesNaUnY"></drupal-render-placeholder> </div> </article> <a id="comment-14"></a> <article data-comment-user-id="0" about="/comment/14" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1489041475"></mark> <footer> <article typeof="schema:Person" about="/user/0"> </article> <p><span rel="schema:author">Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">reevo (not verified)</span> on Thu, 09/03/2017 - 00:15</span> <span property="schema:dateCreated" content="2017-03-09T00:15:53+00:00" class="hidden"></span> </p> <a href="/comment/14#comment-14" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/14#comment-14" class="permalink" rel="bookmark" hreflang="en">Great write-up!</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Yes, I got an attack of the nerves! I can usually blather on for hours (really!) but it was a tricky talk to give, as the overwhelming majority - and probably most interesting - of my Drupal experience is with my former employer, so I wanted to avoid too much detail about internal politics and decisions. That and I didn't want to come across as a bitter ex - I'm really not :)</p> <p>Viacom has always had a very strong engineering culture, with a heck of a lot of talented people, and this was, I think, a major contributing factor to their decision to stick with their in-house platforms. The PHP framework developed by the team in NY is impressive, mature, and has been constantly modernised over the years. On the other hand, we (in the UK/Intl team) were running on D7, which, when compared side by side, seemed ancient and monolithic. Our D8 upgrade was long overdue, but a combination of our fairly aggressive D7 rollout strategy and a change in the structure of Viacom itself meant that we just didn't have the capacity to evolve fast enough. </p> <p>So, I'd hoped to give a few cautionary tales and really wanted to steer my talk towards microservices vs monoliths, and why I think D8 has so much more potential to succeed in large organisations, but ended up ripping out the more technical bits for fear of losing less technical members of the audience, which unfortunately left the slightly more negative stuff unresolved. </p> <p>Anyway, I'm glad there was enough inspiring stuff over the weekend to mask the slight funk I created on Friday morning :)</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=14&amp;1=default&amp;2=en&amp;3=" token="skGpcZFoOquSlGTFo25a2VqyLi62sXtq0hba2qkOIow"></drupal-render-placeholder> </div> </article> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=71&amp;2=comment&amp;3=comment" token="G5ShwSxymiQjhwboVPPPD3c_EjNM6JxcEGuGL63s568"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2017/03/07/drupalcamp-london-2017-5th-and-best-yet" data-a2a-title="DrupalCamp London 2017 - 5th and best yet!"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2017%2F03%2F07%2Fdrupalcamp-london-2017-5th-and-best-yet&amp;title=DrupalCamp%20London%202017%20-%205th%20and%20best%20yet%21"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Tue, 07 Mar 2017 21:15:00 +0000 Steve Purkiss 71 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2017/03/07/drupalcamp-london-2017-5th-and-best-yet#comments Co-operative.club - The History, Part I: Project Blueprint and First Test Space https://purkiss.com/blog/steve-purkiss/2016/12/12/co-operativeclub-history-part-i-project-blueprint-and-first-test <span>Co-operative.club - The History, Part I: Project Blueprint and First Test Space</span> <div class="field field--name-field-image field--type-image field--label-hidden field--item"> <img src="/sites/default/files/styles/max_325x325/public/2016-12/co-operative-club-header.png?itok=EyEfQTUX" width="325" height="110" alt="Co-operative.club header image - a fireside scene with leather chairs and the text co-operative.club displayed" typeof="foaf:Image" class="img-responsive" /> </div> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Mon, 12/12/2016 - 00:11</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><p>This is the story of how the <a href="http://co-operative.club/concept">Co-operative.club concept</a> came about and this part takes us up to what happened when I had my first opportunity to test things out in a space in real life ten years ago. It covers my initial encounters with <a href="https://drupal.org">the Drupal project</a>, and throughout the series you will see how it is integral to the success of this collaborative spaces project, gain an understanding of why it is very different to other software it is often compared to, how it changed my life, why <a href="http://purkiss.com/blog/steve-purkiss/2016/11/18/end-web-cms-brass-era">I believe it will become the dominant system for building web-based systems within the next three years</a>, and how it - and this <a href="http://co-operative.club">Co-operative.club project</a> - could help you to realise your dreams whatever they may be - no technical know-how necessary. You're free to call me crazy if you believe I am once the story's done, for now just enjoy the ride and keep your mind open ;)</p> <p>As I start to brain-dump everything onto the <a href="https://gitlab.com/co-operative.club">GitLab group of projects for the construction of Co-operative.club</a> I believe it is necessary to tell this story - there's quite a few angles to the project meaning the sum is greater than the parts which, individually, are potentially in orders of magnitude easier to build and/or exist already. This will help understanding of the concept, what has been tried out already, and what is going to be involved in the successful construction of it. It's not going to be a quick one, so grab a drink and hold on tight...</p> <h2>In the beginning, there was the BBC 'B'</h2> <p><img alt="BBC Micro" data-entity-type="file" data-entity-uuid="e483c535-6c1e-43ac-9770-8f45f5ef17ec" src="/sites/default/files/inline-images/bbc-micro.jpg" class="align-right" />I grew up in a little village in Essex in the East of England where there wasn't much to do apart from play in the fields. When I was 9 the <a href="https://en.wikipedia.org/wiki/BBC_Micro">BBC Model 'B'</a> came out and I was lucky enough that my parents bought me one. The BBC ran a computer literacy project where there were programmes on telly about it and I along with many others learned how to code. I did my first "Hello World!" by coding 10 PRINT "HELLO!"; 20 GOTO 10 then I typed RUN and it displayed the word HELLO! all over the screen. Then I put a space after the exclamation mark, i.e. 10 PRINT "HELLO! ", ran the program again and it displayed HELLO! all over the screen, but this time it staggered the HELLO!s diagonally instead of neat columns and as it scrolled it was almost hypnotising - I was amazed that just changing something that small could make it do something so different, and I made it do that.</p> <p>Skip on 35 years and I'm now making a living of essentially doing the same thing as I was then - seeing how something works and changing it to do what I want. I don't have to ask anyone's permission to do it, I have all the tools I need to do it, and from this I can live anywhere I like. I'm in control of what I do each day - if I mess up I've only myself to blame and I use the experience as a lesson to be learned. I've learned <em>many</em> lessons over the last ten years pursuing this vision.</p> <h2>The 'DotBomb' and the Return to Essex</h2> <p>When the DotCom bubble burst in 2001 I was working in London for a company who had built the first ever integrated, scalable modular framework of apps for rapidly constructing interactive web systems with modules covering content management, commerce, and collaboration functionality (blogs, forums, messaging, etc.), along with a web-based administration interface called TeamView for managing it, for example creating your own custom content types like articles, reviews, and so on. RemoteApps, as they named it, was essentially what Drupal is in terms of functionality - but a proprietary product.</p> <p>I was the sixth person in the company - we grew quickly to sixty and had many big name clients along with some really innovative startups such as the first ever online horse-race betting site which calculated results and organised payouts, so I got to learn about Rule 4, which I've now completely forgotten. I worked on some amazing projects including <a href="http://www.diy.com/">B&amp;Q's diy.com</a> and was very proud when I developed an account they thought wasn't worth putting the effort into and turned it into their first six-figure project - to build Volkswagen's New Beetle microsite.</p> <p><img alt="RemoteApps logo with the tagline integrating the future" data-entity-type="file" data-entity-uuid="451fd9f5-d2ea-4c12-bdb6-26aef67d1155" src="/sites/default/files/inline-images/remoteapps-logo.gif" class="align-right" />I also helped the company communicate more cohesively internally by setting up an intranet, built using our own software as more people were building apps they weren't themselves actually using and I made people have to go there to get their expenses paid which ensured they actually used it. At the time we were growing fast and as <a href="https://en.wikipedia.org/wiki/Big_Brother_(UK_TV_series)">Big Brother</a> was on television I did a mock-up of their website but with profiles of team members so others could get to know them a bit better and it was a lot nicer than just a plain profile page on a corporate intranet.</p> <p>Scaling a proprietary software company was expensive and hard work - were growing our integration partner network, training partners up on our modules and APIs, I was organising and running co-marketing events at trade shows; but the world changed on a dime and our funders suddenly pulled all their money out of their tech stocks resulting in finding myself redundant along with thousands of others in the industry at the time. No more free parties, which seemed to happen every week somewhere near to where I was living in <a href="http://exmouth.london/">Exmouth Market</a>, <a href="https://en.wikipedia.org/wiki/Clerkenwell">Clerkenwell</a> on the borders of <a href="https://en.wikipedia.org/wiki/Shoreditch">Shoreditch, East London</a>.</p> <p>I was pretty gutted as I had share options which, on valuation at the time, were worth a touch over a million dollars, only to be worth nothing the next moment. I was surprised too as we'd just sealed a deal with Macromedia to incorporate our technology in their popular <a href="https://en.wikipedia.org/wiki/Adobe_Dreamweaver">Dreamweaver</a> (now owned by Adobe) website creation software where people could just drag and drop functionality into their websites - blogs, forums, etc. I wasn't involved in the business side of things at that level so it came as a shock to me at the time as I was only the previous week getting advised by my line manager about mortgages as there was a studio apartment in the <a href="https://en.wikipedia.org/wiki/Barbican_Centre">Barbican Centre</a> (where I used to skip school to go to classical concerts!) going for £80k - I think they're about £240k now. He knew at the time I was going to be made redundant but didn't say a word, and that's when I promised I'd never put myself in a similar situation again. On my way out for the last time I asked one of the co-founders what <img alt="drop.org logo - the precursor website to drupal" data-entity-type="file" data-entity-uuid="36f81413-8623-473b-aedd-c76108a60d3d" src="/sites/default/files/inline-images/drop-org.png" class="align-right" />he'd do differently if he ever did it again, he replied "I'd Open Source it". Little did I know that around the same time <a href="http://buytaert.net/">Dries</a> had <a href="https://www.drupal.org/about/history">released his drop.org community site as Open Source code</a>.</p> <p>I then did a bit of freelancing work building websites for people in London but I didn't have enough to sustain my London lifestyle so returned back to Essex. I went to networking meetings and discovered BeyondBricks which was an online forum funded by the DTI for small businesses. I ended up helping people on there with advice on Free Software they could use to do things they wanted to do and won a few website projects through my visibility there.</p> <h2>Business Networking and the Birth of the Concept</h2> <p><img alt="logo of the now defunct ecademy business network" data-entity-type="file" data-entity-uuid="fea2934e-0351-485e-bd84-9d83932f30fb" src="/sites/default/files/inline-images/ecademy-logo_0.gif" class="align-left" />Funding from the DTI for BeyondBricks stopped and Ecademy bought it which was another online business network, built on the <a href="https://www.drupal.org">Free Software Framework Drupal</a>, who's tagline at the time was "community plumbing". My first CMS, as with many others, was hand-rolled but I soon moved on to the <a href="http://www.opensourcecms.com/">plethora of PHP-based Open Source CMSs</a>. <img alt="A big blank blue screen which is the WordPerfect welcome screen" data-entity-type="file" data-entity-uuid="f14c094e-988d-492c-9e55-799cbcc318e1" src="/sites/default/files/inline-images/wordprefect_0.png" class="align-right" />I'd tried out Drupal during my research but didn't really understand how to use it and completely missed its abilities as all I was presented with was a blank screen reminding me a little of <a href="https://en.wikipedia.org/wiki/WordPerfect">WordPerfect</a> back in the days of my first job working in a local computer store - it presented you with a big blank blue screen and a cursor, you had to figure out the rest.</p> <p>After flirting with <a href="https://www.phpnuke.org/">PHPNuke</a> but finding it restrictively run by one person who decided to hold back new stuff for paying members only, I tried the various other *Nukes however settled on <a href="http://xoops.org/">XOOPS</a> as it was more object-oriented which is what I was used to back in my DotCom days when I was using J2EE Enterprise Java.</p> <p><img alt="Testimonial of Steve Purkiss from ecademy member Mark Posen saying Steve is simply *the* man to talk to if you want to know anything about open source. He is friendly, helpful and highly knowledgeable. Steve is highly recommended." data-entity-type="file" data-entity-uuid="2219c1de-7508-4fa6-a64a-56d9a499a8c3" src="/sites/default/files/inline-images/testimonial.png" /></p> <p>I enjoyed networking online and soon found myself being called "The Open Source Guy" - I loved meeting new people and helping them find out more about all the free stuff there was out there they could use to build and grow their businesses, learning from others, and the shared entrepreneurial experience. I set up and ran local Ecademy meetings in Essex as well as traveling up to the big meetings in London and others around the local area. I managed to gain a few clients which kept me going, but it always felt weird to say to people that I found my business in the backroom of pubs - this is when I first wondered why there weren't dedicated spaces for business networking meetings.</p> <p>Many of the people I met worked from home, and the ones with offices still needed to get out to meet people. I was also aware that this Free Software that I was talking about didn't have a home either - you didn't find it in boxes in your local PC World store, and to help people find out what software would be useful for them it was always a conversation as opposed to selling them a product. I thought a space where these conversations could happen would be good, and it fit into the business networking space too. To me, the concept was obvious.</p> <h2>BlackStar and the Business Trip</h2> <p><a href="http://entrepreneursinstitute.org/wd/spurkiss/your-profile/#panel2"><img alt="Image of all the Wealth Dynamics profiles" data-entity-type="file" data-entity-uuid="6aaf258e-5707-4b34-8e3d-0f7d7ce6052c" src="/sites/default/files/inline-images/wealth-dynamics-profiles.jpg" class="align-left" /></a>In the Winter of 2004 Ecademy, in their ongoing quest to find a business model that worked and was sustainable, created a special 'BlackStar' group which cost a significant amount per month to join, but had special focused events which I liked the idea of so I joined. One event was a weekend of <a href="http://entrepreneursinstitute.org/wd/spurkiss/">Wealth Dynamics training</a> from entrepreneur <a href="https://www.youtube.com/user/rogerhamiltontv">Roger Hamilton</a> held at <a href="https://en.wikipedia.org/wiki/Chatham_House">Chatham House in London</a>. The event was amazing and I was hooked on the <a href="http://entrepreneursinstitute.org/wd/spurkiss/your-profile/#panel2">Wealth Dynamics Profiling</a> where I came out as a <a href="http://entrepreneursinstitute.org/wd/spurkiss/your-profile/the-star/">'Star' profile</a> - good at starting things, not so good at finishing. To be 'in flow' my natural ability is to promote other people's creations, and it is true that is what I do.</p> <p><a href="http://entrepreneursinstitute.org/wd/spurkiss/your-profile/the-star/"><img alt="My Wealth Dynamics profile - predominantly Star" data-entity-type="file" data-entity-uuid="5e0e5a85-76ab-42b5-b2a7-33d60ede6ccf" src="/sites/default/files/inline-images/STAR%20-%20Steve%20Purkiss_0.png" /></a></p> <p>Through the BlackStar group I'd met <a href="http://www.nickheap.co.uk/">Nick Heap</a> who did this thing called 'Core Process' where through an exercise of writing down three times in your life you're especially proud of along with words you associate with them, then whittling them down to two you get the essence of you, mine is 'fostering connections', which does explain what I do in terms of both technology and people - I know what code can help you do something and I know what people can do what to help and I foster those connections, and quite frankly once I've done that I'm on to the next thing (that goes back to <a href="http://entrepreneursinstitute.org/wd/spurkiss/your-profile/the-star/">my Star profile</a>, good at starting things). So since then it's been a quest to build a model around that which enables me to live 'in flow' instead of what I usually do which is try to do everything myself, that's where I fail.</p> <p>At the time I had a mentor through the BlackStar group, the guy who had thought up the 0845 'free internet' connection which was the thing in those days - a shared revenue idea he had sold to a telecoms company. I was excited about my concept and wondered why people weren't throwing money at me - he suggested I needed to chill out a bit and have a break. He was doing a talk in Toronto that weekend so I thought where better to chill out than above the clouds and promptly booked flights and ended up flying the next day to Canada. I didn't know much about the country but had always wanted to visit that side of the pond and figured that's where the business was - everyone in the UK always seemed to want to put you down if you had big ideas.</p> <h2>PossiBox 1 - Toronto</h2> <p>I enjoyed my time in Toronto so much, I loved the people and the attitude and was so blinded by the big city and bright lights, and the reaction I had from people with my British accent that they actually seemed to listen to me, I thought upon my return I'd pack up and go live there for a bit and see if anyone there would throw me a bunch of money to get a place up and running. I did exactly that, and found myself wandering around a freezing cold downtown Toronto early Jan 2005 without a hat or scarf wondering where everyone was, not realising there was a network of tunnels with shopping centres underground!</p> <p>I'd rented a flat in Queen Street West and went to every networking meeting I could, still thinking how cool it would to be to have a space for these people, and whenever I told someone about the concept they loved it but still no-one threw me a pot of cash. I even found a 'perfect' building but still no pots of money thrown. It was a HUGE building and had space for coworking on the top floor, meeting and conference rooms on the middle, public 'lounge' and retail space, and basement which would be perfect for audio/visual soundproofed spaces for people to record podcasts, vidcasts, etc. Here it is now courtesy of Google, looking a little better than when I wandered around it in its full emptiness glory!</p> <p><img alt="Possibox 1 - a huge building in downtown Toronto" data-entity-type="file" data-entity-uuid="a3b799da-b713-41ac-961d-97d5ece8c617" src="/sites/default/files/inline-images/possibox-1-toronto.png" /></p> <h2>From 'Open Source' to 'Free Software'</h2> <p>At that time I was firmly in the belief that I was part of the Open Source crowd. I thought the space would be a great outlet for marketing Open Source-powered hardware, from watches to personal audio, gadgets of all types which I thought would be appearing on the seen rapidly - which there are more of now, guess I was a bit early to the scene.</p> <p>The LinuxExpo was being held there where a friend (who I'd met on my first trip out there and said about my project, which at the time I was referring to as "the box" and had the domain "thebox.at", "it's like a Brain Gym") and I went out for a meal with one of luminaries of Free Software who was doing a talk and wanted to hook up the night before as he was at a loose end. He had spent his entire career reverse-engineering proprietary hardware drivers just so people could share files and printers between competing Operating Systems - Linux, Macs, Windows, etc. and most people didn't - and don't - know his software even exists to this day (<a href="https://www.samba.org/">Samba</a>). He discussed the world of software and introduced me to a side I hadn't seen before, the business side of proprietary vs open source/free software. He started talking about Kings and Queens and power throughout centuries and who said what was right and what was wrong, and took me down a rabbit hole I'm still exploring to this day.</p> <p><img alt="The Free Software, Free Society! wordmark" data-entity-type="file" data-entity-uuid="5ec6681b-042d-4104-be5c-f2f13b1959a4" src="/sites/default/files/inline-images/free-software-free-society.jpg" /></p> <p>I hadn't realised the importance of Free Software in humans continuing quest for Freedom. My first jobs had been in computer shops and I hadn't realise the impact OSs like Windows had done to software by only providing compiled binaries and not the source code - the thing that I had the freedom to play with on my BBC 'B' as a kid and had provided me with an income for the few years since redundancy. I decided as the Free Software Foundation's AGM was on in Boston I had to go and that friend who'd come out for the meal with us offered to drive me so experienced my first state-side road trip to the mecca of MIT, which was an amazing place. Whilst I was there I explained my concept to Lawrence Lessig who created the Creative Commons licensing and he kind of understood it and said it was an extremely interesting idea, unless he was just being polite, but it seemed genuine, although he is a lawyer lol.</p> <h2>TestBox 1 - Uptown Toronto</h2> <p>Another friend whom I'd met at that first networking meeting I'd flown out for said his brother's old shoe shop was empty for a while and I could use it to test out my concept. I of course jumped at the chance and found myself in some upmarket part of Toronto which was miles out of the centre, but who cared? I had a space, and I was gonna give it a go. Personally I thought it would need to start in a city centre as it's a new concept people would need to get an understanding of before it spread out to the 'burbs (I still believe this to be the case).</p> <p>We went to see the space, which was just a shop so no space for meeting rooms etc. but thought better than no space so set up a few computers I'd managed a local supplier of Linux PCs to lend us and awaited a few friends of friends to arrive with some art to display. Suddenly a hoard of artists turned up and there were about 100 pieces of art piled up in the basement! We sifted through and picked out some good pieces to display and hung them up. I filled a bookcase which had been left there with some tech and business books and magazines. We went shopping and bought a trolley load of booze, invited some friends and had a launch party. No business types came because I didn't have a big network of contacts, and we were miles out of the centre of the city. We did have a good party though.</p> <p>So there was me, with a couple of friends, in a pretty much empty shop with some random PCs that no-one knew how to use, with no Internet connection as the phone line had already been disconnected, no website just a flyer on the front door which explained the experiment to bewildered passers by, and some random art on the wall, in the middle of Toronto's upmarket suburbs.</p> <p>Needless to say this experiment didn't work very well, but it did educate. I've attached my original 'Blueprint' below, the picture on the front cover was taken looking down on the shop window display.</p> <p><a href="https://www.edocr.com/v/b6er548l/steve4/organicopen-source-cafecoworking-concept"><img alt="Front cover of the Open Source Coworking Cafe Concept with a computer box, a t-shirt and some books strewn across the shop window floor display" data-entity-type="file" data-entity-uuid="e6a8bae5-a484-4f0f-9a49-a55cfe44f934" src="/sites/default/files/inline-images/open4blueprint_cover_testboxfloor.png" /></a></p> <h2>COMING UP NEXT: Co-operative.club - The History, Part II: You wanna building? I got a building for ya!</h2> </div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/creativity" hreflang="en">Creativity</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/co-operativeclub" hreflang="en">co-operative.club</a></div> <div class="field--item"><a href="/tags/coworking" hreflang="en">coworking</a></div> <div class="field--item"><a href="/tags/cafe" hreflang="en">cafe</a></div> <div class="field--item"><a href="/tags/concept" hreflang="en">concept</a></div> <div class="field--item"><a href="/tags/drupal" hreflang="en">drupal</a></div> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> <div class="field--item"><a href="/tags/drupal-architecture" hreflang="en">Drupal Architecture</a></div> <div class="field--item"><a href="/tags/creativity" hreflang="en">creativity</a></div> </div> </div> <section> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=70&amp;2=comment&amp;3=comment" token="lVr2me8sBkS-nqUIwncjF3mVjqLfFPdES9CWk_dZWLs"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2016/12/12/co-operativeclub-history-part-i-project-blueprint-and-first-test" data-a2a-title="Co-operative.club - The History, Part I: Project Blueprint and First Test Space"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2016%2F12%2F12%2Fco-operativeclub-history-part-i-project-blueprint-and-first-test&amp;title=Co-operative.club%20-%20The%20History%2C%20Part%20I%3A%20Project%20Blueprint%20and%20First%20Test%20Space"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Mon, 12 Dec 2016 00:11:00 +0000 Steve Purkiss 70 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2016/12/12/co-operativeclub-history-part-i-project-blueprint-and-first-test#comments The End Of The Web CMS Brass Era? https://purkiss.com/blog/steve-purkiss/2016/11/18/end-web-cms-brass-era <span>The End Of The Web CMS Brass Era?</span> <div class="field field--name-field-image field--type-image field--label-hidden field--item"> <img src="/sites/default/files/styles/max_325x325/public/2016-11/1903-ford-rc.jpg?itok=2ebs1j9M" width="325" height="240" alt="Photo of the Ford Model A car" typeof="foaf:Image" class="img-responsive" /> </div> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Fri, 18/11/2016 - 16:02</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><p>Growing up in Essex with my father and most of my friends families working in some capacity for the Ford Motor Company, I tend to gravitate towards the automotive industry whenever I hear people saying we need to look to history in order to see the future. I'm always skeptical about taking this too literally as circumstances change and many new factors are involved - hence why I'm more afraid of an autonomous car controlled by code I'm not allowed to see than a driver whom I can; however sitting here on the eve of the <a href="https://www.gnu.org/philosophy/open-source-misses-the-point.html">Free/Libre Open Source</a> <strong>project</strong> <a href="https://drupal.org/">Drupal</a>'s first anniversary of its latest <strong>product</strong> release, <a href="https://drupal.org/8">Drupal 8</a>, I find it hard not to draw parallels between these two industries as I ponder what the future might have to hold.</p> <h2>Brass Era Cars</h2> <p><figure role="group" class="align-right"><img alt="1911 Ford Model T Touring" data-entity-type="file" data-entity-uuid="eb80f923-a084-48f0-ae44-eb9422602c8d" src="/sites/default/files/inline-images/1911_Ford_Model_T_Touring_0.jpg" /><figcaption>1911 Ford Model T <a href="https://commons.wikimedia.org/wiki/File:1911_Ford_Model_T_Touring_2.jpg">via Wikimedia Commons</a></figcaption></figure></p> <p>According to Wikipedia, 1886 is regarded as the <a href="https://en.wikipedia.org/wiki/Car">birth year of the modern car,</a> and the <a href="https://en.wikipedia.org/wiki/Brass_Era_car">'Brass Era'</a> is an American term for the early period of automotive manufacturing, named for the prominent brass fittings used during this time for such things as lights and radiators. It is generally considered to encompass 1896 through 1915, a time when these vehicles were often referred to as horseless carriages.</p> <p>Within the 20 years that make up this era, the various experimental designs and alternative power systems would be marginalised. Although the modern touring car had been invented earlier, it was not until <a href="https://en.wikipedia.org/wiki/Panhard" title="Panhard">Panhard et Levassor</a>'s <i><a href="https://en.wikipedia.org/wiki/Syst%C3%A8me_Panhard" title="Système Panhard">Système Panhard</a></i>, first built in 1891, was widely licensed and adopted that recognisable and standardised automobiles were created. This system specified front-engined, rear-wheel drive internal combustion engined cars with a sliding gear transmission, and was to become the standard layout for automobiles for most of the next century.</p> <p>Initially the high-wheel motor buggy (resembling the horse buggy of before 1900) was in its heyday, with over 75 makers, but were only gradually abandoned, in favour of the more advanced runabouts and tonneaus along with other more expensive closed bodies - and killed off by the Ford Model T, first produced by Ford in 1908.</p> <h2>Brass Era Web</h2> <p><figure role="group" class="align-right"><img alt="Drop 1.0 - the first version of Drupal!" data-entity-type="file" data-entity-uuid="222399c3-d283-476e-9373-9ee2cb36c009" src="/sites/default/files/inline-images/drop1_0.jpg" /><figcaption>drop.org, which <a href="https://drupal.cheppers.com/">later became Drupal!</a></figcaption></figure></p> <p>The <a href="https://en.wikipedia.org/wiki/Web_browser">first web browser</a> was invented in 1990 by Sir Tim Berners-Lee, with <a href="https://www.quora.com/When-was-the-first-web-content-management-system-CMS-released">the first content management system ('CMS') appearing around 1992</a>. <a href="https://en.wikipedia.org/wiki/Drupal">Drupal was started in 2000</a> at a time when there were many CMSs, and although the <a href="https://en.wikipedia.org/wiki/List_of_content_management_systems">list of CMSs available</a> is still considerable, there's no doubt that there's a few who dominate the market, with WordPress taking the lion's share; Joomla and Drupal in a battle for 2nd and 3rd spot. If however you only look at larger installations, for example usage in government and education, you'll find Drupal has much larger market share.</p> <p>Because you can package up functionality in install profiles and distributions much like the Linux operating system, it enables the roll-out of hundreds or even thousands of similar sites, for example <a href="http://buytaert.net/drupal-8-turns-one">Nasdaq's Investor Relations Website Platform</a>, <a href="https://www.getopensocial.com">OpenSocial's collaboration platform</a> and the <a href="https://www.drupal.org/project/agov">Australian Government's aGov distro</a>. A kind of mass-market production line, one might conjecture.</p> <h2>The Parallels</h2> <p>So we have new modes of transport (the car, the web), which quickly have models of manufacture designed for them (Système Panhard, CMSs), of which many different types are made (high-wheeled motor buggies, CMSs), but were gradually abandoned in favour of more advanced runabouts and tonneaus (WordPress, Joomla, Drupal) along with other more expensive closed bodies (SharePoint, SiteCore, Adobe Experience Manager).</p> <p>The Model T was produced in 1908, 22 years after the birth of the car; Drupal 8 development began in 2011, 21 years after the birth of the web browser. Ford's Model T was not only successful because it provided inexpensive transportation on a massive scale, but also because the car signified innovation for the rising middle class and became a powerful symbol of America's age of modernisation. I'm writing this on a Drupal 8 site which I had the freedom to download, install, and use for free with no license fees, has so far involved me writing no code, and costs me <a href="https://m.do.co/c/c133f1c749c8">only $10pcm to host on DigitalOcean</a>.</p> <h2>From Innovation To Standardisation<img alt="Composer logo, an illustration of a conductor" data-entity-type="file" data-entity-uuid="883dfc36-743a-47e1-8e22-03aa1f41d2a8" src="/sites/default/files/inline-images/composer-logo.png" class="align-right" /></h2> <p>During the Brass Era, development of automotive technology was rapid, due in part to hundreds of small manufacturers competing to gain the world's attention, with key developments including electronic ignition systems, independent suspension, and four-wheeled brakes.</p> <p>In Drupal 8 we've seen <a href="https://symfony.com/">Symfony</a> adopted and many modules included into core such as WYSIWYG and Views, making Drupal 8 a great ignition for any web system; <a href="https://en.wikipedia.org/wiki/Composer_(software)">Composer</a> increasingly used as Drupal's independent suspension to keep all those dependencies nicely balanced; and as the web calls for speeding up not slowing down, Drupal 8 has the most <a href="http://wimleers.com/article/drupal-8-dynamic-page-cache">advanced dynamic cache system</a> of any CMS, even capable of caching logged in users.</p> <h2>Nearing The End</h2> <p>We're now 26 years into the Web - with the Brass Era ending 29 years into the Car does this mean we're nearing the end of the Web CMS Brass Era? What exactly constitutes 'Brass' in terms of Web CMSs?</p> <p>I draw parallels between Brass and the multitude of modules/plugins and themes for these CMSs. For example, WordPress has many, but they have a much different ecosystem than Drupal's modular architecture which means you can start small and build as your needs arise. WordPress has many paid-for plugins which if you try to get them working together <a href="https://www.lullabot.com/podcasts/drupalizeme-podcast/wordpress-vs-drupal">you might encounter issues</a>. Drupal 8's modular system and object-oriented architecture is designed so you can build 100% the system you need, not 90% made up of what someone else thinks you need which has to be nice and shiny in order to grab your attention because they have so many competitors for their shiny lanterns they have for sale.</p> <p>With WordPress you quickly get into a situation where you have to start writing code to do anything - that's untested, untried code which you'll be tasked with supporting and maintaining. And who is writing this code which operates your core business? With Drupal you've tried and tested modules to use for functionality, along with a 40+ member <a href="https://www.drupal.org/security-team">Drupal Security Team</a> keeping a watchful eye over any security issues which may arise. There's also strict <a href="https://www.drupal.org/docs/develop/standards">Drupal Coding Standards</a>, and an ethos in the community of working together on similar functionality where possible as opposed to having many plugins doing the same or similar functionality.</p> <p>I hear people saying "use the right tool for the job", but I don't use different cars for different day-to-day journeys, and most the people I hear it from are techies, not business people who are more focused on the bottom line and just want stuff to be done. Sure, for the edge-cases it's fine, however many businesses share common business functionality so the more that's in the open and shared, the lower the cost of making use of the web will be. Take for example hairdressers, or car dealerships, or life coaches. I see a future filled with many industry-specific Drupal distributions servicing vertical markets. At the moment it's too easy for digital agencies to sell individual solutions and not share, after all, their model is selling people's time, but it won't be long before enterprising entrepreneurs develop more of these distributions focusing on specific verticals, especially now composer support is taking shape more so it's easier to build and maintain these distributions.</p> <p>For too long many have essentially forked Drupal by downloading it and customising it to the requirements of just the one project at hand, whereas the beauty of Drupal is where you grow the capabilities of Drupal so it does what you want to do without writing code by using modules from core and the world of contrib land. There's <a href="https://youtu.be/OrpZzVMcQV8">a great session from the recent DrupalSouth on YouTube </a>explaining how a decision to "contribute more back" by releasing a module a week, either upgrading existing modules to Drupal 8 or tidying up code from client projects where there was functionality created which more than that one specific requirement needed so could be useful to others turned into a complete new approach to how they develop projects, and their goal for 2017 is to write no custom code at all. This is how it should've been from the start, but there are a number of factors as to why people haven't been approaching Drupal development like this, however going by the number of modules released over the last few weeks for Drupal 8 I believe people are beginning to understand that this entire project was built by sharing, not keeping things secret. I personally believe there needs to be more sharing, and I'd love to speak to any organisation willing to open up their website development project to the world so everyone can have the opportunity to advise on how best to develop it using the modules and methods available, and let's start sharing more so we can grow Drupal's capability more.<img alt="Drupal 8 logo" data-entity-type="file" data-entity-uuid="a4daaadc-0c49-401f-baa0-f0b514091155" src="/sites/default/files/inline-images/drupal8logo.png" class="align-right" /></p> <p>So I'm calling it - I believe we'll see Drupal 8 take a dominant lead in the CMS market space over the next three years and go on to be the platform of choice when developing anything for the web. When there's commodity functionality out there available for free, the justification to start paying out for development and/or license fees does not make much sense for the majority of users. Sure, there will always be other systems around - there's custom cars, Formula 1, rally, and so on, but many just want to get from A to B for the minimum cost and minimum fuss, and let's remember the majority of the web is still not using any CMS.</p> <p>With Drupal 8's ability to work with any device, it's not just publishing for the web but embedding itself in the core of how the internet works, so no matter what you want to do, whether you're the <a href="http://buytaert.net/drupal-8-turns-one">YMCA connecting to workout machines and wearables like FitBit bands</a> or simply <a href="https://www.greatagain.gov/">thanking your supporters</a>, Drupal 8 can do it!</p> <p>Question is - does this mean another 100 years before we see autonomous CMS appear? I do hope it's not that long before I can just think about what I want to build &amp; it appears magically in front of me!</p> <p>If you want to find out more about what Drupal could be doing for you, feel free to <a href="http://purkiss.com/contact">contact me</a>, and if you're reading this on 19th November 2016, Drupal 8's 1st birthday, there's a fabulous line-up of speakers and sessions for the free <a href="http://www.drupal8day.com/">Drupal 8 Day Virtual Conference</a>.</p> <p><em>Main image of Ford Model A by DougW <a href="https://commons.wikimedia.org/wiki/File%3A1903-ford-rc.jpg">via Wikimedia Commons</a></em></p> </div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/op-ed" hreflang="en">Op-ed</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> <div class="field--item"><a href="/tags/drupal8" hreflang="en">Drupal8</a></div> </div> </div> <section> <h2>Comments</h2> <a id="comment-9"></a> <article data-comment-user-id="0" about="/comment/9" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1479834754"></mark> <footer> <article typeof="schema:Person" about="/user/0"> </article> <p><span rel="schema:author">Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Mike Herchel (not verified)</span> on Tue, 22/11/2016 - 14:54</span> <span property="schema:dateCreated" content="2016-11-22T14:54:47+00:00" class="hidden"></span> </p> <a href="/comment/9#comment-9" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/9#comment-9" class="permalink" rel="bookmark" hreflang="en">So I&#039;m calling it - I…</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><blockquote><p>So I'm calling it - I believe we'll see Drupal 8 take a dominant lead in the CMS market space over the next three years and go on to be the platform of choice when developing anything for the web. </p></blockquote> <p>I agree that Drupal is a better CMS, but WP is more popular because it's "Good enough", and you can set up a functioning website for &lt; $100, provided your use case is covered. </p> <p>With WP, I can download and install it, pay $50 for a theme that comes with example content and functionality, rip out or change the content, and voila -- I have a fully functioning website.</p> <p>With Drupal, you typically have to build out a theme from scratch -- even if a commercial theme will do. You also have to build out your content model from scratch, and integrate that into the theme. Most "mom and pop" places aren't going to want to spend that much money on a Drupal developer.</p> <p>There's a Drupal.org issue (<a href="https://www.drupal.org/node/2818085">https://www.drupal.org/node/2818085</a>) that proposes to solve this by allowing people to download install profiles during the installation process. I <em>really believe</em> if this were developed, Drupal would see tons of new "smaller" sites developed that would begin to shift the momentum to Drupal.</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=9&amp;1=default&amp;2=en&amp;3=" token="vyc1qmhuDymXFj5qDjqj_ZYSn1Uhj93eGQ3_XlPo-tI"></drupal-render-placeholder> </div> </article> <div class="indented"><a id="comment-10"></a> <article data-comment-user-id="1" about="/comment/10" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1479835354"></mark> <footer> <article typeof="schema:Person" about="/u/steve-purkiss"> </article> <p><span rel="schema:author">Submitted by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span> on Tue, 22/11/2016 - 17:22</span> <span property="schema:dateCreated" content="2016-11-22T17:22:34+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/9#comment-9" class="permalink" rel="bookmark" hreflang="en">So I&#039;m calling it - I…</a> by <span lang="" typeof="schema:Person" property="schema:name" datatype="">Mike Herchel (not verified)</span></p> <a href="/comment/10#comment-10" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/10#comment-10" class="permalink" rel="bookmark" hreflang="en">Mini Distros</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Thanks for your comment! You're right about how the current situation is in terms of cost, and the distribution/profile selector will help on the technical side, and what I believe will be the key is something I coined 'mini distros' a while back.</p> <p>I mentioned in my post about servicing verticals - at the moment it's easy money developing different solutions for each client but with the advent of Drupal 8 opening up development to a wider audience it's become a lot more feasible to create distributions which serve specific types of business - the aforementioned hairdressers, life coaches, etc. - most the themes for WordPress don't have much in terms of depth of functionality whereas Drupal could deliver a much more useful solution to someone's business out-of-the-box and offered on an OpenSAAS kind of way. Once development has progresses the innovation in particular verticals would make it a compelling offering, and by focusing on one vertical economies of scale mean you can get down to very low prices, much cheaper than WordPress is currently to cobble together a solution, in fact I think the price of WordPress is quite expensive, and even more so if you take into account the opportunity cost of what you're missing out on by not offering functionality specific to your industry needs.</p> <p>I guess what I'm saying is for me, Drupal 8 - including such offshoots as <a href="http://drutopia.org/">Drutopia</a> - is the beginning of something exciting. <em>Very exciting!</em></p> <p><em>Oh, and if anyone wants to co-operate on industry-specific distros do <a href="http://purkiss.com/contact">get in touch</a> ;)</em></p></div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=10&amp;1=default&amp;2=en&amp;3=" token="aMFSqcJuqpvz4JlBaHcijatXY1Y63RcKJnI8tqchiNE"></drupal-render-placeholder> </div> </article> </div> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=69&amp;2=comment&amp;3=comment" token="IQxni0p78o9ZSEWkihFEC7fFRbIcXcDos4BQLuUqJuM"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2016/11/18/end-web-cms-brass-era" data-a2a-title="The End Of The Web CMS Brass Era?"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2016%2F11%2F18%2Fend-web-cms-brass-era&amp;title=The%20End%20Of%20The%20Web%20CMS%20Brass%20Era%3F"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Fri, 18 Nov 2016 16:02:22 +0000 Steve Purkiss 69 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2016/11/18/end-web-cms-brass-era#comments Leapfrog the Drupal Learning Curve & Architect the Perfect Solution in 3 Simple Steps https://purkiss.com/blog/steve-purkiss/2016/10/09/leapfrog-drupal-learning-curve-architect-perfect-solution-3-simple <span>Leapfrog the Drupal Learning Curve &amp; Architect the Perfect Solution in 3 Simple Steps</span> <div class="field field--name-field-image field--type-image field--label-hidden field--item"> <img src="/sites/default/files/styles/max_325x325/public/2016-10/drupal-8-learning-curve.jpg?itok=0FdiTg5k" width="325" height="244" alt="Drawing of a Drupal 8 ship riding a wave over previous versions" typeof="foaf:Image" class="img-responsive" /> </div> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Sun, 09/10/2016 - 14:06</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><p><em>"Drupal has a steep learning curve"</em> is something I hear time and again, however I feel this is a misguided perception and something we need to work towards changing - especially now <a href="https://assoc.drupal.org/blog/megansanicki/drupal-associations-12-month-focus">focus is on the adoption journey</a>. Learning how to 'Drupal' is actually incredibly easy - the trick is to understand exactly what Drupal is and how to mould it to your needs - this is what I'm going to show you how to do in three simple steps.</p> <h2><strong>Step 1: Discover what Drupal <em>doesn't</em> know</strong></h2> <p>This is by far the most important step of the process, hence why I go into much further detail than the other two - skim if you so wish but I assure you the story is there for a reason!</p> <h3><strong>We've been here before</strong></h3> <p>As of writing, Drupal has been around for 15 years and has solved many problems associated with building a wide range of web sites and applications, embedding this knowledge in either the <a href="https://www.drupal.org/project/drupal">core Drupal distribution</a> or one of the <a href="https://www.drupal.org/project/project_module">35,000+ modules available on the drupal.org site</a>. Drupal's decision to only provide backwards-compatibility for content and not functionality means this functionality has had the ability to improve over time <em>and</em> make the most of innovation in technology, for example the recent big jump from mostly procedural programming to object-oriented.</p> <h3><strong>A note about the jump from procedural to object orientation</strong></h3> <p>This latest jump was a big one - Drupal was developed before object orientation was available in <a href="https://en.wikipedia.org/wiki/PHP">PHP</a> (the language Drupal is written in), and so developed its own system of '<a href="https://www.drupal.org/node/292">hooks</a>'. You use hooks to interact with Drupal core to override functionality in order to make Drupal do what you want it to do for you. You can think of hooks like the ones on a coat stand - the trouble here was as different modules and themes overrode hooks, like an overloaded coat stand with many different coats on each hook, it became increasingly harder to work out what hook was changing what and when in the process it was changing it.</p> <p>There are still hooks in Drupal 8, but these may disappear in future versions of Drupal as the migration to object-orientation continues. An added benefit is more backwards compatibility than before for future versions, so the change between versions 8 and 9 <em>shouldn't</em> be as pronounced as the change from 7 to 8 as we don't have to perform again such a big move as changing the fundamental way the entire code works. I believe there's plans to support backwards compatibility over two major versions from now on, so 9 will be backwards compatible with 8, 10 with 9, but not 10 with 8 - <a href="https://en.wiktionary.org/wiki/your_mileage_may_vary">YMMV</a>, etc.!</p> <h3><strong>Knowledge carried throughout generations</strong></h3> <p><figure role="group" class="align-right"><img alt="A drawing of people representing versions of drupal, with 8 being the new kid on the block, ageing as versions go back" data-entity-type="file" data-entity-uuid="8d0eb75b-271f-4e78-9734-b677270aab70" src="/sites/default/files/inline-images/drupal-versions.jpg" /><figcaption>Courtesy @sgrame: https://twitter.com/sgrame/status/774232084231680000</figcaption></figure></p> <p>The key point to understand here is what Drupal brings along with it as it progresses from version to version. Whilst the underlying code may change in order to improve and make the most of the latest innovation in programming languages, the knowledge, experience, and best practices gained and shared from its deployment to millions of sites is maintained in the API and module layer. It is unlikely what you are trying to build is unknown to Drupal in some way or another, it has dealt with everything from <a href="http://drupal.com/">simple brochureware sites</a> which look the same to everyone to sites such as <a href="https://weather.com">weather.com</a> where everyone who visits sees a personalised version of the site. As I often like to quip, I've never been asked for Rocket Science and even if I was, <a href="http://www.nasa.gov/">NASA uses Drupal</a> ;)</p> <p>This development process is fundamentally different to how other systems on the market work, with many other popular ones focusing on ease of use at the expense of progressive innovation, and is why you see Drupal have a larger share of the market on sites with complex requirements. The adoption of semantic versioning means there are now minor releases which include bug fixes along with both new and experimental functionality, and a new version of Drupal is released every six months. We are already up to version 8.2, and with <a href="http://buytaert.net/drupal-8-2-now-with-more-outside-in">current focus on 'outside-in'</a> it is becoming easier for people used to systems other than Drupal - or none at all - to use Drupal, however it is not easy to visualise your end goal and know how to get there, or there is a module or modules already out there which could help you along the way to achieve your desired outcome without having to code anew.</p> <p>To help overcome this out-of-the-box experience there are many ongoing initiatives to provide default content, make module discovery easier, build focused distributions, etc. but they will all take time. There is a way to approach development which means you don't end up going down the wrong path or developing functionality which already exists, it is to discover what exactly it is you want to build Drupal doesn't already know about and <em>focus only on functionality required which is specific to your situation and no other</em>.</p> <h3><strong>What makes you different?</strong></h3> <p><img alt="Characters from different nationalities" data-entity-type="file" data-entity-uuid="ccf86cf3-3b8d-46c2-85d7-d76508490e99" src="/sites/default/files/inline-images/different-nationalities-1124478_640.jpg" class="align-center" /></p> <p>I recently provided the architecture for a high-profile specialist travel site - a six-figure project which unfortunately as with many projects I'm involved in I'm under non-disclosure agreements, doesn't mean I can't talk about the approach I took though, and this is a particularly good example.</p> <p>As they were merging a number of existing systems I could've just looked at the existing data, however there is nothing to say those systems were designed well and we don't want to fall into the trap which I see many times where people re-create bad systems. Drupal is a very flexible system, many others require you to fit your data into how they work. So by asking the client to explain how their organisation worked and what was different about themselves as opposed to other similar organisations I discovered there were six distinct areas:</p> <ol><li><strong>Activity</strong> - their offerings were split into distinct activity types</li> <li><strong>Resorts</strong> - they operate their own resorts</li> <li><strong>Accommodation</strong> - each resort contains one or more different types of accommodation</li> <li><strong>Region</strong> - the organisation had their own definition of a region, some spanning more than one country</li> <li><strong>Departure Gateways</strong> - they fly out from a limited number of airports</li> <li><strong>Arrival Gateways</strong> - resorts are serviced by one or more local airports</li> </ol><p>Everything else on the system was something Drupal would have dealt with before in one way or another - number of rooms, features of accommodation and resorts, and so on. These could easily be achieved using fields, taxonomy terms, and everything else Drupal provides out-of-the-box.</p> <h3><strong>Design with the future in mind</strong></h3> <p>I also took the time to observe the operations of the organisation as I walked around their office. I noticed the majority of people were answering calls, so I asked what exactly they had to deal with on the phone - people wanting more information on particular deals, issues with accommodation crop up from time to time - all the usual a travel company would have to deal with but more so here as they owned and operated the resorts. The point here is there's a whole wealth of user requirements contained here which although weren't in the scope of this current phase of development, by having them in mind when designing a system it should make it easier to extend to accommodate their needs as and when budgets and time allow.</p> <p>If you only design a system for buying via the web you may find when a member of staff is trying to help a customer on the phone the process is unnecessarily complicated, or extending the system to cope with this new use case is particularly hard if you haven't taken this scenario into consideration to start with. Not to say it can't be done, and is easier to adapt now Drupal 8 is more object-oriented, but it's always good to have the future in mind - some of this you will be able to see, some you'll need to extract from key stakeholders, you'll be surprised sometimes with what you find out which you'll then be glad you asked. Here I knew the latest version of <a href="https://www.drupal.org/project/commerce">Commerce for Drupal 8</a> has the ability to set up different buying processes so it would be able to cope easily with phone orders if it were ever a requirement.</p> <h3><strong>Design for different rates of change</strong></h3> <p>It is feasible I could've used Drupal's built-in content types to build the system, but this would've limited the system to this particular use-case, making it harder to cope with different buying processes like the one mentioned above. It also did not sound right - an "airport" isn't a content type, it's an entity. It has content - facilities etc. but the thing itself is an entity. So I created six custom entities, and it sounded much better especially when you went to create a view - "list accommodation in resort". By simply teaching Drupal what was different about this particular organisation, we extended Drupal's "knowledge" and leveraged everything else it had to offer to deal with the functionality it does know about, like date ranges, durations, prices, and so on.</p> <p>Whilst the front-end of a website may go through many enhancements and refreshes, the core business model of an organisation - especially one such as this which is well-established and operated for many years, does not change as much, if at all. In this example they mentioned they may add new activities, and they offered packages which covered more than one activity but their current system couldn't cope with this, which is why activity was treated as a separate entity.</p> <p>By encoding the core business model of an organisation as high up the chain as you can with Drupal, you end up with a far more flexible system to cope with the faster-moving changes such as views to list out particular promotions, plus ensure longevity by enabling future development of those core parts of the system. I also wanted to make it a little more difficult for them to change any of this as this is critical to the operation of the organisation, so if changes were needed they would have to go through a harder process than changing a view, but there should be a good reason for any changes needed to the core business model so happy with the custom entity approach taken.</p> <h3><strong>Seeing the wood for the trees</strong></h3> <p><img alt="Forest Sunbeams Trees Sunlight Light Foliage" data-entity-type="file" data-entity-uuid="e1204c4c-8bf2-47d1-b6ea-980adac1b40f" hspace="10" src="/sites/default/files/inline-images/forest-56930_640_0.jpg" vspace="10" class="align-left" />It's not only when architecting systems you need to take this approach to Drupal - another small example is when I helped someone out a couple of weeks back who was having problems getting a product listing displaying exactly how he wanted it to using Drupal 7. He had tried a number of different types of <a href="https://www.drupal.org/project/views">views</a> (Drupal's user interface for manipulating database queries) but none of them would do what he wanted, which was to provide a faceted search facility, listing the results grouped by category. You'll see this functionality on most e-commerce sites these days, for example click on Televisions and it'll provide you a list grouped by manufacturer, or perhaps size - the point is it's not Rocket Science, it's been done before, it shouldn't be hard to do, so something else was causing the issue here. Sometimes it's hard to see the wood for the trees, so you need to take a step back and take a logical think about the situation.</p> <p>We delved into the problem and through a series of questions worked out the thing he wanted to do which was different was he wanted a number of fields to be displayed at the group level - the name of the group, an image, and a description. None of the various combinations of views he had tried provided the ability to display more than one field, and rewriting the field output in the view did not apply to group by fields. Although there are a number of ways to achieve this from different parts of Drupal, I implemented the simplest way I knew which was to output the taxonomy term ID as the field to group by, and overwrite the template in order to load the details of the taxonomy term so we could easily grab the fields we needed.</p> <p>I can almost hear others screaming at me to use display modes or some other functionality available as I'm sure there's other ways this can be achieved which are 'better', however as I spend most of my time dealing with back-end issues and not front-end and as we only had limited time and budget to solve the issue, this worked as a solution for the situation at hand so we went with it.</p> <p>The take-away here is to go with what solves the majority of the problem, the thing you see or can imagine seeing other people using, and focus on what is specific to your needs. Faceted searching, listing products, grouping products by category - all standard functionality and should be simple to achieve in Drupal. Outputting multiple fields for a grouping category title? Not so much.</p> <h2><strong>Step 2: Modularise Your Requirements</strong></h2> <p><img alt="Moog synthesizer to symbolise modularity of system​​" data-entity-type="file" data-entity-uuid="43ae5636-214c-45b3-95f3-a766a89bd1b7" hspace="10" src="/sites/default/files/inline-images/moog-1573329_640_0.jpg" vspace="10" class="align-right" /></p> <p>Drupal is a modular system, so you need to modularise your requirements by breaking them down as much as you can. Yes, what you're wanting to do has more than likely been done before, but maybe not in your exact combination - if it has then cool, you don't have to do anything as there's already a module/distribution/theme/etc. out there for you! Many times there isn't though, and every organisation has their differences, so you need to break your requirements down in order to deal with them successfully.</p> <p>In our example above where we have a faceted search listing out products grouped by category, by splitting it up into "faceted search", "list products", and "group a view by category" we are going to get much better results when searching for answers than if we search for "faceted search grouped by taxonomy", which is more specific to our use-case than the majority of uses. You're more likely to end up with someone else's specific situation who also has had issues solving it and may forever skip past the actual solutions you are looking for. Be as generic as you can with generic requirements, then be as specific as you can with the ones you identified as particular to your situation, in this example we could've searched for "override view field output" and it would've brought us results for how to override using views templates, which is how we solved the problem there.</p> <p>Once you align your vocabulary more closely with Drupal's generic, modular functionality, you'll enjoy much more success with your searches - it takes a little logical thought and remembering it's not Rocket Science! Far too many times I've seen sites where little or no research has been done as to what's already out there and people have essentially forked Drupal, creating their own monster significantly increasing the amount of work it takes to maintain and extend the site when it's not necessary.</p> <p>Every line of code you produce is technical debt - even if you decide not to use the module you find which does what you need or part of what you need, you can study the tried-and-tested code, copy it into your module and use as a base for your work. A good example is detailed in <a href="http://purkiss.com/blog/steve-purkiss/2016/10/07/short-screencast-intro-new-drupal-console-fieldinfo-command">my previous blog post about creating a Drupal Console command</a> where I found code which did some of what I wanted so I based my work on it because I knew what had already been written worked and there was no point in me writing it again.</p> <h2><strong>Step 3: Only Develop Specifics, Share Where Possible &amp; Grow Drupal!</strong></h2> <p><img alt="Pieces of a puzzle being squished by a pair of hands" data-entity-type="file" data-entity-uuid="fb01cee5-836a-426f-a7c5-b68a6320d617" hspace="10" src="/sites/default/files/inline-images/pieces-of-the-puzzle-592798_640.jpg" vspace="10" class="align-left" />If you find you have to develop specific functionality for your site, have a think about if it would be of use to anyone else, or whether you're going to be the only person in the world doing this specific thing. As mentioned above, every line of code you write is something you or your client is going to need to support your/themselves. If you publish a module to <a href="https://www.drupal.org/project/project_module">the drupal.org module repository</a> you not only have the possibility of others sharing the maintenance of the code but they may also provide enhancements, and stable module releases are covered by the <a href="https://www.drupal.org/security-advisory-policy">security advisory policy</a> which doesn't mean they secure your module, but if an exploit is found and reported the 40+ strong <a href="https://www.drupal.org/security-team">Drupal Security Team</a> are there to help. Even if you just <a href="https://www.drupal.org/create-sandbox">create a sandbox project</a> you may discover others find the code useful and provide feedback.</p> <p>If you're working for a client and they are worried about sharing code, or you're the end client and worry about losing competitive advantage, remember software is easy to copy and it's the rest of what you do which sets you apart from your competition. In our travel example above, it's the resorts they own which provide the value to the customer, not the software code which enables people to book a stay in them.</p> <p>Currently there is a lack of sharing code on the implementation side - there's a lot of factors for this including competition between suppliers, infrastructure ease of use or lack thereof, and a general lack of co-operation in some industries. The result is many people end up writing similar code when they could be starting at a higher level, collaborating with industry peers, sharing development and maintenance costs, and going towards pushing the Drupal project forward. The more we can do out-of-the-box, the better it gets for all concerned as projects cost less, launch quicker, and we can focus on code which isn't out there already which is specific to the organisation itself, so spending the development budget on genuinely useful code instead of code which could be freely available to us in the first instance. Remembering how much we started with for free may be of help creating impetus to share any code we develop.</p> <p>Although my site here doesn't do much functionally I haven't had to write a single line of code to be able to use the web to communicate my message to you, something I believe is <em>amazeballs! </em>Drupal can and does provide code for generic websites, however it's up to industries to collaborate and build their modules and distributions, and/or some enterprising people to build code and distributions for them, as we see in some areas such as e-learning and government.</p> <p>I'm honestly shocked when I hear projects haven't contributed any code back, especially larger projects lasting longer than a year - I worry about how much technical debt they've incurred and feel sorry they haven't helped Drupal to grow, it's only by contributing code the Drupal product itself has reached this amazing level of innovation. I understand there are reasons, however I never see it as "contribution", more akin to riding a bicycle - I can stare at it as long as I like but until I push my feet down on the pedal it's not going to take me anywhere, I don't call it "contribution", just how the bike works!</p> <p>I hope this post has been of help, do feel free to comment below, or <a href="http://purkiss.com/contact">get in touch with me</a> if I can be of help with anything specific.</p> <p><strong>Happy Drupaling!</strong></p> <p>Main Drupal 8 Learning Curve image courtesy <a href="https://twitter.com/sgrame/status/335290382290132992">@sgrame</a>. Other images attributed inline, the rest are public domain, found on <a href="https://pixabay.com">pixabay</a>.</p> </div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/tutorials" hreflang="en">Tutorials</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> <div class="field--item"><a href="/tags/drupal-architecture" hreflang="en">Drupal Architecture</a></div> <div class="field--item"><a href="/tags/data-modeling" hreflang="en">Data modeling</a></div> <div class="field--item"><a href="/tags/drupal" hreflang="en">drupal</a></div> </div> </div> <section> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=51&amp;2=comment&amp;3=comment" token="NZvNRkn_WFkMqEEDEK-ISBkhxwnLVJxigiQBj683nV8"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2016/10/09/leapfrog-drupal-learning-curve-architect-perfect-solution-3-simple" data-a2a-title="Leapfrog the Drupal Learning Curve &amp; Architect the Perfect Solution in 3 Simple Steps"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2016%2F10%2F09%2Fleapfrog-drupal-learning-curve-architect-perfect-solution-3-simple&amp;title=Leapfrog%20the%20Drupal%20Learning%20Curve%20%26amp%3B%20Architect%20the%20Perfect%20Solution%20in%203%20Simple%20Steps"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Sun, 09 Oct 2016 13:06:20 +0000 Steve Purkiss 51 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2016/10/09/leapfrog-drupal-learning-curve-architect-perfect-solution-3-simple#comments Short screencast intro to the new Drupal Console field:info command https://purkiss.com/blog/steve-purkiss/2016/10/07/short-screencast-intro-new-drupal-console-fieldinfo-command <span>Short screencast intro to the new Drupal Console field:info command</span> <div class="field field--name-field-image field--type-image field--label-hidden field--item"> <img src="/sites/default/files/styles/max_325x325/public/2016-10/drupal-console-logo.png?itok=gOZvruBJ" width="300" height="114" alt="Drupal Console logo" typeof="foaf:Image" class="img-responsive" /> </div> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Fri, 07/10/2016 - 10:39</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><p>I am a big fan of <a href="https://drupalconsole.com/">Drupal Console</a>, the CLI built on top of <a href="http://symfony.com/doc/current/components/console.html">Symfony Console</a> for use with <a href="https://www.drupal.org/8">Drupal 8</a>. As well as the ability to generate skeleton code, Drupal Console has a heap of commands for a number of uses, routing, debugging, and now with the new <strong>field:info</strong> command you can gain an overview of what fields are on a site and where they are used.</p> <h2>A bit of background</h2> <p>I wrote this last month as a result of attending the <a href="http://www.eventbrite.co.uk/e/drupal-sprint-weekend-july-2016-london-uk-tickets-26464547173#">Drupal Global Sprint Weekend - London Outpost</a> which was focusing on Drupal Console. I'd been wanting to learn how Drupal Console worked for a long time, and as it's always easier when sitting around a table with other Drupalers I jumped at the opportunity and made my way up to the Big Smoke for the day. Big thanks due here to <a href="https://www.drupal.org/user/3555">Robert Castelo</a> for organising the sprint, and for keeping the Drupal lights on in London for all these years - I believe it was one of, if not the first, local Drupal User Group!</p> <p>I managed to get all the info I needed to set up my machine on the Saturday in order to contribute to the project and take on an issue from the <a href="https://github.com/hechoendrupal/DrupalConsole/issues">Drupal Console GitHub issue queue</a> - one was a feature request for this command which looked like something I could achieve, so decided upon that as my task. It ended up taking a couple of weeks to write and I'm extremely happy with the results, of course I learned much on the way too so I never see it as 'contribution' but more as 'free learning' for me! A big thanks here to the DrupalConsole team who provided me with a lot of help over on the <a href="https://gitter.im/hechoendrupal/DrupalConsole">Drupal Console gitter.im chat channel</a>.</p> <h2>Stealing code is a Good Thing</h2> <p>I discovered a Drupal module which had the basic functionality I needed for this command - <a href="https://www.drupal.org/project/field_report">Field Report</a> - which I then re-factored for use in Drupal Console and added the extras for the options. I even managed to contribute a patch back to the Field Report module to fix an issue they had, which was nice to be able to do as I'd used their code!</p> <h2>A quick retropective</h2> <p>I think the hardest part was getting the display to look nice, however as my first 'professional' programming was RPG (Report Program Generator, not Role Playing Games unfortunately!) for IBM AS/400s which originated from punch cards I was used to figuring out text-only outputs ;) Apart from that is was just a case of reading the Symfony Console documentation to understand how options and arguments work, and which one to use for particular purposes.</p> <h2>The field:info Screencast</h2> <p>And finally at last, here's the <strong>field:info</strong> screencast ~ enjoy!</p> <div class="video-embed-field-responsive-video form-group"><iframe width="854" height="480" frameborder="0" allowfullscreen="allowfullscreen" src="https://www.youtube.com/embed/LufH8XS9nMU?autoplay=0&amp;start=0&amp;rel=0"></iframe> </div> </div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/tutorials" hreflang="en">Tutorials</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/drupal-console" hreflang="en">Drupal Console</a></div> <div class="field--item"><a href="/tags/drupal8" hreflang="en">Drupal8</a></div> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> <div class="field--item"><a href="/tags/cli" hreflang="en">CLI</a></div> <div class="field--item"><a href="/tags/drupal" hreflang="en">drupal</a></div> <div class="field--item"><a href="/tags/tutorial" hreflang="en">tutorial</a></div> <div class="field--item"><a href="/tags/screencast" hreflang="en">Screencast</a></div> </div> </div> <section> <h2>Comments</h2> <a id="comment-7"></a> <article data-comment-user-id="0" about="/comment/7" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1476461506"></mark> <footer> <article typeof="schema:Person" about="/user/0"> </article> <p><span rel="schema:author">Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">rphair (not verified)</span> on Fri, 14/10/2016 - 16:40</span> <span property="schema:dateCreated" content="2016-10-14T15:40:13+00:00" class="hidden"></span> </p> <a href="/comment/7#comment-7" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/7#comment-7" class="permalink" rel="bookmark" hreflang="en">good incentive to learn Drupal Console</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Thanks to you, I saw this live at DrupalCon Dublin... which became my motivation to finally get Drupal Console working. In case anyone wonders why they don't see it on a stock install, I had to do "composer require drupal/console:1.0.0-rc5" which for me required a more recent version of symfony/dom-crawler ("composer require symfony/dom-crawler:2.8.12").</p> <p>I had always hoped something like this would be available in Drupal &amp; thanks for sharing. It's also a great preview for the things you can do in Drupal Console that are really hard to do any other way.</p> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=7&amp;1=default&amp;2=en&amp;3=" token="gSITky6KmlYh8k3gzKegeQw5Ab0eMLcMkqN0j1ewtsc"></drupal-render-placeholder> </div> </article> <div class="indented"><a id="comment-8"></a> <article data-comment-user-id="1" about="/comment/8" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1476461571"></mark> <footer> <article typeof="schema:Person" about="/u/steve-purkiss"> </article> <p><span rel="schema:author">Submitted by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span> on Fri, 14/10/2016 - 17:12</span> <span property="schema:dateCreated" content="2016-10-14T16:12:51+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/7#comment-7" class="permalink" rel="bookmark" hreflang="en">good incentive to learn Drupal Console</a> by <span lang="" typeof="schema:Person" property="schema:name" datatype="">rphair (not verified)</span></p> <a href="/comment/8#comment-8" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/8#comment-8" class="permalink" rel="bookmark" hreflang="en">Thanks!</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Thanks Robert, I enjoyed that little Tour de Drupal in the pub! Glad you got into console, it's pretty awesome &amp; thanks for sharing the tip - as I showed you in my composer.json I just put "~8.0" for any Drupal module so when I do a composer update it'll grab the latest version - for console I guess something like "~1.0" will also do similar... YMMV etc.</p> <p>Happy Drupaling!</p></div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=8&amp;1=default&amp;2=en&amp;3=" token="roEwVhPI8x3guUlKO4gZlMfjatgWmh9ZcaE9ZvBUEwo"></drupal-render-placeholder> </div> </article> </div> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=50&amp;2=comment&amp;3=comment" token="8WGO8ImBirMqhXncJ2JSiB-Mre32O1REXwH0equKyUQ"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2016/10/07/short-screencast-intro-new-drupal-console-fieldinfo-command" data-a2a-title="Short screencast intro to the new Drupal Console field:info command"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2016%2F10%2F07%2Fshort-screencast-intro-new-drupal-console-fieldinfo-command&amp;title=Short%20screencast%20intro%20to%20the%20new%20Drupal%20Console%20field%3Ainfo%20command"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Fri, 07 Oct 2016 09:39:38 +0000 Steve Purkiss 50 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2016/10/07/short-screencast-intro-new-drupal-console-fieldinfo-command#comments Drop Guard - Automatic Updates for Drupal - The Road Test! https://purkiss.com/blog/steve-purkiss/2016/09/24/drop-guard-automatic-updates-drupal-road-test <span>Drop Guard - Automatic Updates for Drupal - The Road Test!</span> <div class="field field--name-field-image field--type-image field--label-hidden field--item"> <img src="/sites/default/files/styles/max_325x325/public/2016-09/drop-guard-logo_0.png?itok=HnuMRnPU" width="325" height="157" alt="Drop Guard logo and strapline continuous security for Drupal" typeof="foaf:Image" class="img-responsive" /> </div> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Sat, 24/09/2016 - 17:27</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><p>Automating updates for Drupal has been a hotly debated topic for many years with a number of strong views expressed from all sides and some <a href="https://www.drupal.org/node/2367319">recent encouraging progress</a> but as of yet still no resolution.</p> <p>Due to Drupal's complexity, automating updates is not a trivial task however the importance of such functionality came to a head a couple of years back in October 2014 with the '<a href="http://www.linuxjournal.com/content/drupageddon-sql-injection-database-abstraction-and-hundreds-thousands-web-sites">Drupageddon</a>' where an exploit had been discovered in which users were told if they did not patch their system within just a few hours then it was likely their sites were toast.</p> <p>As Drupal adoption continues, the pressure to implement such functionality grows and a sprinkling of commercial offerings have appeared, most notably <a href="https://www.drop-guard.net/">Drop Guard</a> which grew from an internal tool built by German Drupal web &amp; mobile app agency <a href="http://www.brightsolutions.de/">Bright Solutions</a>. Bright created the <a href="http://www.erpal.info/">ERPAL</a> distribution of Drupal, an all-in-one e-business backroom platform, so they know their Drupal and I was eager to try out their service. It also looks like the Drop Guard site itself is built on top of ERPAL.</p> <p>As usual with Drupal there are a million-and-one things on my try-out list with more exciting stuff appearing each day, so I was excited when I saw a tweet from Drop Guard offering a free ticket to DrupalCon Dublin in return for an impartial review of their service - I wasn't planning on going but this meant I could just about justify attending, and I would finally get round to setting up automated updates for my new <a href="http://purkiss.com">purkiss.com</a> which I'd just started to build in Drupal 8.</p> <p>I replied within a few seconds and won the prize! Of course now I had to do the work, so for the past month and a half I've been road-testing their service and below is my report. I'm actually writing this in the extended sprints on the Saturday before DrupalCon - I had planned on writing it before but one thing led to another and I ended up having to do some client work, but as luck and Drupal small-world would have it, one of the first Drupalers I met this morning just happens to be working on building a new user interface for Drop Guard so not only did I manage to gain a little more info on the service and company, but also a sneak peek at what looks like a much more user-friendly interface to this important service offering.</p> <p>I must admit, my review would have been quite different if I hadn't seen those mock-ups, so I'm very glad I did - everything happens for a reason, etc.!</p> <h2><strong>What's the offering?</strong></h2> <p>Billed as "The update management system for automation and quality assurance", Drop Guard provides continuous security for Drupal, targeted at hosting providers, Drupal agencies, freelancers and non-profits - the latter of which they have <a href="http://www.drop-guard.net/blog/free-drop-guard-usage-announcement">recently offered a free of cost tier</a> for, which in my mind is a very Good Thing. For individual sites they currently have three pricing option - €9pcm plus tax for up to 30 contrib modules covered, €29 for up to 70, and €59 for up to 150, plus tailored offerings for agencies. </p> <p>All packages offer the same functionality underneath - fully controllable workflow for updates, automated patch detection and application - provided you set up everything as needed, which can be done through their integration into Continuous Integration ('CI') tools and options for Secure Shell ('SSH') deployments. </p> <p>Seamless integration with the major Drupal-specific hosting providers is also part of the offering, so all-in-all a good offer for the price, considering how much time is spent on these tasks plus the knowledge that if there's an urgent update and you're not around, or asleep, or without a connection, your site(s) are safe. I do wonder what will happen as more companies launch similar services, whether it will be a race to the lowest price until core decides to provide it for free? More on that later...</p> <h2><strong>A note on our value as a community</strong></h2> <p>I'm going to be particularly picky with my review because I believe there is a space for this kind of value-added service in the market but I think over the next couple of years the landscape will be very different with a number of offerings, so hopefully by providing detailed feedback I can provide more value than just a review saying "it's great".</p> <p>As an offering that has grown from the community I would very much like to see Drop Guard succeed and not be overtaken by something which comes along with bigger financial backing but perhaps no 'soul', and as a community I believe it's in our hands to support these kinds of community-grown offerings - if we just watch from the sidelines but don't join in their growth by helping out, recommending and of course using their service then we are not in a position to complain if they disappear.</p> <p>I also really appreciate the opportunity they have given me to attend DrupalCon as it means I can be around kindred folk enjoying the many DrupalCon goings-on and get to run my BoF sessions (shameless plug: <a href="https://events.drupal.org/dublin2016/bofs/does-drupal-need-platform-cooperative">Co-op BoF Tuesday 5pm</a>, <a href="https://events.drupal.org/dublin2016/bofs/freelancers-contractors-bof">Freelancers &amp; Contractors BoF Wednesday 5pm</a>, both Wicklow Room 3). I believe this kind of value sharing between companies and community is the way forward - "growing the pie for everyone" as I've heard time and again at various Drupal events. So hopefully my review will provide value to you too, please do feel free to comment using the form at the bottom of this article, it would be great to hear what your experiences, thoughts and opinions on the subject - don't be shy!</p> <h2><strong>Step 1: Creating an account</strong></h2> <p>So, on to the system itself - I was particularly interested to see how this worked as many projects I've worked on utilise CI, however apart from playing around with <a href="https://jenkins.io/">Jenkins</a> for a while some time ago, I'd not had a pressing reason to set anything up for myself - it had always been something someone else had done. I soon found out I was not going to be Drop Guard's 'usual' customer as for me when I read 'Automated patch detection and application' I naively had the impression I was just going to enter a few login details and Drop Guard was going to magically work everything out for me whilst I get on a plane to go lay on a beach somewhere. As usual though, there's a little more than that to do to set everything up, but once it is then yes, perhaps it's ok to go catch that plane!</p> <p>The account creation screen to me has a few too many fields to fill out in this current day and age where quickly lose interest - not that it has too many questions, but really all you need is an email address - the rest can be added later. For mission-critical required information, sure, but other questions seem more relevant to what Drop Guard want in order to profile you as a customer type, which don't seem to have any immediate effect on what I'm presented with after login, so I would say leave them out and let users choose once in the system. There's also a 'Promo Code' field, which to me just makes me feel like there's a promo code lying around somewhere I should be searching the net for. As I also found out later, it defaults to the account creation screen, so when you come back to the website you have to click the 'I have an account' in order to log in, I would say switch that - it's how most other sites work and if I want to create an account I have no problem in clicking a tab but it does get slightly annoying having to click every time I log back in.</p> <p>There's also a link underneath the registration form to their slack channel which slightly worried me as I'm not a user of slack due to its proprietary nature - as a developer of Free/Libre Open Source Software many of my answers come from searching the web for similar situations, and unless you pay slack a lot of money, that history is not available for search so although it's a nice user-friendly interface I would much prefer to see people adoption more open solutions such as <a href="https://www.mattermost.org/">Mattermost</a>. I presume here there are other options for support so carry on my journey.</p> <p>As previously mentioned I'm going to be picky, but it's what I felt, so it's what I'm going to type - also remember with a redesign on the cards things may have changed by the time you read this!</p> <h2><strong>Step 2: Adding a project</strong></h2> <p>Once you've registered and confirmed your email by clicking on the link that's sent to you, a screen is presented where you can set up your first project. There's only a few fields to fill out - a name for your project, the URL of your code repository (<a href="https://git-scm.com/">Git</a> only, but I'm unsure of any value supporting other code versioning systems, if they still exist) and a field for tags. This tags field threw me a little as there was no description as to how the tags would be used, I'm presuming they're if you have a number of sites then tagging is useful but I wouldn't necessarily have the field here.</p> <p>I was encouraged to see the link to the support chat, now I know I don't have to use slack to get in touch with Drop Guard if I need any help. Of course being me it's now a little annoying as I go from screen to screen as if these chat things auto-open I often think someone's there waiting for me to talk so I always end up clicking to minimise it!</p> <p>I experienced problems with the system not accepting my Git URL which, after a few conversations with the Drop Guard team turned out to be browser caching issues which I believe perhaps came from the heavy in-development phase the system was at the time, and all worked well after clearing my cache so if you do by chance experience issues. Saying that though, I've just tried to add another project and it's come up with the same error - 'Git username can't contain ":" and "@" characters'. I cleared all my caches (which is a pain now I'm going to have to log in to everything again!), so no doubt I'll be approaching the Drop Guard at DrupalCon to see what the deal is - <a href="http://www.drop-guard.net/blog/meet-us-at-drupalcon-dublin-2016">go see Drop Guard at booth #105</a> if you're attending!</p> <h2><strong>Step 3: Site config</strong></h2> <p>To enable access to your Drupal site, <a href="http://dgo.to/dropguard">Drop Guard has its own module on drupal.org</a> which you download and install on your site. This module provides you with a User ID and Access Token which you enter into this screen, along with the URL of your site. All very simple &amp; has my specific details so no screen shot for this step.</p> <h2><strong>Step 4: Update behaviours</strong></h2> <p>You now get to choose what type of updates you want Drop Guard to do anything with and how to handle them. I found this a little overwhelming to begin with and although there is a 'Reload best practices', I believe there could be perhaps three options available in order to provide different levels of security based on best practices. You could then delve deeper into the individual settings. I was encouraged that you can apply changes to different branches, this system really does cover all potential update workflows.</p> <h2><strong>Step 5: Events</strong></h2> <p>Once you've selected your update behaviours you now get the opportunity to attach actions to these events - request a URL, send an email, execute an SSH command, merge a branch, and create a task in project management system. You can add any number of these to each event depending on your particular workflow - for me at this moment I'm happy just being sent an email, but I can see how easy it's going to be to hook into my CI once I've set it up(!).</p> <h2><strong>Step 6: Integrations</strong></h2> <p>The last setup screen is if you want to connect to your project management system, which I don't have so can't really comment on the functionality other than to say I'm sure it's useful for those who do - the options at the moment are for Jira and Redmine.</p> <h2><strong>Step 7: Sit back and relax!</strong></h2> <p>And that's it, now it's time to sit back, relax, and let Drop Guard do the hard work for you! Although I'm only using it on a very small site it's still very useful as the Drop Guard system emails are far more descriptive than the out-of-the-box Drupal site ones so I can judge better as to whether I need to do something or not. I look forward to setting up continuous integration for my site and configuring Drop Guard to do a lot more for me. I guess I could start by just setting up a few SSH commands to run on specific events, we'll see if I have some time once I get back after DrupalCon...</p> <h2><strong>Conclusion</strong></h2> <p>I've really enjoyed testing the system out and communicating back and forth with the team and as mentioned look forward to integrating my own site more into the update system than it is right now and feel very confident Drop Guard will be able to deal with a number of different scenarios in any which way I want it to. That's if I manage to get to the bottom of my original issue of not being able to add a site - in this day where more of these types of services are appearing on what seems a daily basis, if I find one that works for me out-of-the-box first time, that's probably going to be the one I end up using. I do feel that you're kind of dropped in the deep end straight away and this could perhaps be split up a little more depending on the audience. In a way I felt that if you had all that knowledge already then perhaps you have your own system set-up so it's going to be a choice whether you pay for a system like this or continue down your own path.</p> <p>Currently I don't see the value differential between the various services, but then as said I'm not their typical client. If the aim is for hosting companies and agencies then they also have the added issue of eventually it being more cost effective in the long term to develop their own systems, but I don't really know enough about what's involved in running this service so can't comment any more than I know a site builder who's built a system that suits their needs, on their own, which manages hundreds of sites. Obviously not everyone's capable of doing that, but it's a case of hunting out that niche where this system hits a sweet spot and then developing your market from there. Or if the idea is to simply build the 'best' system then sell to some large hosting provider then I guess that's a way forward too.</p> <p>As well as creating a few simple options to ease people into the service I did wonder why they don't market the system on the code security side too - as they have access to your system it would be easy to see whether the code has been changed since they last checked - to me as a user knowing if my code has changed is kinda important and could be a good 'value add' service to market - hacked protection!</p> <p>It will be interesting to see this market develop, momentum is certainly gathering as I see a seemingly similar offering launched recently, plus more Drupal-specific agencies offering this service as part of their packages. With Drupal core also potentially offering at least some of this then companies in or thinking of entering this space will seriously need to think about what their USP is as there's nothing here which is 'secret sauce', it's all Free/Libre Open Source Software. Let's hope it doesn't become a race to the bottom in terms of price-point, and if it does then let's do it all in core because you can't beat Free.</p> <p>Once again I'd like to thank Drop Guard for this opportunity and encourage you to <a href="https://www.drop-guard.net/">try out Drop Guard for yourself</a>, and if you're lucky enough to be in Dublin for DrupalCon then <a href="http://www.drop-guard.net/blog/meet-us-at-drupalcon-dublin-2016">go see them at their booth!</a></p></div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/product-service-reviews" hreflang="en">Product &amp; Service Reviews</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> <div class="field--item"><a href="/tags/drupal" hreflang="en">drupal</a></div> <div class="field--item"><a href="/tags/continuous-integration" hreflang="en">Continuous Integration</a></div> <div class="field--item"><a href="/tags/ci" hreflang="en">CI</a></div> <div class="field--item"><a href="/tags/automatic-security-updates" hreflang="en">Automatic Security Updates</a></div> <div class="field--item"><a href="/tags/drop-guard" hreflang="en">Drop Guard</a></div> <div class="field--item"><a href="/tags/reviews" hreflang="en">Reviews</a></div> </div> </div> <section> <h2>Comments</h2> <a id="comment-2"></a> <article data-comment-user-id="0" about="/comment/2" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1476179339"></mark> <footer> <article typeof="schema:Person" about="/user/0"> </article> <p><span rel="schema:author">Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">David Snopek (not verified)</span> on Mon, 26/09/2016 - 20:35</span> <span property="schema:dateCreated" content="2016-09-26T19:35:52+00:00" class="hidden"></span> </p> <a href="/comment/2#comment-2" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/2#comment-2" class="permalink" rel="bookmark" hreflang="en">What are the other recent offerings you&#039;ve seen launch recently?</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><blockquote><p> It will be interesting to see this market develop, momentum is certainly gathering as I see a seemingly similar offering launched recently</p> <blockquote><p>Just wondering what this service was? You alluded to their being a couple, I'm curious what they are, if you don't mind saying.</p> <p>Thanks!</p></blockquote> </blockquote> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=2&amp;1=default&amp;2=en&amp;3=" token="8HyszN_uZaobqtd30DdLSRD9p71vJt7YwSHUzjLPUDo"></drupal-render-placeholder> </div> </article> <div class="indented"><a id="comment-5"></a> <article data-comment-user-id="1" about="/comment/5" typeof="schema:Comment" class="js-comment"> <mark class="hidden" data-comment-timestamp="1476179702"></mark> <footer> <article typeof="schema:Person" about="/u/steve-purkiss"> </article> <p><span rel="schema:author">Submitted by <span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span> on Tue, 11/10/2016 - 10:55</span> <span property="schema:dateCreated" content="2016-10-11T09:55:02+00:00" class="hidden"></span> </p> <p class="visually-hidden">In reply to <a href="/comment/2#comment-2" class="permalink" rel="bookmark" hreflang="en">What are the other recent offerings you&#039;ve seen launch recently?</a> by <span lang="" typeof="schema:Person" property="schema:name" datatype="">David Snopek (not verified)</span></p> <a href="/comment/5#comment-5" hreflang="en">Permalink</a> </footer> <div> <h3 property="schema:name" datatype=""><a href="/comment/5#comment-5" class="permalink" rel="bookmark" hreflang="en">A few</a></h3> <div property="schema:text" class="field field--name-comment-body field--type-text-long field--label-hidden field--item"><p>Apologies, I realised I half-set up my rule to email me comments when posted but didn't get it working!</p> <p>I saw someone tweeting a lot @ people saying he's set up a new service offering this, did a quick search but can't find it now, will post if I do. It was the usual @ everybody with Drupal in their profile so immediately made it look like a low-quality offering IMO.</p> <p>Also a number of Drupal shops are offering this as part of their hosting offering, I saw Annertech is doing this, amazee.io are I believe hooked up to Drop Guard.</p> <p>I've seen a couple around, just did a quick google and found another - http://inet-design.com/fully-managed-drupal-hosting.html</p></div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=5&amp;1=default&amp;2=en&amp;3=" token="snLK4uT1j2VtGw-KzkfvzjF68wCrC45QPo-Mz5zLNL4"></drupal-render-placeholder> </div> </article> </div> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=49&amp;2=comment&amp;3=comment" token="EYSBuqNkTPlaRK1NSYbtsloNkP_0gUfu3_ifJvB-TkQ"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2016/09/24/drop-guard-automatic-updates-drupal-road-test" data-a2a-title="Drop Guard - Automatic Updates for Drupal - The Road Test!"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2016%2F09%2F24%2Fdrop-guard-automatic-updates-drupal-road-test&amp;title=Drop%20Guard%20-%20Automatic%20Updates%20for%20Drupal%20-%20The%20Road%20Test%21"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Sat, 24 Sep 2016 16:27:02 +0000 Steve Purkiss 49 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2016/09/24/drop-guard-automatic-updates-drupal-road-test#comments Drupal Debrief #1 https://purkiss.com/blog/steve-purkiss/2016/08/19/drupal-debrief-1 <span>Drupal Debrief #1</span> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Fri, 19/08/2016 - 17:30</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><h3>News</h3> <ol><li><a href="https://www.drupal.org/node/2785631">Panels security issues causing issues</a></li> <li><a href="https://groups.drupal.org/node/513151">Gábor Hojtsy - We can add big new things to Drupal 8, but how do we decide what to add?</a> &amp; <a href="http://www.yoroy.com/pieces/vetting-drupal-product-ideas">Vetting Drupal product ideas</a></li> <li><a href="https://assoc.drupal.org/blog/rachfrieee/changes-drupal-association-events-team">DA events team ch-ch-changes</a></li> <li><a href="https://www.gitbook.com/book/drupal-media/drupal8-guide">Drupal 8 Media Guide gitbook</a></li> <li><a href="https://www.youtube.com/watch?v=pe54oVoEDwM">GSOC / Social API</a></li> <li><a href="https://www.drupal.org/node/2779729#comment-11523801">OH: "backdreditor"</a> &amp; <a href="https://www.drupal.org/node/2779729">Move features from dreditor into drupal.org</a></li> <li><a href="https://www.marcdrummond.com/posts/2016/08/18/composer-drupal-8">Marc Drummond - thoughts on Composer &amp; Drupal8</a></li> <li><a href="https://twitter.com/Drupal_Heroes/status/766155578901164032">Some numbers from the drupalaton sprints</a></li> <li><a href="https://twitter.com/dgtlmoon/status/766154088518221825">Abandoned entityreference module gains momentum</a> </li> <li><a href="https://twitter.com/carriehd/status/766061257518710787">"There are many other non-Drupal CMS platforms that allow you to do content modeling and structured content. @NoVAUXMeetup #novaux #uxdc"</a></li> </ol><h4>Of Recent Interest</h4> <ul><li><a href="http://buytaert.net/drupal-goes-to-rio">Drupal goes to Rio</a></li> </ul><h4>On The Horizon</h4> <ul><li><a href="https://www.ostraining.com/blog/drupal/drupal-82/">Drupal 8.2</a></li> </ul><h3>Events</h3> <h4>Recent</h4> <ul><li><a href="https://www.youtube.com/watch?v=gTPMbjKZS9U">Atlantic Coast Nw Drupal Meetup Video</a></li> </ul><h4>Forthcoming</h4> <h5>from <a href="https://www.drupical.com/">Drupical</a></h5> <ul><li><a href="mwds2016.eventbrite.com">Midwest Drupal Summit</a> - Friday 19th - Sunday 21st August</li> <li><a href="http://2016.drupalcampct.org/">DrupalCampCT</a> - Saturday 20th August</li> <li><a href="https://events.drupal.org/dublin2016/news/build-your-drupalcon-agenda-session-and-bof-schedule-live">DrupalCon Dublin schedule now online</a></li> </ul><h4>Related</h4> <ul><li><a href="https://fsfe.org/community/events/2016/summit/frontpage">Free Software Foundation European Summit</a> - September 2nd - 4th, Berlin</li> </ul><h3>Module Releases</h3> <h4>from <a href="https://twitter.com/drupal8modules">@drupal8modules</a></h4> <ul><li><a href="http://dgo.to/drd">DRD 8.x-3.0-alpha3</a></li> <li><a href="http://dgo.to/drd_remote">DRD Remote 8.x-3.0-alpha3</a></li> <li><a href="http://dgo.to/back_to_top">Back To Top 8.x-1.0-beta2</a></li> <li><a href="http://dgo.to/xls_serialization">XLS Serialization 8.x-1.x-dev</a></li> <li><a href="http://dgo.to/contact_storage">Contact Storage 8.x-1.0-beta7</a></li> <li><a href="http://dgo.to/formblock">Form Block 8.x-1.0-beta9</a></li> <li><a href="http://dgo.to/remote_stream_wrapper">Remote Stream Wrapper 8.x-1.0</a></li> <li><a href="http://dgo.to/smart_ip">Smart IP 8.x-3.0-beta2</a></li> <li><a href="http://dgo.to/coroporate_blue">Corporate Blue Theme 8.x-1.0-alpha1</a></li> <li><a href="http://dgo.to/mailhandler">Mailhandler 8.x-1.x-dev</a></li> <li><a href="http://dgo.to/config_split">Config Split 8.x-1.x-dev</a></li> <li><a href="http://dgo.to/user_permissions">User Permissions 8.x-1.x-dev</a></li> <li><a href="http://dgo.to/styleguide">Style Guide 8.x-1.0-alpha1</a></li> </ul><h3>#builddrupalwithsteve</h3> <h4>modules used so far on <a href="http://purkiss.com">purkiss.com</a></h4> <ul><li><a href="http://dgo.to/admin_toolbar">Admin Toolbar</a></li> <li><a href="http://dgo.to/eu_cookie_compliance">EU Cookie Compliance</a></li> <li><a href="http://dgo.to/smtp">SMTP</a> so can use gmail</li> <li><a href="http://dgo.to/google_analytics">Google Analytics</a></li> <li><a href="http://dgo.to/mollom">Mollom</a></li> <li><a href="http://dgo.to/honeypot">Honeypot</a></li> <li><a href="http://dgo.to/metatag">Metatag</a> (&amp; <a href="http://dgo.to/token">Token</a>)</li> <li><a href="http://dgo.to/pathauto">Pathauto</a> (&amp; <a href="http://dgo.to/ctools">CTools</a>) - <a href="https://www.ostraining.com/blog/drupal/pathauto/">OSTraining article on Pathauto</a></li> <li><a href="http://dgo.to/contact_storage">Contact Storage</a> (<a href="https://www.drupal.org/node/2784741">current issue with field definitions</a>)</li> <li><a href="http://dgo.to/simple_sitemap">Simple Sitemap</a></li> <li><a href="http://dgo.to/readme">README</a></li> <li><a href="http://dgo.to/addtoany">AddToAny</a></li> <li><a href="http://dgo.to/bootstrap_clean_blog">Bootstrap Clean Blog</a> (&amp; <a href="http://dgo.to/bootstrap">Bootstrap</a>) <a href="https://www.drupal.org/node/2776927">patch but also needs file upload option added</a></li> <li><a href="http://dgo.to/extlink">External links</a></li> <li><a href="http://dgo.to/video_embed_field">Video Embed Field</a></li> </ul><h4>Tutorials used:</h4> <ul><li><a href="https://www.webwash.net/drupal/tutorials/build-blog-drupal-8-content-types-and-fields">WebWash: Building a Blog in Drupal 8</a></li> </ul><h3>Helpful Links</h3> <ul><li><a href="https://www.drupalvm.com/">DrupalVM</a> - Drupal development Virtual Machine</li> <li><a href="http://drupalsun.com/">Drupalsun</a> - nicely designed Drupal Planet news feed</li> <li><a href="https://www.drupical.com/">Drupical</a> - Drupal events map</li> <li><a href="http://dgo.to/">dgo.to</a> - Short URL to Drupal resources</li> <li><a href="https://drupalconsole.com/">Drupal Console</a></li> <li><a href="https://m.do.co/c/c133f1c749c8">DigitalOcean</a> - please use this referral link to help with hosting costs!</li> <li>Have any ideas/questions about the show or need any Drupal?! - <a href="http://purkiss.com/contact">Get in touch!</a></li> </ul></div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/news" hreflang="en">News</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/news" hreflang="en">News</a></div> <div class="field--item"><a href="/tags/vlog" hreflang="en">vlog</a></div> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> </div> </div> <section> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=2&amp;2=comment&amp;3=comment" token="F49PdYXTo9nYIabImP7ytdb_O42_SRqoEM-rbvtsxlo"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2016/08/19/drupal-debrief-1" data-a2a-title="Drupal Debrief #1"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2016%2F08%2F19%2Fdrupal-debrief-1&amp;title=Drupal%20Debrief%20%231"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Fri, 19 Aug 2016 16:30:00 +0000 Steve Purkiss 2 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2016/08/19/drupal-debrief-1#comments Remote DrupalCon - Day 3 https://purkiss.com/blog/steve-purkiss/2015/09/25/remote-drupalcon-day-3 <span>Remote DrupalCon - Day 3</span> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Fri, 25/09/2015 - 23:14</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><h2>"Talk is silver, contribution is gold"</h2> <p>It's the final day of sessions at the Real DrupalCon and these are the keynotes I've been waiting for! (<a href="http://purkiss.com/blog/steve-purkiss/2015/09/23/remote-drupalcon-day-2">click here for yesterday's blog if you missed it</a>)</p> <p>I say "keynotes" as in a departure from the norm there are two speakers today, both whom I've had the pleasure of seeing previously and both whom touch on subjects close to me -<a href="https://youtu.be/TdEVaOjL20s">Contribution beyond source code in Drupal and Mental Health in Open Source</a>.</p> <h2>Contribution beyond source code</h2> <p><a href="https://twitter.com/sgrame/status/646966174916444160">Sketchnotes by Peter Decuyper</a></p> <p>David Rozas (<a href="https://twitter.com/drozas">@drozas</a>) is a Free Software enthusiast, Drupal developer, PhD candidate and postgraduate researcher whom for the last few years has been researching contribution in Free Software communities, specifically Drupal. I've seen David talk at a few DrupalCamps and it is great to see his work being recognised and able to reach a wider audience.</p> <p>I find it a particularly interesting area as my non-code contributions to the Drupal project are orders of magnitude greater than the ones of code - I just noticed the other day my <a href="https://groups.drupal.org/user/8816">Drupal Groups Profile</a> says I've been involved in organising 70 events, plus I've done things like create <a href="https://vimeo.com/28789460">a cool short film about What is Drupal?</a> In fact one of the reasons I used Drupal in the first place was because writing code for other people's websites selling parking spaces or whatever didn't really float my boat much as a computer scientist so I could do most of what I needed with existing modules and just provide the 'glue code'.</p> <p>It is only really in the past year with the advent of Drupal 8 that my code contributions have started - much of that has also been to do with actually knowing how I can join in, along with confidence issues - the latter covered by today's second keynote so I'll park that one for the moment.</p> <h3>Commons Based Peer Production</h3> <p>The key to David's session for me was the introduction to the audience of the term "Commons Based Peer Production", which is how the Drupal community works. I honestly think the vast majority of people who currently use Drupal at the moment think it's a CMS product produced by some magical team toiling away building the exact feature you want to use for Free, or they simply don't think about how or where it comes from, it just is. By David introducing the notion of Commons Based Peer Production it ideally frames the community and the product, and explains how it is built and maintained - not by one specific company but by a community of peers, i.e. you and me, no magic unicorns in the sky. Far too often I see Drupal 'sold' as a product which often serves to disappoint when people encounter issues and don't understand the process of how they can deal with them, often expecting people to work for free and/or blaming Drupal itself for their problems. An overview of CBPP should be in every Drupal 101 tutorial, get people involved in the community from the start!</p> <p>David covers the notion of what commons are and highlights a number of quotes from Drupal community members and comes to the conclusion that to continue to scale the Drupal community effectively more local meetings in real life are needed to strengthen the connections built online and enable community members to interact on other levels than just code itself. In terms of funding the growth, David explains we need to explore new dimensions of value - an area I'm particularly interested in as I love to write and do other things than code however the only proven way I get money at the moment is from coding.</p> <p>Profiles on the Drupal website are covered, highlighting that community contributions are beginning to be included a lot more, as well as things like listing your mentors which helps the mentors too, not just your own profile. More non-code contributions need to be included - it's often been the mantra of Drupal that "Talk is silver, code is gold", I like the alternative "Talk is silver, contribution is gold". The more we recognise people's contributions of any kind, the more the community will grow organically.</p> <p>David's keynote is an enlightening one as it educates members of our community as to what it is they are actually part of - I think this is key to knowing that you can and are part of it and helps to break down the barriers to contribution. He ends his keynote saying this is only the first set of results and wants to continue the research in an open, Drupal fashion and invites people to join in over at a new group set up <a href="https://groups.drupal.org/research-about-drupal-community">Research about the Drupal community</a> - this is only the beginning!</p> <h2>Mental Health &amp; Open Source<a href="https://twitter.com/annavitals/status/647080066011103233"><img alt="Why people break down infographic" src="http://purkiss.com/sites/default/files/breakdown.png" /></a></h2> <p><a href="https://twitter.com/mikebell_">Mike Bell</a>, UK Drupalist <a href="https://youtu.be/TdEVaOjL20s?t=49m">begins his keynote on Mental Health &amp; Open Source</a> with a caveat that he is not a doctor and this is just from his own experience via a break down. Shortly after his talk I saw <a href="https://twitter.com/annavitals/status/647080066011103233">this infographic by Anna Vital go by on my twitter timeline</a> which I thought was quite appropriate as I think I have at some time encountered similar scenarios and it's how you deal with them which makes them either constructive or destructive.</p> <p>Mike covers these issues well in three sections - Depression, Anxiety and Imposter Syndrome. Rather than repeating his entire keynote I'm going to cover a little about how each of them affects my life and I encourage you to <a href="https://youtu.be/TdEVaOjL20s?t=49m">watch Mike's keynote</a> to gain more insight into what is a very important subject everyone is affected by at some time or another.</p> <h3>Depression</h3> <p>It's strange when you look at your life and all the things you have - I live in a wonderful apartment, in a wonderful city, close to the beach yet depression is something which, as Mike says, just comes over like a dark cloud and it's very hard often to see the good in anything. Like Mike, when I first went for help with my depression from the medical profession I was put on a dose of medication and it did help me get through the worst of it. This was 20 years ago when I was a 'mature student' at uni (I'm now 43!). A year later I went particularly low again and was put on a different medication which had an adverse reaction with me which meant I was shaking all the time and when my best friend pointed it out I took myself off the medication and haven't had any pharmaceuticals since. For me, I know what causes my depression and I know what I need to do to get out of it - eat healthily, do lots of exercise, etc. Doesn't mean I always do it, and I'm particularly out of practice at the moment hence why I'm not as happy as I know I can be, but whilst the pills do help in some cases, they only tend to mask the underlying issues which are often more than not life issues which I believe working through them makes me a stronger person in the end. I'm not advocating not taking medication, I'm just saying for many people it's not the answer but a temporary fix, and if you're happy with that then that's fine. Mental illness isn't one thing affecting people in one way and there's no one answer.</p> <h3>Anxiety</h3> <p>I'm going through lots of anxiety right now - I spent a lot of time and money traveling this year so I could grow my Drupal network and learn more about Drupal 8 but I went over-optimistic again and didn't build my pipeline up enough, so a month ago I lost a number of potential opportunities all at the same time and now I'm two months behind in rent. The worst is it's debilitating which just produces a downward spiral as it means you stop doing the things which bring you the work in the first place. Luckily a couple of months back I forced myself to start blogging again, so when I had to cancel my DrupalCon ticket I thought that instead of being depressed and anxious about cancelling the one thing which probably would've meant I'd bump into someone and make connections for work I'd use my talents, keep myself busy, create the opportunity for connections to happen, and give you all an ear-bending in the meantime ;)</p> <p>I'm anxious about writing about this stuff because I'm freelance, I'm the salesperson, and I worry if people know every bit about my life then they somehow link it with work. Well, for sure I don't do a 9-5 any more, but I go by what I produce, the end result, and when I look back at the projects I've produced lately I'm very proud - happy clients takes my anxiety away for sure! So thanks to Mike, because if it weren't for you I wouldn't feel as easy as I do now writing about this stuff, and frankly I don't care what people think, whether self-indulgent, too much, or whatever, it's helping me right now lol.</p> <h3>Imposter Syndrome</h3> <p>This is probably my biggest bug-bear with mental illness. I've been hacking on computer code for the lat 34 years, yet often when I look at some code I go "I can't do this" and it often take a lot of effort to get past this point, but every time I have I've proved to myself that I can do it. That's probably more confidence than imposter syndrome, for me it stems back to when I was in a previous company in the dotcom days and the head geek took the mick out of my technical capabilities. I admit I'm not the best one to be sitting down coding all day on a client's site, but that's more to do with the fact I'm a creator as opposed to a mechanic, and my days are not 100% coding any more.</p> <p>Where I get imposter syndrome most is when all three issues are affecting me, and I can honestly say yesterday was one of those days. I was ready to sell everything up - I don't know where my next income is coming from, I'm late with bills, I'm credit carded up to the max - what am I doing, who am I kidding that I know this Drupal thing? I realised it was only my current wave of thinking though so instead of staying up late last night to write this final blog of the conference I'd do it the next day. Then anxiety set in - what if I forgot everything I watched? What if I just let it slip and didn't end up writing the blog? I knew this blogging thing was a silly idea &amp; wouldn't last long - etc. etc. - if I told you every thought I had last night on this the page would never end, but we are here so once again the world didn't end ;)</p> <h3>Managing Mental Illness</h3> <p>Mike continues his keynote covering what methods he's using to cope at the moment and areas such as how it impacts companies and business. For me, Drupal enables me to live with who I am as a person - there's enough opportunities around so that I can, bit by bit, fulfil my needs from a number of different areas - personally I've never found a job which could do that for me. You're either building your own life or someone else's, from a bad experience being made redundant back in the 'dotbomb' days I've always wanted to be in a position where I'm in control, and although it's hard to say this right now with imposter syndrome creeping back in with the thought of the late rent and bills, I do believe I've managed to do pretty good having freelanced now for the last 15 years. That's not to say I'm not open to opportunities - often I think about how 'easy' it would be not to have to worry and just take my monthly pay, but I don't believe that's going to fulfil my potential as a human being - in fact I don't think it does for any human being, but that's another story for another time.</p> <p>All I do know is I'm enjoying writing this way too much - I used to blog and write stuff every day as I wrote a Plain English Guide to Open Source but my writing stopped shortly before my Drupal started due to an abusive relationship I was in over in Canada with a girl who I found out was BPD &amp; bipolar, but that's yet again another story so for the moment thanks Mike for helping me back on my road to recovery, apologies to those who are just trying to catch up with the goings-on at DrupalCon, I'll get back on the case shortly, if you want to discuss this, or anything, further please do tweet <a href="https://twitter.com/stevepurkiss">@stevepurkiss</a> or <a href="http://purkiss.com/contact">contact me through my website</a>, comments are broken on here and I'm not fixing them as I'm migrating to Drupal 8 just as soon as I finish this blog ;)</p> <p>Mike's keynote finishes up with a well-deserved standing ovation from the audience then a short Q&amp;A session discussing things like how we can help within our community and at our events. Mike suggests a table at events where local mental health professionals can set up a stall with leaflets, etc. Personally I think we should do those as part of the process but focus on the underlying issues as to why people are having break downs in the first place. It's a strange year as this is covered in other sessions I watched which I brief below as our project has experienced much 'burn-out', but it is great to see so much focus on this - seeing and being part of how we address these issues is great as I'm sure if it were in some company they'd probably just pass it on to the HR department to sort out, we have the opportunity here to forge new ways of dealing with the pressures of modern life. Personally I believe new ways of living like being a digital nomad are part of the cure - we don't need to be near the factories to do our work any more yet we live in an infrastructure and culture built around those principles, luckily this is changing slowly as we do more of this sort of thing.</p> <h2>Other sessions from Day 3</h2> <p>I must admit I had to have a break after watching the two keynotes, it was all a bit overwhelming - two subjects close to my heart, community members and their work being recognised, the reaction of the audience, etc. but I knew there were more awesome sessions coming and two days in with only one to go was certainly no time to give up now I've been blogging about it too ;) So on we continue, and on a similar vein to the keynotes...</p> <p><a href="https://youtu.be/LWdNMhI0MoA">Avoiding and surviving of contribution burnout</a> - <a href="https://twitter.com/laurii1">@laurii1</a> and <a href="https://twitter.com/schnitzel">@schnitzel</a> provide an excellent session on what burnout is as opposed to stress, some tips on how to deal with it personally (like drink more water, cos it makes you pee so forces you to get up and move around!), and how to deal with it in our community (delegation, more praise for participation, etc.). More than half the session is given over to discussion with the audience on how we can make Drupal more sustainable so well worth a watch. I think there will always be stress and burnout whilst there's such a disproportionate amount of contributors vs users of Drupal so believe that at least some of these issues can be addressed by growing the community of contributors so the workload is shared more, and perhaps saying no to stuff if there isn't the material support to go along with the efforts necessary to produce it.</p> <p><a href="https://youtu.be/Zkvoaw6yCcg">Pain Points of Contribution in the Drupal Community</a> - Kalpana's (<a href="https://twitter.com/kalpanagoel">@kgoel</a>) session is along similar veins but more on the practical side of what the problems are with the current interfaces we have and stumbling blocks to participation and how we can get organisations to contribute and participate more.</p> <p><a href="https://youtu.be/vwDCgDfiMEk">Hassle-free Hosting and Testing with DevShop &amp; Behat</a> - there's lots of options for managed Drupal hosting, and whilst I love them they are rather expensive especially when dealing with small or personal projects, plus it's always good to look at other options so when I saw there was an open source hosting project for devshops available I thought I'd check it out. It's interesting, but I still don't feel confident enough to manage my own and clients sites as I'm no sysadmin (I like to break things, guess that's why I like tests so much!) so whilst I'll still be playing around with self-hosting a few pet projects, I'll leave the client stuff up to the professionals. Worth watching if you want to set up your own hosting stack though.</p> <p><a href="https://youtu.be/vtDYXNJkcvM">The future of Groups on Drupal.org</a> - unfortunately the presenter's slides didn't display properly so we couldn't fully see the proposed improvements but you got a good idea that there's a lot of good change on the way, focusing on the personas that were created a while back for drupal.org users so contextual data should show up in the future, at the moment it's focused squarely on developers.</p> <p><a href="https://youtu.be/d2SutA331S8">Planning for Drupal 8.1.x, 8.2.x, and our future together</a> - this was actually more interesting and important than I thought it would be, another half-session, half audience participating in making a list of what to be included in the next versions of Drupal now that we have gone to semantic versioning, i.e. minor versions as well as major providing functionality additions. Presenter <a href="https://twitter.com/timplunkett">Tim Plunkett</a> whom I had the pleasure of finally meeting when I went to DrupalCon LA (yes, that's another reason why I'm cashflow poor at the moment!) is ideally placed to host this talk as his work in the panels and layouts area is particularly affected by semantic versioning as not everything will get into the 8.0.0 release. Watch this if you're planning on using Drupal 8 and want to know what's coming up soon!</p> <p><a href="https://youtu.be/SGvQD36m6Wk">AMA: Drupal Shops Explain How They Do It</a> - not much in terms of visuals on this one but an interesting discussion from a few Drupal shops as to how they do things like manage remote teams and encourage clients to become part of the community. I find it encouraging hearing their efforts but as someone who's seen a lot of the issues lately with getting Drupal 8 out of the door I'll be a lot happier when the balance of contributions is, well a little more balanced. If people can make millions out of Drupal, then it shouldn't be as hard as it was to get $250k for funding some core development - for whatever reason. What businesses get back is Drupal, if you don't fund/help maintain/grow Drupal, it will disappear. Free as in speech, not beer remember!</p> <p><a href="https://youtu.be/iieIuaoFFnk">Distributed Teams, Systems &amp; Culture</a> - An interesting session on how one company - <a href="http://pantheon.io/">pantheon</a> - manages its remote teams.</p> <p><a href="https://youtu.be/ssS5oblHxi8">PHP 7 is (almost) here. OMG! PANIC!</a> - I started to watch this as now Drupal 8 is almost here we are actually making use of some of the functions PHP has developed in the last 10 years or so! It was a little too heavy for me for yesterday so I'll revisit it sometime as interesting things are happening in the PHP world.</p> <p><a href="https://youtu.be/9KG11emrQQk">Paid contribution: past, present, and future</a> - this was a really interesting session on funding contributions, mainly driven by audience discussions being part of the core conversations track. There's been a lot of different approaches to funding in the last year with more people now being paid to work on Drupal fulltime, a few funding campaigns for things like Rules and other efforts. One particular point I thought interesting was the discussion on return on investment for companies sponsoring DrupalCamps, and the general feeling that it's becoming harder to justify as businesses want to know direct results. Suggestions such as questionnaires before the event so companies can research potential employees were offered and a general feeling that the overall sponsorship packages need to be revamped - companies don't care how big their logo is, they want value they can value. There was also the Rules initiative which was funded but took a lot of effort and it was mentioned that it's going to be hard to go back and ask for more so other options would be good to look into - personally I think people just don't know what needs doing or how they can get involved so it's good to see sessions like this try to hatch more ideas out.</p> <p><a href="https://youtu.be/xHRW2Nz2ZL8">Building semantic content models in Drupal 8</a> - I was particularly interested in this session as one of my projects is a Drupal skills-matching site. I must admit I was eagerly waiting Dries' Drupal 8 retrospective to appear in the video timeline so once it did and I saw that most of this looked the same as it was in 7, I moved on. Extremely interesting topic though!</p> <p><a href="https://youtu.be/sDj39PwAz8w">Drupal 8 retrospective with Dries</a> - each year the founder of the Drupal project Dries does a Q&amp;A session which is one of the only sessions I usually attend. After quite a few DrupalCons (8 I believe!), I soon worked out that most of the videod sessions I was fine with watching after the event, so mostly ended up going to BoFs (Birds of a Feather) sessions where you get to participate in the growth of a certain area of the project, or the hallway track. This DrupalCon is the only one I've watched all sessions during the event but sadly that's only because I'm not physically there!</p> <p>Dries goes through what worked well, what didn't, and how we can improve in the future - release fewer things sooner, improve core funding, etc. The take-away quote for me was when he said "we need to get off our processes island as well as our technical one" which couldn't have summed it up better - other projects and organisations have worked on this for years and we should gain knowledge from them, at the moment we just throw things into the pot and Drupal comes out the other side, we need more direction.</p> <p>A truly superb session and one every Drupaler must watch!</p> <h2>Watch Later List</h2> <p>By this time I was pretty bushed so I thought I'd go through the rest of the <a href="https://www.youtube.com/user/DrupalAssociation/videos">Drupal Association videos</a> to see which other ones from the conference I'd like to watch. As per usual a massive list emerged but thought I'd post it here for those like-minded!</p> <h2>We did a DrupalCon!</h2> <p>These words from the closing session where they announced the <a href="https://events.drupal.org/dublin2016">next European DrupalCon will be in Dublin</a> next September! Before that there's <a href="https://events.drupal.org/asia2016">DrupalCon Asia in Mumbai</a> in February and<a href="https://events.drupal.org/neworleans2016">DrupalCon New Orleans</a> in May. I do hope I manage to work out my business models so I can afford to go to all. I'm particularly interested in Mumbai as I've never been there and I think there is massive opportunity over there, I'd love to grow teams of connections out there, watch this space and <a href="http://purkiss.com/contact">get in touch if you want to be involved or can help out in any way</a>.</p> <p>Although I didn't make it I do feel doing this blog has made me feel more part of it so didn't totally miss out but I do recommend you make the effort to attend a DrupalCon if you haven't already, at least go to your local events or start one up if there isn't anything - I learned the hard way that Drupal isn't just a sole way of working, it's all about the people, join in and soon things start to become much clearer.</p> <p>Well, that's it from me - thanks for joining me on my remote DrupalCon journey and I hope never have to do it again as instead I'll be there ;)</p> <p><a href="http://purkiss.com/contact">Click here to contact me to discuss this further, I welcome all feedback!</a></p> </div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/events" hreflang="en">Events</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/drupal" hreflang="en">drupal</a></div> <div class="field--item"><a href="/tags/drupalcon" hreflang="en">DrupalCon</a></div> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> </div> </div> <section> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=31&amp;2=comment&amp;3=comment" token="bSPtugrLwN5jbrCNR2Q7iGOm7e9RD_nshh2xPTofkFA"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2015/09/25/remote-drupalcon-day-3" data-a2a-title="Remote DrupalCon - Day 3"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2015%2F09%2F25%2Fremote-drupalcon-day-3&amp;title=Remote%20DrupalCon%20-%20Day%203"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Fri, 25 Sep 2015 22:14:21 +0000 Steve Purkiss 31 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2015/09/25/remote-drupalcon-day-3#comments Remote DrupalCon - Day 2 https://purkiss.com/blog/steve-purkiss/2015/09/23/remote-drupalcon-day-2 <span>Remote DrupalCon - Day 2</span> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Wed, 23/09/2015 - 23:11</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><h2>Let's never do that again</h2> <p>Unlike <a href="http://purkiss.com/blog/steve-purkiss/2015/09/22/remote-drupalcon-day-1">when I was watching yesterday's Driesnote</a>, I actually quite expected these sorts of words to come out of the mouth of Larry Garfield, aka <a href="https://twitter.com/crell">@crell</a>, long-time Drupal contributor and the reason I stayed up way too late last night after blogging so not strictly Day 2 but deserves a mention as was a superb, insightful session "<a href="https://youtu.be/DTJnJxFfvmI">Drupal in 2020</a>".</p> <p>The never do that again refers to the four-or-so years spent on developing Drupal 8 with most of that time spent not developing new stuff but just barely catching up with modern technology trends. In order to be relevant even with today's technologies we need to be looking at what we could be doing and Larry shows off a number of impressive development projects which enable PHP to run in a similar way to node.js - even faster in many cases. Well worth a watch!</p> <p>I ended the night with <a href="https://youtu.be/iKNXkQlOlPk">Ken Rickard's 2020 Vision</a>, an entertaining session from a highly experienced professional reminding us that we are implementing a content management system, not a web publishing tool which comes from the print era, and thus there are many different considerations, and often many of the non-technical ones are overlooked whereas they can prove to be the biggest obstacles.</p> <p><a href="https://twitter.com/NathalieNahai">Day 2 Keynote - Web Psychologist Nathalie Nahai</a></p> <p>I'd seen Nathalie talk before so I must admit I wasn't paying much attention until I saw a question pop up on twitter asking how this session mostly on marketing manipulation techniques was relevant to our community. Nathalie quickly focused on how we could use some of the techniques to help our current community as well as attract new people in by simply telling our story. A well-deserved round of applause came when Nathalie remarked:</p> <p>"This is such a vibrant community it needs to be expressed online much more"</p> <p>This is a big area of interest to me as I see so many wonderful stories from around the Drupal world yet currently the loudest voices being heard are the ones with funding. I've not an issue with that per se, I believe we could do more by collaborating together on strong marketing messaging.</p> <p>I know the DA are doing as much as they can with the resources they have available, however I believe there is a place in the market for an organisation which markets the community as a whole - I envisage trucks that turn into training rooms / 24h coder lounges with schwag stores on board so can rock up to camps all over the place ;) But I guess that's another blog for another time - all I know is I'd love to go round the world interviewing the community for all to see &amp; potentially training many more unexplored areas up in our community values of ownership!</p> <p><a href="https://youtu.be/PZn8o---ce8">Making the Leap: Successful Products as a Web Agency</a></p> <p>Drawing from his own experience with Drupal offsite backup service <a href="https://www.nodesquirrel.com/">NodeSquirrel</a>, <a href="https://twitter.com/dgorton">Drew Gorton</a> from managed hosting service providers <a href="https://pantheon.io/">Pantheon</a> gave an interesting talk covering how quite a few product businesses had managed to make the uncommon successful birth from an agency. Drew provides useful insights I empathise with as I much prefer working in the product world however what with my bootstrapping and co-operative ideals it's taking a little longer than I'd hoped for ;)</p> <p><a href="https://youtu.be/NtpfzhPjnLo">Self-Managing Organizations: Teal is the new Orange</a></p> <p>This was a really interesting session from a company I hadn't heard of before - <a href="https://www.liip.ch/en">Liip</a>. Their organisation is around the 120 people mark and they have a self-organising way of working, with the ratio of pay difference between high and low 3-1. I beleive the company is also owned by the staff however I don't think the percentages were detailed, will have to watch again. They said they had no plans and let teams decide their own projects, strategies, etc. Obviously it's not all plain-sailing and provided a for a great case-study in things going certainly a better way in terms of fairer working environments and enabling human beings to grow rather than be stunted by job roles.</p> <p>I watched a little of <a href="https://www.youtube.com/watch?v=uXVfkzqiOtk">Shut up and take my money!</a> which was about integrating the <a href="https://stripe.com/gb">Stripe</a> payment system with Drupal 8. I've done this previously and nothing much seemed to be different on the Stripe side so moved on - the videos are pouring in quick &amp; fast!</p> <p>I then watched <a href="https://www.youtube.com/watch?v=PqJOM5n1-yM">Expose Drupal with RESTful</a> for a short while until I realised it was 7 so moved on to <a href="https://www.youtube.com/watch?v=vLIvNzO_QRg">PhpStorm for Drupal Development</a> which was a fairly short session clocking in at 15 minutes however very useful, even pointing out a feature which shows you what features you have and haven't been using. I'm no fan of the licensing on PhpStorm but it does make life much easier so will be harder to give up than my macbook but I guess will have to be done at some point if I'm going to achieve complete Freedom!</p> <p><a href="https://youtu.be/EqOOPeodTzc">Headless D8 in HHVM plus Angular.js</a></p> <p>It was noted from the outset that this was a sponsored session from <a href="https://platform.sh/">platform.sh</a> so they would be showing off their product, which I've had the pleasure of playing around with a little on a time-limited trial, however I was suckered in by the buzzwords so I stuck it out. Being at home it was even easier for me to just click the mouse than suffer potential slight embarrasment as I walk out of the session room but in reality that rarely happens and I end up sitting right through the session continually questioning myself as if I were watching the fifth instalment of Jaws wondering wether an incident with a fish will happen at some point.</p> <p>Suffice to say platform.sh works with HHVM and Angular.js. I've nothing against sponsor talks or platform.sh, I think they are both good things, just not this session, for me at least. I guess I wanted to see something shiny, not just a product demo, I feel they could've made a lot more out of the title than they did without having to be so focused on the continual sales pitch. Which I know that's what it was, but felt more like something that should've been out in the exhibit hall. I guess that doesn't get videod and put into the stream though.</p> <p>I started to watch <a href="https://youtu.be/EglfVllpYd4">Altering, Extending, and Enhancing Drupal 8</a> by Joe Shindelar (<a href="https://twitter.com/eojthebrave">@eojthebrave</a>) whom I've had the pleasure of meeting at a number of Drupal events here &amp; in the US. Joe's a great teacher, but for me as I've been playing with Drupal 8 for a while now I decided to skip on, especially when he said "Don't hack core" which is I know the thing, but in Drupal 8 I plan to hack core by simply using its interfaces... it's made for 'hacking' this time. Properly hacking that is of course! I realise this presentation wasn't for me though.</p> <p>Then I watched a little <a href="https://youtu.be/QcU_LCAHNLg">Building amazing searches with Search API</a> but all was looking pretty similar to 7 so thought I'd put that one on the watch when I have a specific need for it list. Then came along a truly awesome session...</p> <p><a href="https://youtu.be/LWdNMhI0MoA">Avoiding and surviving of contribution burnout</a></p> <p>As someone who has suffered from depression I am particularly proud of the fact our community can have sessions that cover topics like this. I feel like I'm coming from a different angle as I'm spending most of my time working out how and where I can be of help and it's the client work if anything that's burning me out due to my complete lack of wanting to do anything other than write beautiful code, and I've not yet met a client who has the want or budget to pay me to do that. Sarcasm aside, burnout is a big issue, and something I have an issue with the business/community balance side as I believe one is currently gaining far more benefit out of the other than there should be and I don't really think it's anything that can't be solved with a more balance put back into the situation. That of course is not to make light of anyone's situation, just how I see the situation from my many travels around camps and to CXO meetups and my experience in the world up until now.</p> <p><a href="https://youtu.be/Zkvoaw6yCcg">Pain Points of Contribution in the Drupal Community</a></p> <p>Along similar veins to the previous session, <a href="https://twitter.com/kalpanagoel">Kalpana Goel</a> delivers another important session trying to untangle the issues surrounding contibuting to the community and how we can potentially go about solving them.</p> <p>Then I watched around half of <a href="https://youtu.be/vwDCgDfiMEk">Hassle-free Hosting and Testing with DevShop &amp; Behat</a> which looks like an interesting, open, option for self-hosting your own sites. Being a little tired I thought I'd come back to that when I'm more awake one weekend.</p> <p>Last one for the day was <a href="https://youtu.be/vtDYXNJkcvM">The future of Groups on Drupal.org</a>, which gave an interesting insight into forthcoming changes on drupal.org, much powered by the persona work done previously, so should be interesting when I log in and tailored content appears for me! It's great to see movement finally here, but I agree with Dries when he said previously it really needs perhaps ten million dollars of investment in it. ATEOTD, if you don't look after your tools you won't be able to make a decent product. It's always been my hope that as we talk about Drupal more, about the Why, and show people around the world what we're building the community will organically scale as people will want to be part of it. I think we have a number of issues in the way of that at the moment - perception, current human fear-driven non-sharing society, and state of internal systems. It's good to see a little focus going on the things we can fix now, hopefully we can scale it up soon so we don't get more fractured across different proprietary community silos just because they're 'easy'.</p> <h2>Wrap-up</h2> <p>Well I may not be in Barcelona but I'm certainly ranting like I'm at DrupalCon, just on the record lol! With all the tweets and session-watching I'm certainly getting DrupalCon tired so signing off for the night, looking forward to the final day of sessions tomorrow with another important keynote and of course looking forward to finding out where next year's European DrupalCon will be - hopefully I'll plan a little better and build a little buffer so I don't miss out!</p> <p>Unfortunately my comments are broken on this site so whilst I'm migrating to Drupal 8, do please tweet me <a href="https://twitter.com/stevepurkiss">@stevepurkiss</a> or get in touch via <a href="http://purkiss.com/contact">my contact form</a>.</p> <p><a href="http://purkiss.com/blog/steve-purkiss/2015/09/25/remote-drupalcon-day-3">Click here to read Remote DrupalCon Day 3</a></p> </div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/events" hreflang="en">Events</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/drupal" hreflang="en">drupal</a></div> <div class="field--item"><a href="/tags/drupalcon" hreflang="en">DrupalCon</a></div> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> </div> </div> <section> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=30&amp;2=comment&amp;3=comment" token="8wewMAKC0uqsWM0QjaNynVaLnWgPdKnjktil3Z76i3I"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2015/09/23/remote-drupalcon-day-2" data-a2a-title="Remote DrupalCon - Day 2"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2015%2F09%2F23%2Fremote-drupalcon-day-2&amp;title=Remote%20DrupalCon%20-%20Day%202"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Wed, 23 Sep 2015 22:11:12 +0000 Steve Purkiss 30 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2015/09/23/remote-drupalcon-day-2#comments Remote DrupalCon - Day 1 https://purkiss.com/blog/steve-purkiss/2015/09/22/remote-drupalcon-day-1 <span>Remote DrupalCon - Day 1</span> <span><span lang="" about="/u/steve-purkiss" typeof="schema:Person" property="schema:name" datatype="">Steve Purkiss</span></span> <span>Tue, 22/09/2015 - 09:07</span> <div class="field field--name-body field--type-text-with-summary field--label-hidden field--item"><h2>Release Drupal 8 and momentum will come</h2> <p><em><strong>“Is Drupal losing momentum? Yes”.</strong></em></p> <p>Not the words I was expecting to hear (<a href="http://purkiss.com/blog/steve-purkiss/2015/08/15/drupalaton-day-zero-drupal-8-shipped-you-didn%E2%80%99t-miss-the-boat-already">happens to me a lot this year</a>) come out of <a href="http://drupal.org/">Drupal</a>’s founder Dries Buytaert as he took to the stage in Barcelona for this year’s European wing of the<a href="http://drupalcon.org/">DrupalCon</a> conference for his regular “Driesnote”, but as I sit here back in rainy England after having to sell my DrupalCon tickets last week I certainly empathised. Dries explains this lull happens every time at this point between major version releases and assures us a big spike will come when Drupal 8 is released, so all we can do at the moment is work as fast as possible to get Drupal 8 out.</p> <h2>Move to a more sustainable release process</h2> <p>Once Drupal 8 is out there Dries suggests using a system of feature branching so that you can always be shippable (<a href="http://buytaert.net/always-be-shippable">http://buytaert.net/always-be-shippable</a>). This seems like a much more sensible approach than the current one, enabling timed releases and adaptability as different features encounter different issues along the way hopefully meaning they won’t have as much impact on each other as they have in the current release cycle so we don’t have to experience this huge effort to get everything working all at the same time going forward.</p> <p>Whilst I think this is a good approach I fear this opening up to a huge amount of functionality being able to potentially go into core as it’s easier to develop, which is where the question of different cores for different uses comes in. There was a blog post a while back about how Drupal could evolve more like Linux has with distributions - personally I see that more attractive than putting all the things in core over time, especially if one of the major focus of our efforts in the future is to be for the non-coders as Dries goes on to cover in his keynote.</p> <h2>Put non-coders first to increase our impact</h2> <p>Dries continues to cover Drupal’s market position, suggesting our focus should now be on the user experience to make it easy to do things with Drupal. There is no point in providing functionality for non-coders if they can’t figure out how to use it so personally I’m glad to see a focus on this, and with the growing community of front-end developers, UX people and other job roles I daren’t guess as I’ll no doubt offend as it’s not my area of expertise - I believe it’ll gradually happen.</p> <p>Whilst WordPress has focused heavily on user experience, Drupal has focused much more on the developer experience. Now we have achieved so much on the developer experience side of things it is time to focus on the user experience, and to cut back from comparing to WordPress as Drupal has moved on much further in terms of technology capabilities and instead to focus on the majority of sites out there which currently have no CMS. By focusing on the usability side it will be much easier for people to see how advanced Drupal is and actually make use out of it themselves instead of being baffled by terminology and ‘Drupalisms’. </p> <h2>Drupal 8 will be the go-to platform for sites and apps</h2> <p>Dries then talks about Drupal’s technological relevance in the future as many other front-end frameworks appear and develop and are certainly here to stay. He outlines the future not as one of a completely de-coupled Drupal as you miss out on a lot of Drupal’s goodness by taking that approach and instead talks about ‘progressive decoupling’ where Drupal is much more integrated into the front-end process. I tend to agree here and put it down to current lack of appreciation of Drupal’s capabilities simply because there are so many, and as Drupal 8 is adopted more I am sure more examples will fuel the interest and we will see some interesting ‘mash-ups’ - if I had unlimited time &amp; funds I’d certainly be hooking up views to my Oculus VR - do feel free to sponsor that one lol!</p> <h2>Other sessions from Day One</h2> <p>Once the keynote had finished I was pleasantly surprised to see the sessions appear almost immediately on youtube, here’s a link to the Drupal Association’s video list where they appear:</p> <h3>DrupalCon Barcelona 2015: The Prenote!</h3> <p>Always a fun kick-off to DrupalCon, always a laugh and a song, watch it if you didn’t get to go along!</p> <h3>Content Strategy for Drupal.org</h3> <p>For a long time now Drupal.org, the online home of the Drupal community, has been maintained mostly by the community however recently thanks to funding more and more is being done to improve the site which is the biggest online Drupal site there is. Tatiana (<a href="http://twitter.com/tvnweb">@tvnweb</a>) who works for the Drupal Association as product owner of drupal.org details the process of the work done so far to categorise the content and uses of drupal.org and covers the current and future developments.</p> <p>The main area of change is around managing of projects which is moving to organic groups and should provide a much more comprehensive way of collaborating online than the current functionality provides. I am certainly enjoying all the improvements which have been regularly appearing of late and am excited about the growth that these changes will hopefully provide by making it easier to see, understand, and become part of the Drupal community, something which has been up until now quite a mystery to many people!</p> <h3>How to diversify your business beyond Drupal</h3> <p>This was a journey through the trials and tribulations of Amazee Labs as they grew into different service offerings and geographical locations - always interesting to hear the issues surrounding business and a lot to be learned from one of Europe’s top Drupal agencies! </p> <h3>Winning and delivering big projects from a small agency perspective</h3> <p>An interesting take on how to approach the business scene from a different angle focusing on your individual strengths as an agile, small business.</p> <h3>Configuration Deployment Best Practices in Drupal 8</h3> <p>If you want to get down-and-dirty with CMI on Drupal 8 then this is the session for you. See how to move config from one environment to another, something which was nigh-on impossible in Drupal 7 so yay to CMI!</p> <h3>Solving Drupal Performance and Scalability Issues</h3> <p>Tine Sørensen, whom I’ve had the pleasure of meeting at a few Drupal events but sadly missing out this time :(, delivers a useful session covering many issues of dealing with performance and scalability from both the technical and human side of things. Often there’s many low-hanging fruit but it’s sometimes hard to get developers to work on them as they want to work on perhaps things which means they can code more like refining sql queries coming out of Drupal. Instead of this, Tine’s approach is to get the low-hanging fruit out of the way then look at the situation again as there’s hidden costs of changing what comes out of Drupal in terms of sustainability. Tine mentions the graphics library GD being one culprit, with ImageMagick being a replacement using much less resources. </p> <p>There’s way too many good bits of information in Tine’s session for me to highlight here so do watch the session as often many of these easy-to-rectify things are overlooked and the blame is put on Drupal for being slow when all it takes is a little tweaking to get it running just fine!</p> <h3>Drupal 8 theming</h3> <p>I thought I’d finish off the day by watching MortenDK’s theming talk. For the first time in a long time I was sitting there wondering what had happened as there seemed to be a calmer Morten presenting - a testament to the work that’s gone into changing how front-end developers work with Drupal and I could empathise with him when he says he now looks at Drupal 8 code with a sense of relief as that’s how it also feels from a back-end developer’s point of view especially if like me you came originally from an object-oriented way of working 15 years ago then had to learn Drupal’s hook system!</p> <h2>Final thoughts</h2> <p>Drupal 8 is a game-changer and I’m excited about the possibilities - especially as the community grows around the world. Meanwhile, it’s back to youtube until I pass out on this no-frills DrupalCon experience - sad to be missing out on all the networking &amp; fun times but sh*t happens, one lives and learns... ;)</p> </div> <div class="field field--name-field-category field--type-entity-reference field--label-inline"> <div class="field--label">Category</div> <div class="field--item"><a href="/category/events" hreflang="en">Events</a></div> </div> <div class="field field--name-field-tags field--type-entity-reference field--label-inline"> <div class="field--label">Tags</div> <div class="field__items"> <div class="field--item"><a href="/tags/drupal" hreflang="en">drupal</a></div> <div class="field--item"><a href="/tags/drupalcon" hreflang="en">DrupalCon</a></div> <div class="field--item"><a href="/tags/drupal-planet" hreflang="en">Drupal Planet</a></div> </div> </div> <section> <h2>Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=29&amp;2=comment&amp;3=comment" token="UMnLAd2pwczbhuG_AINUbJsxrKQK2Tp-jz6Pxzped2E"></drupal-render-placeholder> </section> <span class="a2a_kit a2a_kit_size_32 addtoany_list" data-a2a-url="https://purkiss.com/blog/steve-purkiss/2015/09/22/remote-drupalcon-day-1" data-a2a-title="Remote DrupalCon - Day 1"><a class="a2a_dd addtoany_share_save" href="https://www.addtoany.com/share#url=https%3A%2F%2Fpurkiss.com%2Fblog%2Fsteve-purkiss%2F2015%2F09%2F22%2Fremote-drupalcon-day-1&amp;title=Remote%20DrupalCon%20-%20Day%201"></a><a class="a2a_button_facebook"></a> <a class="a2a_button_twitter"></a> <a class="a2a_button_google_plus"></a></span> Tue, 22 Sep 2015 08:07:33 +0000 Steve Purkiss 29 at https://purkiss.com https://purkiss.com/blog/steve-purkiss/2015/09/22/remote-drupalcon-day-1#comments