Despite the fact that we still have snow in our ten-day forecast, spring has officially sprung! For many of us that means March Madness — time to root for our alma maters and stream midday games at our desks — or if any of us is a real “balla” maybe courtside seats at the championship game. Sigh, wouldn’t beating all your buddies in the office NCAA bracket be so so sweet? Especially after you picked Harvard to go all the way just because Good Will Hunting is your favorite movie. The only thing better would be having a top seeded app if Mobile March Madness was a thing!

Well guess what? We’re so excited to share our March Update that we’re not even going to force one final sports analogy to transition into talking about all the amazing upgrades we’ve shipped recently.  So here goes….

Last month, we launched a slew of upgrades: optimized stack traces, real-time UI with new navigation experience — and a new beta distribution tool from Crashlytics Labs. Just like your favorite Big Ten team training for March Madness, we’ve been heads down shipping several enhancements for our crash reporting tool — while prepping for several major, upcoming releases for this summer. Stay tuned! (Remember we made no promises about withholding additional sports analogies later in this post).

Redefining Performance

Many of you have a handful of apps using the Crashlytics SDK — and some even have thousands! Not only have we been hard at work building new features, we also took the time to get back to the basics and improve the start up speed and performance of our web app. You never can practice too many layups before the big game, right? By reducing dependencies and implementing eager loading in all the appropriate places, our web application now cuts down the start data request time dramatically!

Pushing the Envelope

Last month, we announced the availability of our beta distribution tool, Beta by Crashlytics. Ever since we started Crashlytics to tackle crash reporting, we’ve heard many frustrations related to the process of testing new apps and distributing beta builds. As the mobile ecosystem becomes fragmented and beta testing processes get more complex, we’ve embarked on our goal to deliver the most powerful, cross-platform beta distribution tool that supports both iOS and Android.

We’ve been overwhelmed with the massive demand, and since the announcement we’ve been slowly rolling out access to try out our tool. We’re extremely thankful to those of you who’ve provided us feedback! If you want to test out our beta distribution tool and other secret projects we’re working on, sign up here to become a Crashlytics Lab Rat!

Here’s our internal changelog:

Mac App

  • Extended private access via /secret to test version with beta distribution functionality enabled.

Android IDE Plugins

  • Fixed null pointer exception that occurs when processing a manifest with no application label.
  • Fixed bug in the Eclipse plugin which can cause issues with adding Crashlytics after a project is renamed.
  • Improved threading behaviors during application compilation to reduce blocking issues for users with proxies.
  • Ensured that the application is correctly added when its package renamed via the renameManifestPackage attribute while a user is adding Crashlytics to a Maven application.
  • Revised the issues table to only display “no issues” after the user’s issues have been retrieved.
  • Extended private access via /secret to test version with beta distribution functionality enabled.

Web

  • Reduced dependencies and implemented eager loading to improve the speed and performance of the start up process.

Blog Post

  • Deployed maybe one too many sports jokes. We’ll try to stick to developer humor in the future — but we make no promises ;)

View More

 

If you’re going to be trapped in an office all winter with your co-workers (and possibly missing quality time with your Valentine) you’ve got two choices. You can spend your days watching the snow peacefully falling, wishing you were by a fire and on the slopes OR you can hunker down and ship things! Guess which route we took this winter? Hint: it doesn’t involve sipping hot toddies at the mountain lodge—although we might have cracked open a bottle of something when the heat was broken in the office that one day ;)

We spent the month of February shipping new features and a new look — while making room in the Crashlytics Labs roster for shiny new toys like a beta distribution tool. So as you cozy up to your cubicle buddy in lieu of being in that luxury log cabin with aforementioned Valentine out in Park City, feel free to whip up a batch of toddies in the office kitchenette. It’s time to settle in and check out what we’ve been building!

Latest Toys from Crashlytics Labs

Since we launched Crashlytics two years ago we’ve been tirelessly seeking out feedback from our customers. That’s why we know how cumbersome the beta distribution process can be. At Crashlytics Labs, we’re always tinkering with new ideas and have been hard at work building a beta distribution tool for both iOS and Android. After privately testing the tool with some of the best app developers out there (who are also hunkered down working through this chilly winter), we were very excited to open this up to more of you last week. We’ve been inundated with requests for access and will continue to roll out the invites — stay tuned!

High Performing & Platform-Centric

Stack traces are core to any debugging tool, and they are an integral part of our mission to build the most powerful tools for developers. This month, we enhanced the performance of our UI that now renders stackframes up to 181x faster while achieving a 55% reduction in memory. We also upgraded our iOS SDK to support threads and selectors, which allows you to track down certain classes of crashes and gain additional context that can be otherwise inscrutable. For the Android fanatics, we now present our stack traces in a way that’s in line with the traditional Java counterpart — surfacing the traces in their most familiar context.

We also added the functionality to copy & paste raw stack traces, so you can seamlessly share details of your crashes even outside of our shareable crash reports feature. Additionally, we’ve made it more effortless to find the right issue. Our search feature now also indexes Crashlytics Session IDs, so you can locate issues even more precisely, beyond custom logged events and keys!

Real-Time & Intuitive

We care deeply about the developer experience in all the tools we build. What better time to optimize our UI than having the new stack traces in place? We added a new notifications system that keeps your focus on the crash report, with alert boxes that updates itself in real-time and intelligently organize issues by type. This enables you to scan through all incoming crashes with minimal effort — without your flow being disrupted.

We also completely redesigned our navigation experience.  The new context control automatically sort your list of apps based on your recent interactions, so the most actively managed apps are always at your fingertips. Our new navigation sidebar also sports a more intuitive menu structure while maximizing the horizontal space for optimal viewing of all your critical crash data.

Effortless One-Click Sign In

We’ve been accelerating our build-out since joining forces with Twitter last year. Using our new one-click, OAuth integration with Twitter’s user system, you can now link your existing Crashlytics account to your Twitter account during sign in. The next time you sign into Crashlytics, it’s just one simple click!

Here’s our internal changelog:

iOS SDK

  • Jazzed up our backend to support future product and feature development!
  • Fixed a minor bug to improve SDK configuration.
  • Upgraded SDK to support threads and selectors.

Mac App

  • Enhanced support when a build occurs during sign in, for all of you who are multi-taskers!
  • Opened private access via /secret to test version with beta distribution functionality enabled.

Android SDK

  • Improved the initialization support and increased startup speed in multithreaded environments.

Android IDE Plugins

  • Deployed a new version of the Gradle plugin that performs much faster and prevents any classpath issues on Windows.
  • Opened private access via /secret to test version with beta distribution functionality enabled.

Web

  • Enhanced UI performance to render stackframes up to 181x faster.
  • Updated Android stack traces to be in line with the traditional Java counterpart.
  • Added copy & paste functionality for raw stack traces.
  • Redesigned navigation side bar with slick buttons and new menu structure.
  • Expanded horizontal space of web dashboard to display more data.
  • Implemented new real-time notifications system that automatically organizes crashes.
  • Shipped new context control that sorts your list of apps by recent interactions.
  • Enabled search by Crashlytics Session IDs for finding issues.
  • Deployed one-click Twitter sign in functionality for existing users.

View More

 

In the 2+ years since we launched Crashlytics to solve mobile crash reporting, we’ve heard you loud and clear about another problem in mobile development: the beta distribution process. Testing new apps with real beta testers can be a cumbersome and unnecessarily complex process.

At Crashlytics, our mission is to deliver the easiest and most powerful tools for mobile developers. Through Crashlytics Labs, we’re always pushing the boundaries and tinkering with new ideas. I’m excited to share that we’ve been hard at work in our Labs building a beta distribution tool for both iOS and Android.

By focusing on multi-platform support, our beta distribution tool streamlines the process and shreds the complexity of managing different toolsets. We’ve been privately testing this tool with some of the best app developers out there. Now, we’re ready to open this up to more of you.

If you want to apply to test our new tool for beta distribution and other secret projects we’re working on, sign up to become a Crashlytics Lab Rat.

Cheers,

Wayne Chang


View More

 

Crashlytics Look Back at 2013

2013 was a year filled with excitement, innovation and disruption. Apple introduced the iPhone 5S, Google announced an IDE built just for Android developers, and the world rolled their eyes as words like selfie, twerk and jorts were added to dictionary!

It was exactly a year ago today that we joined forces with Twitter. Since the acquisition, not only did we enhance features, functionality and improve your experience with Crashlytics, we also had some pretty exciting personal achievements — our first kegerator, 4 Crashlytics babies, and 24 new employees (p.s. – we’re hiring)!

Here’s a look back at how things shook out for us in 2013.

Crashlytics Look Back at 2013 Infographic

 


View More

We know you’ve been busy untangling the lights, posing for the always entertaining family photo, losing your mind finding a parking spot at the mall, all in an attempt to track down that nearly impossible to find gadget that’s on everyone’s list this year. Well, no need to wear your pj’s inside out and backwards, because our updates this month will make you feel like school’s been cancelled and it’s time to play!

This month, we’ve been busy delivering you the holiday gifts you won’t find under your tree! Back in November we launched a new version of Crashlytics for Android SDK, along with a slew of enhancements to our IDE plugins and usability upgrades. Finishing the year out strong, we crafted a dozen gifts just for you: upgraded data visualization, enhanced navigation experience, multiple support enhancements to the IDEs and platforms — and more!

Lightweight, Cutting-Edge Data Visualization

We first upgraded our data visualizations by leveraging the latest, much lighter weight D3 library. To give you an even more interactive experience, we revamped the metrics UI on our issue list page and updated the time series on the issue details. We also upgraded the metrics summary data that displays device and OS details, with fully interactive pie and bar charts.

We believe that developer tools should be beautiful and intuitive — not like that failed attempt to recreate Grandma’s famous fudge! Our new graphs and charts flow naturally with our upgraded design theme. We also updated the alert center where alerts for new comments and issues now use our standard UI library. This is all while enhancing the accuracy of our realtime service in improving the delivery of information for new issues, comments, and service hooks verifications!

Effortless, Cross-Device Navigation

To make it easy for you to navigate through different platforms and devices, we revamped the issue’s metrics dashboard and broadened the date range so you can view up to 30 days worth of crashes per issue. We also reduced the number of selector options by removing the old Alert Center’s app switcher.

We upgraded the stack trace on the issue details and session summary pages by removing the separate section that contained the exception and memory address and placing that information inside the crashed stacked trace header. To better denote the crashed header’s significance, we highlighted it in blue so you can spot it with ease, just like Rudolph’s red nose!

More Powerful, Multi-Platform Support

We didn’t waste any time adding support for the latest release of IntelliJ 13, including support for Android Gradle projects. We also updated our Gradle plugin to support a breaking change in the latest version of Google’s Android Gradle plugin, which prevented any broken builds that would’ve been caused by Google’s change in the default flavor capitalization.

For our Eclipse IDE plugin, we drastically improved the efficiency of icon prefetching. Outside of the Android platform, we also improved the application icon support for iOS 7, which ensures that your latest application icons will be located and automatically updated in our web dashboard and Mac app!

Here’s our internal changelog:

iOS

  • Improved application icon support for iOS 7.

Mac App

  • Resolved minor issue with deleted applications.

IDE Plugins

  • Built support for IntelliJ 13.
  • Enhanced efficiency of icon prefetching for Eclipse plugin.
  • Fixed minor bugs that caused the plugin window to flicker and disappear when first opened.
  • Resolved issues that caused Eclipse Kepler to occasionally halt during startup.

Web

  • Overhauled Issue’s metrics dashboard and increased date range for customers.
  • Reduced selector options and implemented new standard UI library into alerts for new comments and issues.
  • Upgraded data visualizations to D3 and updated time series on the issue details page.
  • Enhanced metrics summary data with interactive pie and bar charts.
  • Improved alert center with new CLS UI.
  • Boosted performance of realtime service on returning information associated with new issues, comments, and service hooks verifications.
  • Updated stack trace on the issue details and session summary pages.
  • Moved exception and memory address information of a crashed session inside the stacked trace header with header highlight.

This year has been full of fun and excitement and we can’t wait to continue to celebrate with you into next year! While we won’t be squeezing down any chimneys to fill your stockings with treats, we hope these upgrades and enhancements will keep you smiling through the holidays. Happy holidays from our Crashlytics family to yours :-)


View More

 

It’s that time of year! Time to hang with the fam, write code, and enjoy an ice cold winter lager. All while making sure you’re dressed to impress for the inevitable run in with your old high school flame…

As Thanksgiving approaches, we have a ton of updates to share that are sure to distract you from the very obvious fact that Cousin Sam burned off his eyebrows in the deep fried turkey practice round that went down last weekend! This month, we bring you a new version of the Crashlytics for Android SDK, user experience enhancements to our IDE plugins, and usability upgrades to our web dashboards.

And just to recap–before you caught Grandma putting more wine in her glass than the gravy pan (go Granny!), and even before your little sister brought her tattoo-covered boyfriend home from college — back in October we shared two major announcements back to back: Crashlytics for Android Studio and Crashlytics Real-Time Search.

Performance & Responsiveness

We’re excited to have shipped v1.1.5 of our Android SDK with some serious performance upgrades! (If only there was a way to boost your own performance after you fall into that inevitable Thanksgiving Day food coma).

We tweaked our starting logic to move an extra blocking call off the main thread, reducing our SDK start time by over 75%, so you can get Crashlytics up and running even more efficiently — similar to how that extra cup (or 3) of coffee will have you nailing those Black Friday deals better than ever! To make the Crashlytics logger more useful, we now log priorities and tags to your crash reports as well as the Android logger. We also boosted crash processing efficiency by eliminating unnecessary process data collection and reduced the prioritization of Crashlytics threads to free up even more resources for your app.

When mom asks why we showed up empty handed on Thursday, we’ll have a good excuse: we’ve been busy deploying several updates to our Android IDE plugins to enhance the user experience! These include smart drawing of our plugin to better handle non-IDE windows that have focus, and an even smoother responsiveness of the organization selection screen, which now loads network data asynchronously.

Seamless & Intuitive

For those of you asking for access to the raw stack traces, we heard you loud and clear — even over the sounds of the too-soon holiday music that seems to be glaring from every car stereo anywhere. Our web dashboard now gives you the power to see and copy a raw representation of exceptions and threads. This feature is especially beneficial to our Android developers because you can also use the raw stack inside your IDE, so debugging crashes became easier than ever.

After launching shareable crash reports in September, we added read-only comments to these reports. Now even developers without Crashlytics accounts can view these notes, which can include useful information for collaboration with your team (e.g. JIRA URL). We get it — even if you remembered to put elastic waist pants on before you sat down to eat you still need help from the whole extended family to make a dent in that bird!

To enhance overall usability, we completely revamped the Issue’s session page, along with newly added drop down menus for users to easily navigate between their organizations and applications.

Here’s our internal changelog:

Android SDK

  • Reduced SDK start time by over 75% by eliminating a blocking call during exception handler initialization in Crashlytics.start().
  • Enhanced Crashlytics.logException(Throwable) to log a warning via Log.w() and immediately return on null input.
  • Crashlytics.log(int priority, String tag, String message) now logs the priority and tag to Crashlytics reports as well as the Android logger.
  • Removed collection of unused process data to improve crash processing efficiency.
  • Explicitly set all Crashlytics background threads to THREAD_PRIORITY_BACKGROUND to defer CPU resources to the application.

IDE Plugins

  • Fixed a bug preventing the Crashlytics SDK from being pulled into Android Studio automatically while adding an application.
  • Pushed a non-critical fix to our plugin updater that prevents multiple updates between IDE restarts.

Web

  • Enhanced the UI of our modals and notes section as well as added the ability for users to filter out versions directly from the dropdown menu.
  • Added raw stack traces so developers can now see and copy a raw representation of the exceptions and threads.
  • Added read-only comments in shared crashes so notes are visible to team members who got the shared link but didnt have a Crashlytics account.
  • Revamped UI for Modals and Notes.
  • Added filters to Dropdown menus.

Thanksgiving 2013

  • Won the office-wide “Movember” contest (Tom Selleck truly is an inspiration).

It’s been quite a busy fall season for us but we look forward to shipping even more features before the year’s end. In the meantime, we’ll catch up with you guys on the other side of the holiday — save us some leftovers! Now, back to googling “Thanksgiving puns”…I mean…writing code ;)


View More