Your share could raise $30
Before you go, did you know that simply by sharing this campaign, you could help it raise $30? It's an effective way to support the cause.
No thanks- Pin it
- SubscribeUnsubscribe
- Embed
Chad Cassady hasn't added a story.
What is SuperCollider?
SuperCollider
is a synthesis and signal analysis tool used all over the world by
artists, academics, and professional engineers. I know of at least one
college course that uses it to teach coding, math, and signal
processing, and I've used it in my live audio production/synthesis
experiments with New Orleans musicians since 2017. It's an amazing,
one-of-a-kind, powerful tool that's completely free to anyone in the
world under the GPL, which means it has to stay free. I have a lot of
plans with it, like an educational program for kids in New Orleans,
some interactive art installations, lots of cultural interchange, and
continued joy & personal development.
I had developed this sweet touchscreen theremin and was just
starting to perform with it when the HID client in SuperCollider
stopped working due to lack of maintenance since it was originally
crowd-funded in 2013. SuperCollider relies on the community for
maintenance. Most of the people qualified to perform that maintenance
are busy with much more lucrative (and unfortunately often
destructive) work for the corporate tech industry.
What is HID?
Remember when keyboards and mice had their own port, and everything
else needed a custom driver to work? All the gamepads, flight yokes,
drawing tablets, braille displays, and MIDI controllers needed the
manufacturer to write custom code for every operating system, and the
user had to go through the extra hassle of installing it from the
CD-ROM. Then, early this millennium, the industry came out with
"Plug N Play". Hooray!
The underlying standard that makes this work is called HID --
Human Interface Device. No more custom driver code! When you plug it
in, the firmware on a device just emits a report in a standard format
that says, "Hey I'm a peripheral, I have these LED's you can
blink to indicate the state of these settings, I have this rumble
motor, and I have these buttons with these names and usages" and
the OS or application goes "alright, I know all about that from
birth, let's play".
It took about 20 years for all the usage tables to get fleshed
out, but nowadays thanks to HID you can plug in just about any kind of
device over USB, Bluetooth, various IoT links, and there's a
specification for it. This includes things like VR headsets and even
more esoteric things in the field of robotics and manufacturing.
What work are we funding?
SuperCollider's original HID client written in 2013 was based on a
fork of the HID library from an early stage of its development, and
thus includes limited functionality compared to what's available now.
It lacks the ability to rumble motors and blink LED's (or anything
else implemented in HID Feature Reports). It also can't talk over
Bluetooth or some of the newer IoT hardware protocols.
It worked well enough anyway for a long time, but subtle
differences between SuperCollider's outdated client and the latest HID
library shipped with the operating system led to the malfunction that
broke my touchscreen theremin and anything else that uses HID. The
entire SuperCollider programming environment crashes when you try to
use HID on Linux with SuperCollider version 3.13.
I have already made the changes to use the latest official HID
library, and now there's just a bunch of bugs to chase down in the
SuperCollider client code. There are a couple of memory leaks, and the
client code to do things like calibrate joysticks and blink LED's is
unfinished. Finding and patching each of those differences is
time-consuming and painstaking work. I expect this work to take up the
bulk of my day-to-day time for several weeks, and may involve help
from others in the developer community.
To begin with, I am preparing a draft of software unit tests for
each HID component in SuperCollider so that this maintenance can be
performed sustainably in the future without such a big push. When the
upstream library changes in the future, we'll catch it every time
someone compiles the code.
You can follow the development and discussion on github.
How much do we need?
It's hard to tell how much time the bugfix phase after the tests are
done will take, but I am guessing that with $5,000 I can get this done
or at least spearheaded with enough inertia to finish. This covers my
living expenses and allows me to focus exclusively on this work, and
affords a small budget to compensate other developers for their
assistance as needed.
I wish that I could afford to donate my time, but my
ethical/professional/personal path has led to a divestment from most
of the lucrative ways to monetize my skills. I've spent the last 7
years becoming deeply familiar with SuperCollider and its internals
instead of working in the industry. So I am seeking community support.
The commercial, educational, and artistic value that we can
produce all over the world with SuperCollider is hard to account for
-- not easy to sell to a venture capitalist -- but still a crucial
part of the ecology, especially pertaining to accessibility for those
with lack of access to formal education or other resources. To build
the world we're building, we need all hands on deck, and I feel
strongly that SuperCollider is a powerful tool for making that happen.
Thank you for your time and support!
Highlights
See all activity12Activity
Delete media item?
Delete this item from the media gallery? It will also be deleted from any related story update.
Set as ?
The campaign video will appear in social media and email.
The campaign cover picture will appear in social media and email.
The will appear at the top of your campaign page and in social media and email.
Reset ?
It will be removed from the top of your campaign and won't be used as default in social media and email. The will remain in the media gallery.
Embed
Share a link
Delete update
Delete this story update?
Any pictures or videos will remain in the campaign's media gallery.
Report campaign
Report submitted
Thank you. We take reports like yours very seriously. Our goal is to keep the community safe.
Please know that we may contact you for more information, but that we won't notify you personally of our decision. If the campaign remains available within a few days, it's likely that we determined it not to be in violation of our policies.
Thank you. We've already received your previous report. If the campaign remains available within a few days, it's likely that we determined it not to be in violation of our policies.
Tell us about the problem. Please fill in both fields below.
Record a video
Upload a video
Nothing grabs attention for your cause like a personal video. Take a minute or two to record one now. Record a short video message of support. Or upload one from your device. You can preview or redo your video before you post it.
Nothing grabs attention for your cause like a personal video. Upload a short video message of support. Upload a short video message of support. Or record one right now.
- Most effective video length: about a minute.
- Maximum length: 5 min.
- You can preview or redo your video before you post it.
Heads up! The existing video will be replaced.
Email your friends
Join our team
Tell people why our cause matters to you. Your personal message will encourage others to help. Easy, effective, optional.
Say it in video
Short personal videos by supporters like you are incredibly powerful. Record one right now and you'll help us raise more money. Easy, optional, effective.
Add a personal goal
Set a personal fundraising goal. You'll encourage more contributions if you do. And rest easy. There's no obligation to achieve your goal or bad consequences if you don't. Easy, optional, effective.
We have a video!
Video thumbnail
We'd love to show you our campaign video. Want to take a look?
, you're already on the team.