The good old PhantomJS times are over. The project is not maintained anymore and it is recommended to switch over to Chrome headless. Just run a local Selenium standalone server:
$ java -jar Sites/selenium-server-standalone-3.4.0.jar
using System.Text; | |
/* This code provided by Bruce Jackson (brucejackson.info) and is | |
* provided "AS IS" with no warranties, expressed or implied, as to | |
* its effectivness or use. | |
* | |
* User agrees to edit the code to meet their partiular use and | |
* understands that this code has not been fully | |
* tested in a production environment. | |
* |
# The cleanest way is to not use the system python at all (like rbenv for Ruby) | |
brew install python | |
pip2 install --upgrade pip setuptools | |
pip2 install --upgrade python-openstackclient |
This will create a proxy server in whatever your availability zone your VPC is in. For me, that's us-east-1b
. For you, that may be something different. Steps 10+ should more or less work regardless of your provider since those steps cover the setup and configuration of TinyProxy.
# | |
# All information at your chilly fingertips. | |
# | |
# Authors: | |
# Tom Frost <tom@frosteddesign.com> | |
# | |
# Screenshots: | |
# http://i.tomfro.st/U1Kov.png | |
# |
When the directory structure of your Node.js application (not library!) has some depth, you end up with a lot of annoying relative paths in your require calls like:
const Article = require('../../../../app/models/article');
Those suck for maintenance and they're ugly.
#!/bin/sh | |
### | |
# SOME COMMANDS WILL NOT WORK ON macOS (Sierra or newer) | |
# For Sierra or newer, see https://github.com/mathiasbynens/dotfiles/blob/master/.macos | |
### | |
# Alot of these configs have been taken from the various places | |
# on the web, most from here | |
# https://github.com/mathiasbynens/dotfiles/blob/5b3c8418ed42d93af2e647dc9d122f25cc034871/.osx |
The MCP23017 is an I/O expander chip. It has 16 GPIO pins which you can control using an I2C interface using two pins from a Raspberry Pi, plus a power source and sink (which can also come from the Pi). It's not quite as simple as directly controlling the Pi's GPIO pins, but it's not complicated, either.
You need to install i2c-tools
, which is probably in your distribution's package manager. You also need a kernel with I2C support; you might need to modprobe i2c-dev
. It would presumably be possible to do without either of these things, and bitbang the I2C protocol over GPIO, but I don't understand the protocol well enough to try.
On pin numbering: if you like, you can refer to the datasheet for the MCP23017. There's a small dot in one corner of the chip, with a semi-circular cut-out at that end. The pin near
http { | |
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=one:8m max_size=3000m inactive=600m; | |
proxy_temp_path /var/tmp; | |
include mime.types; | |
default_type application/octet-stream; | |
sendfile on; | |
keepalive_timeout 65; | |
gzip on; | |
gzip_comp_level 6; |