- adomokos/light-service
- Series of Actions with an emphasis on simplicity.
- collectiveidea/interactor
- Interactor provides a common interface for performing complex interactions in a single request. (Alert: this project seems to be inactive).
- cypriss/mutations
- Compose your business logic into commands that sanitize and validate input.
- orgsync/active_interaction
- Manage application specific business logic.
#!/usr/bin/env ruby | |
# Extracted from traceroute gem + checking the presence of views as well | |
require_relative './config/environment.rb' | |
class Traceroute | |
def initialize(app) | |
@app = app | |
end |
# Shamelessly stolen from https://gist.github.com/ileitch/1459987 | |
module InterruptibleSleep | |
def interruptible_sleep(seconds) | |
@sleep_check, @sleep_interrupt = IO.pipe | |
IO.select([@sleep_check], nil, nil, seconds) | |
end | |
def interrupt_sleep | |
@sleep_interrupt.close if @sleep_interrupt |
Hi Nicholas,
I saw you tweet about JSX yesterday. It seemed like the discussion devolved pretty quickly but I wanted to share our experience over the last year. I understand your concerns. I've made similar remarks about JSX. When we started using it Planning Center, I led the charge to write React without it. I don't imagine I'd have much to say that you haven't considered but, if it's helpful, here's a pattern that changed my opinion:
The idea that "React is the V in MVC" is disingenuous. It's a good pitch but, for many of us, it feels like in invitation to repeat our history of coupled views. In practice, React is the V and the C. Dan Abramov describes the division as Smart and Dumb Components. At our office, we call them stateless and container components (view-controllers if we're Flux). The idea is pretty simple: components can't
stats = Sidekiq::Stats.new | |
stats.queues | |
stats.enqueued | |
stats.processed | |
stats.failed |
var E_PREFIX_RATE = 0.25; | |
// All of our word lists: | |
var _word_lists = { | |
verb : [ | |
"implement", "utilize", "integrate", "streamline", "optimize", "evolve", "transform", "embrace", | |
"enable", "orchestrate", "leverage", "reinvent", "aggregate", "architect", "enhance", "incentivize", | |
"morph", "empower", "envisioneer", "monetize", "harness", "facilitate", "seize", "disintermediate", |
module Rack | |
class Request | |
def scheme | |
if @env['HTTPS'] == 'on' | |
'https' | |
elsif @env['HTTP_X_FORWARDED_SSL'] == 'on' | |
'https' | |
elsif @env['HTTP_X_FORWARDED_PROTO'] | |
@env['HTTP_X_FORWARDED_PROTO'].split(',')[0] | |
else |