This article was originally posted on our blog.
Have you ever been called an absolute Johannes factotum?
Shakespeare was. In the first published mention of the writer in 1592, critic Robert Greene sneeringly dismisses him as an “absolute Johannes factotum” for switching from acting to playwriting. In modern English—a “jack of all trades.”
Generalists get a bad rap for spreading themselves too thin. The quality is so universal, there’s an equivalent in almost every language:
Cantonese: 周身刀,無張利 ("Equipped with knives all over, yet none is sharp")
French: Touche-à-tout, bon à rien ("Touch everything, good in nothing")
Spanish (MX): A todo le tiras, y a nada le pegas ("You aim for everything, but hit nothing")
We’re here to attest to the strength of the generalist (just in case Shakespeare hadn’t already proven himself). In fact, when we lost our push notification provider, we put two new providers head-to-head—one generalist versus one specialist. The result wasn’t so clear cut.
Setting the Scene
Once upon a time, we used Parse as the main provider of push notifications in our apps. It worked well. But Parse passed away, and we were left with the task of finding a new provider.
Enter stage left: the generalist. Firebase is Google’s Johannes factotum for mobile app development. Crash reporting, cloud storage, hosting, a realtime database, remote configuration, authentication...Firebase morphs into the right tool at the right time as you develop a mobile app.
We already used the swiss army knife of mobile apps, and knew they had a tool for push notifications. We wanted to know: would the tool be sharp enough?
And it had to be sharp. We managed projects with some seriously complex requirements. Some team members wanted to bring in a second player to explore all the options.
Enter stage right: the specialist. OneSignal had one immediate advantage over Firebase—it was free. It promised to deliver, focussing solely on quality user engagement through push communication.
Time for act one.
Act One: The Generalist
Firebase is a great platform that helps developers to build high-quality apps quickly. Aside from all the things mentioned above, it harnesses features that make Google a market leader in areas such as analytics. It’s a console you can build right on top of; a one stop shop, a suited-up suite with swagger.
It’s also slow and relatively unstable when it comes to delivering push notifications. We had some specific requirements for certain projects, and when we tried a workaround the API didn’t function as expected.
A swiss army knife can sometimes weigh you down.
Plus, at the time of writing, Firebase’s push notifications don’t work with Xamarin.
Perhaps it was time for a specialist to take center stage.
Act Two: The Specialist
OneSignal’s immediate advantage? It’s a push notification service. Just what we needed—nothing more, nothing less.
We started by testing OneSignal in a particular project, migrating over from Firebase. The integration was easy and worked perfectly from start to finish. The API is much more comprehensive than Firebase’s API, which allowed us to customize behavior to match our needs.
It was fast and extremely simple to integrate at both ends—mobile and backend. As a specialist, it really started to own the stage by whipping out some enchanting moves, including:
- Tracking push notifications.
- A/B testing.
- Filters and segmentations (e.g. by location).
- Great documentation.
- Push notifications for websites.
Like any specialist though, OneSignal doesn’t boast a load of mature features, and isn’t able to handle all the services needed for mobile development like Firebase can. It truly excels only when it comes to push notifications, just like a panda only thrives when there’s plenty of bamboo to munch on.
Act Three: The Climax
Firebase has it all. It’s ideal for creating apps from scratch and avoids the need to use a backend service. On paper, it’s the perfect replacement for Parse. It delivers all the same features and then some—sweetening the deal with the clout of Google’s well-crafted products.
Plus it has push notifications—the thing we wanted all along, right? Why not keep it clean and use Firebase as a hub for everything, including push notifications?
Well, OneSignal does it better.
With its filters and queries (session_count, amount_spent, tags, language, location, email), you can offload a fair amount of computing from your backend.
Plus, it’s free. The catch? We’re yet to find one. At least, we’re yet to find a giant, deal-breaking one. The free plan includes unlimited users and notifications, and can be used in commercial or private apps. The service is monetized using the data that passes through your free account. Need priority support? You can sign up for the paid enterprise plan. You’ll find the all the details here.
The Curtain Call: Conclusion
When push (notifications) comes to shove, we at Mobile Jazz seek the best tool for the job over a one-size-fits-all solution. OneSignal has a superior user interface dedicated to managing and adjusting notifications via the dashboard. Its SDK is orientated around push notifications, with more coherent labelling conventions than Firebase.
We decided to use OneSignal as our main provider for push notifications.
That being said, Firebase has a ton of useful tools. If you like your app development nice and tidy and all in one place, look no further. It’s got push notifications alongside other services like remote storage, server based authentication systems, analytics, and lots more. We use it when we need solutions that OneSignal simply can’t provide.
Generalist and specialists both have their advantages. The next time someone calls you an “absolute Johannes factotum”, take it as a compliment.
Our specialism? Building outstanding apps and websites. Find out how we can help you excel.
This article was originally posted on our blog.
Top comments (1)
Hello, too, the INDIGITALL service is great, it has been developed with the latest technology to guarantee maximum effectiveness and simplify the process of creating and sending Notifications with an animated image, Segmented, Geolocated and many functions.
Here you can see the steps for its integration for any platform, web, android, ios.
docs.indigitall.com