Interesting times indeed. I think the point Greg made about so much code being from external sources, often with uncontrolled/tested releases (which we often blindly trust at our own detriment).
I do have a rule to not bring in third party libraries unless it's absolutely necessary. It's a double edged sword. Code you didn't have to write, but it's not free. You have the overhead of having to live with someone elses bugs. It is often open source though, so I guess if you are bold enough to use it, should you also be bold enough to own it? I'm sure they would be more than happy to accept your PR and bug fixes. How many of us use these libraries but don't take on maintaining them? It's indeed an attractive carrot to dangle in front of a dev. Libraries that mostly work, or code you have to write yourself. I do place a level of trust on these libraries but when they are pumping out new versions so often (and so many new versions that are not backward compatible) even when restricting your libraries (ie Microsoft official libraries only), that problem does not go away. I have a couple of UWP apps in the app store which I've not updated in a few years. They mostly work, a couple of issues I could not work around due to some platform design decisions, but they have more than paid me for the time. Not retirement well, but some extra pocket money. I was putting off updating them and now I hear UWP apps are being sunseted, and Windows 11 does not even have live tiles anymore. So my apps that were written for Windows 8, are now mostly useless. I think I'll updated them one day, just to be on the latest version, and look to see if a new Widget (or whatever the side bar apps are called) and see if any might port over. I guess if it was easy anyone could do it... 🙂 That all said, I still prefer coding to cleaning gutters or digging holes!! cheers Stephen ________________________________ From: ozdotnet-boun...@ozdotnet.com <ozdotnet-boun...@ozdotnet.com> on behalf of Craig vN <crai...@gmail.com> Sent: Wednesday, 27 October 2021 12:36 PM To: ozDotNet <ozdotnet@ozdotnet.com> Subject: Re: DLL Hell I have a large .NET 4.x project that needs upgrading to a new version. I have decided that .NET 6 is the one, but I dread the thought of doing it, hundreds of thousands of lines of code, outdated libraries. On Wed, Oct 27, 2021 at 12:48 PM Greg Keogh <gfke...@gmail.com<mailto:gfke...@gmail.com>> wrote: It's not Friday but ... the last few years of being a .NET developer in the transition period from full Framework through Standard to Core has been one of the worst periods of my career. We've had so many targets, libraries, versions, dependencies and releases that I have little trust that anything I write or publish will work or have any shelf life. Maybe the full arrival of .NET 6 will bring back the simplicity and stability that I last experienced in the Framework 4.5 days. By a long shot, my worst suffering in recent years has been caused by compile problems and runtime crashes due to DLL versions and binding. I assume others here, like me, have exhausted man-days or weeks trying to solve DLL hell with System.Http or Newtonsoft (special mention!!), or many other dreaded names that just keep turning up like turds you can't flush. There have been times where I've had to update some library reference, and I spend 6 hours trying to make it compile and run. I've recently had problems (non-breaking ones) that have taken weeks of spare time research to overcome. Sometimes I reach the point of tears, so I just go and sit outside and read a book or clean the gutters to clear my head. In 40 years of programming, I've never experienced times this bad. There are often days where I spend more time Google searching for samples and answers than I do actually developing software, seriously! The reason I'm so morose today is that I've just spent 2 days trying to get Python 3.7 to call one of our .NET library suites for data analysis. Using the excellent Python.NET package I came so close I could smell victory, but it was snatched out of hands by a Threading.Extensions 4.2.0.0 not found DLL Hell crash. Normally you would add a config file and redirect, but I'm in the goddamn Python runtime environment. More Google searching suggests vague and difficult workarounds that will take days of research, with no promise of success. Is anyone else upset that software development is so hard? I know some people who are abandoning IT and preparing to retire because the burden of keeping up with all the latest technology and tools on different platforms from different vendors is just too much for them. One chap said that even taking time to become proficient in Git and version control would be worse than a lobotomy. Greg K