Pages

Tuesday, June 6, 2017

Grafoscopio

"Grafoscopio is a moldable tool for interactive documentation and data visualization, that is being used in citizen, garage & open science, reproducible research, (h)ac(k)tivism, open & community innovation, domain specific visualization and data journalism, and has a lot of other potential uses. Grafoscopio is covered by a Free Libre Open Source Software license (MIT) and it has an associated hackathon/workshop, called the Data Week, oriented to citizen concerns, which are related and mediated by data and visualization. There we learn, adapt and feedback this tool.
Grafoscopio is and integrates simple and self-cointained "pocket infractures", that can be execute On/Off-line, from a USB thumb drive, a rasperry-Pi alike computer, a modest server or any hardware in between and beyond. 


Grafoscopio tries to create interactive documents which are modeled as trees. Trees structure the document and provide it with sequence and hierarchy, and allow the authors write in a non-linear fashion. Trees can have basically two kind of tagged nodes: documentation ones (by default or untagged) or code ones (tagged as "code"). Inside documentation nodes you write in pandoc's markdown. Inside code nodes you write in smalltalk and they're executable playgrounds, with code completion, data visualization and inspection capabilities and everything you will expect of a live code environment. This approach brings interactive documentation inside the Pharo image and to output to the external world the tree is traversed and processed according to the tags and document is exported as a markdown document. There you use the pandoc toolkit to produce the desired output, which mostly consist in a one liner command to select your output format.

Tagged nodes have other benefits, for example, you can mark some nodes as invisible, to be ignored by the traverser or extend your tag set to create more finer control over the behavior of the document. They can also work as an ad-hoc emergent language, so you can query the document and use the same tree to address different audiences, while keeping consistency and unity.

Grafoscopio tries to become an simple, understandable, moldable, versatile and flexible tool thanks to the power of Pharo Smalltalk ecosystem and the combination with mature external and internal frameworks and tools. It uses:
  • Internal
    • GT Tools and Spec for embeddable Moose playgrounds, GUI and interactive nodes.
    • Roassal for data visualization.
    • STON for a light data storage and notebooks format.
    • Fuel: For medium data storage and objects serialization.
  • External:
    • Fossil SCM for collaboration and traceability of the documents history.
    • SQLite for storage and management of tabular data.
    • Pandoc for exporting to pdf/printing and html/web formats.
http://mutabit.com/grafoscopio/index.en.html

Dataviz

"Dataviz, is a companion package for Grafoscopio that puts together several examples of Domain Specific Visualizations and Domain Specific Languages (DSV, DSL, respectively) developed with the Roassal agile visualization engine. Included prototypes approach several themes like: Panama Papers as reproducible Research, Twitter Data Selfies and published medicine information access and are presented using blog post and/or internal interactive documentation, via Grafoscopio notebooks. The classes in the package and their documentation show several levels of maturity from pretty mature (Panama Papers) to early coder practices (Infomed) and on going developments (Twitter Data Selfies) and are offered as examples and excersises to learners in our recurrent Data Week workshop+hackathon, for code testing and refactoring."

http://mutabit.com/repos.fossil/grafoscopio/doc/tip/Packages/Dataviz/intro.md

No comments:

Post a Comment