Slashdot Mirror


Microsoft Declines To Make a 64-Bit Visual Studio (uservoice.com)

OhPlz writes: A request was made back in 2011 for Microsoft to provide a 64 bit version of Visual Studio to address out-of-memory issues. After sitting on the request for all that time, Microsoft is now declining it, stating that it would not be good for performance.
After almost five years, the request received 3,127 votes on the UserVoice forum for Visual Studio. Microsoft instead recommended the vsFunnel extension to optimize memory by filtering low-priority projects, adding "we highly value your feedback." They cited a December MSDN post that had argued "smaller is faster," and that no performance benefits would be realized for users whose code and data already fit into a 32-bit address space, while most other issues could be addressed with better data design.

227 of 359 comments (clear)

  1. In other words... by ChodaBoyUSA · · Score: 4, Insightful

    We don't want to do the work.

    1. Re: In other words... by Anonymous Coward · · Score: 5, Insightful

      It's not about doing the work, it's the outsourced Indian team doesn't know how to do the work.

    2. Re: In other words... by slack_justyb · · Score: 2, Insightful

      That's exactly how I read it. All the excuses giving are weak at best. Microsoft doesn't want to invest the time and money. But figures, Microsoft's products that are non-office are mostly turning into trash.

    3. Re: In other words... by PimpBot · · Score: 4, Funny

      Just tell them to do the needful!

    4. Re:In other words... by OhPlz · · Score: 2

      That's really what it feels like. Visual Studio has a lot of powerful built in tools and most enterprise users add in even more. I have a solution with a half dozen projects that can hit the memory wall in a couple days or so. Perhaps it's that the IDE leaks memory badly, in which case 64-bit would let it leak worse. Either way though, it needs to be addressed. Their response was completely lame. They've done great things with C# and C++ lately which means they're putting money into the product, it's bizarre that they're passing on this. I'd take it even if some features were missing and were added back in as updates later on.

    5. Re:In other words... by Z00L00K · · Score: 4, Interesting

      No, it's because they want to drive people to instead use cloud services so that they can get into control of all your data.

      To Microsoft and Oracle the desktop operating system is a necessary evil and they want a transit into thin clients. But they don't want the users to understand that they do it, instead it's a free "upgrade".

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    6. Re: In other words... by Austerity+Empowers · · Score: 5, Insightful

      It's not about doing the work, it's the outsourced Indian team doesn't know how to do the work.

      I am pretty sure this is the actual reason, not just cynicism. MS has fired or encouraged significant attrition amongst it's can-do types, focusing those few who remain and who know how to do things into certain areas. The rest...they've backfilled with H1B or outright offshoring. Any other company would have collapsed by now, but monopolies are a powerful thing.

    7. Re: In other words... by Anonymous Coward · · Score: 5, Interesting

      This right here.

      This is IE 6.0 all over again. Major products they push on everyone. Then let them rot in place.

      VS2015 is very cool. It is also *VERY* flaky. I have had to reinstall it no less than 5 times now because 'something' breaks. Woe unto you if you have to bring up the repair screen. Plan on that bitch taking 3-4 hours to change 1 package.

      They neglected C++ for so long on their train to .net (which is 64 bit hmmm). clang and gcc now regularly destroy them on compatibility and speed.

      They are so hell bent on making platforms they forgot to make product. I remember standing in long ass lines to buy windows 98. Fast forward to today. Very few actually *want* windows 10. For me getting network backups back again was worth the upgrade.

      Also they are making a rather extraordinary claim that x64 is slower than x32 with visual studio. They should do something like oh I dont know 'recompile it as 64 bit' and PROVE IT and show their work?! Perhaps oh I dont know ON A BLOG POST?! You couldnt find a few interns and a couple of seasoned guys to make it work? Out of a company that big? I call shenanigans.

      MS there is a reason everyone is jumping to other platforms. Yours is just not up to date and you change your mind every 3-4 years on what platform you want to push. Then the platforms MS comes up with are pretty much 0% compat with the old ones. So you can not even re-use your code. You have to throw it all out and start over. MS this is why devs no longer want to work with your crap.

    8. Re:In other words... by OhPlz · · Score: 5, Funny

      I submitted the story, so yea.. I read the links. I added my $0.02 to the linked issue years ago. One does follow the other. They're obviously willing to spend some money in some areas of the product, but unwilling in this case. Those oddles of plugins are what makes Visual Studio desirable. As for drowning kittens, there's a lot of that going around. So many 32-bit kittens, never going to grow up to be 64-bit.

    9. Re:In other words... by PolygamousRanchKid+ · · Score: 4, Funny

      Oh, it's not on the top of the list of their priorities. Just take a look at Microsoft's recent behavior, and it becomes crystal clear. Satya Nutella is not forcing Windows 10 down everyone's throat because he wants to annoy his customers: He is doing it because there is a clause in his contract that gives him a big bonus, if Windows 10 reaches a significant market share.

      Even if that means feeding folks Windows 10 like the way a Foie Gras goose is fed.

      --
      Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
    10. Re:In other words... by war4peace · · Score: 4, Funny

      FUCK YOU.
      Now I crave Nutella.

      --
      ...gis sdrawkcab (usually not responding to ACs; don't bother posting as AC)
    11. Re: In other words... by gweihir · · Score: 1

      That's exactly how I read it. All the excuses giving are weak at best. Microsoft doesn't want to invest the time and money. But figures, Microsoft's products that are non-office are mostly turning into trash.

      I agree, but I think the same is happening with Office, just slower.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    12. Re:In other words... by PhrostyMcByte · · Score: 2

      It seems like you (and many other people here) are decidedly in a pro-64bit camp and ready to have a go at the traditioned pastime of MS bashing, but I haven't seen any hard examples of what would make a 64-bit VS better. Can you name some?

      64-bit certainly has advantages, but it also has disadvantages. It really depends on the app to know how they'd balance out. I can't imagine they looked at this problem lightly.

    13. Re:In other words... by jcr · · Score: 1

      Bingo.

      How very half-assed of them.

      -jcr

      --
      The only title of honor that a tyrant can grant is "Enemy of the State."
    14. Re: In other words... by Tough+Love · · Score: 1

      Microsoft doesn't want to invest the time and money.

      It's not just that, it is also clear the the time and money required is significant, which in turn indicates that the code base is a rambling disaster. Big surprise or what?

      Note: the Linux ecosystem accomplished the 64 bit transition for essentially all projects with just a handful of developers per project, suggesting that an open source code base tends to be better structured than Microsoft's.

      --
      When all you have is a hammer, every problem starts to look like a thumb.
    15. Re:In other words... by Anonymous Coward · · Score: 1

      I read the article and it's a bunch of really bad choices. I'm on board
      with people who have stated that it's due to outsourcing; makes sense.

      Come on, is anybody really stupid enough to believe:

      There’s other problems with going 64 bit. The law of unintended consequences.
      There’s no upper limit on the amount of memory you can leak. Any badly behaved extension can
      use crazy amounts of memory, to the point where your whole system is unusable.

      So, the natural conclusion is that a 32-bit "thing" that is leaking memory will not affect the
      usability of the system -- am I right?! People who make statements like that are clueless at best
      and it's that mindset that has bought us to this place of really bad design.

      CAP == 'chirped'

    16. Re:In other words... by Arkh89 · · Score: 2

      Small correction here : foie gras is traditionally made from forced-fed ducks (the version with geese liver does not taste remotely the same but is cheaper).
      Also, foie gras is truly delicious, to the contrary of any MS platform/product.

    17. Re: In other words... by Anonymous Coward · · Score: 1

      Let's just hope that Libre/OpenOffice gets rid of the java before MS Office becomes completely unusable.

    18. Re: In other words... by justthinkit · · Score: 2, Insightful

      Microsoft is pushing purchasable apps in Windows 10. It has created a (crappy) new interface, so programs stupid enough to comply with the new interface must be written for it before they can be sold to everyone.

      So Microsoft wants a head start -- "Sorry, our compiler is not available (to those outside Microsoft)". A couple of years from now, with the apps market saturdated, and Microsoft dominating once again in familiar (and new) categories, "Will you look at that, we WILL be shipping VS64. Here you go, one buggy VS64 beta coming up."

      --
      I come here for the love
    19. Re: In other words... by zaphirplane · · Score: 1

      If it was open source I would have fixed it ... Oh hang on isn't open source core

    20. Re:In other words... by jellomizer · · Score: 1

      I need to agree. I was required to do work in Visual Studios for an Application. The application design was for performance, So its big trade off was it was Very Ram intensive storing 20% of the database in active RAM. For faster retrieval and updates bypassing giving me about a 100% increase in speed., in order for me to fully test the App, I needed to deploy it to the server to try it out. Because running it in visual studios wouldn't go past the 4 gig barrier. And I was using roughly 20gigs.
      Being that I couldn't debug the app, with a lot of active data it made it difficult to fix random issues that may pop up because to test it I needed to load the data in different blocks to find the data causing the problem to be fixed.

      I spent hours trying to set Visual Studios to 64bit with no avail. I was royally pissed off. Microsoft in general compared to other OS's had really botched moving from 32 bit to 64 bit. being that it is 2016 and the average PC has been 64 bit for about a decade now, is very pathetic.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    21. Re:In other words... by geoskd · · Score: 1

      We don't want to do the work.

      I never thought I would hear myself have to say this, but Microsoft is right. Doing memory addressing in 64 bits carries with it a performance penalty, as even modern processors are not as fast at processing 64 bit arithmetic as 32 bit, and as such, allowing 64 bit memory addressing will slow things down, and many Microsoft developers are not smart enough to handle the memory addressing properly (Yes I said it, on average Microsoft devs are dumb and or lazy).

      Microsoft is absolutely right, there is practically no good reason to address that much memory, and it is almost always a sign of a fundamental failing on the part of the developer.

      Another way to say it is: If you are looking for the ability to process and handle that much memory all within a flat memory model, you probably want a cloud based solution as your piddly PC ain't gonna handle it anyways.

      --
      I wish I had a good sig, but all the good ones are copyrighted
    22. Re:In other words... by bloodhawk · · Score: 1

      No, it's because they want to drive people to instead use cloud services so that they can get into control of all your data.

      To Microsoft and Oracle the desktop operating system is a necessary evil and they want a transit into thin clients. But they don't want the users to understand that they do it, instead it's a free "upgrade".

      While I would not put that beyond them. The infinitesimally small number of people affected by not having a 64 bit IDE makes your statement not just unlikely but down right dumb. Even the request for having 64 bit was from less than 4,000 developers. I think not working towards a 64 bit IDE is a little short sited but given it would cost 10's if not hundreds of millions to do, and only benefit a fraction of a fraction of developers (I would think we are talking less than 0.01%), it isn't a surprising decision. I would expect there are far higher priorities that benefit far larger groups of devs.

    23. Re: In other words... by Darinbob · · Score: 2

      Is there an advantage to converting to 64 bits? Or is it more the newer-is-better type of thinking? Seriously, if your project is running out of memory while building then maybe the problem is with the project.

    24. Re:In other words... by thegarbz · · Score: 5, Funny

      I submitted the story, so yea.. I read the links.

      Slashdot has really gone downhill as of late. First readers are starting to RTFA, now submitters are RTFAing before they submit. Pretty soon we'll have well informed discourse and at that point why would anyone come to Slashdot to read the comments anymore.

    25. Re: In other words... by geoskd · · Score: 5, Informative

      They should do something like oh I dont know 'recompile it as 64 bit' and PROVE IT and show their work?!

      I don't have to see the compilation to understand that it is going to be slower: I can read processor spec sheets. All modern processors can do 32 bit pointer arithmetic in a single instruction. This is critical because pointer math is highly linear in nature and *will cause pipeline stalls*. 64 bit arithmetic by contrast is typically several cycles long, and will commonly stall the pipeline. The performance hit I have commonly heard is 10%, and seems to come from some amount of informal testing.

      Take a look at this for an idea of some of the testing that gets done on these kinds of things.

      --
      I wish I had a good sig, but all the good ones are copyrighted
    26. Re:In other words... by myowntrueself · · Score: 1

      We don't want to do the work.

      Its probably going to be dropped.

      Some time ago I worked with a Microsoft 'Threat management gateway' appliance. I started trying to get it to work with IPv6. Turned out it couldn't. Turned out that Microsoft decided it was too much effort to upgrade the TMG for IPv6... because it was scheduled to be cancelled.

      I'd be looking for a replacement for visual studio right about now.

      --
      In the free world the media isn't government run; the government is media run.
    27. Re: In other words... by MachineShedFred · · Score: 1

      Well, it's conceivable that if you have extensive libraries and plug-ins loading, you could come up to the 32-bit memory barrier pretty quickly, and I'll bet that VS doesn't handle being told "No, you get no more memory!" from the OS very gracefully.

      But you're probably right - if someone is loading kitchensink.h in their project and running into address space limitations, they might think about a more efficient design.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    28. Re: In other words... by AReilly · · Score: 3, Insightful

      a) 64 bit processors can do 64-bit arithmetic in a single cycle.
      b) The 64-bit processors in question have more named registers (fewer stack spills), and a significantly more efficient function calling convention (ABI)
      c) 64-bit ABI doesn't touch the old x87 register set, which is another net performance win. (Not that VS2015 will use this much.)
      Ergo: most of the time they are faster.
      The only way to make a 64-bit program slower than a 32-bit one is to have enough pointer-chasing and associated irregular dynamic data that the change in pointer size materially affects the data cache miss rate. Certainly there is some code like that: VS2015 might even be an example.

      How fast do you need your IDE to be though, and how much is performance really the instruction set's fault? Versions of Visual Studio have been produced that run in everything from .NET to JavaScript, and that's fair because most of the cycles are going to be consumed in GUI and file stacks anyway. Native code performance is hardly going to be the issue.

      The issue is almost certainly that LLP64 is a dumb idea, and the code base will have lots and lots of pieces of historical code that assume that you can manipulate pointers with long arithmetic, and all of those are going to have to be found and fixed by hand, often involving real understanding and design decisions.

      --
      -- Andrew
    29. Re: In other words... by Darinbob · · Score: 1

      Sometime you can get the memory back in other ways. Ie, make the 32-bit application "large address away". Or just be more efficient. I have seem people bitch at an online game for not going 64-bit, but then they'd have to maintain two copies. The memory problem was basically solved by going to a 64-bit OS instead, so the application gets the full 4GB.

    30. Re: In other words... by s4m7 · · Score: 2

      I read /. for the centerfold, you insensitive clod!

      --
      This comment is fully compliant with RFC 527.
    31. Re:In other words... by ChunderDownunder · · Score: 1

      Having to recompile things potentially in 32 bit and 64 bit versions just to support different versions of operating systems got old some time ago.

      Little wonder MS are underhandedly forcing everyone to upgrade to Windows 10. (tinfoil hat telemetry and hardware driver support, it's a reasonable plan)

      On 32 bit support though, Intel continue to support an industry crippled by budget computers with 4GB RAM or less, when in this day and age an 8GB stick is a small fraction of the cost of a decent machine.

    32. Re: In other words... by Anonymous Coward · · Score: 1

      64 bit arithmetic by contrast is typically several cycles long, and will commonly stall the pipeline

      False. Most modern x86 CPUs can do 16/32/64bit arithmetic all with 1/2, 1/3rd, or 1/4 cycle throughput and 1 cycle latency. 32bit and 64bit arithmetic have exactly the same latency and throughput for all Intel and AMD cpus I have ever seen. 10% performance hit is because of additional padding caused by alignment for 64bit and 2x larger pointers eating up slightly more memory. That's for general purpose programs. That is a memory access and cacheline issue, nothing to do with the internals of the CPU registers or execution units. Many algorithms and programs benefit from 2x more registers and 2x+ faster 64bit operations.

      You're either trolling or inept.

    33. Re: In other words... by reanjr · · Score: 1

      Your piddly Microsoft PC might no able to handle it, but my piddly Linux PC regularly handles large memory tasks just fine.

      Of course, in the Linux world we solved this problem back around 2002 when it came up instead of throwing our hands in the air and tucking our tails between our legs and whining that 64 bit is too hard.

    34. Re: In other words... by geoskd · · Score: 2

      False. Most modern x86 CPUs can do 16/32/64bit arithmetic all with 1/2, 1/3rd, or 1/4 cycle throughput and 1 cycle latency. 32bit and 64bit arithmetic have exactly the same latency and throughput for all Intel and AMD cpus I have ever seen. 10% performance hit is because of additional padding caused by alignment for 64bit and 2x larger pointers eating up slightly more memory. That's for general purpose programs. That is a memory access and cacheline issue, nothing to do with the internals of the CPU registers or execution units. Many algorithms and programs benefit from 2x more registers and 2x+ faster 64bit operations.

      Wow, knowing there are people like you out there explains why there is so much shit code floating around

      A modern processor is a pipeline design. What this means is that the processor can start unrelated instructions at a rate of one per cycle (or more if there are parallel pipelines available like most processors in the last decade). The key is that the instructions themselves actually take multiple cycles to finish, but the processor doesn't have to wait for the previous instructions to finish before starting the next one. The exception to that model comes when the next instruction depends on data from an instruction that is currently in the pipeline. When this happens, the processor cannot start any new instructions until it finishes processing the critical instruction. This is called a pipeline stall. Good compilers (GCC, Intel's custom compiler, Microsoft's compilers) all re-order instructions to minimize this effect, but with pointer math, there is very little that you can do, almost all code relies heavily on pointer math, and the nature of the dependency limits how useful instruction re-ordering will be. 32 bit pointer math is generally very fast. Add and sub are typically single cycle instructions. Mult is 3 or 4 typically. With 64 bit, The add and sub are usually 2 cycle (although I think Haswell and beyond might be down to 1 cycle). 64 bit mult is around 7 - 9 cycles.

      That 7-9 cycle latency for the multiply is what kills you. Mult is used whenever you index into an array. Array access is everywhere in compiled code, and these pipeline stalls have a significant cost.

      --
      I wish I had a good sig, but all the good ones are copyrighted
    35. Re: In other words... by cyber-vandal · · Score: 1

      Does the 4GB limit affect the remote debugger?

    36. Re:In other words... by davester666 · · Score: 1

      You should be happy with 640K.

      --
      Sleep your way to a whiter smile...date a dentist!
    37. Re: In other words... by johannesg · · Score: 1

      b) sure, and that also means more data to be pushed and popped whenever the register set must be changed for any reason.

      and then let me add:

      d) pointers are bigger, which has negative effects on cache use.

      I measured the performance difference between 32-bit and 64-bit on the application I'm working on (300,000 lines of scientific code). The 64-bit version is about 2% slower than the 32-bit version.

    38. Re: In other words... by K.+S.+Kyosuke · · Score: 1

      Mult is used whenever you index into an array.

      No, it isn't. Only a moron or a moronic compiler wouldn't bit-shift, strength-reduce, or both.

      --
      Ezekiel 23:20
    39. Re: In other words... by K.+S.+Kyosuke · · Score: 1

      A much better reason for using constrained memory is memory-efficient encoding. Regarding any dependencies, the critical path determines the minimum length in cycles necessary, so unless the dependencies lead to the previous cycle (==are data-dependent, as opposed to computation-shape-dependent), it's almost irrelevant (beyond an extra instruction being "in flight" for two more cycles - and even that if multiplication is actually being used, which it preferably isn't, and if it is, you may be doing something wrong).

      --
      Ezekiel 23:20
    40. Re: In other words... by K.+S.+Kyosuke · · Score: 1

      b) sure, and that also means more data to be pushed and popped whenever the register set must be changed for any reason.

      Are you suggesting optimizing for the uncommon case? How often does your thread get interrupted to be switched for a different context? Every fifty million instructions or so at worst? Would you trade a one-time delay of a hundred cycles at the end of this sequence for an extra few cycles every now and then during the computation, caused at least by the fact that you have to access your stack at L1 more often? That sounds like poor economy to me.

      --
      Ezekiel 23:20
    41. Re: In other words... by jonwil · · Score: 1

      I dont know how the speed of a fully-optimized Visual C++ program compares to the speed of the same program if compiled with clang or GCC (since I dont have any code-bases/software that compile with both VS and with clang or GCC to compare with) but I have been using Visual C++ since Visual Studio 6 and the Visual C++ compiler is far superior now than the one included with Visual C++.

      Optimized output is far better (when you turn all the optimizations on) than Visual Studio 6 and Microsoft has been putting a lot of developer time into improving the quality of the compiler and runtime libraries (including support for a very large chunk of the newest C++ standards with the intent to support more going forward).

      A read of https://blogs.msdn.microsoft.c... clearly shows that Microsoft no longer considers C++ a second-class citizen.

    42. Re:In other words... by Z00L00K · · Score: 1

      You didn't read the intent I had behind this - I think that Microsoft don't want to publish a 64-bit Visual Studio because they silently tries to quench the development of high performance computing solutions and instead try to keep that internally in their cloud services.

      High performance computing is the leading edge, and denying the tools for that means that you only deny them to a small but important volume of developers that are already stretching the boundaries. No pioneers for a platform means that the platform is slowly losing importance.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    43. Re: In other words... by cecom · · Score: 2

      This is absolutely false and I read you other comments on the subject as well. I am not sure whether it is deliberate, but what you are saying is absolute nonsense made to sound credible by inserting a random technical term like "pipeline" here or there. It is sad that the quality of posters on Slashdot has decreased to the point where laughable misinformation is moderated as "informative".

      64 bit code might get slower because pointers occupy more memory. Frequently that is offset by more registers and smart encoding. End of story. What you are saying is wrong.

    44. Re: In other words... by convolvatron · · Score: 1

      how is this different with a 32 bit file and a 32 bit alu? its not. you're right, saying everything falls nicely into a cycle per op is nonsense.

      but 4GB is a pretty small address space nowdays, don't you think?

    45. Re: In other words... by Lonewolf666 · · Score: 1

      Backward compatibility. For instance, a quick search brings up this:
      https://blogs.msdn.microsoft.com/oldnewthing/20050131-00/?p=36563:
      Header data for a bitmap file that would become incompatible and need rewriting if the size of a long changes.

      Damned if you don't change it for the reason you outlined, but even more damned if you do change it, because now you (or your users) have to rewrite lots of code to restore the old functionality of the code. Probably (way) more than if you "just" have to rewrite code that manipulates pointers with long arithmetic.

      --
      C - the footgun of programming languages
    46. Re:In other words... by Lonewolf666 · · Score: 1

      If so, it might be self-defeating. Microsoft is not alone in the world, and if they let high performance computing die on Windows, it might silently migrate to Linux.
      More so that it already has. See https://en.wikipedia.org/wiki/TOP500#Architecture_and_operating_systems ;-)

      Joking aside, trying to push around customers that have alternatives is a bad idea. And I think organizations that need high performance computing solutions also tend to have the expertise to use something else than Windows.

      --
      C - the footgun of programming languages
    47. Re: In other words... by sysrammer · · Score: 1

      I read /. for the centerfold, you insensitive clod!

      Haven't you heard? The centerfold is now filtered.

      --
      His ignorance covered the whole earth like a blanket, and there was hardly a hole in it anywhere. - Mark Twain
    48. Re: In other words... by johannesg · · Score: 1

      I'm not suggesting anything, simply telling you that more registers does not at all automatically mean faster. Registers do not just get refreshed for thread switching either. What do you think register windows are for?

    49. Re: In other words... by K.+S.+Kyosuke · · Score: 1

      Usually, register windows were used in the past to solve the "we can't be bothered with better compiler optimizations for our experimental architecture" problem.

      --
      Ezekiel 23:20
    50. Re: In other words... by gweihir · · Score: 1

      That would be nice. Another case of a technology being used not because it is good, but because it was hyped.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  2. Summary : by SuperKendall · · Score: 5, Funny

    32 bits ought to be enough for anyone.

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
    1. Re:Summary : by hey! · · Score: 4, Funny

      32 bits ought to be enough for anyone.

      ... said the lead programmer after glancing through the megabytes of 20 year-old legacy code, and then realizing every single variable had been named with Hungarian Notation.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    2. Re:Summary : by Desler · · Score: 2

      Nah, rewrite it in 16-bits. Then by the logic of that MSDN post it will be even faster!

    3. Re:Summary : by hey! · · Score: 1

      Oh, it wasn't self-evidently stupid, but that would be wishing for too much. In fact it's the worst kind of stupid: the kind that looks really clever, and may even have considerable utility within a few narrow scopes of application. It was more like Satan's diabolically inspired kind of stupidity.

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    4. Re:Summary : by rcase5 · · Score: 1

      ...and nobody will ever need more than 640k of memory.

    5. Re:Summary : by Impy+the+Impiuos+Imp · · Score: 2

      The mouse hovering over a variable or function, calling up the definition and local comments, to say nothing of "goto definition or declaration", was a stunning, inconceivable future capability George Jetson might have had.

      And compilers warning of potential overflow issues? Forget it, R. Daneel.

      --
      (-1: Post disagrees with my already-settled worldview) is not a valid mod option.
    6. Re:Summary : by goose-incarnated · · Score: 1

      Are you saying Hungarian notation was a self-evidently stupid idea?

      In most incarnations, yes it was. Dumb devs prefixed the variable with the actual type it was declared as and not (as intended) with the type it was representing.

      Say you're writing the implementation of a textarea for a native GUI application. It makes sense that you would want to differentiate between the variables storing the width in pixels and the width in the current font face. So, you make pxWidth and ffWidth. That was the intention: give the variable some context to help the reader know what it was used for.

      Dumb devs, OTOH, saw it and immediately jumped into cargo cult mode - when they declared "int width;", they did it as "int iWidth;". The variable now has no context, but the reader now (very unhelpfully) knows that width is an integer. Of course, the stupidity of prefixing type-name info on variables was not really recognised at the time - even though everyone working on windows worked with those horrible typedefs anyway which broke the HN rules left and right.

      TLDR; There were hipsters in every generation. Early 90's was no different, hence Hungarian Notation.

      --
      I'm a minority race. Save your vitriol for white people.
    7. Re:Summary : by lgw · · Score: 4, Insightful

      It was not stupid at all in the domain for which is was invented. Simonyi (the eponymous Hungarian) was apparently appalled at what it became.

      The original idea was to decorate objects of the same type, but different semantics, so that you wouldn't confuse them: specifically rows and columns int the Excel codebase. You could tell instantly that rwFoo - coBar was a bug, even though they were both ints and the compiler was fine with it. It's a fundamental weakness of C and C++ through today that's there's no way to make efficient, disjoint integral types.

      It can also be useful to distinguish between types that typedef to the same type on one platform, but might typedef to different types on another, but IMO it's not worth the clutter.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    8. Re:Summary : by Livius · · Score: 1

      It was an excellent idea for assembly language programming.

      It became a weapon of mass brain cell destruction when 1) 16-bit Hungarian notation was used in 32-bit programming, and 2) it escaped assembly programming and vandalized C programming.

      And tragically too many programmers took too long to question Microsoft's authority.

    9. Re:Summary : by david_thornley · · Score: 1

      Compilers still do a really crappy job of warning of potential overflow issues. They are happy to do it with an explicit conversion, but not (as far as I've seen) for values inside computations, and that's where you're most likely to be hit.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    10. Re:Summary : by lgw · · Score: 1

      You have a lot more operators to define, plus you want an implicit conversion from int, plus you'll need a pragma on some platforms to suppress 8-byte alignment for structs, plus you'll need that other thing you didn't think about. I guess it's possible, but it's hardly the sort of thing you'd want to do on the fly for each type you use.

      --
      Socialism: a lie told by totalitarians and believed by fools.
  3. Smaller is Faster by Anonymous Coward · · Score: 1

    And that's why we are staying with Windows 98

  4. Remember how long Excel sticked to max 64k rows? by heldal · · Score: 3, Interesting

    The day they broke that limit, some cheered. Others looked upon it with dread, knowing the hellspawn that would follow.

  5. 32-bit visual studio by fyngyrz · · Score: 2, Insightful

    "and we have a really, really lame explanation for our underlying laziness and/or incompetence"

    "also, fuck you, developers."

    --
    I've fallen off your lawn, and I can't get up.
    1. Re:32-bit visual studio by ShanghaiBill · · Score: 3, Informative

      Microsoft develops software the same way the British Army fought the Somme Offensive. They use massive amounts of cheap programmers, and just pound away until they have something to release. The code quality is so poor that they often just throw it way and do a complete rewrite for the next version. You may think that supporting 64 bit would mean just changing a few header files, tweaking some compiler flags, and typing "make world", but it would not be that simple. The code is likely riddled throughout with obscure 32 bit dependencies, and would require a huge and expensive effort to fix.

    2. Re:32-bit visual studio by lloydchristmas759 · · Score: 4, Funny

      "also, fuck you, developers."

      Shouldn't that be:
      "also, fuck you, developers, developers, developers" ?

      --
      I'd give my right arm to be ambidextrous.
    3. Re:32-bit visual studio by Anonymous Coward · · Score: 3, Insightful

      I did a couple of 64-bit ports in the past and that's pretty much what it took. The first application was about 50000 lines of code that I had worked on for about a year, i.e., I didn't write it, but I fixed it and refactored it. That conversion took about 2 days, and most of that was making small fixes because the header files were reorganized between gcc 3 and gcc 4.

      The second time I did it was for a code base of about 2 million lines of code that I did not "own" in the same way. That took about three weeks, plus about another week from another developer. This was not code that had been developed in a well-disciplined way, but it worked, and the conversion ended up being very successful and took a lot less time than management had expected.

    4. Re:32-bit visual studio by Anonymous Coward · · Score: 1

      When you say GCC you are suggesting that you are coding on a sane LP64 system like Linux. Be very glad you are not coding on Windows (LLP64) - to say that the system-defined types are an abomination is an understatement.

    5. Re:32-bit visual studio by Anonymous Coward · · Score: 1

      It shouldn't even need to change *any* header files. Using cstdint's exact size ints...

      Oh right. Microsoft. The idiots who still don't support C99. NM, carry on.

    6. Re:32-bit visual studio by Fragnet · · Score: 5, Insightful

      I've been a developer for 15 years and I can say Visual Studio environment is way better than anything available on Linux. The code dependencies can be resolved in 64 bit but Microsoft is a business and there's an opportunity cost associated with doing that rather than something else more people actually need.

    7. Re: 32-bit visual studio by eggnet · · Score: 1

      Windows uses llp64, so sizeof(long) != sizeof(void *)

    8. Re: 32-bit visual studio by Anonymous Coward · · Score: 1

      Wrong. They are waiting for some kid to do it so they can buy it really cheap. They will convince the kid to sell it cheap by saying it will make him a rock star. Then they will blacklist him.

    9. Re:32-bit visual studio by lgw · · Score: 1

      There's no requirement in the standard that sizeof(long) == sizeof(void *) (and they're not he same on Windows, due to choices made long ago to make 16-32 bit ports easy).

      There's no requirement in the sizeof(long *) == sizeof(void *) either. I don't think I've ever seen a non-trivial codebase that didn't make that assumption throughout, but there used to be architectures where a char* was bigger then an int*.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    10. Re: 32-bit visual studio by Malc · · Score: 3, Insightful

      I bet their compiler catches most of the bad shit that only works on 32-bit builds... But they have so many warnings they can't see this.

    11. Re:32-bit visual studio by thegarbz · · Score: 5, Informative

      The code quality is so poor that they often just throw it way and do a complete rewrite for the next version.

      Based on what? For the most part when MS projects have either had source code leaked or made open source the analysis of the code has shown some pretty fine programming. Re-writes seem to be based on strategic decisions and also decisions to not end up with endless layers upon layers of cruft (something that also supports code quality in a positive way).

    12. Re: 32-bit visual studio by FLeXyo · · Score: 1

      Will I be declined the Windows 10 upgrade if I'm blacklisted? If so, I'm in! This might be the best way to avoid it ;)

    13. Re:32-bit visual studio by maugle · · Score: 4, Insightful

      I'm sure Visual Studio works quite well for you. But, to counter one anecdote with another, I found Visual Studio to be lackluster and irritating in a thousand little ways, and its marginally-better code completion isn't enough to make me prefer it over either Eclipse or QT Creator.

      As for a 64-bit Visual Studio, my guess is that the code problems of porting to 64-bit are dwarfed by the bureaucratic maze involved in releasing a new edition of a product.

    14. Re:32-bit visual studio by MachineShedFred · · Score: 5, Insightful

      It would probably suck worse, because the memory leaks and plug-in bloat would be only bound by physical memory, rather than the enforced 32-bit memory space.

      If Microsoft is telling people that they should just write better code in order to stay inside of a 32-bit boundary, they should start practicing what they preach and lead by example.

      --
      Slashdot still doesnâ(TM)t support Unicode after it was added to the HTML standard in 1997.
    15. Re: 32-bit visual studio by gestalt_n_pepper · · Score: 1

      "Fuck you, developers" has been the M$ mantra for the last couple of decades. Now we have "universal apps" based on the giant clusterfuck that is WPF. That'll last until upper management once again changes direction, focus, or their socks.

      --
      Please do not read this sig. Thank you.
    16. Re: 32-bit visual studio by tshawkins · · Score: 1

      Checkout the jetbrains IDE's

    17. Re:32-bit visual studio by WarJolt · · Score: 1

      You know what's insane? Loading 70-80 projects in a single visual studio solution because Microsoft thinks all development needs to be monolithic. I mean sure I've had rather complicated type systems chew up memory like there is no tomorrow. Yes compilation takes memory, but the build system shouldn't.

    18. Re:32-bit visual studio by slashdice · · Score: 1

      It's a c++ compiler. You might as well complain it doesn't support BCPL.

      --
      Copyright (c) 1990 - 2014 Dice. All rights reserved. Use of this comment is subject to certain Terms and Conditions.
    19. Re:32-bit visual studio by chuckugly · · Score: 1

      There's no requirement that int be 32 bits in C++. The 32 vs 64 bit-ness of the platforms is address space. In the standards doc (which is the law for C++) int is defined as being able to store values in a range without truncation. They can be big enough to do so, or any larger size, but the guidance is they should be of a size that's efficient for the hardware to manipulate. Some old Cray systems used 64 bit int a long time ago and in fact had 64 bit char as well - perfectly legal C and C++.

    20. Re:32-bit visual studio by Sun · · Score: 1

      I'm pretty sure sizeof(long *) = sizeof(void *) is a requirement. C allows implicit conversion from any pointer to void *, and if that wasn't a requirement, nothing would work.

      Shachar

    21. Re:32-bit visual studio by Plus1Entropy · · Score: 1

      Meh, I'm not gonna contradict your IDE comparison, because I think IDE's in general just suck. I'd rather just code in NP++ or Kate or something, and compile from command line using makefiles or waf or whatever.

      --
      Only crack the nuts that crack. You don't put the ones that don't crack in the sack.
    22. Re: 32-bit visual studio by lucm · · Score: 2

      Wrong. Based on their own SourceSafe commit history they knew it would never be done in time, they've been working instead on the 128 bit version since 2007.

      --
      lucm, indeed.
    23. Re:32-bit visual studio by thogard · · Score: 1

      I would love to see a debugging hack for gcc or clang where you could say sizeof short=3, sizeof int=5 and sizeof char=2. Properly written code shouldn't break but it would find many bugs even if it involved odd wrappers on each line of code.

    24. Re:32-bit visual studio by DrXym · · Score: 1
      Firefox demonstrates why going 64-bit is not always as trivial some people suppose. NPAPI plugins on Windows are 32-bit DLLs. You can't load 32-bit DLLs into a 64-bit application so you either dump support for that feature or somehow shim your product so they still work. In Firefox's case they chose to deprecate NPAPI. But that isn't the end of their issues since even with a 64-bit Firefox for Windows they still have to produce a 32-bit Firefox with NPAPIs enabled. So now they've got two products to build, test and support instead of one and some edge cases like how does somebody upgrade / migrate from one version to the other.

      I expect Visual Studio's problems are 10x as bad. There are thousands of extensions for VS, many of which are commercial, many of which are tied to other substantial products. If VS went 64-bit then chances are that many of these would break. That's one example problem that VS would have to figure out. I'm sure there are many others unrelated to just flipping some compile flags.

    25. Re:32-bit visual studio by jaklode · · Score: 1

      This only requires that sizeof(long *) <= sizeof(void *). This allows you to convert anything to void*, and back (you'll just lose the extra unimportant bits).

    26. Re:32-bit visual studio by Anonymuous+Coward · · Score: 1

      There's no requirement in the sizeof(long *) == sizeof(void *) either.

      Yes, there is. The C standard requires that all data pointers be the same size.

      It's sizeof(void*) == sizeof(void(*)(void)) ie 'function pointers are just data pointers" that's absolutely not guaranteed, though there are many programs and interfaces that make this assumption (eg dlsym(3)).

    27. Re:32-bit visual studio by Anonymuous+Coward · · Score: 1

      The C standard requires that all data pointers be the same size.

      In fact that's incorrect. The only requirement is that any data pointer could be converted to void* and back without loss. Posix assumes that a function pointer too could be converted to void* and back, which is not guaranteed by the C standard.

    28. Re:32-bit visual studio by ilsaloving · · Score: 1

      While that may be true, usability is not what people are talking about in this thread.

      There are countless examples of software that is usable, but their underlying code base is a steaming pile of kack. Given what happened with Internet Explorer, it's not at all unreasoanble to think that Visual Studio has a similar problem.

    29. Re:32-bit visual studio by Lonewolf666 · · Score: 1

      C allows a lot of implicit conversions, not all of them make sense. It is really easy to end up with a C program that does not do what the programmer intended. Hence my sig ;-)

      --
      C - the footgun of programming languages
    30. Re: 32-bit visual studio by VirtualJWN · · Score: 1

      You do the UK a disservice with that statement. Truth is they want to ensure any m$ app dev is 32 bit so it can run in virtualized space ON 64 bit servers in the cloud. 32 to 64 bit conversion isn't a 'huge' deal on the compiler / linker side (provided the 32 bit system was designed properly) plus, native apps are going away anyhow WITH windows. It'll all be citrix-esque virtual pc's from now on SAS, so why bother with 64 bit, leave that to LINUX!

      --
      "Any sufficiently advanced technology is indistinguishable from magic." - Arthur C. Clarke
    31. Re:32-bit visual studio by Fragnet · · Score: 1

      I'm a person and I can say Visual Studio is worse than virtually anything that was available on Linux 15 years ago

      Don't be silly.

    32. Re:32-bit visual studio by Xest · · Score: 2

      Sure each to their own, but I have a hard time believing anyone whose done serious work (i.e. 12 months+ development, using the bulk of the functionality) in Eclipse and Visual Studio could ever objectively argue in favour of Eclipse. Eclipse is slow, cumbersome, has a broken plugin system that often results in you requiring multiple installs for using multiple languages/technologies (try merging STS and Zend if you use Java/Spring and PHP/Zend), and it's also much more buggy. Of course, you don't even have to take my word on that one, just look at the downloads page with all the different convoluted versions that often crossover leaving the user puzzled as to what the fuck they actually need. Visual Studio has versions, but they're mostly related to scale of development (student, independent, businesses, really big business) rather than being language/tool specific.

      Visual Studio really does just work, and it's auto-complete isn't merely marginally better, it actually works. For many languages Eclipse is so slow that you've typed the code before auto-complete pops up, whilst Visual Studio lets you stream out an entire line of code with only a few button presses. When you factor in Visual Studio's debugging, collaboration, and profiling tools the gap just widens further. I do think Eclipse does a better job when it comes to testing though, however I have that impression mostly from Eclipse plugins, whereas I never really bother with much beyond NUnit with Visual Studio.

      People are always going to prefer what they're used to and what they've used the most, but frankly I always even prefererred NetBeans over Eclipse (though it's been sometime since I used NB), it was always much more stable and much more performant. I've been fortunate enough to have a few years solid experience on all these IDEs and I just can't see how objectively Eclipse could be deemed to be a better IDE.

      Despite all this I think the trend for Visual Studio is downwards and has been for quite some years now. This news doesn't exactly fill me with confidence, it comes across as simply that everyone has left the Visual Studio team that has the confidence to make such a change, so instead we're going to pretend we just don't need to make it. It bothers me that rather than doing this sort of thing that people actually want and is useful they're doing things like making the icons fucking shite and less usable, they're doing things like capitalising the menu items and then undoing it next release, they're doing things like ripping out useful functionality to replace it with a more flexible alternative that doesn't actually offer half the previous functionality (i.e. you can no longer auto-generate unit test skeletons for a class definition).

      This isn't just a Visual Studio problem though, it's a problem with Microsoft's development offerings in general - things like ASP.NET MVC have had their classic membership/role provider offerings replaced by default with Identity, but Identity doesn't offer half the config based configurability you had with membership/role providers - i.e. you can't easily switch between AD and SQL authentication via mere config with Identity without doing a lot of work and having a hell of a lot more of your own code to maintain.

      Microsoft seem to have forgotten who their core audience is on this front and how loyal they've been and how much money that loyalty has netted them and instead let their teams focus way too much on pet projects rather than what their customers actually want and need. I'm not against letting developers have the freedom to work on pet projects as in Google's 20% time, but without the customers there'll eventually be no money for that anyway. The customer matters, and modern Microsoft just doesn't seem to get that like old Microsoft did. Even outside of Microsoft's development tools and technologies division this was a lesson hard learnt when Microsoft initially announced the Xbox One to be a fuck the consumer industry slave box until the realisation that this would kill the prod

    33. Re:32-bit visual studio by david_thornley · · Score: 1

      As a C++ programmer, I assure you that Visual Studio really doesn't just work. It's been getting better (VS2013 is a lot better than VS2008), but it isn't perfect. (Yes, I'd love us to upgrade to VS2015, and we will when that one software vendor releases the proper binaries. Yes, I agree that it's taking them inordinately long, but we need their stuff.)

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
    34. Re:32-bit visual studio by lgw · · Score: 1

      Did you have a < in there that slashcode ate? It's less-or-equal, but maybe you were saying that.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    35. Re:32-bit visual studio by maharvey · · Score: 1

      ...and just pound away until they have something to release...

      or as parent said: "fuck you, developers."

  6. Although the reason screams lazy to me, by Anonymous Coward · · Score: 1

    I don't quite understand why would anyone have a solution with 10k (yes, thousand) projects. To me it seems that the project is structured incorrectly.

  7. 64-bit designer mode by Anonymous Coward · · Score: 5, Informative

    The real problem is that the fancy built-in designers, such as the WPF designer, only work with 32-bit components in 32-bit Visual Studio. When someone writes a component that is 64-bit, because it references a DLL that in-turn references, say, a 64-bit Oracle driver, which is part of code that we don't have control over. Now the designer won't load and shows a cryptic error message.

    1. Re: 64-bit designer mode by Anonymous Coward · · Score: 2, Interesting

      But there's no reason they couldn't handle that the way lots of us do. If you need to load 32 bit modules in a 64 bit program you just launch a 32 bit host process and reparent the UI onto the window handle of your main process.

      That would be really useful anyway, because those controls are where there worst memory leaks in studio can be found. Putting them into external processes makes it easier to throw them out and free memory.

    2. Re: 64-bit designer mode by Malc · · Score: 1

      The cost of that comes down to the size of then API and how easy it is to marshal it for IPC.

  8. Subject of Comment by Anonymous Coward · · Score: 1

    I was waiting for this. Not disappointed.

    Thank you.

  9. visual studio by Anonymous Coward · · Score: 5, Insightful

    I have a quad core 3.5Ghz with 32GB of RAM, VS2015 installed on an SSD. It takes over 15 seconds to get to a working state. After the last update (2), then the Update patch, it now pops up some idiotic error about scc something-or-other every time it starts, and every time I open a project. An update for this POS software takes at least 15 minutes -- with far and away most of the time spent sitting at 99% complete with the status message: "Visual Studio is configuring itself -- this might take a while."

    Yeah no shit it might take a while.

    In summary Visual Studio has become one of the worst programs I use. It is horrifically bad in all aspects: Hard to use, impossible to navigate, useless documentation.

    When I wander over to the C++ forums on reddit I frequently see their runtime library/compiler guy -- I think his name is STL, sheepishly saying what an antiquated POS their C++ compiler is. That doesn't give me warm fuzzy feelings either.

    It's all just more nails in the coffin as far as I'm concerned. I rarely develop for Windows anymore and when I have to it's because I'm forced to. The entire Windows platform is a complete disaster from a developer's point of view. All the years of MSDN trying to sell whatever the current darling language, what's-old-is-new-again (C++ is back, did you notice?), terrible, TERRIBLE API design, and just general CRUFT (did I mention that COM is back too..?) have finally caught up to them.

    1. Re:visual studio by yuriklastalov · · Score: 1

      I don't think COM ever went anywhere. All the fancy languages and tools are layers on top of COM, trying desperately to polish the turd. Well all that turd polish builds up, and no matter how hard they try it's still just shit on the inside.

    2. Re:visual studio by Dutch+Gun · · Score: 5, Insightful

      I've been using VS 2015 since it was released, and using VS professionally for close to 20 years. The quality of VS and the compiler has waxed and waned over the years, but I'm pretty happy with the way the current version is looking, given the general responsiveness, functionality, and stability of the IDE and the C++ compiler itself. It has pretty close to full C++ 14 compliance at this point - and certainly has the features *I* care about. If you're seeing such poor performance and odd error messages, there's something strange going on, as that's not a typical experience. My machine is rather *less* powerful than yours, and I just counted - it takes six second to get VS up and running for me.

      Stephan T Lavavej is the maintainer you're thinking of, and he maintains the standard C++ library, so it's pretty awesome his initials are STL. He's one of the few MS devs that interacts regularly with developers and speaks candidly about MS's development, and has given some pretty interesting talks. True, the MS C++ compiler is quite old, but they've been modernizing it in light of C++'s renewed interest and features, with pretty decent results (if slower than many wish, probably including STL). GCC is also quite old, if you recall, but software can be updated. Clang is the only "new" C++ compiler in widespread use I'm aware of, so it obviously benefits from a more modern implementation, having lessons learned applied during initial development.

      And COM never really went away (very few things in Windows do), but it's claim to fame was interprocess-communication and a language-independent execution model. New libraries have superseded the former, and .NET has largely replaced the latter. I'm not sure what constitutes "is back", but I've not heard anyone talking about it, and certainly nothing *new*. Maybe you're just hearing more about what's always been there since natively compiled code is making something of a minor comeback, with interpreted code like .NET never really having met promised performance expectations, even when JIT-compiled.

      As for 64-bit Visual Studio, it's strange that they're not looking more seriously at this, but my guess is they ran into some severe technical hurdles in early efforts to port it, so are downplaying the importance. I mean, who doesn't develop on 64-bit machines at this point? I'll bet they're working on it internally, but are not ready to commit to anything.

      --
      Irony: Agile development has too much intertia to be abandoned now.
    3. Re:visual studio by Elledan · · Score: 1

      I have been doing C/C++ development primarily on Linux/QNX (embedded) for a while, but recently figured that I'd try this new-fangled VS 2015 (Community Edition) after having used VS 2005 and 2010 (Pro) in the past with no complaints.

      Even though I am using a modern, high-end system with Windows 7 Ultimate, I didn't get VS 2015 to even install. It'd just flake out with a cryptic error message about a problem with a module or something, then after that I couldn't get the installer to get past that point, despite multiple reboots, nuking any trace of VS from the registry, etc.

      I also tried to install the stand-alone MSVC toolchain (why was it removed from the SDKs anyway?!) using the Beta installer, but that one presented its own nightmare with having to tweak the entire system so that tools and headers were even found. Definitely no GCC sysroot-like ease of use.
      In the end I just went back to my preferred workflow on Windows: writing code in Notepad++ and using Makefiles to compile my projects using MinGW (5.x, currently) in MSYS2 shell. Simple, easy and powerful.

      As far as I'm concerned there's no use case for Visual Studio or MSVC any more. GCC/MinGW, LLVM/Clang have passed it by years ago (especially with C support) and as an IDE it's passed the bloatware point multiple times. If one thinks they need Visual Studio/MSVC, they badly need to refactor their projects and their way of thinking.

      --
      Site & blog: http://www.mayaposch.com
    4. Re:visual studio by Fragnet · · Score: 1

      The problem here is you, not the tools. The tools install fine for me and absolutely everybody at work.

    5. Re:visual studio by AmiMoJo · · Score: 1

      The GP probably has a load of plugins installed. In my experience they are the cause of most slow loading and random error issues. Like you, VS loads in a few seconds for me, unless I have heavy plugins enabled.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    6. Re:visual studio by F.Ultra · · Score: 1

      So Microsoft have now reached a level where the whole Visual Studio suite is 100% bug free so any problems what so ever must always lie with the user. Never thought we would see that day coming ever.

    7. Re:visual studio by Dutch+Gun · · Score: 1

      Yep. I try to stay as plugin free as possible for exactly that reason. You definitely pay a price for that additional convenience. Or perhaps he's working with solutions with *lots* of projects, in which VS tends to bog down quite a bit. I previously worked for a company that seemed to have a fetish for creating lots and lots of tiny projects, and it tended to slow down the IDE quite a bit.

      It's also possible he's working on a project that tends to use some edge-case features that most devs don't use, which is causing issues for him. It's always a bit dangerous to veer from more established practices and patterns for exactly that reason, as you're more likely to hit bugs or performance issues that most other people don't see. Visual Studio is an old and massively complex piece of software, so there are always going to be some dark corners that cause problems if you veer into them. I'm not excusing it - just pointing that out as a reality.

      --
      Irony: Agile development has too much intertia to be abandoned now.
    8. Re:visual studio by ConceptJunkie · · Score: 1

      I've had some issues with VS2015, but nothing like what you've experienced. Have you tried completely uninstalling and reinstalling? I had to do that a couple times.

      I also have not heard that their compiler is antiquated. It seems to pretty up-to-date on the implementation of standards. I do recall that MS had the first compiler to be fully C++03 compliant, although, they've been more behind the curve with the newer standards. Now, the internal code might be antiquated, but it seems pretty solid to me as a user.

      And trust me, I am no fan of Microsoft.

      --
      You are in a maze of twisty little passages, all alike.
    9. Re:visual studio by ConceptJunkie · · Score: 1

      COM never fulfilled its promise from, what was it, almost 20 years ago.

      I was also surprised to see that VS2015 wasn't a 64-bit app. I guess like Flash, the codebase is too archaic and undisciplined to port.

      --
      You are in a maze of twisty little passages, all alike.
    10. Re:visual studio by ConceptJunkie · · Score: 1

      It's unfair to blame the user without knowing more detail. The only thing you can say for sure is that you and the people you know didn't have any problems.

      I installed VS2015 Community with little problem, but the compiler crashed on a lot of the code I was trying to build, code that was old, but built and worked fine with an older version of VS. I was only using Community until I received the license for Professional, at which point all the compiler crashes went away. Although their dev tools tend to be pretty good, Microsoft doesn't exactly have a good track record with stability, and I have a lot of doubt that whatever the GP was experiencing was necessarily due to user error.

      --
      You are in a maze of twisty little passages, all alike.
    11. Re:visual studio by PmanAce · · Score: 1

      That's funny, my VS2015 acts like a champ (no errors on start) and behaves the opposite of yours, with many plugins installed and used. You can navigate all you want without using the mouse, even alt-tab like between files and such, you just need to take 5 minutes to learn the shortcuts. Maybe you are holding it wrong?

      --
      Tired of my customary (Score:1)
    12. Re: visual studio by cyber-vandal · · Score: 1

      I had a lot of trouble installing VS2015 on one machine whereas it installed trouble free on another. They were very similar VMs so I don't know why one took several days of error messages and fighting to get it to install and the other went ahead seamlessly.

    13. Re:visual studio by Fragnet · · Score: 1

      There are bugs for sure, as there are in any big software project. That's what Microsoft Connect is for.

    14. Re:visual studio by Dutch+Gun · · Score: 1

      If you want to eschew .NET completely, then there aren't many, as far as I know, except for some pretty low-level primitives. You've got sockets, pipes, and file mapping to shared memory buffers (that's what I ended up using, as it seemed fastest and most straightforward). You then have to write some sort of protocol on top of that. I had a variant class that could serialize itself to and from memory buffers, so that formed the basis of my protocol.

      If you are okay with writing a C#/.NET interop bridge to your native code, and don't need to support legacy systems then you can use the new WCF APIs.

      --
      Irony: Agile development has too much intertia to be abandoned now.
    15. Re:visual studio by F.Ultra · · Score: 1

      So how can you be so sure that the problems that Elledan is experiencing with VS2015 is his fault and not that of the product in question?

    16. Re:visual studio by david_thornley · · Score: 1

      VC++ standards conformance has been lagging considerably behind g++ and clang. I'm not aware of anything in C++11 that isn't in VS2015, but that isn't saying much. They may have all of C++14 in there; I haven't checked.

      As far as C++03 conformance goes, C++03 had the "export" facility for templates, which was completely removed in the 2011 standard. Only the Comeau compiler handled that, which is one reason it was removed.

      --
      "When you have eliminated the unacceptable, whatever is left, however improbable, must be the truthiness" - Holmes
  10. x64 considered harmful? by Man+On+Pink+Corner · · Score: 1

    They cited a December MSDN post that had argued "smaller is faster," and that no performance benefits would be realized for users whose code and data already fit into a 32-bit address space, while most other issues could be addressed with better data design.

    Anyone who actually believes this has no business working on development tools.

    1. Re:x64 considered harmful? by west · · Score: 1

      Moving to 64-bit will massively reduce stability for years (given the thousands of pieces of 32-bit code they'll need to be working with for generations). Unless going to 64-bit gives me some big feature win that I don't know about, I'll vastly prefer that MS put the resources that it invests into VS into something that will *increase* stability.

      I am certain that there are a few folk who would benefit from this so much it would make up for the 32-64 bit hash that VS would turn into for a release or two, but I'm not among them, and I'm not willing to sacrifice my working environment *and* the developments that are foregone so the development can concentrate on 64 bit.

      And honestly, I suspect that for many, 64-bit is a checkmark feature, and is translated in their head to "fewer crashes" when in all likelihood the opposite it is true for quite some time.

      Of course, if there are some features that 64-bit code would benefit (and I'm running a million lines of code on a 120 project solution with VS not breaking a sweat), I would be genuinely interested to find out what they are.

    2. Re:x64 considered harmful? by Man+On+Pink+Corner · · Score: 4, Interesting

      With a very few specific possible exceptions, x64 code is indisputably faster than x86. The reduction in register pressure buys you a speed increase of about 10% in my experience.

      The code is somewhat larger, of course, but instruction caches have also grown in size since this was observed to be an issue.

      Meanwhile, recompiling correctly-written C++ code to target x64 amounts to changing a couple of flags in the build script, so laziness is no real excuse.

    3. Re:x64 considered harmful? by west · · Score: 1

      Do you find VS CPU-bound in any meaningful way? I've always found it was I/O that cost.

      As for converting it to 64-bit, I would be *massively* surprised if updating the code didn't involve messing with hundreds, if not thousands of components, many of which haven't been touched in decades. There are amazing amounts of legacy in there that are absolutely essential to some customer somewhere, and *that* is where I figure you could spend man-decades of development, reduce stability and get almost nothing in return except that satisfaction of knowing you no longer need a copy of, say, Watcom C to do a full code recompile.

      Maybe VS is all beautifully clean and can be recompiled at will on the latest compiler, but I suspect reality is ugly.

    4. Re:x64 considered harmful? by Fragnet · · Score: 1

      All your pointers are twice as large but your cache didn't increase in size. I benchmarked my math library at 32 and 64 bit and the speed difference was statistically insignificant.

    5. Re:x64 considered harmful? by Man+On+Pink+Corner · · Score: 2

      Honestly, I live at the CLI and only use the IDE when I need to debug something, so I couldn't say if it would actually be worthwhile to recompile it for x64 or not. It's not true that there is no performance benefit in doing so, but I agree that it's far from clear that anyone would notice or care.

      The compiler itself (cl.exe) is already built as an x64 executable according to dumpbin, even though it still resides in the legacy c:\program files (x86) folder. That's where the performance really matters.

    6. Re:x64 considered harmful? by Man+On+Pink+Corner · · Score: 1

      Yeah, the benefits (or lack thereof) will depend on register usage to a large extent.

      A well-optimized math library is probably using SIMD operations that work the same in either 32-bit or 64-bit code, so even small penalties in code and pointer size may erase any performance gains when you move to x64. But most applications don't spend most of their time doing vectorized math, and I imagine that includes VS.

    7. Re: x64 considered harmful? by reanjr · · Score: 1

      Plugins are not a valid reason to maintain an antiquated platform. Look at Firefox. They thought their plugins were all so fucking awesome, they failed to get their product updated for Windows until just last year. And look at how Chrome has eaten them alive.

  11. Steam client is doing the same by jwymanm · · Score: 2

    No 64 bit version "because not needed" on Linux meanwhile you have to install 64 multilib packages and compile from source many of those on ArchLinux just to run Steam. Come on guys, you can argue that staying 32 bit is smaller but then it actually becomes larger because you have to install tons more 32bit libraries to support legacy on our all shiny 64 bit systems. In effect it is smaller and leaner to go all 64 bit.

    1. Re: Steam client is doing the same by Anonymous Coward · · Score: 1

      Even if there was a 64 bit steam client, and you removed all of your 32 bit compatibility libraries, why would you even bother to install steam?
      99% of your game library that is 32 bit only wouldn't run.

    2. Re:Steam client is doing the same by jwymanm · · Score: 1

      It may look apples to oranges to you but it is one more inconvenience/hurdle and the 32 bit audio libraries system in Linux give a lot of cause for concern. I don't understand the backlash against going all 64-bit which is what I was pointing out. Different inconveniences yes but the argument is the same.. "not needed, fix it yourself." Linux needs fewer reasons for people to not game on it, not more. Maintaining separate libraries, build chains, etc causes not just overhead but also security issues, more package management, more integration problems, and just introduces more bugs. If Steam or Visual Studio were opensource they would already be 64-bit no questions asked - it doesn't matter the different concerns.

    3. Re: Steam client is doing the same by jwymanm · · Score: 2, Informative

      http://store.steampowered.com/... Less than 7-8% total using 32-bit systems to run Steam. Games need to catch up to 64-bit land. It is a good/valid point that you need the libraries to run the games but that is slightly different than having to install them just to start Steam. It's also arguing towards the negative not the positive.. Mobile is going 64 bit also and I doubt it will remain very 32 bit compatible.

    4. Re: Steam client is doing the same by ADRA · · Score: 1

      Well... as much as I poo poo 32-bit ancestors, there are certainly some areas where you don't -need- to go 64. For an end-user application, your only necessity to upgrade is for > 2/3 GB ram limits. You are sacraficing some nominal level of performance doing so. For something like an IDE, I certainly see uses over that limit. Other programs, less so.

      --
      Bye!
  12. 64-bit Windows by Yurka · · Score: 3, Insightful

    is and has always been a disgusting kludge on top of the 32-bit (that they finally managed to get in decent shape). Faced with the necessity to build something just as ugly for another product, I'm not sure I would have reacted differently than they did.

    Oh, and the bit about valuing the feedback is priceless, of course.

    --
    I can assure you, the best way to get rid of dragons is to have one of your own.
  13. This'll change... by RyanFenton · · Score: 2, Insightful

    Microsoft makes very good developer tools - but the decision on how to make them, unfortunately, has constantly been shaped by a LONG series of internal political decisions on what products they want to be promoting at that very second.

    DirectX, Crystal Reports, 'Modern' (metro to everyone else), the dot Net framework, phones, MS-specific java,, etc., etc... Some of them ended up good ideas, some of them were just what they wanted to push to capture some market. It's a big part of why it's actually something of a bad idea to just read Microsoft documentation on their own products - they'll tend to color every piece of introductory material in light of what they want to promote at that moment, what they want YOU to do for THEM.

    They also tend to stall on some technologies that they feel will shift resources in a way that won't help them at that very moment. Shifting to 64-bit developer tools might be a bit expensive to test binary interoperability with everything - and Microsoft also hasn't found a very good consistent method of hosting 32-bit DLLs into 64-bit executables that isn't just some piped communication between different process spaces. I can understand their reluctance to commit resources into something they're not sure they can make work seamlessly.

    But really, I've seen a lot of my Visual Studio exe memory usage stats floating up to the large-address-aware 32-bit limit. Even if it doesn't meet 100% compatibility/interoperability, I think it would still be a good idea to start an experimental option of a set of 64-bit build environments. Perhaps with embedded 32-bit memory spaces that you can host stuff in without loading errors, if at all possible - but 64-bit-only restrictions if that's not possible would also be acceptable.

    Ryan Fenton

    1. Re:This'll change... by Anonymous Coward · · Score: 1

      "Microsoft makes very good developer tools"....

      And then you list the reasons they are NOT very good.

    2. Re:This'll change... by Anonymous Coward · · Score: 1

      Fuck me, it's not about accessing >4GB RAM, it's about utilising the fucking extra registers in modern CPUs; which in turn give massive processing boosts. Jesus fucking christ, FUUUUCK ME! Anyone that cannot see that should fuck off back to certificate camp and get their money back.

    3. Re:This'll change... by superwiz · · Score: 2

      They don't want to enable development of binaries which are large. They may want to force developers to break projects into smaller modules. MSVC will produce 64-bit executable and DLL's. So it's not like you can't use more space than that during the execution. But they want to force the design to be more modularized. So people would not do things like embedd images in their executables as text-encoded binaries, but would rather have resource files and load them at run time. The runtime of any one executable can easily exceed the 32bit binary boundary after all DLL's and resources are loaded, they just don't want people to do things like write 100MB source files and then force the compiler/editor to parse through that to generate a monolithic 10GB binary. The MSVS executable is what's 32-bits... not the runtimes that it generates.

      --
      Any guest worker system is indistinguishable from indentured servitude.
  14. 64bit version?? by zakeria · · Score: 1

    Sure that would mean using more memory?

    1. Re:64bit version?? by DaHat · · Score: 1

      Correct. Even more memory for the same project.

    2. Re:64bit version?? by hey! · · Score: 2

      Sure that would mean using more memory?

      Of course. But it also means being able to employ more memory.

      The math works like this, roughly: going to 64 bits can increase the memory needed by a factor of up to 2^1. At the same time it expands your memory space by 2^32. So that project that the IDE was thrashing on because the projected needed 5 GB of RAM may need 10 GB o RAM after the IDE is migrated to 64 bit. But that's fine because a basic developer's machine has 16GB of RAM these days. The problem was that you couldn't make use of it.

      I'm old enough to have gone through this three times: once going from eight to sixteen bit; next from sixteen to thirty two and then finally thirty-two to sixty-four. I think it's pretty safe to say that I won't ever have to go through another power-of-two word size shift though:) .

      --
      Post may contain irony: discontinue use if experiencing mood swings, nausea or elevated blood pressure.
    3. Re:64bit version?? by zakeria · · Score: 1

      We know how memory works, but the IDE has nothing to do with the running program when executed! or am I getting the wrong end of the stick? Do programs made with the IDE not produce 64bit code or something??

    4. Re:64bit version?? by Desler · · Score: 1

      We know how memory works, but the IDE has nothing to do with the running program when executed!

      This entire story is about the IDE itself. Reading comprehension skills. Do you have them?

    5. Re:64bit version?? by Yaztromo · · Score: 2

      Sure that would mean using more memory?

      Yes, but how much depends on the application. I haven't found a good scholarly reference on average memory use increase for 64 bit applications, however some rough worst-case scenarios I've found see to indicate a 20% memory increase is considered to be at the high end. Most applications will see much less of an increase.

      On the flip side, 64 applications get a lot more registers available to them in x86_64 mode -- eight additional General Purpose Registers. Thus, a compiler can better optimize applications to squeeze more performance out of the processor, by loading more data into registers (or potentially by not having to swap data in and out of registers as frequently as in 32 bit mode).

      Most consider this a good trade off. Extra RAM is easy to come by when compared to extra processing speed.

      Yaz

    6. Re:64bit version?? by lgw · · Score: 1

      I'm old enough to have gone through this three times: once going from eight to sixteen bit; next from sixteen to thirty two and then finally thirty-two to sixty-four. I think it's pretty safe to say that I won't ever have to go through another power-of-two word size shift though:)

      Sort of. The current "64-bit" platform only supports 48-bit addressing. (Deja-vu, since I learned on 32-nit machines that only supported 24-bit addressing). There are servers now with 2 TB of memory - 41 bits. I suspect we'll see 512 TB servers in my lifetime, especially if SSDs get so fast that memory-mapped files become the common architecture.

      Will it be a non-trivial port to move to real 64-bit addressing? I doubt it - I'm sure there's already lots of code that assumes pointers are really only 48 bits for one efficiency optimization or another.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    7. Re:64bit version?? by zakeria · · Score: 1

      clearly you don't cause you seem not to be able to follow the line of conversation!

    8. Re:64bit version?? by Agripa · · Score: 1

      This entire story is about the IDE itself. Reading comprehension skills. Do you have them?

      Grammar skills: do you have them?

  15. The good news is... by Gravis+Zero · · Score: 1, Insightful

    GCC and LLVM have full 64-bit capabilities and are free.

    --
    Anons need not reply. Questions end with a question mark.
    1. Re:The good news is... by DaHat · · Score: 1

      You must not have read even the summary.

      There not being native 64-bit version of Visual Studio is the beef... the backend build system (MSBuild) has long supported running native 64-bit toolchains.

    2. Re:The good news is... by Desler · · Score: 2

      GCC and LLVM are not IDEs. So your comment actually has fuck-all to do with the story.

    3. Re:The good news is... by Fragnet · · Score: 1

      You're not comparing like with like.

    4. Re:The good news is... by AmiMoJo · · Score: 1

      Visual Studio supports them both, but that's not the problem. It's the IDE itself that is running out of memory. People have massive projects with many sub projects, databases, GUI designs, web layout editors and previews...

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    5. Re:The good news is... by Desler · · Score: 1

      GCC and LLVM are not IDEs. What about that is so hard for you to grasp?

  16. Re:Didn't even realize until the other day by Opportunist · · Score: 5, Funny

    Damn right, any project this big should be done with professional tools!

    Glad MS finally admits it.

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  17. Re:WTF- this does not mean no 64-bit development by CSMoran · · Score: 1, Troll

    Visual Studio remaining a 32-bit application means NOTHING. Unless a SINGLE source file exceeds the 4GB limit, no issue will occur.

    Let me get this straight. Are you honestly suggesting that if I try to compile or refactor a monstrosity that a 3.9GB C++ file worth of nested template forests would be, this 32-bit version is going to take it and not fall over or grind to death swapping? I'm not a VS user, and will be happy to stand corrected (and amazed), this is an honest question.

    And, of course, the compilers that come with VS have supported the development of true 64-bit applications forever.

    We know. Restating the unrelated obvious and tagging it 'obvious' does not your point make.

    --
    Every end has half a stick.
  18. Jetbrains by Anonymous Coward · · Score: 1

    Once you use IntelliJ and their other IDE's for C/C++ you won't ever like Visual Studio again.

    JetBrains has great IDE's.

    1. Re:Jetbrains by Tony+Isaac · · Score: 2

      Competition is a good thing. Once they come out with an IDE for .NET (Project Rider), Microsoft will finally have some real competition in the IDE space. THAT might well be what Microsoft need to help it decide to put in the effort to make a 64-bit version.

  19. Couldn't the compiler... by kungfuj35u5 · · Score: 1

    ultimately benefit from being 64 bit as it allows for things like better vectorized string comparisons? I mean if anything it'd be a measurable improvement in speed. You get more GPRs and larger/wider vector registers. And it wouldn't shock me if a templated piece of c++ managed to make the compiler, optimizer, preprocessor and linker manage to consume a fair bit of that 32 bit address space for a given single compile process.

    1. Re:Couldn't the compiler... by superwiz · · Score: 1

      ultimately benefit from being 64 bit as it allows for things like better vectorized string comparisons?

      At compile time? The MSVC binary itself is what stays 32-bit. It will produce 64 binaries without any issues.

      --
      Any guest worker system is indistinguishable from indentured servitude.
    2. Re:Couldn't the compiler... by Lord+Crc · · Score: 1

      The MSVC binary itself is what stays 32-bit.

      If you're referring to the actual compiler (cl.exe), there's a 32bit bit version, a 32bit cross-compiler (outputs 64bit binaries), and a native 64bit version.

      The article is talking about the IDE itself, not the build tools. It will use the 64bit version of the compiler for building 64bit applications if your OS is 64bit.

    3. Re:Couldn't the compiler... by kungfuj35u5 · · Score: 1

      I mean the compiler binary itself, though after reading some other comments it appears that the compiler toolchain itself may be compromised of 64 bit binaries, anyway.

  20. Re:WTF- this does not mean no 64-bit development by Anonymous Coward · · Score: 1

    VS does not give even a tiny crap about how big your files are. It's a text editor, file manager, build controller, source code repository client, and a million other ancillary dev tools all rolled into one. It is not a compiler.

    Visual studio is "devenv.exe", and is 32-bit only.

    The compilers are "cl.exe" (C++), "csc.exe" (C#), "vbc.exe" (Visual Basic), and "fsc.exe" (F#). All of these are 64-bit.

    So unless your MSBuild script (basically a makefile that works with all of Microsoft's compilers) is larger than 4GB, you're just fine working with devenv.exe. If your MSBuild script gets larger than that, you're doing it wrong.

  21. The problem is debug, not build by Sarusa · · Score: 5, Informative

    The big problem is debugging.

    We've got a 64-bit app which VS will happily build and the app runs fine. But if we want to debug it live VS chokes, falls over and dies, out of memory once the app uses more than 3 GB.

    It's legit using > 4GB because it's heavy image processing of large color images at high dpi and the machines are specced for it. Obviously, we could page stuff in and out of memory ourselves, but that rather defeats the purpose of 64-bit OS and would slow everything down (speed is paramount here, burning memory to get it was a primary design decision) - and the program runs fine when not debugging in VS.

    1. Re:The problem is debug, not build by lgw · · Score: 4, Informative

      The debugger is msvsmon.exe. It has a 64-bit version, which runs automatically when you configure the project to be 64-bit. Visual studio just wraps a handy GUI around that. Something's wrong in your project settings if you can't debug a running app with lots of memory.

      The only problem I've ever had with large source trees is that Intellisense shits itself beyond some point - but I somehow doubt it's (only) a memory issue.

      --
      Socialism: a lie told by totalitarians and believed by fools.
    2. Re:The problem is debug, not build by Sarusa · · Score: 2

      There is definitely Something Wrong. And don't blame the project settings - that's the lazy way to go, since VS's project settings are so ridiculously convoluted and arcane compared to a makefile. You could blame any VS bug on 'your project settings must be wrong'. But we have recreated the entire solution from scratch trying to stop this from happening. Did we do wrong by not sacrificing a f@#$ing goat?

      It runs out of memory when debugging the 64-bit app when any single object is larger than 3GB. If you've got a Brillant Paula Bean solution for this, DO TELL.

    3. Re:The problem is debug, not build by Sarusa · · Score: 1

      It might be worth looking into Mono - we haven't looked for a while. At the time, C# debugging was pretty primitive but now the soft debugger might be usable- or at least more usable!

    4. Re:The problem is debug, not build by Sarusa · · Score: 1

      VS is shitting the bed at 3GB. That sure seems like a 64-bit issue, but unless you've got anything useful to say, yeah, don't waste your time.

    5. Re:The problem is debug, not build by Sarusa · · Score: 1

      I would not be surprised in the least if VS had other issues that prevented it from working with 64-bit memory allocations.

      But whatever the cause, the effect is the same - we can't debug 64-bit apps with 64-bit memory allocations. It's effectively stuck at 32 bit.

    6. Re:The problem is debug, not build by Sarusa · · Score: 1

      Thank you, but... it doesn't work. As soon as the app allocates more than 3GB VS falls over dead, even with all the handwavey '64-bit'.

    7. Re:The problem is debug, not build by Sarusa · · Score: 1

      And again (my apologies for the double post), the compiled app itself runs fine using 24GB of memory. It's obviously 64-bit and happy.

      The only problem is when you try to debug it in VS, and then VS dies with an out of memory error.

  22. Re: ... Because our Compilers suck heavily by cyber-vandal · · Score: 1

    What the fuck are you taking about.

  23. Re:Nobody by yuriklastalov · · Score: 1

    I, for one, welcome our 640Kb address space overlords!

  24. Re: We told you so, suckers by cyber-vandal · · Score: 1

    .NET is still going strong after 14 years. A new cross platform version of it is at RC2. People are desperate for .NET to die but it doesn't seem to be going anywhere.

  25. Well of COURSE by cfalcon · · Score: 1

    4194304k ought to be enough for anyone

    1. Re:Well of COURSE by ADRA · · Score: 1

      Your joke would've been better if accurate. Only 2GB of 32 bit space is application addressible. So you'd need 2 GB of system allocated address space for it to make sense.

      --
      Bye!
    2. Re:Well of COURSE by cfalcon · · Score: 1, Funny

      I can't be bothered to keep track of EVERYTHING Microsoft does wrong, I am just one man!

    3. Re:Well of COURSE by superwiz · · Score: 1

      If your source code is larger than that, you may wanna break it up into smaller modules. Just saying. MSVC will produce 64-bit binaries. It just isn't itself a 64-bit binary.

      --
      Any guest worker system is indistinguishable from indentured servitude.
    4. Re:Well of COURSE by Anonymous Coward · · Score: 1

      Linux, FreeBSD, and Solaris do the same thing. Welcome to the world of protected mode and 1/2 of the virtual address space in each context being reserved for the kernel. Only 30 year old information.

  26. Why do you even need VS? by melted · · Score: 4, Informative

    I worked at MS in early 00s. We didn't use VS to write code. We used a stripped down version of VS or even WinDbg to debug. Nowadays I use Vim and YouCompleteMe (on Linux) and it just works. Zero dollars, easy to set up.

    1. Re:Why do you even need VS? by BlackPignouf · · Score: 5, Funny

      Nowadays I use Vim

      I've also been using Vim since the early 00s.
      I'm stuck, and still didn't figure out how to quit the editor.

    2. Re:Why do you even need VS? by whoever57 · · Score: 1

      I'm stuck, and still didn't figure out how to quit the editor.

      I guess that you don't get much sleep ('ZZ's) at work?

      --
      The real "Libtards" are the Libertarians!
    3. Re:Why do you even need VS? by Tony+Isaac · · Score: 1

      Back in 1996, I used vi to write code. Each week, I would write out some command sequences I wanted to learn, and tape it to the wall behind my monitor. In this way, I got pretty good at using the tool.

      But since then, an amazing thing was invented: the GUI. Why should I have to memorize all those obscure command sequences? Sure, it makes sense to learn shortcuts for frequently-used commands, but not so much for the rarely-used ones.

      Command lines are good for scripting, but they aren't ideal for every-day productivity.

    4. Re:Why do you even need VS? by melted · · Score: 1

      With vim, there's actually a reason for it. Those "obscure" commands are COMPOSABLE: http://stackoverflow.com/quest.... You physically can't be more productive with a GUI. And then there's the fact that I can log in to any server, pull a git repo with my vim config, and voila, I have a pretty serviceable development environment, even if I'm connected through a shitty internet connection from halfway across the globe. Your GUI can't do that.

  27. I have some sympathy... by grahamtriggs · · Score: 2

    The immediate reaction is to say it is silly that they are not offering a 64-bit version.

    But many developers are likely using a number of extensions - which will currently be 32-bit because that's what Visual Studio is, and 64-bit would require all the extensions provide new versions as well.

    It probably wouldn't take a huge effort to offer Visual Studio as both 32-bit and 64-bit versions (just like Office). But a more useful - although much longer - use of engineering effort would be to take the full Visual Studio experience on to the CLR.

  28. Oblig Steve Ballmer by seven+of+five · · Score: 1

    Developers....?

    Developers....?

    Developers....?

  29. Re:Didn't even realize until the other day by Fragnet · · Score: 1

    Spot on. Something isn't right there.

  30. VS Debugger by ChadSmith4920 · · Score: 1

    Changes to 64-bit applications are not allowed. :-(

  31. Oh, .NET isn't going away by localroger · · Score: 1

    Like VS6 too much real work was done with it for it to go away any time soon. But it's now abandonware. MS obviously isn't interested in keeping it up to date any more. All the versions that still work will probably continue to for some time, just as you can still run VS6 apps. (Actually, VS6 apps run better than older .NET apps today, having way fewer dependencies.) But expect things to start breaking, add-ons to stop being supported and working, and expect no help from MS when these things happen. They're on to the next shiny thing. .NET isn't it any more.

    --
    Brackets contain world's first nanosig, highly magnified:[.]
    1. Re:Oh, .NET isn't going away by OhPlz · · Score: 1

      They've opened it up to other platforms. Doesn't seem like they're in a hurry to make it obsolete. It could potentially replace Java, especially if Oracle keeps suing people for using it.

    2. Re:Oh, .NET isn't going away by Anonymous Coward · · Score: 1

      So you're trying to tell me that .Net 4.6 wasn't just released last year? And that they're going to drop support for it soon, even though they've A) announced no such thing, and B) doubled down on it with UWP?

      You, sir, are an idiot. Probably from years of exposure to VB6.

    3. Re:Oh, .NET isn't going away by cyber-vandal · · Score: 2

      If .NET has been abandoned, what's the replacement? Why have they completely rewritten software they're going to abandon. What's this? You really don't know what you're talking about. Ever since Silverlight was abandoned, people like you keep posting this shit about .NET being dead and yet Microsoft keep releasing new versions and making you look like fools.

  32. Microsoft is Dangerously Incompetent by macs4all · · Score: 1

    How ridiculously broken does your overall OS and Application Development design have to be to make the transition from 32 to 64 bit this hard?

    I'm REALLY not Trolling; but OS X went through an entire CPU ARCHITECTURE change (and actually TWO, if you count iOS as an offshoot of OS X, and THREE if you count the "Classic (Blue Box)"/Carbon APIs), PLUS handled 32 to 64 bit transition (some of it happening at the SAME TIME as the PPC to Intel Transition), and almost ALL OS X users noticed NOT A SINGLE THING.

    In fact, with OS X, the ONLY place I have heard of ANY 32 to 64 bit pains were with Audio Unit Plugins. There might be a few others, but it CERTAINLY wasn't front-page news anywhere.

    Can you IMAGINE how wonderfully that all would have gone with Microsoft?

    Oh, and NT is supposedly every bit as CPU-Agnostic as NeXTStep (afterall, there was even a version of Windows NT for PowerPC); so I really don't want to hear anything about how much harder it is with Windows.

    MS has a bunch of THE LAZIEST DEVELOPERS ON THE PLANET.

    1. Re:Microsoft is Dangerously Incompetent by superwiz · · Score: 1

      As I mentioned in the other post, it's 32 bit compiler binary... not a binary only capable of producing 32 bit binaries. MSVC will happily produce 64 bit binaries. This isn't laziness. It actually requires more discipline from their compiler team to fit the compilation process within 32-bit memory space per running compiler process.

      --
      Any guest worker system is indistinguishable from indentured servitude.
    2. Re:Microsoft is Dangerously Incompetent by macs4all · · Score: 1

      As I mentioned in the other post, it's 32 bit compiler binary... not a binary only capable of producing 32 bit binaries. MSVC will happily produce 64 bit binaries. This isn't laziness. It actually requires more discipline from their compiler team to fit the compilation process within 32-bit memory space per running compiler process.

      Ok, then what about all the OTHER 32 to 64 bit pain that is USER-FACING? Separate versions of Apps, separate versions of OSes, FFS.

      Lazy, Lazy, Lazy.

      Oh, and if it's so easy for 32 bit VS to crank out a 64 bit binary, then why, oh, why don't they just do that for VS itself???

      Answer: Because then they would have to MAINTAIN separate 32 and 64 bit Installers, yada yada.

      As I said, OS X solved ALL this YEARS ago. MS copies everything ELSE from OS X, why not that?

    3. Re:Microsoft is Dangerously Incompetent by macs4all · · Score: 1

      I dont normally defend MS, but when your OS is in 95% of all the computers in the world you cant get away with these changes in the way Apple can. When Apple has ATM's running on OS X etc.. I'll give them credit for keeping up to date. Windows' main selling point is its Achilles heel. Backward compatibility always sets MS back.

      Sorry, but the rubric of "backwards compatibility" won't work this time.

      The fact is, when Windows started down the 64 bit path, they COULD have done what Apple did with OS X, but they chose not to. Instead, they drew a big, fat NON-COMPATIBILITY line in the sand between 32 and 64 bit land, and, far too often, made USERS have to do the legwork.

      Apple, OTOH, made the whole thing COMPLETELY SEAMLESS to all but the smallest-subset of users, by clever OS witchery (which I freely admit I do not know for sure how it works, but I assume has something to do with having a 32 bit and 64 bit version or entry point to each API call).

      That has nothing to do with "backward compatibility"; because Apple was able to do its SEAMLESS 32 to 64 bit transition while RETAINING COMPATIBILITY with 32 bit Applications and in most cases, even drivers, as if nothing ever happened.

      No need for "Program Files (x86)", separate 32 and 64 bit Installers and Apps, let alone drivers.

      Sorry, painless "Backward Compatibility" is EXACTLY what OS X accomplished for nearly all users and all applications, and EXACTLY what Windows did NOT give.

      It has a LOT more to do with good OS design than it does with the size of the install base or number and/or breadth of applications.

    4. Re:Microsoft is Dangerously Incompetent by topologist · · Score: 1
      Good points.

      Apple, OTOH, made the whole thing COMPLETELY SEAMLESS to all but the smallest-subset of users, by clever OS witchery (which I freely admit I do not know for sure how it works, but I assume has something to do with having a 32 bit and 64 bit version or entry point to each API call).

      The way the "compatibility mode" kernel that shipped on Mac OS X several years ago works: the kernel is double-mapped into both the low 4G of the address space as well as the upper 128 TB ("negative") region. On a system call, exception or interrupt, the processor branches to the "high" double mapped region, switches to 64-bit mode and executes a small slice of the kernel in 64-bit mode. That slice does some book-keeping and then switches address spaces and modes to execute 32-bit "compatibility" mode IA32 code back in the low 4GiB. With this mechanism, 64-bit programs work without requiring all the 32-bit drivers and the kernel proper to operate entirely in 64-bit mode, which was a significant time-to-market and compatibility advantage. There's a drawback in that performance isn't as good as with a pure 64-bit kernel, but Apple shipped that a few years later.

    5. Re:Microsoft is Dangerously Incompetent by macs4all · · Score: 1

      With this mechanism, 64-bit programs work without requiring all the 32-bit drivers and the kernel proper to operate entirely in 64-bit mode, which was a significant time-to-market and compatibility advantage. There's a drawback in that performance isn't as good as with a pure 64-bit kernel, but Apple shipped that a few years later.

      Thanks for the "props", and for the explanation. It is even cooler than I thought...

  33. that's 64 bit executable... not 64-bit compiler by superwiz · · Score: 1

    I think their argument is that if your project is so large that it needs 64 memory space to parse and generate the binary, then it's too large and should be broken up into smaller modules (dll's, resource files, etc.) The MSVC will definitely produce 64 executables if you configure it to. It's actually more a limitation they put on themselves. Because it means that their running compiler must run as a 32 bit binary. Which requires higher level of discipline from their compiler designers.

    --
    Any guest worker system is indistinguishable from indentured servitude.
    1. Re:that's 64 bit executable... not 64-bit compiler by jonwil · · Score: 1

      Its only the IDE that is 32 bit.
      Visual Studio 2015 ships with a 32-bit compiler that generates 32-bit binaries, a 32-bit compiler that generates 64-bit binaries, a 64-bit compiler that generates 32-bit binaries and a 64-bit compiler that generates 64-bit binaries. (plus both 32-bit and 64-bit compilers that will spit out ARM binaries)

  34. 2003 called by TeknoHog · · Score: 1

    It wants its newfangled CPU architecture back.

    --
    Escher was the first MC and Giger invented the HR department.
  35. It's because VisualStudio has a horrible system by jader3rd · · Score: 1

    The Visual Studio engineering system is horrible. You can tell with how over the years Visual Studio is comprised of so many small iterations. Or a new feature is added, and then never worked on again. If they had a decent engineering system they certainly could afford to do a 32-bit and 64-bit build.

  36. Why is it to hard to compile an IDE for 64 bits? by Lisandro · · Score: 1

    It should involve only minor code changes - if even. Even large software projects seldom require more than a new compiler flag.

    A couple else suggested this, and i tend to agree: they're not doing it because they can't. My guess is that the VS codebase is a mess to begin with.

  37. Re:Why is it to hard to compile an IDE for 64 bits by Tony+Isaac · · Score: 1

    You've clearly never converted a significant amount of legacy code from 32 bits to 64 bits. Strange things happen, and it's not always easy to isolate the cause. My guess is that there are a lot of calls to unmanaged Win32 libraries that would break, not to mention variables that are declared with non-portable sizes, such as Int32 instead of Int.

    Then there is performance. I suspect they aren't joking when they suggest that performance of a 64-bit version would be slow, if for no other reason than that the larger executables would take longer to load.

  38. Re:Why is it to hard to compile an IDE for 64 bits by Lisandro · · Score: 1

    I did, actually. I even migrated legacy VMS code to x86-64 Linux back in the day, a mixture of C++ and Assembler, and it was never particularly hard. A chore, yes. But not hard, and the resulting binaries were no slogs either. Properly written executed 64 bits code can yield significant performance boosts, if only because the register space is twice as big as x86.

    Keep in mind, we're talking about an IDE here. There are plenty of use cases, specially for large projects, that could have developers using more than 4GB of RAM at work.

  39. Re: Eclipse has had 64 bit for years by cyber-vandal · · Score: 1

    PHP lol that's a good one

  40. Actually, come to think of it, that's may be why by melted · · Score: 1

    Actually, come to think of it, that's may be why they aren't implementing 64 bit. Maybe they still don't use it themselves.

  41. the right tool for the right purpose by lucm · · Score: 1

    Notepad++? Meh. I use "echo -n" and write directly to the executable file. That way I don't need makefiles or even "source code", I just put my bash_history in git; when I need to build on Winblow$ I use AutoHotKey and a cygwin shell with a bunch of "arrow up + enter" macros.

    --
    lucm, indeed.
    1. Re:the right tool for the right purpose by Plus1Entropy · · Score: 1

      Wow that's amazing. You should volunteer to do the VS 64bit upgrade for Microsoft for free!

      --
      Only crack the nuts that crack. You don't put the ones that don't crack in the sack.
    2. Re:the right tool for the right purpose by bingoUV · · Score: 1

      If you're good at something, never do it for free.

      --
      Bingo Dictionary - Pragmatist, n. A myopic idealist.
  42. World domination, and then some by lucm · · Score: 1

    If 4,000 represents 0.01%, it means that 40 million people use Visual Studio to code. Yet according to IDC there's about 18.5 million programmers in the world, including hobbyists. This means Microsoft controls roughly 220% of the software development market. I had no idea they were so successful!

    --
    lucm, indeed.
  43. Re:rofl by lucm · · Score: 1

    Use a proper compiler and make system. GCC + make.

    Or let go of antiquated technologies and use the javascript compile and make system. It's called "CTRL-S", although some geeks use ":wq" or "ZZ" on linux.

    --
    lucm, indeed.
  44. de ja vu by ecl · · Score: 1

    32 bits should be enough for everyone

    --

    Cry havoc, and let slip the dogs of war ...
  45. I was once burned... by rbrander · · Score: 1

    ...forever wary.
    I did months of work in, I hope I have the version number right, VB 3. That would be about 1997. VB4 comes out, and my VB3 program just won't load into it; there don't even seem to be conversion tools worth using, easier to start again. My program had served about 70% of its purpose, so we just kept it running a little longer and ditched it entirely.
    But the only proprietary environment I ever again coded in was VBA for Excel, which I correctly surmised they had almost no ability to break with non-compatibility because of the backlash. None of the VB stuff in the nineties was for major corporate applications and it was mostly user-department small apps that were sabotaged. But spreadsheets, man, those often run the business.
    Anyway, my little user-department apps now all in Perl and so forth, are often still running (I'm retired) in their late teens and early 20s. The IT department applications, which did stick with MS all the way, through VB6 and .Net and C#....all had to be rewritten every 4-5 years as MS switched their recommended product for major corporate programming. And everybody had to buy new MS software, but importantly, spend 100X as much re-writing.

    I watched that the whole last 18 years, marvelling that anybody would have their development environment depend on a corporation whose interests are SO divorced from theirs that they'd inflict a million-dollar rewrite on them just to sell $10,000 worth of software.

  46. What I don't get by wwphx · · Score: 1

    And I freely admit that I don't track things like CPU specs any more, is why Windows is still 32 bit? Are modern CPUs still coming in 32 bit? I have no problem slapping 16 gig or more of RAM in any of my Macs and they just say Cool! Why do we have to buy a 64 bit version of Windows to get more than 4 gig of RAM in a box?

    --
    When you sympathize with stupidity, you start thinking like an idiot.
  47. Nobody thought of it? Or did but thought it dumb? by eric_harris_76 · · Score: 1

    640K should be enough for anybody.

    --
    There's no time like the present. Well, the past used to be.
  48. Type conversions by fyngyrz · · Score: 1

    All program languages allow nonsensical constructs. 0 + 0 won't generate an error in any language I am aware of (not to say none of them, just thirty or so.) Doing something twice, like a=0; a=0; won't generate an error, etc. It's not up to the language to catch you when you're stupid (at least, it shouldn't be... every attempt at that I have run into has turned into some kind of annoyance) it's up to you to not do stupid things.

    c's automatic type conversions are generally useful when they are used with a knowledge of what is going on. When you want something else to happen, you can use explicit casts. When even that won't do it, there are always unions - you can do damn near anything you can imagine with a union. And if *that* won't do it, then just start copying raw memory around. :)

    The point being, what you want to do should be available for you to do, and not constrained by the idea that someone with low skills might get in there and do something that is in some sense functionally wrong or unexpected -- because if it is unexpected, then that's a reflection on a lack of understanding the language. Not on the language (unless, of course, it's a bug in the compiler / interpreter / parser, etc.)

    --
    I've fallen off your lawn, and I can't get up.
  49. Not a footgun. A railgun. by fyngyrz · · Score: 1

    Also, it isn't that c is a footgun; it's that c is a railgun, so you definitely shouldn't point it at your foot.

    If you're the kind of programmer that aims at your foot, then use a language that keeps its "muzzle" pointed away from you until you go through the equivalent of a weapons safety course for the big guns. Otherwise.... yup, no feet. :)

    --
    I've fallen off your lawn, and I can't get up.
  50. Come over to the Mac by RogueWarrior65 · · Score: 1

    We've got 64-bits... and cookies.

  51. VS is just a shell by fluffynuts · · Score: 1

    Basically all functionality comes from extensions (even the 'built-in' functionality). And extensions *can* be written as 64-bit (https://blogs.msdn.microsoft.com/ricom/2016/01/04/64-bit-visual-studio-the-pro-64-argument/). So what's the big deal, fellas? The built-in extensions don't need the extra address space -- it's normally costly (but often helpful) extensions like R# that do. Even in a solution with > 100 projects, I wasn't even pushing a gig.

    This is much ado about nuffin.

  52. Re:Remember how long Excel sticked to max 64k rows by stoicio · · Score: 1

    There are people in my office that try to use Excel as a relational database.

    There are days when I know Excel is there. I just can't go to work. Then I day dream of launching dead, bloated, stinking, plague infected cows, into the Microsoft campus, using a trebuche. Each with an office 365 licence for Excel glued to their silken, bovine, fur......good times......

    There should be a dialog or something that pops up each time Excel opens that says, "This program is for counting. It is a violation of the terms of service to use this application as a database.". Not that anyone reads the shrink wrap.....I'm just bitter now....

    The Holsteins outside look nervous. I wonder what they are sensing......storm maybe.... :|

  53. Firefox Too Big To Link On 32-bit Windows by tepples · · Score: 1

    Seriously, if your project is running out of memory while building then maybe the problem is with the project.

    That ship sailed in December 2011, when the Firefox web browser became too large to build with profile-guided whole-program optimization without exceeding 3 GB. See Firefox Too Big To Link On 32-bit Windows.

    1. Re:Firefox Too Big To Link On 32-bit Windows by Darinbob · · Score: 1

      That's the linker, it's external to the build process, visual studio is a wrapper around separate tools. I'm not sure if Mozilla uses visual studio (probably not as the build should be portable). But as a project manager that deals with calling out to external tools you'd still need a pretty damn big project before you're going to hit 32-bit memory limitations. So just make the linker 64-bit. If you run it on a 64-bit system you've still got closer to 4gb ram to use anyway.

  54. Here we go again by Apostalypse · · Score: 1

    A unnamed spokesman said 640k should be enough for anybody.

  55. Jaguar is 64-bit DO THE MATH by tepples · · Score: 1

    Games need to catch up to 64-bit land.

    I thought they already had, first with the Atari Jaguar, then with the Nintendo 64, and finally with the AMD Jaguar processor in the PlayStation 4 and Xbox One consoles.

  56. They learned their lesson from MS Office by mileshigh · · Score: 1

    The 64-bit version of Office isn't exactly a resounding success. The Office install program even strongly encourages you to use the 32-bit version unless you have a compelling reason to install the 64-bitter. Memory bloat is an issue, but the biggie is compatibility with add-ins: a lot of them are NOT 64-bit ready, including some of Microsoft's own. The 64-bitter doesn't feel any more responsive and starts up slower on older systems.

    There are some strong similarities between Office and VS: flagship products, extensive 3rd-party ecosystem including add-ins, IO-bound, massive codebase & dependencies. Emphatically not just a matter of a changing a few compile switches!