Jump to content

Workspace and file management


Recommended Posts

Kicking off a few topic areas that might be useful for collecting together some related methods for building up these threads. I think it will be helpful to have things in easily searchable form under threads as far as possible. Happy for other suggestions though.

 

Workspace and file management is a bit prosaic  to start out with but from my perspective is absolutely essential for organising creative activity. Back in my early days of working in computer music, I worked initially --as luck would have it -- mainly on a Fairlight CMI Series 1 using MCL (Music Composition Language). File management on the CMI was an absolute nightmare. I still have reams of paper print outs for all my CMI floppy disks. From there I moved onto Macs and then most recently Supercollider. I found SC's filing system via the IDE was reasonably good but it was/is easy to get lost in many small files of SC code and this meant that error handling - particularly for environment-level variables - was a challenge. When I first picked up OM wanted to make sure that I didn't end up buried in piles of code fragments - so I have a system to manage it.

 

I've been trying a variety of ways of using workspaces and file organisation when working on ideas and have now settled on two main working methods that work well for me - at least as I start to develop more proficiency with OM.

 

1:  I maintain a basic main Workspace  that I spend most of my OM time in. This is organised into folders and sub-folders using the Mac OS Finder and I keep as tidy as possible. This is grouped into a hierarchy by topics (Compositions; Ideas; Scratchpads; Functions; Example Code; Learning).

 

I find that having everything in the one Workspace but organised into folders is useful while I work on multiple levels and on different tasks.

 

'Scratchpads' is  basically a dumping ground for playing around without worrying too much about organising code. I find it helpful to have this area and it keeps everything else tidier as a result.

 

'Ideas' is more structured files as I develop scripts which then move into the Compositions folder if I'm happy with them.

 

'Compositions' folder is for working script files when they show some promise for further development but the main files I keep in here are where a specific algorithm has started to regularly produce output that I'm happy with and want to spend a lot more time working with. 

 

'Functions', 'Example Code', 'Learning' places to store specific examples of other's code, examples of function use etc and I find it helpful to have them in the main Workspace so they are alongside for easy reference.

 

Then, of course, the other major folder area under User (Extensions, Libraries) are just tabs within the Navigator. I find that I work across these tabs a lot but will also do initial development work on Sound Sets or Unfold Sets in my general Workspace before moving them into the Extensions folder. Same with developing my own functions.

 

2: A specific Workspace for a set of Composition files that I have got to a stage of development where having their own files organised hierarchically with scores, MIDI files, audio and so on in one space is useful to keep a handle on the work.

 

I have not yet tried having multiple Workspaces open at the same time but that's an alternative I might use once I have more bigger file sets for larger works in progress.

 

The main issues that I have with OM files is the frequent messaging related to 'newer versions' of a file - and in the Finder important to keep all versions via auto-save along with the main files. Those don't show up in the Navigator but they do in the Finder - and I learnt the hard way when first organising via the Finder that deleting them breaks the original files too.

 

Compared with other systems (Supercollider or OpenMusic for instance), I find OM's Finder based folders very easy to keep tidy as it makes organising them much more transparent. The OpenMusic spin-off 'OM-Sharp' notably moved to this way of organising files by default.

 

What I have not done much yet is embedding file paths into scripts so that's something it might be helpful to have some posts on in this thread. I'll also - no doubt - look into more vanilla CL file management options.

 

bw

 

Andrew

Link to comment
Share on other sites

These are interesting ideas, and I agree with the dilemma you pose at the outset of post.

 

And I remember the days well...mine were with a Vax 11/780 - magtape, (reams and reams of paper), and off-loading audio all the time to PCM-F1, etc.  Yikes.  It was only recently that I threw out all of my dozens and dozens of magtapes - I had carted them from Cali decades ago and had stored them everywhere for years and years.  Finally, a big clean-out invited a dumpster to visit.  I was left with only...why?

 

It is true that with significant engagement with Opusmodus one can create loads of files and they can get muddled easily without the discipline of naming conventions and hierarchies. I try to keep the individual code files as compact as possible and they can multiply fast. I am often referring to "File Explorer" to report on things like creation and mod dates and so on.  It would be great to have that info within Opusmodus proper. Of course you can use "show in..." to open the directory from the interface, but a few extra fields might be helpful in the navigator.  Not at all sure if this would be possible or even desirable by all.

 

As for the myriad types of files (MIDI, XML, etc.) I typically just define a path directly in the code and write everything there - named for the composition project, programming project, etc.  For example, when I am working on a composition project I will write the midi and xml of each run to a directory.  A convention for auto-naming in this regard would be most helpful. (There is likely a function that could be written to do this easily).  For just sketches on piece I might be writing hundreds of midi files.  A way to flag the ones of greatest interest would be fantastic, as these are easily forgotten with the passage of time.  I gather from your discussion that you will save MIDI and audio in the same hierarchies as the code data.

 

But, at the end of the day, I am eager to learn about some ways to streamline my own OMN environment and methods. Especially now that I am digging deeper into some complex works.

 

My work in OMN has largely shifted to the Windows platform.  I continue to use MACs for specific things like Metasynth, etc.  But, the studio is basically a Windows shop.  So, it may be that a parallel project would be to see if we can set up some unique methods for organization using the various tools available for Windows as well.

 

My general approach so far is to use your #2 notion.  I try to keep things organized in workspaces that can be sensibly named for compositions or project programming work.

Your discussion reminds me a bit of the need for tools - such as Resonic or AudioRanger - for auditioning and tagging of audio files, which also multiply like rabbits in the field of electroacoustic music composition.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

Terms of Use Privacy Policy