Skip to content

Instantly share code, notes, and snippets.

@rektide
rektide / rabbit.pb
Created Mar 18, 2014
rabbitmq one-act
View rabbit.pb
---
- hosts: all
vars_prompt:
vhost: "Vhost name (optional)"
user: "User"
pw: "Optional password"
vars:
config_priv: ".*"
read_priv: ".*"
write_priv: ".*"
@rektide
rektide / pg.pb
Last active Aug 29, 2015
Ansible Postgres db creation one-act
View pg.pb
---
- hosts: all
sudo: True
sudo_user: postgres
vars:
super_priv: "ALL"
ro_priv: "SELECT"
vars_prompt:
db: "Database"
pw: "Password for user"
@rektide
rektide / temporal.planning.aspects.md
Last active Aug 29, 2015
Aspects of Temporal Planning
View temporal.planning.aspects.md

Robotics

  • Sensing
    • Vision
    • Lasers
    • GPS
  • Actuation
    • Sensors
    • Drill
    • Carry
@rektide
rektide / publicdns.md
Last active Aug 29, 2015
Steps to insure a performant, secure, correct Domain Name System for the Public
View publicdns.md

To the Internet it may concern,

Public DNS was founded upon a tripartit rational, and I Groups to you today to suggest a new heading to affirm that course once nobly set upon. I hope we gathered at this Public DNS rallying point still affirm these [benefits][1], hold it true that Google has set them out them justly:

  1. Performance.
  2. Security. DNS is vulnerable to various kinds of spoofing attacks that can "poison" a nameserver's cache and route its users to malicious sites.
  3. Correct results. Google Public DNS does its best to return the right answer to every query every time, in accordance with the DNS standards.

To serve these ends, Google has implemented:

@rektide
rektide / cr.md
Created Mar 31, 2014
Checkpoint Restore
View cr.md

Plenty of options for saving/restoring state-

For programs, there's criu and linuxpmi. CRIU has been very active getting changes pushed into the Linux kernel: there are plenty of peoople in this AskCS talking about device driver states that need to get saved, disk images that need to be put back in "just so" state, file handles and sockets taht need to be open for everything to happen. (Comparatively emulators have relatively self-contained devices, with saved game storage that is written to very infrequently, and generally fairly simple device drivers, but crucially device drivers that have already been well deseribed by software (in fact, the device drivers are software in the case of emulators.))

CRIU has been taking on the task of getting Linux to be able to describe the state of itself, of the processes and device it runs accurately, and providing hooks so that userland can directly instruct Linux to become a certain, very precise state (for example:

View gist:3139c348ea958f4b2dc2
import java.util.*;
import java.util.logging.Logger;
import java.nio.charset.StandardCharsets;
public class Permute {
public static int answer() {
return 42;
}
public static String question() {
@rektide
rektide / xanadu
Created Jun 5, 2014
xanadu intro
View xanadu
Xanadu, friend, is dream.
The name comes from the poem (nearby);
Coleridge's little story of the artistic trance
(and the Person from PoTlock) make it an appro­
priate name' for the Pleasure Dome of the crea­
tive writer. The Citizen Kane connotations,
and any other connotations you may find in the
poem, are side benefits.
1 have been working on Xanadu, under this
and other names, for fourteen years now.
@rektide
rektide / domains.js
Last active Aug 29, 2015
Domains Module Example
View domains.js
var fs = require('fs'), domain = require('domain')
console.log("\n\n\n\n\n\nHello, welcome to a domain example\n")
// We create three domains, two of which have their own error handler
var d1 = domain.create(), d2 = domain.create(), d3 = domain.create();
[d1,d2].forEach(function(domain, i){
domain.i = i
domain.on('error', function(err) {
console.error("Domain "+err.domain.i+" has a problem!:\n ", err.message)
console.error("We've dealt with the problem\n")
}) })
@rektide
rektide / bootlog.txt
Created Jun 24, 2014
Not-quite-boot off sama5d3-xplained
View bootlog.txt
Terminal ready
RomBOOT
U-Boot SPL 2014.07-rc3-00128-g0383805 (Jun 23 2014 - 23:06:27)
mci: setting clock 257812 Hz, block size 512
mci: setting clock 257812 Hz, block size 512
mci: setting clock 257812 Hz, block size 512
mci: setting clock 257812 Hz, block size 512
mci: setting clock 22000000 Hz, block size 512
@rektide
rektide / noun-project.js
Last active Aug 29, 2015
Noun Project sample
View noun-project.js
var OAuth = require('oauth')
// `npm install oauth` to satisfy
// website: https://github.com/ciaranj/node-oauth
var KEY = "<INSERT KEY HERE>"
var SECRET = "<INSERT SECRET HERE>"
var oauth = new OAuth.OAuth(
'http://api.thenounproject.com',
'http://api.thenounproject.com',