Live data from Hacker News

What I wish I knew before building a Shopify App

ma.ttias.ch

141–150 of 175 posts

Re: What I wish I knew before building a Shopify App

#141

Earlier quoted context omitted.

Oh sure... I make everything one pound, and create fixed rates for 1#, 2#, 3#, etc... but there's a (low) finite number of entries you can add, so if someone orders more than N units, they get free shipping for the rest. It's a terrible workaround. Etsy does not have this problem. Or perhaps you are thinking about creating a carrier service, so Shopify will fetch shipping prices in realtime? That's for people on Shop…

but why should it necessarily be that much different? better documentation sure, always. but in my experience Shopify solves ~70% of the cases extremely well and I, having learned some of the quirks, have very little problem filling the gaps. I will say, the app development, to the point of the article, IS a bit annoying hah. But I'm very surprised by all these API complaints. I think the API is very nice; maybe not…

So your job is being a gatekeeper for Shopify’s shipping setup capabilities?

Re: What I wish I knew before building a Shopify App

#142
post #140
post #91

Earlier quoted context omitted.

Naming differences are the product of having names and enough surface area to where you can't remember all of what's in the API at once imo. You can get variations in 2 digit country code vs 3 digit vs some other representation easily regardless of what language you're using

If you had a statically-typed language, you could have a single Address type and that's that.

That is definitely easier to work with but may not solve all problems. In the parent example, they mention Country and CountryCode. What if one team decided that they needed codes and the other needs the full name?

There has to be company-level standards to ensure consistency. And it is so hard to enforce standards unless a culture of revisiting and generalising things is created while growing from a small team.

Re: What I wish I knew before building a Shopify App

#143

I'm reading a good number of the comments and while I understand it's not a sample without bias, I have to ask: How did Shopify get to be the beast that it is? Why doesn't someone else step up and into what looks like a massive opportunity, especially since Covid have push so many transactions online? I have worked with Shopify customizing themes and adding custom functionality. It good when it great and you're withi…

> How did Shopify get to be the beast that it is?

Its amazingly simple to get started. It will push the products into a shoppingCart array, do the arithmetic adding up the prices. Clearly not something you should pay for. It's one hell of a deal - for them.

I'm sure there is a special place in hell for self proclaimed developers who want to help shopify create a playstore/appstore like monopoly. I'm happy they are this terrible at everything nice.

But the getting started process is wonderful. Its all fantastic until the iron gate closes behind you and the room goes on fire.

Re: What I wish I knew before building a Shopify App

#144
post #140

Earlier quoted context omitted.

If you had a statically-typed language, you could have a single Address type and that's that.

That is definitely easier to work with but may not solve all problems. In the parent example, they mention Country and CountryCode. What if one team decided that they needed codes and the other needs the full name? There has to be company-level standards to ensure consistency. And it is so hard to enforce standards unless a culture of revisiting and generalising things is created while growing from a small team.

It is not hard to standardise an Address type across a company (they are a shopping product after all)

Or better yet, define which types are required and which are optional so at least naming is consistent

Re: What I wish I knew before building a Shopify App

#145
post #76

Earlier quoted context omitted.

The fact that you can have side effects on imports, and that a lot of libraries relied on side effects on import, was one of my biggest sources of frustration with Python

What other packages have you seen abusing import side effects? Shopify is the first one I've seen, so I don't think it's quite as common as you are implying, but I'm curious to know what other bad behavior you have found

SKiDL (circuit design library) does this to a very large extent...

https://github.com/xesscorp/skidl

Re: What I wish I knew before building a Shopify App

#146

I built a print-on-demand system that integrates into Shopify stores. To vent a little... * I can concur that their API is unreliable. About 1 in 5 of my CI runs fail with mysterious 500 errors. It's infuriating. * The support channels are a wasteland. Do not expect help. * The documentation is super thin. At first glance it looks decent - there's the objects, there's the fields those objects have. But it's missing a…

The inconsistency thing is likely just different teams/people working on the API. I’d bet very few people who work there know all the APIs that exist.

Regardless of the proximate cause, it's very frustrating when companies don't prioritize good documentation.

Re: What I wish I knew before building a Shopify App

#147

Earlier quoted context omitted.

Years? I did it in a week. Shopify is a platform of value add services. I can see mom and pops using it but not devs.

You did not recreate Shopify in a week. You think you did but you only implemented a custom solution that does 5% of what Shopify offers, including the expensive stuff like compliance, support, etc. No sane business is going to use a random dev with a total custom e-commerce solution when they could throw a couple of dollars at shopify each month and get 100x the value.

This sounds interesting. I sincerely thought a shop was just a website displaying products. I got this idea to work. People can buy things. Was that not the point? I can hear you wonder but yes, I'm really this naive. You are saying I'm missing out on 100x the profit? Could you give one or more examples of this?

Re: What I wish I knew before building a Shopify App

#148

Earlier quoted context omitted.

That is definitely easier to work with but may not solve all problems. In the parent example, they mention Country and CountryCode. What if one team decided that they needed codes and the other needs the full name? There has to be company-level standards to ensure consistency. And it is so hard to enforce standards unless a culture of revisiting and generalising things is created while growing from a small team.

It is not hard to standardise an Address type across a company (they are a shopping product after all) Or better yet, define which types are required and which are optional so at least naming is consistent

As someone who has worked on addresses for a large corperate system, addresses can get very complicated. International localization, formatting, different usages (shipping, billing, mailing, taxes), multiple addresses per user, and security all start to add up, with many different part of the application having different requirements. Even as the team that owned addresses we debated whether new use cases should spin up their own implemention. Though it's pretty interesting seeing how different countries do addresses differently.for example, users in South Korea expect to be able to search for addresses and just enter an apartment number. Some countries went to near 9 lines of info.

Re: What I wish I knew before building a Shopify App

#150

We've just started developing a Shopify integration and used their Python API library because we're building it into an existing large Django codebase, and I've been shocked at the quality of the API library. We're now aiming to rewrite the bits we need. - `import shopify` makes an API request. If their API rate limits you, your server will probably crash. This happened to us in production. - That API request gets a…

I also find it frustrating as a python / django / vue developer working on Shopify apps.

The python api doc is not good. I'm always not sure about how to call the api. I can only leave an issue on GitHub.

The ecosystem obviously leans toward react and ruby. The examples are not suitable for me most of the time. The tooling like CLI, example will not include what you need.

Use Polaris for your UI? Sorry, it's not supporting vue. You need to build it with npm. Only for react. But I want the easy way to work with CDN

Need python examples on the latest session token auth? Sorry, there is no such thing. I spent 2 - 3 weeks working on it (and still working now). What I got are the workflow diagram and step instructions. Welcome back to the uni!

But the session token auth is mandatory for all new apps. You must use it NOW!

Developer / Partner support? Please provide a store id to identify yourself. But I clicked the link INSIDE the partner portal. (Half an hour later, still got nothing. ) I spend an hour and get nothing most of the time. The worst thing is that they answer you 'Sorry, I don't know or it is not feasible' with a thousand word long email.

Post reply on HN