Generate a new Elixir project using mix
and add cowboy
and plug
as dependencies in mix.exs
:
defp deps do
[
{:cowboy, "~> 1.0.0"},
{:plug, "~> 0.8.1"}
]
end
$ brew update && brew doctor # Repeat, until you've done *all* the Dr. has ordered! | |
$ brew install postgresql # You'll need postgres to do this... you may also need to 'initdb' as well. Google it. | |
$ brew install elixir | |
$ mix local.hex # Answer y to any Qs | |
$ createuser -d postgres # create the default 'postgres' user that Chris McCord seems to like -- I don't create mine w/a pw... | |
# Use the latest Phoenix from here: http://www.phoenixframework.org/docs/installation -- currently this is 1.0.3 | |
# ** Answer y to any Qs ** | |
$ mix archive.install https://github.com/phoenixframework/phoenix/releases/download/v1.0.3/phoenix_new-1.0.3.ez |
defmodule Math do | |
def add(x, y) do | |
x + y | |
end | |
def add(x, y, z) do | |
x + y + z | |
end |
Generate a new Elixir project using mix
and add cowboy
and plug
as dependencies in mix.exs
:
defp deps do
[
{:cowboy, "~> 1.0.0"},
{:plug, "~> 0.8.1"}
]
end
$ ls | |
other_thing.exs | |
thing.exs | |
$ elixir thing.exs | |
calling other | |
other thing! | |
hooray! |
while true; do sleep 1; curl http://www.google.com; echo -e '\n\n\n\n'$(date);done |
#!/bin/bash | |
# | |
# Init file for Redis server | |
# | |
# chkconfig: - 98 02 | |
# description: Persistent key-value db | |
# | |
# processname: redis | |
# config: /etc/redis.conf | |
# pidfile: /var/run/redis.pid |
This playbook has been removed as it is now very outdated. |
I have always struggled with getting all the various share buttons from Facebook, Twitter, Google Plus, Pinterest, etc to align correctly and to not look like a tacky explosion of buttons. Seeing a number of sites rolling their own share buttons with counts, for example The Next Web I decided to look into the various APIs on how to simply return the share count.
If you want to roll up all of these into a single jQuery plugin check out Sharrre
Many of these API calls and methods are undocumented, so anticipate that they will change in the future. Also, if you are planning on rolling these out across a site I would recommend creating a simple endpoint that periodically caches results from all of the APIs so that you are not overloading the services will requests.
module Ohm | |
module Expiring | |
def self.included(base) | |
base.send(:extend, ClassMethods) | |
end | |
module ClassMethods | |
def expire(ttl) | |
@@expire = ttl.to_i | |
end |
# autoload concerns | |
module YourApp | |
class Application < Rails::Application | |
config.autoload_paths += %W( | |
#{config.root}/app/controllers/concerns | |
#{config.root}/app/models/concerns | |
) | |
end | |
end |