Skip to content

Instantly share code, notes, and snippets.


Alex DeLorenzo alexdelorenzo

View GitHub Profile
alexdelorenzo /
Created Apr 20, 2018 — forked from Schnouki/
OpenVPN for a single application using network namespaces -- helper scripts
#!/usr/bin/env zsh
# Initialize VPN
sudo vpnns up
sudo vpnns start_vpn
# Popcorn time!
sudo ip netns exec frootvpn sudo -u $USER popcorntime
# Cleanup

Why Python is Making a Comeback

Since the advent of nodeJS, you may have experienced something called Javascript-fatigue: the natural exhaustion one feels in response to the influx of new Javascript modules and developers putting Javascript everywhere - your phone, your car, your toaster - instead of just the web. For a while, it seemed that Javascript would eat the world.

However, over the past few years, an underdog has silently established itself as a cogent solution in both mainstream and niche spaces. Not only has it proved its mettle seemingly overnight, developers are adopting it fast.

Growth of Popular Programming Languages Over a Six Year Period - Courtesy of StackOverflow

Enter Python. A dynamic, strongly-typed programming language with a well-deserved reputation of having a beautifully concise, yet expressive, syntax. One might even say that Python code is executable pseudocod

View unfollow-pinterest.userscript.js
// ==UserScript==
// @name Pinterest Autounfollow
// @namespace
// @version 0.1
// @description Autofollow
// @author Alex DeLorenzo
// @match
// @match*
// @require
// @grant none
View Ansible Let's Encrypt Nginx setup
Ansible playbook to setup HTTPS using Let's encrypt on nginx.
The Ansible playbook installs everything needed to serve static files from a nginx server over HTTPS.
The server pass A rating on [SSL Labs](
To use:
1. Install [Ansible](
2. Setup an Ubuntu 16.04 server accessible over ssh
3. Create `/etc/ansible/hosts` according to template below and change to your domain
4. Copy the rest of the files to an empty directory (`playbook.yml` in the root of that folder and the rest in the `templates` subfolder)
alexdelorenzo / wordpress_dynamic_dropdown_menu.js
Created Feb 12, 2017
Theme agnostic dynamic drop down menu for Wordpress
View wordpress_dynamic_dropdown_menu.js
// Copyright Alex DeLorenzo 2017
// Dynamic Drop Down Menu for Wordpress
// Theme agnostic.
// Usage:
// 1) Embed this script in your page.
alexdelorenzo /
Last active Sep 28, 2016
HtmlWrapper -> Fast drop in replacement for BeautifulSoup
from functools import lru_cache
from lxml.html import HtmlElement, fromstring
from lxml.etree import XPath
BS4_TYPES = "bs4.element.Tag", "bs4.BeautifulSoup"
class HtmlWrapper(object):
from functools import lru_cache
from lxml.html import HtmlElement, Element, fromstring
from lxml.etree import XPath
from bs4 import BeautifulSoup, Tag
class BeauToLxml(object):
An adapter for a small subset of the BeautifulSoup4 API
In [26]: import requests
In [27]: import bs4
In [29]: url = ""
In [30]: response = requests.get(url)
In [31]: bs_content = bs4.BeautifulSoup(response.content)
alexdelorenzo / gist:9459232
Last active Aug 29, 2015
semicolon's okcupid
View gist:9459232
"""Import the modules"""
In [1]: from OKQuestions import OKQuestions as OKQS
In [2]: from bs4 import BeautifulSoup as BS
In [3]: from OKSession import OKSession as OKS
In [4]: from OKProfile import OKProfile as OKP
alexdelorenzo /
Last active Dec 24, 2015
pyglet front end for game of life, runs in pypy
from gol import Universe as U
import pyglet
# too lazy to make into a class, just pulled all functions under pyglet_way()
def pyglet_way():
x, y = 150, 150
u = U(x, y)
You can’t perform that action at this time.