Three tiny requests from my students

Just three little requests from my students that I thought were good ideas:

  1. When all the synth names are listed under the “Synth” tab in the help menu could they be listed with the first letter lowercase, just like it should be typed in to the buffer?

  2. It seems that function names cannot begin with an uppercase letter? When I defined a function as Foo it did not run but if I named it foo or fooFoo it did? If so, can that be explained in the tutorial?

  3. When loading an .rb file into a buffer could a pop-up appear that says something like “This will override the current contents, if any, of this buffer. Do you want to continue?”

Thanks for considering these!

This seems to be a limitation of Ruby - while function names are allowed to start with an upper case letter, if so they have to be called with parentheses otherwise Ruby will interpret the name as a constant instead of a function name. So to call the function Foo, you have to use Foo().

This should probably be explained in the tutorial (or maybe, to avoid confusion, define could refuse to define a function starting with an upper case letter).

This feels like a good idea. I’m happy to consider a PR to this effect.

Synth names are listed as names and capitalised as proper nouns. This is also with synths that happen to have more than one word such as “Dark Ambience”. For it to match the required name style it would have to be “:dark_ambience” which I don’t think looks as nice and may even be confusing.

If you click on the name of a synth in the docs you see in the description the code to use: use_synth :dark_ambience. Perhaps this isn’t enough - but it does match what you need to write.

When loading an .rb file into a buffer could a pop-up appear that says something like “This will override the current contents, if any, of this buffer. Do you want to continue?”

I’m not a fan of popups in general - but I’ll think more about this. Was the issue that a student lost work by loading a separate file? Perhaps just making “undo” work properly in this situation (it doesn’t appear to) may be enough?

Yes, I was thinking to of maybe a brief sentence of explanation in the tutorial?

For the synth names I could do what you recommended and tell the students to click to see the description. They were just looking at the list of synth names and typing them in verbatim as capitalised proper nouns.

Yes, the student lost their work in the buffer, so maybe an “undo” as you suggested would be a better option?

Apologies if this is an obvious question, but what do you mean by opening up a PR?

Thanks again!

Apologies - it’s a technical term. It means “Pull Request” - a set of changes to the code that implement the desired behaviour.

Something like this?

1 Like

Just a brief heads up that in the upcoming v4.0.2 release (likely tomorrow) there are checks on ensuring function names created with define don’t start with an upper case letter and I’ve fixed the GUI behaviour so you can “undo” a file load operation.

Please thank your students for the fab feedback!

1 Like

Thanks Aaron! I shared this news with them today and they felt so good about being part of the process!

2 Likes