Techreport blog

Engineering Insights & Guides

The best problem-solving writing in software engineering — databases, performance, security, frontend and distributed systems, in one feed.

11,842 articles
Design & UX — The Design Squiggle

The Design Squiggle

I think we all have an intuitive understanding that, at the beginning of projects that require our creativity (be it design or code), things feel uncertain

CCChris Coyier·January 16, 2020Design & UX
Performance — Scaling Mobile Development by Treating Apps as Services - Shopify

Scaling Mobile Development by Treating Apps as Services - Shopify

Scaling development without slowing down the delivery speed of new features is a problem that companies face when they grow. Speed can be achieved through better tooling, but the bigger the teams and projects, the more tooling they need. When projects and teams use different tools to solve similar problems, it gets harder for tooling teams to create one solution that works for everybody. Additiona

SEShopify Engineering·January 16, 2020Performance
Engineering — On Pair Programming

On Pair Programming

Many people who work in software development today have heard of the practice of pair programming, yet it still only has patchy adoption in the industry. One reason for its varying acceptance is that its benefits are not immediately obvious, it pays off more in the medium- and long-term. And it's also not as simple as “two people working at a single computer”, so many dismiss it quickly when it fe

BBBirgitta Böckeler and Nina Siessegger·January 15, 2020Engineering
SRE & Ops — Reliably Upgrading Apache Airflow at Slack’s Scale

Reliably Upgrading Apache Airflow at Slack’s Scale

Apache Airflow is a tool for describing, executing, and monitoring workflows. At Slack, we use Airflow to orchestrate and manage our data warehouse workflows, which includes product and business metrics and also is used for different engineering use-cases (e.g. search and offline indexing). For two years we’ve been running Airflow 1.8, and it was time for…

SESlack Engineering·January 15, 2020SRE & Ops
Performance — The Mythical Mythical Man-Month — Smashing Magazine

The Mythical Mythical Man-Month — Smashing Magazine

How do you move faster when adding folks to a project supposedly slows it down? Mailchimp’s CPO takes the reader through some considerations for preserving momentum while scaling up. Software is difficult to build with lots of complex interdependencies. And everyone needs to work together to get it done. As you work to manage dependencies and introduce tools to help scale, make sure you clearly co

JFJohn ForemanJohn Foreman·January 15, 2020Performance
Frontend — How many CSS properties are there?

How many CSS properties are there?

Tomasz Łakomy posted a joke tweet about naming all the CSS attributes and Tejas Kumar replied with a joke answer, going as far as making an npm module. You

CCChris Coyier·January 14, 2020Frontend
Engineering — Business Dad

Business Dad

Congrats to Chris Enns, our podcast editor on ShopTalk and CodePen Radio, for landing a really cool new podcast to edit: Business Dad. It's Alexis Ohanian,

CCChris Coyier·January 14, 2020Engineering
Engineering — Game Off 2019 Winners

Game Off 2019 Winners

Thousands of game developers from all over the world participated in Game Off, our annual game jam celebrating open source. Let’s take a look at 2019’s winners.

LRLee ReillyLee Reilly·January 14, 2020Engineering
Frontend — Magical Rainbow Gradients

Magical Rainbow Gradients

If you've ever tried to animate a gradient, you've been met with a harsh reality—it isn't possible. At least, it wasn't! In this tutorial, we'll leverage bleeding-edge browser features to animate ANY CSS property, including background gradients, using CSS Houdini, CSS variables, and React.

JWJosh W. Comeau·January 13, 2020Frontend
SRE & Ops — Open source year in review

Open source year in review

Last year was a busy one for our open source engineers. In 2019 we released 170 new open source projects, bringing our portfolio to a total of 579 active repositories. While it’s important for our internal engineers to contribute to these projects (and they certainly do — with more than 82,000 commits this year), we […]

MEMeta Engineering·January 13, 2020SRE & Ops
Frontend — An Introduction To React’s Context API — Smashing Magazine

An Introduction To React’s Context API — Smashing Magazine

In this article, Yusuff Faruq will show you how to use React’s Context API which allows you to manage global application states in your React apps without resorting to props drilling. In the process you will learn what the Context API is and the problem it solves, how to create Context and consuming it in both functional and class-based components, and when to use the Context API. Let’s start!

YFYusuff FaruqYusuff Faruq·January 13, 2020Frontend