Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prismic? #107

Open
nelsonic opened this issue Sep 19, 2018 · 0 comments
Open

Prismic? #107

nelsonic opened this issue Sep 19, 2018 · 0 comments
Labels

Comments

@nelsonic
Copy link
Member

nelsonic commented Sep 19, 2018

https://prismic.io is a CMS-as-a-Service provider that has an attractive front-end to a RESTful API:
image

Keep scrolling ...
image

"Modern" ...

image

Modern Web Design: https://medium.com/commitlog/how-to-design-for-the-modern-web-52eaa926bae2 😧

We take care of ...

image

Of course you do! that's the whole point of paying for a Service!
Why are you stating the obvious as if it were some sort of "unique selling point"?!

Fake News:

image

Since when would anyone at Google use this instead of one of their own products?!
Hello! They Bought FIREBASE which has many more powerful/useful features than "Prismic"! e.g: https://firebase.google.com/products/realtime-database/ see: https://flamelink.io

Is ebay, New Relic or deliveroo really using Prismic for their core product API? Seriously? How gullible do these people think we are? 😞

image

"All rights reserved" ... 🙄

image

Features

Scroll back up to the Top of the page so that you can see the Main Menu
that disappeared when you scroll ...
Clicking on the "features" link in the main menu shows a "pop over" with a list of features:
image
Modals are a UX anti-pattern which should immediately tell you how the minds of the people building Prismic operate ... style over UX. Trends over accessibility. 😕

The list of features is good:

Custom Type builder

https://prismic.io/feature/custom-type-builder
image

Drag 'n drop fields into the editor

image

Define responsive image views & resolutions

image

Image re-sizing for different device sizes should be done by default.
Viewport dimensions are a well known quantity.

Build relationships between custom types

image

So a Relational Database ...? Who would have thought to do that!? 🙄

Pricing?

https://prismic.io/pricing

Basic

image

Professional

prisimic-profesional

In the case of the CMS-based Website/App we are building (for a Client), we would need (way) more than 25 users, so would be forced to pay for the "Unlimited" tier: $350/month
The key difference between Unlimited and Platinum is the "Priority Support".
i.e. for an extra $225/month we will answer your emails slightly faster. 🙄

$350/month seems more "reasonable" than Contentful's $879/month #105 💸
but it's still a ($350 x 12 months x 3 years =) $12,600 commitment we make on behalf of any client.
Which can be difficult to justify if all we are using from the CMS is the REST API ...
We can achieve the same (if not better) result using Phoenix and a couple of days of work.
Baring in mind that there is inevitably work involved to setup an API (both learning and documenting how it is setup) I estimate that using a 3rd party CMS-as-a-Service
(commonly referred to as a "Backend-as-a-Service" or "BaaS") will require a similar amount of work as writing an Ecto Schema from scratch.

Open Source? GitHub?

The fact that they have "all rights reserved" on their website should tell you all you need to know about their approach to Open Source ...
But in case you missed it, their GitHub https://github.com/prismicio is a collection of "wrappers" in different languages to make interacting with their API easier:
image
image

This is how closed source SaaS companies pretend to be Open.
Nothing about their product is open, just the means of getting data in/out of their system so they can charge you Rent.

Aside: Complex/Advanced vs. Simple Tools + Practice

A fact that people often forget when selecting a particular tool or technology
is that one tool in the hands of a competent/experienced person can be significantly more effective
than a (superficially) "more advanced" tool in the hands of a beginner.

Take knife skills as an example:
japanese-knife-skills-cucumber

The experienced chef can prepare fresh gourmet food significantly faster than someone
who has not spent any time in a kitchen and in general the Professionals tend to use much simpler tools. Amateurs need fancy gadgets to make cooking "easy", pros can get the same (or better) result with a deceptively simple (sharp) knife.

mandoline-cucumber-slicing

People only "get good" at using a particular tool because of Deliberate Practice:
cucumber-cutting-practice

Top Tip to Aspiring Developers: Pick Open Source Tools to become a Master in.
OR pick the already established Closed Source tools if you want/need to "follow the money".
I did this briefly with Saleforce.com when I needed cash to buy a house ... #NecessaryEvil
Bottom line: bet on "fundamental" or "core" skills, not on a particular closed-source product.
You will learn more and thus be a more valuable member of any team.

In the case of Phoenix the "core" of @dwyl's stack https://github.com/dwyl/technology-stack
you get all the agility/speed of development that made Ruby-on-Rails insanely popular
and all the technical benefits of a fault-tolerant VM that gives you full control over your stack
something no closed source BaaS can ever provide.

Yes, there are obvious "cons" to using Phoenix instead of a CMS-as-a-Service like Prismic or Contentful, namely there is no UI for non-technical people to click or drag-and-drop to change things. Depending on your view/experience of non-technical people making changes to core business systems, this could be seen as an advantage because it means that your mission-critical systems are under tight change/version control and cannot be "broken" by someone late at night making changes in a production system!

Conclusion: if you are a solo developer needing an API, use Firebase as your "BaaS".
I cannot think of a usecase where Prismic would be a better choice other than if you want/need the drag-and-drop type configuration to allow non-technical people to "build" the API.
Baring in mind that you would still need a Developer to build the Frontend (i.e. the part that users actually interact with) taking a "shortcut" by using a CMS-as-a-Service is a short-lived "advantage" that is more of a handicap almost immediately in the lifecycle of your product/project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant