Episode Number 54

Craft Ecommerce with Luke Holder

Oct 08, 2015 @ 11AM MT

While all ecommerce projects have some commonalities, they tend to span a wide range of needs … from different types of “saleables” to different checkout workflows to different content management requirements. We talk about this variety with Pixel & Tonic’s Luke Holder, who is leading the development of Craft CMS’ first-party Commerce plugin. We discuss the challenges, commonalities and the importance of detailed discovery. We also talk about different technologies, from fully-integrated CMS options to hosted SaaS, and how to choose the right solution for a project. Turning to Craft, Luke shares what makes the Commerce plugin unique (hint: elegant UX and flexibility), as well as the types of commerce it supports now and in the future.

Tags:
craft
craft cms
luke holder
interview
ecommerce
add-on development
ux

Episode Transcript

Download Transcript

CTRL+CLICK CAST is proud to provide transcripts for our audience members who prefer text-based content. However, our episodes are designed for an audio experience, which includes emotion and emphasis that don't always translate to our transcripts. Additionally, our transcripts are generated by human transcribers and may contain errors. If you require clarification, please listen to the audio.

[Music]

Lea Alcantara:  From Bright Umbrella, this is CTRL+CLICK CAST!  We inspect the web for you!  Today we are talking about ecommerce in Craft with Luke Holder.  I’m your host, Lea Alcantara, and I’m joined by my fab co-host:

Emily Lewis:  Emily Lewis! 

Lea Alcantara:  This episode is sponsored by Craft CMS, a content management system that doesn’t suck.  Whether you are a content strategist, developer or content author, Craft has your back with some amazing features like its powerful Matrix field, which makes modular content a breeze or Live Preview, which shows you exactly how your entry will look on the front end while you’re editing it.  Craft is free for personal use and only $199 for most client sites.  To learn more about it or to get your own personalized demo site, head over to buildwithcraft.com.

[Music ends]

Emily Lewis:  Our topic today is ecommerce in Craft, and our guest is Luke Holder who recently joined Pixel & Tonic to lead their first-party Commerce plugin for Craft.  Welcome to the show, Luke! 

Luke Holder:  Hi guys, thanks for having me.

Lea Alcantara:  So Luke, can you tell our listeners a bit more about yourself?

Luke Holder:  Yes, sure.  As you can probably tell by my accent, I’m far away from you guys.

Emily Lewis:  [Laughs]

Lea Alcantara:  [Agrees]

Luke Holder:  I’m in Perth, Western Australia.  I was born here and yes, I’m working for Pixel & Tonic and we’re in different time zones, but we make it work. 

Emily Lewis:  How does that work?  Do you guys have a coordinated period of hours where everyone is available or do you just use messaging and follow up when people are available in their own time zones?

Luke Holder:  So yeah, we do a number of things.  We use Slack and so we’re always in communication on Slack. And then we have a couple of calls each week and that’s usually like mine at nighttime.  I’m a bit of a night owl, so I’m happy to be up at 11 p.m. and that’s usually Brandon [Kelly] who’s up in the morning quite early. And then the other person we actually get is Benjamin David who’s over in France.

Lea Alcantara:  Oh, right.

Luke Holder:  And so the three of us have a call twice a week actually.  So yeah, it works out with Slack and with being able to see the history of the communication while I’m sleeping when I wake up in the morning.  It works itself out, so yeah, we’re doing all right.  It’s fairly new for Pixel & Tonic because they’ve been US-based for a long time, but with Ben coming on board and then me, there have been some adjustments, but it’s working out well.

Emily Lewis:  It’s kind of amazing what technology allows us to do these days with distributed teams.  I mean, with Lea and I, it’s seamless. 

Luke Holder:  Yeah.

Emily Lewis:  I mean, I very rarely encounter an issue where I’m like, “Oh, if we’re in the same room, we could get this done.  We can always get everything done.”

Luke Holder:  Yeah, I think the one missing part I think would be something like a whiteboard. 

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Luke Holder:  It’s just not comfortable to draw like on a screen with a mouse, even if you’re just circling things, it’s kind of uncomfortable.  So that’s the one thing I can’t wait for ... some kind of virtual reality.

Lea Alcantara:  [Laughs]

Luke Holder:  There is a lot of stuff that’s coming in that direction, but yeah, it’s still very good. Much better than it was years ago.

Emily Lewis:  So before we get in and talk about the new Commerce plugin, and when I’m saying Commerce, listeners, it’s with a capital C.  That’s the name of the plugin for Craft.  I wanted to talk about ecommerce in general because you have a history working with ecommerce before even joining Pixel & Tonic.  So when did you start working on ecommerce projects, and what kind of clients, projects did you work with?

Luke Holder:  Yeah, so I mean, I’ve been doing website since about 2000 when I graduated high school, and I mean, through that time, I haven’t just been purely building commerce websites.  I built regular content-managed websites on various platforms, but throughout that time, I’ve probably just worked on lots of different ecommerce projects. And that means anything from a simple PayPal integrations for simple payments to membership systems, so subscription membership systems, and then also regular physical like product-type ecommerce.

Emily Lewis:  [Agrees]

Luke Holder:  And those, for like a few years, they were on ExpressionEngine, so I’m familiar with the ExpressionEngine content management system, and so I was using things like Expresso Store, and yeah, things like that. 

Emily Lewis:  [Agrees]

Luke Holder:  So I mean, I wouldn’t say that I have vast in years.  I haven’t been an ecommerce specialist, but I have done a lot of ecommerce projects, and so I always knew kind of what I wanted to see out of an ecommerce plugin or an ecommerce platform, so yeah.

Emily Lewis:  [Agrees]

Luke Holder:  And so I mean, I’ve also done commerce projects where it’s not so much a platform or it’s using like a SaaS-based product, so like an embedded JavaScript cart ... there’s a couple that have been become a bit more popular lately like Snipcart.

Emily Lewis:  Right.

Luke Holder:  The one that I’ve used on other projects previously is like this one called Ecwid, which is not very well-known one, but it’s a JavaScript-based cart that you can just embed in any type of content management system.  But yeah, I’ve done a lot of projects, but I’ve never done like from top to bottom like complete from scratch commerce system. 

Emily Lewis:  I think, based on my own experience, every ecommerce project I do builds my understanding of ecommerce, not only the options that are out there of different services or different platforms, but also just kind of the things that I need to talk to my client about at the very beginning of a project to make sure that I can choose the right sort of service.

Lea Alcantara:  Right.

Emily Lewis:  And so I’m curious, regardless of the complexity of a type of commerce project or a project that had some type of ecommerce in it, what were the kinds of things that you always had to account for and/or build?

Luke Holder:  Yeah, that’s a good question because commerce projects ... ecommerce is so varied.

Lea Alcantara:  Yeah.

Luke Holder:  I mean, like I was saying like subscriptions, simple donations, custom kind of checkout workflows with many types of options.  I’ve been thinking about that, the first kind of question that usually clients need to know is what it’s going to cost, right?

Emily Lewis:  [Agrees]

Luke Holder:  Like what is the cost of doing business online, and that usually leads to like what do I have to account for percentage-wise that the gateways are going to take. 

Lea Alcantara:  Right.

Luke Holder:  It’s actually choosing a gateway actually very early on in the process and it’s a very common thing that you need to get figured out early because if you’re going to choose like a SaaS ecommerce platform, sometimes they’re limited on the gateways that they offer or maybe the client really only wants to deal with their certain merchant account that’s related to their bank.

Emily Lewis:  Right.

Luke Holder:  And so that means that it kind of rules out a bunch of different commerce platforms because they only work with PayPal, for example.  So I think gateways are something that you need to figure out very early, how they’re going to manage their money, how they’re going to receive their money.

Emily Lewis:  [Agrees]

Luke Holder:  And then I mean, it’s so varied, so you have to go into the requirements for the actual project itself.

Emily Lewis:  Yeah, absolutely.  We’re working on an ecommerce project right now, and this is the first time that I had a really detailed questionnaire for the client, everything from things like the gateway at the very beginning.  We weren’t even going to talk about what kind of solution we were going to build.  I wanted to get the full scope of what she was interested in doing, and frankly it’s an exhaustive questionnaire.  It’s very long and it can be intimidating to a client, but I kept stressing to her the importance of, “I need to know how granular, for example, are your shipping needs.  What do you need to do with your shipping because that’s going to determine what kind of features we need to have?” Same with taxes. So for me, I found that putting that questionnaire together was really helpful because then I really could not only identify the service, but then once I had the service, I already have the answers to the questions on how to configure what we were going to build.

Lea Alcantara:  Hey…

Luke Holder:  Yeah, that’s right.  Oh, sorry.

Lea Alcantara:  No, I was about to say that I feel like the other question to answer like really, really early on, which I think builds on top of like well, what gateway are they going to be using in the first place is: what are their short-term and long-term needs? Because sometimes clients come to us with they don’t already have an established store or they’re just a new, small business and they have this idea and they want to sell this XYZ. But you don’t know whether or not that that’s going to expand to different types of products later because we’ve got clients who want to have a subscription-based website, but they might have downloads, and then on occasion, they might have like a physical book to ship later on. And that’s due to the type of business they’re in and how much their business is going to expand or how much they believe their business is going to expand, because sometimes they don’t even know what type of products they’re going to sell until they become successful and somebody asks for that product. 

Luke Holder:  Yeah, that’s right.  I mean, I had a client like that.  She sold recipe books, physical recipe books, that she wrote. And she got to the stage where she was selling a lot of recipe books, and she wanted to get into some different markets, and she wanted to do ebooks.

Lea Alcantara:  Yes.

Luke Holder:  And her ecommerce system didn’t support downloads.  It was just kind of a very basic “buy a book and I’ll ship it to you.”  It didn’t account for that.  She’d have to think about things like how many times can she download, if someone downloads the ebook, before it kind of cuts off the access, so no one can share the link.

Lea Alcantara:  Right.

Luke Holder:  There are a lot of really specific business use cases that that you start getting into when you’re dealing with commerce because really commerce is business, right?

Timestamp:  00:10:01

Emily Lewis:  Right.

Luke Holder:  And every business is different, and every business, like you said, grows and changes and wants to grow into new markets or into new products.  Yeah, and so like a very simple might start with looking at some SaaS offering or even something like Etsy, if you’ve got someone that’s selling some kind of trinket or ... I don’t know what they sell on Etsy exactly.

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  But they’re selling some kind of… [Laughs]

Lea Alcantara:  DIY.

Luke Holder:  Yeah, DIY crafty kind of thing, and they’re doing it out of their bedroom.  They don’t need or want to worry about if they want to be where all the customers are.  They don’t have to worry about custom workflows for checkout.  They want to use something that they know works for their friends. But then down the line, like you said, as their business grows, they might realize that they need to their own website and they need to have some other option or type of products. 

Emily Lewis:  Do you think that’s one of the biggest challenges you’ve encountered when trying to build an ecommerce solution, working with the client to get them to identify those sort of short- and long-term needs, the scope of it?

Luke Holder:  Yeah, definitely.  I think though I would say the biggest challenge building commerce websites would be the content management site and the mix between like the fact that they’re selling stuff, but they’re also wanting to manage their content.  So if they were on something like an Etsy, there’s no real content to manage except for their products.

Lea Alcantara:  Right.

Luke Holder:  But as soon as they have a website, they start maybe to have guide pages or documentation or other types of content that like a basic kind of Etsy or a SaaS offering like Shopify, they have concepts like Pages and things like that, but like a full-fledged content management system is probably what they’re looking for.

Emily Lewis:  [Agrees]

Luke Holder:  And that’s usually a challenge when they’ve got two separate systems and they’re wanting to kind of like integrate them together.

Lea Alcantara:  So is that why you decided to tinker around and create the Commerce add-on?

Luke Holder:  Yeah, exactly.  Like I used Expresso Store for ExpressionEngine, and that was getting closer to what we wanted. But when — and this is how I actually got introduced to Craft Commerce, as a user of ExpressionEngine and Store — I got to know Adrian Macneil who’s the developer of Expresso Store, the original developer, and he said, “Hey, did you know that Pixel & Tonic are starting to build their content management system?”  So I had a look at it and just the way they’re building it from a content management perspective, it actually got me excited about what it could do with ecommerce. And so Adrian was thinking about building an ecommerce kind of plugin for what was called Blocks back then.  This was a couple of years ago.  Craft was originally called Blocks while it was in a private beta.

Emily Lewis:  [Agrees]

Luke Holder:  And so yeah, I wanted to see what we could do with ecommerce because on ExpressionEngine and other types of content management system, you’re putting your products into your content into like your entries.

Emily Lewis:  [Agrees]

Lea Alcantara:  [Agrees]

Luke Holder:  But Craft has a really great innovation around content management in relationships, and that’s something called Elements, which we can talk about a little bit later ... but yeah, content management and the integration between your products and that content is what really attracted to building Commerce on Craft.

Emily Lewis:  Well, yeah, before we get into the details, I want to learn a little bit more about how you’ve got to join Pixel & Tonic. So you have initially created your own independent plugin called Market Commerce, right?

Luke Holder:  Well, yeah, even earlier.  I mean, it was probably a year ago I started to build it, and yet it was called Seller and then it was called Market, so it’s been through quite a bit of history, but yeah, it was called Market Commerce and it’s a plugin for Craft, and I was building it on my own.

Lea Alcantara:  Did you have a project to do it or use it for, or were you just totally like, “I just want to build this”?  [Laughs]

Emily Lewis:  [Laughs]

Luke Holder:  Yeah, I did the crazy thing.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  I actually left my job.

Lea Alcantara:  Wow!

Luke Holder:  Yeah, I went all in on it.  I thought I wanted to build something.

Lea Alcantara:  [Agrees]

Luke Holder:  And I knew I could build something, I just didn’t have the time.  It’s hard to build something as big as Commerce when you’re kind of doing a lot of client projects and stuff.  So yeah, I decided to talk to my wife and said, “Hey, do you mind if I take off two or three months and just go hard at trying to make this product?”  And she agreed amazingly, and so yeah, it was probably like December last year I took time off and just started coding on it for three months straight. And I got to put out like a video on what I built so far and yeah, it all started from there. 

Emily Lewis:  And then Pixel & Tonic, what made you join them?  I mean, obviously, you were interested in building this for Craft, but you took time off to do this.  Was it with the intention to get in some place and work, or was this a unique situation where you were like, “Yeah, I could see myself joining a company to do this exclusively,” and it just happened to be a great fit?

Luke Holder:  Yeah, originally, I thought I could get the plugin built and then I could release it and I could go back to doing some client work, and I’d just be maintaining it. But then out of the blue, Brandon from Pixel & Tonic contacted me and they said they had seen the plugin and they liked it and they were impressed by it, and so they made me the offer.  They’ve been thinking about doing Commerce for quite a while and it was one thing that a lot of people are really attracted to Craft.  It’s a really great content management system, but the commerce component was missing from it for a long time, and I think they realized that.

Lea Alcantara:  [Agrees]

Luke Holder:  And they wanted to make sure that Commerce was to their quality and was well supported. And so they could have either built it themselves when they’ve got lots of other things that’s on their plate, but they decided to acquire the plugin and wanted to know if I’d be willing to join them, and I said yes.  So I was very excited.  It’s a great little company and I’d always admired the quality of the software and their developers, and so I’ve been learning a lot in the last few months after I’ve joined them.

Lea Alcantara:  Very cool.  So I do believe that Pixel & Tonic is also known for their really great user experience and their UI of their software. And before we dive into like development side of ecommerce, I’m curious about your approach to the user experience and UI of an ecommerce platform.  What were your priorities to make sure that your plugin made sense?

Luke Holder:  This is the thing: I was under the pump for knowing that I only had a bit of runway for funding this and building it myself.  I was pressed for time obviously.  There were lots to build out, tax systems and shipping systems, and so I did a lot of research in the year before and looking at other content and other commerce systems. And so all I could do is just take — especially the UI, because I’m not as sharp on UI as Pixel & Tonic are — and I had to just look at conventions and things like that and just kind of clone the way a lot of other systems do it.

But actually that is one of the major things that has been occurring over the last few months as I’ve been working with Pixel & Tonic on this is they just don’t look at convention and how everybody else is doing it, they take it from — the first principle is — what is the most important thing for the user?  What’s going to be the easiest thing for the user?  And it has really helped improve the UI of the plugin. And that goes to things like things I wouldn’t have thought about like things like configuration. 

When you first install the plugin and you’re a developer and you’re setting it up for a client, there’s a bunch of configuration that you want to click through and do, and although you think you’d only have to do that once and it doesn’t really matter if it’s a few extra clicks, Pixel & Tonic and Benjamin David — who’s the guy based in France doing a lot of the UI work — he’s thinking about that.  It’s just something I wouldn’t have thought about, and I would have thought configuration “it’s just a couple of screens you kind of see very rarely.” But they are focusing on making sure that the whole experience is just really good, and especially the experience for the clients, and not the developer building the website.  Not just the developer, but also the person who’s going to use this software day to day, the client, and how easy it is for them to use.  They think about all of those things much deeper than I did in those free months of developing the plugin. So it’s been a great experience.

Emily Lewis:  It’s been a good experience, but has it been an awkward adjustment in terms of, you know, and for me, anytime I adjust my workflow, it feels a little uncomfortable.  Has it been that way for you?

Luke Holder:  I would say yes.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  I would say…

Lea Alcantara:  This is your baby, right?

Luke Holder:  Well, yeah, and I think the best work though is done when you have a bill of humility, right? 

Emily Lewis:  [Agrees]

Lea Alcantara:  Right, yes.

Luke Holder:  And I’m not saying I’m perfectly humble or anything like that, but if you’re willing to accept criticism and that kind of thing, it’s just going to make the product better.

Emily Lewis:  [Agrees]

Luke Holder:  And it’s going to help the client, and the more of that, the better I say for the client, and it doesn’t really matter if my feelings are a little bit hurt because they’re not really.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  They’re not that tough on me, but they have a certain standard.  I kind of knew before joining them that Pixel & Tonic had a good reputation for user experience and quality, and they don’t ship something until it is ready, until it is looking and working well.  So yeah, I wouldn’t say it’s been difficult, but it’s been a challenge, and I think the best products are made when there’s a bit of a challenge.

Emily Lewis:  Right.

Timestamp:  00:19:57

Lea Alcantara:  Was there a style guide that you have to follow when you started developing the add-on, either programmatically or even just like UI? Like the buttons need to look like this or it needs to be this way?

Luke Holder:  There isn’t an official Craft plugin style guide. 

Lea Alcantara:  [Agrees]

Luke Holder:  There’s obviously like you can inspect the way that the control panel is built very easily because it’s built in Twig, which is the same templating language that you use on the front end. And so I was able to see how those components are built and it’s very modular.  It’s architected UI-wise very well. So I would obviously just copy the way that the Craft core would do it, but there are a lot of things that I missed and didn’t pick up on, and that’s what the keen eyes of Brandon and Ben have is that they can look through a screen and pick up on it, because I’m not as sharp a UI developer as them.  They can pick up on whether something is a pixel out than I would I have said, “I wouldn’t have even noticed it.”

Emily Lewis:  I think it highlights how valuable collaboration can be to the design and development process?  We talked about that last episode.  Lea and I, think both of us experience it all the time that when we’re able to collaborate and including giving each other critical feedback, it’s always not only a better product, but I feel like each of us grow a little bit, and that kind of makes you feel like you’re a better developer, a better designer.

Luke Holder:  Yeah, that’s right.  I mean, I saw joining Pixel & Tonic as one of the greatest learning opportunities for me, right?

Emily Lewis:  [Agrees]

Luke Holder:  But not just UI-wise, but coding and architecturally I’m learning a lot.  So I think if you’re not scared to open your mouth and if you’re all adults, then everyone can benefit.  If you’re going to take something the wrong way when somebody gives you a bit of criticism, then it’s just not a good path to go down. 

Emily Lewis:  [Agrees]

Luke Holder:  So yeah, I mean, it’s great to be able to get feedback like that when you’re developing something by yourself, you’re in a bit of a bubble, right?

Lea Alcantara:  Right.

Luke Holder:  Like it is apart from a couple of people testing the software and their not always like that worried about the UI, you’re in a bubble and so the decisions that you make is a bit of a echo chamber. And you kind of just decide to do something and no one says no and it gets done that way and left that way. But with three or four people looking at it on a weekly basis, you get to shorten that feedback loop and improvements get made a lot quicker.

Emily Lewis:  So let’s dive in to Commerce itself.  Let’s start talking about what like the core features of it are.  I’m curious, is it suitable for all types of ecommerce, like something as just simple as processing payments to something more complicated like managing inventory, having membership subscriptions?  Does it run the gamut, or is it focused in on one?

Luke Holder:  The way I see it at the moment — and obviously like things would change over time — but at the moment, it’s focused on a fairly flexible ecommerce platform.  So it’s extensible and not that you need to extend it to use it, but it can handle basic, simple payments and it can handle a stock inventory system, and it has a tax system and shipping system and it has a discount and sales systems. 

So it is full featured in that respect and it would be designed to be managing a lot of products and making a lot of sales or orders. But of course, it could be used for just a very simple, if you’re just selling one ebook. And so the next question after that is obviously like pricing in like using a lighter version because you don’t need the full large product and so we haven’t announced anything like that, but it will be suitable for a very wide range of ecommerce applications.  Except for version 1. Subscriptions will not be released in version 1, so that’s one of those use cases that’s kind of always left for a version 2, I think.

Lea Alcantara:  So it will be and maybe in a future version though.

Luke Holder:  For subscriptions, yes, definitely.

Lea Alcantara:  Yeah, okay.

Luke Holder:  It’s definitely a possibility.  We’re just focused on getting the UI right for all the core stuff at the moment.

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Luke Holder:  And getting a version 1 out.  Right now it’s in a private beta so it’s being used by people right now building things on it, and once that all stabilizes from getting this version 1 out before the end of the year, then we can focus on those extra nice features like subscriptions. 

Lea Alcantara:  Will you guys be also releasing almost like a demo site just like you do with the generic Craft site demo?

Luke Holder:  The goal is to.

Lea Alcantara:  Okay.

Luke Holder:  Yeah, and I don’t have a time on that.  Sorry I can’t let you know when the demo is, but there will be a free trial that will be available as well, so people can download it, install it and use it when we release the version 1, which we haven’t got a date.  It’s going to be before the end of the year.  Well, actually, we do have a date, but we haven’t announced anything yet.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  But it’s before the end of the year, and they’re going to be able to download a trial and it will work as a fully functional product, but it just won’t do any live transactions with a real gateway. 

Lea Alcantara:  Right.

Luke Holder:  It would just be doing like dummy test transactions.

Emily Lewis:  And you mentioned earlier something about Elements.  So is that one of the things that’s unique about Craft Commerce.  Can you talk about that a little bit more?

Luke Holder:  Yeah, so in a lot of content management systems, there is a concept of like an entry or a post.

Emily Lewis:  Right.  Like Expresso Store, I set up a channel for products and then each product is an entry.  Is that what you mean?

Luke Holder:  Yeah, or even like WordPress like a content management system would have like a post or a stream of posts, and those posts can have like custom fields placed on them or like an entry in ExpressionEngine can have custom fields. But in Craft, there’s like a deeper extraction, and it’s not obvious to a user or even like a front-end developer that’s building a website in Craft, but architecturally there’s something called Elements.  So in Craft, an entry is an element, so like an entry that you’d have like in a section.  A user is an element.  A category is an element.  A tag and, I think I’m missing one, but a lot of the main components in the system are called Elements, and what that enables is attaching custom fields to all of those things. 

So users can have custom fields or a category can have custom fields, and what that means is for products, they can be an element and they can have custom fields.  But not only that, inside our product system, we also have a concept called Variants, which are like variations of a product, and those variances also have custom fields because they’re an element.  So the benefit of that and why it’s really great is that you get all of the great like relationship building between entries and products, and products really have most of the features of an entry so they have URLs and they can have categories and they can have all the type of information that you’d usually put on into an entry they can also have, but it’s a bit more semantic. 

So your client doesn’t need to be looking at the list like sections and one of those is products and one next to it is frequently asked questions.  The products exist in a different part of the control panel, but they still have all the same power as an entry.  So in the past like the commerce engines have had to like put their products into entries just so that it would give their products the flexibility, but with Craft, the flexibility comes because the product is an Element.  So I hope that’s easy to understand.  It’s really good from a developer’s perspective and it’s also great for relationships.  When I say relationships, I mean, like entry relationships, not with other people.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  So I don’t think like content management system is going to work with that.

Lea Alcantara:  Yeah, that was one of the things I loved about working in Craft.

Luke Holder:  Yeah.

Lea Alcantara:  It is the fact that, like, you can attach a field like anything.

Luke Holder:  Yeah.

Lea Alcantara:  Literally anything.  [Laughs]

Luke Holder:  And another one that we’re using in Commerce is orders, so orders themselves are Elements. And so like you can put custom fields on an order, so if you want to collect some additional information with an order from a customer, then that can get added onto the order’s custom fields.

Lea Alcantara:  Yeah.

Luke Holder:  And then it obviously opens up like all these possibilities with people writing their custom fields and attaching them to orders and products.  So we have a guy, he’s actually based in Perth, and he’s building on Craft Commerce at the moment in the private beta, so he’s own like a digital imaging company where they sell like high-end monitors, and so he has like these really like detailed like calibration guides and this content, right?

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Luke Holder:  So this is content that sits in entries, but because products are also Elements, he’s able to like really go deeper link between those documents and the products. And so inside like a Matrix field on an entry, he could drop in a relationship to a product there.  So during the documentation, someone could like buy the product while they’re reading the instructional documentation.  So there’s really great use cases with like the products and the entries really being related and integrated well together.

Emily Lewis:  And that’s always, at least in my experience with the clients I’ve had, something that they find really valuable is kind of cross promotional items.

Lea Alcantara:  [Agrees]

Emily Lewis:  And so easily being able to associate, in this case, products, but ultimately Elements I guess, the products with any other product or some type of information related to that product or ... Like we have a client who sells coffee and not only do they have information about the product, the coffee itself, but the region in which it’s grown and that has its own bit of content. And so that stuff to be cross-promoted is valuable to them or cross-related on the same page kind of thing.

Luke Holder:  Yeah, that’s right.  So I mean, a lot of ecommerce engines or ecommerce platforms that you look at in the marketplace that they have to build their own like taxonomy system from scratch, right?

Timestamp:  00:30:01

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Luke Holder:  So you’re tagging your products and putting them into categories or departments or sections.

Lea Alcantara:  Yeah.

Luke Holder:  And that’s the power of Craft, you can have a category field on a product and you might have three of them, and one of them puts the product into one type of department, the other one puts them into another because a t-shirt might work in one department and another department.

Emily Lewis:  [Agrees]

Luke Holder:  And so it has that same powerful like categorization built in that entries have because products are Elements.

Emily Lewis:  [Agrees]

Luke Holder:  So it’s really fantastic and being able to categorize entries the same way you categorize your products even though they’re in different areas of the control panel is really good.

Emily Lewis:  So we actually got a question from a listener.  This is from Jordan Lev, and he was curious if the Craft Commerce plugin is going to require a third-party and JavaScript-only service like how Perch requires Moltin, or can developers plug in different payment gateways so they aren’t reliant on a third-party system, and especially because they want to make the cart more accessible by not requiring JavaScript?

Luke Holder:  Yeah, definitely, so that’s a great question.  So Commerce, Craft Commerce, the plugin, is fully independent of any like third-party API for managing your products and orders.  So in the case of Moltin, that’s a third-party API that stores all of the data to do with your products and orders.

Emily Lewis:  [Agrees]

Luke Holder:  But everything is stored in Craft for Craft Commerce.  The only thing which is a bit of a mix there is ... Moltin is an API for commerce, but it’s not an abstraction over just the gateway.  It adds all these other ecommerce functionality. But Craft Commerce still allows all sorts of different payment gateways, and so it supports all of the ones, the standard ones in OmniPay which is an open source payment library, as well as you can create your own payment gateway.  If you have a special client, you could create a gateway that just works for them or you could visit hundreds of gateways out there that work with OmniPay and they will work with Craft Commerce. And so yeah, all of your data stays within the same database that your content is in.

Emily Lewis:  [Agrees]

Luke Holder:  There are no third-party API calls to get those kinds of products.  There’s no JavaScript that you need to embed on your page, except for any JavaScript you want to put there to improve usability. And everything is pretty standalone, except for making that call to your payment gateway to charge the customer’s credit card.

Emily Lewis:  Yeah, I mean, that make sense to me.

Lea Alcantara:  Yeah.

Emily Lewis:  And I’m sure that’s going to answer his question.  I’m curious, are there any other aspects of the Commerce plugin that you think are unique compared to some of the other solutions that you’ve had experience with?

Luke Holder:  I would say on the content management side, it’s definitely unique, but it gets those kind of superpowers from Craft itself. And being able to relate to any type of entry, I mean, you could relate a product to a user and you sell a user if you wanted to.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  But that’s the power of like the Craft Elements is that everything is an Element and everything could therefore be a product. But that’s really one of the major benefits is the fact that it’s built on Craft.  Of course, commerce is fundamental ... being able to pay someone is not revolutionary.  It’s nothing new, but there is going to be some great usability features that your clients will really like.

Emily Lewis:  [Agrees]

Luke Holder:  And I think that the benefit of Pixel & Tonic helping advance the UI and the usability is really going to be a benefit over other commerce products. 

Lea Alcantara:  Can you share a little bit of what that means?  Like what if usability and user experience is part of the killer feature, like what do they do that you’re like, “Oh, this is so much better”?

Luke Holder:  Okay, so I’ll think of something that is probably going to come fairly soon into the private beta.  Obviously, like you could create an entry and you might want to embed a product on that entry page, and so usually you’d have to jump out, you’d have to go and create your product and then you’d have to jump back in to relate it. 

Lea Alcantara:  Yeah, yeah.

Luke Holder:  And so we have a system where you’ll be able to create your product in line.

Emily Lewis:  Ooooo.

Lea Alcantara:  Ooooo.  [Laughs]

Luke Holder:  [Laughs]

Emily Lewis:  [Laughs]

Luke Holder:  So those kinds of things. And to be honest, that wouldn’t have been possible in Craft before I joined not because I built it, but because Commerce is driving these kinds of innovations across Craft as well.

Emily Lewis:  Right.

Lea Alcantara:  Right.

Luke Holder:  And so that kind of functionality will actually roll out to other types of Elements as well.

Emily Lewis:  Right.

Lea Alcantara:  Right.

Luke Holder:  So being able to create like a category without having to go outside and create the category first before jumping back in, those kinds of things are so good.

Emily Lewis:  I can see that adding up to save a lot of time.

Luke Holder:  Yeah, yeah.

Lea Alcantara:  Yeah, absolutely.

Luke Holder:  It’s all about the author experience, right?

Emily Lewis:  [Agrees]

Luke Holder:  Like the author or the client that’s using it on a day-to-day basis, is it frustrating them or is it helping them?

Emily Lewis:  [Agrees]

Lea Alcantara:  Yeah, and I will have to say that, I mean, some concept of that already exists in non-commerce things in Craft. Like if you have an Assets field, I mean, you can edit a bunch of stuff about the asset while you’re in the entry without having to leave the entry, go to the Assets tab, change it there, and then go back, re-associate.  No, like you can just to go the Assets fields, choose the asset and edit it right there.

Luke Holder:  Yeah, and it’s one thing actually I didn’t even know about, but you can actually drag an image straight much like an Add Asset field without even opening up the…

Lea Alcantara:  Yes, yeah.

Luke Holder:  And yeah, so those kinds of like things that the guys are thinking about and designing.  It really just adds up.  It doesn’t seem like much when you’re describing the feature and maybe it’s not being that interesting even to listen to like us trying to describe it.

Lea Alcantara:  Right.

Emily Lewis:  [Agrees]

Luke Holder:  But when you’re working on the product on a day-to-day basis, it really adds up to like an enjoyable experience.

Emily Lewis:  I’m curious if you have a thought on, I guess it comes down to what the needs for the project are, but why would a developer choose a CMS and a solution that’s part of a CMS versus something that’s a plugin or a service that’s hosted that you integrate in?  Why is that beneficial for either a developer to work with or the client to work with?

Luke Holder:  So are you asking whether it’s beneficial to have a separate product for ecommerce versus like integrated into the CMS?

Emily Lewis:  Yeah, I mean, we had a client recently whom we presented a couple of options and she ultimately chose Shopify integration, which is fine.  We emphasized that having it all in your same system, like all in the CMS, all your products are there with all of your content, gives you a singular experience and then there’s less opportunity for duplication of content, like you’re maintaining products in two places if you have Shopify versus on your site kind of thing.  But ultimately I think the Shopify appealed to her because I guess it seemed like more of a known, like it had more — I don’t know…

Lea Alcantara:  Well, it’s for ecommerce, right?

Emily Lewis:  Like that’s what it is.

Lea Alcantara:  Yeah, yeah.

Emily Lewis:  It’s like it’s just ecommerce, so that must make it better somehow.

Luke Holder:  Yeah, look, and just to clarify, so Craft Commerce will be an add-on to Craft, so it’s not going to be built in to the core product.

Lea Alcantara:  [Agrees]

Luke Holder:  But it’s integrated by the fact that it’s built by Pixel & Tonic.

Lea Alcantara:  Right.

Luke Holder:  And it’s going to be deeply integrated, but…

Emily Lewis:  And it’s all in the same database, right?  There’s not like a separate…

Luke Holder:  Yeah, that’s right.  It is still in the same, but it is a plugin, so you can use Craft without any commerce, right?

Lea Alcantara:  Yeah.

Luke Holder:  But you can then go and get the Commerce plugin and install it into Craft.  But yeah, I think for the same reason, somebody would choose Craft or ExpressionEngine over something like Squarespace.

Emily Lewis:  [Agrees]

Luke Holder:  I mean, because Squarespace is there.  This thing is really simple, quick, beautiful websites and they do that really well, but it’s when the client will want to take that next step and customize something beyond what that hosted solution wants to do. And so if Shopify like meets all the client’s needs and if they just never foresee ever wanting to do something custom-designed, then Shopify could work for that client, like it’s not to say that Craft Commerce would suit every use case, meaning…

Emily Lewis:  [Agrees]

Luke Holder:  Because every client is different and every requirement is different. But I think we’ll be marketing Craft Commerce and explaining it on a separate website — craftcommerce.com is where it will end up being — and so we’ll be, especially to clients, educating them on the power of the Commerce as a platform itself, but with the benefit of being fully integrated with your content management system.  Does that answer the question?  Sorry, if I’ve…

Emily Lewis:  Yeah, it does.  I think it’s a difficult question sometimes when you’re in a position of working with a client and you’re making recommendations, but ultimately it’s the client’s decision on which direction to go. And I think that might have been the element of our conversation that was missing, which is if you ever want to do anything else, you’re going to have to get off of Shopify, like you know?  [Laughs]

Luke Holder:  Yeah. 

Lea Alcantara:  Yeah.

Emily Lewis:  Like you’re ever going to want to do something else, and I think it’s hard for a client to think about that really long-term kind of thing.

Lea Alcantara:  Yeah.

Luke Holder:  Yeah.  I mean, in that situation, I would say, “Okay, while you’re publishing your product ... sorry like an entry, like a blog entry and you’re mentioning your product, how you’re putting that product into that page like having a Buy Now button, and if they’re having to copy like a snippet of JavaScript from somewhere else, they’re going to have to put something like special code into the page just to get that integration working, I think — vs. like clicking a button and seeing the list of products and being able to search like search inline.  I mean, from a usability perspective, I mean, that’s a pretty good selling point, but it’s tough when you have to assess it on a client-by-client basis. 

Timestamp:  00:40:21

Lea Alcantara:  I would say it’s a control thing for a lot of clients, that’s what I would say, right?

Luke Holder:  Yeah.

Lea Alcantara:  Because when you choose a SaaS service, you let go of a lot of control over the design, over the development, over the gateway, all those kinds of things. But if you’ve got an all-integrated CMS situation, that’s yours.  That’s you can do whatever you want.  You could change gateways in the middle if you wanted to.  With those kinds of things, it’s just all up to you. 

You can start small and then grow big and that you already have it like all at the beginning without having to move place to place.  The other thing too is volume of sales, because at some point, if you use a SaaS service, it’s not profitable for you anymore because their main thing is they take a percentage of your sales.  If you just have a direct account to your bank’s gateway, you’ve negotiated in much smaller percentage, especially due to volume.

Luke Holder:  Exactly.  That’s where I was meaning when I said like this is why you’d choose Craft or ExpressionEngine over something like Squarespace, right?

Lea Alcantara:  Right.

Luke Holder:  Because it’s usually this bigger kind of like ... you’ve grown a bit, you want something.

Lea Alcantara:  Right.

Luke Holder:  You want to take full control and you want it to really represent your business and you’ve got the budget to do it, to have it managed all into one place and you’re not relying on like five different third-party services. But if you’re like a mom and pop or selling something like some trinkets, like the best thing you could do is probably jump onto a SaaS product and just start your business, right?

Emily Lewis:  [Agrees]

Luke Holder:  And it’s better to be making some money and then assess your situation and then decide to upgrade and grow into a more full-featured CMS and commerce platform.

Emily Lewis:  Yeah, I feel like that discussion with the client or a prospect can be one of the more challenging parts of an ecommerce project because the thing you just mentioned in terms of features, it’s like, “Oh, I wish I had said that when we were trying to get them to not pick Shopify.”  [Laughs]

Lea Alcantara:  [Laughs]

Emily Lewis:  But I don’t think I was as — I guess you almost have not a pitch, but like you have to have all of the things you know that are benefits. And that means that you need to know about all the different things out there, and that’s like impossible. 

Lea Alcantara:  Yeah, there are so many situations.

Emily Lewis:  It’s impossible to know all the features of Expresso Store and CartThrob’s back out, and then Craft Commerce is coming out, and then there’s Shopify and then there are all these other ones, and to know the right one to recommend, you know.  As a developer, we can work with all of them, but to know the one that’s going to be best for the client, I find that really, really challenging.

Luke Holder:  Yeah, it definitely is and sometimes, as developers, we’re prone to say, “Let’s just go with the most flexible system to start with because then we don’t have to like migrate anything later on.”

Emily Lewis:  [Agrees]

Luke Holder:  But you’re right, like from a client’s perspective, they just want it to work as soon as possible for a good budget.

Lea Alcantara:  Right.

Luke Holder:  And you’ve got to get that balance right, and I don’t think there’s a silver bullet.  I mean, I think it’s important that at the beginning of every project, and sometimes it does take, like you said, a big list of questions, a big survey, to just figure out where the client is thinking, short term and long term and growth-wise and feature-wise. I mean, because as soon as you say like, “Would you like coupons,” right?

Emily Lewis:  [Agrees]

Lea Alcantara:  Right. 

Luke Holder:  Like their immediate answer is yes like for every feature, right?

Emily Lewis:  Yes.  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  Even if version 1 of your project doesn’t have that, they want to be able to do that in the future.  So you have to, I mean, work with every client individually and work through those problems with them.  It’s tough to assess their needs and make sure it works in the long term.

Lea Alcantara:  There must be a few things that people often miss when they implement an ecommerce project.  What do you think they are?

Luke Holder:  Things that they miss?

Lea Alcantara:  Yeah, like there are all these complications and stuff, what do you think might be a common thing that you’re like, “Oh, that people should consider this next time they develop an ecommerce project.”

Luke Holder:  Well, one of them is the gateway and the percentage.

Lea Alcantara:  Right.

Luke Holder:  And I think I’ve mentioned that before because, like you said, as soon as they start growing and they realized, “Well, 5% of every sale is going to the payment gateway.  This isn’t right.”  So, making sure that you stay on top of their options for gateways and don’t just go with Stripe because it’s the nicest one to use or the easiest one for you as a developer.

Lea Alcantara:  That’s important, by the way, what you just said, don’t just choose something because it’s easy for you.

Luke Holder:  Yeah.  [Laughs]

Lea Alcantara:  Like as a developer, like what is the best for your client and their business?  Because the more money they make, the more likely they’ll hire you again to do more stuff.

Luke Holder:  Yeah, that’s it.

Lea Alcantara:  [Laughs]

Luke Holder:  The challenges, I think a big challenge is making sure that the user experience for their customers is as good as possible.

Emily Lewis:  [Agrees]

Luke Holder:  And sometimes you might choose a commerce platform and it says, “Okay, your client, your customers have to go through these five steps to check out.” And you go, “Okay, well, I’m going to have to put five different page designs to get them through those steps.”  But for an ebook, you don’t need like five steps.  You don’t need a billing address and a shipping address, and so you have to think about …

Emily Lewis:  [Agrees]

Luke Holder:  It’s easy to say every order workflow is the same or there’s certain type of product orders that need a shorter checkout flow or it needs to be just like a one button with an email. And so that can sometimes be a trap that developers fall into is just keeping the same checkout workflow for every type of product. But as for challenges, there are just unlimited challenges.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  There’s always a challenge, but you can work through them.

Emily Lewis:  There is one thing that I did in some of my earlier ecommerce projects, and it’s not common.  I don’t do it anymore because I’ve learned my lesson the hard way, but my first two ecommerce projects, I didn’t get the whole find out before you start building it, what their shipping needs are, their tax needs are, et cetera, et cetera. And then I’m pretty much done with what I need to do and now it’s time for me to plug in all the values for taxes and shipping, and I go to the client thinking they know because I’m assuming they know what those things are, and they don’t. 

They hadn’t thought about it, and so all of that stuff, because I left it to the end rather than addressing all of those sort of — what would that be — those will be like your base information that you need for commerce, it like doubled the time for the project. And the client was pretty upset because I didn’t think to ask them in the beginning.  I asked them at the end and they weren’t prepared and it just sort of delayed actually going live.  It was totally my mistake, but I did it two times before I realized that it was me that was messing up.  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  Yeah, like even thinking about it.  I mean, you can get the checkout system working and you can purchase an order and the order looks good like when it gets into your back end. But then there are like steps after that that the client needs to do, like actually ship the order.

Emily Lewis:  Right.

Lea Alcantara:  Right.

Luke Holder:  And what do they have to do?  And so you give them training where you come to this page and you can see all your orders, and then, “Okay, what do I do from here?”  Well, okay, going to every single one individually and print them out so you can put them into the packing slips, into the products that you’re shipping, like those kind of things that you have to think about. 

Emily Lewis:  [Agrees]

Lea Alcantara:  Nice one.

Luke Holder:  Training them on those kinds of things is really important.

Emily Lewis:  Yeah.

Luke Holder:  And that goes to tax as well, and you’re right, like tax and shipping is really complicated, especially with all the different types of taxes around the world, and are they selling around the world, or are they just selling locally?  Does their commerce systems stop you if they just want to sell locally with your own country to avoid — I don’t know why they would do it — if they want to avoid having like the new VAT tax systems and things like that.

Emily Lewis:  [Agrees]

Lea Alcantara:  Right, in the UK.

Luke Holder:  Yeah, there is a lot to think about there, and so it’s good advice as you said to try and think of all those things upfront. But there is a long list of things to think about and I don’t think I could list them all off the top of my head.

Emily Lewis:  I don’t know what the plans are for Craft documentation, but if you guys are open to it, I’d love it if you guys would like make a big list of all the things that you need to ask your client before you start a project.  [Laughs]

Lea Alcantara:  Yes, yes.

Emily Lewis:  Find out how…

Luke Holder:  It’s a good idea.

Emily Lewis:  What is your shipping?  Will it be this?  Will it be that? 

Luke Holder:  Yeah.

Emily Lewis:  Will you charge taxes on the shipping?  It’s those sorts of things.

Luke Holder:  Yeah, yeah.

Emily Lewis:  Because I kind of have a rudimentary one that I’ve cobbled together over the years, but I find myself adding a new question to it pretty much every time.

Lea Alcantara:  Yeah, is there a limit?  Is there… yeah, on and on and on and on.  There are so many. 

Luke Holder:  Yeah. 

Lea Alcantara:  There are so many.  I do have a couple of Craft Commerce-specific feature questions.  So you mentioned that you guys are going to launch at least a version 1 with like simple like rudimentary products, those kinds of things, right?  And subscriptions, maybe version 2.  How about something like ticketing, like events and ticketing?  Is that something that you guys are also interested in?

Luke Holder:  Yeah, so the way it’s architectured — and I don’t want to get too kind of technical with PHP — but we have a system in Craft Commerce with something we’ve called purchase-ables. And so developers will, and it’s not going to be required for like most of these cases like if you’re selling normal products or downloadable products.

Lea Alcantara:  Right.

Luke Holder:  But with something like ticketing, which is very specialized, like there is a lot of edge cases with that as well, like collecting information per ticket holder, and like there are a lot of things to do with ticketing.

Emily Lewis:  [Agrees]

Lea Alcantara:  Yes.

Luke Holder:  Someone in theory, and it could be us down the line, but someone in theory could create a plugin and it could provide a purchase-able called ticket, and it will work with our checkout and ordering system.  So it is possible that like more types of unique sell-ables or purchase-ables, as we call them, can be created and supplied by plugins, but then over time, of course, we might add them ourselves.

Timestamp:  00:50:07

Emily Lewis:  [Agrees]

Lea Alcantara:  Right.

Luke Holder:  I know that the two big requests are subscriptions and tickets, and they will be on the agenda.

Lea Alcantara:  Cool, and the other question I have and Jordan Lev also had it, you’ve kind of hinted at this at the beginning of the show, but let’s directly ask it.

Luke Holder:  Yeah.

Lea Alcantara:  Will it cost an additional fee over the Craft Pro license?

Luke Holder:  Yes, it will.

Lea Alcantara:  Okay.

Luke Holder:  So stay tuned for the announcements on that, which will explain it far better than I can right now. But it will be an additional plugin cost, like a cost like if you’d buy a plugin.

Emily Lewis:  Yeah.

Lea Alcantara:  [Agrees]

Luke Holder:  And you would purchase it and then you’d be able to install it into your Craft CMS, and then we haven’t worked out whether it requires Craft Pro.  It works with the free version at the moment, but all those kinds of things, when we kind of announce those in due course, we will do that as soon as possible.

Emily Lewis:  So before we wrap up, I wanted to get your final thoughts about what would be your best advice to someone developing an ecommerce solution?

Luke Holder:  So developing like from scratch or implementing one?

Emily Lewis:  Well, you know what, that’s actually an interesting nuance.  Either way, I think both are interesting questions, because as you mentioned, someone might be interested in developing a plugin for a purchase-able and in a way that’s related to ecommerce.  So yeah, let’s talk about it from that perspective first, someone developing not implementing.

Luke Holder:  Well, I mean, to develop a full ecommerce kind of like system, it’s bigger than I thought originally. So like developing like a whole system is something that you wouldn’t really want to just jump into without thinking everything through.  But I mean, advice to think about people getting into developing ecommerce is I would say the biggest thing that helped me was just go and look at as many ecommerce products as you can out in the marketplace, and that includes not just like Magento or like the installable ecommerce platforms, but the SaaS platforms as well. And just look at their features and functionality and go through a checkout with all of them. And one of the ones that I really enjoyed like learning about before I’d started developing full-time was Spree, which is like a Ruby on Rails ecommerce platform. And so even though it wasn’t PHP, I got to look at their documentation, how they described tax and how tax works, and I’ve got to see how they handled different things, and I learned a whole heap by looking at just a wide variety of ecommerce systems, and so I definitely recommend doing a lot of looking, because there are a lot of ecommerce products out there. Just like there are a lot of content management systems, and once you’re able to look at them all, then things start to become consistent and there are similarities between them all and then you can figure out where you kind of fit there. 

So if I was developing a ticketing purchase-able for Craft Commerce, I would definitely check out a EventBrite and look at how their UI works for creating tickets and how it even works for printing out like an attendance list or there are all sorts of stuff that you could look at and not steal, but borrow from, build on the shoulders of giants. 

Yeah, with implementing, the best advice is make sure you gather as much information before you start as you guys have already pointed out.  With implementing, figure out the gateways as soon as possible.  Make sure that it’s all tidied up with your client, and then figure out whether you’re going to be doing a SaaS or an installed content management system-based ecommerce. And you can always use the example templates, but don’t just rely on those example templates to just stylize. But think about what’s best for your client, the customs of the client and what’s the best checkout processes and build something that works for the client and their business and not just kind of copy the templates.  So that’s it, I suppose, but very general advice.  There’s nothing specific…

Lea Alcantara:  It was good advice though.  It’s good advice.

Emily Lewis:  Yeah.  It’s the stuff that when you’re first doing ecommerce projects, you don’t really realize, and if I could just throw out a little bit of advice as well, at least in the beginning for me, an ecommerce project takes a lot longer than you may think it will.

Lea Alcantara:  [Agrees]

Luke Holder:  Yeah.

Emily Lewis:  And so definitely be smart with your project cost or estimate or whatever you’re selling to the client.  I definitely have eaten it a couple of times on ecommerce being like, “Oh, I could do that.  It will only take this long.”

Luke Holder:  Yeah.

Emily Lewis:  It never is that simple.  [Laughs]  It just isn’t.

Luke Holder:  Yeah, I agree, especially if you’re going to be doing your own kind of like CMS-based ecommerce configuration because you’re a little bit closer to the metal. You’re a little bit closer to how things work underneath.  I mean, on a SaaS-based product, you may be able to get them up and running in a day if they are happy with a premade template with basic customization.

Emily Lewis:  [Agrees]

Luke Holder:  But as soon as you start to get into like configuring tax for them, that’s when you need to realize it’s going to take longer than you think.

Emily Lewis:  [Agrees]

Lea Alcantara:  Absolutely.  Well, thank you for being on our show!

Luke Holder:  That’s all right.

Lea Alcantara:  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  But before we finish up, we’ve got our Rapid Fire Ten Questions, so our listeners can get to know you a bit.

Luke Holder:  All right, should I be nervous?  [Laughs]

Emily Lewis:  No.  [Laughs]

Lea Alcantara:  No, no.  It’s all good.

Luke Holder:  Okay.

Lea Alcantara:  Are you ready?

Luke Holder:  Yeah.

Lea Alcantara:  Okay.  First question, Android or iOS?

Luke Holder:  It’s iOS.

Emily Lewis:  If you were stranded on a desert island and can only bring three things, what would you bring?

Luke Holder:  I wouldn’t need to bring a phone ... Three things, okay, so I’ll need book, DVDs.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  Water.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  That’s a tough one.

Lea Alcantara:  What’s your favorite TV show?

Luke Holder:  Breaking Bad.

Lea Alcantara:  Nice.

Luke Holder:  It was, yeah.

Emily Lewis:  What’s your favorite dessert?

Luke Holder:  I would say my grandmother’s chocolate mousse. 

Lea Alcantara:  Mmmm

Emily Lewis: Mmmm

Lea Alcantara:  What profession other than your own would you like to attempt?

Luke Holder:  Another profession, I would say… oh gee, I have never thought about that question. 

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  I’ll say artist. 

Emily Lewis:  Oh cool.

Luke Holder:  But I have no idea what that means. 

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Emily Lewis:  What profession would you not like to try?

Luke Holder:  Anything with manual labor.  [Laughs]

Lea Alcantara:  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  What’s the latest article or blog post you’ve read?

Luke Holder:  The latest blog post I read was by Paul Graham just this morning on Hacker News about capital punishment.

Lea Alcantara:  Oh, interesting.

Luke Holder:  Yeah.  I wouldn’t go into details.

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Emily Lewis:  If you could have a superpower, what would it be?

Luke Holder:  See-through walls.  That’s creepy.  I ought to change it.  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  Fly, fly, fly. 

Lea Alcantara:  [Laughs]

Emily Lewis:  [Laughs]

Lea Alcantara:  Oh, what music do you like to work to?

Luke Holder:  I like to listen to like 90s like pop punk.

Emily Lewis:  [Agrees]

Lea Alcantara:  Nice.

Luke Holder:  It’s pop punk, yeah.

Emily Lewis:  All right, last question, cats or dogs?

Luke Holder:  Can I be really offensive and say neither.  I’m not…

Emily Lewis:  It’s all good.

Lea Alcantara:  It’s all good. 

Luke Holder:  I think…

Emily Lewis:  You’re like…

Luke Holder:  I heard your cat earlier meowing.  [Laughs]

Lea Alcantara:  [Laughs]

Emily Lewis:  [Laughs]

Luke Holder:  I don’t like cats…

Lea Alcantara:  Although I think you’re only the second person who said neither.

Luke Holder:  Oh really?

Lea Alcantara:  Yeah.

Luke Holder:  Okay, yeah, I’m not an animal person.  I don’t know why.

Lea Alcantara:  You’re an Australia man, how can you not be?

Luke Holder:  I know, because we’re meant to be scared of our animals, right?

Emily Lewis:  [Laughs]

Lea Alcantara:  [Laughs]

Luke Holder:  [Laughs]

Lea Alcantara:  Well, that’s true.  That’s true.

Emily Lewis:  Your animals can kill you.  [Laughs]

Luke Holder:  Kangaroos look cute, but they’ll give you a nice punch. 

Lea Alcantara:  [Laughs]

Emily Lewis:  [Laughs]

Luke Holder:  Yeah.  [Laughs]

Lea Alcantara:  All right, that’s all the time we have for today.

Luke Holder:  Yeah.

Lea Alcantara:  Thanks for joining us, Luke!

Luke Holder:  Hey, no worries.  Thank you very much.

Emily Lewis:  In case our listeners want to follow up with you, where can they find you online?

Luke Holder:  Yeah, so you can find me on Twitter @lukeholder and also I am constantly in the Craft Slack community, so you can go to buildwithcraft/community, and join the Slack there.

Emily Lewis:  Excellent, thank you so much!  I’m really excited about Craft Commerce coming out!

Luke Holder:  The same.

[Music starts]

Lea Alcantara: CTRL+CLICK is produced by Bright Umbrella, a web services agency obsessed with happy clients.  Today’s podcast would not be possible without the support of this episode’s sponsor! Thank you, Craft CMS!

Emily Lewis:  We’d also like to thank our partners: Arcustech, Devot:ee and EE Insider.

Lea Alcantara:  And thanks to our listeners for tuning in!  If you want to know more about CTRL+CLICK, make sure you follow us on Twitter @ctrlclickcast or visit our website, ctrlclickcast.com.  And if you liked this episode, please give us a review on iTunes, Stitcher or both!

Emily Lewis:  Don’t forget to tune in to our next episode when we’ll talk about Statamic for large-scale websites with Daniel Fowler.  Be sure to check out our schedule on our site, ctrlclickcast.com/schedule for more upcoming topics.

Lea Alcantara:  This is Lea Alcantara …

Emily Lewis:  And Emily Lewis …

Lea Alcantara:  Signing off for CTRL+CLICK CAST.  See you next time!

Emily Lewis:  Cheers! 

[Music stops]

Timestamp:  00:58:21