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


Security vulnerabilities can be unpleasant to address, and that only gets worse the more you have. When you’re dealing with a large volume of vulnerabilities, you need to be able…

This comprehensive guide shows how to use CSS transitions! A back-to-basics look at the fundamental building blocks we need to create microinteractions and other animations.

Day 56: A little WebAssembly

Root cause analysis (RCA) is an important part of fixing any bug. After all, you can’t solve a problem without getting to the heart of it. But RCA isn’t always simple, especially at a scale like Facebook’s. When billions of people are using an app on a variety of platforms and devices, a single bug […]

Git has so many powerful features under the hood! From Interactive Rebase to Submodules and from the Reflog to File History, these advanced features help you become more productive and make fewer mistakes. In this article, Tobias explores some of the less known but very useful features in Git. You’ll learn how to recover deleted commits, clean up your commit history, use submodules to manage third

In this episode, we’re talking about HTML controls. Why are they so hard to style, and how might that change in the future? Drew McLellan talks to Microsoft’s Stephanie Stimac and Melanie Richards to find out.

We are privileged to share Cloudflare’s inaugural set of Partner Awards. These Awards recognize our partner companies and representatives worldwide who stood out this past year for their investments in acquiring technical expertise in our offerings

The obvious answer is the Tampa Bay Buccaneers but the less obvious answer comes from asking “which Super Bowl advertiser got the biggest Internet bump?”. This blog aims to answer that question.

React framework maturity, early container queries, WASM adoption, and monoliths. I'll take all four, please. Not feeling like a particularly front-end-y? Jay

We use abstractions and conventions to hide away the tricky and error-prone parts, which in turn makes it easier for everyone who needs to do the same task. The ideas Steven Frieson shares here should be actionable in most applications depending on your styling solution and browser support. Migrating to use this system is not very risky since stacking contexts are already scoped individually; you

Hey, we're back with weekly updates about the browser landscape from Šime Vidas.

Not everyone takes a break over the festive season. Some people in the community have been busy shipping releases. So we’re here to bring you the latest and greatest releases…

What it is: Thrift is a serialization and remote procedure call (RPC) framework used for cross-service communication. Most services at Facebook communicate via Thrift because it provides a simple, language-agnostic protocol for communicating with structured data. Thrift can already be used in programming languages such as C++, Python, and Java using fbthrift. We are also […]

Remote work is taking over the world, and the biggest obstacle remote teams face is emulating the natural communication that happens at the office. In this article, Obed Parlapiano shares his advice and tips on how to improve your team’s communication and productivity by creating habits and processes focused on improving collaboration.

The way routing works in JavaScript is usually that you specify which relative URL pattern you want for which component to render. So for /about you want

This is a partner post by Leonid Belkind, the Co-Founder and CTO at StackPulse Over the past decade, engineering-led practices have replaced traditional IT operations across the software development lifecycle.…

At GitHub, our community is at the heart of everything we do. We want to make it easier to build the things you love, with the tools you prefer to…

In the fourth installment of our five-part series on building GitHub’s new homepage, we’ll explore the artistic pipeline at GitHub to explain story, character and color, and to show how…

Day 53: a little nginx, IPv6, and wireguard

Day 52: testing how many Firecracker VMs I can run

Some things to think about before you decide to create your own component library.

Memory allocator is an important part of the system, so choosing the right allocator for a workload can give huge benefits. Here is a story of how we decreased service memory usage by almost three times.

GitHub is committed to shaping public policies that support developers around the globe. Last year, we advised policymakers, supported legal action, and spoke directly to developers on policy in jurisdictions…