What’s New at Bugfender?
Welcome to the winter Bugfender newsletter. We hope you’re feeling refreshed after the holidays. We’ve had a fair few updates in the last quarter that we’d love to share with you to kick start the New Year!
New Log Viewer Launched
This quarter we have released one of our biggest UX updates since Bugfender 2, the new viewer. We are quite excited because we have been working on it over several months, we hope you like it!
The Tech Stack Behind Bugfender
When processing millions of log lines per day for several thousand users, coming from millions of devices, good architecture is key to enabling uninterrupted high-speed processing and growing the platform as new users sign up.
Log aggregators are especially critical when something goes wrong in an application, because the number of logs or crashes to be processed can grow exponentially in double-quick time, maybe without prior warning. And it’s at that moment that our customers want to check their logs the most, so we need to be able to handle that.
Bugfender Growth: from side-project to a sustainable $20k MRR business
It’s nearly five years since we started Bugfender as an offshoot of our software company Mobile Jazz. We’d gotten tired of chasing users who were experiencing problems with our apps and wanted to build an internal remote logging tool that would feed the information straight to us.
Since then we’ve built Bugfender into a viable business, with its own team and roadmap. We’ve secured a full range of customers all over the world, from indie and freelance developers (ping us for a discount if you’re one of those!) to multinationals with dozens of devs. Our co-founder Stefan did an interview with Indie Hackers in March 2017, at a time when revenue stood at $6,500 per month. That number has now more than trebled to $20,000, on a recurring basis.
For a complete list of what’s new, be sure to check out our end of year release notes.
Reactive X: RxJava Data Flows: Observable, Flowable, Single, Maybe and Completable
Reactive programming is a programming technique for asynchronous applications that lets you structure your code based on “reaction” to data input changes. If you’re not 100% familiar with ReactiveX (RxJava being the implementation for the JVM), perhaps you know Java Stream, which is a similar concept introduced in Java 8.
In this piece we’re going to discuss three distinct ideas.
Conditional breakpoints: How to Debug iOS and Android apps from Zero (Part 2)
Conditional Breakpoints and their variants, Exception and Symbolic Breakpoints are powerful tools for advanced debugging, applicable to both iOS and Android. In this article we’re moving to the next stage and will discuss a few tricks to help you improve your debugging flow still further.
Bugfender compatibility with SwiftUI and Project Catalyst
When Apple introduced SwiftUI back in July we immediately knew it was going to generate a lot of expectations. As app developers ourselves, we are very aware about the complexity of User Interface development in iOS.
During the last few weeks we got A LOT of requests from developers to make Bugfender compatible with SwiftUI and with Project Catalyst. After receiving a few messages in our Intercom and feature requests in our GitHub we knew we had to do something about SwiftUI and Project Catalyst.
Robust Development with git-flow, Bitbucket Pipelines and Bitrise
When you start a new project, everything is very easy and agile. You can develop, commit code and publish new versions quickly, without much testing. But as the project grows, it starts to become more and more complex.
When you reach this point, it’s important to have a robust development process that allows you to deliver new versions without big bugs. And it’s here where git-flow, with its continuous integration systems, comes into play.
How to Integrate Intercom with Bugfender
In this post we’re going to talk about how to integrate Intercom into your mobile apps. The company offers both iOS and Android SDKs and you’ve probably used them before in your different products (we certainly use them in Bugfender).