Hello and the state of ChucK question
Hi everyone, I'm new to the list, so a word about me. I'm a software developer in Open Government field and musician focused on experimental and concrete music working from time to time with interactive technologies in dance and theatre. I'm heavily interested in ChucK future development. I come from Poland. Hello everyone ChucKing around!! My question is about the current state and future plans for ChucK. I'm interested especially in: 1. who is responsible for the ChucK website and is it possible to help him/her somehow to make it up to date (documentation, download and install information, some info about the current state, maybe some roadmap)? I'll be happy to spend some free time (not much of it, but a few hours a week for the beginning could be enough) to work on it. 2. is there any mechanism for implementing additional functionality (let say Perlin Noise) directly in ChucK to become a part of ChucK the way Quarks work in SuperCollider? Or the only way of sharing with others is just giving the code and then adding it to the chuck call like: $ chuck-alsa Perlin MyStuff1 MyStuff2 3. is there anyone to expand the developers guide a bit? I'm not a C++ guy and will not implement closures as a new feature in ChucK, but I could write some extensions in C (if not possible in ChucK as in point 2) and attach it to the language. The documentation though is really hard for not advanced programmer and C person (this C++ syntax scares me a lot ;)). 4. will ChucK be developed in future and is there any roadmap for it? All the best from far Poland, trzewiczek ChucK => now; -------------
Krzysztof;
4. will ChucK be developed in future and is there any roadmap for it?
I heard rumours on the proverbial street that development should be picking up a bit again; there are more people volunteering help. I'd like to invite Ge to take a moment and comment on the state of things right now. Welcome on board, Krzysztof! Kas.
Hi,
I heard rumours on the proverbial street that development should be picking up a bit again; there are more people volunteering help.
This is a really great news! Unfortunately I'm not good enough in C++ to join dev group, but I can help with some other tasks (documenting, doing website work, moderating...).
I'd like to invite Ge to take a moment and comment on the state of things right now.
Oh that would be wonderful! That could serve as a first attempt toward roadmap creation as I believe there is no such thing right now, is there? All the best, trzewiczek ChucK => now; -------------
Greetings!
4. will ChucK be developed in future and is there any roadmap for it?
I heard rumours on the proverbial street that development should be picking up a bit again; there are more people volunteering help.
I'd like to invite Ge to take a moment and comment on the state of things right now. Welcome on board, Krzysztof!
ChucK development is indeed alive and well! Actually a new release is nearing completion thanks to Spencer (more details on that soon - this will enable much development from entire community)! Team at both Stanford and Princeton gearing up for what's next. Also, check out these related, active projects: http://wekinator.cs.princeton.edu/ http://plork.cs.princeton.edu/ http://slork.stanford.edu/ http://smelt.cs.princeton.edu/ Welcome and Happy ChucKin'!! Ge! ~~~ Ge Wang Assistant Professor Center for Computer Research in Music and Acoutsics (CCRMA) Stanford University http://ccrma.stanford.edu/~ge/ ~ Co-founder, CTO, Chief Creative Officer Smule http://www.smule.com/ ~~~
Ge Wang
Also, check out these related, active projects:
Every time Ge drops by this mailing list, it feels like a drive-by. This is awesome! Why haven't we heard about it before? A lot of us are doing similar things (Monome, iPhone/iPad, Android, OpenKinect/OpenNI, game controllers <--> OSC <--> ChucK, Processing, mlrv, PD) and probably could have been helpful in its development. michael
Howdy!
I think there was talk of a CVS repository. I'd be interested in this too;
I used this:
cvs -d :ext:anon-chuck at cvs.cs.princeton.edu:/cvs checkout chuck_dev
Now seems appropriate to point out that ChucK has moved from its old
CVS repository to a slightly more modern system, SVN. To grab the
whole tree:
svn checkout https://chuck-dev.stanford.edu/svn/chuck
or just the current source:
svn checkout https://chuck-dev.stanford.edu/svn/chuck/trunk/src chuck
You'll notice that there has been a fair amount of activity since we
switched over earlier this year.
I think there's a bit more I can weigh in on here, but need to finish
my morning coffee first ... :)
spencer
On Mon, Apr 4, 2011 at 8:45 AM, Michael Heuer
Ge Wang
wrote: Also, check out these related, active projects:
Every time Ge drops by this mailing list, it feels like a drive-by.
This is awesome! Why haven't we heard about it before? A lot of us are doing similar things (Monome, iPhone/iPad, Android, OpenKinect/OpenNI, game controllers <--> OSC <--> ChucK, Processing, mlrv, PD) and probably could have been helpful in its development.
michael _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
hi,
Glad to hear that ChucK development is still ongoing looking forward
to the new release very much.
Scott
2011/4/4 Kassen
I think there's a bit more I can weigh in on here, but need to finish my morning coffee first ... :)
Jay, Spencer is back too! :-D
Kas.
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
Hi
Glad to hear this news!
BTW, do the chuck team ever considered to use git instead of svn?
It's maybe a question influenced by fashion, but all devs I know speak
highly of it (but ok, I know two or three devs at most).
best
lucas
2011/4/4 Spencer Salazar
Howdy!
I think there was talk of a CVS repository. I'd be interested in this too;
I used this:
cvs -d :ext:anon-chuck at cvs.cs.princeton.edu:/cvs checkout chuck_dev
Now seems appropriate to point out that ChucK has moved from its old CVS repository to a slightly more modern system, SVN. To grab the whole tree:
svn checkout https://chuck-dev.stanford.edu/svn/chuck
or just the current source:
svn checkout https://chuck-dev.stanford.edu/svn/chuck/trunk/src chuck
You'll notice that there has been a fair amount of activity since we switched over earlier this year.
I think there's a bit more I can weigh in on here, but need to finish my morning coffee first ... :)
spencer
On Mon, Apr 4, 2011 at 8:45 AM, Michael Heuer
wrote: Ge Wang
wrote: Also, check out these related, active projects:
Every time Ge drops by this mailing list, it feels like a drive-by.
This is awesome! Why haven't we heard about it before? A lot of us are doing similar things (Monome, iPhone/iPad, Android, OpenKinect/OpenNI, game controllers <--> OSC <--> ChucK, Processing, mlrv, PD) and probably could have been helpful in its development.
michael _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
+1 for git and especially github.com -- nice integration, nice
documentation, easy to distribute a project among multiple developers...
2011/4/5 Lucas Samaruga
Hi
Glad to hear this news!
BTW, do the chuck team ever considered to use git instead of svn? It's maybe a question influenced by fashion, but all devs I know speak highly of it (but ok, I know two or three devs at most).
best lucas
2011/4/4 Spencer Salazar
Howdy!
I think there was talk of a CVS repository. I'd be interested in this too;
I used this:
cvs -d :ext:anon-chuck at cvs.cs.princeton.edu:/cvs checkout chuck_dev
Now seems appropriate to point out that ChucK has moved from its old CVS repository to a slightly more modern system, SVN. To grab the whole tree:
svn checkout https://chuck-dev.stanford.edu/svn/chuck
or just the current source:
svn checkout https://chuck-dev.stanford.edu/svn/chuck/trunk/src chuck
You'll notice that there has been a fair amount of activity since we switched over earlier this year.
I think there's a bit more I can weigh in on here, but need to finish my morning coffee first ... :)
spencer
On Mon, Apr 4, 2011 at 8:45 AM, Michael Heuer
wrote: Ge Wang
wrote: Also, check out these related, active projects:
Every time Ge drops by this mailing list, it feels like a drive-by.
This is awesome! Why haven't we heard about it before? A lot of us are doing similar things (Monome, iPhone/iPad, Android, OpenKinect/OpenNI, game controllers <--> OSC <--> ChucK, Processing, mlrv, PD) and probably could have been helpful in its development.
michael _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
for git or mercurial :-) Both are distributed. But, because they can use each other easily (I heard, no own experience), I would choose one of these by other reasons (e.g. like having github etc.)
+1 for github indeed. Historically the ChucK community has done some
nice patching of ChucK between released versions. The ASIO ChucK
certainly comes to my mind. Github is great for forking and merging
socially.
Ge doesn't release super often but there is a lot of building going in
the repos. Openframeworks is very similar. I feel like github really
helped people see all of the little changes going on that build up to
big releases and the amount of messages on that board asking for
progress updates disappeared after making the switch.
I think github would solve a lot of things that people perceive as problems.
a
On Wed, Apr 6, 2011 at 3:07 AM, Harald Gutsche
for git or mercurial :-)
Both are distributed. But, because they can use each other easily (I heard, no own experience), I would choose one of these by other reasons (e.g. like having github etc.) _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
Adam;
I think github would solve a lot of things that people perceive as problems.
I too like Git for much of the reasons Adam listed. However I am wondering what the advantages of GitHub over Savannah would be. http://savannah.gnu.org/maintenance/WhyChooseSavannah Aside from those politics it seems more or less the same, I just happen to agree with the politics :-) Yours, Kas.
Hi Excerpts from Kassen's message of mer. avril 06 20:14:16 +0200 2011:
Adam;
I too like Git for much of the reasons Adam listed. However I am wondering what the advantages of GitHub over Savannah would be.
Savannah accounts are project based and need approval. On github, anyone can create an account, fork the chuck repository and publish his work in plain sight. I see that as a strong advantage as the community can experiment, leaving to the main branch maintainers the possibility to merge interesting propositions in a few simple commands. tom
Tom; Savannah accounts are project based and need approval. I think the projects need approval and that we fall squarely in the category.
On github, anyone can create an account, fork the chuck repository and publish his work in plain sight.
That's exactly what I'm doing; http://git.savannah.gnu.org/cgit/fluxus.git/log/?h=redacted I forked the Fluxus audio synth called Fluxa and added a lot of stuff to it.
I see that as a strong advantage as the community can experiment, leaving to the main branch maintainers the possibility to merge interesting propositions in a few simple commands.
I agree. But I still don't see why Github is better than Savannah for projects like ours as it sounds about the same. Yours, Kas.
I've never used Savannah, but from what I have used: +9001 git / github if you want to foster a "social coding" environment for the project in question... mc On Apr 7, 2011, at 1:32 AM, Kassen wrote:
Tom;
Savannah accounts are project based and need approval.
I think the projects need approval and that we fall squarely in the category.
As was said earlier, I also think Github's fork feature is great - people can fork off from the main ChucK branch, tinker around, and if they do something cool, they can request that it be merged back in. I think that's all the control that's needed. People shouldn't need permission to mess around with ChucK or even need permission to request something be merged back into the master branch (this is assuming people don't go crazy and swamp Spencer with pull requests). If we make people bend-over backwards to contribute to a project, I can imagine they'd be less likely to contribute?
On github, anyone can create an account, fork the chuck repository and publish his work in plain sight.
That's exactly what I'm doing; http://git.savannah.gnu.org/cgit/fluxus.git/log/?h=redacted I forked the Fluxus audio synth called Fluxa and added a lot of stuff to it.
I see that as a strong advantage as the community can experiment, leaving to the main branch maintainers the possibility to merge interesting propositions in a few simple commands.
I agree. But I still don't see why Github is better than Savannah for projects like ours as it sounds about the same.
If the only real main difference is needing approval to work on stuff, I'd say Github is the way to go. If that didn't convince you, consider that Tom Lieber also loves (loves, loves) Git...
Yours, Kas. _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
people can fork off from the main ChucK branch, tinker around, and if they do something cool, they can request that it be merged back in
Having a simple central repo, everyone can work on any number of local forks of the project and work on them. Especially with git or mercurial it is very easy to have several branches around (in the same or in different working directories) and push/pull/merge between them. When something gets ready to be integrated in the main project, it can be send as patch to one of the main developers. This is where github (and now savannah?) adds a different workflow. First, the main developers can integrate patches themself, without the fork developer sending them. So it can be used as pull model instead of push model. But, on the other hand, as long as there is no request for integration, the changes in the fork accumulate. Integration of many changes at once can be very annoying, because there will be many conflicts in the merge process. If the fork developer tries to make a small patch for integration, he will try to make this easy, because he wants to convince the main developers. The main developers have to do the integration work. If the fork developer works on his own branch for a longer time, the fork can easily drift away from the main branch. But, if the fork developer regularly integrates changes from the main branch, he does the main integration work. One advantage of a system like github is the public fork repository. The fork also gets a community process, so the code is reviewed and tested and discussed by the community, before it makes it's way to the main branch. Even the main developers can add tips and solutions to the fork, also to make it better fitting to the main branch. So, at the end, all depends on the way people work together. Each model has it's advantages and disadvantages. I think a github like system should especially be used, if the fork is a bigger one, e.g. changing basic structures leading to changes in many files of the project.
Mark; If the only real main difference is needing approval to work on stuff, I'd
say Github is the way to go. If that didn't convince you, consider that Tom Lieber also loves (loves, loves) Git...
Ah, ok, I did need to be added to the Fluxus group on Savannah, that's true. I'm not sure that could be set to automatic. I could also imagine that not needing any approval of the project leader might lead to spam. I do already love Git, it's great. IMHO it's especially good matched with Scons ( http://en.wikipedia.org/wiki/SCons ) as those two take care of exactly those boring fidgety parts that I don't like to deal with. In case this wasn't clear; you can use Git with sites that aren't "Github", as far as I understand it all "GitHub" just has a "Git" in the name and a marketing budget, you could use any other site or server, I think. At any rate; I don't object to GitHub at all, I just like Savannah's stance on Open Source. PS; Tom stopped using a tiling Window Manager, now I can't take him seriously any more :-p Harald; Having a simple central repo, everyone can work on any number of local
forks of the project and work on them. Especially with git or mercurial it is very easy to have several branches around (in the same or in different working directories) and push/pull/merge between them.
When something gets ready to be integrated in the main project, it can be send as patch to one of the main developers. This is where github (and now savannah?) adds a different workflow.
Yes, this is what we do exactly. I send a link to my fork a few mails back; I can add or delete anything I like and Dave can include bits he finds useful of those. I'm still merging in any changes to the "master" branch.
One advantage of a system like github is the public fork repository.
The fork also gets a community process, so the code is reviewed and tested and discussed by the community, before it makes it's way to the main branch. Even the main developers can add tips and solutions to the fork, also to make it better fitting to the main branch.
I like that idea a lot, however I wonder how it will relate to the list. People who aren't writing C++ may still have useful things to say about how they would like to write ChucK. IMHO especially novice users have useful things to say yet those might find a process like that intimidating. I hope such a process won't go at the expense of open and inclusive debate on the list. I also think it's quite important that the main dev team be happy about the setup. Yours, Kas.
I also subscribed to the chuck-dev mailing list, but got no message yet. Looking at the archives, last activity was in december 2010 just like the last cvs activity. A dev list would be good for developer talks like this one, which normally bother pure users. This is why I asked how chuck developers communicate, as I didn't see any dev communication anywhere since I looked into chuck sources.
On Apr 8, 2011, at 1:28 AM, Kassen wrote:
PS; Tom stopped using a tiling Window Manager, now I can't take him seriously any more :-p
I object! You should take me seriously for other reasons! -- Tom Lieber http://AllTom.com/ http://ckvlang.org/
On Apr 8, 2011, at 11:48 AM, Kassen wrote:
I object! You should take me seriously for other reasons!
Like what? I miss when you posted about Rockband drumming. Not that I'm especially passionate about that, but at least I could make sense of it.
Here's a screenshot of a Twitter client I'm working on.
look
The bar. Dave Birds says, "A Chinese friend just compared my appearance to 'Growing Pains'-era Kirk Cameron. 1) Chinese people watched that? 2) Do I look like him?" Aaron Patterson says, "Is it possible to buy a loaf of bread that is only heels?" Kassen Oud says, "@spencersalazar Skeleton analysis is hard and that part isn't open. Check this; http://openkinect.org"
say I anticipate Starcraft tonight.
You proclaim to everyone in the room, "I anticipate Starcraft tonight."
-- Tom Lieber http://AllTom.com/ http://ckvlang.org/
Krzysztof Trzewiczek wrote:
I'm new to the list, so a word about me. I'm a software developer in Open Government field and musician focused on experimental and concrete music working from time to time with interactive technologies in dance and theatre. I'm heavily interested in ChucK future development. I come from Poland. Hello everyone ChucKing around!!
My question is about the current state and future plans for ChucK. I'm interested especially in:
1. who is responsible for the ChucK website and is it possible to help him/her somehow to make it up to date (documentation, download and install information, some info about the current state, maybe some roadmap)? I'll be happy to spend some free time (not much of it, but a few hours a week for the beginning could be enough) to work on it.
2. is there any mechanism for implementing additional functionality (let say Perlin Noise) directly in ChucK to become a part of ChucK the way Quarks work in SuperCollider? Or the only way of sharing with others is just giving the code and then adding it to the chuck call like:
$ chuck-alsa Perlin MyStuff1 MyStuff2
You can also use Machine.add("chuck filename") as an approximation of an import mechanism, though you'll have to figure out transitive dependencies by hand. MyStuff2.ck: Machine.add("Perlin.ck"); Machine.add("MyStuff1.ck"); ... Or you can roll up all your Machine.adds into one class for convenience, e.g. https://github.com/heuermh/lick/blob/87947061a4d6613048746cbb1d6bdaaeef67982... Then $ chuck --loop & $ chuck + import.ck $ chuck + MyStuff2.ck michael
Hi,
Or you can roll up all your Machine.adds into one class for convenience, e.g.
https://github.com/heuermh/lick/blob/87947061a4d6613048746cbb1d6bdaaeef67982...
Then
$ chuck --loop & $ chuck + import.ck $ chuck + MyStuff2.ck
This is cool idea - thx a lot!! And I didn't know about LiCK - it looks great!! Starting from tomorrow morning I'm gonna play with it. Best, trzewiczek
Hi
Or you can roll up all your Machine.adds into one class for convenience, e.g.
https://github.com/heuermh/lick/blob/87947061a4d6613048746cbb1d6bdaaeef67982...
I had no time this week (due to milestone in my work) to take a careful look at the code, but after reading a Wiki and selected source files I like LicK a lot!! I would like to push there this Perlin Noise class and starting from Monday I will implement some rather basic version of Patterns classes (reflecting Patterns idea in SuperCollider, but on the very basic level) as I need them in my software. I would like to push it to LicK as well. And by the way - wouldn't be easiet to call the Function classes in an openGL style? Sth like Int3Function or Float4Function? Just an idea... All the best from cold and wet Dąbrowa Górnicza, trzewiczek
participants (14)
-
Adam Tindale
-
Ge Wang
-
Harald Gutsche
-
Kassen
-
Krzysztof Trzewiczek
-
krzysztof@trzewiczek.info
-
Lucas Samaruga
-
Mark Cerqueira
-
Michael Heuer
-
Robert Poor
-
Scott Hewitt
-
Spencer Salazar
-
Tom Lieber
-
Tomtom