ScIDE is important

I started this discussion in an other topic, but it shouldn’t be interfering with the content, so I’d like to continue here.

I really think ScIDE is needed for a large public of users, and that it provides an easy way to get started with SuperCollider, when novice in code.


I don’t know where you guys live, but the whole generation that learnt to code in school in France is yet to be born. You don’t get access to programming courses unless you choose some specific diplomas, and those ain’t the artistics ones. In fact, you don’t even have access to mathematical courses if you chose artistic diploma. The most complicated topic I learnt in mathematic classes was exponential functions… 5 years before my first important degree.

I recently helped a friend who wants to open a programming school in Central African Republic. I doubt kids there will learn to code in the following decades…

Yet, I see SuperCollider as an opportunity to learn, experiment and have pleasure with music worldwide.


Very true. Though Nathan’s album is a better way to convince them it’s a legit language I think :grinning: .
But that only work if they are already familiar with an editor. In which case, yeah, they don’t really need ScIDE.


Also very true. But most of the artists I see are more interested into the artistic dimension of the medium. They want to learn how to use this particular artistic tool, not how to program. I think ScIDE is better for those cases. Most of the people I see using SC or Pure-Data write highly inefficient programs. But they sound real good.


As you guessed, I’m the average european linux user :rage: . I admit that the following is based on personal beliefs rather than reason, thus not a real argument. But I still think it has an importance.

If people want to use VSCode instead of ScIDE, I don’t see any problem with that. Both should be supported. But that doesn’t mean ScIDE should be removed.

So I can see that VSCodium is an alternative to VSCode (I don’t use it). Maybe this isn’t a problem for you, but I personally disagree with Microsoft’s use of personal datas, and the way they impose updates on their products. And of course the black box state of their code (but apparently this is not the case with VSCode).

SC is licensed under GNU GPL3, and that’s an important thing for me. I think that the understanding of the tools an artist use is an important part of it’s creative process. The ability to modify those tools is also important. If John Cage bought a Microsoft piano, it would have been sealed off, and we’d still have to invent prepared piano.

Having a GPL3 simple editor that works out-of-the-box is an immense chance for SuperCollider, to my eyes. It took me three days to configure Emacs correctly, and I knew what I was doing.


I’m also sensible (not a real argument either) that ScIDE is part of the project’s history. Some people told themselves ‘man, SC is so cool, it would be even better with an IDE! We could monitor the server’s state, switch between sessions, etc…’. And they did it. As a musicologist, that’s a good reason to preserve it.


Once again, that’s not about having to use one tool or the other, it’s about having the liberty to choose one that fits our needs. I think ScIDE has particularities that fits some needs, that no other editor fits as good. Just like other editors fits other needs better.

2 Likes

I teach at a conservatory and I have been teaching SC to artists for 10 years. Most of my students have never coded before or have only used Max or p5js. My opinions come from this experience.

I think we can have our cake and eat it too. A well designed VSCode (or whatever) plugin would just work. It takes about 5 seconds to get the correct extensions, etc to run Rust or python or c++. Why not SC? It should be no more difficult than downloading and installing the ide. And then after that the coding experience is way more pleasant.

The reason we needed an IDE is because editors at the time were not capable like they are today. They were very difficult. I know I could have used emacs in around 2003, but was never going to do that. The IDE was easy to use. Now the tables have turned and in most cases editors are easier to use.

What moss says is right on point. Sure, the IDE should be supported, but it isn’t. So why don’t we tap into an environment that has a bajillion users and utilize the support that this supplies?

Sam

I tend to agree that, at present, having ScIDE seriously lowers the learning curve for the majority of users. It comes with the system, starts instantaneously without any required configuration, doesn’t require jumping through burning hula-hoops to boot the server etc. It’s highly specialized for the task it was designed to do, and it’s quite good at it (not perfect obviously, but then, what is…).

Out of curiosity, I recently set up NeoVim for using with supercollider and it was way harder than I expected it to be, to the point where I really wonder how many without extensive vim experience can pull this off successfully. I did follow some tutorial/description, but almost every step was either not sufficiently detailed or caused unanticipated problems. If this had been my introduction to supercollider, I would have given up long before I even started.

Having said this, once I survived the setup, it seemed to work as advertised and offered similar features (and some extras) as ScIDE. So if the documentation/installation scripts can be improved to the point where it becomes a nobrainer to set up vscodium (or whatever-hype-of-the-day) to run supercollider as well, I honestly do not expect I would mind switching that much.

I have never taught in conservatory, but I know some people who either work or study there. I think this is an environment where people had access to a good education, and are used to manipulate complex symbolic systems (partitions for example). Maybe I’m wrong about this but that is the experience I had.

I used to propose ‘music workshops’ in ‘education priority networks’, concretely for people that are around ~18 years old, left school few years earlier, have a difficult life. The music topic allows to catch their attention, then the coding process allows to discuss a bit about organisation, project construction, teamwork, etc. At the end, we hope they enjoyed the workshop, and will contact the local antenna to find a professional formation (this is simplified). That’s an extreme example.

I also worked with disabled people, trying to get back to work. Typing a simple document to apply to a job, or do a web search was really difficult for them.

And so, even with design students (‘normal’ people), I sometimes have to take 5 minutes to explain why in SC it’s channel 0, but in Jack, it’s channel 1. That seems obvious and trivial to me, that’s only a convention, but that really blocks some people, that are not used to ‘computer’s logic’. This can result in fear (I really heard ‘I fear to do something wrong’ countless times).

So when trying to explain SuperCollider to these kind of people, who are really interested, I start really simple. We’re not doing fancy things. We’re going ‘blip blop’ sounds first, three lines of code, and then, if this goes well and the person isn’t too tired, we can go further, step by step.

ScIDE is perfect for this. Those people will be lost if I start explaining well, this is the editor, which is not the language itself, which you don’t really need to manipulate the server. So I just open the IDE and say ‘This is SuperCollider, let’s make a sound’.

I think your students don’t need this approach. They have higher goals, and they already know what an ‘E flat’ is (and probably also an harmonic). I totally agree with your methodology. I also agree that we should have a ready-to-use VSCode (or whatever) plugin for the people who benefits it.

Of course we should. But I think we shouldn’t rely only on this because it might exclude some users that are not used to those complex technologies but still would like to benefit from SuperCollider.

1 Like

I agree with @shiihs:

From my own experience of teaching composers, musicians and non-musicians, and as a learner with a background in composition, the learning curve of SuperCollider is stiffer than other programs. As far as I know and have experienced, some of the multimedia arts students are more used to programming after the first few semesters than other fields such as music and humanities. Even engineering and science students in the early semesters, including maths and physics, are not used to programming.

I think that retiring the SC-IDE may discourage many SC beginners who are not familiar with the field of computer science or music informatics. This may lead to a decrease in the number of SC users.

In the meantime, I have tried using Emacs, Atom, Vim, Sublime Text and VSCode etc as SuperCollider front-ends, but my choice was mostly to use

  • SC-IDE and
  • sclang from a batch file or terminal on MacOS and Linux, and from the command prompt on Windows.

My recent experience with SuperCollider VSCode / Language Server Protocol support has been extremely positive. It is easy to install and use. The only problem is the keyboard shortcuts, which are different from SC-IDE. I also tried to install SCNVim, but I could not follow the instructions to finish it; and the others are not as intuitive to me.
Why my flavour is fixed to SC-IDE seems to be due to my lack of computer science background.

We probably need to review the recent threads on the SuperCollider frontends:

Recent threads about the frontend for SuperCollider

  1. Which IDE is the most popular for SuperCollider editing code nowadays
  1. Which IDE do you use?
  1. SuperCollider VSCode / Language Server Protocol support
  1. SCNVim - A NeoVim frontend for SuperCollider
  1. hadron editor for SC
  1. Anyone using Sublime text IDE?

Maintaining the current official IDE and implementing new features

@VIRTUALDOG:
Could the following Hadron Editor for SC be the next IDE if maintaining the current official SC IDE is problematic? @htor would be more active in maintaining his IDE and implementing new features requested by other users if his IDE is accepted as the default IDE.

What I can do
All I can do is use what the developers maintain and develop. I just hope that the next environment is convenient, with class names and methods popping up as you type, and related help documents being read by searching from the current cursor position.

I am not visually impaired at the moment, but my eyesight is getting worse and one day I would need more accessibility when using the computer. If it is impossible to implement such a feature with the current community developers, we need to switch to another frontend with such features (and with the features in the IDE wish list), or outsource it with proper payment using donated funds, although I think there are few users who agree with outsourcing, as it does not seem to be the basic philosophy of the SuperCollider community.

1 Like

Has htor said that somewhere? The project looks abandoned to me.

No, @htor did not say that. It is just my assumption from looking at the threads above.
Yes, his project does not seem to have developed further to me either. But who knows the future of his project, his mind and the future of SC-IDE? @htor I apologise if my mentioning you and your project caused you stress.

+1 to this. please. SCIDE is good for some but won’t help me in the other thread.

2 Likes

A well designed and supported extension for a 3rd part IDE with a bajillion (or gazillion?) users would be expected to reduce the lift on the core SC dev group. If we don’t need to re-invent the wheel, life can become easier.

As long as the installation procedure / instructions make the process easy and frictionless, newbies should be fine.

BTW, I’m using a mix of SC-IDE and VS Code. Depending, some tasks are much easier in one or the other environment. It would be a very heavy lift (and unreasonable!) to expect SC devs to replicate the features of VS Code—or any other well maintained 3rd party IDE.

My intended point is that if we can reduce the maintenance burden for SC, that would be a good thing.

I have asked this in another thread already but want to do it again
here as I am still missing answers.
If I understand it correctly. VS Code is not under a FLOSS
license. I am surprised that we are not discussing whether we are making
ourselves dependent on proprietary software by phasing out support
for the current IDE, and relying on VS Code instead. Or am I missing a
point here?

There is a FLOSS version - vscodium which we could conceivable build and sign ourselves. VSCode, built by Miscrosoft, is non-floss and includes telemtery so agree that should be a non-starter

The core of vscode is MIT licensed. It is distributed as a FLOSS project under the name VScodium. MS distributes it with proprietary extensions and telemetry added.

The integration with vscode is using the Language Server Protocol, which while published and maintained by Microsoft, is supported by many editors:
Tools supporting the LSP. The single SC language server implementation can be adapted for other editors without rewriting the entire code.

3 Likes

FWIW: I tried vscodium with SC briefly today. It’s very nice. I reported one bug but I’m sure that will get fixed (I think it would have to get fixed, but I expect it isn’t that hard), and a server status panel would be nice to have (not there yet). (One of my big gripes in SC-IDE is its handling of ctrl-left and ctrl-right word navigation. Vscodium is an improvement here.)

AFAICS the only real objection to vscodium as an eventual IDE replacement is that currently it requires a separate install (i.e. not the one-click installation that SC currently ships), but this is a solvable problem.

hjh

I’m so jealous you managed to make it work! In my case I made a few bug reports as (on MacOS) I can’t make it work yet. I think @Sam_Pluta neither if I understood the other thread correctly…

If the community is happy with double support (SCIDE for beginner and easy, plug and play VSCode for visually impaired and other good reasons people will find) maybe vanilla SC could ship with the 2 things it needs to only need VSCode to instal its extension and boom! it works!

that would be awesome as I could tell my VI student, who has VSCode installed already for all the reasons mentioned) to just download SC and never open the SCIDE as she won’t need it.

anyway. for me SCIDE was good and is still needed for gigs and distribution of works etc etc etc so I’m not here to bash it, I’m here to support alternatives too :slight_smile:

1 Like

Once again (quite sure this has been stated before), the point would be to make it as easy to install SC+vscodium as it is to install SC now, and feature complete.

Currently vscodium is an alternate SC environment with some outstanding bugs and a bit rough installation process. If the bugs are fixed and installation is made easier, then the “dual support” idea could disappear.

hjh

1 Like

indeed I still cannot make it work on MacOS but I hope my issues will be helpful to make it more straightforward.

Obviously that would need to be fixed before any moves to replace the IDE – nobody is suggesting to put an incomplete and as yet not thoroughly tested editor in place of ScIDE. While there are a lot of good things already in the vscode plug-in, it looks to me like a beta release is still quite some distance away. If there are fatal installation problems in a beta, that’s worrisome – but we’re not there yet, so for now, the right thing is to do as you did: report bugs :+1:

hjh

1 Like

I wish I had written the following in this thread instead of the following one.

1 Like