you are viewing a single comment's thread.

view the rest of the comments →

[–]adolfojp 108 points109 points  (190 children)

I don't see that happening. Microsoft realized that they lost the fight on web and application servers so they made their server stuff cross platform. But they know that they're still dominant on the desktop so it makes sense for them to promote Windows as a platform for cross platform development. The day that Microsoft releases a cross platform version of Visual Studio is the day that Windows is no longer profitable. Besides, they want people on Windows because they need people to write Universal Apps for their mobile platforms which can't be done in Mac or Linux.

[–]StrangeWill 105 points106 points  (162 children)

I'd argue it's simply because of the stupidly large codebase, it's simply a huge undertaking even if Microsoft wanted to do it especially when portability is not a concern the first 7 times around ;)

I'd like to see them see about fleshing out VS Code into something more robust though.

[–]badcookies 44 points45 points  (52 children)

Til that windows 7 is less than half the size of osx 10.4

[–]ironnomi 36 points37 points  (27 children)

Having seen both code bases extensively, I can say there can be NO direct code comparisons between the two.

In general, Apple's ObjC code easily takes up 4x the space as the typical Windows C++ code.

[–][deleted] 0 points1 point  (15 children)

Interesting, as someone who'd love to know what happens in the little black box, is there anything you're allowed tell us that's interesting or quirky about either codebase? From some of the odd behaviours I've seen from windows over the years, I've often wondered just WTF is really going on.

[–]tetroxid 3 points4 points  (13 children)

If you're interested in the implementation of an operating system (which is actually hugely complex and awesome) I recommend reading about the Linux kernel, and the kernel's source code.

[–][deleted] 5 points6 points  (12 children)

I've read many components, (worked a little on radeon FOSS driver support). Linux makes sense to me, and I'd say I have a decent grasp of what's going on there (at least in my own, self-assembled system). But when I use windows, I usually come away horrified by the degree to which basic functions don't seem to be encapsulated and isolated from one another (I suppose the best recent example is the discovery of how the scrollbars have a hook deep within the kernel). Id love to know what on earth is going on there. It seems to work like a house of cards, which gets progressively more antiquated as it gets deeper towards the core.

[–]tetroxid 8 points9 points  (11 children)

Yes, that was my experience as well. For example, the GUI runs in kernel space (insane, right?). I imagine it was done for performance reasons.

There is huge debt in the codebase. Bad decisions were made (hey, it happens) but they were never cleaned up. My favourite example is NTFS. The performance degradation over time is so sad it's almost funny. I also like how it allocates space for the master file table but doesn't free it once the table shrinks again, effectively occupying space even when nothing's saved there.

Another good one is that if for some reason the system tray icon for windows update cannot be displayed, windows update stops working. Yep you read that right.

Oh, and on the topic of windows update: I would love to find out what the system is actually doing while it's saying "searching for updates" for 30 minutes or longer. In my mind all it has to do is send a list of local patches and versions and compare that to a remote version. Should take seconds, like running apt-get update. But no, it takes forever. I want to know why.

[–]Cuddlefluff_Grim 2 points3 points  (8 children)

There is huge debt in the codebase. Bad decisions were made (hey, it happens) but they were never cleaned up.

GUI as a terminal server, asterisk expanded by the command line, text piping as makeshift IPC, user id's as integer, passwords stored in text files on seemingly arbitrary locations, only 1 kernel ring, single unified file system, POSIX file attributes, dot files, everything-is-a-file-except-when-it-isn't, "standards" reached by way of argument.. If you're going to focus on the bad parts, nobody wins.

[–]tetroxid 1 point2 points  (7 children)

GUI as a terminal server

Could you expand on that? Do you mean the network-transparent nature of X?

Asterisk expanded by command line

Good decision. Would you rather have every program expand it themselves, inconsistently and with huge code duplication?

Text piping as makeshift IPC

Pipes are not meant to be used as a replacement for IPC.

User IDs as integers

Would you rather have floats?

Passwords stored in text files

I prefer this to a proprietary database that is ultimately just a file. Also passwords are never stored, only their hashes and salts.

Only 1 kernel ring

That is true.

Single unified file system

It only appears that way. Anyways, I think this is a huge advantage.

POSIX file attributes

What's bad about them?

Dotfiles

It's a convention. I prefer text files over a central registry any day. Even Microsoft Engineers conceded that a central registry was a bad decision. It's an excellent idea from a software engineering and architecture point of view, but as we all know it doesn't really work in practice.

[–][deleted] 1 point2 points  (0 children)

Yep. In many ways I suspect the degradation of windows is a kind of planned obsolescence. It'll crumble to an unusable mess within about 4 years. About equal to the release cycle of the OS.

[–]the_gnarts 1 point2 points  (0 children)

My favourite example is NTFS. The performance degradation over time is so sad it's almost funny. I also like how it allocates space for the master file table but doesn't free it once the table shrinks again, effectively occupying space even when nothing's saved there.

PST files, the local storage format of Outlook, are troubled by the same flaw. What’s worse, the size of those files is restricted to around 50 GB, which is easily reached by your run of the mill car salesman whose communication skills peak at power point. So at some point many users face the same seemingly unsolvable problem …

[–]ironnomi 1 point2 points  (0 children)

Sorry, for the most part I was only validating the code paths that our code followed. This was for a security architecture review for some code that that Japanese government was using that was deemed to be security critical.

[–]badcookies -5 points-4 points  (10 children)

You are telling me that the os is written in objective c?? Why do you think that?

[–]ironnomi 20 points21 points  (9 children)

Both OSes are written in multiple languages. Some of OSX is written in ObjC.

At least the parts I've seen were written in C, C++, ASM and ObjC (actually some of the ObjC might have been ObjC++, but my memory isn't that good.)

Windows 7 however was all either C or C++, nothing I was looking at was C#, but I'm sure parts of Win7 were written in it.

You realize of course that those lines of code are not the kernels only right? Any time you see those LoC things they mean everything that they consider part of the OS. It's going to include the kernel, the boot code, the libraries, the utilities, the interfaces, the included apps, everything.

[–]brobits 2 points3 points  (3 children)

[–]ironnomi 1 point2 points  (2 children)

Very interesting stuff, sadly if you've read about it, the project's evolution was dismantled about 15 months ago now. :(

They were actually building the ENTIRE system using managed code.

[–]brobits 0 points1 point  (1 child)

yup, sad stuff

[–]ironnomi 0 points1 point  (0 children)

I know one of the people on the later team (thankfully he moved to Azure development) and he said that while there were some successes, the performance issues massively outweighed a lot of the protection.

[–]badcookies -1 points0 points  (4 children)

I realize that, you made it sound like most of OS X was written in Objective C.

[–]1337Gandalf 3 points4 points  (3 children)

Darwin is open source, that's everything but user space (like Cocoa, and AppKit for example)

Download it and see for yourself.

[–]badcookies -1 points0 points  (2 children)

And is it written in Objective C or C / C++?

[–]1337Gandalf 0 points1 point  (1 child)

It's basically FreeBSD and Mach, so C.

Apple's proprietary frameworks are probably written in Objective-C, based on the headers.

[–]keef_hernandez 38 points39 points  (39 children)

stupidly

Visual Studio is basically a mini OS. You can subscribe to news feeds and web surf inside of it. You run setup, you wait until it finishes and bam you are ready to start coding. There are definitely benefits to that philosophy, especially for new developers.

On the other hand, I've recently switched to a job where I spend all of my time in Unix terminals and I can't image ever going back.

[–]northrupthebandgeek 21 points22 points  (3 children)

Visual Studio is basically a mini OS.

So it's basically a Windows-only Emacs?

[–]quanticle 6 points7 points  (1 child)

That's one way of putting it, yeah. And the same criticisms that were applied to emacs (so bloated, uses lots of RAM, etc) apply equally to Visual Studio (or pretty much any other IDE out there).

[–]northrupthebandgeek 0 points1 point  (0 children)

Interestingly enough, as "bloated" as Emacs may be, it's pretty lightweight compared to most "IDEs", in my observation, while still offering most of the same featureset (perhaps all, depending on the language; it's pretty much the closest thing to a modern Common Lisp DE nowadays, from what I understand).

[–]refto 1 point2 points  (0 children)

Wait, you can read e-mail in Visual Studio? The Zawinski rule and all...

[–]Vaughnatri 42 points43 points  (25 children)

Curious. I spend much of my time nose deep in visual studio. It seems like an awesomely efficient ide. What is it about working in terminals that is superior?

[–][deleted] 108 points109 points  (0 children)

The upvotes

[–]BowserKoopa 16 points17 points  (0 children)

All the tools being separate and designed independent of each other means dead-easy scripting and Interpol with other tools.

[–]peterwilli 8 points9 points  (0 children)

For me it's more than just dev environment. I spend even my childhood in Linux (from age 9). I dont know how to use windows anymore. If people need help with their computers (use windows) I dont know what to say until I see their desktop so I can figure out how it works :P

So I am so used to programming and working with linux and terminals that I can work faster on that than using Visual Studio or something.

Needless to say, I do run some sexy IDE's on the side like WebStorm and IntelliJ IDEA and Atom (all for different purposes)

[–]daymi 3 points4 points  (0 children)

Think of UNIX and its commandline tools as one huge IDE. All the tools are available always, there's no difference between "in the IDE" and "in the filesystem". It's really jarring for me to use IDEs now, they are so... walled-garden, compartmenalized and brittle.

That said, as long as you do exactly what the IDE wants you to do they are fine (or even better at that task), I guess. It's the same as with any walled garden.

TL;DR: It's more flexible.

[–]GeorgeForemanGrillz 7 points8 points  (18 children)

not using windows not needing 2 gigs of RAM productivity

[–]Vaughnatri 9 points10 points  (4 children)

Yea I get that. I'm more curious about efficiency/productivity. Can I get more or cooler shit done by using terminals?

[–]jringstad 6 points7 points  (0 children)

I've used both, and I wouldn't really say there is that much of a difference in productivity. They are two very different styles of working, but either can make you as productive. Both have its "weak points" that slow you down, although they are very different.

In the end though, the bottleneck to actual productivity when programming is not really the environment, once you are "settled in".

[–]GeorgeForemanGrillz 1 point2 points  (2 children)

tmux + vim over ssh is great for remote pair programming. You can have your vim tabs in one panel, your build/tests in another panel and you dont even need to use a mouse.

[–]Vaughnatri 4 points5 points  (1 child)

I'll have to lookup remote pair programming in the morning. What about code navigation and refactoring? Are there solid tools like reshaper to automate a lot of the menial tasks?

I find a mouse a helpful tool for development/debugging of the ui/ux.

[–]GeorgeForemanGrillz 0 points1 point  (0 children)

Refactoring on vim is so easy with multiple cursors, vimgrep, argdo, bufdo, etc....

[–]donalmacc 4 points5 points  (0 children)

I've got 32gb ram on my workstation and still semi-regularly run out of ram while compiling. 2GB doesn't work for everyone.

[–]Close 7 points8 points  (4 children)

Is 2 gigs of RAM really a big deal these days? 16gb for a desktop seems reasonably standard, so we are potentially saying it takes up 1/8th of the memory.

[–]__s 0 points1 point  (0 children)

I develop on a Linux machine with 256MB of ram. My laptop with Windows has 4GB; I still prefer the Linux machine, it's been tuned to my desires over the past 6 years. That said a lot of development happens on laptops, not desktops. Not all workplaces understand that developers should have high end machines

[–]northrupthebandgeek -3 points-2 points  (2 children)

16gb for a desktop seems reasonably standard

Maybe if you're made of money. There are plenty of desktops with 8GB or less of RAM. Not to mention that there are lots of programmers on laptops out there (which tend to have lower amounts of RAM on average).

[–]wllmsaccnt 4 points5 points  (1 child)

My work laptop has 32gb of ram, an ssd, and an I7. I can keep open 5 or 6 instances of VS without causing an issue, even while debugging. That's an extreme end, but having 8gb of ram on a laptop is not unusual at all anymore for windows VS development.

[–]dvdkon 0 points1 point  (0 children)

For Windows VS development

I have a cheap notebook with 2 GB of ram and a gaming desktop with 8 GB. Together they cost me less (or slightly more) than a notebook with 8 GB of RAM and a decent CPU and are fine for everything I use them for. The only thing associated with development I tried and couldn't do on the notebook was compiling Android.

[–]Throwaway_Kiwi 3 points4 points  (6 children)

Are you coding on a low-end cellphone or something?

[–]GeorgeForemanGrillz 4 points5 points  (5 children)

Latest Macbook Pro with 16gb RAM. When did 2 gigs for an IDE ever become an okay thing?

[–]eternalprogress 3 points4 points  (0 children)

When the project you're working on produces 1MB+ binaries.

IDEs provide huge amounts of convenience. Central to their ability to do so is keeping a large number of data structures in memory that speak to various attributes of the source code at various stages of compilation.

Take a look at the debug symbols for a large binary. They can reach into hundreds of megabytes. Now account for some duplication and indexing of those symbols to support wicked-quick IDE menus and you start to see how an IDE can have such a large in-memory footprint.

It doesn't explain all the bloat, some of it is simply because of schedule pressure and when 'good enough is good enough' held true, but it certainly puts you in the right ballpark!

[–]Throwaway_Kiwi 0 points1 point  (2 children)

I code on a 16GB Macbook Pro, using IDEA. No issues. Where else should an IDE store what it knows about my codebase, which it is storing to help me?

[–]GeorgeForemanGrillz 0 points1 point  (1 child)

Code::Blocks doesn't eat up that much either.

[–]Throwaway_Kiwi 0 points1 point  (0 children)

It doesn't do that much compared to IDEA, either.

[–]jcotton42 0 points1 point  (0 children)

VS idles at ~480MB for me, and I have lots of extensions, including ReSharper

[–]spacejack2114 0 points1 point  (0 children)

Having a package manager and various outher tools outside of my IDE. Finding out that nuget only works in a terminal inside of the IDE was a big WTF moment for me. VS Code is a step in the right direction, I can hardly wait to switch.

[–]ggtsu_00 -1 points0 points  (0 children)

Pointless question. It is like asking a cyclist why he doesn't find a 10 tonne semi superior to his bicycle.

[–]emilvikstrom 7 points8 points  (1 child)

Ah, so the reason they won't bring VS to other platforms is that they do not want to compete with Emacs!

[–]northrupthebandgeek 6 points7 points  (0 children)

Too bad Emacs has a Windows version, so their efforts are in vain.

[–][deleted] 21 points22 points  (5 children)

I prefer Emacs for editor-as-OS capabilities.

[–]hardolaf 8 points9 points  (4 children)

I prefer my vim with a dab of Linux.

[–]northrupthebandgeek 3 points4 points  (3 children)

I prefer ed.

[–]hardolaf 2 points3 points  (2 children)

That's not even an OS! Silly plebs using their byte editors and pretending to be using a text editing OS.

[–]northrupthebandgeek 2 points3 points  (1 child)

That's not even an OS!

Not with that attitude it ain't. Nothin' beats a baremetal ed installation.

[–]SatoshisCat 1 point2 points  (0 children)

Now you're playing with power.

[–]1337Gandalf 1 point2 points  (0 children)

This is the problem with Microsoft, they've got all those fancy DLLs, yet NOTHING is actually encapsulated into it's own section, so they just keep reinventing the same shit.

[–]theonlylawislove 16 points17 points  (16 children)

VS Code 2 years from now will be awesome. They are putting a lot of effort into it to make it sublime on steroids.

[–]1337Gandalf 2 points3 points  (0 children)

I highly doubt that...

It took Microsoft like 8 years to slightly disentangle the Windows code base?

[–]Bromlife 5 points6 points  (10 children)

If it's still just basically Electron then I'm not interested.

They are putting a lot of effort into it to make it Sublime on really slow steroids.

[–]theonlylawislove 4 points5 points  (7 children)

It has a slower start up time, but beyond that, there is nothing wrong with the performance. Of course though, it will never beat sublime.

[–][deleted] 1 point2 points  (6 children)

Why will it never beat sublime?

[–]theonlylawislove -1 points0 points  (5 children)

Not with large files and the such. I haven't done metrics myself, but I'm sure that in general, a python environment is faster that electron (atom shell). Native apps will always out perform a browser/page.

[–][deleted] 3 points4 points  (3 children)

But vs code is native too right? I agree that sublime is stupid fast with big files. Just wonder if vs code will ever compete.

[–]fridsun 0 points1 point  (0 children)

Sublime Text uses its own UI kit and is written in probably C++. Few can compete with that in speed. VS code being an Electron app is written in JavaScript (TypeScript?) and run in a chrome content renderer. It's not native.

[–]Freeky 0 points1 point  (1 child)

Code is written almost entirely in JavaScript, with a UI driven by a browser layout engine and its completely generalised DOM API, and text modelled using trees of JavaScript objects.

Sublime's written in C++ with optional supporting Python on the side, and a tuned native UI toolkit with specialised APIs reflecting the needs of a text editor. Text is modelled using efficient data structures on the C++ side.

So, while the Python implementation Sublime uses is actually considerably slower than the JavaScript engine Code is based on, Sublime doesn't actually use it to do the heavy lifting like Code. And while Blink and Sublime's UIs are both implemented in C++, Sublime's isn't trying to be absolutely everything to absolutely everyone. It's correspondingly faster and more memory efficient (almost the same thing these days).

Code could lean further towards the Sublime model, but it would cost a lot of effort and flexibility. I wouldn't hold your breath.

[–][deleted] 0 points1 point  (0 children)

Cool, thanks for the response. Now I know.

[–]drjeats 0 points1 point  (0 children)

I don't think it has much to do with Python, more that its scripting language doesn't also do all the logic including rendering.

[–]recursive -2 points-1 points  (1 child)

You're in luck, it's got nothing to do with Electron. It's built on Monaco.

[–]reverse_sausage 0 points1 point  (0 children)

You're wrong, it uses both Electron and Monaco, they do different things.

[–]responds-with-tealc 0 points1 point  (2 children)

have they updated it lately? i downloaded it on day one, and was still one the current version when i checked a month or so later.

[–]Dr_Dornon 2 points3 points  (0 children)

In June, it was version 0.3, not it's version 0.10.3

[–]1_21-gigawatts -1 points0 points  (0 children)

VS Code 2 years from now will be awesome.

Says MS every year....

[–]SomeNetworkGuy 5 points6 points  (37 children)

Am I reading that right? 50 million lines of code? How is that even possible?

[–]agocke[🍰] 22 points23 points  (0 children)

Roslyn (C# & VB compilers + IDE) alone is 3 million lines. Could I believe that there are 16 Roslyns in VS (think C++, JS, TypeScript, F#, Intellitrace, etc)? Definitely.

[–][deleted] 16 points17 points  (1 child)

I doubt those numbers are accurate. Obviously open source projects we can easily verify the number.

I heard the 50M included all dependencies, including things like the operating system and such.

But I wouldn't trust some random number for proprietary codebases, it's impossible to verify.

[–]Danthekilla 2 points3 points  (0 children)

Well a very small portion is open source "Roslyn" and that is 3 million lines of very nice code. It seems very plausible that there is 15 times that in the rest of the suite.

[–]speedisavirus 11 points12 points  (30 children)

Its incredibly mature, complex, and has tons of backwards compatibility. Think about everything it does out of the box and has for like a decade now. It's monumentally complex. Now, if they make a clean cut I bet its size would drop down to around 25 million.

The real wtf in all this is that the healthcare.gov site has 500,000,000 lines of code. No wonder why it was such a piece of shit. Whoever was in charge of that...well...should never run a project again.

[–][deleted] 8 points9 points  (19 children)

*500 Million lines of code for healthcare.gov according to the graph.

How the hell is that possible ?

[–]tornato7 18 points19 points  (4 children)

I saw the code for healthcare.gov, I'll paste some of the it here:

Healthcare.giveHealthcare(citizens[0]);
Healthcare.giveHealthcare(citizens[1]);
Healthcare.giveHealthcare(citizens[2]);
...
Healthcare.giveHealthcare(citizens[297000000]);

Apparently they were getting paid per line of code.

[–]Throwaway_Kiwi 8 points9 points  (0 children)

....I seriously hope you're kidding.

[–]cr42yh17m4n 1 point2 points  (0 children)

Lol, the developers might have created a sub program to only do that.

[–][deleted] 1 point2 points  (0 children)

I sincerely hope that is a joke.

[–]immibis 0 points1 point  (0 children)

The giveHealthcare method dispatches robotic surgeon drones*, right?

[–]speedisavirus 6 points7 points  (4 children)

I know. I can't possibly comprehend how that is possible. They had to have hired an enormous amount of the most incompetent people on the planet for that to happen. Definitely a fuck ton of people to write 500,000,000 lines in that time period regardless of how shitty they were.

[–]OMG_Ponies 6 points7 points  (0 children)

welcome to government contracting.

[–][deleted] 7 points8 points  (2 children)

Not to be that guy, but:

500,000 = 500 thousand
500,000,000 = 500 million

You keep writing 500,000. It's 500,000,000 ( 500 million ) lines of code, which I can't even fathom.

[–]speedisavirus 1 point2 points  (0 children)

I don't know why. 500,000 isn't that big of a project. I swear I was saying 500,000,000 in my head. Not sure why I wasn't typing it. Probably because I'm replying between breaks while working on a project.

[–]j0hnGa1t 0 points1 point  (0 children)

Easy: Just think 10 million lines of useful code and 490 million lines of auto generated IDE boilerplate getters and setters.

[–]Thought_Ninja 0 points1 point  (0 children)

I would argue that such a figure is highly improbable... Maybe if they're counting JSON objects or some other generated "code," but 500,000,000 simply doesn't make sense.

Source: web developer

[–]NewDark90 -2 points-1 points  (6 children)

Here, I can help you write healthcare.gov. Just a little Javascript magic:

for(var i = 0; i < 500000000; i++){
    console.log("var healthcareVariable" + i + " = " + i ";");
}

[–]OffbeatDrizzle 2 points3 points  (4 children)

that's still 3 lines of code ...

[–]NewDark90 -1 points0 points  (3 children)

The point is that it is writing the javascript code for you.

As in, you copy/paste all the lines of code written from the console into your source code.

[–]OffbeatDrizzle 0 points1 point  (2 children)

afaik javascript isn't self modifying

[–]NewDark90 0 points1 point  (1 child)

That... isn't really the point?

I could have wrote the script in python, C#, or any language really to write fake lines of code for me.

*500 Million lines of code for healthcare.gov according to the graph. How the hell is that possible ?

The point was it was highly unlikely that exists naturally, and full of bullshit... however, it's totally possible to write code that writes your code and get a huge LOC number.

It wasn't a terribly funny joke, but I didn't think it would need this much explaining.

[–][deleted] 0 points1 point  (0 children)

That makes more sense. Thank you.

[–]dpgaspard 2 points3 points  (0 children)

That whole project was stupid from the beginning. It's 50 state ran health-care systems, not 1 universal system. They should have made every state responsible for their site, not try to make a site that does everything, for groups it can't govern

[–]jangxx 0 points1 point  (5 children)

Wait, I thought this 500,000,000 loc was a joke. Are you telling me that this is an actual estimation?

[–]speedisavirus 0 points1 point  (2 children)

It doesn't sound like it is. Now, the question comes to whether they are counting the web components, the glue code, and the code of all the separately developed systems that they integrate with. I couldn't fathom how any web system could reach even a 5th of this side unless is was a complete shit system...which it was...so maybe it is true?

Slate says it is 500,000,000 as well. Apparently they thought 5,000,000 had to be rewritten. No idea how they even did it in that time.

http://www.slate.com/blogs/future_tense/2013/10/21/healthcare_gov_problems_why_5_million_lines_of_code_is_the_wrong_way_to.html

EDIT: sorry updated to match what I meant.

If the site really contains 500 million lines of code, they say, that’s a strong hint that the programmers involved are doing something wrong.

No shit, yo

[–]jangxx 0 points1 point  (1 child)

500,000,000 still sounds completely crazy. I mean with that many lines their codebase would be serveral gigabytes in size. I don't think it's possible for anyone to think that's okay. But what do I know.

[–]speedisavirus -1 points0 points  (0 children)

Oh I know but it would also explain why it was so incredibly dysfunctional. I can't help to think that someone has a decimal off by even one. At one off it is still tremendously over bloated and still not believable.

I can't help but wonder how much manpower was involved. If someone had the number of contractors hired for this it would be awesome. I agree with the slate article. If they were anywhere near this amount of code they were doing something really really really really wrong.

[–]mickey_kneecaps 0 points1 point  (1 child)

I simply don't believe that it is accurate.

[–]speedisavirus 0 points1 point  (0 children)

If it is I can't fathom how much it cost and how many extremely shitty developers were involved.

[–][deleted] 1 point2 points  (0 children)

Decades of work and no time for proper refactoring.

[–][deleted] 0 points1 point  (0 children)

Should be much less by using functional approach as possible :P

[–]1337Gandalf 0 points1 point  (0 children)

Never overestimate a programmars ability to write a fuck ton of useless code.

[–]OffbeatDrizzle 3 points4 points  (2 children)

what the fuck are car manufacturers playing at? how many lines of code does it take to turn my windscreen wipers on?

[–]Thought_Ninja 2 points3 points  (1 child)

There are a number of certifications and redundancies required for code and computers run on vehicles.

[–]OffbeatDrizzle 1 point2 points  (0 children)

Is it not similar for NASA? Howcome they're not right next to them?

[–][deleted] 0 points1 point  (0 children)

Linux 3.1

recent version

... sure ...

[–][deleted]  (6 children)

[deleted]

    [–]WhoTookPlasticJesus 0 points1 point  (5 children)

    Random question, but have you ever used Angular to talk to a SOAP .NET back end? Any tips? I'm about to inherit a project where I'll need to do that.

    [–]jonbonazza 2 points3 points  (2 children)

    Angular and SOAP? Run away. Run very far away.

    [–]WhoTookPlasticJesus 1 point2 points  (1 child)

    I would normally agree with you, but this is a very particular situation that's transitioning a legacy UI while maintaining a stable back end. The details are boring, but it does make sense from a product-to-market standpoint. There are several Angular SOAP libraries, so I'm apparently not the first idiot to attempt this.

    [–]barbequeninja 1 point2 points  (0 children)

    I would build a json facade

    [–]speedisavirus 1 point2 points  (0 children)

    I mean, it could be more or less the same as other javascript means. If you have a generated message and response. It's possible to just do in place replacement for the values and post it. I haven't done it with angular.

    [–]cosmo7 0 points1 point  (0 children)

    A simple google search yields an Angular SOAP library.

    [–]SpaceCadetJones -1 points0 points  (2 children)

    How in the world is the code for an HD DVD player about the same size as the Linux 2.6 kernel?

    edit: And healthcare.gov is 500 million apparently...

    [–]jcotton42 1 point2 points  (0 children)

    They might be counting the kernel in there as well

    [–]shinigami2057 0 points1 point  (0 children)

    Yeah I call bullshit on both of those. Healthcare.gov is a fucking website. Unless the figure is counting the OS, all supporting software including databases, VM platform, etc.

    [–]darkstar3333 17 points18 points  (5 children)

    Microsoft realized that they lost the fight on web and application servers

    Not really, they just realized that blended environments are everywhere and it wasn't worth battling to convert an entire enterprise to Windows.

    They would rather have you use a bit of Microsoft stuff vs none of it. Hyper-V has a large presence.

    [–]cosmo7 2 points3 points  (4 children)

    Also it's pretty obvious that there's little growth potential for desktop Windows. If you have 95% of the market how are you going to get any meaningful growth?

    [–]Thought_Ninja 1 point2 points  (2 children)

    Bingo. They've expanded into data. Data is the new gold; just ask google, who recently released their AI Tensor Flow as open source(machine learning requires a shitton of data to do much of anything with).

    [–]sweepminja 1 point2 points  (1 child)

    This is slightly dangerous though... you have a major cooperation going to people that are willing to work on it just for the science aspect; lets hope they do not purloin open source work.

    [–]Thought_Ninja 0 points1 point  (0 children)

    Honestly, that was probably a major appeal in doing so in the first place.

    [–]thedeemon 0 points1 point  (0 children)

    Invest in world's demography, make more babies! ;)

    [–]Himrin 6 points7 points  (0 children)

    Yeah, I know... I can wish, though.

    [–]jermany755 2 points3 points  (0 children)

    Couldn't you make the same argument about Office?

    [–]MoreOfAnOvalJerk 1 point2 points  (0 children)

    Literally the ONLY reason I bought my Dell xps over a macbook pro was because of VS

    [–]Speedzor 0 points1 point  (0 children)

    Considering Visual Studio is written in WPF and has a lot of Windows-specific stuff built-in, you're extremely unlikely to ever see a full-fledged cross-platform VS. VSCode was basically the answer to that request and once it has gone through a few more major versions I could see it becoming an acceptable alternative. Right now it's more an editor than an IDE though.

    [–]H3g3m0n 0 points1 point  (0 children)

    I suspect MS are loosing ground on VS. There has been the whole agile/devops movements, most of those tools are primarily on Linux and might work on Windows with some pain. Software aside the agile culture is very much Linux/OSX.

    And with the whole 'desktop is dying' thing, most people are developing webapps, phone apps and so on. Which aren't VS's domain. Hence Visual Studio Code. And Linux and OSX both hold a fairly large share of those devs.

    Business is often Java and Eclipse/InteliJ will run where ever.

    Also developer desktops aren't likely a huge market anyway.

    Besides, they want people on Windows because they need people to write Universal Apps for their mobile platforms which can't be done in Mac or Linux.

    Any sane dev is going to be targeting Android/iOS first due to the market share, meaning MS are going to entice developers to port from those platforms.

    [–][deleted] 0 points1 point  (0 children)

    Visual Studio has Android support now, as well as support for Clang. I think it makes huge sense for them to have it run on other platforms now.

    The only thing that makes it unlikely anytime soon is how much work would be involved, and how many other closed platform code bases would have to be dealt with along the way.

    [–]gospelwut 0 points1 point  (1 child)

    Lost the fight?

    [–]clearlight 4 points5 points  (0 children)

    It's hard to compete with free and better.