Systems | Development | Analytics | API | Testing

February 2020

RapidAPI Review - A Guide On How To Use It

As an all-encompassing marketplace, RapidAPI has become a popular option for developers and vendors alike. So what does it have to offer and how can you harness it effectively to get the most out of its features and benefits? On the surface, the concept of RapidAPI is simple; it aims to act as your one-stop-shop for a wide variety of RESTful APIs which can be deployed to tackle a plethora of potential projects.

Serverless Production Debugging: AWS Lambda Debugging in Production and Elsewhere

Ever feel like the world is moving by so rapidly, that it feels like something got left behind in the rush? That’s how we feel about being able to debug your applications easily. Technology has advanced rapidly, but the ease of debugging has not. With the introduction of serverless computing, the way enterprises are designed and how they build their production applications was changed.

Automated Tools and Strategies to Help Migrate from Python 2 to 3

This article is a continuation of Part I (A comprehensive guide to migrating from Python 2(Legacy Python) to Python 3), which details the changes, and improvements in Python 3, and why they are essential. The rest of the article describes automated tools, strategies, and the role of testing in the migration from Python 2 to 3.

How to Fix JavaScript Errors

My computer programming teacher had always told me that 10% of our time is spent developing 90% of our application, and the other 90% of our time finishing the last 10% of our project. Even with a good project plan and a concept that makes logical sense, most of our time will be consumed with fixing errors. Moreover, with JavaScript, our application can run without obvious errors preventing it from being run, so we have to employ several techniques to make sure everything is running smoothly.

FullStory - Enhancing Digital Experiences Building Relationships

Customer experience is a key factor in competitive differentiation in the digital economy. The online business model has changed, and today, the focus has shifted from brands to customers. It would not be an exaggeration to say that customer experience plays a central role in any business model.

Migrating Production Data in Elixir

When requirements change for your product, there arises a need to change not only the codebase but also the existing data that already lives in production. If you’re performing the changes locally, the whole process seems fairly simple. You test your new feature against a sparkling clean database, the test suite is green, and the feature looks great. Then you deploy, and everything goes to hell because you forgot that production was in a slightly different state.

Plugging Git Leaks: Preventing and Fixing Information Exposure in Repositories

Have you ever been neck-deep building a new feature? You're working at capacity. You need to test something out so you paste an API key into your source file with every intention of removing it later. But you forget. You push to GitHub. It's an easy mistake, and potentially a very expensive one. In this article, Julien Cretel explores the nuances of this kind of data leak, offers suggestions for recovery when leaks happen and gives us options for preventing them in the first place.

A Comprehensive Guide to Migrating from Python 2 (Legacy Python) to Python 3

Python powers many applications we use in our day-to-day like Reddit, Instagram, Dropbox, and Spotify. The adoption of Python 3 has been a subject of debate in the Python community. While Python 3 has been out for more than a decade now, there wasn’t much incentive to migrate from the stable Python 2.7 in the earlier releases. If you’re still running on legacy python, it’s high time to migrate as it has reached the end of its life since Jan 2020.

Introducing Notifications API to Automate Notification Settings Across Projects

At Rollbar we love workflow automation. With our new Notifications API, you can automate setting up of custom notification rules for all your Rollbar projects. As more of our customers switch to microservices, we wanted to build a programmatic way to set up these rules for multiple projects or services in just a few seconds, without having to go to the UI.

Effective Profiling in Google Chrome

This blog post will explain how to effectively profile your website so that you can deal with performance pain points. We’ll go through the two most used tools in Google Chrome for profiling: Imagine that you optimized your backend and everything is running smoothly. However, for some reason, the load time of your pages is still unreasonably high. Your users might be experiencing sluggish UI and long load times. This post will help you sort these issues out.

Code coverage for Swift Package Manager based apps

The Swift Package Manager allows you to create standalone Swift applications both on Linux and macOS. You can build and run these apps and you have the ability to write unit tests for your codebase. Xcode ships with the XCTest framework, but you may not know that this is an open-source library. It's available on every single platform where you can install Swift.

We're partnering with AppDynamics to bring next-gen developer workflows to the enterprise

We are excited to announce our new partnership with AppDynamics at their global event Transform 2020. Deep Code Insights (DCI) powered by Rookout will be generally available within the AppDynamics platform starting today. ‍ The partnership was a no-brainer: AppDynamics’ APM solution helps developers become aware of problems quickly; Rookout helps developers debug those problems easily. It’s a match made in devops heaven!

Debugging Workflows Two Ways

Today, service architecture is becoming increasingly complex with the explosion of new software techniques such as microservices. However, the performance of a system often is dependent on engineers’ ability to debug gnarly problems. The increase in complexity that comes with new microservices architectures makes debugging that much harder. In fact, some companies are considering reverting back to monoliths because of the increased difficulty of debugging, among a host of other challenges.

What is Continuous Application Improvement?

CAI stands for Continuous Application Improvement. It is a software improvement process that is implemented at each step of the SDLC, ensuring immediate feedback at each step rather than waiting till risk levels and impact has gone up. When you implement CAI you shift your improvement process as far left as possible and you catch software bugs and performance problems where they are introduced, eliminating countless hours of time spent chasing issues.

Software Trends for 2020: Continuous Delivery

“Software is eating the world” is no longer a hopeful vision. It’s happening. It’s here. Software is driving the world’s most important technological trends, and 2020 will prove to be an inflection point for several of them. Underlying the rapid pace of software transformation is another trend that has become immensely popular in itself. The rise of continuous delivery has enabled software companies to turn their ideas into reality faster than ever before.

Decoupling Ruby: Delegation vs Dependency Injection

We've all worked with tightly-coupled code. If a butterfly flaps its wings in China, the unit tests break. Maintaining a system like this is...unpleasant. In this article, Jonathan Miles dives into the origins of tight-coupling. He demonstrates how you can use dependency injection (DI) to decouple code. Then he introduces a novel decoupling technique based on delegation that can be useful when DI is not an option.

An Introduction to PHP-FPM Tuning

PHP-FPM (or Fast Process Manager) offers several advantages over mod_php, with two of the most notable being that it is more flexible to configure and currently the preferred mode of running PHP by many in the community. However, if you're using your package manager's default configuration settings, then you're likely not getting the most out of it.

How Can I Check My ElastAlert Rule is Configured Correctly?

Making sure that your ElastAlert yaml file is formatted and configured correctly. All of the below points will prevent alerts from being fired but there may not be an error message associated with the problem. It is possible you may need to contact support to investigate this issue for you. Make sure to proof read the rule you have written to ensure that it is what you expect to see as most of the issues regarding ElastAlert not working correctly is related to the points above.

Scale-Up vs. Scale-Out Storage: Tips to Consider

In the Data Age 2025 report, worldwide data is expected to grow 61% to 175 zettabytes by 2025. The enterprise sector, in particular, generates more than 30% each year. To be ready for a digital future, consider the scaling strategy of data infrastructure beforehand. Scale-up and scale-out are the main ways to add capacity to your infrastructure.

3 cool tech tapas we found at Cisco Live Europe

I love traveling to Barcelona for conferences. Between Gaudi’s architecture and tech architectures, there’s really not much more I can ask for. Walking into Cisco Live!, the first thing I encountered was the huge indoor fountain called the “Rain Wall”, which was built to raise awareness and celebrate Cisco’s Corporate Social Responsibility program.

Introducing Git Blame Support for GitHub Integration

At Rollbar, we care about reducing the time it takes developers to find and fix errors. This is why we’re making our integration with GitHub even stronger to provide more context around errors and reduce the mean time it takes to resolve them MTTR. Last year, we launched Code Context to show additional lines of code within each frame of the stack trace, reducing the back and forth between GitHub and Rollbar.

6 Software Development Trends for 2020: Developers Needed

Well, my developer friends, 2020 is your year. Businesses in practically every industry have a fever to grow their IT operations and automate just anything possible. I know, I know. The demand for developers is nothing new. But 2020 is different. 2020 is the year where we see some of this decade’s most exciting technologies become commercially viable, and others finally go mainstream.

Best Practices for Moving from a Monolith to Microservices

In the first post of this series, we looked at the state of your organization, how to tell if Microservices are right for you, and wrapped up with a few challenges this architecture brings to the table. In this article, we will look at organizational changes that will help you adopt a Microservice architecture. Additionally, we will touch on topics like how to bring change to your organization, how to embrace the primacy effect, and why you should embrace cross-functional teams.

Breadcrumbs for JavaScript

Breadcrumbs can help you debug client-side JavaScript applications, and are available to all Honeybadger customers as of today. One of the things that makes fixing JavaScript errors so difficult is that everything happens on the client-side. When an obscure error happens in a callback, you often lack the context to reproduce it. If the error is critical, you may even resort to deploying debug code to get more information about the events leading up to it.

.NET Performance Optimization: Everything You Need To Know

It’s Friday afternoon, the majority of the development staff has already packed up and headed home for the weekend, but you remain to see the latest hotfix through to production. To your dismay, immediately after deployment, queues start backing up and you begin to get alerts from your monitoring system. Something has been broken and all evidence points to an application performance bottleneck.

Add the Bugfender SDK to an iOS app

With Bugfender you can debug your app remotely, find the bugs faster and provide better customer service. Follow this guide to add Bugfender to your iOS app using cocoapods. Thanks to new languages like Kotlin and Swift we can see more and more web programmers jumping into the native development. We started this series of videos with basic tutorials to help new developers and also experienced developers coming from other platforms (React Native, Xamarin, Ionic…). This video can be used as a guide to start creating a new Xcode project and integrating the Bugfender SDK with cocoapods, but if you want to go further we have a lot of tutorials and articles in our docs and in our blog. As you can see, having a remote console for your apps is a 5-minutes task that can save you hours of debug in production. See you in the next video. Happy debugging!

Four Logging Best Practices for Production Applications

Logging is an essential part of just about any PHP-based application; whether in a script or a larger application. However, how little is too little and how much is too much to log? If we don't log enough information, when something goes wrong, as it invariably does, then we won't have enough information available to determine what went wrong so that we can fix the problem. However, if we have too much information, then we'll be unable to filter out the white noise.

How to adopt Mobile DevOps practices: mindset and technologies

Mobile DevOps is more than simply adopting a new set of tools and practices: it also comes with the need to adopt a completely different mindset, in the form of a cultural-organizational change. The approach is based on the Agile methodology, but takes its practices further: not only by getting other teams more involved, but by replacing function-based teams with product-, and project-oriented teams as well.

Top 6 Website Builders for Beginners

In 2020, a website is essential for just about everyone. Whether you run a small business, are a blogger, a professional like a graphic designer or a freelance writer, or an entrepreneur, a website is critical for being able to do what you do. Luckily, these days it is also extremely easy to create a website. Thanks to the large number of website builders now available, you no longer need to hire a web developer, and instead can build your own website from scratch.