Skip to content

Instantly share code, notes, and snippets.


‪“‬In what way is JS any more maintainable than CSS? How does writing CSS in JS make it any more maintainable?”

‪Happy to chat about this. There’s an obvious disclaimer that there’s a cost to css-in-js solutions, but that cost is paid specifically for the benefits it brings; as such it’s useful for some usecases, and not meant as a replacement for all workflows. ‬

‪(These conversations always get heated on twitter, so please believe that I’m here to converse, not to convince. In return, I promise to listen to you too and change my opinions; I’ve had mad respect for you for years and would consider your feedback a gift. Also, some of the stuff I’m writing might seem obvious to you; I’m not trying to tell you if all people of some of the details, but it might be useful to someone else who bumps into this who doesn’t have context)‬

So the big deal about css-in-js (cij) is selectors.

joepie91 /
Last active Aug 27, 2020
Why you probably shouldn't use a wildcard certificate

Recently, Let's Encrypt launched free wildcard certificates. While this is good news in and of itself, as it removes one of the last remaining reasons for expensive commercial certificates, I've unfortunately seen a lot of people dangerously misunderstand what wildcard certificates are for.

Therefore, in this brief post I'll explain why you probably shouldn't use a wildcard certificate, as it will put your security at risk.

A brief explainer

It's generally pretty poorly understood (and documented!) how TLS ("SSL") works, so let's go through a brief explanation of the parts that are important here.

The general (simplified) idea behind how real-world TLS deployments work, is that you:

Mevrael / WebSocketController.php
Created Mar 14, 2017
Laravel + WebSocket (Ratchet/ReactPHP) integration
View WebSocketController.php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Cookie;
use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Facades\Session;
use Ratchet\WebSocket\Version\RFC6455\Connection;
View gist:9dc43046657d7b3fa7db842913eb60f9
server {
listen 80;
rewrite ^ https://$host$request_uri? permanent;
server {
listen 443 ssl;
joepie91 /
Last active May 6, 2020
The Promises FAQ - addressing the most common questions and misconceptions about Promises.
# Put this in your .zshrc or .bashrc file
# Install `tree` first — brew install tree
function t() {
# Defaults to 3 levels deep, do more with `t 5` or `t 1`
# pass additional args after
tree -I '.git|node_modules|bower_components|.DS_Store' --dirsfirst --filelimit 15 -L ${1:-3} -aC $2
joshmanders /
Last active Apr 24, 2016
My Docker Command

My Docker Command

When working with docker toolbox, sometimes I type get tripped up trying to type docker-machine env default and accidentally type docker machine env default instead. This bash script is a helper to allow you to do just that.

Put it in your $PATH and chmod +x my-docker. Then create an alias in your profile with alias docker="my-docker"

Now when you type docker machine env this will automatically proxy anything after machine to docker-machine.

Same goes for docker compose up proxies to docker-compose up.

bcoe /
Last active Jul 21, 2020

npm Users By Downloads (

npm users sorted by the monthly downloads of their modules, for the range May 6, 2018 until Jun 6, 2018.

Metrics are calculated using top-npm-users.

# User Downloads
joepie91 /
Last active Sep 14, 2020
Getting started with Node.js

"How do I get started with Node?" is a commonly heard question in #Node.js. This gist is an attempt to compile some of the answers to that question. It's a perpetual work-in-progress.

And if this list didn't quite answer your questions, I'm available for tutoring and code review! A donation is also welcome :)

Setting expectations

Before you get started learning about JavaScript and Node.js, there's one very important article you need to read: Teach Yourself Programming in Ten Years.

Understand that it's going to take time to learn Node.js, just like it would take time to learn any other specialized topic - and that you're not going to learn effectively just by reading things, or following tutorials or courses. _Get out there and build things!

thomasfr / Git push deployment in 7 easy
Last active Aug 15, 2020
7 easy steps to automated git push deployments. With small and configurable bash only post-receive hook
View Git push deployment in 7 easy
You can’t perform that action at this time.