Google Fonts: Free Typefaces for Your Site


The Blog

We’re really happy to announce that we’ve added over 30 free Google Fonts to your Theme Customizer. Even better, you don’t need any upgrades to access them; these fonts are free for everyone.

Go to → Customize to see the new Fonts section in the sidebar. From there you can browse and preview typefaces like Gentium Book Basic, Libre Baskerville, Merriweather, and Ubuntu. When you select a font, you’ll immediately see your site in the preview with that font applied. For most font choices, you can also change the size and style of the text.

Have you always wanted your headers to be rendered in Fondamento italic? How about Cinzel bold? Now they’re just a few clicks away, for every site on

If you are still looking for that perfect typeface and Google Fonts aren’t for you, all the Typekit commercial fonts are still…

View original post 51 more words

Visualizing Your SaaS App’s Monthly Active Users Broken Down by Signup Cohort

Matt Mazur

This week at Automattic I’ve been helping with a tool that will allow us to visualize the number of active users each month broken down by when those users signed up for an account. I think this type of chart and what you can learn from it are incredibly valuable so I wanted to show you all how to quickly create one for your own service.

Here’s an example of what this type of chart looks like courtesy of Buffer’s Joel Gascoigne:

What I really like about it is that for each month you can see how many active users there are and when those users signed up for an account. This not only gives you a sense how long ago your active users signed up…

View original post 326 more words

A Step by Step Backpropagation Example

Matt Mazur


Backpropagation is a common method for training a neural network. There is no shortage of papers online that attempt to explain how backpropagation works, but few that include an example with actual numbers. This post is my attempt to explain how it works with a concrete example that folks can compare their own calculations to in order to ensure they understand backpropagation correctly.

If this kind of thing interests you, you should sign up for my newsletter where I post about AI-related projects that I’m working on.

Backpropagation in Python

You can play around with a Python script that I wrote that implements the backpropagation algorithm in this Github repo.


For this tutorial, we’re going to use a neural network with two inputs, two hidden neurons, two output neurons. Additionally, the hidden and output neurons will include a bias.

Here’s the basic structure:

neural_network (7)

In order to have…

View original post 1,718 more words

Simple production-time debugging in Django – and better error handling

Sachin Joglekar's blog

We all know how amazingly exhaustive Django debugging can be, when you enable the Debug = True option in your settings file. It gives you a full traceback, complete with the str-ed versions of local variables. However, this post deals with the production-time scenario, when you might encounter an un-anticipated error in your code. Such errors can arise out of various reasons, such as-

1. A kind of input you did not anticipate.

2. A logical error of some kind, usually occuring out of boundary cases (like a sqrt function coming across a negative value)

3. (Worst kind) Some type of low-probability scenario you forgot to test.

In such cases, Django serves the 500 status code along with a “Server Error” message. All this is good, and if your application doesnt have any state variables that may get screwed, or low-probability errors aren’t that important to you, then you…

View original post 784 more words