All Engineering

Engineering

Styled Components vs. CSS Stylesheets

Over the last few years, CSS-in-JS solutions have become prevalent across the front-end landscape with many offerings such as styled-components, and emotion that provides a way to colocate your components and style definitions. The power of these libraries lies in the ability to …

Engineering

Stream Is Deprecating Virtual Go – It’s Time to Move to Go Modules

TL;DR Stream released vg almost three years ago, and since its inception, Go has improved quite a bit in regards to its dependency management. Since Go has come so far, we’re now advocating that the community use native Go modules rather than vg. The Gist Stream provides an API a…

Engineering

Rolling a Custom Docs CMS with Slate and Django REST Framework

The Rundown In 2019 we realized we had a big problem here at Stream. Our documentation for Feeds and Chat was outdated, hard to navigate, and difficult to update due to legacy systems that were in place. We made it a goal to set out and build the best documentation site available…

Engineering

Prevent Native Race Conditions with React’s Context API

Here on the Stream Services team, we have the pleasure of working with a variety of clients and get to solve exciting challenges daily. This blog post provides a peek into one such occasion by highlighting the intricacies of building a native app in Javascript, and the creative s…

Engineering

Tutorial: Create a GraphQL API with Node, Mongoose, and Express

GraphQL is a technology that helps developers across the board to build more robust software more quickly. The ability to request all of the information you need in a single request is a game-changer. It has simplified my backend development of APIs for consumption by mobile and …

Engineering

MongoDB vs. DocumentDB: Which Is Right for You?

Are you trying to decide if you should use MongoDB or DocumentDB? With the recent controversy surrounding licensing with MongoDB, it can be confusing to decide which option is right for your company or project. Amazon decided the core MongoDB code is challenging to scale while re…

Engineering

Crafting a Command Line Experience that Developers Love

If you’re setting out to build a highly usable developer tool, it goes without saying that a proper CLI to interface with your API is paramount. As Zeit and Heroku have been setting the tone for these types of developer tools by doing extensive research into best practices when i…

Engineering

How a Go Program Compiles down to Machine Code

Here at Stream, we use Go extensively, and it has drastically improved our productivity. We have also found that by using Go, the speed is outstanding and since we started using it, we have implemented mission-critical portions of our stack, such as our in-house storage engine po…

Engineering

Go 1.11 Rocket Tutorial

This tutorial combines two of my favorite things, the Go programming language and images of SpaceX rocket launches. With Go rapidly picking up adoption in the developer community, its becoming one of the leading languages for building backend systems. Go’s performance is similar …

Engineering

Google Feed Personalization and Recommender Systems

Lately, I’ve been using Google’s feed on Android and it contains several interesting best practices for content discovery. Google’s feed strikes an effective balance between machine learning and follow relationships. With the recent advancements in AI, it can be hard to know when…

1235