
Join our panel with WHO at GitHub Universe 2020!
The year 2020 has upended nearly every aspect of society. In a panel for GitHub Satellite back in May, we briefly covered some of the ways in which our social…
4,365 articles on Engineering.

The year 2020 has upended nearly every aspect of society. In a panel for GitHub Satellite back in May, we briefly covered some of the ways in which our social…

Day 18: an answer to an autoencoder question

Introduction In November, we experienced two incidents resulting in significant impact and degraded state of availability for issues, pull requests, and GitHub Actions services. November 2 12:00 UTC (lasting 32…

Change is inevitable, and this year, it has been inescapable. We’ve had to find new ways to relate, learn, and balance both work and life at home. One thing has…

How to get help from Kent

Even though the development of a data importer is a complex matter, you don’t want your users’ experience with it to be just as complex or complicated. The second they experience any friction or fault in data onboarding, the chances of them bailing from the software will skyrocket. So, in this post, we’re going to focus on how best to present your data importer to users.

Matthias Ott, comparing how painter Gerhard Richter paints (do stuff, step back, take a look) to what can be the website building process and what can wreck it:


Day 17: trying to wrap my head around autoencoders

The simple rules for when to use each.

What if, for some users, the very best Spotify is a little less Spotify? Spotify Lite started as an experiment that had to be proven, both from a technical and a product-market fit perspective. In 2017, we found that a significant portion of registrations in some of our fastest-growing markets were happening on Android devices much older than what we were used to seeing in North American and Europ

An attempt at implementing char-rnn with PyTorch

Let’s welcome December with some new wallpapers! Designed by artists and designers from across the globe, they are available with and without a calendar for the month. All images can be clicked on and lead to the preview of the wallpaper. We respect and carefully consider the ideas and motivation behind each and every artist’s work. This is why we give all artists the full freedom to explore their

If you want to relax in an active and learning way this Thanksgiving weekend, here are some of the topics we’ve covered on the Cloudflare blog this past week that you may find interesting.

Reactive variables work with GraphQL Apollo and offer you the same functionality with Redux or Context API without the complexity or extra layers that come with these other tools. A reactive variable in GraphQL Apollo is easy to use and doesn’t have as much setup process compared to Redux. In this article, Daniel Don will look at how to set up reactive variables, how the GraphQL cache polices come


Copy docs is a framework that allows product designers and writers to manage their in-product copy in a smart way. In this article, Valeriia Panina shares her experience in how the copy docs technique turned out to be a game changer for her workflow. The copy docs technique was a game changer for Valeriia’s workflow and she’d be happy if it boosts yours, too!

We previously explained how and why we built Quicksilver. This second blog post is about the long journey to production which culminates with Kyoto Tycoon removal from Cloudflare infrastructure and points to the first signs of obsolescence.

In the product-focused world of development, it can be easy to forget the joy of making for the sake of making. By dropping the ‘Why’ and ‘How’, and focusing instead on the ‘What’ of weird, wonderful ideas, you can nurture a totally different side to your skill sets. You can read the docs, you can follow the tutorials, but wouldn’t you be more motivated by trying to make something unique, somethin

Day 11: learning about learning rates

A refresh of the hardware that Cloudflare uses to run analytics provided big efficiency improvements.

I'm sure different people picture different things when they think about webrings, so let me clarify what I picture. I see an element on a website that:

Earlier this year, we upgraded the notifications experience on GitHub, focusing on filters that get you straight to the updates that matter most to you. Just last week, we shipped…

Day 10: Training an RNN to count to three

The evolution of Auto Layout and more on the latest version

The Digital Millennium Copyright Act (DMCA) is a 22-year old United States law meant to strike a complicated balance between art, code, and speech on the net — impacting users…

Day 9: Generating a lot of nonsense with an RNN

This article focuses adding WebGL effects to <image> and <video> elements of an already “completed” web page. While there are a few helpful

GitHub Actions are like free computers.


Day 8: Start with something that works


The latest version of GitHub Desktop includes split diffs, PRs with Actions status, more control over stashing, and discarding changes from files.


Learn to build your first Dropbox Extension using sample code in node.js

As part of GitHub’s commitment to developers, we open source the policies that govern our platform and welcome feedback at any time in our site-policy repository. When we make material…

We’re here to bring you the latest and greatest releases for November 2020. These are exciting new releases from some of the coolest projects around. There’s everything from world-changing tech…

Today we reinstated youtube-dl, a popular project on GitHub, after we received additional information about the project that enabled us to reverse a Digital Millennium Copyright Act (DMCA) takedown.

Day 5: drawing lots of faces with sketch-rnn

The convention when contributing to projects on version control platforms is that there is the main branch containing the functional codebase. Then, there are other branches in which several developers can work on copies of the main to either add a new feature, fix a bug, and so on. If there is any error, it can easily be traced and fixed before integrating the changes into the main branch. It can

How do you write simple explanations without sounding condescending?

Cloudflare celebrated UK Black History Month remotely!

The simplest getting started guide for Firebase Cloud functions

A built-in commenting system is one of the reasons people reach for WordPress (and often stay there long-term). While I do think having a comment system is

Earlier this year I wrote a bit about autogrowing textareas and inputs. The idea was to make a <textarea> more like a <div> so it expands in

Day 3: an infinitely tall fridge

Easily create server code without worrying about managing servers yourself

I am incredibly excited to announce that I have joined Cloudflare as its Head of France to help build a better Internet and expand the company’s growing customer base in France. This is an important milestone for Cloudflare as we continue to grow our presence in Europe.

As quickly as I can:

Day 2: Rails associations & dragging divs around

Day 1: a confusing Rails error message

A new way I'm getting feedback on my zines: beta readers!

The cap of two hundred thousand routing cryptographic records was recently passed. We thought it was time for an update on a major year for RPKI.

The use of serverless applications by developers to handle the business logic of their applications in on the high increase, but how does the Google Cloud — a major service provider within the public cloud — allow developers to manage serverless applications? In this article, you will learn what serverless applications are, how they are used on the Google Cloud, and also scenarios in which they ca

We use ClickHouse widely at Cloudflare. It helps us with our internal analytics workload, bot management, customer dashboards, and many other systems.

I'm doing another Recurse Center batch!

In this article, you will be exposed to ApexCharts and to the different types and variants of charts it provides. Along the way, we’ll build several types of charts and learn how we can customize the appearance of our charts. By the end of the article, you will be able to integrate different types and variants of chats in your applications with ApexCharts.

We’re hosting webinars on the HelloSign API in the UK, Germany, and France. Register today and come learn about the HelloSign API.

Starting today, Vercel Analytics is available for Gatsby projects – without any configuration.

Dozens of top leaders and thinkers from the tech industry and beyond recently joined us for a series of fireside chats commemorating Cloudflare’s 10th birthday. Here are some of the highlights.