235: Mastering Drupal 8 Views - Meet Gregg Marshall

Gregg Marshall contacted me while he was finalizing his book, Mastering Drupal 8 Views, for Packt Publishing. Flatteringly, he asked me whether I'd be willing to write a foreword for it, after having a look at a late draft. I had a look, I liked it, I wrote the foreword and was pleased to run into Gregg at DrupalCon New Orleans. Listen to the audio or watch the video of our conversation. Below is also a full transcript of our chat.

jam: We are still in glamorous, beautiful New Orleans, Louisiana at North American DrupalCon 2016. This is Gregg Marshall. How was your Con, Gregg?

Gregg Marshall: Great, much different from other ones. As I get more involved with the community, it becomes less about going to sessions and more about seeing the people and I help the people.

jam: You help people a lot, right?

Gregg Marshall: I’ve volunteered to be a mentor and I actually got into that by – I’ve showed up in my first couple of sprints and in those days setting up Drupal on a Windows machine was a unique skill that I had and so I found myself doing that more and more. I said, well, if I’m going to spend my whole day setting up other people’s machines, I might as well volunteer!

jam: Right.

Gregg Marshall: I started volunteering to do that. Now, it’s gotten - thanks to Dev Desktop 2, to the point we’re almost through with this.

jam: We’ve made you redundant. I’m sorry. Thank you for your contribution.

Gregg Marshall: ... My retirement party is next week ;-)

jam: How many DrupalCons have you been to?

Gregg Marshall: First one, I went to in the US was 2010, San Francisco. That’s when I made the decision to stop using Drupal and start actually developing using Drupal. Whitehouse.gov had been announced and that was a significant announcement. It became clear that the federal government was going to go that way because Drupal was going to become the IBM of CMS’s. No one will get fired for picking what the White House picked. Standing in line for coffee at the first coffee break, the people in front of me, lamenting the fact that they couldn’t hire developers, no matter how much they paid them. I went, “Okay. I’m a channel marketing consultant. I have to work really hard to convince people that they need me even though they really do, most of them.” With that, I said, maybe I should rethink my priorities and ...

jam: Wait. Fast forward six years, what do you do now, Gregg and for whom?

Gregg Marshall: I’m the senior architect for the State of New York. While I live in Denver, I work in Albany so it is a bit of a commute and I’m responsible for helping build a system that will house all 257 New York State websites. They’re standardized on Drupal. They did that about a year ago and they’re now in the process of building a common platform that will house everything and move everything off many different CMS’s and not CMS’s flat-HTML files into a Drupal environment that is big and Drupal-based.

jam: Your job is Drupal now.

Gregg Marshall: Yes.

jam: The prediction in the first break coffee-line in 2010 in San Francisco, DrupalCon was essentially true?

Gregg Marshall: Essentially true. I’ve thought it would be federal government. I did a project for the SBA but it accidentally ended up being the state in New York and it’s been interesting.

jam: Why not. So, Gregg, please introduce yourself. Tell us who you are and what you do.

Gregg Marshall: I’m Gregg Marshall and I’m a contractor that is working for the, - as we just said, the state of New York in Albany as a senior Drupal architect. I started a two-month contract 41 months ago. I was originally brought in to help with an upgrade from Drupal 6 to Drupal 7, that particular site was interestingly built. It had 800 nodes of PHP in it. So about two weeks into the project, I said, “Yes, we’re not upgrading. The best we could do is migrate.” It took them about a year and a half to get around to doing that and then they went outside and had a company build it for them. Along the way they asked me if I could do a little small site for a project they had and I did that in about a week and then they had another emergency pop-up and we did that in about a week and then they renewed my contract and it just keeps getting renewed.

jam: It sounds almost ideal, frankly.

Gregg Marshall: Other than being away from home, three weeks a month is a bit of a challenge but fortunately I have grown children so they’ve reached the point where actually they backfill the things I should be doing. My younger son actually mows the lawn and fixes the plumbing and does all the stuff and actually that’s good because I don’t really like doing that to begin with.

jam: You’ve got it all worked out, man.

Gregg Marshall: Life’s good.

jam: Six years ago, Gregg Marshall channel marketing consultant, how did you discover Drupal?

Gregg Marshall: Actually, many years ago, we were manufacturer’s reps in the plumbing and heating industry. Our manufacturer’s reps are a contract sales force which is where the channel marketing comes from. These people who sell through other people and don’t actually own their sales force, have a unique management challenge because it’s not like they work for you, you can’t command them to do something. You have to make it more fun to sell your product than anyone else’s because they have a large catalogue of products that they can sell.

jam: Okay.

Gregg Marshall: I had taught a class on how to build the websites using HTML. We were using Microsoft Word 6 with an add-in that allowed you to save as HTML. It was a very interesting process.

jam: It was beautiful HTML.

Gregg Marshall: It was HTML with – I think I figured out how to get a background image on it but that was about the limit.

jam: Right. Lots of non-breaking spaces.

Gregg Marshall: Lots of non-breaking spaces, one pixel gifs, tables.

jam: Oh! Spacer gifs!

Gregg Marshall: Tables of tables of tables to get lay-out on a page.

jam: Kids, this is how we used to build the web.

Gregg Marshall: As a rep, it was interesting because it was right as USA TODAY was running - every issue had – the internet was the big thing and the web was the big thing but that industry is 200 years of tradition, unmarred by innovation. When we announced our website, there were three major type trade publications. All three of them run half a page which is a big deal for a simple, little website. I think we had four pages, five pages. It was just this little thing. From there, I built these little sites and we were doing what are called microsites and I started thinking to myself, this isn’t really the best way to be doing this. I need to probably think about a CMS because I had learned that there were these things called CMS’s and that they were open source. I was actually down to Joomla and Drupal. I had a book on each and I was reading them and I couldn’t really tell and I’d gotten to know the president of the hosting company we’re using at the time. I sent him an email and I said I’m looking at maybe switching to CMS-based publishing. I’ve been down to Joomla and Drupal. What do you know about them? An hour or two later, I get an email back. He said we just run about across our servers and we have more Drupal installations than we do Joomla. It was like, “Okay. I’m doing Drupal!”

jam: Democracy, democracy ...

Gregg Marshall: Based on that recommendation alone, I started learning Drupal.

jam: What version of Drupal was that?

Gregg Marshall: Actually, I downloaded five and put on a server with, at that time, every module that existed for Drupal 5 which is about 400.

jam: What?

Greg Marshall: I remembered going to my first user group meeting and telling everyone that I was just starting with Drupal and that I put Drupal 5 and all the modules on D rupal.org on my dev site. Someone looked at me and says, “It runs?” What I didn’t know then because I was still so new was there’s a whole big difference between putting the module on your site and enabling the module.

jam: In Drupal 5 Land, giving yourself the permission to actually use it as well.

Gregg Marshall: That was and then so I was learning and experimenting and reading the book and trying to understand Drupal and the announcement of Drupal 6 came that it was going to be out very shortly and I thought, well, it doesn’t make any sense to learn the old version. I might as well just go ahead and switch to the new version - switched to the new version and that was actually the first sites I ever put into production were based on Drupal 6, very early days the Drupal 6 onwards so 2008-ish. I think I’m just passing maybe 10 years on Drupal.org.

jam: How many sites would you say you've put together in Drupal by now?

Gregg Marshall: 40? 50? ... as a principal contributor to it. More and more I work on teams, so while I don’t consider myself a themer, I’ve done them but I wouldn’t consider myself a themer. I asked usually to be teamed with somebody who’s a themer, the one I’m working with that I’ve been working with for the last two or three years has really taught me a lot of CSS. I’m finally getting to the point what I consider to be this black magic. It’s not really what you would think it should be pretty well. I should be able to look at something and say, “This is how it happens,” and you go, “But why is it not doing it this way? You find inheritance and all those things and she’s gotten me to the point where I really have started to understand that. Mostly as the architect content-type creator ... Views, I do modules when I need to. I have firm belief that if there’s a contributed module, that the last thing I want to do is write anything custom.

jam: Would you describe yourself primarily as a site-builder/developer or developer/site-builder or how would you ...?

Gregg Marshall: Probably site builder developer. I would put the emphasis on building using existing building blocks that are available to us before I will jump in. I have friends in the community that view all projects as a custom module held together by core.

jam: If you like to write code, you’re looking for excuses to write code. If you want to have more time in your life to do other things, like maybe writing code is not the first thing you want to do, then you have systems like Drupal which let you click together a whole bunch of great stuff and then finish it off with those tiny bits of glue code, custom-code, a new module that you might need along the way but it’s also a matter of taste in a way.

Gregg Marshall: Yes. I think that’s part of it. I think the other part of it is, there’s this belief that, well, if you put too many modules on your site, it will run slow and while there is certainly a component because every module is loaded every page load, the reality is with the modern versions of PHP you have APC built into PHP, you have Varnish and all the proxy server caching. That becomes less, I think, of an issue and more of the, “how efficient can I be putting a site together.” When I look back, for instance, the work I’ve done with New York, a lot of the successes we had were literally ... my favorite are the Governor-initiatives were Thursday afternoon they say, “Tuesday morning, we’re having a press conference. We need a complete site built to support this initiative under this domain.”

jam: They tell you that Thursday.

Gregg Marshall: Thursday afternoon and by Tuesday morning at 10:00 we have to – which means really Monday afternoon by close of business so they can review it and tell you what you didn’t do right.

jam: Yes. So, having a tool like Drupal at your disposal probably helps you get that done.

Gregg Marshall: Yes.

jam: Look. Show me that thing. Look everyone. Look at this micro pretend book cover that we have here for “Mastering Drupal 8 Views” by Gregg Marshall! Gregg, you’ve just written a book?

Gregg Marshall: I have.

jam: In real time we are talking at DrupalCon, New Orleans which is May – what is today?

Gregg Marshall: Fifteenth, 13th, it’s Friday, the 13th. It’s a lucky day.

jam: Oh, that’s right. Middle of May. Is the book out?

Gregg Marshall: The book should be out by the end of the month. They sent me what are called “Pre-flights” which I think are the version right before it hits, goes, gets uploaded to ... whatever process and generates the book itself. The eBook should definitely be out by then. Printed books, I don’t know how long it takes them to print whether they do print on demand or whether they’re actually printing 10,000,000 copies of it because this is going to be a bestseller.

jam: Okay. How many editions are you going for?

Gregg Marshall: I want to have some land in Florida :-)

jam: You’ve built a lot of websites and you’ve been part of a lot of projects and you really ... my impression is that you do spend most of your time in this world of clicking and configuring websites in the administrative backend.

Gregg Marshall: Or helping other people now and much more click and configure. The way the book was written, it sort of follows a person through the process of learning how they build Views because they started as a content editor. That person is actually patterned after someone at the state of New York.

jam: We shall name no names.

Gregg Marshall: We won’t use their name except the person’s name Lynne, happens to be the middle name of the person that did it so if you can find the middle name of that person, you’ll know who I’m talking about but ...

jam: One of Drupal’s killer apps since ... well, realistically Drupal 5 even though it was available in late four ... one of Drupal’s killer apps has definitely been Views, this tool that allows us to make a sophisticated, complicated database queries from a user interface.

Gregg Marshall: Yes. I mean ...

jam: And then display them in any number of ways and the one that I’m most excited about now in Drupal 8 is that it can be a REST endpoint so you have an interface to build APIs and web services. You have a digital business building interface in Drupal 8.

Gregg Marshall: A semi-technical person could put together an API that used to require a Ruby on Rails developer to do and now you can literally from the same time you’re producing the front page of your site, produce an API that would allow a decoupled or app version of that same site be generated using the exact same presentation or data content model but with a completely different presentation layer put on top of it.

jam: We’ve had this amazing tool that I think has given us the edge and maybe really helped adoption and build some of the incredible applications in Drupal 5, 6, 7 and now 8.

Gregg Marshall: And 4.7 and actually it was the first commits were in 4.6 but they never actually got passed a dev version.

jam: Right but I think in Drupal 5 is when it really, really took off.

Gregg Marshall: I think that’s when CCK actually made it to become common ...

jam: The triumvirate of every Drupal 5 site of any significance was Views, Panels, CCK and CCK became Fields in core with Drupal 7, now Views is in core. What does this do for us as a technology platform and as a community? We have this key killer app inside our main release now.

Gregg Marshall: The first thing it did for us is it made Drupal 8 usable almost the day it was released.

jam: Define usable.

Gregg Marshall: When Drupal 7 came out, Views was eight, six months, a year later and you had Fields in core. You could create this rich content and then you couldn’t ever do anything with it because all you had was basically you can take a note and display a back out and whatever you could do within the view mode of that mode and you couldn’t even create new View modes which, of course, Drupal 8 added. Until Views came out, most people didn’t bother moving from Drupal 6 to Drupal – in fact I didn’t. I was still building Drupal 6 sites a year into Drupal 7 and then the right set of modules came, were available and so much of the functionality that you had to wait for the modules to be there for Drupal 7 and especially for Drupal 6 are now part of core that pretty significant sites are being built. We feel comfortable enough about it that the state in New York is building the distribution that we’re going to base all 257 websites on in a Drupal 8 environment.

jam: Oh, I’d love to hear more about that as it comes along. Essentially, you’re saying we’ve got right on the download the Drupal 8 core, we’ve got a usable, deployable product in place.

Gregg Marshall: You have a product that is capable of doing probably 80% of the websites in the world right there. All you have to do is turn on the modules on. You’ve got a bunch of features that go beyond what you might need in a basic website.

jam: You like Views so much that you bought the company. No. That you wrote the ...

Gregg Marshall: No. I bought the company that doesn’t exist that it owns Drupal.

jam: Right, but you have written a book about Views. What prompted you to want to write this? What’s your goal?

Gregg Marshall: An email from Packt. They actually and I’ve always meant to go back and ask the acquisition editor, “How did you find my name?” because I never made it clear I wanted to write a book. I’d flirted with it ...

jam: Packt got in touch with you and said, “Hey, Gregg.”

Gregg Marshall: Got in touch with me. We went back and forth several times. We actually were struggling to come up with a usable outline that they thought was acceptable until I thought of the idea of actually wording it as a story. Once I did that, it made it easier for me to put together. It’s Lynne, the site builder, Jim, the ...

jam: The Drupal service provider.

Gregg Marshall: ... Drupal service provider who also acts as a mentor to Lynne as she’s learning and growing in her role and then Jackson, the cat, who’s somebody to rubber-duck talk to.

jam: I’ve read great stretches of this book. I got to see a preview copy and a couple of things were clear to me. And in a micro-plug for this book, it seems, it was immediately clear to me that Gregg has really lived inside of this toolset and really, really knows what’s going on with Views and with the implications and the use of it in a broader Drupal site building ecosystem. Then, I think that now that I know that they approached you and said, “Hey, can you write us a book about this.” I can picture myself being really, really overwhelmed with, “Now, let me explain Views.” How could you possibly do it without making it just long, dry, boring sort of checklist style ... ?

Gregg Marshall: Like the traditional tech book ...

jam: Right. The difference with this book, the difference that I found really interesting is that I think potentially the best way to use this book is take a weekend or evenings over a couple of weeks and just read it like a book and follow along with the exercises. Gregg, you’ve created a thin premise but it has got a story that is interesting enough if I want to learn to use this tool to keep me engaged and take me through the different options and possibilities along the way. I really liked that approach. It’s something that I haven’t seen before in tech books.

Gregg Marshall: It is fun to do and it is relatively unique. I can’t take credit for coming up with the brilliant idea. I stole the idea from a book called “The Goal” which is the theory of constraints in manufacturing that reads like a novel because it’s sort of written like a novel. Some of the key things, it’s like hiking with the boy scouts and you come to the realization that the troop can only go as fast as the slowest boy. So, he gets thinking about that as they’re hiking and it’s like my production line can only go as fast as the slowest step.

jam: Okay, all right.

Gregg Marshall: That’s the theory of constraints.

jam: Okay.

Gregg Marshall: It was that kind of thinking that helped me with that part of the book.

jam: Why do you say that people should read this book?

Gregg Marshall: They should definitely read it book because of the foreword. That’s the only reason to buy the book is to read the foreword.

jam: Gregg was kind enough to contact me a few weeks ago and ask me to write the foreword and I really – it was unexpected that we had, we were on a really, really tight deadline.

Gregg Marshall: It was an exceedingly tight deadline and I’m amazed you had actually agreed.

jam: But I sat down and I read a bunch of it and I really like it. I was really, really happy to do that. But ignoring the foreword for a second, why should, who should and why should people read your book?

Gregg Marshall: I would say this is a great book. If you are learning how to work through Views, if you’re looking for something that actually sort of actually pulls together all of the various options in Views - I wouldn’t call it the reference book for Views but it certainly walks you through all the things you can do with Views. I think a lot of people don’t know about, certainly a lot of the site builders that we’ve interviewed and hired, will build 10 different displays because they don’t know what a contextual filter is.

jam: Right. Yes. One of the great uses that the narrative was a great excuse for you to really walk through every single menu option, every single configuration, I really like that. Like you say, it might not be the perfect reference book to go and grab something from but a couple of weeks of learning, I felt that it would be a great help.

Gregg Marshall: The interesting thing is given how – things have changed going from Drupal 7 Views to Drupal 8 Views but in many respects 90%, 95% of what’s in the book is just as useful to a Drupal 7 site builder.

jam: Yes.

Gregg Marshall: It is not a programming book. When they first approached me and they gave me a list of the topics they wanted to cover, I said I’d be willing to do it but you can’t have this last topic on the list. I won’t write the book and it’s because they wanted a chapter on “How to write SQL queries.” I said, “First of all that’s SQL, it’s not Drupal.”

jam: It’s the antithesis of what Views is for. Right?

Gregg Marshall: Second of all, it is programming level documentation so you need a book that’s written for a developer, a programmer who’s extending Views. That’s a book that I can’t write. I’m not convinced I have the technical skills to do it. I think it’s desperately needed because I’ve gotten stuck writing plug-ins. I still don’t think I understand what all they do. But if you’re a person that’s using a UI to build a View, this is the book to get.

jam: Fantastic. That is “Mastering Drupal 8 Views” Packt Publishing by Gregg Marshall and I had the great privilege of writing the foreword for that.

Gregg Marshall: You did.

jam: Thank you for asking me.

Gregg Marshall: Thank you and by the way, what an amazing Prenote you did this year in LA, in Barcelona and all of those.

jam: They’re all online, of course.

Gregg Marshall: I have two co-workers from state in New York that are down for the very first DrupalCon and I said there’s only one session you have to go to. Even if you skip the Driesnote, you have to go to the Prenote because that is the place to go.

jam: Thank you and thank you for taking the time to talk with me.

Gregg Marshall: Oh, no. My pleasure.

jam: Great.

Gregg Marshall: I’ll go back and mentor people.

jam: Thanks, Gregg.

Gregg Marshall: Okay.

jam: Bye.