Skip to content

Instantly share code, notes, and snippets.

View chromedriver.rb
class Chromedriver < Formula
desc "Tool for automated testing of webapps across many browsers"
homepage "https://sites.google.com/a/chromium.org/chromedriver/"
url "https://chromedriver.storage.googleapis.com/2.34/chromedriver_mac64.zip"
version "2.34"
sha256 "bc4ad903c1f85ed328726a9914fbec9d539be8eda0a5489e8dc5dd08123d28fc"
bottle :unneeded
def install
View run phoenix on amazon linux.sh
# app deps
sudo yum install git
# erlang deps
sudo yum groupinstall "Development Tools"
sudo yum install ncurses-devel openssl-devel
# erlang
wget http://erlang.org/download/otp_src_20.2.tar.gz
tar -zxvf otp_src_20.2.tar.gz
@mertonium
mertonium / vanilla_get_json.js
Last active May 15, 2020
When you want a promisified version of jQuery's $.getJSON function
View vanilla_get_json.js
/*
* Usage:
* getJSON("https://jsonplaceholder.typicode.com/comments", { postId: 1})
* .then(data => {
* console.log(data);
* });
*/
function getJSON(url, qs_params) {
function buildQueryString(params) {
@mertonium
mertonium / sf_endpoint_creation.rb
Last active Aug 29, 2015
Blocks of ruby code that can add the Citygram-SF endpoints to citygram.org
View sf_endpoint_creation.rb
Publisher.create! do |pub|
pub.title = "Street Tree List"
pub.endpoint = "https://citygram-sf-registries.herokuapp.com/tree-planting"
pub.active = true
pub.visible = true
pub.city = "San Francisco"
pub.icon = "leaf-collection.png"
pub.state = "CA"
pub.description = "List of DPW maintained street trees including: Planting date, species, and location"
pub.tags = ["san-francisco","san francisco","sf","trees"]
@mertonium
mertonium / Gemfile
Last active Aug 29, 2015
Nokogiri custom pseudo selector
View Gemfile
source 'https://rubygems.org'
gem "nokogiri", "1.6.1"
gem "rspec", "~>2.14.0"
View command_line_example.rb
:001 > require 'feedjira'
:002 > require './janky_parser.rb'
:003 > feed_url = 'https://gist.githubusercontent.com/mertonium/11087612/raw/b9402604180704d41614ddb92e1f3cdd9c09b273/janky_feed.xml'
# Add our custom parser to the top of the stack of feeds Feedjira uses.
:004 > Feedjira::Feed.add_feed_class Feedjira::Parser::Versa::JankyPublisher
# Fetch and parse our example feed
:005 > feed = Feedjira::Feed.fetch_and_parse feed_url
:006 > feed.class
=> Feedjira::Parser::Versa::JankyPublisher # Sweet! Our parser was chosen to parse the feed.
@mertonium
mertonium / custom_rss_parsers_with_feedjira.md
Last active Aug 29, 2015
Write up of how we make sure are parser work across the ridiculous world of RSS.
View custom_rss_parsers_with_feedjira.md

Custom Feed Parsers in a Rails App with Feedjira

Note: Just before I started writing this, I noticed that the Feedzirra gem had 1) changed it's name to Feedjira (explanation here) and 2) had pushed a bunch of updates. Everthing I talk about below worked on 0.2.4, and appears to work just fine on 1.2.0. Also, looking at the CHANGELOG, none of the updates should mess with what I talk about here.

Web feeds (RSS, Atom, etc. - but I tend to call them all "RSS feed"), while sometimes viewed as unfashionable/antiquated, are ubiquitous among web publishers. When you are building a system that needs to know when new content is published, RSS feeds are a perfect low-bar method for doing programmatically discovering new content.

In the Ruby world, Feedjira (formerly, Feedzirra) is the [most popular tool](https://www.

@mertonium
mertonium / stopwords.txt
Created Nov 12, 2013
Bunch of stopwords
View stopwords.txt
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
@mertonium
mertonium / snippet.html
Last active Dec 22, 2016
The Featured Perspective javascript snippet.
View snippet.html
<script data-electnext id="enxt-script" type="text/javascript">
//<![CDATA[
var _enxt = _enxt || [];
_enxt.push(['set_account', 'YOUR_API_KEY']);
_enxt.push(['set_article', 'YOUR_CMS_SPECIFIC_ARTICLE_ID']);
_enxt.push(['setup_featured_perspective']);
(function() {
var enxt = document.createElement('script'); enxt.type = 'text/javascript'; enxt.async = true;
enxt.src = '//versahq.com/api/v1/enxt.js'; var k = document.getElementById('enxt-script');
@mertonium
mertonium / deploy.rb
Last active Oct 10, 2015
Capistrano task to notify Ratchet.io about deployment
View deploy.rb
# I am trying out Ratchet.io and I want to add their deployment notification to my
# normal capistrano deployment process. Here is my first working attempt.
# Add this task to your deploy.rb
namespace :rollbar do
task :notify, :roles => [:web] do
set :revision, `git log -n 1 --pretty=format:"%H"`
set :local_user, `whoami`
set :rollbar_token, YOUR_ACCESS_TOKEN
rails_env = fetch(:rails_env, 'production')
You can’t perform that action at this time.