[PD] a multislider GUI as abstraction

Derek Kwan derek.x.kwan at gmail.com
Tue Jun 28 12:33:38 CEST 2016


Hello,

I suppose this response is to no one in particular but I like talking to
Alex so I'll reply to him =).

As per the abstraction vs externals for gui stuff debate, I have a few
general thoughts/observations:

At least in my personal experience, I haven't had much luck with GUI
abstractions. It seems like a lot of them that I at least have
investigate date back to the pd-extended era of things and thus rely a
lot of all the libraries provided with pd-extended, which loaded all the
libaries as a default so they didn't have follow an
libraryname/objectname convention of declaration. So I have to find out
all the library dependencies and get them on my computer and if I don't
want to automatically load all the libraries at start, I have to dig
through and try to find where all these objects are within the
subpatches of subpatches of abstractions to where these objects are and
add the libraryname/ (or I suppose I could do a [declare -lib
libraryname] too, I suppose that makes more sense). At least to me, not
just externals but abstractions suffer from maintenance issues as well.
At least with externals, compilation lends itself to more of a
standalone mindset without this pure data library dependency hell
(although of course externals upon compilation can suffer from this as
well). Perhaps this is a historical issue though and now that
PD-extended is being phased out, this situation going forward would be
less of an issue. 

Also, perhaps it is just my own failing as a PD programmer, but I've
never felt entirely comfortable with multiplicity in a graphical
programming language. Like say, I want a 100x120 grid of toggle boxes
that fits within a 640x480 rectangle and all their backgrounds are black
and their Xs are yellow and each toggle box is hot so when you select
one, it dumps out a list of all the values. Plus, every 500 ms I want
the backgrounds of all the toggle boxes to flash blue so it's a clear
visual cue that's where a downbeat is. It feels like in this case, I'm
going to be making a lot of objects and connecting a lot of cords or do
a clickable canvas or use structs (I think there was an abstraction that
did this?) or something like that. At least for me, it feels way more
natural to use a text-based language vs a graphic-based language to do a
whole lot of one particular thing and keep track of it all and thus I'd
lean more towards external vs abstraction. Plus with an external you get
more flexibility with what you can do rather than be limited to using
Pure Data objects to try to achieve your goals, although I can see that
perhaps in a lot of cases this flexibility is not needed. 

I don't know, I'm sort of rambling and losing my train of thought here
lol. I'm glad this topic is being brought up though, it's making me
reconsider abstractions and costs and benefits or doing abstractions vs
externals. Maybe I just need to familiarize myself more with things you
can do with canvases and how to do iteration in Pure Data =).

Derek

=====================
Derek Kwan
www.derekxkwan.com



More information about the Pd-list mailing list