.NET 4.6 Optimizer Bug Causes Methods To Get Wrong Parameters 149
tobiasly writes: A serious bug in the just-released .NET 4.6 runtime causes the JIT compiler to generate incorrectly-optimized code which results in methods getting called with different parameters than what were passed in. Nick Craver of Stack Exchange has an excellent write-up of the technical details and temporary workarounds; Microsoft has acknowledged the problem and submitted an as-yet unreleased patch.
This problem is compounded by Microsoft's policy of replacing the existing .NET runtime, as opposed to the side-by-side runtimes which were possible until .NET 2.0. This means that even if your project targets .NET 4.5, it will get the 4.6 runtime if it was installed on that machine. Since it's not possible to install the just-released Visual Studio 2015 without .NET 4.6, this means developers must make the difficult choice between using the latest tools or risking crippling bugs such as this one.
This problem is compounded by Microsoft's policy of replacing the existing .NET runtime, as opposed to the side-by-side runtimes which were possible until .NET 2.0. This means that even if your project targets .NET 4.5, it will get the 4.6 runtime if it was installed on that machine. Since it's not possible to install the just-released Visual Studio 2015 without .NET 4.6, this means developers must make the difficult choice between using the latest tools or risking crippling bugs such as this one.
The joys of youth (Score:5, Informative)
Since it's not possible to install the just-released Visual Studio 2015 without .NET 4.6, this means developers must make the difficult choice between using the latest tools or risking crippling bugs such as this one.
If you're a dev, you shouldn't be chasing versions. Find a stable version, stick with it through your project. SE already has enough of that "stuff changing out from under me" feel without adding to the issue.
Change Is Life (Score:5, Insightful)
On the other hand if you fall behind current dev tools, you miss out on the potential for a lot of community support, risk being crippled by the bugs that remain in the older system that are fixed the new, and hamstring your ability to work as effectively as you might because you cannot use newer tooling/frameworks to help with development...
Yes SE has a lot of stuff changing, it always has and always will. But cringing from the pain will not help, SE is not finding any kind of safe plateau (because there are none). It is moving ever forward at a reasonable pace, using nettles as handholds where you must grasp them firmly as you ascend, living with the brief pain to move forward.
Re:Change Is Life (Score:5, Informative)
You don't need to stick to it forever, just long enough for it to become stable and reasonably well accepted. You don't need to be the early adopter in the middle of active development. When you've got some breathing room (your stuff is relatively stable) and aren't going to waste a weeks worth of your team's money, then you can think about moving to newer versions of tools, libraries, etc..
Re: (Score:3)
Wait for at least SP1. Let others be the beta testers.
Re: (Score:3)
I installed VS2015 on a spare machine for a laugh - I actually managed to get them to fix an ancient VS bug fixed by nagging them enough. The fix was in VS2015 and I wanted to see it with my own eyes.
It crashed and burned about once a minute for the entire time I tried it, no chance to save any work. So much for a new 'improved' version.
I only installed VS2013 a few months ago after it reached SP4. I'm not expecting VS2015 to be usable any time soon (I _would_ like to have my bug fixed though because it hap
Re:Change Is Life (Score:4, Interesting)
So much for a new 'improved' version
I don't know if you were being negative or playful when you wrote this but with all major overhauls there's going to be bugs. You just need to give them a little bit of time to work out the quirks they didn't catch during internal QC. Correct me if I'm wrong but I don't believe this was ever a public BETA.
I only installed VS2013 a few months ago after it reached SP4
I used VS2005 6 months after. It was perfectly fine. VS2010 was a welcomed upgrade that encountered minor issues along the way that were resolved with the patches released not that much later. I didn't force a 2013 upgrade for our dev team but I did trial it on a VM. VS2013 had noticeable issues at launch but that appeared all solved by the 30 day mark. We decided to wait for VS2015 because 2010 was fine and we didn't find 2013 had enough to offer in terms of improvement for our dev team.
The good news is that it was caught and will be fixed quickly by the sound of it.
Re: (Score:2)
So much for a new 'improved' version
I don't know if you were being negative or playful when you wrote this but with all major overhauls there's going to be bugs.
Sure, but... I expect an IDE crash to be more difficult than "compile my code then double-click a warning message".
(Yes, I did it three times with the same result)
Re: (Score:2)
Sure, but... I expect an IDE crash to be more difficult than "compile my code then double-click a warning message".
I'm not sure how you qualify expected difficulty of causing a crash. They could have run thousands of unit tests every build, had hundreds of internal testers running every test they could reasonably imagine, and run a large public beta, and still never come across the exact combination of environment and set of inputs that caused your particular crash for your particular project.
Re: (Score:2)
We decided to wait for VS2015 because 2010 was fine and we didn't find 2013 had enough to offer in terms of improvement for our dev team.
That actually surprises me a bit. For my team, VS2012 (and later, VS2013) were night-and-day performance improvements over VS2010.
I have been using VS2015 throughout the betas with mixed results, but the latest RC was OK, so I put RTM on my main dev machine. There have definitely been some hiccups - it takes longer to load our main product's solution, and it hasn't been as stable as VS2013 was. However, I have stuck with it because Roslyn and its integration with the IDE is a leap forward compared to the
Re: (Score:2)
I appreciate the feedback. I didn't test to that extent. We have good H/W and felt the compiling and editing was pretty good. I could see benefits in moving but the time required to do so was going to eat into actually coding time. We are short staffed (still to this day) and work with what we have.
VS2015 is a definite move over. Guess I'll have to consider TFS as well as we are running on TFS2010 and only really use it for change tracking.
Re: Change Is Life (Score:2)
Vs 2010 becomes unsupported soon, as does .net 4.5.1. Only 4.5.2 (in the 4.x family) and vs 2012/2013 will be supported starting in January
Re: (Score:1)
I don't feel too sorry for paid developers who have to deal with this. Multiple machines (physical or virtual) with various OSes and libraries installed fix this, as does testing your stuff.
The folks I feel sorry for are the students - Win 10 is released Friday, all the new computers being bought for Fall term starting will have it, students taking programming courses will often be stuck with the newest of the new since the instructor adopted (or wrote) the latest text book, etc. And, they may be stuck wi
Re: (Score:3, Insightful)
You know, if Microsoft changes the library in place and breaks it ... I don't blame professional developers at all.
I blame whatever idiot at Microsoft was responsible for not fucking breaking existing stuff.
This is just lousy QA.
I feel bad for anybody who is going to be the victim of Micrtosoft's idiotic policy of deciding it's their computer and they'll update it as they see fit. Because it is a certainty Microsoft will break a large amount of computers and leave that to be the problem of the people who o
Re:Change Is Life (Score:4, Funny)
Why are you always ranting about MS? You know you don't have to use their products right?
You know that software bugs are part of every eco system right? Linux, MAC and MS have them. Many of them come in the form of bad firmware or bad drivers that can actually ruing hardware.
Should we all go after Seagate for putting out millions of drives with defective firmware that eventually self terminates the hard drive? I think that's far more destructive than this .NET bug which can be fixed with a simple update (one that will be posted shortly I'm sure).
Should we start talking about the heart bleed security flaw? I think a defective OS library is far less damaging to a person than their identify being stolen due to a bug in a security protocol.
If you hate MS that much stop using/buying their products because you clearly can't handle them. If you don't have MS products then just shut up or get a bias opinion that we can actually respect instead of this childish ranting.
Re: (Score:2, Troll)
Switching to unrefusable automatic updates in the face of unavoidable (but forgivable, it's generally acknowledged that no one is immune to at least some of those) system-breaking bugs is pretty awful. As it stands with just a little research you can restore to before the last batch and selectively apply the good ones; unless I'm misreading something there will now be no way you can restore usability at all. It's just a matter of time before some driver incompatibility makes anything beyond safe mode unboo
Re: (Score:2)
Switching to unrefusable automatic updates in the face of unavoidable (but forgivable, it's generally acknowledged that no one is immune to at least some of those) system-breaking bugs is pretty awful
There's benefits and downfalls to either way of doing. On one side having a breaking change sucks. Most users currently get updates installed at 3am daily. MS's track record is pretty good with publishing good updates. Very few users were affected by the bad updates released in the last 5 years.
Fact is that MS will back track on this issue because there is enough pressure to do so. Production environments will refuse to use Windows 10 until there's a way to control when updates are applied. Possibly this ca
Re: (Score:2)
I'm out of the loop on this one. What $80 are you talking about?
Win10 Home: $119. Win10 Pro: $199. On Pro you get the delay/select. capability.
It's their declared intent to force that choice. Grandma ponies up or some morning she'll be cut off and understand only that it's apparently okay for corporations to lock people out of their computers and demand $80 (or she could wait whatever number of days MS think they can get away with) to unlock them again.. That's literally, as in in concrete and exact detail, the situation Microsoft have openly declared their intent t
Re: (Score:2)
Where do you get this information. If you install it within the first year it's free for the life of the device:
http://www.microsoft.com/en-US... [microsoft.com]
Re: (Score:2)
Re: (Score:2)
I think its more than reasonable. You get a free upgrade for what you originally purchased. At least this shuts down the rumors of it not being a free upgrade.
Most home users don't need pro.
Re: (Score:2)
. . .
Except for the ones whose computers don't work properly because of a bad update . . .
Re: (Score:2)
Most users I know were happy to see that icon pop up to find out they would get the next upgrade at no cost.
If the Win10 upgrade notifier is the only thing the stories are about then that's my fault for not digging deeper. Yeah. The upgrade offer is good-guy stuff, I was glad to have it too.
Re: (Score:3)
The folks I feel sorry for are the students - Win 10 is released Friday, all the new computers being bought for Fall term starting will have it, students taking programming courses will often be stuck with the newest of the new since the instructor adopted (or wrote) the latest text book,
That certainly wasn't the case when I was in school. They were years behind on versions of programming languages. As for IDEs, there weren't any in use. I used vi for my programming assignments. Borland C++ was available, but only on Windows, and the University mostly had Sun and SGI workstations.
On the whole, though, I think it worked out better, because I got an understanding of working with libraries and linking that would enable me to understand how to get something to work if it didn't work automatic
Re: (Score:2)
The folks I feel sorry for are the students - Win 10 is released Friday, all the new computers being bought for Fall term starting will have it, students taking programming courses will often be stuck with the newest of the new since the instructor adopted (or wrote) the latest text book, etc. And, they may be stuck with these versions of various software packages for a few years while they go thru a degree track...
Windows 10 is using the as-a-service model, so any student-owned machines will get new upgrades (for free) as they are released for the lifetime of the device. Campus-owned machines would probably still upgrade at the same pace as normal. In my experience (being in college and working at a university for over a decade) this means security updates may be applied regularly, while feature upgrades happen over the summer. Since many schools are under MSDNAA, their experience with Windows 10 will be almost id
Re: Change Is Life (Score:2)
virtualization.
Its become a part of life now.
Re: (Score:2)
On the other hand if you fall behind current dev tools, you miss out on the potential for a lot of community support
I might be flamed for saying this, but if you can't be a software developer without "community support" like asking questions on StackOverflow, then you're not really a software developer. (Likewise, if a tool can't be used without asking questions on stackoverflow, it's the wrong tool to be using for anything serious).
Re: (Score:2)
I'm not going to flame you, but the Perfect World called and wondered when you were coming back. They miss you.
Re: (Score:3)
I might be flamed for saying this, but if you can't be a software developer without "community support" like asking questions on StackOverflow, then you're not really a software developer. (Likewise, if a tool can't be used without asking questions on stackoverflow, it's the wrong tool to be using for anything serious).
I have yet to ask a question on stackoverflow, but I refer to it a lot when dealing with third party tools and libraries. The reason being that documentation is usually extremely weak. You can usually find a reference to the methods, but to understand when you might want to use one or another is not really explained. it is helpful to find an example of someone who has used it. Then, you have to figure out what the latest hipster way to instantiate an object is since apparently constructors aren't cool anym
Re: Change Is Life (Score:2)
What you could do as a software developer is spend days trying to figure out an issue or you could ask other devs if they've had the same issue. In the good old days users might've understood that an IT issue might take longer than half an hour to fix but that's not the case now, especially with complex third-party software with crap documentation (looking at you Sharepoint).
Re: (Score:2)
In a way I agree. Software developers existed before Al Gore invented the intarwebs, so clearly CackOverload isn't an essential prerequisite.
OTOH, in a way I disagree. Things moved slowly enough then that books, magazines & training courses could keep up.
Re: (Score:2)
Re: (Score:2)
You seem to be ignoring the overwhelmingly positive utility of a site like that.
Please note, I didn't say that the website has no utility......the utility comes from compensating for weak developers and weak projects. If the developers are not weak and the projects have high discoverability, then there's no need to ask questions about it on stackoverflow.
(Of course, it can still fill a role, but all the basic questions would be gone).
Re: (Score:2)
Re: (Score:2)
Or, if you are in an environment managed by CSC and THEY chase versions so they can charge, you'll come in on a Monday and everything has gone to shit.
WTF M.S?
Re: (Score:3)
It's not all that hard to stick with a toolkit version for a couple of months (or to be honest, even a project lasting up to 18 months is no big deal.
That depends on the system. If you are doing iOS development, while 18 months is possible it's not advisable due to every new version of XCode (one major, a few minor updates every year) having more advanced tooling, compilers, frameworks... furthermore you are going to have to use a beta version at some point to test and debug your software on for un-release
Re: The joys of youth (Score:2)
And if you have to support multiple applications, tied to various versions of .NET?
Re: (Score:3)
I wish it would go back to allowing side by side operation of .NET instead of replacing 4.5.X with 4.6. I have Win 10 isolated in VMs and 4.6 is already breaking quite a few things. Nicks got a good workaround for this particular problem but I still can't believe that something this basic missed QA in MSFT because .NET regression tests would be a basic must have including JIT problems.
Re: (Score:2)
I still can't believe that something this basic missed QA in MSFT because .NET regression tests would be a basic must have including JIT problems.
Didn't Microsoft lay off thousands of QA folks a year or so back?
Re: (Score:2)
point taken.
Re: The joys of youth (Score:2)
that was part of vista, and server 2008 when they declared automated testing was bettet. So no we suffer, because apparently all the hard work that went into 2003 wasnt worth it.
2012 is a joke of a server.
Re: (Score:2)
that was part of vista, and server 2008 when they declared automated testing was bettet. So no we suffer, because apparently all the hard work that went into 2003 wasnt worth it.
2012 is a joke of a server.
Funny. On server 2012 R2 I can reverse AD schema deletions, go powershell only and or turn GUI on or off, use desired state configuration powershell templates, use DCs as VMs, and many many almost countless things I can't do on server 2k3.
Is it really true you need a 1990s modem plugged into a 2k3 server just to turn VPN on and then unplug the modem before it is ready??
Re: The joys of youth (Score:3)
Only 4.5.2 and one flavor of 3.x (and of course 4.6) will be supported come January. Makes me wish nuget had an option to only pull packages for supported frameworks, I think that's all on the package maintainer today
Re: (Score:3, Insightful)
Since it's not possible to install the just-released Visual Studio 2015 without .NET 4.6, this means developers must make the difficult choice between using the latest tools or risking crippling bugs such as this one.
If you're a dev, you shouldn't be chasing versions. Find a stable version, stick with it through your project. SE already has enough of that "stuff changing out from under me" feel without adding to the issue.
Yeah, easy to say. When I was programming Microsoft systems (admittedly 20 years ago) the problem was that you were faced with the choice of upgrading and risking crap like this or not upgrading and dealing with problems that Microsoft would only fix "in the next upgrade".
So glad I left that behind.
Re: (Score:2)
The fix is available in the .Net Git repo if you want it prior to the next official release.
-Rick
The bigger issue (Score:5, Interesting)
This bug is in the JIT optimizer of the 4.6 framework. For apps you are developing, it's absolutely no problem, you just go into the compiler settings and uncheck the 'optimize' setting.
The problem though, is that the 4.6 framework is an in-place replacement for the 4.5 framework, which was an in-place replacement for the 4.0 framework. And the JIT optimizer is on by default. So if you install the 4.6 framework, it could potentially introduce this bug into any application developed targeting the 4.0, 4.5, or 4.6 framework that is already distributed.
Luckily, it appears as though the issue is a combination of a nullable int that has a bug in the boxing/unboxing of it's operator when calling the .hasValue method. So the actual number of places where this will actually pop up is hopefully quite limited.
That said, MS better get this patch deployed ASAP. Or if you are in a critical hurry, the correction has already been committed to the .Net Git repo, so you can brave a build from that.
-Rick
Re:The joys of youth (Score:5, Insightful)
Your advice means I would be stuck using Visual Studio 5, and GCC 2.8.0. Hope you don't mind me 'chasing versions'...
I have, however, refrained from chasing every Microsoft fad over the years, meaning I'm now in charge of a modern C++11 application, happily running on Linux and Windows, in 32-bit and 64-bit mode, and with full support for things like unicode and IPv6. Instead of hoping that Microsoft would get off their lazy ass and finally update MFC, or something...
There was a question here on slashdot on how to plan for 20 year development cycles the other day. I'm almost at that point now, and let me tell you what keeps an application alive:
- don't get locked in to single-vendor technology that might disappear on a moment's notice.
- hide API's inside your own classes. That makes ripping them out and replacing them with something else so much easier.
- stick to standards.
- invest in regular modernisation. Do it when reasonably can, not when you absolutely must.
- refactor whatever stinks.
- keep your own skills up to date. Apply as needed.
Just my two cents, of course...
Re: (Score:2)
It's hard to do nuance in a first post. (I'm sick of the cow thing, so I'd rather have almost anything else first.) You raise great points.
When I say, "chasing versions", I'm referring to the practice of immediately upgrading to a new release of something, without a testing (community or otherwise) period for that specific version. In my experience, that practice made me great at finding stupid bugs and weird edge cases in other peoples' code. It's a lot of time and I'd rather not be that person if I need t
Re: (Score:2)
> stuck using Visual Studio 5
Visual Studio 97
Re: The joys of youth (Score:2)
honestly i liked 97! And ms still had powerstation fortran before they sold them to compaq, then hp sold them to intel..
Re:The joys of youth (Score:4, Interesting)
I've included some notes from my own experience to help those (not necessarily parent poster) avoid similar failures.
- don't get locked in to single-vendor technology that might disappear on a moment's notice.
Realistically, evaluate if said technologies can survive company collapse or not. Languages / Technologies with heavy internal investment like C# are a lot more coupled to their companies than say PHP, Ruby, etc. That said, maybe the Mono/Apache/etc.. type groups out there could keep the lang alive if MS pulled the rug. Java could be better off if Oracle killed it to open up the ecosystem pieces they've kept ransom. HTML/Javascript are completely open (though standards keep things semi-coherent) but realistically 3-4 vendors control the narrative and if 2 decided to go in a different direction, you'll have a lot of chaos to keep things working.
- hide API's inside your own classes. That makes ripping them out and replacing them with something else so much easier.
Well, the general mantra of layering access to things certainly mitigates unnecessary coupling which is a good thing. This should be applied everywhere though, not just inner class scoping.
- stick to standards.
Yep, and invent some of your own if there's a lack of good standardization where there should be.
- invest in regular modernisation. Do it when reasonably can, not when you absolutely must.
A tricky proposition, but one that should certainly be striven for. Admittedly, saying lets drop all this stuff that produces more revenue to work on X which may eventually help us maximize revenue in the future is certainly not as clear cut, but in the ideal world, the code is always getting improved, polished, simplified, etc.. Writing (CS101 here) low coupled, high cohesion code will vastly simplify future improvements. Just make sure that you always consider 3rd party libraries / platform libraries / language quirks included into external dependencies that may evolve over time.
- refactor whatever stinks.
Whenever I try refacting crap (core piece of functionality), I write a TON of extra tests for before/after comparison because no matter how perfect your re-implementation, there will always be those bazaar corner cases that worked (possibly through fluke/magic) in the original spahgetti that violates the implied or explicit contracts in the future. Refactor for sure, but don't ripshod, or your eventual replacement will be refacting/fixing your POC for much the same reason you refactored.
- keep your own skills up to date. Apply as needed.
This is never bad advice, but just remember that just because you learn a new technique / technology, don't go running out to refactor everything to use it. Generally if it was popular 10-15 years ago, its probably stood the test of time and passed, while newer tech should be looked at carefully and evaluated for specific cases where appropriate.
Re: (Score:2)
Agreed.
My comment on being locked in specifically referred to the long train of Microsoft technologies that arrived, flowered for a short while, and then whithered over the years while I was working on this thing. One of my first choices as a young engineer was to use the win32 API instead of MFC. MFC proved to be a dead-end, so I feel fully justified in choosing what was (officially) the more difficult option. I forget the names of the others... Silverlight is a good example. I feel for anyone who invested
Re: (Score:2)
Find a stable version, stick with it through your project.
Which project? I have about 30 of them ranging from 10 years old to 1 month old.
Re: (Score:2)
They can each have their own versions, yes? At least, that seems like the sane thing to do. Typically, there's a listing around somewhere saying which versions are expected, if for no other purpose than developer reference.
Re: (Score:2)
Re: (Score:3)
If you're a dev, you shouldn't be chasing versions. Find a stable version, stick with it through your project. SE already has enough of that "stuff changing out from under me" feel without adding to the issue.
This mindset is why I still have to support companies that refuse to migrate from IE8. Thanks.
There are currently 2 common mindsets.
1) find a stable version and prevent yourself from ever getting anything better and any upgrade is sure to break tons of stuff
or
2) upgrade versions every time a new one comes out so you get the benefits of incremental improvements, sure stuff breaks, but the next patch will fix it in a matter of days/weeks
On April 8th 2014 the joyful day of XP/IE6 death, which should
Re: (Score:2)
If you're a dev, you shouldn't be chasing versions. Find a stable version, stick with it through your project. SE already has enough of that "stuff changing out from under me" feel without adding to the issue.
This mindset is why I still have to support companies that refuse to migrate from IE8. Thanks.
There are currently 2 common mindsets.
1) find a stable version and prevent yourself from ever getting anything better and any upgrade is sure to break tons of stuff
or
2) upgrade versions every time a new one comes out so you get the benefits of incremental improvements, sure stuff breaks, but the next patch will fix it in a matter of days/weeks
On April 8th 2014 the joyful day of XP/IE6 death, which should be considered an international holiday, I think a lot of companies realized that the days of use a "Stable version" for decades is over/no longer realistic.
Now I am not saying "just start upgrading everything always" because the worst thing you can do is try to step out in front of the subway car of continuous integration/continuous improvement after letting a project mature on "stick with the stable version" mentality; but I am saying... the half-assed "stable version" meets patch tuesday bullshit that microsoft is doing will continue to bite you and everybody else in the ass until that entire tech stack stops doing that crap and starts doing the continuous integration thing for real. Chrome does it, every app on your phone tries to do it, "cloud" products do it (that is one of the reasons execs love "cloud").
Microsoft might as well be mailing floppies for how broken and relevant their process is.
Speak for yourself! I can't consider learning HTML 5 until 2020 when 7 goes EOL as too many of the users have standardized on IE 8 HTML throughout the whole decade. I have 2 apps we support which are IE 6 only and can't be upgraded and not our call to upgrade it( client owned)
Re: The joys of youth (Score:2)
Jan 2016 will kill IE7 and IE8.
Apparently Microsoft is not doing a good job of getting the message out.
Re: (Score:2)
Smart people recommend that you stay away from HTML 5 until version 5.1.
Re: The joys of youth (Score:2)
After Jan. 12, 2016, Microsoft will support IE9 only on Windows Vista, IE10 only on Windows Server 2012, and IE11 on Windows 7 and Windows 8.1.
IE7 and IE8 will drop off support completely, no matter what OS they run on.
Good motivator to migrate :)
unless you need it wait... (Score:2)
Wait until the .1 release of Windows 10 unless you have to be on the bleeding edge. Despite the promises made by Microsoft, it'll have bugs, cause problems and third party support will be lagging.
Re:unless you need it wait... (Score:4, Interesting)
Which is the problem with Microsoft trying to force people to use it, and deciding they're going to be forcing updates.
They're saying they're doing it for security, but time and time again Microsoft has demonstrated they're not trustworthy in their updates.
My experience says taking a day 1 anything from Microsoft is a recipe for disaster. In fact, taking a day 1 from anybody is.
Microsoft is basically breaking first and fixing later. The problem is it isn't Microsoft's stuff which ends up broken, and bad release engineering is costly to companies.
Sorry, but Microsoft hasn't demonstrated we should ever trust them with continuous releases. They've demonstrated the opposite, in fact.
Re: (Score:2)
wait, Microsoft doesn't have a lock on this kind of shit. Apple, Google, Samsung name a vendor and they have launch problems and it all stems from the complexity of building large systems or software projects. A regression gets missed or weren't there and now there's a quick shuffle to fix it. The measure we have to use is is how effective they get over time at reducing the defects by day zero but to expect zero defects is a false hope. So to your point, taking a .0 release from any vendor is risky but
Re: (Score:2)
Why, yes, I even said that
I don't care who you are, I simply do not trust your fresh release of anything, I do not wish to fix your mistakes, and do not believe over time you'll be awesome at not breaking anything ever. In fact, I thin
Re: (Score:2)
I don't care who you are, I simply do not trust your fresh release of anything, I do not wish to fix your mistakes, and do not believe over time you'll be awesome at not breaking anything ever. In fact, I think that's impossible to do 100% of the time.
Not now, not ever. Because many many years of doing change management has told me that would be stupid and reckless, and I don't work in places which are willing to do that.
Unfortunately, Microsoft seems to be trying to go down the route of pretty much forcing as many people as possible to get the updates immediately.
Either because they're arrogant morons, or they figure it's just easier if everybody else does their beta testing.
There isn't a software vendor on the planet I would accept a first day release from. And I've seen far too many day 1 mistakes from Microsoft and other vendors to ever change that.
But we've all become accustomed to accepting it. You buy that new cell phone for Christmas, it'll have a .0 release of the next gen of the O/S. It'll have bugs, problems, zero day vulnerabilities and as a consumer you'll be happy to wait 6 months to a year for a fix. You like that new Tesla because it's green, ultra cool and preppy. Is your fire insurance up to date? We do this because we want the glitter and in Win 10's case I'm not really too sure that it's revolutionary vs. Win 7 or Win 8.x. All I kn
Re: (Score:2)
There's a massive difference between knowing there are likely bugs in your software and believing that the day a fix or patch comes out it doesn't introduce new issues.
Microsoft, and pretty much every other software vendor I've ever seen have demonstrated time and time again that they're incapable of releasing updates without breaking something else.
So, we let the reckless and the silly be the beta testers, and wait until the dust settles. And, that's fine, because we can simply choose to wait to apply the
Re: (Score:2)
I think my OP said if wait but some of us however do have to work with Win 10 not only in the Beta stage but also the .0 release, it's not a picnic but that's what things entail sometimes. No software is perfect, no system is perfect, no organism is perfect that's why we have evolution. It's nice to see a somewhat technical post on SD, not the usual "Why does my toe hurt" thread.
Re: (Score:3)
Oh, don't misunderstand me ... I know people do need this stuff when it's fresh and steaming, and have no choice.
I'm saying that, in general, as a change management strategy, taking the first day release of a fix has been demonstrated to be a terrible idea. Over and over and over by pretty much every software vendor.
Many of us support production machines and mission critical things, which means there's no way in hell we'd apply these on the day they get released.
What really annoys me is Microsoft's increas
Just don't use the latest and not-so-greatest (Score:1)
> this means developers must make the difficult choice between using the latest tools or risking crippling bugs such as this one.
Not so difficult. Just don't use the latest and not-so-greatest stuff.
Que 1000 "waaaaah, I wanna to use teh new shiney!!11!!" replies....
Re: (Score:2)
> this means developers must make the difficult choice between using the latest tools or risking crippling bugs such as this one.
Not so difficult. Just don't use the latest and not-so-greatest stuff.
Que 1000 "waaaaah, I wanna to use teh new shiney!!11!!" replies....
Agree. How is the choice difficult? It is a tool, it is not the code itself. It is not your project. You could write your project WITHOUT the tool entirely. It is merely the hammer that you use to pound your nails. So the latest one has been "upgraded" with a shiny new "2015" sticker. As it happens, they also removed the claws on this hammer. Your old hammer has a head AND claws, but it has a "2014" sticker on it. Guess what, I'm going with the tool that works over the new shiny.
Bleeding Edge (Score:1)
To quote Nelson (Score:2)
"Ha-ha!"
-- Nelson
Re: (Score:2)
not "Desperate affairs require desperate measures." ?
Optimization (Score:2)
this means developers must make the difficult choice between using the latest tools or risking crippling bugs such as this one.
I don't know much about this but isn't it possible to just reduce the optimization level to avoid this behaviour? Sounds to me just skimming things that this the result of overly aggressive optimization. I know that's not a long term fix but is it a short term option until MS rolls out the patch?
Re: Optimization (Score:2)
Yes, as long as you're just playing with this in dev. I'm assuming you're not going to deploy to prod on a week old framework
Re: (Score:2)
Yes, thanks, I read another comment saying the same thing after I posted. I guess I was forgetting the whole replace only aspect of .net now. I don't use it a lot and back in the day you could sanely maintain multiple versions on the same system. So in my mind when reading the summary and skimming the article I was thinking this only referred to people specifically targeting the freshly released 4.6.
Here's hoping for a quick patch release. And, as also pointed out in other comments, if you are able the .Ne
Re: Optimization (Score:2)
Is this just a code fix or has it been through any regression testing? I'm not sure I'd want to risk it on a production machine. Better to revert to 4.5.
Manage change, don't avoid it (Score:2)
.
Some development tools are more stable than others from one version to the next, others are less stable. Managing the change then requires the developer to put into place the process for determining how to upgrade software tools in a manner consistent with the best outcome for the project.
Clearly, given the number and frequency of serious bugs coming out of Redmond of late, i
That can't be right (Score:2)
app level corruption? (Score:2)
I just installed 8.1 with VS 2015 this weekend.
Is this serious enough where I need to re-image as things like my Intel RST raid driver all depend on 4.5 runtimes or does this only hit code being compiled?
Re: app level corruption? (Score:2)
It affects the jit compiler, so could affect things like code with generics. I have no idea if that's the kind of code in a graphics driver, but I'd hope everything there would be designed to avoid jit compilation.
Re:Who cares? (Score:5, Insightful)
Lots of people care, including myself. I develop using .NET and this is very useful information for me. This is the exact kind of information I would expect out of Slashdot: tech information that helps me in my tech-oriented job.
.NET is in no way "dead", despite your obvious hatred for it.
Re:Who cares? (Score:5, Interesting)
Well, ignoring the rest of your comment, this [arstechnica.com] is actually worth highlighting.
Good riddance, dice.
Sorry we couldn't help you leverage your synergies.
Actually, we're not sorry at all.
Re: (Score:3)
I guess the expected tsunami of techies eager for SJW articles never arrived.
Re: (Score:2)
Hey, wether you visit to read, or you visit to start a Bro-splainer flamewar, it still counts as an ad impression.
Re:Who cares? (Score:4, Insightful)
I check the Disable Advertising box. Therefore, in order to contribute ad impressions, I must start flame wars.
Re: (Score:2)
That's a shame. (Really.) Dice were relatively benign overlords compared to some others who might have been even more aggressive in their attempts to monetize us.
Not that I particularly like Dice. But Slashdot is still here, mostly intact, and still the bastion of free speech that no one else wants to be. That ought to count for something.
Re: (Score:2)
Apparently we've not been successfully leveraged.
That's unfortunate.
Re: (Score:2)
Yep. Shit has officially hit the fan. I think we're in for a bumpy ride.
Re: (Score:2)
I heard that slashdot was sold to 9gag...
Re: (Score:2)
Re: (Score:2)
i just ran this on my i5-3570K running win7:
>timecmd "systeminfo | find 'System Boot Time'"
systeminfo | find 'System Boot Time'
Results of execution:
Exit code 2
Time of execution 10.121
that's 10 seconds.
i just had to reboot to install about 6-weeks-worth of updates.
it never crashes.
you're doing it wrong.
Re: (Score:2)
Re: How is this different from Microsoft's... (Score:2)
I use Windows in a Parallels VM and in 4GB (or GiB who the fuck cares) I run Chrome and I with several tabs, Outlook, Word, 3 or 4 instances of VS2013 and all sorts of other miscellaneous stuff and don't have any problems with crashing. What hardware are you running your Windows on?
Re: (Score:2)
I reboot Windows at lunch and the end of every day, and Windows still crashes a few more times during the week. It is simply unreliable.
My works machine gets rebooted about once a month and my home machine can sometimes go longer, depending on what kind of security issues are being fixed on Patch Tuesday. Font driver bug, yeah reboot now, SMB bug, nah, got a firewall, will wait a bit longer.
If Windows is crashing regularly, look at what crapware you have installed or replace the hardware.
Re: How is this different from Microsoft's... (Score:2)
Why are you running SQL Server and IIS on a Dev machine out of interest?
Re: (Score:2)
It is installed by default in VS
Re: How is this different from Microsoft's... (Score:2)
Why not? I run a 'datacenter on a vm' type of vm. SQL server, MySQL, postgresql, rabbitMQ, Couchbase, IIS, visual studio, elasticSearch/kibana, and tomcat and eclipse for the java app another team maintains. Runs fine with 6.5 gb of ram
Re: How is this different from Microsoft's... (Score:2)
You could run it on a separate server or a few separate servers instead of consuming the resources of several dev machines. SQL Server isn't exactly lightweight and you're running other RAM intensive processes by the sounds of things.
Re: How is this different from Microsoft's... (Score:2)
Agreed on IIS although Web deploy takes no more time than building it locally but I wouldn't run SQL Server locally unless it's a small DB. What I'm getting at is that I have never had any problems with crashes while developing on Windows so I'm just surprised to hear of such bad experiences. Don't peg me as a Microsoft fanboy; I might work with their stuff but I curse them daily.
Re: (Score:2)