Skip to content

Instantly share code, notes, and snippets.

@Eomm
Created September 29, 2022 12:01
Show Gist options
  • Save Eomm/4b72531ed9e2bdaefccf144ff9d7ce9a to your computer and use it in GitHub Desktop.
Save Eomm/4b72531ed9e2bdaefccf144ff9d7ce9a to your computer and use it in GitHub Desktop.
I will use XYZ instead of Fastify

Why you should not say I will have to go to express to a Fastify maintainer

The number of people who come to Fastify's repositories to say they are forced to use Expressjs, or whatever, is uncountable.

So, I'm writing these lines because every time I read these words, I get upset for many reasons that I will list here.

Note I'm a Fastify contributor and the opinions expressed are solely my own and do not express the views or opinions of the Fastify community or other contributors.

So, let me share this catchy title:

The 10 reasons why you should not say to a Fastify maintainer, "I will use Expressjs":

  1. It doesn't help anyone. That sentence does not help you to get things done nor help me to debug, so it is pointless.
  2. It is unfair. You are comparing a framework born in 2016 that must compete with 3/4 of other web frameworks to Expressjs, which was born in 2010 and had no competitors.
  3. You are missing an opportunity. Fastify is a growing project, and there are not so many blog posts about it. So, instead of complaining that there are no articles explaining what you need, start a blog and write it yourself. The Fastify maintainers will be happy to review it.
  4. There is no such middleware. As previously mentioned, write your own Fastify plugin, add it to the Fastify Ecosystem.md and be helpful to yourself and the community.
  5. Invest in Fastify. If you think you really can't afford the time to write a blog post or plugins, you may sponsor some Fastify maintainers to do it on your behalf. Casually I accept sponsorship, and there is a One-Time tier to let me write about something you need. It is a win-win.
  6. It is disrespectful. All the Fastify maintainers spend their spare time keeping the project up-to-date, so are you asking us to work full time on this OSS for free? Why should we do it? It sounds like blackmail: "I will use your framework if you do x or y".
  7. Comparing stuff is damn hard. Did you ever try to compare your actual partner to your ex-crush? What was the result? I swear it wasn't a happy conversation at all. So, before doing it, you should study the compared objects. How many contributors, collaborators, funding, and backer have the project?
  8. GitHub is not StackOverflow. The latter focus on answers, and the former emphasises teaching and building a healthy community.
  9. Omnipresent comfort zone. Studying a new framework takes time, but you will be rewarded after knowing it. Remember, you learnt Expressjs too. Moreover, everything you do with Expressjs is doable with Fastify, but vice-versa is not.
  10. Free of choice. Fastify did not force you to use it. You should evaluate its pros and cons (if any) and decide if all its features are worth the effort. Consider reading this article, "Why should I prefer Fastify?" to understand the trade better.

What could a person that said "those words" do?

The first thing to do is to explain why those words have been said, but the best thing to do is add a comment with valuable information to solve the issue.

What will a person that said "those words" get?

Till now, the Fastify community has always answered politeness. We will continue, but I will spread this message you just read.

Thank you

@eomm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment