- Like C, but with garbage collection, memory safety, and special mechanisms for concurrency
- Pointers but no pointer arithmetic
- No header files
- Simple, clean syntax
- Very fast native compilation (about as quick to edit code and restart as a dynamic language)
- Easy-to-distribute executables
| #!/bin/bash | |
| # Make a php copy of any html files | |
| for value in $1/*.html | |
| do | |
| cp $value $1/$( basename -s .html $value ).php | |
| done |
| gem 'stackprof', require: false | |
| gem 'ruby-prof', require: false |
| # Calculate the nth Fibonacci number, f(n). Using invariants | |
| def fibo_tr(n, acc1, acc2) | |
| if n == 0 | |
| 0 | |
| elsif n < 2 | |
| acc2 | |
| else | |
| return fibo_tr(n - 1, acc2, acc2 + acc1) | |
| end | |
| end |
Grout is an HTTP-based front proxy that delegates portions of a url path space to other web applications. This allows for a web application to be composed of a collection of micro-services.
Beyond routing based on url, language or ip-based region, Grout provides downstream services with a unique per-request X-Grout-Id and a per-session X-Grout-Session header for simple cross-service sessions.
Presently 99designs.com is composed of 2-3 different web applications. Varnish sits in front of these web applications and dispatches requests to the appropriate backend based on some complicated regular expressions and a large chunk of complicated VCL.
The purpose of this gem is to consume the JSON that KISSmetrics exports to an S3 bucket, and transform it in a variety of useful ways.
The core features are:
- JSON compiler : Aggregates all KISSmetrics JSON files in a directory, into a single (nonstandard) file.
- JSON to JSON converter : Converts a nonstandard JSON file into standard format.
- JSON to CSV converter : Converts a nonstandard JSON file into a CSV file, where each row is an event/property/alias.
- Reimporter : Takes a nonstandard JSON file, and an API key, and sends the data in the JSON file to the product using the KMTS gem.
Website:
http://prediction.io
Install Guide:
http://docs.prediction.io/installation/install-predictionio-on-linux.html
| require 'fiddle' | |
| class GVL | |
| handle = Fiddle::Handle::DEFAULT | |
| address = handle['rb_thread_blocking_region'] | |
| func = Fiddle::Function.new address, [Fiddle::TYPE_VOIDP, | |
| Fiddle::TYPE_VOIDP, | |
| Fiddle::TYPE_VOIDP, | |
| Fiddle::TYPE_VOIDP], Fiddle::TYPE_VOIDP |
| require "rspec/core/formatters/progress_formatter" | |
| class ApplauseFormatter < RSpec::Core::Formatters::ProgressFormatter | |
| def initialize(output) | |
| super(output) | |
| unless File.exists? "/tmp/applause.mp3" | |
| p "Downloading applause for awesomeness" | |
| system "wget http://www.soundjay.com/human/applause-1.mp3 -O /tmp/applause.mp3" | |
| end | |
| end |