Firefox preferences in dotfiles with Vimperator

I'm a big fan of syncing my preferences with my dotfiles Git repository. It lets me sync my .vimrc, my .bashrc, and more. Vimperator is a Firefox extension that puts Vim-style keybindings into the browser (much like Chrome's Vimium), but it has another great feature: the .vimperatorrc file.

If you're a hardcore Firefox user, you've likely seen about:config. If you type that into your Firefox address bar, you'll see a ton of options and flags. Some of its settings are in Firefox's user-facing settings, like browser.startup.homepage. Other options are hidden from the menus, like browser.tabs.closeButtons to control where the tab close buttons appear. You can even use it to configure your extensions!

Vimperator's .vimperatorrc lets you configure these settings. For example, to set your browser's homepage, add this to ~/.vimperatorrc:

set! browser.startup.homepage=https://duckduckgo.com/

You can check out my Vimperator config if you're looking for a huge slew of options; I've found a lot of really helpful tweaks to make Firefox my own.

How many guests on DevChat.tv podcasts are women?

In short: about 11% of all guests on the DevChat.tv podcasts are women, and only 8% of all episodes had a female guest.

I was listening to the JavaScript Jabber podcast and I realized that everyone I heard talking was a man for several episodes. I wondered: how many of their guests are women?

I discovered that JavaScript Jabber is part of a larger network of podcasts called DevChat.tv, where they talk to loads of programmers about various topics from freelancing to Ruby. I decided to look at that larger set of podcast episodes.

I'm doing this post for two reasons. First, I wanted to try my hand at number-crunching some data. Second, and more importantly, I care about improving diversity in tech and think data is helpful. I don't expect this post to do much on either front, so contact me if you have suggestions!

The results and my interpretation

Let me get straight to the results:

  • There are a total of 573 episodes, 47 (8.2%) of which contain at least one woman
  • There were 371 unique guests, 39 (10.5%) of which were women
  • There were 435 total guests, 49 (11.3%) of which were women

Tracy Chou made a big 7,267-engineer spreadsheet with data from lots of companies, big and small. That spreadsheet shows that 15.3% of the industry is female.

DevChat.tv has smaller percentage of women than that. I was surprised that it was lower than the industry average; I expected it to be about the industry average. I was disheartened—it's too bad that women's voices are literally less heard.

I'd encourage the folks at DevChat to try to find more female guests!

The method

In short, I wrote a little script, and you can see it here.

Fun fact: DevChat.tv has a secret API! You can get a list of shows as JSON, among other things. Each show has classic things like titles and permalinks, even everybody's Picks (a staple on the show where guests talk about cool things they've found that week). They also have the names of every guest per episode, which I used for this project.

Once I had the list of guests, I ran them through the Gender Detector Ruby library. It returns "male", "female", or "andy" (for androgynous or unknown). I looked at those cases manually (there were only 29) and hard-coded them into my script.

From there, it was a simple iteration through every guest in every episode. I'm no Ruby expert so I doubt I did things the "Ruby way", but it worked and I got my data!

This was a quick way to dip my toes into data crunching. It was both fun from a coding perspective and interesting from a real life/diversity perspective!

Thoughts on CoffeeScript after ECMAScript 6

Back in 2012, I wrote "I love CoffeeScript", a short post about how I thought that CoffeeScript was a better language than JavaScript. I hadn't changed my opinion much since then; I still thought it was a great language and far more pleasant than writing JavaScript.

Then I decided to give ECMAScript 6 a try (using 6to5), and it changed the game. ES6 isn't released yet, but it's already really nice to use.

It takes so many of the pain points out of JavaScript, fixing weird variable scoping, adding simpler anonymous functions with the => syntax, implementing classes, adding const...while I don't think the next version of JavaScript will be the perfect language, I feel that ES6 modernizes the language.

ES6 obsoleted CoffeeScript for me in many ways. It took most of CoffeeScript's features like classes, array comprehensions, and default parameters. ES6 also has a bunch of new features that will make for even better JavaScript. If I can use a language with all of the same features and much more, why not upgrade?

CoffeeScript still has a nicer syntax. The JavaScript semicolons flame wars will rage on, but we'll always have ugly semicolons in JavaScript. We'll still have lots of lines ending in });. But I'm willing to bite that bullet for the betterness of ES6.

So many of the new features seem to draw inspiration from CoffeeScript. I doubt we'd have the pleasantries of ES6 without CoffeeScript. So while I may be slowly weaning myself off of CoffeeScript, I'll still be living with its features in ES6.

Disable the beer emoji in Homebrew

I'm like almost every other programmer who uses OSX: I love the Homebrew package manager. When I use Linux, I wish I had something as good (and I'm afraid to try Linuxbrew for some reason). It's a delight to use.

There was a very minor annoyance that I had with Homebrew: it displays a beer emoji in a few places. This wasn't a big bother, but I found out that you can disable it! Add the following to your bashrc (or to your zshrc, as the case may be):

export HOMEBREW_NO_EMOJI=1

This environment variable will, as you might expect, disable emoji in Homebrew! Nice to know that I can fix a miniscule annoyance.

The Internet no longer a wild west

From a Wired article:

"There was a brief moment in the tech market from 1995 to now where anyone could simply attach a server to the internet and be in business," Wilson writes in response to a commenter. "That moment is coming to an end."

I'm glad I grew up in a time when the Internet was kind of a "wild west"; it didn't feel ruled by corporations or governments. Sad to see it losing some of that.