The Changelog The Changelog #407  – Pinned

Designing and building HEY

We’re talking about designing and building HEY with Jonas Downey, the lead designer behind HEY. In their words, “Email sucked for years, but not anymore.” We were super interested in how they went about solving the problems with email, so we invited Jonas on to share all the details and a behind-the-scenes look at the making of HEY.

Carl Johnson blog.carlmjohnson.net

Never use a dependency you could replace in an afternoon of programming

In a post aptly titled “Tripping over the potholes in too many libraries,” Carl Johnson explains his philosophy on using dependencies.

In short, I think it’s become entirely too easy for people using certain programming languages to use libraries from the wide world of clowns that is the Internet. Their ecosystems make it very very easy to become reliant on this stuff. Trouble is, those libraries are frequently 💩. If something about it is broken, you might not be able to code around it, and may have to actually deal with them to get it fixed. Repeat 100 times, and now you have a real problem brewing.

I have a simple rule: never use a dependency that you could replace with an afternoon of programming.

Mozilla Icon Mozilla

Significant changes at Mozilla Corporation

Today Mitchell Baker, CEO of Mozilla Corporation, shared news of big changes taking place at Mozilla in the wake of COVID-19. In addition to the changes noted below, Mozilla is also laying off 250 employees while it makes these changes.

…going forward we will be smaller. We’ll also be organizing ourselves very differently, acting more quickly and nimbly. We’ll experiment more. We’ll adjust more quickly. We’ll join with allies outside of our organization more often and more effectively. We’ll meet people where they are. We’ll become great at expressing and building our core values into products and programs that speak to today’s issues. We’ll join and build with all those who seek openness, decency, empowerment and common good in online life.

This internal document includes the details about the restructuring and other specifics.

I’ve reached out to Mitchell via LinkedIn messages to invite her on The Changelog for deep dive into the future of the internet. If you or anyone you might know has a direct connection to Mitchell, please pass this invitation on to her — we’d love to have her on the show.

Linode Icon Linode – Sponsored

Linode Kubernetes Engine is here!

logged by @logbot permalink

Linode Kubernetes Engine (LKE) is a fully-managed container orchestration engine for deploying and managing containerized applications and workloads. LKE combines Linode’s ease of use and simple pricing with the infrastructure efficiency of Kubernetes. You can now get your infrastructure and workloads up and running in minutes instead of days.

If you’ve been following along with the Changelog infrastructure, you’ll be pleased to know we’re rolling out LKE as we speak. We love what we’ve seen so far! Oh and be sure to use the code changelog2019 or changelog2020 (whichever works) to get our special pricing.

Go github.com

Olric lets you instantly create a fast, scalable, shared pool of RAM across a cluster of computers

Can be used as an embeddable Go library or as a language-agnostic service. Here’s their list of use cases:

With this feature set, Olric is suitable to use as a distributed cache. But it also provides distributed topics, data replication, failure detection and simple anti-entropy services. So it can be used as an ordinary key/value data store to scale your cloud application.

Patrick DeVivo askgit.com

AskGit - query your git repo with SQL

Built in Go, askgit is an open source CLI and coming soon web interface (linked above). With this tool in your toolbox, you can mine your repo for info like commit count by author on each day of the week:

SELECT
    count(*) AS commits,
    count(CASE WHEN strftime('%w',author_when)='0' THEN 1 END) AS sunday,
    count(CASE WHEN strftime('%w',author_when)='1' THEN 1 END) AS monday,
    count(CASE WHEN strftime('%w',author_when)='2' THEN 1 END) AS tuesday,
    count(CASE WHEN strftime('%w',author_when)='3' THEN 1 END) AS wednesday,
    count(CASE WHEN strftime('%w',author_when)='4' THEN 1 END) AS thursday,
    count(CASE WHEN strftime('%w',author_when)='5' THEN 1 END) AS friday,
    count(CASE WHEN strftime('%w',author_when)='6' THEN 1 END) AS saturday,
    author_email
FROM commits GROUP BY author_email ORDER BY commits

Practical AI Practical AI #100

Practical AI turns 100!!! 🎉

We made it to 100 episodes of Practical AI! It has been a privilege to have had so many great guests and discussions about everything from AGI to GPUs to AI for good. In this episode, we circle back to the beginning when Jerod and Adam from The Changelog helped us kick off the podcast. We discuss how our perspectives have changed over time, what it has been like to host an AI podcast, and what the future of AI might look like. (GIVEAWAY!)

Music helen.blog

What software teams can learn from music masterclasses

Musicians and developers go together like peas and carrots, Jenny. So it makes sense that techniques used by musicians to hone their skills might transfer over to software people. One of those techniques is the “masterclass”

A masterclass is a format in which musicians perform a work for an established artist and the artist then gives them feedback rather like a lesson, except that all of this happens in front of an audience.

Click through for a compelling distillation of what software teams can learn from musicians when it comes to giving and receiving feedback.

Gatsby Icon Gatsby – Sponsored

Become a Gatsby partner and accelerate your business 📈

logged by @logbot permalink

This is a great opportunity if you build sites for clients. Here’s what Brian Webster of Delicious Simplicity had to say about Gatsby’s partnership program:

Partnering with Gatsby has been a game changer for our business. We’re able to exceed customer expectations, bring in new business, and delight our developers.

Give your clients confidence as a Gatsby certified partner. Get started today.

Jon Evans GitHub Blog

GitHub Arctic Code Vault's guide to the Tech Tree

Have you heard of the GitHub Arctic Code Vault? If not, the goal of GitHub Arctic Code Vault is to preserve open source software for future generations. Which means we need thorough docs describing how the world makes and uses software. Which I find completely fascinating!

From the GitHub Archive Program readme:

We are now also opening up the initial compilation of Tech Tree resources to community input. Inspired by the Long Now Foundation’s Manual for Civilization, the Tech Tree is a collection of technical works which document and explain the layers of technology on which today’s open-source software relies, along with works included to provide additional cultural context for the Arctic Code Vault.

From the Tech Tree readme:

What follows, which we call the Tech Tree, is a selection of works intended to describe how the world makes and uses software today, as well as an overview of how computers work and the foundational technologies required to make and use computers. The purpose of the GitHub Archive Program is to preserve open source software for future generations. This implies also preserving the knowledge of other technologies on which open-source software runs, along with a depiction of the open-source movement which brought this software into being.

Stephanie Morillo stephaniemorillo.co

A Brief introduction to technical writing

Stephanie Morillo:

Developers encounter technical writing everywhere: product & API docs, manpages, tutorials & more. We know it matters but what is technical writing exactly? And how does it differ from other writing?

In this brief post, I define what technical writing is, provide examples of technical writing in software and beyond, and explore other skills technical writers must develop to create successful and effective documentation.

Opensource.com Icon Opensource.com

5 tips for making documentation a priority in open source projects

1️⃣ Value contributions to documentation just as much as code contributions
2️⃣ Put documentation and code in the same project repo
3️⃣ Make documentation a requirement for a merge or release milestone
4️⃣ Have a consistent contribution process for code and documentation
5️⃣ Have well-documented processes for contributing to documentation

That’s the TL;DR, but each of these is expanded upon in the article.

Peter Ohler github.com

A journey building a fast JSON parser and full JSONPath (Oj for Go)

Peter Ohler:

I had a dream. I’d write a fast JSON parser, generic data, and a JSONPath implementation and it would be beautiful, well organized, and something to be admired. Well, reality kicked in and laughed at those dreams.

This post lays out Peter’s plan, his journey, and his lessons learned in great details. Seems like it’d pair nicely with the recent Go Time all about JSON.

Brain Science Brain Science #26

It all begins with empathy

Have you heard the phrase, “Put yourself in their shoes?” In this episode, the conversation focuses on the “HOW” and why it all begins with empathy. Empathy is the key that enables access to another person’s perspective and emotional state. It is also a fundamental aspect of building and sustaining relationships with others. The fascinating thing is that there are 3 types of empathy: cognitive, social, and empathic concern. Plus there’s a counterpart component called compassion that moves us to take action.

Nikola Đuza pragmaticpineapple.com

Why learn Vim in 2020?

Nikola Đuza makes a compelling case for the powerful text editor that developers love (or love to hate):

What Vim is excellent at is navigating, making some changes, and repeating the process. The process most call editing (not to be confused with writing). Most developers tend to overlook this fact, but this is one of the strong selling points of Vim. Developers are more prone to reading code, jumping from file to file, making small incisions in the code, and writing code all the time.

Podcasts from Changelog

Weekly shows about software development, developer culture, open source, building startups, artificial intelligence, brain science, and the people involved.

0:00 / 0:00