Last active
February 6, 2016 23:31
-
-
Save pbkhrv/e95984c0ae207978f855 to your computer and use it in GitHub Desktop.
Sketch of possible text representations of a getguesstimate.com spreadsheet
This file contains hidden or 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
Naive thinking of ways to represent @getguesstimate spreadsheets as text.... | |
Using http://www.getguesstimate.com/models/314 as an example | |
in YML | |
count_meltdowns: | |
label: Number of meltdowns | |
formula: normal(0,2) # distributions use function notation? | |
minutes_per_meltdown: | |
label: Minutes per meltdown # if label is skipped, split/capitalize node id to save on typing | |
formula: uniform(3,13) | |
total_meltdown_time: | |
formula: count_meltdowns * minutes_per_meltdown # can also force everthing into function notation | |
reasoning: | | |
some explanation here | |
yml allows multiline strings | |
and you get parsing of these for free | |
S expressions or Clojure syntax could be fun too, but not as (general) user-friendly, maybe | |
(defnode number-meltdowns | |
:label "Number of meltdowns" | |
(uniform-dist 0 2)) | |
(defnode minutes-per-meltdown | |
:label "Minutes per meltdown" | |
:formula (uniform-dist 3 13)) | |
(defnode total-meltdown-time | |
(* number-meltdowns minutes-per-meltdown)) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Now that I think about it, why did you originally want this feature? If the goal is to have text files that can be converted into Guesstimate models, that's a lot easier than having ones that are interoperable (can be converted back and forth). There's already a private API and we've had someone else try it; with that we could have a lot more flexibility for anyone to make their own format method and have that convert to a model.
Agreed that it would make sense to have data as part of other files, that could work.
One limitation of this is that it would make dependencies difficult; the longer term vision for Guesstimate is for it to be a bit like a wiki, where some models could reference data from other models or the internet. This makes it much less repo like, but there may be some clever ways to get much of the best of both worlds. Programmers have a lot of ways of dealing with dependencies, but it would definitely be a fair bit of work to do all that dependency management for something like this.