Skip to content

Instantly share code, notes, and snippets.

View etosch's full-sized avatar

Emma "Frank" Tosch etosch

View GitHub Profile
.answer {
white-space : nowrap;
display : block;
}
label {
display : block;
padding : 2px 1em 0 0;
white-space : nowrap;
}
@etosch
etosch / time_per_question.js
Last active August 29, 2015 13:56
To find the time spent per question, we need to track the time between firings of showQuestion and registerAndShowNextQuestion.
var oldShowQuestion = sm.showQuestion;
var oldRegisterAndShowNextQuestion = sm.registerAndShowNextQuestion;
var addTimingInfo = function(q, tag) {
var start = document.createElement('input');
start.type='text';
start.id=tag+'_'+q.id;
start.name=tag+'_'+q.id;
start.form='mturk_form';
start.hidden=true;
start.defaultValue=new Date().getTime();
@etosch
etosch / move_early_submit.css
Created February 27, 2014 18:38
The default setting is to display the "Submit Early" button in the same location as the final "Submit" button. This position is very close to the "Next" button and could lead to accidental submission.
.breakoff {
white-space : nowrap;
display : block;
position : relative;
top : 10px;
left : 20px;
}
@etosch
etosch / turn_off_breakoff_notice.js
Created February 28, 2014 01:26
The `showBreakoffNotice` function displays a notice to the respondent stating that they are allowed to submit results early and will be compensated more for more work and better results. If the user wishes to remove this feature, the following can be added to `custom.js.` Changes to the breakoff notice can be added directly to this function.
sm.showBreakoffNotice = function () {
sm.showFirstQuestion();
};
sm.showBreakoffNotice();
function depth
input : A survey block
output : integer indicating depth
begin
idArray <- block id as an array
return length(idArray)
end
@etosch
etosch / paths.clj
Last active August 29, 2015 14:01
Find paths through the survey
(defn get-dag
[blockList]
"Takes in a list of Blocks; returns a list of lists of Blocks."
(if (empty? blockList)
'(())
(let [^Block this-block (first blockList)]
(if-let [branchMap (and (.branchQ this-block) (.branchMap (.branchQ this-block)))]
(let [dests (set (vals branchMap))
blists (map (fn [^Block b] (drop-while #(not= % b) blockList)) (seq dests))]
(map #(flatten (cons this-block %)) (map get-dag blists))
Require Import List.
Require Import EqNat.
Definition alist := list (nat * bool).
Fixpoint in_assignment n (a : alist) : Prop :=
match a with
| nil => False
| (h,_)::t => if beq_nat n h
then True
@etosch
etosch / socktest.cc
Created March 9, 2013 01:11
Sample code for how to use simplesocket.cc
#include "simplesocket.h"
int main(int argc, char * argv[]){
int port;
stringstream(argv[1]) >> port;
clientsocket * s = new clientsocket("localhost", port);
printf("3:%d\n", s->connect());
s->write("asdf", 256);
s->close();
}
@etosch
etosch / server.cc
Created March 9, 2013 01:17
Sample code for how to use simplesocket.cc
#include "simplesocket.h"
#include <sstream>
int main(int argc, char * argv[]){
// continually transmit something here
int port;
stringstream(argv[1]) >> port;
serversocket * s = new serversocket(port, -1, true);
char buffer[256];
while (!strcmp(buffer,"")) {
@etosch
etosch / crash report
Created March 24, 2013 23:08
This makes me a l33t h4x0r, right?
0 clang 0x0000000100c539f2 main + 12919346
Stack dump:
0. Program arguments: /usr/bin/clang -cc1 -triple x86_64-apple-macosx10.8.0 -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -main-file-name Parser.cpp -pic-level 2 -mdisable-fp-elim -masm-verbos\
e -munwind-tables -target-cpu core2 -target-linker-version 136 -g -coverage-file /Users/etosch/dev/memstashed/parser.o -resource-dir /usr/bin/../lib/clang/4.2 -I . -fmodule-cache-path /var/folders/wp/rsvsklwn1l\
73jm32n3_lqqb00000gr/T/clang-module-cache -Wno-write-strings -std=c++11 -fdeprecated-macro -fdebug-compilation-dir /Users/etosch/dev/memstashed -ferror-limit 19 -fmessage-length 0 -stack-protector 1 -mstackreal\
ign -fblocks -fobjc-runtime=macosx-10.8.0 -fobjc-dispatch-method=mixed -fobjc-default-synthesize-properties -fcxx-exceptions -fexceptions -fdiagnostics-show-option -o parser.o -x c++ Parser.cpp
1. <eof> parser at end of file
2. Per-file LLVM IR generation
3. Parser.cpp:53:10: Generating code for declaration '<anonym