This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#This Rake task fires every 5 minutes, checking for a particular symptom which signals a critical problem. | |
#If it finds it, it calls Patrick's cell phone. | |
#This could probably be done with PagerDuty or similar, but since I already had a Twilio account... | |
desc "Emails sysadmin if reminders are not going out" | |
task :check_for_emergency => :environment do | |
begin | |
had_emergency = Reminder.check_for_emergency! #Application code checks for a symptom of a critical problem. | |
if (had_emergency) | |
twimlet_url = "http://twimlets.com/message?Message%5B0%5D=Appointment%20reminder%20reminders%20in%20processing%20or%20scheduled.%20Appointment%20reminder%20reminders%20in%20processing%20or%20scheduled.%20Appointment%20reminder%20reminders%20in%20processing%20or%20scheduled." |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
cd /tmp | |
curl -o git-2.2.1.tar.gz "https://www.kernel.org/pub/software/scm/git/git-2.2.1.tar.gz" | |
curl -o git-2.2.1.tar.sign "https://www.kernel.org/pub/software/scm/git/git-2.2.1.tar.sign" | |
# if you want to verify the tar signature | |
gpg --keyserver hkp://keys.gnupg.net --recv-keys 96AFE6CB | |
gunzip git-2.2.1.tar.gz | |
gpg --verify git-2.2.1.tar.sign |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#In Golang | |
package main | |
import ( | |
"fmt" | |
"regexp" | |
) | |
func main() { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#The task is replacing the port number in the URL string | |
//in golang | |
import "fmt" | |
import "strings" | |
func main() { | |
url := "http://localhost:8080/foo/bar" | |
fmt.Println(strings.Replace(url, "8080", "8181", -1)) | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// The wrong way to do things: | |
for { | |
switch { | |
case <- channelA: | |
doSomething() | |
case <- channelB: | |
doSomethingElse() | |
default: | |
// Do nothing. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* robotMaze.js | |
* | |
* The blue key is inside a labyrinth, and extracting | |
* it will not be easy. | |
* | |
* It's a good thing that you're a AI expert, or | |
* we would have to leave empty-handed. | |
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
hoge = "これは例である。" | |
puts hoge[1] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#This solves the maze using regular expressions, because I am too | |
#lazy to worry about arrays, darn it. It is inefficient as heck and designed | |
#purely to demonstrate perversion of sound CS principals. | |
# | |
# Code by Patrick McKenzie, 2010. I release this work unto the public domain. | |
class Maze | |
def initialize(maze_string) | |
@width = maze_string.split("\n")[0].length #width of maze in characters | |
@guts = maze_string.gsub("\n", "") #maze as a flat string -- no newlines |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def open_flash_chart(height, width, data_url, div_name = nil) | |
options = {} | |
options[:height] = height | |
options[:width] = width | |
options[:swf_file_name] = "flash/open-flash-chart.swf" | |
options[:div_name] = div_name unless div_name.nil? | |
open_flash_chart_object_from_hash(data_url, options) | |
end |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// When I was working on our React/Flummox app I got to the point where, per the docs, I had ~100 lines of code | |
// which were substantially predictable boilerplate, so I used some JS metaprogramming to condense them by 80%. | |
// Flummox docs: http://acdlite.github.io/flummox | |
// I use underscore.js below for utility but you can also just do a for loop. | |
class AppFlux extends Flux { | |
constructor() { |
OlderNewer