Wednesday, July 4, 2018

How BuzzFeed migrated from a Perl monolith

#173 — July 4, 2018

Read on the Web

Web Operations Weekly

GoAccess

GoAccess: A Visual, Real-Time Web Log Analyzer — An open source log analyzer and interactive viewer that runs in the terminal or through the browser. Supports logs from Apache, Nginx, Amazon S3, Elastic Load Balancing, CloudFront, etc.

Gerardo O.

A One Size Fits All Database Doesn't Fit Anyone — Amazon's CTO is often asked why AWS offers so many different database products. Here, he explains why, and explains his conviction that using multiple databases within an app is a good move.

Werner Vogels

The Revolutionary Project Management Tool Is Here and It's Visual — monday.com is a visual tool your team will actually enjoy using. It makes it fun and easy for everyone to collaborate, focus on what's important, and get more done. A project management tool that'll help you and your team collaborate and achieve more.

monday.com sponsor

How BuzzFeed Migrated from a Perl Monolith to Go & Python — BuzzFeed have recently migrated from a monolithic Perl application to a set of around 500 microservices written in a mixture of Python and Go.

Charles Humble (InfoQ)

Bare Metal Kubernetes Clustering at Chick-fil-A Scale — The American chicken restaurant will be running Kubernetes at the edge in its 2000 restaurants. Sadly the answer to "why are you doing this?" is to follow in a future post.

Brian Chambers, Caleb Hurd and Alex Crane (Chick-fil-A)

Spiral: How Facebook's Services Use Machine Learning to Self-Tune — Spiral is a system for self-tuning high-performance infrastructure services at Facebook scale, using real-time machine learning techniques.

Facebook

AWS Lambda Adds SQS to Supported Event Sources — AWS's serverless platform Lambda now supports SQS (Simple Queue Service) triggers to invoke serverless functions, and you can use this to turn the Simple Queue Service into a true message broker. Or prefer full docs and a tutorial?

Randall Hunt

๐Ÿ’ป Jobs

DevOps Engineer at X-Team (Remote) — We help our developers keep learning and growing every day. Unleash your potential. Work from anywhere. Join X-Team.

x-team

Find A Job Through Vettery — Vettery matches top tech talent with fast-growing companies. Create your profile to get started.

Vettery

๐Ÿ“˜ Tutorials & Opinion

Optimize Website Speed with Chrome's DevTools   — How to use Chrome DevTools to find ways to make your sites load faster.

Kayce Basques

Delivering a Serverless API in 10 Minutes with Cloudflare Workers

Rita Kozlov (Cloudflare)

Take Our 5-Min Survey & Win a Chance at a Lego Mindstorm

ActiveState sponsor

Setting up Monitoring and Alerting on Amazon AWS with Terraform

Stephen Mann

NGINX TLS/SSL HTTPS Tuning Tips

Hayden James

How to Use AWS Lambda to Clean Up Unused EBS Volumes — An interesting use of serverless to do housekeeping on existing resources and reduce infrastructure bills.

Mohamed Labouardy

An Introduction to Python Microservices with Nameko

Guilherme Caminha

How Facebook Migrated 'Messenger' Storage to Optimize Performance

Xiang Li and Thomas Georgiou (Facebook)

Migrating a 100K Request-per-Minute App from AWS Elastic Beanstalk to ECS

Omer Hamerman

What's The History Behind 192.168.1.1? Why Not Another Address?

Phillip Remaker on Quora

๐Ÿ”ง Tools

Kubernetes 1.11 Released — Go behind the scenes with this podcast interview with Josh Berkus and Tim Pepper.

Kubernetes

lightproxy: An Easy Way to Use Local Domains for Development — lightproxy lets you map hostnames to a local port. You can also point a hostname to a folder and serves file directly out of the folder.

Goat Blog

Manifold Is the Marketplace for Independent Developer Services

Manifold sponsor

JVM Profiler: A Tool for Tracing Distributed JVM Apps at Scale — Uber has open sourced its distributed JVM profiler.

Uber

Static Website Hosting for Azure Storage Now in Public Preview

Michael Hauss

Ansible 2.6 Released

Dylan Silva

mkcert: A Tool to Make Locally-Trusted Development Certificates

Filippo Valsorda

http-live-simulator: A Simple HTTP Server That Serves with a Random Delay for a 'Live' Feel

Prahlad Yeri

Nanny: A Monitoring Tool That Monitors The Absence of Action

Lukรกลก Nฤ›mec

Layoutit: A CSS Grid layout builder

#347 — July 4, 2018

Read on the Web

Frontend Focus

Layoutit

Layoutit: A CSS Grid Layout Interface Builder — A very quick online way to put together a CSS grid layout and get the code needed to make it happen. We saw this getting some love on Twitter and were impressed with it ourselves.

Leniolabs

An Introduction to Feature Policy — We linked to the spec last week, but this introduction to Feature Policy, a feature that lets developers selectively enable, disable, and modify the behavior of certain APIs and features in the browser, is a much better introduction :-)

Eric Bidelman

New Course: ๐Ÿ’ฏ Complete Intro to Web Development, v2 — More than an introductory course, this is a totally revamped, modern intro course where you'll go from building your first website to having the foundations for becoming a professional web developer.

Frontend Masters sponsor

CSS Grid Level 2: Here Comes Subgrid — CSS Grid Level 2's headline feature is support for subgrids (the idea that nested grids can take their parent grids into account). In this article, Rachel Andrew explains what's new and how it will work once it's fully specced.

Rachel Andrew

Designing for Accessibility Is Not That Hard — Seven easy-to-implement guidelines to design a more accessible web. Very cute animations, too.

Pablo Stanley

'I Used The Web For A Day With Just A Keyboard' — Many of us are taught to make sure our sites can be used via keyboard. Why is that, and what is it like in practice? Plenty of frontend tips in this tale.

Chris Ashton

Pixels vs. Ems: Users Do Change Font Size — The Internet Archive ran an experiment to see how many users browse with a non-default font size - 3.08% is their finding.

Evan Minto

๐Ÿ’ป Jobs

Frontend Developer at X-Team (Remote) — We help our developers keep learning and growing every day. Unleash your potential. Work from anywhere. Join X-Team.

x-team

Find A Job Through Vettery — Vettery matches top tech talent with fast-growing companies. Create your profile to get started.

Vettery

๐Ÿ“ข In Brief

What Is The CSS 'ch' Unit?"despite what the letters ch might imply, ch units are not 'character' units"

Eric A. Meyer

Optimize Website Speed with Chrome's DevTools   — How to use Chrome DevTools to find ways to make your sites load faster.

Kayce Basques

Content Needs a Publication Date — .. and here's a semantically ideal way to mark it up.

Bruce Lawson

CSS Grid in IE: Debunking Common IE Grid Misconceptions — The first in a series on how to use CSS grid in a way that not only works in modern browsers but also IE11.

Daniel Tonon

On the Inaccessibility of CAPTCHAs — A popular document from 2005 on the Web accessibility problems and solutions around common CAPTCHA techniques has been revised and brought up to date.

W3C

How to Do Functional Programming with JavaScript?

Progress Kendo UI sponsor

The Quirks of CSS Grid and Absolute Positioning — It's possible to use CSS positioning on grid items, but there are some quirks to be aware of..

Ian Yates

How CSS Works: Creating Layers with 'z-index' — Under the hood, z-index isn't as complex as it can seem at first.

Benjamin Johnson

Ways to Fit Text to a Container — Chris Coyier runs through a few of the ways in which you can go about putting some text in a container and having it size itself to fill that container.

CSS Tricks

A Guide to Node.js for Frontend Developers — If you do end up getting into Node.js, we have a Node newsletter too :-)

Seva Zaikov

Creating Simple 'Color-Coding' Dots in CSS

Mohamed Akram

Docz: A Modern Documentation Site Publishing System — Zero-config, powered by Webpack 4 and a Markdown + JSX templating format.

Pedro Nauck

PostgreSQL 11 Beta 2 Released

#263 — July 4, 2018

Read on the Web

Postgres Weekly

PostgreSQL 11 Beta 2 Released — In related news, the HEAD of Postgres's git repository is now for Postgres 12, so there will be no further new features for PG 11.

PostgreSQL Global Development Group

PostgreSQL Tuning: Key Things to Drive Performance — Several high-level tips for getting the most performance out of your Postgres setup.

Viorel Tabara

Because Your Data Is Your Business — PGX's open source experts provide the database and application skills necessary to solve database problems, accelerate existing applications, refactor infrastructure, and develop new applications.

PostgreSQL Experts, Inc. sponsor

Postgres Concurrency: Isolation and Locking — A brief primer on Postgres's isolation and locking properties and behaviors.

Dimitri Fontaine

pgquarrel 0.4: The Postgres Schema Comparison Tool — Given two database connections, it'll output data representing the difference between schemas. The main use case is to deploy database changes into testing, staging or production environments.

Euler Taveira

Rules vs Trigger Performance When Logging Bulk UpdatesRules let you define an alternate action to be performed on table inserts, updates, or deletions, and can work as an alternative to triggers in some situations.

Laurenz Albe

Options for Scaling From 1 to 100,000 Tenants — If you're building a multi-tenant SaaS app and you plan for your business to grow, you're going to face the question of how to scale your database. This post covers the options, from proprietary to open source, relational to NoSQL, scale up to scale out.

Craig Kerstiens

The Diagnostic Tale of an Unexpected Slowdown — Digging into a performance issue with a Postgres database and how it was resolved.

Julien Rouhaud

Take Control of Your Postgres Databases in the Cloud

EDB Managed DBaaS Service sponsor

PostGIS 2.5 Beta 1 Released — The spatial and geographic object system for Postgres takes another step towards a final release - Postgres 11 beta 2 is recommended here.

PostGIS Developers

Events

PGDay.Amsterdam July 12 (Amsterdam, Netherlands) Meet & learn from other PostgreSQL users, developers and anyone who's interested in the most advanced open source database.

PostgresOpen 2018 September 5-7 (San Francisco, CA) PostgresOpen is happening again this year in San Francisco and the talk list is now live. Here's a breakdown of just a few of the interesting talks.

Postgresql Conference Europe October 23-26 2018 (Lisbon, Portugal) The 10th Annual PostgreSQL Conference Europe which will be held at the Lisbon Marriott Hotel.