What associated skills would improve my Isadora skills?

  • I am just applying for some money to do some learning which would improve my Isadora skills and knowledge.
    The areas I'm particularly looking at are programming: learning javascript for a start.
    What other knowledge would be useful to make me an expert level Isadora programmer? Here's a list of what I see as the known unknowns:
    Arduino and processing?
    Lighting desk operation?
    Currently I'm a PC user: should I think about switching to Mac for the more advanced audio capabilities?
    Aside from Javascript, are there other programming languages I could learn that would let me use Isadora to its fullest? 
    Are there unknown unknowns that you can suggest?
    Thank you so much, Isadorables!

    Mark (not 'im, in Sunny London Town)

  • Tech Staff


    A couple of things that come to mind, mostly because of my own experiences.


    1. Javascript. Since it is built in it is the best choice.
      Best for: Structuring complex logic (where patching might be complex), Loading external data/configuration, Handling data from the web (JSON is most common)
      NOT for: interacting with the OS or anything outside Isadora (web data must be collected other ways)
    2. GLSL. Also built in. More Complex
      Only for creating video effects.... but awesomely powerful for this. If you want custom video treatments that are yours along.. this is your choice.
    3. Creative Coding Frameworks (take your choice)... eg: Processing or OpenFrameWorks
      Processing is its own language, based on JAVA... so learning it means you might be able to migrate to java later.
      OpenFrameWorks is C++, which is what Isadora is built with. Once the SDK is available you could create your own actors (I've done this for my own work). C++ is also closer to the C like structure of GLSL.
      ANY of these types of frameworks are going to create external applications that you will want to interface with Isadora either via Spout, NDI, or OSC. Both Processing and OF make this rather easy.
    4. Other external languages. I will mention Python here because I have used it externally a number of times. It does not yet have an easy method of sharing via Spout (there is a method on github, but not plug and play).
      It can easily communicate via OSC, and in general has a HUGE array of modules available, everything from Machine Learning, Computer Vision, to databases (even game engines).
    5. Ardunio. Uses C++ for its programming (although a little stripped down)

    My person choice has been to focus on C++. I find Openframeworks to offer a lot, and it has a great community of artists, much like Isadora (maybe not as friendly ;)

  • Tech Staff

    I'm listing these because they may be helpful to others, I'm sure you've already got a lot of these covered.

    Other adjacent skills that certainly help are learning about: 

      • Seriously, this is one of the most important things to learn, especially if you want to massage real-world data into something useful for an interactive project (motion/color/skeleton tracking, sound level control, using a Wiimote, etc.)
    • Pro AV gear
      • What's ideal for common problems like running cable over a long distance (HDMI/VGA/DVI-over-ethernet or SDI) and what's overkill (Fiber)
      • How to make system flow diagrams
    • Making good Control Panels and template Scenes
      • A good template scene with a good Control Panel that allows you to very quickly switch media, pan, spin, zoom, etc really speeds up the process of building a project (especially in a theater environment)
      • After the process of building the show is over, I switch to a simple Control Panel with a Stage Preview, Go, Back, and Scene List Control to make it easy for the operator.
    • Snapshots
      • Snapshots are a great way to experiment and save multiple looks. Also if a director asks you to change something, take a Snapshot first (so you can return to the way it used to be if they change their mind).
      • When designing shows I like to use Snapshots to have 3-5 different options ready to show the director for each Scene (the directors I've worked with LOVE this)
    • Copyright and Intellectual Property Law
      • Learn how to ethically source and use public domain, non-attribution media. Don't steal people's content!
      • One should also be aware of this when sourcing GLSL shaders to use!
    • Projection-mapping onto irregular surfaces
    • NDI
    • Various communication protocols:
      • OSC
      • MIDI Show Control (MSC)
      • MIDI Timecode (MTC)
      • DMX 
    • Computer Networking
    • Connecting multiple computers/other software/lighting desks to Isadora
      • One of the most common requests is to have Isadora be controlled by/control other computers/devices like a lighting board or a separate computer running QLab.
      • Learn how to pass video between smartphones and multiple computers using NDI
      • Communication protocols (OSC, MSC, MTC, DMX)
      • Computer networking
    • Remote access and remote control of Isadora/your computer
      • Touch OSC for custom control panels on your phone or tablet
      • TeamViewer or other VNC solutions to use your laptop and wifi to access the show computer remotely but still be able to walk right up onstage and fine-tune your projection mapping
    • Learn other software/apps that compliment Isadora to extend your toolkit and become more flexible
      • Learn QLab too! People think Isadora and QLab are either/or, but it's not like that. When schools and artists ask me which software they should get, Isadora or QLab, my answer is almost always "Both!". Isadora is top-dog for interactivity, non-linear cueing, and anything "irregular", and QLab is great for linear cueing. They both have their own weaknesses and strengths, but they work SO well together. If you know both of them you're golden.
        • If you know both Isadora and QLab you'll be able to work more efficiently with Sound Designers and integrate Isadora with QLab to reduce the number of operators needed for a show.
      • TouchOSC, OSCulator, QLC+, Eos Family Software, TeamViewer, SoundFlower, iShowU Audio Capture, AirBeam Pro, Epoccam, NDI phone apps, NDI Syphon, Syphon, Syphoner, ScreenCaptureSyphon, Spout, etc.
      • Haven't updated this in a loooong time but: https://lucaswilsonspiro.wordpress.com/software/

    Other things you can do:

    • Think up random things you'd like to program for fun and try to tackle them (or go on the forum and help others by building proof-of-concepts for them). You'll be able to cannibalize bits and pieces of these projects for later work. 
      • (I have lots of things that I built when I was bored that get incorporated into many of my projects now, be they whole systems, specific combinations of video effects I liked, or singular User Actors/Macros.)
    • Don't be afraid to pick the community's brain on the forum before you start a project or ask for help if you're stuck. 
      • People are often happy to help by making example files and I've found that even someone telling you the right words to Google in order to find what you're looking for can be a huge time-saver.
    • Read the forum and the TroikaTronix knowledge base articles to learn new concepts.
    • Browse the forum and the plugins page for content created by others that you can dissect to increase your understanding of Isadora.
    • If you work on Mac and do installation-based work, play around with AppleScript and startup items; they can be very helpful for automating tasks such as automatically-restarting Isadora, opening other software automatically on startup, or restarting the computer everyday at 2am (when nobody is around to see it) to keep the computer from being on 24 hours a day.

  • Beta Platinum


    Wow! So much to learn my head hurts just reading through those tech boy lists above. You should really get a decent audio interface and add to your list a good DAW - perhaps Ableton Live. 

    I think every other conceivable thing has been mentioned by @DusX and @Woland

    Hang on did they mention 3D modelling and rigging - I don’t recall and I ain’t going through those lists again to find out- not right now anyway

    best wishes

  • Izzy Guru


    Maybe integration with other media servers/software and hardware; disguise, greenhippo, AI, VYV, etc

  • What about dramaturgy or something that helps knowing when not to use technology : https://en.wikipedia.org/wiki/Chekhov%27s_gun

    Everybody knows how to use tech, but few stop to ask why? Therein lies the fuzzy realm between art & technology. It's also where less is more lives, which is good for the budget.

  • @fubbi said:

    ...but few stop to ask why? 

    It's always my first question.




  • @fubbi

    Thank you for the reminder! No, I'm well versed in dramaturgy and performance and knowing when and when not it's appropriate to use technology. As @CitizenJoe says, "why?" is always the first question.
    In this case I'm really wanting to know *how* to use Isadora better!

  • @mark_m I did not assume otherwise, just balancing the list :)

    Light design has my vote then. It's a natural expansion of our scope as designers and its a ton of fun. In terms of interacting with isadora ETC Nomad is awesome, you can use OSC to control everything, even simulating key stroke combinations. I am using MA, a bit harder communicate with but for pure light programming its the bees knees

  • @woland wonderful info. THank you!