Mack
Max Output Level: -85 dBFS
- Total Posts : 264
- Joined: 2004/03/25 08:32:02
- Status: offline
Complexity of making changes in Sonar
Hello, I know nothing about programming software. But I am curious about it. Cakewalk users are always suggesting how Sonar could be changed or features added. I guess my question is just how difficult is it to program changes in software? Are some modifications easy? Like one programmer could go in and in an hour make a small change. Or is it more like several programmers working a whole week or months to make a modification? I bet there are other besides myself that would find a discussion of this topic quite interesting. Perhaps some of you that really know the nuts and bolts of programming could enlighten the rest of us on this topic. Thanks,
Sonar Platinum Cakewalk BandLab Sony Sound Forge Pro 10 Garritan Personal Orchestra 5, Instant Orchestra MOTU Ultralite MK3 Hybrid Windows 10/64 Intel i7 CPU, 16G RAM Dual Screen Monitors ADK Pro Audio built Computer
|
sharke
Max Output Level: 0 dBFS
- Total Posts : 13933
- Joined: 2012/08/03 00:13:00
- Location: NYC
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/06 11:57:59
(permalink)
☄ Helpfulby Mitch_I 2016/08/06 13:28:09
With a program as complex as a DAW adding new features or changing existing features or even fixing bugs is no trivial process. As an example, a couple of years ago I reported a bug on the forum whereby automation of a ProChannel module's on/off switch wouldn't work unless the ProChannel in question was open on the console. A baker responded by saying that they were leaving it for the time being because to fix it would break a bunch of other stuff. That's the problem with being an end user and wondering why X, Y and Z can't be implemented or fixed when it sounds like a trivial task. Unless you're familiar with the code you have no idea how parts of the program are related to or affect each other. Modern program design is very modular and designed to reduce these dependencies as much as possible to reduce complexity, but it's still extremely complicated.
Also any changes need to be thoroughly tested, and in a DAW that's even more difficult because everyone's using different setups and hardware. Like most other DAWs I'm presuming Sonar has home beta testers as well as going their own in-house testing but even so, it must take a lot of testing to clear a new feature as ready for release.
But it's not just the technical side of it, they have a development budget to consider as well. Every hour of development eats away at that budget so they have to prioritize one thing over another according to how critical it is to the program, how many people use the feature etc.
JamesWindows 10, Sonar SPlat (64-bit), Intel i7-4930K, 32GB RAM, RME Babyface, AKAI MPK Mini, Roland A-800 Pro, Focusrite VRM Box, Komplete 10 Ultimate, 2012 American Telecaster!
|
sharke
Max Output Level: 0 dBFS
- Total Posts : 13933
- Joined: 2012/08/03 00:13:00
- Location: NYC
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/06 12:03:22
(permalink)
And for the record, I'm not a professional programmer. I've made a few small programs, including one for my business that I use every day, but they were tiny compared to Sonar. I programmed them in C which is related to C++ (which is what Sonar will be programmed with) and even something as small as my program had me tearing my hair out and wondering how in the hell progressional developers manage such large projects.
JamesWindows 10, Sonar SPlat (64-bit), Intel i7-4930K, 32GB RAM, RME Babyface, AKAI MPK Mini, Roland A-800 Pro, Focusrite VRM Box, Komplete 10 Ultimate, 2012 American Telecaster!
|
craigb
Max Output Level: 0 dBFS
- Total Posts : 41704
- Joined: 2009/01/28 23:13:04
- Location: The Pacific Northwestshire
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/06 16:41:27
(permalink)
James has things pretty much spot on. If 14 year-old Joey has a simple phone app that plays tic-tac-toe, then a small change might be accomplished in an hour, however, with any major, commercialized application there are several required processes and far more time involved. How much is a factor of all the various areas that need to be involved. [Point made. Feel free to skip the rest and go on with your life if you wish or, dive into far more depth on the topic! LOL!] Some of what is involved depends on what software project management methodology the company itself adopts. The older style (called "waterfall" and promoted by the Project Management Institute or PMI) works well with big projects where releases happen less frequently. Microsoft releasing a new OS every two years would fall under this type. In this style any change, regardless of size, gets lumped together and you'll see a long change log when it finally comes out. The newer approaches (of which there are several, like Agile and Scrum) have small, incremental releases. Each has its own benefits and detriments, but with the new online approaches and lifetime updates, the newer styles are pretty much the winners now. Needless to say, this is a tiny summary that doesn't include many of the other methodologies that are more used for other types of production (Adaptive, Critical Path, Six Sigma, etc.) and doesn't touch on the newer ways software becomes available to the consumer like Software As A Service (SAAS - where you pay a monthly fee to access the software online like Office 365). The bottom line here is that the newer approaches will have the small change you want faster but, in all real companies, there are project managers and many other people that get paid a lot involved. Once the project managers, in conjunction with business analysts, user experience people (UX), some upper management and, maybe, a steering committee decide on what new changes and fixes will actually become included in a release, then scheduling and resource allocation can occur (this is done between the project managers and programming managers). The programming managers will then assign the work to the programmers, database administrators and analysts who do the design and coding along with unit testing. From there the new and/or revised modules are sent to a Testing team who tries to break both the individual modules as well as the whole system (obviously there can be some loops back to development when errors are found). Once the software passes it usually goes to an Architecture or Integration group who then prepares and packages the software (not physical packaging) for release. Of course, during the time that the programmers and analysts are creating the code, there are other departments busy creating or updating the look of the product (if this will be sold in a physical package, then that's part of this too). These departments include graphic designers, web designers and developers as well as website administrators. Printing and distribution companies (suppliers) are brought in here too. Think that's enough people involved? Well, there's more. Depending on the company, you'll also have people dedicated to Change Management and Quality Control (which usually operate in-between the testing and architecture/integration teams), a training team (who, along with the graphic designers, create the user's guides, manuals, maybe tutorial videos or commercials), a technical support team (to answer all your burning questions in Hindu - just kidding, I think) and the sales team! Because, what good is a product if nobody sells it? Now, for a lot of this these days it's the creation of ad copy for the web or videos, but there's still plenty of in-person effort at stores that will sell the product or working demo booths. Are we done? Not even close! There are also several departments that keep the company going. These include Human Resources (HR), Accounting, Executive (including all the "C" level people, Administrative Assistants and Receptionists), Infrastructure (internal sysadmins, networking, server managers and technical support), Legal and last, but certainly not least, Facility Management. Heck, since this was all off the top of my head I probably left some groups out! LOL. Throughout my career, I have in some small way or very large way done almost ALL of the above at one time or another (except HR, Legal and Facility Management). Obviously smaller companies don't handle all of these areas by themselves, and some people will do multiple positions (I've worn as many as 17 hats during the start of a new alternative energy business - think 90+ hour work weeks with jobs still not getting done until we could hire more help!). A company can also outsource many of these areas (Legal, Accounting, Infrastructure, Graphic & Web Design) and/or use consultants as needed (Project Management, UX, Programming, Business Analysts, etc.). Even the unpaid public can be used in the form of Beta testers (their reward is seeing things first and self-gratification). Heh, I just thought of another group that they may have: Data Warehousing. Which, with Business Information (BI) specialists, can help the executives examine historical data and determine patterns for future products or enhancements (so-called Data Mining). Now, ALL of the people in these groups have one thing in common: They like to be paid! So any change needs to make sense from an ROI (Return On Investment) point of view. While this may usually be profit directly, it can also be in the form of brand promotion or enhancing a company's integrity/perceived value which, if done correctly, still goes back to profit. By far, the fastest any change will happen, will be in response to a major product failure that was somehow missed by all the Testing, CM/QA and Architecture/Integration teams. Even this will take far longer than an hour though. I bet you weren't expecting that much when you asked your questions (and I sure wasn't expecting to write this much! I should have started with "Hi," ya?  ). I won't blame you if this becomes a tl;dr post, but it should explain why things take so long to be done and why it costs what it does.
Time for all of you to head over to Beyond My DAW!
|
Mack
Max Output Level: -85 dBFS
- Total Posts : 264
- Joined: 2004/03/25 08:32:02
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/06 18:31:53
(permalink)
Craigb, Thanks for sharing your expertise on this. I kind of thought making changes was not an easy undertaking. Perhaps users might be a little more patient with Cakewalk when their feature requests are not immediately implemented, if they read your post.
Sonar Platinum Cakewalk BandLab Sony Sound Forge Pro 10 Garritan Personal Orchestra 5, Instant Orchestra MOTU Ultralite MK3 Hybrid Windows 10/64 Intel i7 CPU, 16G RAM Dual Screen Monitors ADK Pro Audio built Computer
|
kennywtelejazz
Max Output Level: -3.5 dBFS
- Total Posts : 7151
- Joined: 2005/10/22 06:27:02
- Location: The Planet Tele..X..
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/06 18:43:56
(permalink)
WOW Craig , I'm left with a few lingering questions after reading your post .. Is that still you ? or did an Extraterrestrial Being with 20 X the brain power of Albert Einstein's brain snatch your body and start typing your post up for you ...  Whew, I may have to call in a few favors over at MENSA and have somebody come over here to help explain your post to me Kenny
post edited by kennywtelejazz - 2016/08/06 19:11:14
|
drewfx1
Max Output Level: -9.5 dBFS
- Total Posts : 6585
- Joined: 2008/08/04 16:19:11
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/06 18:58:57
(permalink)
The short answer is that any changes can be: 1. Easy 2. Difficult 3. Impossible But there is no way of knowing which if you haven't seen the existing code. Something that seems like it should be easy from a user's standpoint is frequently very difficult or even impossible.
 In order, then, to discover the limit of deepest tones, it is necessary not only to produce very violent agitations in the air but to give these the form of simple pendular vibrations. - Hermann von Helmholtz, predicting the role of the electric bassist in 1877.
|
craigb
Max Output Level: 0 dBFS
- Total Posts : 41704
- Joined: 2009/01/28 23:13:04
- Location: The Pacific Northwestshire
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/06 19:35:03
(permalink)
kennywtelejazz WOW Craig , I'm left with a few lingering questions after reading your post .. Is that still you ? or did an Extraterrestrial Being with 20 X the brain power of Albert Einstein's brain snatch your body and start typing your post up for you ... Whew, I may have to call in a few favors over at MENSA and have somebody come over here to help explain your post to me  Kenny
Well Kenny, long ago, in a galaxy far, far away... My alter-ego me was asked to join MENSA several times but declined (a past President lives out here in Portland by the way). I'm not in Albert's world, but I DO understand some of his work (including the 4th dimension equation that Bitflipper has in his signature). I enjoy math and physics, especially Quantum Mechanics. I know what my IQ is (or was, at middle-age I think it drops a bit - lol), but I also don't believe that's the only measure of intelligence (not even close actually). The nerd teaser would be this: My IQ was gross when I was in 1st grade, but got better! Hey, what else would you expect from someone who got over 1,500 on his SAT's, was a PhD(c), a consultant for a Defense Contractor at 19, and someone who can recite Pi to over 40 digits? (A true party favorite that.  ) I used to be intelligent all over, now just one part of my body (the one that I sit on) seems to be considered smart.
Time for all of you to head over to Beyond My DAW!
|
bapu
Max Output Level: 0 dBFS
- Total Posts : 86000
- Joined: 2006/11/25 21:23:28
- Location: Thousand Oaks, CA
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/06 21:25:41
(permalink)
craigb (ITHRN) is head smart. I hears his head is up..... nevermind.
|
eph221
Max Output Level: -28.5 dBFS
- Total Posts : 4665
- Joined: 2014/12/22 05:06:50
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/06 22:04:47
(permalink)
craigb James has things pretty much spot on. If 14 year-old Joey has a simple phone app that plays tic-tac-toe, then a small change might be accomplished in an hour, however, with any major, commercialized application there are several required processes and far more time involved. How much is a factor of all the various areas that need to be involved. [Point made. Feel free to skip the rest and go on with your life if you wish or, dive into far more depth on the topic! LOL!] Some of what is involved depends on what software project management methodology the company itself adopts. The older style (called "waterfall" and promoted by the Project Management Institute or PMI) works well with big projects where releases happen less frequently. Microsoft releasing a new OS every two years would fall under this type. In this style any change, regardless of size, gets lumped together and you'll see a long change log when it finally comes out. The newer approaches (of which there are several, like Agile and Scrum) have small, incremental releases. Each has its own benefits and detriments, but with the new online approaches and lifetime updates, the newer styles are pretty much the winners now. Needless to say, this is a tiny summary that doesn't include many of the other methodologies that are more used for other types of production (Adaptive, Critical Path, Six Sigma, etc.) and doesn't touch on the newer ways software becomes available to the consumer like Software As A Service (SAAS - where you pay a monthly fee to access the software online like Office 365). The bottom line here is that the newer approaches will have the small change you want faster but, in all real companies, there are project managers and many other people that get paid a lot involved. Once the project managers, in conjunction with business analysts, user experience people (UX), some upper management and, maybe, a steering committee decide on what new changes and fixes will actually become included in a release, then scheduling and resource allocation can occur (this is done between the project managers and programming managers). The programming managers will then assign the work to the programmers, database administrators and analysts who do the design and coding along with unit testing. From there the new and/or revised modules are sent to a Testing team who tries to break both the individual modules as well as the whole system (obviously there can be some loops back to development when errors are found). Once the software passes it usually goes to an Architecture or Integration group who then prepares and packages the software (not physical packaging) for release. Of course, during the time that the programmers and analysts are creating the code, there are other departments busy creating or updating the look of the product (if this will be sold in a physical package, then that's part of this too). These departments include graphic designers, web designers and developers as well as website administrators. Printing and distribution companies (suppliers) are brought in here too. Think that's enough people involved? Well, there's more. Depending on the company, you'll also have people dedicated to Change Management and Quality Control (which usually operate in-between the testing and architecture/integration teams), a training team (who, along with the graphic designers, create the user's guides, manuals, maybe tutorial videos or commercials), a technical support team (to answer all your burning questions in Hindu - just kidding, I think) and the sales team! Because, what good is a product if nobody sells it? Now, for a lot of this these days it's the creation of ad copy for the web or videos, but there's still plenty of in-person effort at stores that will sell the product or working demo booths. Are we done? Not even close! There are also several departments that keep the company going. These include Human Resources (HR), Accounting, Executive (including all the "C" level people, Administrative Assistants and Receptionists), Infrastructure (internal sysadmins, networking, server managers and technical support), Legal and last, but certainly not least, Facility Management. Heck, since this was all off the top of my head I probably left some groups out! LOL. Throughout my career, I have in some small way or very large way done almost ALL of the above at one time or another (except HR, Legal and Facility Management). Obviously smaller companies don't handle all of these areas by themselves, and some people will do multiple positions (I've worn as many as 17 hats during the start of a new alternative energy business - think 90+ hour work weeks with jobs still not getting done until we could hire more help!). A company can also outsource many of these areas (Legal, Accounting, Infrastructure, Graphic & Web Design) and/or use consultants as needed (Project Management, UX, Programming, Business Analysts, etc.). Even the unpaid public can be used in the form of Beta testers (their reward is seeing things first and self-gratification). Heh, I just thought of another group that they may have: Data Warehousing. Which, with Business Information (BI) specialists, can help the executives examine historical data and determine patterns for future products or enhancements (so-called Data Mining). Now, ALL of the people in these groups have one thing in common: They like to be paid! So any change needs to make sense from an ROI (Return On Investment) point of view. While this may usually be profit directly, it can also be in the form of brand promotion or enhancing a company's integrity/perceived value which, if done correctly, still goes back to profit. By far, the fastest any change will happen, will be in response to a major product failure that was somehow missed by all the Testing, CM/QA and Architecture/Integration teams. Even this will take far longer than an hour though. I bet you weren't expecting that much when you asked your questions (and I sure wasn't expecting to write this much! I should have started with "Hi," ya? ). I won't blame you if this becomes a tl;dr post, but it should explain why things take so long to be done and why it costs what it does. 
Honestly, you did that entire post and forgot to mention the most important, sales. Its true, our reputation is below that of a lawyer's. ( oops just reread. You go man, but you kind of buried us under a bunch of scientific gobbledygook.) :)
post edited by eph221 - 2016/08/06 22:27:42
|
craigb
Max Output Level: 0 dBFS
- Total Posts : 41704
- Joined: 2009/01/28 23:13:04
- Location: The Pacific Northwestshire
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/07 03:59:29
(permalink)
That's 'cuz I'm much better at gobbledygook than sales.
Time for all of you to head over to Beyond My DAW!
|
Jesse Screed
Max Output Level: -67 dBFS
- Total Posts : 1158
- Joined: 2015/10/29 16:05:40
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/08 17:21:25
(permalink)
I can't disagree with any of this, except the part about outsourcing and offshoring, which I didn't see mentioned. Jesse Q. Screed
|
craigb
Max Output Level: 0 dBFS
- Total Posts : 41704
- Joined: 2009/01/28 23:13:04
- Location: The Pacific Northwestshire
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/08 17:31:52
(permalink)
Jesse Screed I can't disagree with any of this, except the part about outsourcing and offshoring, which I didn't see mentioned. Jesse Q. Screed
craigb ... A company can also outsource many of these areas (Legal, Accounting, Infrastructure, Graphic & Web Design) and/or use consultants as needed (Project Management, UX, Programming, Business Analysts, etc.). Even the unpaid public can be used in the form of Beta testers (their reward is seeing things first and self-gratification). ...
To me, offshoring is just a type of outsourcing anyways!
Time for all of you to head over to Beyond My DAW!
|
bapu
Max Output Level: 0 dBFS
- Total Posts : 86000
- Joined: 2006/11/25 21:23:28
- Location: Thousand Oaks, CA
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/08 18:17:14
(permalink)
Changes are easy to make. Making them correctly is generally the hard part.
|
craigb
Max Output Level: 0 dBFS
- Total Posts : 41704
- Joined: 2009/01/28 23:13:04
- Location: The Pacific Northwestshire
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/08 19:44:23
(permalink)
bapu Changes are easy to make. Making them correctly is generally the hard part.
So Microsoft tends to take the easy route and deal with the fallout later, ya?
Time for all of you to head over to Beyond My DAW!
|
bapu
Max Output Level: 0 dBFS
- Total Posts : 86000
- Joined: 2006/11/25 21:23:28
- Location: Thousand Oaks, CA
- Status: offline
Re: Complexity of making changes in Sonar
2016/08/16 15:26:54
(permalink)
craigb
bapu Changes are easy to make. Making them correctly is generally the hard part.
So Microsoft tends to take the easy route and deal with the fallout later, ya? 
Well played.
|