i heard some of you like data modeling and interoperability, so here's a lil snip of how we've been building abstract data modeling with multiple export interfaces to NWB, datajoint, and eventually we'd like to do and out of the box using semantic wiki as a medium <3

Show thread

just for my fedis, pre-preprint of v2 of the paper is up for the good of being publicly roasted in order to improve it, as is the open source way (yes we are moving to codeberg/gitea as soon as we get a few days to do it)
github.com/auto-pi-lot/autopil

Did you see the news that all of the #JWST instruments are aligned now?

Check out this comparison of one of the newly released calibration images from the MIRI instrument compared to images taken of the same region of space by the WISE and Spitzer space telescopes! Look at that resolution! So many newly resolved stars and structures! 🤩

I can't wait for all the new discoveries we'll make with JWST! #Science data starts in only a couple months!

(Image from @/AndrasGasper on birdapp)

A quick guide on how to synchronize two computers on a local network using NTP and chrony so your software timestamps can be synchronized within ~dozens of microseconds (or less than 1 microsecond if you're doing network latency tests rn)
wiki.auto-pi-lot.com/index.php

Having fun with the Rigol DS1054Z, here's a wiki page with docs on unlocking extra features and remote controlling it to use it for data acquisition <3

wiki.auto-pi-lot.com/index.php

actually wait i have delayed this for years because it was ~working~ but now that i have to benchmark for this paper i want to drop everything and switch from sockets to mmap

Show thread

This is over a socket to a fork of a pigpio daemon, which i'm now realizing is TCP and wondering if i can switch that to IPC...

Show thread

A lot of room for improvement, but 91 microseconds to switch a GPIO with a read confirmation, 41 micros just writing -- I've been told Python would never be able to do it, now I can't wait to drop this into Rust ;)

I ( @jonny ) am a pretty new programmer, and haven't been around for as long as a lot of the FOSS people I know, and so have a lot to learn. My code is probably bad in a bunch of ways I don't appreciate, especially the older stuff, but I am excited to see what people make around here and am happy to meet anyone working in similar and complementary directions. Let's make stuff that works together <3 /10

Show thread

The latest round of work i've been doing has been on data modeling. Scientists are always going to be using multiple tools and have unpredictable data needs, so we have made a set of tools to declare arbitrary abstract typed data and translate it into a series of common interfaces and formats (for now, neurodata without borders and datajoint). That's here: github.com/wehr-lab/autopilot/
Later we'll make tools to ingest external data: github.com/auto-pi-lot/ingestu
/9

Show thread

We want to offer an alternative in the scientific space with corporate vendors that sell hyperexpensive instrumentation and cloud services as the only means of collecting, organizing, and sharing data. By joining up with the rest of the linked data world, we want to make it easier to DIY and self-host data in a p2p system than it is to buy an expensive tool and host the data on AWS. /8

Show thread

Long run we want to help drop the ladder back down: that by encouraging scientists to do their work in the open, they can make all that accumulated practical knowledge available and accessible by nonscientists and people with no entrance point to traditional means of training. /7

Show thread

We've been trying to design the framework to bidirectionally integrate with a semantic wiki to let people share loosely-coupled plugins with explicit credit for technical knowledge work, building a system of structured technical information, designs, and guides that integrates the code needed to use it. /6

Show thread

Since the original iteration of a code was sort of a mess because it was my first major work, we've been rewriting the whole thing in chunks to give it a structure that makes it easy to extend to control the random esoteric hardware different labs have been built around over decades, and build into existing practices of work. The goal is to make a 'glue' framework to let developers of individual tools hook them into a larger network of other tools /5

Show thread

So I specifically wanted to design a tool that used and contributed to an open and existing ecosystem of tools and knowledge, and so I fell in love with the raspberry pi. One of the major technical problems with contemporary neuroscience experiments is the need to control a lot of hardware at once with <~1ms sync, so I decided on distributing control over a swarm of networked pis. /4

Show thread

This gets to me not only as a matter of waste, but as reflective of the culture of scientific labor: that we could receive so many public resources but contribute relatively little practical knowledge back. Part of this is a technical problem, needing better means of preserving it and working together, but also a social and political one -- the ways we design our credit and reward systems that drive us to need individual acclaim as a 'heroic researcher' /3

Show thread
Show older
Fosstodon

Fosstodon is an English speaking Mastodon instance that is open to anyone who is interested in technology; particularly free & open source software.