Skip to content

Instantly share code, notes, and snippets.

View pedro's full-sized avatar

Pedro Belo pedro

  • San Francisco, CA
  • X @ped
View GitHub Profile
+++ b/app/graph/types/day_of_the_week_enum.rb
@@ -0,0 +1,10 @@
+DayOfTheWeekEnum = GraphQL::EnumType.define do
+ name "Day of the week"
+ value("MONDAY", "Monday", value: 1)
+ value("TUESDAY", "Tuesday", value: 2)
+ value("WEDNESDAY", "Wednesday", value: 3)
+ value("THURSDAY", "Thursday", value: 4)
+ value("FRIDAY", "Friday", value: 5)
+ value("SATURDAY", "Saturday", value: 6)
@pedro
pedro / parsing.html
Created October 26, 2016 23:42
Testing Ruby's Oj json parser with https://github.com/nst/JSONTestSuite
<!DOCTYPE html>
<HTML>
<HEAD>
<TITLE>JSON Parsing Tests</TITLE>
<LINK rel="stylesheet" type="text/css" href="style.css">
<META charset="UTF-8">
</HEAD>
@pedro
pedro / RCTPushNotificationManager.h
Created July 12, 2016 18:02
Push Notifications error patch for React Native in iOS
// Push notification manager from react-native 0.28, plus patch to handle errors correctly:
// https://github.com/facebook/react-native/pull/4277
/**
* Copyright (c) 2015-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
@pedro
pedro / init.r
Last active August 29, 2015 14:22
R + Redis on Heroku
# used by the R buildpack to install dependencies:
# https://github.com/virtualstaticvoid/heroku-buildpack-r
install.packages("rredis", dependencies = TRUE)
@pedro
pedro / enqueue.r
Last active August 29, 2015 14:22
Running redis-based workers in R on Heroku
# same code used in https://gist.github.com/pedro/f931e8cd20b5770b6780
# only using doRedis instead of doParallel
library(foreach)
library(doRedis)
redis_url <- Sys.getenv("REDIS_URL")
host <- gsub("redis://.*@(.+):.*", "\\1", redis_url)
pass <- gsub("redis://.*:(.+)@.*", "\\1", redis_url)
port <- as.integer(gsub(".*:(.*)$", "\\1", redis_url))
registerDoRedis("jobs", host=host, port=port, password=pass)
@pedro
pedro / init.r
Last active August 29, 2015 14:22
Running R code in parallel on Heroku
# used by the R buildpack to install dependencies:
# https://github.com/virtualstaticvoid/heroku-buildpack-r
install.packages("foreach", dependencies = TRUE)
install.packages("doParallel", dependencies = TRUE)
irb(main):018:0> RestClient::VERSION
=> "1.7.3"
irb(main):019:0> RestClient.get("http://test-affinity.herokuapp.com/")
=> "1"
irb(main):020:0> RestClient.get("http://test-affinity.herokuapp.com/").to_i
=> 200
irb(main):021:0> RestClient.get("http://test-affinity.herokuapp.com/").class
=> String
irb(main):022:0> RestClient.get("http://test-affinity.herokuapp.com/") == "1"
=> true
@pedro
pedro / jack-white-guac.md
Last active August 29, 2015 14:14
Jack White's guacamole recipe

Jack White's guacamole recipe

Recently the tour rider for a Jack White performance was made public, and it contained a recipe for guacamole intended to be made for the artist.

Ingredients

  • 8x large ripe Haas avocados
  • 4x vine-ripened tomatoes (diced)
  • ½ yellow onion finely chopped
  • 4x Serrano pepper (de-veined and chopped)
@pedro
pedro / s3-performance.md
Created November 13, 2014 21:46
Maximizing S3 Peformance

Maximizing S3 Peformance

  • 137% increase in AWS usage in the last year

  • Factors to keep in mind when picking a region

    • Performance: Proximity to users and to other resources in AWS
    • Compliance
    • Cost
  • Naming scheme is the most important thing

@pedro
pedro / netflix-maintaining-resilient-front-door.md
Created November 13, 2014 01:06
Maintaining a resilient front door at massive scale, from Netflix

Maintaining a resilient front door at massive scale, from Netflix

  • Netflix is responsible for about 1/3 of downstream traffic in NA

  • Responsible team in the company is called "edge engineering"

    • Apart from resiliency/scaling, also cares about high velocity product innovation and real time health insights
  • Basic architecture:

    • end-user devices make requests to ELBs, which delegates to zuul, which routes to origin servers serving APIs