Summary
Ecommerce is an industry that has largely faded into the background due to its ubiquity in recent years. Despite that, there are new trends emerging and room for innovation, which is what the team at Mirumee focuses on. To support their efforts, they build and maintain the open source Saleor framework for Django as a way to make the core concerns of online sales easy and painless. In this episode Mirek Mencel and Patryk Zawadzki discuss the projects that they work on, the current state of the ecommerce industry, how Saleor fits with their technical and business strategy, and their predictions for the near future of digital sales.
Announcements
- Hello and welcome to Podcast.__init__, the podcast about Python and the people who make it great.
- When you’re ready to launch your next app or want to try a project you hear about on the show, you’ll need somewhere to deploy it, so take a look at our friends over at Linode. With 200 Gbit/s private networking, scalable shared block storage, node balancers, and a 40 Gbit/s public network, all controlled by a brand new API you’ve got everything you need to scale up. And for your tasks that need fast computation, such as training machine learning models, they just launched dedicated CPU instances. Go to pythonpodcast.com/linode to get a $20 credit and launch a new server in under a minute. And don’t forget to thank them for their continued support of this show!
- Visit the site to subscribe to the show, sign up for the newsletter, and read the show notes. And if you have any questions, comments, or suggestions I would love to hear them. You can reach me on Twitter at @Podcast__init__ or email hosts@podcastinit.com)
- To help other people find the show please leave a review on iTunes and tell your friends and co-workers
- Join the community in the new Zulip chat workspace at pythonpodcast.com/chat
- Check out the Practical AI podcast from our friends at Changelog Media to learn and stay up to date with what’s happening in AI
- You listen to this show to learn and stay up to date with what’s happening in databases, streaming platforms, big data, and everything else you need to know about modern data management. For even more opportunities to meet, listen, and learn from your peers you don’t want to miss out on this year’s conference season. We have partnered with organizations such as O’Reilly Media, Dataversity, and the Open Data Science Conference. Go to pythonpodcast.com/conferences to learn more and take advantage of our partner discounts when you register.
- Your host as usual is Tobias Macey and today I’m interviewing Mirek Mencel and Patryk Zawadzki about their work at Mirumee, building ecommerce applications in Python, based on their open source framework Saleor
Interview
- Introductions
- How did you get introduced to Python?
- Can you start by describing the types of projects that you work on at Mirumee and how the company got started?
- There are a number of libraries and frameworks that you build and maintain. What is your motivation for providing these components freely and how does that play into your overall business strategy?
- The most substantial project that you maintain is Saleor. Can you describe what it is and the story behind its creation?
- How does it compare to other ecommerce implementations in the Python space?
- If someone is agnostic to language and web framework, what would make them choose Saleor over other options that would be available to them?
- What are some of the most challenging aspects of building a successful ecommerce platform?
- How do the technical needs of an ecommerce site differ as it grows from small to medium and large scale?
- Which components of an online store are often overlooked?
- One of the common features of ecommerce sites that can drive substantial revenue is a well-built recommender system. What are some best practice strategies that you have discovered during your client work?
- What are some projects that you have seen built with Saleor that were particular interesting, innovative, or unexpected?
- What are your predictions for the future of the ecommerce industry?
- What do you have planned for the future of the Saleor framework and the Mirumee business?
Keep In Touch
- Mirumee
- Website
- Github
- @mirumeelabs on Twitter
- Mirek
- @mirekmencel on Twitter
- mirekm on GitHub
- Patryk
Picks
- Tobias
- Mirek
- A Guide To The Good Life: The Ancient Art Of Stoic Joy by William B. Irvine
- Patryk
- Release It: Design And Deploy Production Ready Software by Michael Nygard
Links
- Mirumee
- Saleor
- Django
- PHP
- Pyramid web framework
- Pylons
- Magento eCommerce platform
- Ecommerce
- Satchmo
- Satchless
- Prices library for handling price data
- French National Assembly
- Django Oscar
- David Winterbottom
- Ebay
- Amazon
- Etsy
- Shopify
- Ariadne GraphQL framework for Python
- Graphene GraphQL framework for Python
- Apollo JavaScript GraphQL framework
- PWA == Progressive Web Apps
- SKU == Stock Keeping Unit
- Collective Intelligence
- Elasticsearch
- A/B Testing
- Room Lab store built on Saleor
- Augmented Reality
- WebGL
- Saleor Cloud
- ASGI
The intro and outro music is from Requiem for a Fish The Freak Fandango Orchestra / CC BY-SA
Hello, and welcome to podcast dot in it, the podcast about Python and the people who make it great. When you're ready to launch your next app or want to try a project to hear about on the show, you'll need somewhere to deploy it. So take a look at our friends over at Linode. With 200 gigabit private networking, scalable shared block storage, node balancers, and a 40 gigabit public network, all controlled by a brand new API, you get everything you need to scale. And for those tasks that need fast computation, such as training machine learning models or building your deployment pipeline, they just launched dedicated CPU instances. Go to python podcast.com/linode, that's l I n o d e, to get a $20 credit today and launch a new server in under a minute. And don't forget to say thanks for their continued support of the show. And don't forget to visit the site at python podcast.com to subscribe to the show, sign up for the newsletter, and read the show notes.
And to help other people find the show, please leave a review on iTunes and tell your friends and coworkers. And to keep the conversation going, go to python podcast.com/chat. To learn and stay up to date with what's happening in artificial intelligence, check out this podcast from our friends over at the changelog.
[00:01:18] Unknown:
Practical AI is a show hosted by Daniel Whitingac and Chris Benson about making artificial intelligence practical, productive, and accessible to everyone. You'll hear from AI influencers and practitioners, and they'll keep you up to date with the latest news and resources so you can cut through all the hype. As you were at the, Thanksgiving table with your your friends and family, were you talking about the fear of AI? Well, I I wasn't at the Thanksgiving table because my wife has forbidden me from doing so.
[00:01:45] Unknown:
It's it's off limits for for me, lest I drive her insane because I never stop. New episodes premiere every Monday. Find the show at changelaw.com/practicalai
[00:01:53] Unknown:
or wherever you listen to podcasts.
[00:02:01] Unknown:
Your host as usual is Tobias Macy, and today I'm interviewing Nirak Menzel and Patrick Zavadsky about their work at Mira. Me building e commerce applications in Python based on their open source framework, Saleor. So, Mirak, could you start by introducing yourself?
[00:02:15] Unknown:
Sure. My name is Mirak Mansel, and I'm the founder and CEO of Miromi Software who built Saleor ecommerce solution.
[00:02:22] Unknown:
Thank you for having us, Tobias. And, Patrick, could you introduce yourself as well? Hi. My name is Patrick Zavatsky.
[00:02:28] Unknown:
I'm the original maintainer of Saylor and its first author, and I'm the current head of technology at Mirami Software. And Mirak again. Could do you remember how you first got introduced to Python?
[00:02:38] Unknown:
Yeah. Of course. So I was actually first introduced to Python via open source and, so do Django. This was, the first project actually that we picked down on picked picked up on, in 2009, and this is how we actually have started the company. And at the moment, we deliberately chose, this language to due to its more, like, academic background, I I think. And the case was that we were looking for, you know, great developers. We wanted to work with very good people, and this is how we actually went with Python. Django was equally important, I suppose, you know, the documentation simplicity and and so on. Coherency of the code, that was something that we were looking for as a company. So this is it, I suppose. I I definitely have heard of Python on my university, but but the first real, life encounter that was, with Mirumi 2009.
[00:03:30] Unknown:
And, Patrick, do you remember how you first got introduced to Python?
[00:03:34] Unknown:
Sure. I used to work as a PHP programmer as I think many of us, did during the early 2000 years. And I was using Python as a site programming language for things that were not really web related, but then I got involved in a project that used, pyramid and pylons. So I got introduced to Python on the as a web programming language of sorts. And then, eventually, Django came along. It was moving the same project to Django 0.9, I believe, at the time. And eventually, Django became the
[00:04:11] Unknown:
the web framework to use for web projects, so that's where we are today. And so can you start by describing the types of projects that you work on at MiraMe and how the company first got started?
[00:04:23] Unknown:
Yeah. Yeah. Of course. 2009, that was actually when we started the company. It was it was already 10 years ago. But, we, we started it around a single, product that was back then a fleet management platform. Patrick was actually an employee number 1. And, what we wanted to achieve is, like, working with great developers as I said before and and working on, you know, interesting and challenging projects. I was I was earlier freelancing, and that was mainly around, and, you know, web programming in general, I would say. So yeah. So so this is this is, how we, have actually started. Then we so it's actually fun fun fun stories that we didn't want to be involved into ecommerce too much. We always believed, back then at least, that this is, really boring, and and we didn't want to be part of that.
And, but at the same time, we had to actually work on 1 of those projects, to actually support our other projects, internal projects. And we quickly learned that it there's even more boring that that we that we originally thought. It was not about boring itself, actually. We we didn't like the way we had to work with that software back then. And and there were actually 2, solutions, I I suppose. Like, Magento was already becoming a standard. But, in the Django world and Python world, there was not much option to choose from. So there was 1 project, Satchmo, that I remember that, that, actually made us pretty tired, I would say, with, you know, with ecommerce. So after that 1, we didn't even want to more we didn't so so we we hated that space even more. But, we also realized that might be a good niche that we could work on, and and we always believe that can be an interesting interesting, thing to work with, with companies selling things online. And and this is how we actually got into, and then then we moved into other ecommerce, libraries like prices and and so and so on. But we started with, you know, with a small project, and then we then we moved to ecommerce, and then and and we quickly realized we we need to write something that we really want to work with. And that was that is the story, I think. To add to that, I would say that the projects that we usually
[00:06:42] Unknown:
select for development are projects that are challenging. We're trying not to be a company where developers come to get bored to death and look for other opportunities. So we try to select things, that make us scratch our heads and maybe ask ourselves, what the best solutions are rather than, look at, established patterns. So, yeah, we're looking for projects that are challenging. We mostly do ecommerce stuff, but we do stuff that is borderline ecommerce, like internal systems for the French,
[00:07:17] Unknown:
assembly, for example, that is not a store per se, but uses some of the same technologies. Yeah? Yes. I think 1 important thing that I recall as well is that we since such more actually and and our experiments with, which was our first ecommerce library. Then we also got involved into Django Oscar first versions, and we worked with David, Winterbottom back then on 1 big project that actually Oscar has been originally created for. So the lesson that we learned over that time, actually, we turned into sailor, our own more, I would say, robust, ecommerce framework.
Was back then just a bunch of interfaces that we believed would be helpful to wrap your own ecommerce, bespoke ecommerce system, and Saleor was an implementation of it already. Yeah. I remember in the early to mid 2000,
[00:08:09] Unknown:
ecommerce was sort of this new area that everybody was trying to explore and understand the best way to approach it. And in recent years, you don't really hear much mention of it because it sort of faded into the background and has just become standard fare. And I'm curious what your sort of current perspective is on the state of the ecommerce industry, and what are some of the sort of new and interesting areas within that problem domain that you've been dealing with? So I I think the ecommerce is we actually saw maybe 2, 3 big waves so far,
[00:08:41] Unknown:
at least, the way we understand it. 1 I mean, Magento was, 1 of of the first plat you know, platforms or major open source ecommerce solutions that, has been built sort of before the mobile era. And it was, purely community sort of work where, for instance, user experience was not that important. Then then we got this mobile era when when you actually platforms, you know, has appeared, and 1 of which can be probably reaction. There are a couple of other, platforms as well. And now we are seeing, push towards, like, experience driven era, which obviously includes mobile.
And, we all see huge, increase in mobile sales, but it's more about building, coherent experiences for the for the users. They they actually you know, modern customers, they look for interesting and modern ways actually to build relationships with with brands. And I think this is this is really interesting. From the technological perspective, this is mainly, I would say, headless ecommerce approach where you expose your API and your actually, ecommerce might become, like, the heart of your entire system, actually merging the data from your physical stores from from from, different, you know, touch points, like, obviously, your web page and so on and so on. So so I think the I think I think currently we are facing this problem that most brands, they really want to look like Nike, like Warby Parker, and so on. They they, they real they actually understand already understand the value behind that. And, and this this is the most important actually, 1 of the most important things that they that has to, you know, be delivered to the modern customers. The technology in the background itself hasn't changed that much. 1 thing that has really changed is the approach to data, and, and data driven ecommerce is currently, the way, the way that, you know, the way it it should be done. We we we we all we all are looking into data. We are trying to figure out what is the best way to actually meet the customer expectations And, obviously, to sell more as well, but I think there is, like, a, like, a middle ground that is really interesting to explore. And that would be that would be my opinion about that. I think,
[00:11:13] Unknown:
we're overlooking, some major milestones that happened in between, like, 15 years ago. There was a question of how do I even pay for my order because why would I enter my credit card details into a form on a website? How do I trust this person? Who are they? There was no HTTPS. There was, I mean, maybe there was HTTPS somewhere, but most websites were just, like, you know, not very secure. It was hard to convince people to place an order because of all of the security concerns, and it was very founded in reality because, stories of stolen credit card details were just everywhere. I think, another milestone, was the the launch of eBay and then Amazon.
So ecommerce for the average Joe in the street. So, like, people who would never even dream of having their own stores could suddenly sell stuff over the Internet. So I think those were very important, milestones for for ecommerce. And I think even today, there are platforms like Etsy who enable people who wouldn't otherwise have a reason to run an online platform because running your own ecommerce is a costly thing. So if you only have, 1 or 2 products and there are things that are maybe handmade, so you don't have large stocks of them, so you may only sell, like, 3 or 5 5 items per month. So you wouldn't normally want to run your own, ecommerce platform for that. So it doesn't scale to to, you know the cost doesn't scale to to your to your income. So I I think those are also important.
So while we, as a company, are building bespoke solutions for more, like, lifestyle, products or for brands who who already have their presence. I think ecommerce for the regular people like, my parents maybe. It's something that has emerged over
[00:13:18] Unknown:
the last years and has enabled many, many people to to sell things over the Internet. Yeah. And then there are platforms like Shopify that serve as sort of a middle ground to commoditize the actual implementation of the site and handle a lot of the underlying grunt work of it, and let somebody who is actually sort of at a small scale professional business be able to have an online presence without necessarily having to employ a suite of technical staff to maintain their solution. Yeah. Exactly. Exactly. And as part of the work that you're doing at Mira. Me, you have a number of different open source projects that you maintain, most notably, Saleor, which you mentioned. And I'm curious what your motivation is for putting your time and energy into maintaining these different projects and how and providing them as being freely available solutions and how that plays into your overall business strategy and customer acquisition strategy?
[00:14:14] Unknown:
Yeah. This is a really good question. And especially because, like, going open was, was not that obvious 10 years ago. Like, we recently, you know, we recently see a lot of, a lot of interest in open source, and companies start realizing the value. I don't think they all do realize the true value, but let me let me explain a little bit more. So there are probably, like, 3 components of that, thinking behind why we actually are so deeply rooted in open source. 1 is this purely sort of philosophical perspective that sharing is important, especially if you are using a lot of open source. And we were all about open source 10 years ago now, and we will be in the future. So giving back is important. But but, also, we believe that, this is the real future of of software. And we already saw examples of of, you know, of companies doing that. Back in the days, there were mainly a Linux kernel and and companies related to server infrastructure doing that. But as we see over the last few years, more and more companies are moving and, you know, releasing, some of the of their software for for free as an open source. But that's 1 perspective. The second 1 was, also quite obvious, I would say, but as a small company here in Poland, but not only in Poland. But, you know, providing worldwide services, that was a great way for us to actually get some exposure and and basically, show how do we build software and and and, and what can we do for our clients. This is the practical perspective. But I think that the most important 1 is that currently looking at, at the last 10 years, is that having open source deeply, rooted in your culture actually, results with great team and and people really caring about, the quality of the software. You know, open source actually also teaches people how to communicate clearly and how not to actually communicate. And, and and, you know, you need a little empathy actually being, you know, a developer, but not only. The is the most important thing in our culture currently. And and, you know, I can say that it's still mandatory here at Miraomi for people to be involved in open source. And that doesn't mean only that we write our own open source libraries. I think we yeah. So we also spend time helping other projects to to fix problems that we actually need to fix for our own purposes. So so I think open source can be a great starting point for the for the, true and deep culture of, of of of a business. In the as a result of of being open source, we also have created our own sort of market with big, project like Saleor. This actually drives customers. And and as you said, that can be in a services acquisition channel.
And and, but this is, I think, this is quite obvious. And I would I would say it's really important to be honest with that as a company. So if you would only treat this as a as a bite and a hook, I don't think that would work. And I would also discourage to start, like, brand, you know, new projects if there is something that already fits your requirement. It will be probably more helpful for everyone to just join the ongoing development where you can. Obviously, if you if if there is nothing that helps your purpose, then then it will be it's it's it's good to probably start a new project. This is actually how we started with Ariadne recently. It's very practical reason. GraphQL word in in Python is not really that well developed yet. So we wanted the schema first library, and there's only Graphene currently. And Graphene is more like a language library. And there's a big discussion currently which approach is better, but but but we believe the schema first is is better, and I wanted to have something like that. And there was nothing like that in Python. It there is something in, JavaScript board, which is called Apollo. So, yeah, so we wrote,
[00:18:14] Unknown:
Ariadne this way. Yeah. Ariadne, to add to that, is a GraphQL server for Python. So, as Marek mentioned, does, does the cultural aspect? Because working in the open in general improves culture because everyone sees that if you're being a nice person or not, if you're giving valuable feedback or not. So that's 1 thing. Another is the bait and switch thing that Mirak mentioned that we don't want, our customers or potential users to think that the open source project is just a way to get them to pay us money for consulting. We were very, very, cautious when selecting the license for SAILOR to be very permissive to to promise people that they can always take their own source code and, you know, work on it behind closed doors. And I think the question, we get a lot is, doesn't open source threaten our business model, which I believe it doesn't because as I've mentioned, we've always wanted to work on challenging products, which means we're not selling software or selling our knowledge. We're selling, you know, our experience. So off the shelf sailor will never compete with the bespoke systems that we are hired to build soon. So there's that. Yeah. I think that that's definitely something that can be easy to overlook is the fact that as software engineers and developers
[00:19:38] Unknown:
and people working in the technology industry, the end goal isn't to produce a pile of software because that doesn't do anybody any good if they don't gain any value from the use of it. And that what we should be driving towards is providing actual user value and business value as a result of the software that we use, and it's just a tool, not an end in end of itself. That that's, yeah, that's that's very true. Yeah. We don't want to be a company that sells software
[00:20:03] Unknown:
in, as a solution. We don't want to be a company that just clicks the deploy button on something that is already written. We are here to solve problems and to take challenging, projects and deliver them. I think this is also important for our employees. So they want to work on something that brings them joy, that is interesting, and that, gives them opportunities to expand their own knowledge. So we want to do stuff that is actually interesting from the engineering standpoint.
[00:20:34] Unknown:
And so you mentioned that Saleor came about as a result of a project that you were working on that was using the Django Oscar framework
[00:20:44] Unknown:
and that you had some different ideas about how best to approach ecommerce. So I'm wondering if you can discuss a bit more about what the Saleor project offers and how it compares to some of the other solutions that are available in the Python ecosystem for building ecommerce platforms? Yeah. So, so it started actually a little bit earlier with Satchmo, but, Patrick will be more capable of actually explaining that in details. But 1 important fact was, always that we wanted to I mean, ecommerce to be interesting again and interesting for the developers, not for, like, you know so that was our our approach to build tools that, that we can actually use as engineers to build bespoke ecommerce systems for all those appliances that Patrick just mentioned. But I think, Patrick, you you would be better fit for for for that particular question. Right. So, as,
[00:21:36] Unknown:
was mentioned before, we did our best not to write yet another, ecommerce software stack because that used to be my work in previous companies, and, both me and Mirek thought that this particular domain of software should be solved by then. That was 10 years ago, and we were so wrong about this. But back then, we thought that this was something that was already solved. There were solutions. So, eventually, we were approached by a vendor who had a a highly customized software built on top of Satchmo. And, we've spent a year trying to teach such more new tricks and to fix some stuff that the customer was not very happy about.
So that was the first time when we thought that maybe ecommerce was not really done. And then, we were cooperating, with a company called, Tangent in London who are actually authors of Django Oscar. So, we spent some time working at their offices in London on something that was eventually released as the very first version of Django Oscar. But as after we've built some projects using Oscar, we figured out that by the time a project is done from the customer's perspective, so when they say, okay. I'm giving a green light, send this thing to production. We have already customized, like, 90, 95% of the code base, and we were not very content with how, Oscar handled the customization process.
There was a system of overrides. It was it it felt very hacky at the time, so we thought that maybe we could do this better. So we came up with, our own solution, which was called such move such list. Sorry. Because it's a plain words. Less is more to such such list was clearly better than such. So, yeah, so we released such list, which was, our first approach at building, store. So we thought, okay. These are the parts that will definitely never change. This is the code that you will never have to fork, and we were proven wrong within the 1st 2 months, I believe. So once again, we took a step by step back, and we thought, okay. Maybe people just want to edit code instead of, you know, using, plugins and overrides and all of the abstraction layers that are built upon a typical, software stack. So we have free modeled, searchless to be a pure Python implementation of, common algorithms, And we've started the, sailor project, which was a Django storefront implementation, but it was not as much as a framework.
It was more of a project template that you could fork and edit their hearts content too. So that's how, SALOR started.
[00:24:33] Unknown:
And what are some of the ways that both Satchless, which I know you still maintain, and SALOR have evolved over the time since you first began working on them and some of the, most interesting or challenging tasks that you've been faced within that process of building and maintaining it? Mhmm.
[00:24:51] Unknown:
I would say that maybe it's not as much, of a challenge, but, we were quite lucky because, originally, we thought that the only solution to building something that is customizable is to make the code base itself, something that you would fork and edit. But then the PWA and headless, web applications came along. And then this made it actually, viable and possible to build solutions that use a common API, backend. Like, you treat your own, store as a as if it was a 3rd party integration where you only customize the user experience part that is run within the browser or on a mobile device or whichever channel you want to to use for sales. So where we are today is we're actually, reconsidering how we can make, cellular easier to reuse without modifying any of the back end code. So to make it flexible enough that, you can just install cellular, and the only thing that you need to worry about is customizing the the client. Yeah. I think I think this is 1 of the biggest challenges since since we wanted to actually address
[00:26:06] Unknown:
the problem of over bloated, ecommerce, systems and write something lightweight and something that is, easy extendable and and something that we can use as developers to be low on bespoke system, then you face that, you quickly face that question of how much do you want to actually introduce into the platform, into Saleor in this case. And, you know, what, what is actually the common denominators for the projects that we believe are good fit for Saleor. And I think, balancing between having enough functionality but not coming with, you know, system that most of the customers would use only 10% of is is is the challenge, and we still want Tello to be really lightweight. And, that is, I suppose, you know, the biggest, discussion currently that that that we have. Like, you know, what should be included, what is not a good fit into Saleor. And for somebody who is agnostic to the language
[00:27:08] Unknown:
or implementation environment for an ecommerce solution, what are some of the aspects of Xalor that would make them choose that over some of their other available options? I I think Xalor is still,
[00:27:20] Unknown:
sort of, first choice for Python developers. But recently with the second version, we we actually turned it into headless ecommerce. So it's all GraphQL driven and very modern. So I would say if you were looking for for a solution that doesn't come with a big overhead and, and and the techno technological debt as well, then a SAILOR is a great fit, especially if you are looking for the really modern ways of of writing front ends these days. I already mentioned GraphQL, but this is quickly becoming, I would say, a standard for, JavaScript developers. And it makes, makes their their life way better, way easier. But at the same time, it allows to build more, engaging user interfaces quicker. So some of the solutions, the old 1, especially, they already have, GraphQL implementation as well, but, has been built with that in mind. That that's 1 thing that I would say. Another 1 is that contrary to many many other open source software, we, at Mirumi, really and deeply care about the user experience. And, this is also why we are rewriting the whole dashboard currently into a PWA application, and we want this to be really polished and really outstanding. And and, in our case, open source doesn't mean that we would compromise on UX and just build the, you know, internals.
We want to deliver polish and and complete software that other developers can actually use and build their own, experiences with. 1 1 thing that I wanted to add is that, which is very important with the open source software in general, is that is a company heavily bet on cellular, and we provide the support and the full action time team that that, works on that software. I think it's it's important. So, whenever you choose a platform for the next 5 years, let's say, you can be sure that for as long as Mirum is there, the platform will be developed. And and I think it's really important for for for businesses. And as far as
[00:29:14] Unknown:
building a successful and stable, ecommerce platform and project, what are some of the most challenging aspects of building and maintaining that? And how do the technical needs of that platform change as the size and complexity of a business grows?
[00:29:32] Unknown:
It's a very difficult question. I would say most of the businesses, they don't change the business model overnight, I would say. So they, build additional features and add additional integrations around the existing platform. By saying that we wanted this platform, I mean, cellular, to be for developers, we all also mean by that that, the system is sort of designed to be extensible, but by developers, not by plug ins, in this case. And so we believe that our solution can easily grow with the with the businesses. Yeah. I think I think the the biggest challenges that we that we've seen so far are, I suppose, integrations. And then having everything as an API, like, hell like, your ecommerce being an, know, an API driven headless makes it much easier to to actually integrate different aspects of of your entire ecosystem.
[00:30:28] Unknown:
And I would I would say that that that would be my answer. To add to that, I would say that many companies when they start out, if they are fairly small, they tend to model their business processes around the software that they use at the time. So that may not necessarily scale up well. You may not necessarily, have the opportunity to use the same process when you're having 1 customer a day or maybe 1 customer a week. In in a situation where you're having, like, 3,000 orders placed within a hour, for example. So I would say that the the early software choices can be quite limiting, when you need to scale out. So I don't believe that, it's even possible to predict that and to make the right choices, in the beginning. So I would say there are there are points that you need to identify in your company in your company's lifetime where you need to rethink your, I mean, if we build software today, we usually use, an iterative, process, like, something like scrum.
So every couple of weeks, you can rethink the whole process and maybe take a slight turn, readjust, and so on. So I I would say that it's important to do the same thing around the software and processes that you use. For technical issues, there's things and processes that you use. For technical issues, there's things like, I don't know, traffic spikes, for example. Your your business becomes larger, yet it attracts more customers, and a single Black Friday sale could completely fry your servers, for example. The stuff like, scaling out fulfillment to handle multiple warehouses, for example, or adding more languages or more currencies to your website, which sounds, like something that's easy to do. But often, this becomes the blocker that forces the software to be replaced entirely.
[00:32:35] Unknown:
I can also add something that might sound unintuitive for the software company that actually creates open source software. But but it's important to remember that open open source solution might not be the best 1 for for your business initially. I think you this is this is a very important question. So so it's reasonably easy to actually spawn a new shop using guided you know, any of the available solutions on 1 of the host you know, cheap hostings and so on. But then you might this I mean, maintaining this might become your, like, full time job within a year or even sooner, and you want to actually avoid that because because, this is not your core business.
So I would encourage to start small and then actually move to more advanced solutions. Open source development is not cheap either. You know, it it it it might might, actually consume, your resources, where you should have actually spend them on something else, like maybe marketing or just better front end. And, and those are all, like, things that you you should everyone actually should think of starting, an ecommerce or selling anything online. That not necessarily the open source is your first choice. Definitely, it's the first choice for the brands that that are already established, and they they need, you know, a lot of flexibility and and and they need, best bulk solutions and a lot of integrations, but not necessarily for all the brands just starting with online sales.
[00:34:06] Unknown:
Yeah. I would also say that if you are in the domain that sells, commodities, for example, then maybe not having a store is the best solution because you probably already have a distributor's network. So you have a way to put your product in the end user's hands directly or under indirectly, but creating an online ecommerce platform that is, you know, accessible to everyone on the Internet may become a support nightmare overnight. If anything goes wrong, you may be swamped with real people wanting to know what happened to their money, for example. So you may not necessarily have the stuff or the skill set to to handle that. And
[00:34:55] Unknown:
as people are starting to plan out an ecommerce site, what are some of the components or features or user experience patterns that are often overlooked that they might not start to incorporate in the initial phases of the project?
[00:35:10] Unknown:
Well, this is probably not, something that's user visible, but I would say the most overlooked part is usually testing. So the most common issue that we find where we enter an existing project is that some problems are only discovered by customers in the live environment, and this is the last thing you want to have happening, on on your side, especially if you are handling money. So you don't want to learn that you're, charging some credit cards, but silently, you know, not saving the transaction to your database, for example. But for business needs, I would say support, as I've said, this is something that people tend to overlook.
People want to return products. People want to have refunds. Stuff is lost in shipping, and someone needs to take care of that. And this is not something that software can help you with. I mean, we can add you we can add a button that sends a refund to the credit card, but it won't be able to make the decision whether this should happen or not. So, yeah, I I would say that customer experience is half the NICE CSS, and JS that you deploy to your website, but the other half is what happens once I place the order and I have a problem with it. Yeah. I would I would I would also add something that I that I have already said before,
[00:36:36] Unknown:
but it's important to plan out your resources well where where this really moves the needle. Like, for instance, spending, time and and new resources, whether those are, like, developers or or or, any other people involved On the technical details that works in the back end, probably doesn't make, sense unless you, need a lot of integrations in the back end that cannot be handled by by, you know, by platforms like, for instance, Shopify. So we often see, resources being spent where we believe, like, spend on the on on the things that are not really relevant to the customers, like, you know, like, as I as I earlier said. I think experiences and and, are are what people care these days about. And and, like, to give you an example, also, we we often come across companies that actually all they want is to change something in the front end, but then they realize that that this needs to be done in the back end as well because because the system underneath was not prepared for that. So this is how we think you know, we want to think about cellular. We want the back end to be prepared for, like, you know, different, scenarios.
And this is this is where headless helps a lot as well. So you spend your time in the front end and and building something nicer to your customer instead of just, changing your views in the back end and and, you know, playing with the back end code. And 1 of the
[00:38:06] Unknown:
most useful user facing differentiators for a well built ecommerce site is the ability to have effective faceted search and recommendation engines so that it makes it easy to find exactly what it is that you're looking for and also to have some manner of, just easy discovery and unexpected useful surprises as you're navigating the site. So I'm wondering what your best practice strategies are that you've discovered during your client work for being able to build in these capabilities, both for recommendation engines and for useful advice for people who are maintaining the store for adding effective faceting
[00:38:49] Unknown:
to the products that they're maintaining? I would say the biggest benefit I've seen to improving the recommendation engine's output was forcing the customer to actually provide us with all of the sales information and not just the online sales that we're seeing through the online channels. Because, 1 of the problem with, with building recommendation engines is that there's hardly a 1 size fits all solution, so you're building something often from scratch to work for a particular domain of products. And to, show an example is, we've built a recommendation engine for a large bookstore that covered something like, 11, 1,000,000 SKUs, like, unique SKUs.
So we had lots of back and forth between us and the customer on what the order of results should be, and we've quickly realized that they instant instinctively knew which products were popular because they had the sales info for the brick and mortar stores, but the recommendation engine didn't have access to any of that information. So so, yeah, I would say that making sure that your recommendation engine has access to all of the data and not just the data that happens to, you know, pass your, storefront is the most important part. As for actual tools, we're using a mix of, collective intelligence and machine learning and just regular, facets where where AI doesn't actually add much to to the equation. Because, of course, AI is the is the most popular topic nowadays, but it comes as a cost. So running all of the, training the models and running the models is not free. So there are cases where the old fashioned SQL queries and stuff like Elasticsearch, the the they perform good enough, so it's not worth spending more money on building something fancy. Yeah. 1 thing that we see being a challenge for some of the platforms still is,
[00:41:04] Unknown:
being able to properly also test different approaches, like, including AB testing, of course. And, and this is where we, we want to be better at as well. But, yeah, recommendation systems, and predictive and personalized shopping is definitely the future. It's part of those experiences that more the customers are actually looking for, and we believe it can work for both sides, not just for the seller. But software is, I think, is getting up you know, like, catching up with with with that only only now. It's all actually, currently, also, that we are working on at our data science, team. But I think software still needs to be or get better on just even, like, simple stuff, as I said, like like measuring the performance of, of approaches that you that you try. Yeah. I would say metrics are key to
[00:41:55] Unknown:
all experiments, not not only related to recommendation engines. It's impossible to prove that any solution is better than the other without proper metrics. And it's also important to make sure that what you're measuring is actually the generic fitness of a solution and not so you're not optimizing for the particular test case that you have at hand. So I think it's tricky, especially with machine learning, which tends to skew towards the test cases that are used the most often. So I I don't have a ecommerce example in mind, but I know that, Google, for example, struggled with their with their what was it called? They had a prob they had a project where they, tried to teach their supercomputer to recognize images, and they've eventually learned that the recognition model for sheep actually looked for grass fields instead of actual animals. So so it's important to have some test cases that are not on the optimistic route, I would say. And
[00:43:01] Unknown:
in terms of uses of Saleor that you've either built yourselves or that you've seen other people use, what are some that you have found to be particularly interesting
[00:43:12] Unknown:
or innovative or unexpected? Do you want to answer that question, Patrick? Or I can, I can tell you a story of, 1 such project, which was the of France, so the French parliament, where we were tasked to tasked to build hardware and phone line management on top of Saylor? So that was not a typical store. But in the end, Saylor proved to be a very sound platform to build, an ordering system on top of. I know that we have some, brilliant customers who, work with our design team to build some stuff, that is maybe not common. But we also have some companies who customize cellular on their own, and we only learn about them from, feedback surveys that we send from time to time. So maybe Mirek can talk about this.
[00:44:04] Unknown:
Yes. So I I would definitely say that the assembly, national of France, that was an unexpected project, but there are also brands like RoomLab. This is the British platform that and they build customized, furnitures, and they and and they have incorporated SALO as as their ecommerce back end. And and it's, it's not typical because the creator of it's a it's a separate application, and then the ecommerce is just the backend, for that, for that application. It looks really good, and and I think, this is what we also wanted to achieve with silo that that you can provide very high quality front end and and then have all the, let's say, boring ecommerce stuff handled properly, by silo in the back end. I think 1 of the most challenging and difficult projects, but also interesting, at least to us, are integrations within bigger systems, and we currently are working on such system in particular that I cannot actually reveal the name of of the brand. But it's 1 of the services.
So ecommerce is 1 of the services that they run with the within the bigger ecosystem. And, you have to actually marry that ecommerce with the CRM system, with the fulfill fulfillment system, and and to, you know, authorization, like, single, sign up authorization. And and all of this, it's really interesting, and and and this is where we actually wanted to fit really well. And I can say that, that we already see a really good fit, and this is what we're really happy with. But those are, you know, the projects that we are especially proud of. You can obviously build your, you know, great looking store, like, more regular store on top of cellular, but but you cannot build, I suppose, what we are building right now with cellular with many other platforms easily. And I think and I think with cellular, it's pretty easy. And and also with the GraphQL API, it's it's it's a breeze.
[00:46:06] Unknown:
And as people who work in the ecommerce industry and with these various different brands, what are some of the trends that you see and some predictions that you can make as to the future of the ecommerce industry in the direction that it's moving? That's a tough 1. I I think everything yeah. It's a very tough 1, but it's clear that everything is,
[00:46:28] Unknown:
today being called an experience. Like, you you need to build new experiences for the for the for the customers. I think, like, most of the brands that, they realize and they are fully aware these days of the importance of the good design. You know, everything is moving towards social media as well. And and, recently, Instagram we're releasing the Instacart is 1 example. But, also smarter smarter and more predictive approach, this, you know, personalized experience, this is definitely a trend. And, we've seen last year also decline on brick and mortar or high street shops. And I think those will be going towards also more lifestyle and experience driven places. There will be less of them, but they will be serving a little bit different purpose. And the main selling channel would become I mean, it's it's going to be online, of course. Would you, Patrick, add anything? Mhmm. Yeah. I would say that,
[00:47:29] Unknown:
there are still domains that don't fare well in online sales. And 1 of the problems that remains to be solved is, good product visualization, which often means more than having a picture or or a rendering of of something. There are stories of people who say buy furniture only to realize that the chair is for a dollhouse, for example. So there's a question of how do we ensure that a refrigerator that I'm going to purchase is going to fit in my kitchen, for example, without using a measuring tape, of course. Will these shoes, look well with blue jeans? Or there are probably domains I don't even know about their existence. So I would say that, convincing customers that the product is what they are actually in need of or what they want to buy is is important because this drives the conversion rate, and this is, what drives your returns and replacements ultimately. So, there are brands like, Asus and Zalando who just solve it by telling you to order 5 different shirt sizes and return the ones that don't fit, for example. So they've optimized around the, good return, experience. But I think, I think convincing the customer to place the order in the first place is is still something that we need to work upon. Payments is something that I used to think that would need improvements, but with Apple Pay, Google Wallet, that became Google Pay recently, and the payment request in the browser, I think this is getting much better already. So so I would say, I hope that someone finds a way to visualize products better. Maybe this is something for, AR, the augmented reality to solve. Maybe it's something for WebGL,
[00:49:24] Unknown:
and rendering 3 d graphics in the browser to solve. I don't I don't really have a solution, but I hope it will get better. I I think from the technological point of view, in the spirit of, having better experience, the PWA standard is becoming more and more important. So the promise is obviously that you would be able to at least browse your I mean, browse the product in offline mode, then even buy, them in offline mode. And then once you get your Internet connection back, you would that, you know, you would really buy it.
[00:49:54] Unknown:
So so PWA is definitely 1 of the big trends currently. Yeah. I agree, especially in emerging markets like India where many people only have a mobile device. There's no laptop to continue the purchase process on, and the Internet coverage may be sparse or nonexistent if you're traveling abroad. So you may want to purchase something and your only Internet access is a cafe that you visit twice a day. So yeah. And that I agree with with mobile devices
[00:50:23] Unknown:
and PWA and offline. Yeah. To your point about the experience of making sure that the product that you're buying is going to suit your needs. I was recently in the situation of buying a refrigerator and having to break out the measuring tape every which way and then trying to think about, okay, well, what happens when I open the doors, but something that's easily overlooked. So Yeah. Definitely room for improvement on that front. In terms of your own business and your work on Saleor, what are some of the features or improvements or new services
[00:50:53] Unknown:
that you have planned for the future? Yeah. I think we can reveal currently that there's, there's a next step to to what we believe should be the right approach to to ecommerce from the development point of view. And, for as long as seller is, going to be there, for as long, obviously, as Mirumi is going to be there, which we forecast for a long time, then we want actually developers our developers to work with, something more out of the box. And by that, I mean that we will be releasing the software as a service version of SAILOR.
This is, this is especially important in the spirit of spending more time, on thinking about the things that really matters for brands, which which are the, you know, those experiences and and and and, and the ways to make your customers happier instead of just taking care of the of the technology in the background, like scaling, making sure that the site performs well in all the, you know, peaks and and during the major events. So we're really excited about that because because, this is something that we want to use for, you know, ourselves as well, but there was a big, interest in our community as well. And and I think, I'm happy to say that that beginning of April, we, officially started to work on the on the on the first version. And, you know, if if if you, into modern ecommerce, you like, working with the front end looking for, you know, enterprise grade platform that actually delivers both great technology underneath and and experience, in terms of the dashboard, for instance, then say you might be interested in silo cloud. This is how we actually, call it currently. Right. So this is this is an answer to,
[00:52:39] Unknown:
customers who approach us with the problem I've mentioned before that they would like to use, the platform, but they don't want the maintenance to become their job. So they don't necessarily want to hire stuff that is working in, development and operations on on the back end side. They just want to customize the UX and provide something that is nice for the customers to use. Yeah. We want to also incorporate all of those things that we have mentioned, like data driven, actually,
[00:53:07] Unknown:
ecommerce with, with easy ways of creating new, front ends and new touch points and easy ways of measuring of performance of those of those, in the real, life scenarios. So so, yeah, if if you are interested, well, you should have the splash page out soon, and and, you can be the first 1 to know signing up for the for the, you know, for our newsletter.
[00:53:31] Unknown:
Right. And on the open source front, we're currently working on, actually, an interface for content translation. So for multi multi language sites, it would be able to, provide separate product names, descriptions,
[00:53:48] Unknown:
and attribute values for for different languages. Oh, yeah. The the open source actually plans are pretty pretty heavy for this year as well. I mean, we are revealing the new dashboard, soon. Already we actually already revealed that, but we are still working on, matching the functionality between the old dashboard and the and the new 1. Part of this is, as Patrick just mentioned, the the multi language interface that we want to provide. There are many other great things coming into Saleor soon. Just, you know, follow our Twitter account and and and and, and, there is also some indication of those changes in the pull request that are being opened. But we'll be releasing,
[00:54:27] Unknown:
those those updates, quite often this year. Yeah. We work in the open so you can always preview what we're up to and provide feedback on that, on our GitHub account.
[00:54:38] Unknown:
And are there any other aspects of the work that you're doing at Mira. Me or on Saleor or the ecommerce GraphQL,
[00:54:52] Unknown:
state of of of play. I think there is no 1 good answer to GraphQL. I think this battle between language driven approach and the schema driven approach is still a new thing even in JavaScript board. So I think read in the library is, the answer on Python world towards schema driven GraphQL development. And, yeah, we will run a workshop soon on, actually, on django com, Europe, showing how ReactNet can be used with, asynchronous frameworks, ASGI, like Starlet, and and and also with Django and Django Channels. I think this is an quite interesting space to watch if you are, you know, interested in web development.
[00:55:35] Unknown:
Yeah. I'm very excited about the synchronous programming in Python, and I'm hoping that Django will eventually catch up or or that it gets replaced by something that is of equal quality, but making use all of the, async IO improvements that that we get. I'm also looking forward to static typing in Python because it's currently kinda there, but it's in great disarray, and the and the syntax is just not there. I mean, I'm a half a Python programmer and half a TypeScript programmer, and I'm just
[00:56:08] Unknown:
jealous of TypeScript every time I have to write Python code. Alright. Well, for anybody who wants to follow along with the work that you're doing or get in touch, I'll have you add your preferred contact information to the show notes. And with that, I'll move us into the pics. And this week, I'm going to choose the movie Wreck It Ralph, Ralph Breaks the Internet. I watched that with my family recently, and it was very well done, hilarious, had a lot of interesting ways of representing different aspects of Internet use and Internet culture, so definitely recommend that. And so with that, I'll pass it to you, Marek. Do you have any picks this week? Yeah. I I got something more serious, I suppose, but not that serious
[00:56:44] Unknown:
either. It's a guide to the good life, out of stoic joy. This is the book that I'm currently reading, and, and and I highly recommend it. And, that would be it. And, Patrick, do you have any picks this week? I have a more technical recommendation. I'm currently reading
[00:56:59] Unknown:
finally got around to reading a book called Release It, Design and Deploy Productionary Software by the Pragmatic Bookshelf, and I highly recommend it as a read to anyone who builds systems that work with any user input, but especially, websites.
[00:57:17] Unknown:
Well, thank you both very much for taking the time today to join me and discuss the work that you've been doing on Saleor and at Mirror Me. It's definitely been interesting and educational for me. So I appreciate that, and I hope you enjoy the rest of your day. Thank you, Tobias, for for having us. It's been a pleasure. Yeah. Thank you.
Introduction to Guests and Their Backgrounds
Evolution of Ecommerce and Technological Trends
Open Source Philosophy and Business Strategy
Challenges in Building Ecommerce Platforms
Advantages of Saleor and Headless Ecommerce
Overlooked Features in Ecommerce Sites
Best Practices for Recommendation Engines
Future Trends in Ecommerce
Future Plans for Saleor
Closing Remarks and Picks