Hacker News new | past | comments | ask | show | jobs | submit login
Racket for e-commerce (2019) (defn.io)
104 points by behnamoh on June 3, 2022 | hide | past | favorite | 36 comments



Author here. It's strange seeing this on HN this morning! We shut down the site in march for non-business reasons. Despite what a couple comments here are implying, sales were indeed made and quite a sizeable number of customers were sad to see us go. If I were to do it again, I wouldn't change a thing. As stated in the article, the "code parts" remained the easiest parts throughout.


Jesus, the amount of people jumping to conclusions here is staggering. Heck, if I could do jumps that long, I’d be an Olympic athlete.

Bogdan is active in the Racket community and his Koyo framework is really well built. Any cursory search on the community resources would easily find this.

Whatever reason they had to close their tea shop is unrelated to Racket AFAIK.


I very highly doubt that now with Shopify and other ecommerce platforms now in abundance that rolling your own ecommerce store software would be a wise business decision.

Even so now that the website in the article isn't online anymore, when just using Shopify and others would have been a better solution.

The only time to do this is probably if you're learning or curious on how to build a toy store, but that's about it really.


Probably shopify evangelist trying to promote the company without appearing to be promoting it.

Shopify is just a glorified shopping cart like million others, so its no better than writing your own using frameworks available, which makes it trivial and even easier than shopify.

If going by your logic its futile to even try to build own e-commerce store. Just use established platforms which offer marketplace. Since marketplace solves one of the biggest hurdle for an ecommerce which is visitors traffic which you can convert. Also with added advantage that visitor can combine things from multiple stores into a single cart, payment and logistics infrastructure.


You’ve never run an e-commerce store, have you? Building your own e-commerce framework cannot be easier than using Shopify, it just literally isn’t possible.


> it just literally isn’t possible.

Another hyperbole and marketing jargon (ecommerce systems are one of the easiest and most competitive with too many providers like shopify).

You might not have tried options and frameworks available in market. Literally thousands of one-click install ecommerce systems ready to use is available for bare-metal, cloud, kubernetes, containers or even simple desktop machines. These systems comes with redundancy, high-availability, faster response time, integrated with payment provider, logistic provider of choice but also gives full control including source code (very different from walled gardens of shopify which indeed has access to customer data, payment, order information, inventory information of store owners without providing any source code).

In functionality, templates and flexibility much better than Shopify. May be just change the tinted glass of promoting shopify and you might see thousands of other options in the market.


What you are describing isn't rolling your own (i.e. writing your own code) - it's installing pre-built software which was OP's point.

And Shopify being the most common platform now, and quickest and easiest to get up and running, is probably why they used that as an example (i.e. you could have a decent looking matcha-tea store setup within an hour with all the payment methods you want).


Haha so we’re comparing paying $29 a month for Shopify to setting up your own high availability Kubernetes cluster now. Brilliant. This is why I love HN, never change.


But on the other hand, whenever I see a shop using Shopify, I feel the site being sluggish and the UX could be better. So it is not all about things being easy or not, but also about creating the best solution.

What that means depends on the business and the employees. If you got no developers, then maybe your only option is to use something that is ready and needs no development. If the shop is your main business and you got good developers, then you might want to do one better, even if it takes time and effort.

So I would not necessarily exclude the possibility, that creating your own might be best for you. You can still make use of third party APIs for things like credit card payment and so on. When you roll your own, you get to decide which parts you outsource and which parts you make yourself. This allows you to decide where you want to be flexible and where you limit yourself to what the limits of a third party software are.


I only evaluated Shopify for a project, so I have limited experience. But from what I know you don’t need to use their CMS. They have a very well documented API so you can integrate with them as a backend service that just handles the e-commerce side of things. If you go that route it is on you whether your store is slow or not.


Indeed! I've been looking into trying out a JAMStack-style website using the Shopify API [0]. Some starter templates:

Gatsby-Shopify: https://github.com/AlexanderProd/gatsby-shopify-starter

Gridsome-Shopify: https://gridsome.org/starters/platform/shopify/

I wish Shopify's pricing page was clearer on which plan I need to use the API.

[0]: https://shopify.dev/api/usage


Shopify changed the whole shopping cart game! The way I explained it to my team, we wouldn’t be hosting product data on our servers anymore, and instead we add products similar to Amazon Seller Central. I was a hardcore Magento developer for over 10 years and wasn’t a huge fan of Shopify because I just didn’t get it. I couldn’t come up with any better solution in my head for hosting a webstore on our own distributed cloud stack. We were running Magento 2 for our website, and Lightspeed for our instore POS when COVID hit and we needed to start offering curbside pickup and local delivery. We tried to build our own bridge between the two services, and it was the worst experience. I started researching other shopping carts that had easy POS and curbside pickup integration and everything kept pointing to Shopify. I realized they host our product data similar to Amazon seller central, and give us a lighting fast storefront with a near 100 lightspeed SEO score, for cheaper than our current hosting bill. I was intrigued but still skeptical at that point. I then started looking at all the top trending websites like Colour Pop, Kylie Cosmetics, TB12, Tesla, Bomba Socks, Fashion Nova, and Death Wish Coffee.. What did they all have in common? I then hit BuiltWith to see what the current marketshare for shopping carts was for the top 1000 e-commerce sites online. I was stunned to see Shopify had majority marketshare compared to Magento 2 in the last few years. At that point I was sold and I convinced my team we were done with the days of hosting a Magento store. We migrated in less than 6 weeks and instantly saw a lift in sales and SEO.


Not an evangelist at all, just common sense. The whole point of an ecommerce store is to sell products and get sales.

Rolling an entire ecom store is already another job in of itself and reimplementing almost everything of the ecommerce stack doesn't make business sense.

A wise business minded merchant can focus on selling from day 0, not on day 720. All while trying to duck-tape their fraud and analytics stack whilst looking for a programmer to maintain their contraption.


> just common sense.

Common sense is very uncommon :-).

E-commerce stores are not easy as business, but very easy to launch today because technology is the easiest part of it. The biggest difficulty is getting traffic, then conversion to order, then with superior products, logistics and customer service retain the customer. No one can setup logistics, product catalogs, superior customer service from day 0, it takes quite a time and feedback loop. So remember in the grand scheme of ecommerce store for merchant time taken to build or launch a system is minuscule compared to other hard physical world problems they need to solve around products and services they are offering.

Today literally thousands of options are available to launch an ecommerce store with single click with better quality, speed, flexibility and control than shopify.

Shopify is just one another provider with walled gardens. Shopify is popular not due to any innovation in technology or quality or speed, its popular because it spend literally billions of dollars of investor money in marketing. So they succeeded by throwing marketing money, not due to innovative technology.


I don’t think this is a fair shake. I don’t think Shopify is the only competent option in this space, however they have been very innovative:

They were one of the first with broad API integrations and not just a take or leave it storefront.

They have both REST and GraphQL integrations for the HN type crowd

They have an entire framework for heavily customized storefronts, Hydrogen[0]

They have Shop, their Amazon style discovery equivalent for smaller shops.

They have a good app marketplace for integrations

And a lot more.

[0]: https://hydrogen.shopify.dev/


> they have been very innovative

Not really there were many solution much better in the market, below had some list with solutions offering much more then list above. It's just that Shopify had investor money to burn to have market dominance through marketing.

Indeed that's visible in their balance sheet that they grow by spending money not due to technological innovations.


> Today literally thousands of options are available to launch an ecommerce store with single click with better quality, speed, flexibility and control than shopify.

Can you name a few, or several? I'd sincerely like to know, as Shopify is usually top of mind for me.

I built my own e-commerce site in Django a few years ago. I'll never do that again! I learned a lot, but building the site was about 5% of the work necessary to running the business.


> Today literally thousands of options are available to launch an ecommerce store with single click with better quality, speed, flexibility and control than shopify.

I am currently looking for a good solution to do just that, but don't know where to start. Do you mind sharing a few good ones?


That person you are replying to obviously has never worked as a merchant in e-commerce. The only people rolling out their own solutions nowadays are multi-million dollar brands that need custom solution.

If you want to focus on selling and having a good backend platform, don't waste your time building your own stack and maintain it, the most important thing is to start selling and bring traffic to your website.


Just scratching the surface (not including Magento or WooCommerce) take a look at some of open source solution which can be installed on bare-metal, cloud or used as SaaS offered by providers. These all are ready to deploy solution in hours and days (obviously as stated earlier the difficult part is not this but the business itself. ):

1. Spree [1] Store Demo [2]

2. Saleor [3] Store Demo [4]

3. Reaction [5]

4. Solidus [6]

5. Medusa [7]

6. Sylius [8]

7. Shuup [9]

8. Vendure [10] Demo Store [11]

9. Shopware [12]

10. Vue-Storefront [13] - works with many of the above backend.

11. nopCommerce [14]

12. Bagisto [15]

------

Links:

[1] https://spreecommerce.org/spree-as-a-service/

[2] https://spree.vercel.store/

[3] https://saleor.io/

[4] https://saleor.vercel.store/

[5] https://mailchimp.com/developer/open-commerce/

[6] https://solidus.io/

[7] https://medusajs.com/

[8] https://sylius.com/

[9] https://www.shuup.com/

[10] https://www.vendure.io/

[11] https://vendure.vercel.store/

[12] https://www.shopware.com/en/

[13] https://www.vuestorefront.io/cloud

[14] https://www.nopcommerce.com/en/enterprise-ecommerce-platform

[15] https://bagisto.com/en/


Thanks I found this list very helpful so did a quick check on the tech of some of them:

1. Spree: headless ecommerce with REST/GraphQL APIs built using Rails/Ruby. Next.js and Vue starter sites

2. Saleor: headless ecommerce with GraphQL API built using Django/Python. Next.js starter site

3. Reaction/Open Commerce: headless ecommerce with GraphQL API built using Node.js/Javascript

4. Solidus: headless ecommerce with REST API built using Rails/Ruby

5. Medusa: headless ecommerce with REST API built using Node.js/Express/Javascript. Gatsby and Next.js starter sites

6. Sylius: ecommerce built using Symfony/PHP

7. Shuup: ecommerce built using Django/Python. Looks like open source version is dead

8. Vendure: headless ecommerce with GraphQL API built using Node.js/Typescript


Massively short-sighted take.

Platforms add overhead, risk and lock-in: they'll _always_ affect your margins, you have no control over which direction their business moves in, and moving between providers is non-trivial.

We've been using our own home-rolled ecommerce solution for multi-currency international retail and it's ROI has been huge.

If you care about margins, defaulting to a SaaS provider for everything is not always the right answer


> Shopify

There are probably good e-commerce platforms, but shopify is so slow and so shit that it actively turns me off everywhere I find it. It's immediately noticeable due to the slowdown, which ends up frustrating me so much I only tolerate it if I absolutely must have whatever it is they sell (and cannot get it literally anywhere else). I doubt I'm alone in this.


Discussed at the time:

Racket for E-Commerce - https://news.ycombinator.com/item?id=20792486 - Aug 2019 (8 comments)


This blog is great, I'd never seen it before. I use racket by default unless I have a specific reason to choose another language. It turns out I've used several packages by this author but never come across the blog before. Rackcheck and http-easy have never done me wrong and imo could be part of the standard library.


The author has a great video demonstrating spinning up a site with his Koyo web dev package for Racket: https://www.youtube.com/watch?v=DS_0-lqiSVs Very interesting to see all the details in action.


I can't reach "https://www.matchacha.ro/"

ping: matchacha.ro: No address associated with hostname


Article is almost 3 years old.


Links to Koyo are also down https://koyo.defn.io/



The site is down here as well. I tried my VPN from a few locations and they're not working either.


I’m sure the author had a lot of fun building their app, but did they make any e-commerce sales?


The site can't be reached. Pretty sure building the site is more fun than doing e-commerce sales.


Racket editor (DrRacket) is incredibly memory hungry. Try this: 1) Launch DrRacket 2) Start Microsoft Visual Studio 3) Start Task Manager and look at memory consumption

You will get the result as in this picture: https://ibb.co/ZLdTPGB

You’ll see that DrRacket consumes an enormous 648MB of memory while you haven’t even done anything in it yet. Visual studio consumes only 240MB (which is still a lot, to be clear, but still significantly less than the pathetic DrRacket).

It is especially interesting that the Racket community always says that they are superior, but they are obviously not able to make a more memory efficient editor than, according to them, the poor Visual Studio (which is much more than an editor and has many more functions than DrRacket)!


Despite what Racket advocates claim, there is virtually no real (non-toy) web application written in that language, which is created for academic jerking off and mass production of worthless academic papers about missing flights that nobody actually read.

Racket comunity will never admit it to you, but the more they praise their "sweet & perfect & superiror" language, the less web applications are written in it!


This very website runs on Racket. It's is written in Arc which is a language implemented in Racket.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: