• 33:05

Episode number: 20

eCommerce in Statamic

with Jason Varga

Summary

Jason Varga, creator of the eCommerce add-on Bison for Statamic, stops by the show to explain how to tie in ecommerce with a flat file system. He describes what to look out for when dealing with clients and the right questions to ask, describes general ecommerce considerations and why one would choose a certain solution, while also explaining three perspectives: the client-facing developer, the third-party developer, and the creator of a CMS.

Tags

Sponsored by

  • Visual Chefs
  • Your ad here (dimensions: 520 pixels wide and 60 pixels tall)

Episode 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: You are listening to CTRL+CLICK CAST. We inspect the web for you! Today we’re talking about ecommerce in Statamic with Jason Varga. 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 Visual Chefs, a…

[Music]

Lea Alcantara: You are listening to CTRL+CLICK CAST. We inspect the web for you! Today we’re talking about ecommerce in Statamic with Jason Varga. 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 Visual Chefs, a web development focusing on content management system integration and custom web application development. To find out more, visit visualchefs.com.

Emily Lewis: CTRL+CLICK would also like to thank Pixel & Tonic for being our major sponsor.

[Music ends] Hey Lea, what’s new?

Lea Alcantara: Nothing much. I did watch the new X-Men movie over the weekend.

Emily Lewis: Oh, okay. I still haven’t seen the first X-Men: Origins one yet.

Lea Alcantara: Oh, the X-Men: First Class one?

Emily Lewis: Yeah.

Lea Alcantara: Oh, it’s so good. It’s so good.

Emily Lewis: I’m a big James McAvoy fan.

Lea Alcantara: Oh, my God!

Emily Lewis: So I’m not sure why I haven’t seen it other than just I’m a little fatigued on all the superhero movies these days.

Lea Alcantara: You know I know. It does seem like they’re coming out with like them nonstop these days. [Laughs]

Emily Lewis: Yet, it feels like a lack of creativity for fresh content. [Laughs]

Lea Alcantara: Yeah.

Emily Lewis: That’s what it feels like to me.

Lea Alcantara: Now, it’s true, but if you are a fan of James McAvoy, it is a nice film. [Laughs]

Emily Lewis: [Laughs] Yeah, I have a little crush on him. [Laughs]

Lea Alcantara: Well, I mean, I feel like the entire X-Men cast, they’re very attractive cast, so you know?

Emily Lewis: Oh yeah, and now, what’s her name, Jennifer Lawrence.

Lea Alcantara: Lawrence.

Emily Lewis: She plays Mystique, right?

Lea Alcantara: Yeah, and I mean, I feel like she was cast all those years ago before she really blew up.

Emily Lewis: [Agrees]

Lea Alcantara: So I feel like they really lucked out that they had her for this one, and I mean, she’s so perfect for the role too.

Emily Lewis: I agree, and I think even physically speaking, she looks a bit like Rebecca…

Lea Alcantara: Romijn?

Emily Lewis: Yeah.

Lea Alcantara: Yeah.

Emily Lewis: So that it sort of works that way too.

Lea Alcantara: Totally.

Emily Lewis: [Laughs] Well, I must say I’m kind of excited about today’s episode because I feel really confident I have the pronunciation of Statamic down. [Laughs]

Lea Alcantara: [Laughs] I know like…

Emily Lewis: I’m like the first time we did this and how many edits were there?

Lea Alcantara: Yeah, I know, it was like nonstop pronunciation. [Laughs]

Emily Lewis: [Laughs]

Lea Alcantara: But before we dive in today’s episode, a quick note for our listeners, we are now syndicated on Stitcher. It’s a free online radio service which you can stream from their website or from their mobile apps. We’ll have the link in our show notes, and if you use Stitcher and love our show, we’d appreciate a rating and a review.

Emily Lewis: Now, to today’s episode. Jason Varga is joining us to talk about ecommerce in Statamic. Jason is a web developer and the newest edition to the Statamic team. He specializes in CMS development with Craft, ExpressionEngine and, of course, Statamic. Jason is also the creator of the Bison ecommerce platform for Statamic. Welcome to the show, Jason. Thanks for joining us.

Jason Varga: Hi guys, thanks for having me.

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

Jason Varga: Sure. I’m originally from Australia. I grew up there. I met my wife, and she’s American, so a couple of years ago I moved out here. We got married and now I’m here.

Emily Lewis: And where is here?

Jason Varga: Here is South Florida, so just south of Miami, just above the Keys.

Emily Lewis: Nice.

Jason Varga: Yeah, we love it here, I do.

Lea Alcantara: [Laughs]

Emily Lewis: [Laughs]

Jason Varga: Yeah, it’s not too much different from where I grew up so it wasn’t too hard to…

Emily Lewis: Make the adjustment?

Jason Varga: Yeah, exactly. The weather is pretty much the same and, yeah, I just love it.

Emily Lewis: Excellent. So I mentioned in your bio, you recently joined the Statamic team. Can you tell us a little bit about your role there?

Jason Varga: Yeah, a couple of weeks ago, Jack and Fred, these two guys at Statamic, ambushed me on Skype. They just called me up one day and they said, “Hey, do you want to join?” I was like, “Okay.”

Lea Alcantara: [Laughs]

Emily Lewis: [Laughs]

Jason Varga: Well, it was kind of hard to say no because I love Statamic and the community and building stuff for it, it kind of snatched me up. So I’m going to be one of the core developers, just part time, so that I can help them do the things that they need to do like move on or moving the product and they want to get out the Trading Post, which is like their marketplace.

Emily Lewis: [Agrees]

Jason Varga: And it will be the new support forums and have a bunch of other cool little things to make the Statamic community greater. So I’m going to help them get that out.

Emily Lewis: And will you still be working on Bison and supporting that?

Jason Varga: Yeah, yeah. My time with Statamic isn’t going to be all my time, so I will still be doing client work and Bison and all of that.

Lea Alcantara: So why don’t we just dive in straight into our topic because, actually, it’s pretty huge. [Laughs] But we’ll try to keep the questions and discussion pointed. But with that being said, I do have a general question.

Jason Varga: Sure.

Lea Alcantara: Because ecommerce can get really complicated to implement. So what is it at its heart? What does ecommerce even entail for a developer?

Jason Varga: The way I see it is it’s just a way to get something to the customer, and money back to the client. So if you’re selling products, whether it’s something tangible or a download or anything really, it’s just that the transfer of money to back and forth over the internet.

Lea Alcantara: Sure.

Jason Varga: Yeah.

Lea Alcantara: So even though you currently work at Statamic, you’ve worked with a variety of CMSs. So what is it about Statamic that made you want to create an ecommerce add-on?

Jason Varga: Originally, it was just kind of the challenge, like we say, “Well, can you build an ecommerce platform in flat files?” Apart from that, it was like no one else had done it, so we just kind of did it. I asked Fred, “You know, what do people are asking for?” And he said, “Ecommerce.” So we ran with it.

Emily Lewis: [Agrees]

Jason Varga: And Statamic is so easy to set up, and we thought, “Well, ecommerce should be too.”

Emily Lewis: Hmm, so had you ever done an ecommerce solution for another CMS before?

Jason Varga: Yeah, I’ve done a bunch of ExpressionEngine and CartThrob sites. The first one I did was back in 2010 for a t-shirt company back in EE1 and CartThrob 1.

Lea Alcantara: Oh wow!

Jason Varga: Yeah.

Lea Alcantara: That’s a wow. [Laughs]

Jason Varga: I mean, it was easy with the EE and CartThrob. That kind of inspired me to do my own thing.

Emily Lewis: Although it was a totally different system when you’re dealing with the database versus the flat file structure of Statamic, so why did you even think that was possible?

Jason Varga: I mean, that was part of the challenge, like I didn’t know if it was possible.

Emily Lewis: [Agrees]

Jason Varga: And then at the start, I didn’t expect on completing it and selling it, that I just said to myself, “Can I do it?” And it turns out we could.

Emily Lewis: Did you have a client who you could build it for or a project you wanted to apply it to or it was pure just developer curiosity?

Jason Varga: Yeah, it was just me in my spare time trying to do something, build a product, and that’s about it. Anyway, it wasn’t for a client.

Lea Alcantara: Oh, interesting.

Emily Lewis: [Agrees]

Jason Varga: Yeah.

Lea Alcantara: Have you built other pieces of software for fun besides Bison?

Jason Varga: Well, my family in the auction business, and they have some auction software that they use, but it’s not so great, so I jumped into Rails at one point and made something for them. But apart from that and other add-ons, that’s about it.

Emily Lewis: So let’s talk a little bit about Bison. In terms of building it, I mean, obviously, not using a database seems to be would be one of the biggest challenges, can you describe how you approached that?

Jason Varga: Yeah, so the way Statamic works is like all of the settings are just YAML, which is great, and developers like it because it’s so simple and you can just kind of add whatever you want. So at its essence, Bison is the same, you can just set everything up in a single YAML file, most of it, instead of going through screens in the CMS and setting up things, so it’s like easy to configure and it’s just simple.

Emily Lewis: So would you say it’s more simple even in something like what you had done with CartThrob and ExpressionEngine?

Jason Varga: I think so. So in EE and CartThrob, products are just entries, so the same concept carries over here. So a product could be an entry or just a file and/or it’s saved as entries, so it has the same sort of concept, except another database.

Emily Lewis: Now, when it comes to the transactional part, the payment part of the ecommerce experience, how is that information stored? Is it also stored in files?

Jason Varga: No, they order themselves like the customer details like their names and addresses and stuff. That does get saved as a file, but at the same way you’d save that stuff in the database, but credit card numbers and things like that, they wouldn’t get saved to a database anyway, so that’s just transferred in the same way any other system would.

Emily Lewis: Now, with ecommerce and everything being saved as a file, does it introduce new backup requirements for your server?

Jason Varga: Well, since it’s all file-based, you could just use something like Git to version control everything.

Emily Lewis: [Agrees]

Jason Varga: I mean, you could even version the database because they’re just files, so it’s kind of easier to back up everything. It’s more easy than having a database in some ways.

Emily Lewis: Now, what about when you were building the actual user experience of the Bison, would you call it an add-on, or do you call it a platform, or what do you…

Jason Varga: I kind of used them both. I kind of change between the two of them.

Emily Lewis: Okay, so the user experience, what did you rank as your top priority in terms of how you wanted that to be for not only the developer who might be configuring this and setting it up, but also maybe the client who’s going to be managing their ecommerce information in Statamic?

Jason Varga: So for developers, it was about making it easy to set up and configure. So you can just use YAML for all of that, and so that was all about just making that really straightforward. But for the customers and the clients, it would be like using the Statamic control panel, they probably already know how to do, it’s just creating an entry for products and you can view your orders in the control panel if you want to do that. it’s all just basic Statamic stuff for the customer.

Emily Lewis: Does Statamic provide third party developers like a guide or support?

Jason Varga: Yeah, they have add-on documentation on their site. I did a talk at Peers Conference about integrating the Statamic using add-ons, so they have documentation, but it’s still in pieces, so I did a lot of digging around when I was using Bison. I guess I got more familiar with it by looking at the code itself, but we’re working on building out the documentation for the API and things like that.

Timestamp: 00:10:05

Lea Alcantara: Did you use any particular guidelines to build the UI for the client phasing part of Bison, like you mentioned that they can see the status of their orders or whatever? Were there any particular brand guidelines or UI-specific like the forms need to look this way or what have you? How did you plan that?

Jason Varga: There were no guidelines really. I just made it look like Statamic, I guess. I just kept fields, like I reused the fields that they have natively and just moved stuff around.

Lea Alcantara: Did you test any of this?

Jason Varga: Did I test any of it?

Lea Alcantara: Yeah, as in like once you built, say, the beta version of Bison, did you get people to be like, “Okay, can you update this order?” And then you watch them try to do that without you explaining how to do it.

Jason Varga: Not watching people, but I got plenty of feedback, and we had a beta period.

Lea Alcantara: Okay.

Jason Varga: So I had a lot of people testing it early on, and not many people have problems, and they all just kind of loved it, because, I guess, the Bison part, there was not really any control panel area for it in terms of like product entry and things like that.

Emily Lewis: What do you mean by there wasn’t a control panel area for Bison, meaning, it just used the core Statamic entry?

Jason Varga: Right. So you’d set up a folder, and let’s call it “Products,” and then you just have all the fields that you might want to show in the product like the price and description.

Emily Lewis: [Agrees]

Jason Varga: All I did was I said, “Hey, you have to include a price field,” and I gave people the ability to choose what the price field is called, and there was no Bison-specific field type that you’d have to use. You just use text fields and just whatever you wanted to.

Emily Lewis: Now, does Bison allow you to have some of the kind of configurations, I mean, I’m going to just touch on some stuff I’ve worked with in CartThrob, but you’re setting state-based fees for shipping or state-based taxes or even like inventory management.

Jason Varga: Oh, we don’t do the complex tax stuff like you mentioned, but we do have a bunch of different options of things like that. We do have a lot of shipping methods kind of. You can choose the different ways you might set up your shipping like per product or for the whole cart as a flat rate or you might let customers choose a flat rate like UPS, Direct Express or something like that. With tax, you can do things like taxing the whole cart or choose whether shipping is taxable, so tax is pretty simple. For inventory management, I do have a complete field type where you can create different combinations, like if you’re selling a t-shirt, you might want to create a large blue t-shirt and a large red t-shirt. You can have all the different combinations and then managing inventory for each thing. So when someone checks out, it will just reduce the inventory.

Emily Lewis: Oh okay, and what about things like promotions or discounts on products? That maybe someone enters a promotional code on the front end, is that something that you can do with Bison?

Jason Varga: Yeah. So even discounts and coupons are treated just like entries really, and so I do have a field type where you can just kind of configure that options of a discount. You can enter the coupon code. You can enter a percentage off or you can enter like an amount of, whether it’s by shipping things like that. So yeah, we do have discounts and coupons.

Emily Lewis: It’s not exactly in the line of thought that we’ve had thus far, but it just occurred to me, does having all of these running in a flat file structure, is this faster for the user when they’re going through an ecommerce process on the front end?

Jason Varga: Well, there’s no database query, so it can be faster, yeah.

Emily Lewis: [Agrees]

Jason Varga: But when it starts to slow down is if you have like a lot of stuff, like if you have thousands of entries and things like that. I had someone test it with about 3,000 orders in the system and they said that’s when it started to slow down, but it still worked, so it’s pretty scalable.

Lea Alcantara: So let’s take a step back because we’ve been talking a little bit about the specifics of Bison, specifics of Statamic. I want to know what do you need to consider when a client approaches you to implement ecommerce in the first place, like how would you choose a solution before you’re just diving and then choosing like CartThrob or Statamic or whatever?

Jason Varga: Okay, when choosing a system, I’d look at their expected volume of sales, like how many sales and how much money is going to be used.

Lea Alcantara: Yeah.

Jason Varga: Also, the lifetime of the site, so you might have like a conference website that might only be around for a small amount of time.

Lea Alcantara: Oh, right.

Emily Lewis: [Agrees]

Jason Varga: Or something like Amazon, which is going to be there where you’d want it to be around forever, I guess if you have a store.

Lea Alcantara: Yeah.

Jason Varga: Also, like the types of products you’re selling, whether they’re physical or digital downloads and things like that, and shipping. So if you are sending out real products, where you’re shipping it to, how are you gong to be shipping things like that. So you’d kind of put all those together and find a product that can match all of your requirements.

Lea Alcantara: Because I feel like this is a sticking point in like a lot of the CMSs, would you consider subscription or membership charges as part of the regular ecommerce solution, or would that be some totally separate thing?

Jason Varga: Oh yeah, I would consider it a part of it. I think you’d have to consider that in a solution you go in.

Lea Alcantara: Is Bison capable of that?

Jason Varga: Not yet, but we’re planning on it. You can create members, but nothing subscription based yet.

Lea Alcantara: Interesting. Well, I mean, once we’re dealing with members, I still feel like that’s so heavily tied to a database. Like to wrap my mind around just using flat files, would just that mean creating a new like membership entries?

Jason Varga: So in Statamic, all the members are just saved as files obviously like everything else.

Lea Alcantara: Yeah.

Jason Varga: But that’s kind of built into Statamic now.

Lea Alcantara: Yeah.

Jason Varga: And they have all these methods and things like that that let you interact with members. So in terms of the database, instead of having a database like MySQL, your database is just file based, so it’s a database. It’s just you have to think about it a bit differently.

Emily Lewis: Yeah, the more I talk to folks who are really experienced with Statamic, the more I’m starting to understand that it maybe dramatic in terms of conceptualizing, but that it’s really no different, data is just stored in a different way.

Jason Varga: Yeah. So if you have a lot of relationship stuff like this is related to that and has ten of these and three of these, and you’re needing to look in different places a lot, that’s kind of where you might need a database, a real database instead.

Emily Lewis: [Agrees]

Jason Varga: But for most cases, with flat files, I mean everything works and it works great.

Lea Alcantara: Actually, that brings up a situation that’s pretty common in like product-based ecommerce stores, recommendations as in like, “Okay, so you bought this t-shirt, maybe you want this other t-shirt?” Wouldn’t that be a relationship thing, or what?

Jason Varga: Yeah. So you could do that right now if you wanted to, but again, because of the way it works, it kind of has to look through all these files, check out different fields in the files, and the more files you have, the more kind of looking the system has to do.

Lea Alcantara: [Agrees]

Emily Lewis: [Agrees]

Jason Varga: And so it can be done, but things like that, a database is quicker.

Emily Lewis: So let’s go back to the scenario where a client is approaching you to implement ecommerce, you’ve gathered their requirements. I’m curious of what you think what the benefits are of choosing a CMS-based solution like Bison for Statamic or Charge for EE and Craft versus something hosted like Shopify.

Jason Varga: Right, with the CMS solutions, you kind of have complete control of everything.

Lea Alcantara: [Agrees]

Emily Lewis: [Agrees]

Jason Varga: Like all the templates or like the way everything is set up, and you can just implement it however you want. With the hosted solutions, you get a theme or you get a choice of a few things and you can’t really customize it as much as you might want to, and also I think you make your money back faster if you choose a CMS solution.

Lea Alcantara: [Agrees]

Jason Varga: So at the hosted solutions, you pay monthly.

Emily Lewis: Oh right.

Jason Varga: And after…

Lea Alcantara: And it’s perpetually, yeah.

Jason Varga: Right, so after a number of months, you’ve made your money back on the initial payment of something like Bison or Charge.

Lea Alcantara: And I’m curious though, beyond those particular benefits, I heard there are various liability issues, depending on the ecommerce solution, which is why some people decide to go with something like Stripe or PayPal or even a third party, a complete third-party solution like Shopify. So what are your thoughts regarding that with a CMS-based solution?

Jason Varga: So anytime you can kind of hand off responsibility, it’s better for you because it’s one less thing for you to worry about.

Lea Alcantara: Yes.

Emily Lewis: [Agrees]

Jason Varga: So the CMS solutions like CartThrob or Store or Bison will handle most of that for you, like you don’t have to worry about saving credit card details. It will talk to your gateway and they’ll process it and things like that, but if you want to make your own solution, you’d have to deal with like where things are stored and how they’re stored, and that can get complicated. But sites like Stripe or PayPal, you send your customer’s details to them and they’ll do the processing, so it is kind of one less thing for you to worry about.

Emily Lewis: Well, you mentioned gateways, can you explain what are payment gateways, and what kind of options there are?

Jason Varga: Payment gateway is the thing that will handle the money, like they’ll take the money from the customer and put it into your bank and things like that, and so I say there are 2-1/2 types. There are on-site gateways, and an example will be authorize.net where you’d install it on your site and you’d take the credit card details and you’d process it on your end and then talk to authorize.net, and they’d take the money from the customer. So on-site, it means the credit card details are going through your site.

Lea Alcantara: [Agrees]

Jason Varga: Then there are off-site gateways, that’s something like PayPal Express, so you’d probably seen it. You might add everything to your cart and when you’re ready to check out, you click the yellow PayPal button and then you go over to PayPal to pay.

Timestamp: 00:20:05

Lea Alcantara: Yeah.

Emily Lewis: [Agrees

Jason Varga: So PayPal will deal with everything on their end, and they’ll shoot you back to your site. Then there’s a kind of mix, which is something like Stripe where you’d stay on your site. You’d have the checkout form on your site so it looks like you’ve never left, but you’ve actually sent the details across to Stripe without the details ever touching your website. So they have like a JavaScript solution that will handle that for you.

Emily Lewis: And is one better than the other, or does it come down to a decision based on, I guess, liability issues, you wanting to keep the user and your experience of your site?

Jason Varga: Yeah, because the on-site payment gateways like authorize.net, they usually have like a monthly fee associated with them. So if you have a large volume of sales, they might take like 10 cents per transaction instead of the percentage which is what something like Stripe or PayPal might take. So you kind of have to weigh up how many sales you’re expecting and things like that. Another thing is keeping people on your site, if it’s that important to you, you might want to choose a solution that does that.

Emily Lewis: Is that decision making process something that if you are working with a client, you would kind of consult with them on that? Or do you typically deal with the client who already has that decision made?

Jason Varga: I think it depends on the client really. So if it’s a new business, maybe they don’t know anything about that and you’d have to explain it to them.

Emily Lewis: [Agrees]

Lea Alcantara: [Agrees]

Jason Varga: So it’s all about getting the requirements from the client and explaining things that they might not know about. So the things I mentioned before like the volume of sales they’re expecting, I think that’s the most important one because if they have like a recurring monthly payment for a gateway, they might not be expecting something extra they have to pay for.

Emily Lewis: [Agrees]

Jason Varga: So that’s something to keep in mind.

Lea Alcantara: Well, something else that has been percolating in the back of my mind as we’ve been discussing this, especially with the file-based system, is the security of all of these transactions, especially because like they’re all situated essentially as files in folders, the client or the customer information. Can you explain a little bit more about the security of something like Bison and how it works?

Jason Varga: So all of your order details are saved as files, but in a solution like CartThrob or Store, your information is saved to the database in the same sort of way.

Lea Alcantara: [Agrees]

Jason Varga: You’d never save credit card details. You don’t save it, and you shouldn’t.

Lea Alcantara: Yeah.

Jason Varga: And no solutions I know do that, unless you’re like a huge company like Amazon that might save your credit card for later or things like that. Yeah, so the SSL certificates are important. I think what they do is they stop people from intercepting the data you’re sending across.

Lea Alcantara: [Agrees]

Jason Varga: So you might be sending a credit card number to Stripe or something like that, and it just prevents people that might be listening on the networks from intercepting it so having an SSL certificate is important. I’ve seen examples of people using apps that will monitor a WiFi network. They do this a lot at conferences when they’re talking about security, and so they’ll sit on this app and watch all the network traffic and they can pick up all the passwords that people are using.

Lea Alcantara: Oh wow!

Emily Lewis: [Agrees]

Jason Varga: Oh yeah. That are on unsecured websites, but if you’re on a site that has SSL and know it’s got https:// in the address, everything is encrypted so you won’t be able to pick it up. But in terms of how we store the data, it’s all the same or essentially the same way as the database.

Emily Lewis: So we’ve mentioned a number of the different things that come into play when you’re dealing with an ecommerce project, what are some of the most common challenges you’d say that someone, and not you as the developer of Bison, but you maybe as the developer of a client ecommerce project, what are some of the most common challenges that you encounter?

Jason Varga: I think not being prepared for the requirements, like the project is kind of coming to a close and then it’s time to hook the gateway.

Lea Alcantara: [Agrees]

Emily Lewis: [Agrees]

Jason Varga: And maybe the gateway that you have in mind for all the solution you’ve chosen doesn’t support it, so you’d have to write it yourself or you’d have to pay someone else to develop it for you. So it’s kind of doing your homework and getting ready for everything.

Lea Alcantara: [Agrees]

Emily Lewis: [Agrees]

Jason Varga: Another thing is stuff like currencies and taxes and things like that.

Lea Alcantara: Yes.

Emily Lewis: Yeah.

Jason Varga: Because you have to be ready for what you need and whether your solution will support it.

Emily Lewis: Yeah, my very first ecommerce project I did, I did not do enough during the discovery phase and I neglected to get the nitty-gritty details of their shipping, and as it turned out, their shipping had just so many different factors into it, from weight to different shipping options for different products, and then you add the weight into that, and then also there were different shipping options within the state they operated and different from ones out of state, and it really made that part of the project quite painful because so much had been developed and then I discovered that there were all of these nuances. So yeah, now, with ecommerce projects, that discovery phase is so huge and I take a lot of time and ask a lot of questions about how the store operates, all of the different nuances, from shipping to taxes to inventory, and things like that.

Jason Varga: Yeah, so ask all the questions you can upfront. It might be a little more work at the beginning, but it will save you time at the end. Like clients might assume things are included.

Lea Alcantara: [Agrees]

Emily Lewis: [Agrees]

Jason Varga: They might think something is a small thing, but at the end of the day, like what you mentioned about shipping, that’s huge.

Emily Lewis: [Agrees]

Jason Varga: All the different options and tax things, and it can get crazy.

Emily Lewis: Yeah, it’s even one of those things that I try and get even before I’ve secured a client, when I’m working with them as a lead, I’m trying to get as many details as I can out as possible so that the estimate I offer is as accurate as possible too. [Laughs]

Jason Varga: Yeah.

Lea Alcantara: So Jason, I’m curious then in terms of project management, do you have a particular checklist of default questions that you always ask a potential or current client?

Jason Varga: Just the things I mentioned before really, just shipping, make sure they know in advance where things are going, how they plan to send stuff, taxes like you mentioned like one state might have different taxes for every county and things like that. Make sure you educate your client so that they can kind of educate you.

Emily Lewis: If I can also offer suggestion to listeners, it’s from CartThrob, but I definitely think it could be used for any ecommerce project, but they have a really decent project checklist of all of these different kind of questions that you can ask a client at the beginning, and it’s very exhaustive.

Lea Alcantara: Oh, you mean, in their documentation?

Emily Lewis: Yeah. I’ll make sure we have the link in our show notes, but it’s literally a project checklist that goes through questions about products, to SKUs, to the type of customers, currencies, locations, promotions, how payments are handled, taxes, shipping. It’s very exhaustive. So I’ll make sure we’ll have that.

Jason Varga: Yeah, that’s a good resource. I’ve referenced that a number of times. I mean, there are some simple questions in there that, like I said, maybe a client wouldn’t think to tell you because it might be straightforward, but it might not be to you. So definitely have a look at that one.

Lea Alcantara: So we’ve been talking about the perspective of someone implementing a client ecommerce solution, I’m curious about your best advice to anyone deciding to implement or create an ecommerce solution just like Bison or Charge or whatever.

Jason Varga: I’d say keep it flexible. I know there are a couple of solutions that maybe they give you a kind of template to use. Something like Magento, I think, they give you little modules that you can just place on your site, and I don’t like that. I think if you’re going to develop something, you want it to be able to have people be able to display things however they want it.

Lea Alcantara: [Agrees]

Emily Lewis: [Agrees]

Jason Varga: And also just make it easy to configure, I think.

Emily Lewis: Yeah. As someone who does configuration, I’d have to say yes, exactly. [Laughs]

Lea Alcantara: And document, document, document. [Laughs]

Jason Varga: Oh yeah. Well, that applies to everyone. I think that’s probably the hardest part.

Lea Alcantara: [Agrees]

Emily Lewis: This is an interesting question since you’re a developer of add-ons or whatever, when it comes to documentation, do you prefer just getting basic information out there immediately and then adding to it as you need or as users offer you feedback, or do you try and be as exhaustive from the beginning and put that out there right away? And then sort of building on that, do you ever consider having video-based documentation or do you prefer to have text based? What are your preferences?

Jason Varga: I try to get everything out as much as I can upfront so people kind of have less questions to deal with.

Lea Alcantara: [Agrees]

Jason Varga: And so, yeah, get everything out as soon as you can and then as the current base changes, the hard part is updating the documentation.

Emily Lewis: [Agrees]

Jason Varga: So I think dumping everything onto your docs is important. Screencasts, I think they’re great, but they’re hard to do.

Lea Alcantara: [Agrees]

Emily Lewis: [Agrees]

Jason Varga: I know I learned a lot better by watching a video than reading a page.

Emily Lewis: And what about support? There was a recent discussion about ExpressionEngine add-on developers on the Devot:ee forums about paid support. What are your thoughts about support? Do you charge for your support? And if so, how?

Jason Varga: That is a sensitive topic. I mean, if you’ve seen the Devot:ee thread, I mean, it’s like a million miles long.

Lea Alcantara: [Laughs]

Emily Lewis: [Agrees]

Jason Varga: No, I don’t charge for support, but that could change. At the moment, you kind of get support with a license.

Lea Alcantara: [Agrees]

Emily Lewis: [Agrees]

Jason Varga: So that’s part of the conversation that they’re having over there like, “What’s a reasonable amount of support that come with the license and for how long and things like that?” But right now, I offer support, you don’t have to pay extra.

Lea Alcantara: So as we’re wrapping up, I feel like we were talking about this in the developer’s perspective as someone who’s implementing a solution to a client as well as a third-party developer creating an add-on. I’m curious, what kind of advice would you give the actual CMS developer, so someone like directly to EllisLab or directly to Jack and Fred, the ones who actually create the CMS? As a third-party dev, what are some things you think they need to keep in mind to help developers with their third-party solutions so it’s seamless?

Timestamp: 00:30:15

Jason Varga: I think they need to create ways for devs to be able to access the data in many ways like hooks or things like that.

Lea Alcantara: [Agrees]

Emily Lewis: [Agrees]

Jason Varga: Just a way for you to get to kind of every part of the CMS that you can. Creating a flexible API is important, so just a way to do different things really, and if I as a developer want to say, “Hey, how do I grab a bunch of entries from a page.” But there should be an easy way to do that, and I just think listen to the devs, like if they have a suggestion, say it and see if you can work out a solution with them.

Lea Alcantara: So before we finish up, we’ve got our rapid fire ten questions so our listeners can get to know you a bit better. Are you ready, Jason?

Jason Varga: I’m ready.

Lea Alcantara: All right, Question 1, Mac OS or Windows?

Jason Varga: Mac.

Emily Lewis: What is your favorite mobile app?

Jason Varga: Vine, and I can spend hours on that. [Laughs]

Lea Alcantara: Oh, that’s fun. [Laughs]

Emily Lewis: [Laughs] Really?

Lea Alcantara: That’s interesting. [Laughs]

Jason Varga: Yeah. [Laughs]

Lea Alcantara: What is your least favorite thing about social media?

Jason Varga: The time suck. I can waste so much time, it’s not funny and it’s horrible.

Emily Lewis: What profession other than yours would you like to attempt?

Jason Varga: To be a musician or rock star or something.

Lea Alcantara: What profession would you not like to do?

Jason Varga: Anything that involves public speaking. [Laughs]

Lea Alcantara: [Laughs]

Emily Lewis: [Laughs]

Lea Alcantara: Interesting.

Jason Varga: Yeah.

Emily Lewis: Who is the web professional you admire the most?

Jason Varga: I think the guys from Focus Lab.

Emily Lewis: Hmm, yeah.

Lea Alcantara: I would agree. What music do you like to code to?

Jason Varga: Rock or metal.

Emily Lewis: What’s your secret talent?

Jason Varga: Secret talent? When someone asks me the time, I can usually tell them within like the minute.

Lea Alcantara: Oh wow!

Jason Varga: Like I can guess time well, but don’t hold me to that.

Lea Alcantara: [Laughs]

Emily Lewis: [Laughs] And if we meet you at a conference, we’d be like, “What time is it?” [Laughs]

Jason Varga: Yeah.

Lea Alcantara: What’s the most recent book you’ve read?

Jason Varga: I’m not a big reader, so I think the last book I’ve read is, I probably got halfway through The Starbucks Autobiography.

Lea Alcantara: [Laughs]

Emily Lewis: [Laughs] Lastly, Star Wars or Star Trek?

Jason Varga: Star Wars.

Lea Alcantara: Perfect. So that’s all the time we have for today. Thanks for joining us.

Jason Varga: Thank you.

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

Jason Varga: You can find me on Twitter @jason_varga.

Emily Lewis: Great. Thanks again, Jason. It was great talking to you today.

Jason Varga: Thanks.

[Music starts]

Lea Alcantara: We’d now like to thank our sponsors for this podcast, Visual Chefs and Pixel & Tonic.

Emily Lewis: We also want 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.

Emily Lewis: Don’t forget to tune in to our next episode when we’ll be talking about agency outsourcing with Carl Crawley. 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:33:05

Love this Episode? Leave a Review!

Emily Lewis and Lea Alcantara

CTRL+CLICK CAST inspects the web for you!

Your hosts Emily Lewis and Lea Alcantara proudly feature diverse voices from the industry’s leaders and innovators. Our focused, topical discussions teach, inspire and waste no time getting to the heart of the matter.