{"id":3620,"date":"2024-05-30T15:35:51","date_gmt":"2024-05-30T15:35:51","guid":{"rendered":"https:\/\/blogs.qsc.com\/systems\/?p=3620"},"modified":"2024-05-30T18:24:27","modified_gmt":"2024-05-30T18:24:27","slug":"developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin","status":"publish","type":"post","link":"https:\/\/blogs.qsc.com\/systems\/es\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/","title":{"rendered":"Developer Spotlight: Composing the Q-SYS Ecosystem with Andrew Tomlin"},"content":{"rendered":"<h2 class=\"has-medium-font-size wp-block-heading\">Introduction<\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p>Today, we highlight another influential figure of the Q-SYS community, Andrew Tomlin, who also impacts many areas of the Q-SYS Ecosystem through his professional work.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-9d6595d7 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<div class=\"wp-block-image is-style-default\"><figure class=\"aligncenter size-wcfixedheightsmall is-resized\"><img decoding=\"async\" src=\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-180x180.png\" alt=\"\" class=\"wp-image-3623\" width=\"160\" height=\"160\" srcset=\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-180x180.png 180w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-300x300.png 300w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-150x150.png 150w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-48x48.png 48w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-250x250.png 250w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-550x550.png 550w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-500x500.png 500w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle.png 600w\" sizes=\"(max-width: 160px) 100vw, 160px\" \/><\/figure><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>Andrew lives at the intersection of cool technology and massive events. He works with the largest entertainment companies in the world and has programmed a wide variety of Q-SYS systems including those for complex parades, museums, live productions, and the biggest halftime show on Earth. In between those projects, he develops utility plugins that make Q-SYS even easier to use. In 2021, Andrew founded Odd Harmonics, a programming firm which recently became a Q-SYS Developer Partner.<\/p>\n<\/div>\n<\/div>\n\n\n\n<p>We hope you enjoy learning more about Andrew\u2019s perspective as much as we did.<\/p>\n\n\n\n<hr class=\"wp-block-separator is-style-wide\" \/>\n\n\n\n<h2 class=\"has-medium-font-size wp-block-heading\">Interview<\/h2>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy:<\/strong> Hi Andrew, thank you for meeting with us today! Can you tell us about your personal background and professional career, and tell us more about when you were first introduced to Q-SYS?<\/p>\n\n\n\n<p><strong>Andrew: <\/strong>I started programming Q-SYS back when it was in version 1. I got the chance to program the Q-SYS design for a new audio system in a couple small venues. My first real puzzle was to find a way for the bartenders to be able to change the input selection, but only when the technicians allowed them to. I was instantly hooked!<\/p>\n\n\n\n<p>I started programming Q-SYS back when it was in version 1. I got the chance to program the Q-SYS design for a new audio system in a couple small venues. My first real puzzle was to find a way for the bartenders to be able to change the input selection, but only when the technicians allowed them to. I was instantly hooked!<\/p>\n\n\n\n<p>Since then, I\u2019ve been fortunate enough to program Q-SYS for the largest themed entertainment companies in the world, as well as for major stadiums, theaters, restaurants, and more conference rooms than I can count. I founded Odd Harmonics in 2021 to bring together all the various projects under one brand.<\/p>\n\n\n\n<p>For formal education, I have a Bachelor\u2019s of Science in Music Industry and a Master\u2019s of Communication Management. While some of that knowledge and experience has proven valuable, I have learned far more on my own than I ever did in a classroom. No one has ever asked me what degrees I hold when considering me for a job.<\/p>\n\n\n\n<p>Whenever I can get away from a screen, I enjoy hiking and backpacking. Even while I\u2019m out in the wilderness, though, I\u2019m still brainstorming and fleshing out new ideas for various projects. It\u2019s hard to turn off! Some of my most creative ideas came while staring across a valley in the middle of nowhere.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy:<\/strong> Can you tell us more about Nexus, your most known contribution to the Q-SYS Ecosystem, as well as what got you into developing such an extensive solution for Q-SYS users?<\/p>\n\n\n\n<p><strong>Andrew: <\/strong>I enjoy helping people grow and do things that they thought were beyond them. That\u2019s what inspired me to write Nexus, a utility plugin that brings macros to Q-SYS. It gives a simple framework for programming complex tasks, allowing users to easily build sequences of actions, and trigger them in various ways. There\u2019s a completely free version available for anyone to use in any way they see fit.<\/p>\n\n\n\n<p>Nexus is applied in a wide variety of applications. I love hearing about how Nexus is being used to control the audio, lights, video, and effects for shows at themed entertainment parks around the world. Some folks write startup\/shutdown sequences for museums, and others run their factory\u2019s shift bells from Nexus. Nexus is also used for easily scheduling the entry and exit announcements at stadiums.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/blogs.qsc.com\/systems\/es\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1.png\/\"><img decoding=\"async\" src=\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-1024x824.png\" alt=\"\" class=\"wp-image-3625\" width=\"512\" height=\"412\" srcset=\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-1024x824.png 1024w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-300x241.png 300w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-768x618.png 768w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-1536x1236.png 1536w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-2048x1648.png 2048w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-250x201.png 250w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-550x443.png 550w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-800x644.png 800w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-224x180.png 224w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-373x300.png 373w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Nexus-Screenshot-1-621x500.png 621w\" sizes=\"(max-width: 512px) 100vw, 512px\" \/><\/a><figcaption>Nexus Brings Macros to Q-SYS<\/figcaption><\/figure><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>Anything new that you are working on and that Q-SYS users should be excited about?<\/p>\n\n\n\n<p><strong>Andrew: <\/strong>Channel Library, a soon-to-be released utility plugin, offers a seamless way to store and recall processing presets, and share them between channels across the design. It\u2019s the best elements of Channel Groups and Snapshots, rolled into one plugin.<\/p>\n\n\n\n<p>The signal chain is totally customizable, so you can suit it to your needs. It also offers a beautiful customizable EQ response display (that includes High-Pass and Low-Pass Filters) which you can easily view and control on a UCI.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/blogs.qsc.com\/systems\/es\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1.png\/\"><img decoding=\"async\" src=\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-1024x418.png\" alt=\"\" class=\"wp-image-3626\" width=\"512\" height=\"209\" srcset=\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-1024x418.png 1024w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-300x122.png 300w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-768x313.png 768w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-1536x627.png 1536w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-2048x836.png 2048w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-250x102.png 250w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-550x225.png 550w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-800x327.png 800w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-441x180.png 441w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-735x300.png 735w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-1-1225x500.png 1225w\" sizes=\"(max-width: 512px) 100vw, 512px\" \/><\/a><figcaption>Customizable EQ Response Display<\/figcaption><\/figure><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>One great use case is a boardroom, where participants may sit in different seats for different meetings. The previous solution was to have a snapshot for each channel, each with settings stored for each of the participants. To update the EQ of one of the participants, you had to save the updated snapshot for each channel, sometimes dozens of times. Channel Library makes this process a breeze \u2013 just save each person\u2019s preset once, and it\u2019s instantly available to all channels, even across multiple instances of the plugin.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/blogs.qsc.com\/systems\/es\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2.png\/\"><img decoding=\"async\" src=\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-870x1024.png\" alt=\"\" class=\"wp-image-3629\" width=\"435\" height=\"512\" srcset=\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-870x1024.png 870w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-255x300.png 255w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-768x904.png 768w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-1305x1536.png 1305w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-1739x2048.png 1739w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-250x294.png 250w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-550x648.png 550w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-800x942.png 800w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-153x180.png 153w, https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/Channel-Library-Screenshot-2-425x500.png 425w\" sizes=\"(max-width: 435px) 100vw, 435px\" \/><\/a><figcaption>Channel Library Presets Simplify Boardroom Management<\/figcaption><\/figure><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>Another classic need for Channel Library is at a themed entertainment show, where various performers play different characters on different days. You can store EQ and compressor settings just once for each performer, then easily recall those settings to the channel of whichever character they are playing today. This saves a huge amount of time and headache compared to manually updating snapshots for each audio channel.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>How do you stay up to date with AV technology? What upcoming technologies excite you and how do you think Q-SYS could leverage them for a better user and developer experience?<\/p>\n\n\n\n<p><strong>Andrew:<\/strong> I keep current with the usual mix of conferences (InfoComm) and online forums (Q-SYS Communities), but my most useful updates tend to come from people around me. If you spend time in spaces (both physical and virtual) where people talk about the things you\u2019re interested in, you\u2019ll naturally hear about the latest developments.<\/p>\n\n\n\n<p>I\u2019m very excited about Q-SYS VisionSuite. It\u2019s such a huge leap forward from the previous camera automation solutions available. The presenter tracking in it today is already mind-blowing, but what really gets my imagination going is its potential \u2013 there is so much more room to grow for artificially-intelligent camera\/video presentation.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>What tools and resources do you think every Q-SYS Designer or Q-SYS plugin developer should have in their arsenal?&nbsp;<\/p>\n\n\n\n<p><strong>Andrew:<\/strong> Build out a personal library of User Components that are individual components, but with minor modifications. They\u2019ll save you a few seconds every time you use it, but more importantly, you won\u2019t need to interrupt your flow to change a couple of Properties. Personally, my most-used User Component is called \u201cContainer 0 0\u201d. It\u2019s a container with the input and output pin count already set to 0.<\/p>\n\n\n\n<p>If you\u2019re going to be developing multiple plugins, the Basic Plugin Framework (available in the Resources section of Communities) is worth the effort to set up, but by no means is it required. You can use a regular text editor (my favorite is Sublime Text) to get a workable plugin, but it will be slow when you want to iterate changes. The Basic Plugin Framework\u2019s build task to automatically compile and update the plugin is a huge time saver.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>Going back to education, what specific technological stack have you had to learn to become prolific with Q-SYS?&nbsp; How might you do it differently if you had to relearn everything today?\u202f&nbsp;<\/p>\n\n\n\n<p><strong>Andrew:<\/strong> Because I work with a variety of teams and organizations for various projects, I need to be ultra-flexible when it comes to collaborative technology. My laptop has more messaging, file sharing, and remote desktop software than I can count.<\/p>\n\n\n\n<p>As such, I keep the tools I force upon myself as minimal as possible. Currently, I write code with VS Code by Microsoft. I use GitHub for version control of plugins. I keep track of my projects with Things by Cultured Code. Everything else is more overhead than I\u2019m willing to take on.<\/p>\n\n\n\n<p>If starting over today, I would make sure to integrate generative AI into my coding workflow more seamlessly. I\u2019ve played with a few options, but I end up spending more time writing and refining the prompts than it would have taken to just write the code myself. I think that if I used it from the beginning, it would be more natural for me. I wonder if in ten years, I will be viewed the same way that touch-typers view hunt-and-peck typers today.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>What is your advice on creating scalable solutions with Q-SYS while ensuring a great user experience?<\/p>\n\n\n\n<p><strong>Andrew:<\/strong> The trick here is to anticipate what changes you\u2019ll need to make in the future, and make them as quick to do as possible. Even during the commissioning phase, there\u2019s bound to be some last-minute updates, and time then is especially precious.<\/p>\n\n\n\n<p>Take the basic example of changing the name of an audio input. If you have the name individually typed in various places in the design, it will be difficult to update it. The new Global Find &amp; Replace feature will help speed up that process, but even that requires you to take the file offline and doesn\u2019t work with names stored in controls.<\/p>\n\n\n\n<p>I often prefer to have a central location to store all the names in the design in a pair of linked Custom Controls components, with Text Edit and Text Display (one for back-end editing, and one for displaying on UCIs). Duplicate those controls everywhere in your design instead of individual text fields. It shortens a painful process of changing all the names to a matter of seconds, and you get to stay online with the Q-SYS Core processor.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>Any feedback to other programmers looking to grow as an independent programmer wanting to work with Q-SYS?&nbsp; <\/p>\n\n\n\n<p><strong>Andrew:<\/strong> Never stop learning! If you look back on a project you did last year and say to yourself, \u201cThat was awful; I did a terrible job. I would do so much differently now\u201d \u2026 that\u2019s a fantastic sign! It means you spent the last year getting better. Now you\u2019re approaching the situation with a more mature perspective.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>As an independent programmer working with Q-SYS, what is the value of a platform like Communities for Developers to you? &nbsp;<\/p>\n\n\n\n<p><strong>Andrew: <\/strong>Communities is simply phenomenal. If you\u2019re reading this and don\u2019t have an account, stop everything and join now! It\u2019s more than just a discussion forum; it\u2019s a centralized collection of otherwise-scattered resources that have been passed around via email for a decade or more.<\/p>\n\n\n\n<p>If there\u2019s one thing I wish I could change, I would love to be able to contribute more to the discussions in the Communities Groups. Even though I\u2019ve signed up for the email alerts, by the time I log on to write a reply, 98% of the time, someone has already posted a complete and really well-crafted response!<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>What are your thoughts in regards to the future of the AV Industry and where it will be in the next couple years?&nbsp; Where do you think breakthroughs in technology will come from?<\/p>\n\n\n\n<p><strong>Andrew: <\/strong>Obviously, AI is a huge topic these days. Similar to how technology has upset so many other fields, the work won\u2019t disappear, but it will change. Programmers of the future won\u2019t type as much code, but they\u2019ll spend more energy translating their client\u2019s requests into meaningful inputs to the technology.<\/p>\n\n\n\n<p>Differentiating between what the client says and what the client wants is critical to success.&nbsp; For example, a client demanding that \u201cin this meeting room, everyone should be able to hear everyone\u201d could be poorly interpreted by an AI. It might route every microphone to every speaker, and then everyone would have a bad day.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>Where can we find your work?<\/p>\n\n\n\n<p><strong>Andrew: <\/strong>Odd Harmonics has plugins available on Asset Manager and at <a href=\"http:\/\/www.odd-harmonics.com\">www.odd-harmonics.com<\/a><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p class=\"has-vivid-cyan-blue-color has-text-color\"><strong>Tammy: <\/strong>Where can we find you on Communities for Developers?<\/p>\n\n\n\n<p><strong>Andrew: <\/strong>I\u2019m most often in the Groups for \u201cScripting and Advanced Control\u201d and \u201cDSP Programming.\u201d You can also <a href=\"https:\/\/developers.qsc.com\/s\/profile\/0054X00000EeMPOQA3\">follow my profile<\/a> on Communities.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><\/p>","protected":false},"excerpt":{"rendered":"<p>Introduction Today, we highlight another influential figure of the Q-SYS community, Andrew Tomlin, who also impacts many areas of the Q-SYS Ecosystem through his professional work. Andrew lives at the intersection of cool technology and massive events. He works with the largest entertainment companies in the world and has programmed a wide variety of Q-SYS &hellip; <a href=\"https:\/\/blogs.qsc.com\/systems\/es\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/\">Read More<\/a><\/p>","protected":false},"author":65,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[36],"class_list":["post-3620","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-qsc-communities-for-developers"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Developer Spotlight: Composing the Q-SYS Ecosystem with Andrew Tomlin - Q-SYS<\/title>\n<meta name=\"description\" content=\"Meet Andrew Tomlin, and discover his journey from programming Q-SYS systems for massive events to founding Odd Harmonics and becoming a Q-SYS Developer Partner. Dive into his innovative contributions like Nexus and Channel Library, and get inspired by his vision for AI in AV.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blogs.qsc.com\/systems\/es\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Developer Spotlight: Composing the Q-SYS Ecosystem with Andrew Tomlin - Q-SYS\" \/>\n<meta property=\"og:description\" content=\"Meet Andrew Tomlin, and discover his journey from programming Q-SYS systems for massive events to founding Odd Harmonics and becoming a Q-SYS Developer Partner. Dive into his innovative contributions like Nexus and Channel Library, and get inspired by his vision for AI in AV.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blogs.qsc.com\/systems\/es\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/\" \/>\n<meta property=\"og:site_name\" content=\"Q-SYS\" \/>\n<meta property=\"article:published_time\" content=\"2024-05-30T15:35:51+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-05-30T18:24:27+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/developer-SPOTLIGHT-Andrew-Tomlin-v.2_1200x628.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tammy Fuqua\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tammy Fuqua\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/\",\"url\":\"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/\",\"name\":\"Developer Spotlight: Composing the Q-SYS Ecosystem with Andrew Tomlin - Q-SYS\",\"isPartOf\":{\"@id\":\"https:\/\/blogs.qsc.com\/systems\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-180x180.png\",\"datePublished\":\"2024-05-30T15:35:51+00:00\",\"dateModified\":\"2024-05-30T18:24:27+00:00\",\"author\":{\"@id\":\"https:\/\/blogs.qsc.com\/systems\/#\/schema\/person\/f24634e804cc1fb57d3d7d025fc1b98a\"},\"description\":\"Meet Andrew Tomlin, and discover his journey from programming Q-SYS systems for massive events to founding Odd Harmonics and becoming a Q-SYS Developer Partner. Dive into his innovative contributions like Nexus and Channel Library, and get inspired by his vision for AI in AV.\",\"breadcrumb\":{\"@id\":\"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#breadcrumb\"},\"inLanguage\":\"es-ES\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es-ES\",\"@id\":\"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#primaryimage\",\"url\":\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-180x180.png\",\"contentUrl\":\"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-180x180.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blogs.qsc.com\/systems\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Developer Spotlight: Composing the Q-SYS Ecosystem with Andrew Tomlin\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blogs.qsc.com\/systems\/#website\",\"url\":\"https:\/\/blogs.qsc.com\/systems\/\",\"name\":\"Q-SYS\",\"description\":\"System Blog\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blogs.qsc.com\/systems\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es-ES\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blogs.qsc.com\/systems\/#\/schema\/person\/f24634e804cc1fb57d3d7d025fc1b98a\",\"name\":\"Tammy Fuqua\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es-ES\",\"@id\":\"https:\/\/blogs.qsc.com\/systems\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6eb7abddbf421a8df969dea0797052cbe1851b166f04baa7c440812997fdbade?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6eb7abddbf421a8df969dea0797052cbe1851b166f04baa7c440812997fdbade?s=96&d=mm&r=g\",\"caption\":\"Tammy Fuqua\"},\"description\":\"Tammy has been in the AV industry for 20 years in various sales and marketing roles in both the private and public sectors. Her work history includes working with integrators and manufacturers such as Christie Digital, Epson, and currently with QSC. Tammy is passionate about helping women succeed in the industry and has spent the past 6 years working with the AVIXA Women's Council, a group of professionals committed to supporting and empowering women who work in the technology and AV industry \u2013 first as a member, two years ago appointed as co-chair to the Los Angeles\/Orange County region, and at the start of 2022, Co-Chair to the council. The council has over a thousand members and 50 groups throughout the world.\",\"url\":\"https:\/\/blogs.qsc.com\/systems\/es\/author\/tfuqua\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Developer Spotlight: Composing the Q-SYS Ecosystem with Andrew Tomlin - Q-SYS","description":"Meet Andrew Tomlin, and discover his journey from programming Q-SYS systems for massive events to founding Odd Harmonics and becoming a Q-SYS Developer Partner. Dive into his innovative contributions like Nexus and Channel Library, and get inspired by his vision for AI in AV.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blogs.qsc.com\/systems\/es\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/","og_locale":"es_ES","og_type":"article","og_title":"Developer Spotlight: Composing the Q-SYS Ecosystem with Andrew Tomlin - Q-SYS","og_description":"Meet Andrew Tomlin, and discover his journey from programming Q-SYS systems for massive events to founding Odd Harmonics and becoming a Q-SYS Developer Partner. Dive into his innovative contributions like Nexus and Channel Library, and get inspired by his vision for AI in AV.","og_url":"https:\/\/blogs.qsc.com\/systems\/es\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/","og_site_name":"Q-SYS","article_published_time":"2024-05-30T15:35:51+00:00","article_modified_time":"2024-05-30T18:24:27+00:00","og_image":[{"width":1200,"height":628,"url":"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/developer-SPOTLIGHT-Andrew-Tomlin-v.2_1200x628.png","type":"image\/png"}],"author":"Tammy Fuqua","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Tammy Fuqua","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/","url":"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/","name":"Developer Spotlight: Composing the Q-SYS Ecosystem with Andrew Tomlin - Q-SYS","isPartOf":{"@id":"https:\/\/blogs.qsc.com\/systems\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#primaryimage"},"image":{"@id":"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#primaryimage"},"thumbnailUrl":"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-180x180.png","datePublished":"2024-05-30T15:35:51+00:00","dateModified":"2024-05-30T18:24:27+00:00","author":{"@id":"https:\/\/blogs.qsc.com\/systems\/#\/schema\/person\/f24634e804cc1fb57d3d7d025fc1b98a"},"description":"Meet Andrew Tomlin, and discover his journey from programming Q-SYS systems for massive events to founding Odd Harmonics and becoming a Q-SYS Developer Partner. Dive into his innovative contributions like Nexus and Channel Library, and get inspired by his vision for AI in AV.","breadcrumb":{"@id":"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#breadcrumb"},"inLanguage":"es-ES","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/"]}]},{"@type":"ImageObject","inLanguage":"es-ES","@id":"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#primaryimage","url":"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-180x180.png","contentUrl":"https:\/\/blogs.qsc.com\/app\/uploads\/sites\/2\/2024\/05\/andrew-tomlin-headshot-circle-180x180.png"},{"@type":"BreadcrumbList","@id":"https:\/\/blogs.qsc.com\/systems\/2024\/05\/30\/developer-spotlight-composing-the-q-sys-ecosystem-with-andrew-tomlin\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blogs.qsc.com\/systems\/"},{"@type":"ListItem","position":2,"name":"Developer Spotlight: Composing the Q-SYS Ecosystem with Andrew Tomlin"}]},{"@type":"WebSite","@id":"https:\/\/blogs.qsc.com\/systems\/#website","url":"https:\/\/blogs.qsc.com\/systems\/","name":"Q-SYS","description":"System Blog","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blogs.qsc.com\/systems\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es-ES"},{"@type":"Person","@id":"https:\/\/blogs.qsc.com\/systems\/#\/schema\/person\/f24634e804cc1fb57d3d7d025fc1b98a","name":"Tammy Fuqua","image":{"@type":"ImageObject","inLanguage":"es-ES","@id":"https:\/\/blogs.qsc.com\/systems\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6eb7abddbf421a8df969dea0797052cbe1851b166f04baa7c440812997fdbade?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6eb7abddbf421a8df969dea0797052cbe1851b166f04baa7c440812997fdbade?s=96&d=mm&r=g","caption":"Tammy Fuqua"},"description":"Tammy has been in the AV industry for 20 years in various sales and marketing roles in both the private and public sectors. Her work history includes working with integrators and manufacturers such as Christie Digital, Epson, and currently with QSC. Tammy is passionate about helping women succeed in the industry and has spent the past 6 years working with the AVIXA Women's Council, a group of professionals committed to supporting and empowering women who work in the technology and AV industry \u2013 first as a member, two years ago appointed as co-chair to the Los Angeles\/Orange County region, and at the start of 2022, Co-Chair to the council. The council has over a thousand members and 50 groups throughout the world.","url":"https:\/\/blogs.qsc.com\/systems\/es\/author\/tfuqua\/"}]}},"_links":{"self":[{"href":"https:\/\/blogs.qsc.com\/systems\/es\/wp-json\/wp\/v2\/posts\/3620","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.qsc.com\/systems\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.qsc.com\/systems\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.qsc.com\/systems\/es\/wp-json\/wp\/v2\/users\/65"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.qsc.com\/systems\/es\/wp-json\/wp\/v2\/comments?post=3620"}],"version-history":[{"count":0,"href":"https:\/\/blogs.qsc.com\/systems\/es\/wp-json\/wp\/v2\/posts\/3620\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.qsc.com\/systems\/es\/wp-json\/wp\/v2\/media?parent=3620"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.qsc.com\/systems\/es\/wp-json\/wp\/v2\/categories?post=3620"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.qsc.com\/systems\/es\/wp-json\/wp\/v2\/tags?post=3620"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}