Home Career & Education

Why companies don't update their software?

ned_poreyra
polycounter lvl 4
Offline / Send Message
ned_poreyra polycounter lvl 4
In one of their recent videos guys from FlippedNormals said that when a company starts a project, they stick to the version of software they started with. So if they started with "3D Software 5.1" in 2013 and the production takes 5 years, in 2018 they're still working on 3D Software 5.1. I find it hard to believe. However, those guys worked in multiple companies and I don't see a reason why would they lie. Supposedly it's to avoid compatibility issues or bugs being introduced in new versions. But... does it really happened to anyone? Or it's just the way people have been doing it for years and no one thought that maybe it's stupid?
I worked in Blender for 6 years doing all sorts of stuff, from modeling to texturing, animation, sculpting, compositing, basically everything. I always updated to the newest stable release. I've never encountered an error - like the classic one, when you get a red pop-up window with string of random numbers and letters basically saying "stuff doesn't work, gg bye loser". I've never encountered compatibility issues (ok, once, when layers system changed in 2.8 and it took like 3 minutes to set the proper visibility again). When I open my files from 2013, they work perfectly fine.
Is Blender some kind of unicorn? Is Autodesk software actually bugged or people have irrational fears + standard industry entrenchment syndrome ("this is the way we've been doing it for 3000 years and it works so we're not changing anything")?

Replies

  • oglu
    Options
    Offline / Send Message
    oglu polycount lvl 666
    Oh yes thats all around here. If the core pipeline is frozen on a version that does not meat that other departments arnt using a newer version. Its not uncommon that the FX department is on the newest version and does export VDB files for further use in the pipeline. Also the Modeling department could use a newer version that the animation team. Just save an OBJ or FBX and go from there.

    In big studios there are a lot of custom tools/plugins/exporters coded around the core app API. You would have to recompile everything in your pipeline. This would take a huge amount of dev time. Its not the DCC that does make the troubles its the "pipeline" itself.

    Next year will change a lot at least in FX Studios. Cause they have to upgrade the pipelines to Python 3 and USD.
    The new pipelines arnt app centric they are build around USD.
  • zachagreg
    Options
    Offline / Send Message
    zachagreg ngon master
    When just you updates your software you can usually solve whatever bugs that you may get fairly easily. That process doesn't scale and that isn't a stress test either. The more users you have switching to a new version of a software the more chances there are for extraneous errors to occur at any point in the pipeline. This can range from known bugs/issues to rare occurrences of a bug.
    Blender is not a unicorn, I can open up a version of Blender, both stable, and find issues with compatibility or various bugs that exist in one version and not the other that would need to be either adapted to or worked around or make certain experiences just frustrating due to an existing bug. Same with Max, same with Maya.
    The reason it doesn't happen is because when you are paying a team of artists to all interface with one software you do not want to take the gamble, mid production, to upgrade to get some new shiny feature. Unless that feature is going to cut out a large swathe of production time for your artists that the risk-reward would be worth looking into. That's the difference, it's a gamble every release whether or not it will waste production time and money. Most of the time the benefits from upgrading to the newest version are not worth the cost of time it would take to reliable stress test, update, and provide documentation for. Not to mention any custom tools written for a DCC that may also need updating from a technical standpoint because Autodesk or Blender decided to rewrite functionality of something.

    If I had a custom tool in house for the outliner in Blender I can almost guarantee issues with that tool upon the release of the new outliner. That's dev time and that's dev money. Stopping mid-production just isn't worth it. Beginning and end of production cycles is a different story, when there is time for R and D on the pipeline.
  • oglu
    Options
    Offline / Send Message
    oglu polycount lvl 666
    Just a short example. If i decide to update the latest maya version without the go from my pipeline TD. The following could happen.
    Next morning 80+ Artists would update there prefs and install the first 4h the day custom tools they need. 
    The layout department would inform the TD that they cant work cause there is no verison of our instancing tool available for the lest maya API.
    The rendering department would come to me and ask "hey why isnt our Rendermanager not working".
    Someone has to fix the license manager and ornder a new lic file. Which could take up to two days. 
    The latest Arnold version does not run cause we use some inhouse shaders. We need to recompile them.
    There is no Vray vesion available for the latest maya version we need to wait around three weeks.
    The rigging department cant work cause the inhouse rigging solvers does not work with this API.
    The Fx team is failing to get the latest Houdini bridge working.
    The anim department cant clean the anim for export cause the TD that does code the plugin is on vacation for two weeks.
    The Modeling department cant find the latest files cause the Shotgun Asset launcher isnt updated with the latest maya version.
    We cant export to the game engine cause there is no exporter available.
    We art able to open the latest client files cause we cant install there file reader plugin.


  • PixelMasher
    Options
    Offline / Send Message
    PixelMasher veteran polycounter
    gears 5 was actually built on unreal 4.11 and they spot integrated certain features from newer versions of UE4. A lot of custom tools and plugins hinge on the version they were built on in most cases. so major updates tend to happen between games and then become frozen again for most of production.

    any time you update something and half the production floor is blocked, you are literally burning money as they sit idle and can't work. I remember when I worked at ubisoft and a couple times a year they would do a company wide fire drill that would take almost an hour for everyone to get back to work after, we would joke about it being a $100K+ fire drill. and thats just for an hour, imagine multiple days of being blocked because plugins and the pipeline are broken. it's just too risky, as most software updates don't add that much reward compared to the potential downsides. 
  • kanga
    Options
    Offline / Send Message
    kanga quad damage
    Im just a freelancer and not dependent  on other departments except for the files the client passes on so pipeline integration isnt that much of an issue. You only have to have one bad experience to  learn from. For years I have always kept the previous version of key software on disk, even if the biggest project would be no longer than 1 month.

    These days I am using Blender which is freely available. I have about 6 or 7 versions on disk ranging from 2.79 to 2.82, and have had occasion to switch versions because of a bug even with an RC. Disregarding the information provided above, if I had a project that spanned years I would also sit on the last stable software version, and I am a workforce of one.

    If you have never had your process gummed up by bugs or updates I reckon you can count yourself lucky. With something as complex as a product pipeline it seems a no brainer  to stick with stable versions. 
  • Neox
    Options
    Offline / Send Message
    Neox godlike master sticky
    i use 3dsmax 2011, i know plenty folks who still use 2010 or even 2009. if you are comfortable with a version and own it (as opposed to renting it) why would you want to change a running system?
    So far most new features in 3dsmax, i personally just do not need. I have a bunch of custom scripts and tools, reinstalling it all, setting it up and tons of shit breaking?

    nah, thank you

    whatever works, works. I have all the latests max version from the company, i just dont need the stuff in there, so i decided to stick with a 10 year old software version for the main part of my work.

    Other things are up to date as our clients need them.

    So for the most part zbrush stays sorta current, the unreal engine does, substance painter does. but on all of these tools, i usually have at least 3 versions installed to support our clients with the data they need
  • thomasp
    Options
    Offline / Send Message
    thomasp hero character
    LOL, 3ds max 2011 is also the last version I have ever used, the one just before they came out with that revamped viewport that at the time was just a bug fest nobody wanted to touch.

    As a freelancer I usually stop updating software when I consider a tool a solved problem as in - I do not care for new features and would rather devote my time to getting work done and learning about entirely new toolsets to solve other problems. E.g. I consider Photoshop finished for what I do and have done so for many years already. Also sculpting in ZBrush - still running 4R8 here which fixed a bug crucial to me - new version installed just for file exchange with clients.

    Speaking of ZBrush and early adopters of latest & greatest I do remember a bunch of issues that came up at my last fulltime job where all too eager colleagues ruined their asset files by trying out new features and had to painstakingly rebuild them in the older version. I think we stuck with Z 4.0 until late 2013 or something when the current one must have been 4R4 ... 4R5 at the time? Still remember their moaning. ;)

  • ned_poreyra
    Options
    Offline / Send Message
    ned_poreyra polycounter lvl 4
    I can't imagine still using Blender 2.63. Many features added since then are just crucial now. I'm not sure if there was even dyntopo back then or multiple core support.
    I heard some half-serious jokes (at least that's what they seem to be) that there are 2 interns left in 3DS Max/Maya development team. I assume it's a way of pointing out that those programs are basically stuck and no serious new features are being introduced. It would make sense - industry doesn't update, therefore developers are not developing anything crucial, so the industry still doesn't update, and so the wheel goes.
  • xrg
    Options
    Offline / Send Message
    xrg polycounter lvl 10
    Has the subscription-only stuff played much of a factor in regards to upgrades with studios?
  • thomasp
    Options
    Offline / Send Message
    thomasp hero character
    These apps certainly don't evolve like Blender does and their focus is elsewhere or in the case of Max seems to have shifted away towards other fields.
    They also try not to break too many things at once when they update since - as other posters have pointed out - pipelines are complex and reliance on this stuff and sometimes rather esoteric old features being present on is very strong.

    If Blender sees more industry wide adoption and makes its way into pipeline crucial areas then it will have to slow down, too.

  • rollin
    Options
    Offline / Send Message
    rollin polycounter
    thomasp said:
    LOL, 3ds max 2011 is also the last version I have ever used, the one just before they came out with that revamped viewport that at the time was just a bug fest nobody wanted to touch.

    (...)

    Muhahahaha.. QFT \o/

    I have multiple times updated software during production and there is always something failing, missing updated plugin, new bugs (jo, new version doesn't mean less bugs, it means less bugs you are aware of)
  • Neox
    Options
    Offline / Send Message
    Neox godlike master sticky
    thomasp said:As a freelancer I usually stop updating software when I consider a tool a solved problem as in - I do not care for new features and would rather devote my time to getting work done and learning about entirely new toolsets to solve other problems. 

    pretty much this.
  • rollin
    Options
    Offline / Send Message
    rollin polycounter
    And all of this leads us to................... subscriptions !!
    wohoooooooooooo!
  • SnowInChina
    Options
    Offline / Send Message
    SnowInChina interpolator
    i try to keep up to date, but i generally don't update when the updates get released, since i don't want to beta test on projects and i don't update mid-project

  • pior
    Options
    Online / Send Message
    pior grand marshal polycounter
    @ned_poreyra
    "
    I worked in Blender for 6 years doing all sorts of stuff, from modeling to texturing, animation, sculpting, compositing, basically everything. I always updated to the newest stable release. I've never encountered an error "
    That's the thing man - you are looking at this from the perspective of a user not having to deal with any toolset dependencies, and only using everything default. Even with the almighty Blender, going from one version to another *will* sometimes unexpectedly break some custom script you might have developed, since the API calls can change at any time. Even a mere change in class name in a seemingly unchanged feature will break your scripts. Of course all the default bundled scripts will be updated accordingly, but your own won't. This happens across big releases (2.79 to 2.8) but also across smaller ones (2.78 to 2.79 for instance).
    So yeah even with the best case scenario of an open source software not tied to any corporation dictating a release schedule, you *will* run into workflow issues if you update to latest without also taking the time to port your toolset. So take that and multiply by all of the above explanations about the interdependencies of art departments in production and you have your answer right there.
    That said I understand that this is not intuitive ; but I can guarantee you that with time it will become crystal clear to you. This is why people always willing to jump to the "latest and shiniest" version of an app can be perceived as inexperienced, and justifiably so : because had they have some experience with somewhat involved production cycles they'd know very well that always upgrading to latest at the time of release is *always* a potential waste of time because of things likely to break - and losing time (or even worse, losing work) that way is never, ever worth it.
    -----
    On a side note, this is one of the reasons why I find subscription models for software (which are always more or less forcing/suggesting to update to latest versions as way to justify their cost) to be highly cynical, because the people making these programs know very well that such issues will always happen. Yet marketing is using the seemingly low cost of the subscription model as some kind of shiny carrot. I personally find it extremely unhealthy and borderline dishonest.
  • Alex_J
    Options
    Offline / Send Message
    Alex_J grand marshal polycounter
    What about in the case of major updates to fundamental parts of engine, like the new rendering pipelines for UNity? Of course upgrading a project already in development doesn't make sense, but if you are starting a new project? 


  • pior
    Options
    Online / Send Message
    pior grand marshal polycounter
    Well you do it if it's worth it, and you don't do it if it's not - that's it.
    And if a project absolutely requires this or that new rendering feature from that one new update, then it's a usually a pretty bad sign as it tends to show that the Art Direction doesn't know what they want in the first place.
  • Eric Chadwick
    Options
    Offline / Send Message
    All that being said, it's still wise for a small portion of your team to continually investigate new versions of key software, try new apps, participate in beta  programs, continually talk with software developers, and keep the pipeline moving forward.

    This kind of work just needs to be done in parallel with  current production, not in the main branch.

    This is the kind of stuff you learn while working alongside experienced developers. It's one of the coolest things about working in a studio.

    And it's awesome to see Polycounters sharing their knowledge and experience here. :heart:
Sign In or Register to comment.