Hi folks, long time lurker, infrequent poster. I've recently finished a book for Python and I'd like to do a similar one for ChucK. The Python book is "Learn Python The Hard Way" and it's written similar to a guitar method book: http://learnpythonthehardway.org/ What I'd like to do next is a "ChucK Method Book" in a similar style, but actually make it more like a real method book for an instrument where the student is learning to "play chuck" like they would an instrument. If I were to do this, what do you think it should include? Do you think it's a good idea? Have you tried teaching ChucK? Thanks! -- Zed A. Shaw http://zedshaw.com/
Oh my gosh, I am reading that book now! You did an amazing job, and I am
learning tons, thank you so much :)
I am only 15, and new to programming, my only prior experience being with
ChucK and with Pure Data, and I love the amount of detail you put in the
python book! It would be awesome if you made something similar for ChucK,
because, as of late, I have been learning through the manual alone, which is
a bit advanced, and lacks any interesting examples for large portions :\
Take it from a fan, PLEASE do this! Keep us updated! :D
--Nic
On Fri, Nov 5, 2010 at 4:23 PM, Zed A. Shaw
Hi folks, long time lurker, infrequent poster.
I've recently finished a book for Python and I'd like to do a similar one for ChucK. The Python book is "Learn Python The Hard Way" and it's written similar to a guitar method book:
http://learnpythonthehardway.org/
What I'd like to do next is a "ChucK Method Book" in a similar style, but actually make it more like a real method book for an instrument where the student is learning to "play chuck" like they would an instrument.
If I were to do this, what do you think it should include? Do you think it's a good idea? Have you tried teaching ChucK?
Thanks!
-- Zed A. Shaw http://zedshaw.com/ _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
On Fri, Nov 05, 2010 at 06:12:33PM -0500, Nic Freed wrote:
Oh my gosh, I am reading that book now! You did an amazing job, and I am learning tons, thank you so much :)
Glad you like it. It will definitely help you with ChucK, so let me know what exercises you found the most useful. Also let me know if you get stuck at anything and I'll try to help. -- Zed A. Shaw http://zedshaw.com/
Thanks a lot, awesome to meet you :D
I will let you know once I get further into the book which exercises I found
the most helpful, I will be happy to help :)
--Nic
On Fri, Nov 5, 2010 at 8:39 PM, Zed A. Shaw
On Fri, Nov 05, 2010 at 06:12:33PM -0500, Nic Freed wrote:
Oh my gosh, I am reading that book now! You did an amazing job, and I am learning tons, thank you so much :)
Glad you like it. It will definitely help you with ChucK, so let me know what exercises you found the most useful. Also let me know if you get stuck at anything and I'll try to help.
-- Zed A. Shaw http://zedshaw.com/ _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
Just wanted to let you know I am still reading, and this book is amazing,
and should be sold for *megabux$$$ *^_^
But seriously, it would be a dream come true for you to release a book like
this for chuck. The severe lack of material on ChucK as a language has led
me to read through a large manual, using it as my only source of
information, and not a reference guide, as it was intended to be. The manual
is a terrible choice for newbies to programming and audio synthesis because:
a. It is very dry and includes almost no examples
b. It assumes prior programming knowledge and understanding of many concepts
in music synthesis as well
For these two reasons alone, I must urge you, PLEASE make this book. It is
very sad that a language as amazing language like chuck lacks a
comprehensive guide for learning the language, from a
complete beginner's point of view.
Thank you so much for considering! :D
--Nic
PS When I finish the book, I will let you know which examples I found most
helpful, and which I think should be included in ChucK's book, if you are to
write it. It may take a while, because of school, but I will get through it
soon enough :)
On Fri, Nov 5, 2010 at 9:38 PM, Nic Freed
Thanks a lot, awesome to meet you :D
I will let you know once I get further into the book which exercises I found the most helpful, I will be happy to help :)
--Nic
On Fri, Nov 5, 2010 at 8:39 PM, Zed A. Shaw
wrote: On Fri, Nov 05, 2010 at 06:12:33PM -0500, Nic Freed wrote:
Oh my gosh, I am reading that book now! You did an amazing job, and I am learning tons, thank you so much :)
Glad you like it. It will definitely help you with ChucK, so let me know what exercises you found the most useful. Also let me know if you get stuck at anything and I'll try to help.
-- Zed A. Shaw http://zedshaw.com/ _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
I agree with Nic here. I come from a programming background but when I
started using ChucK I has little to no knowledge of audio synthesis,
so while I could extract a lot of knowledge about the language from
the manual and browsing the example code (which is great by the way) I
really don't feel that I'm using all of ChucK's potential to create
interesting audio pieces, mostly beeps and noises and stuff like that.
In my opinion the pragmatic possibilities of such a book can be very
interesting here in the ChucK universe. So please write this book and
keep us posted!
2010/11/6 Nic Freed
Just wanted to let you know I am still reading, and this book is amazing, and should be sold for megabux$$$ ^_^ But seriously, it would be a dream come true for you to release a book like this for chuck. The severe lack of material on ChucK as a language has led me to read through a large manual, using it as my only source of information, and not a reference guide, as it was intended to be. The manual is a terrible choice for newbies to programming and audio synthesis because: a. It is very dry and includes almost no examples b. It assumes prior programming knowledge and understanding of many concepts in music synthesis as well For these two reasons alone, I must urge you, PLEASE make this book. It is very sad that a language as amazing language like chuck lacks a comprehensive guide for learning the language, from a complete beginner's point of view. Thank you so much for considering! :D --Nic PS When I finish the book, I will let you know which examples I found most helpful, and which I think should be included in ChucK's book, if you are to write it. It may take a while, because of school, but I will get through it soon enough :) On Fri, Nov 5, 2010 at 9:38 PM, Nic Freed
wrote: Thanks a lot, awesome to meet you :D I will let you know once I get further into the book which exercises I found the most helpful, I will be happy to help :) --Nic
On Fri, Nov 5, 2010 at 8:39 PM, Zed A. Shaw
wrote: On Fri, Nov 05, 2010 at 06:12:33PM -0500, Nic Freed wrote:
Oh my gosh, I am reading that book now! You did an amazing job, and I am learning tons, thank you so much :)
Glad you like it. It will definitely help you with ChucK, so let me know what exercises you found the most useful. Also let me know if you get stuck at anything and I'll try to help.
-- Zed A. Shaw http://zedshaw.com/ _______________________________________________ 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
-- http://www.twitter.com/lfzawacki http://www.linesocode.wordpress.com http://www.umblag.wordpress.com
Interesting, I was the exact opposite! I started with a whole lot of
knowledge of sound synthesis from my time with Pure Data, but barely
anything in terms of programming! Either way, whether the people new to
chuck are beginners to programming, audio synthesis, or both, I think it
would be an extremely useful book ^_^
Also, I don't know how the book writing process works, but if it is anything
like the game making process, I will love to "beta test" your book for you,
so you can see how it works from a near-noob's perspective, and maybe
correct a few spelling errors. Let me know! :)
--Nic
On Sat, Nov 6, 2010 at 9:36 PM, Lucas Zawacki
I agree with Nic here. I come from a programming background but when I started using ChucK I has little to no knowledge of audio synthesis, so while I could extract a lot of knowledge about the language from the manual and browsing the example code (which is great by the way) I really don't feel that I'm using all of ChucK's potential to create interesting audio pieces, mostly beeps and noises and stuff like that.
In my opinion the pragmatic possibilities of such a book can be very interesting here in the ChucK universe. So please write this book and keep us posted!
Just wanted to let you know I am still reading, and this book is amazing, and should be sold for megabux$$$ ^_^ But seriously, it would be a dream come true for you to release a book
2010/11/6 Nic Freed
: like this for chuck. The severe lack of material on ChucK as a language has led me to read through a large manual, using it as my only source of information, and not a reference guide, as it was intended to be. The manual is a terrible choice for newbies to programming and audio synthesis because: a. It is very dry and includes almost no examples b. It assumes prior programming knowledge and understanding of many concepts in music synthesis as well For these two reasons alone, I must urge you, PLEASE make this book. It is very sad that a language as amazing language like chuck lacks a comprehensive guide for learning the language, from a complete beginner's point of view. Thank you so much for considering! :D --Nic PS When I finish the book, I will let you know which examples I found most helpful, and which I think should be included in ChucK's book, if you are to write it. It may take a while, because of school, but I will get through it soon enough :) On Fri, Nov 5, 2010 at 9:38 PM, Nic Freed
wrote: Thanks a lot, awesome to meet you :D I will let you know once I get further into the book which exercises I found the most helpful, I will be happy to help :) --Nic
On Fri, Nov 5, 2010 at 8:39 PM, Zed A. Shaw
wrote:
On Fri, Nov 05, 2010 at 06:12:33PM -0500, Nic Freed wrote:
Oh my gosh, I am reading that book now! You did an amazing job, and I am learning tons, thank you so much :)
Glad you like it. It will definitely help you with ChucK, so let me know what exercises you found the most useful. Also let me know if you get stuck at anything and I'll try to help.
-- Zed A. Shaw http://zedshaw.com/ _______________________________________________ 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
-- http://www.twitter.com/lfzawacki http://www.linesocode.wordpress.com http://www.umblag.wordpress.com _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
Lucas; I agree with Nic here. I come from a programming background but when I
started using ChucK I has little to no knowledge of audio synthesis, so while I could extract a lot of knowledge about the language from the manual and browsing the example code (which is great by the way) I really don't feel that I'm using all of ChucK's potential to create interesting audio pieces, mostly beeps and noises and stuff like that.
That's a huge subject and whole volumes could (and have!) been written even on small parts of it. One good place to get ideas is this series; http://www.soundonsound.com/sos/allsynthsecrets.htm (early parts are on the bottom of the page). This is mostly about creating sounds with traditional synths, but it is abstracted far enough to be useful anywhere. I think the main reason why that series has such a good reputation is that it's very accessible (no higher math or physics needed) yet doesn't sacrifice depth. The diagrams are nice and clear too. Yours, Kas.
On Sat, Nov 6, 2010 at 8:36 PM, Lucas Zawacki
I agree with Nic here. I come from a programming background but when I started using ChucK I has little to no knowledge of audio synthesis, so while I could extract a lot of knowledge about the language from the manual and browsing the example code (which is great by the way) I really don't feel that I'm using all of ChucK's potential to create interesting audio pieces, mostly beeps and noises and stuff like that.
In my opinion the pragmatic possibilities of such a book can be very interesting here in the ChucK universe. So please write this book and keep us posted!
Hi Zed! Please do this! I have both programming and musical(classical guitar) knowledge but I am having a hard time understanding chuck and sound synthesis. LPTHW was a great book, I wish I could have it when I started to learn Python. Thanks!
2010/11/6 Nic Freed
: Just wanted to let you know I am still reading, and this book is amazing, and should be sold for megabux$$$ ^_^ But seriously, it would be a dream come true for you to release a book like this for chuck. The severe lack of material on ChucK as a language has led me to read through a large manual, using it as my only source of information, and not a reference guide, as it was intended to be. The manual is a terrible choice for newbies to programming and audio synthesis because: a. It is very dry and includes almost no examples b. It assumes prior programming knowledge and understanding of many concepts in music synthesis as well For these two reasons alone, I must urge you, PLEASE make this book. It is very sad that a language as amazing language like chuck lacks a comprehensive guide for learning the language, from a complete beginner's point of view. Thank you so much for considering! :D --Nic PS When I finish the book, I will let you know which examples I found most helpful, and which I think should be included in ChucK's book, if you are to write it. It may take a while, because of school, but I will get through it soon enough :) On Fri, Nov 5, 2010 at 9:38 PM, Nic Freed
wrote: Thanks a lot, awesome to meet you :D I will let you know once I get further into the book which exercises I found the most helpful, I will be happy to help :) --Nic
On Fri, Nov 5, 2010 at 8:39 PM, Zed A. Shaw
wrote: On Fri, Nov 05, 2010 at 06:12:33PM -0500, Nic Freed wrote:
Oh my gosh, I am reading that book now! You did an amazing job, and I am learning tons, thank you so much :)
Glad you like it. It will definitely help you with ChucK, so let me know what exercises you found the most useful. Also let me know if you get stuck at anything and I'll try to help.
-- Zed A. Shaw http://zedshaw.com/ _______________________________________________ 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
-- http://www.twitter.com/lfzawacki http://www.linesocode.wordpress.com http://www.umblag.wordpress.com _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
-- Adolfo Fitoria http://fitoria.net
what is the status of this? i'd jum on it if it were an accessible thing for me. that is to say, print bad. can handle some pdf stuff, though i just drop that out to plaintext anyway. On 11/5/2010 5:23 PM, Zed A. Shaw wrote:
Hi folks, long time lurker, infrequent poster.
I've recently finished a book for Python and I'd like to do a similar one for ChucK. The Python book is "Learn Python The Hard Way" and it's written similar to a guitar method book:
http://learnpythonthehardway.org/
What I'd like to do next is a "ChucK Method Book" in a similar style, but actually make it more like a real method book for an instrument where the student is learning to "play chuck" like they would an instrument.
If I were to do this, what do you think it should include? Do you think it's a good idea? Have you tried teaching ChucK?
Thanks!
If I might opine upon this subject. I think that a community-written
manual/usage document is a great idea. I think for something open
source like Chuck, we ought to spearhead an effort to both document as
well as proselytize using Floss Manuals - http://en.flossmanuals.net/
I know we've had this discussion before, but if this is to be a method
book, or something like that, I don't see why it should be there
instead of some pdf. Sharing a document is so hard that way.
thoughts?
mike
On Fri, Jan 28, 2011 at 1:42 PM, Alan Yoder
what is the status of this? i'd jum on it if it were an accessible thing for me. that is to say, print bad. can handle some pdf stuff, though i just drop that out to plaintext anyway.
On 11/5/2010 5:23 PM, Zed A. Shaw wrote:
Hi folks, long time lurker, infrequent poster.
I've recently finished a book for Python and I'd like to do a similar one for ChucK. The Python book is "Learn Python The Hard Way" and it's written similar to a guitar method book:
http://learnpythonthehardway.org/
What I'd like to do next is a "ChucK Method Book" in a similar style, but actually make it more like a real method book for an instrument where the student is learning to "play chuck" like they would an instrument.
If I were to do this, what do you think it should include? Do you think it's a good idea? Have you tried teaching ChucK?
Thanks!
_______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
On 28 January 2011 20:06, mike clemow
If I might opine upon this subject. I think that a community-written manual/usage document is a great idea. I think for something open source like Chuck, we ought to spearhead an effort to both document as well as proselytize using Floss Manuals - http://en.flossmanuals.net/
I agree with this sentiment. I don't mean to say that a single author writing his own book is a bad idea; it's not a either/or thing, I just like creating stuff together.
Yours, Kas.
On Fri, Jan 28, 2011 at 02:06:59PM -0500, mike clemow wrote:
If I might opine upon this subject. I think that a community-written manual/usage document is a great idea. I think for something open source like Chuck, we ought to spearhead an effort to both document as well as proselytize using Floss Manuals - http://en.flossmanuals.net/
I know we've had this discussion before, but if this is to be a method book, or something like that, I don't see why it should be there instead of some pdf. Sharing a document is so hard that way.
So, writing one of these isn't hard. For me it was a piece of cake to write http://learnpythonthehardway.org/ and really the only thing holding me back on The Chuck Method Book is time. If people wanted to do a community version of it I have a some suggestions that will help make it actually work. You'd think writing a book with a bunch of people is as fun as writing software but it's actually a lot more difficult. The problem is that everyone has their own voice and while source code forces everyone to basically talk the same way, with English even slight variations can be irritating to a reader. The other problem with completely community based books is they become disorganized and are never finished, so you have these half-done and highly flawed works out there confusing people. On the flip side, there the problem of an author not having enough time or not being enough of an expert to generate source material and copy. A community can produce a lot more material than one person. What I suggest you do is you combine the two. You have a wiki of "ChucK Recipes" or similar that people can just go crazy with and write up how to do anything. They need to rate them by difficulty and whether it's say a tip/trick or an exercise type of tip. The model to follow is http://vim.wikia.com/wiki/Vim_Tips_Wiki to see how this is done right. Now, this ChucK Tips wiki is allowed to be disorganized and have a loose structure, so that let's everyone contribute material. Choose a consistent Wiki format that supports code. The tips wiki purpose is to *not educate or guide* but instead to be a *reference* for getting things done. You then have the "official" ChucK Method Book. This book should be collected and edited/written by one or two people. I prefer one person who can write since then the book has one voice and can be finely crafted. The job of the CMB editor is to take tips and exercises from the Tips wiki, combine them with a guided set of exercises with the goal of taking someone from nothing to capable in play ChucK music in 1 year. Of course, some people will go through the book faster than a year. But if you plan on 52 exercises, 1 per week, then people can structure that any way they need. It then gives you a solid guide for how the book is built, and sets up all your topics and an end point. After you've got this editor in place, and the tips wiki filling up, writing the book is literally a couple hours an evening of cleaning up tips and putting them in the right lessons. I did this and wrote LPTHW in about 3 months, with maybe 2 months of real work on it. One word of warning though: People will scream up and down that they'll contribute to the book and that they know exactly how to teach people. 99% of these people are completely full of it. They'll write little tips, they'll write code, but most of them don't know the first thing about teaching a concept or really even writing about it. Don't get your hopes up that you'll have hordes of really great lessons just handed to you. You will have to finely craft the manual if you want it to be good. The editor will have to focus on really getting the voice, structure, and flow right and shouldn't assume anyone else is going to help unless they prove themselves over and over. If you want help getting a sphinx setup going (that's what I used on LPTHW) I can give some pointers. -- Zed A. Shaw http://zedshaw.com/
Hey Zed,
I think your idea is great and I really appreciate your advice about
how to write a decent educational book. I have never written an
educational book--although I have experience doing tech documentation,
which I know is a different animal but should help with the clarity
thing. Also, I have enough experience teaching to know that I have a
lot more to learn about educating people. I think that's what makes
teaching so hard.
Anyway, I would love to contribute little lesson seeds to a growing
garden of possibilities that will later be collected, curated and
organized by an official author (or two) into some coherent text.
Another thing that this collection would be really helpful for is
generation of lesson plans for people who are using Chuck in a
classroom setting (specifically outside of Princeton and Stanford,
since they have well-developed curricula already).
Sphinx... you mean this? http://sphinx.pocoo.org/index.html
At first glance it seems to be Python specific. Can you explain how
will that help us with Chuck examples?
Best,
Mike
On Fri, Jan 28, 2011 at 3:52 PM, Zed A. Shaw
On Fri, Jan 28, 2011 at 02:06:59PM -0500, mike clemow wrote:
If I might opine upon this subject. I think that a community-written manual/usage document is a great idea. I think for something open source like Chuck, we ought to spearhead an effort to both document as well as proselytize using Floss Manuals - http://en.flossmanuals.net/
I know we've had this discussion before, but if this is to be a method book, or something like that, I don't see why it should be there instead of some pdf. Sharing a document is so hard that way.
So, writing one of these isn't hard. For me it was a piece of cake to write http://learnpythonthehardway.org/ and really the only thing holding me back on The Chuck Method Book is time. If people wanted to do a community version of it I have a some suggestions that will help make it actually work.
You'd think writing a book with a bunch of people is as fun as writing software but it's actually a lot more difficult. The problem is that everyone has their own voice and while source code forces everyone to basically talk the same way, with English even slight variations can be irritating to a reader. The other problem with completely community based books is they become disorganized and are never finished, so you have these half-done and highly flawed works out there confusing people.
On the flip side, there the problem of an author not having enough time or not being enough of an expert to generate source material and copy. A community can produce a lot more material than one person.
What I suggest you do is you combine the two. You have a wiki of "ChucK Recipes" or similar that people can just go crazy with and write up how to do anything. They need to rate them by difficulty and whether it's say a tip/trick or an exercise type of tip. The model to follow is http://vim.wikia.com/wiki/Vim_Tips_Wiki to see how this is done right.
Now, this ChucK Tips wiki is allowed to be disorganized and have a loose structure, so that let's everyone contribute material. Choose a consistent Wiki format that supports code. The tips wiki purpose is to *not educate or guide* but instead to be a *reference* for getting things done.
You then have the "official" ChucK Method Book. This book should be collected and edited/written by one or two people. I prefer one person who can write since then the book has one voice and can be finely crafted. The job of the CMB editor is to take tips and exercises from the Tips wiki, combine them with a guided set of exercises with the goal of taking someone from nothing to capable in play ChucK music in 1 year.
Of course, some people will go through the book faster than a year. But if you plan on 52 exercises, 1 per week, then people can structure that any way they need. It then gives you a solid guide for how the book is built, and sets up all your topics and an end point.
After you've got this editor in place, and the tips wiki filling up, writing the book is literally a couple hours an evening of cleaning up tips and putting them in the right lessons. I did this and wrote LPTHW in about 3 months, with maybe 2 months of real work on it.
One word of warning though: People will scream up and down that they'll contribute to the book and that they know exactly how to teach people. 99% of these people are completely full of it. They'll write little tips, they'll write code, but most of them don't know the first thing about teaching a concept or really even writing about it. Don't get your hopes up that you'll have hordes of really great lessons just handed to you. You will have to finely craft the manual if you want it to be good.
The editor will have to focus on really getting the voice, structure, and flow right and shouldn't assume anyone else is going to help unless they prove themselves over and over.
If you want help getting a sphinx setup going (that's what I used on LPTHW) I can give some pointers.
-- Zed A. Shaw http://zedshaw.com/ _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users
On Fri, Jan 28, 2011 at 05:04:20PM -0500, mike clemow wrote:
Hey Zed,
Sphinx... you mean this? http://sphinx.pocoo.org/index.html
Yep, it works. It's good for making the book, not so good for the wiki.
At first glance it seems to be Python specific. Can you explain how will that help us with Chuck examples?
It's not Python specific. It uses python, but you can put any language in it. It's just a good wiki format with the ability to typeset source code with/without color and produce PDF or HTML output. -- Zed A. Shaw http://zedshaw.com/
participants (7)
-
Adolfo Fitoria
-
Alan Yoder
-
Kassen
-
Lucas Zawacki
-
mike clemow
-
Nic Freed
-
Zed A. Shaw