I highly doubt these Linux games will amount to much for Microsoft, but it's fun to watch.
Their fundamental problem is (which they realize pretty well i seems) that they have lost developer's mind share. .NET may be a fine ecosystem and C# may be a great language but in all practical senses it is Windows-only. All these Mono/open source CLR games are not even the slightest blip on the radar for a practical day-to-day backend operations running cross platform (which is mostly Linux, but Windows as well).
MS is lagging behind the Java ecosystem by 20 years. It's fun to watch them scramble and try this and that, but I suspect that the train has left the station long ago.
I think Oracle Linux has been a joke. I don't know anyone in their right mind using that. RH or CentOS, yes. Oracle Linux? Most IT professionals will pay extra to have nothing to do with Oracle. Heck, I am considering risking moving to OpenJDK, just so I have nothing of Oracle in sight.
> Their fundamental problem is (which they realize pretty well i seems) that they have lost developer's mind share. .NET may be a fine ecosystem and C# may be a great language but in all practical senses it is Windows-only. All these Mono/open source CLR games are not even the slightest blip on the radar for a practical day-to-day backend operations running cross platform (which is mostly Linux, but Windows as well).
The JVM has certainly had a lot of time to mature, and certainly has a fairly entrenched position, but when you look at all the developers who were willing to hop on board the Go train with no supporting infrastructure, it's pretty clear that support from powerful entities can go a long way.
> but when you look at all the developers who were willing to hop on board the Go train with no supporting infrastructure
I think that speaks more towards engineers that like shiny new things that do something in particular in a new way which then help drum up excitement and an ecosystem around it.
C# is a very good language, but there's nothing new or shiny about it now. The tools and ecosystem around it are well established and managed by Microsoft and often involve spending some money.
The excitement for new things like Go, Rust or Julia etc are really not a signal for new support for C#. I think if anything Microsoft should continue their new support for llvm[0]. Windows is a fine operating system, I'd like to use it to do development and the closer I can get to developing things that then run on linux the easier my life will get and the more likely it will be that devs use Windows.
You know, people say that Windows is a fine operating system, but I find it constantly annoying and terribly inefficient. Maybe it because I know there are other, better things, or maybe it's because I use it "incorrectly". As a desktop OS the GUI constantly annoys me with tiny little cuts; you can't manipulate file names properly as it disallows names starting with a period (among other things), the UI is terribly inconsistent, the console(s) don't interact with the mouse well, etc. I know they are small things, but they really add up to some serious frustration with the OS as a whole.
As a server OS it's not much better. I can't find a way to force a NTP sync; things that should be simple (creating a service with logon rights) takes 10's of lines of PowerShell; you can't use SSL with the core image because it requires IE, which is not included in the core image. Its full of little surprises which make it difficult to understand (.../windows32 == 64bit, .../SysWOW64 == 32bit). It takes 10 minutes to fully boot a Windows instance in AWS, which is mostly the result of how large it is, and the fact that it has to recompile its DCOM DLLs (or some such thing).
I know that no OS is perfect, but Windows has had years and years to mature and a company with billions of $$$ and thousands of developers behind it. I expect more.
The Windows desktop comes in last in any reasonable comparison with OS X and a modern desktop-oriented linux like Ubuntu or Mint.
The focus on backwards compatibility means, among other things, Windows is carrying around multiple ways to render fonts. None of them deliver sufficient clarity. In Windows 10, Cleartype does not affect "Modern" apps.
All the applications I use 90% of the time are available for Windows and Linux. Text in each is more difficult to read in Windows.
I find, on a Dell 27-inch 2560x1440 display,that I can see individual pixels in normal fonts from my usual viewing distance. Bold fonts are often smeary, especially at smaller sizes. Segoe UI looks acceptable in parts of the Windows interface. But, in apps that use older font rendering approaches, it's poor.
If you spend your days reading and writing, as I do, this is an important issue.
Go is probably one of the least interesting languages released lately IMO, certainly when you compare it to Rust (and I don't know a whole lot about Julia), and yet the amount of attention it has gotten is pretty huge.
So I think MS is just as capable of throwing new shiny things at developers as anyone else. Typescript and free Xamarin are recent examples.
With MS supporting CLR on Linux, I don't see what the problem is. They now have a limited IDE and runtime support for cross-platform.
FWIW I've used Mono in production on Linux in telecom, and it's handled many billions of messages over the years. With F# nonetheless. Apart from a few rare issues here and there it's been a great experience.
FWIW we spent years on mono as well, constantly chasing performance issues, incompatibilities, stupid bugs, race conditions and uncountable segfaults. All with code that worked perfectly fine on Windows (but we had to run on Linux due to cost and integration necessities).
We are about 70% of the way through a complete Go rewrite and I couldn't be happier with the outcome. For once, things just work as expected, on Windows, Linux and OSX.
I'm glad Microsoft is finally doing something to make .NET something other than a shit show on Linux, but we needed that 3 years ago, not 3 years from now.
Alas, too little too late for us anyway. I hope it works out better for others, but the ship has already sailed.
I don't believe MS will ever fully support Linux 100%. They will always make their software tooling more compatible with their OS even though they have the ability to create software for Linux that is on par with the Windows counterparts.
Microsoft purposely leaves their "cross-platform" software gimped out so that anyone who does decide to take up .NET on Linux will eventually want to switch to Windows because Microsofts support for Linux is half assed.
Hopefully most people can see through the obvious MS shilling that's been going on lately.
Some people seem to believe the "new bash" coming to windows is somehow a game changer and that this means they no longer need Linux. Please. Setting up any serious development process in this Frankenstein OS is going to be a nightmare and it's going to break every tool chain conceivable.
Right now it's not much with C# in cross platform development (ASP.NET is in total flux, it's not even renamed to Core 1.0, Rider IDE still not released), but soon™.
IMO the point still stands, in general it will be years before the CLR and .NET native is considered a serious alternative to Java/JVM on linux, although microsoft is doing a great effort, so who knows how long real adoption will take, I guess it can get closer to Golang, adoption wise, than to Java, the introduction of Swift is not going to make it easier for them either.
I think this is one of the destructive legacies of Internet Explorer. Many web developers (including myself) got fed up with IE, and that rage transferred onto Microsoft.
The web as envisioned early on by Netscape was supposed to have apps much sooner than it did. Once Microsoft swept aside Netscape by killing their business it basically froze development on IE.
They made one mistake: XMLHttpRequest (probably the last big feature added to IE before the freeze) and we got lucky with Firefox.
Netscape's vision was java applets though, right? The only thing I can remember that was worse in a browser than Flash. Perhaps we owe Microsoft some thanks.
XMLHTTP was originally an ActiveX technology, though, from the Outlook team; it wasn't originally developed as part of IE. I guess it wasn't until Mozilla and Apple added a native version that it really took off.
Actually KHTML and Safari supported it earlier, MozillaSuite/Firefox initial support was broken and only when it was fixed in Firefox around 2004 it got tradtion among devs.
I'm not sure Microsoft's lack of development on Internet Explorer in that era was due to an actual desire to kill the web. It simply had no competitors, so there was no motivation to make the product any better.
Microsoft killed Netscape to kill the thick client planned by Netscape to commoditize Windows. I'm pretty sure that Microsoft (just like Apple today) didn't want the web to succeeded as an app delivery method.
TL;DR Microsoft tried to leverage its desktop monopoly to become a browser monopoly to a server monopoly and thus own and tax and sanitize the early web, we wuz saved by Firefox.
The web freedoms we are losing today were hard won.
Back when browser choice was NCSA Mosaic or Netscape , Microsoft was ignoring the web as a fad - Gates thought little of it then - sounds crazy now but in the early 90's, before access was readily available outside Universities, BBS was dominant for the public.
The web was small then: registering a domain was altering a text file (no cost); SPAM didn't exist, every email was answered; all very university nice nice; ecommerce wasn't a thing.
Microsoft 'awoke' to the webs potential and gave away Internet Explorer for free ( Netscape's browser cost money to buy unless you used the latest beta ) - this is what the antitrust case of win95 was about - Microsoft leveraging it's monopoly ( no Linux back then ) to aquire browser share.
Why was this seen as a problem ?
Because of Microsoft's strategy of embrace , extend , extinguish.
It was feared Microsoft browsers would only talk 'properly' to Microsoft servers ( the server market was the 'big' money ) - thus Microsoft would dictate the web rather than Berners-Lee's democratic W3C.
Everone else would be shut out of spec by dint of Microsoft end user browser monopoly leveraged from it's Desktop monopoly.
This would certainly have slowed adoption as every site and every server would have to pay Microsoft's large costs - 1 server per site then so the Microsoft tax was then ~$2000, recurring, per site.
Then only way to compete with the behometh of Microsoft's developers & emerging browser monopoly was the Free (GPL) development model - Netscape gave away their whole browser business to the public domain, inspired by Eric Raymond's analysis of the power of the public domain to attract developers - "The Cathedral and the Bazaar".
Raymond argued that ensuring developer contributions couldn't be locked away by proprietry companies would attract developers. This had happened before with UNIX, necessitating GNU & LINUX.
The GPL, the Free software license of Richard Stallman's GNU toolchain, adopted by Torvalds for LINUX, was the model for a public domain that avoided the 'tragedy of the commons'.
The GPL ensured the 4 freedoms remained intact on downstream contributions.
Free GNU software meant basically: if you improve public code, you must give the source code of improvements back to the public domain.
Free Firefox ( in freedom & price ) coupled with the LINUX kernel (or BSD) and the GNU toolchain provided a Free server OS. With A Patchy Server ( renamed Apache ) this provided a way for the web to grow unencumbered.
They had to dilute Free by calling it Open Source as some business types feared Free (as in beer) & Freedom - but it was Stallman's GPL in all but name.
Imagine a building filled with floors of rackservers , if every server, every OS was forced to pay Microsoft rates - and perhaps also be content Microsoft didn't disapprove of.
Microsoft licenses in a Monopoly market - the web would have been strangled at birth.
Only for the wealthy and approvable - basically Encarterised.
Lillywhite rather than everything and everyone.
So the GNU toolchain and license, and LINUX kernel and (GPLed) Apache server meant that building of servers could be had for the price of traing staff - zero cost of entry, everyone gets to play.
A server farm could be set up by a devotee in a cupboard for zero cost rather than ~$2000 per site, ~yearly to Microsoft.
This is why Stallman is the granfather of all our freedoms.
He saw UNIX stolen and LISP crushed by and invented GNU Free toolchain early enough (80's) to have it useable to write the LINUX kernel and be a complete Operating System by the 90's.
The truth of the crappiness of the Microsoft web vision became the nightmare of late 90's early 00's web devs having to write for IE6 bizzaro HTML.
Yes the W3C became stagnant later and Mozilla support of legacy httprequest allowed modern web to AJAX, etc, HTML5 blah, etc, continual revolution.
Early public web culture was very BBS anarcho, democractic rules not central power - the public had after all built a functional web and email system without oversight or control - distrubuted over phone lines in the 1980's (q.v. FIDONet & BBS) before the gov & universities 'shared' TCP/IP. All early non-uni ISP's were BBS's.
Arguably the tie-down of broadband and 'mistrust thy neighbours surfing' crushed sharing access & many early freedoms & the anonimity of temporary copper dialup net & webbery ( crypto was an illegal munition then ).
If the web had failed, then we would be living in an info desert like the 1980s, where most people relied on newspapers & official propaganda was absolute.
Without the web Rupert Murdoch would now be absolute kingmaker and dissent to the big lies of authority would be absent without the blogosphere.
Yeah, I often see on HN (what are presume are younger developers) who never lived in a world were OSes, languages, frameworks, toolkits were not free. Everything cost a pretty penny. Open source software en-large would have been such an alien concept telling people it was going to be the future, they'd think it was crazy talk. Now it is taken for granted ... too much for granted perhaps. And they love to hate GPL and make fun of Stallman and how if someone releases GPLed software they are being anachronistic and hostile and it is hurting their Uber for Dogs startup and so on.
> Yeah, I often see on HN (what are presume are younger developers) who never lived in a world were OSes, languages, frameworks, toolkits were not free. Everything cost a pretty penny. Open source software en-large would have been such an alien concept telling people it was going to be the future, they'd think it was crazy talk. Now it is taken for granted ... too much for granted perhaps. And they love to hate GPL and make fun of Stallman and how if someone releases GPLed software they are being anachronistic and hostile and it is hurting their Uber for Dogs startup and so on.
Not all young developers are like that. I definitely recognise how lucky we are to live in a world where software freedom exists. And considering the fact that Torvalds doesn't believe in software freedom, it's astonishing that we even have a GNU/Linux system (if Linux had been BSD licensed I doubt it would be as prevalent). The GPL was definitely one of the most brilliant legal hacks in software history.
> Source for that? I thought I read a quote from him saying that GPL licensing the Linux kernel was the best decision he ever made.
If you ever hear his explanation of why he used the GPL (which boils down to "I give you code, you give me code back, we're even"[1]) skips over the software freedom aspect. Not to mention that he's one of the advocates of the open source movement which doesn't have any views on software freedom.
I can't give you an explicit quote where he said "I don't care about software freedom", but it becomes quite clear if you look at his actions (particularly toward the GPLv3, where he clearly differentiates his views from the FSF's views[1] -- and he carefully avoids using the term "freedom").
There is a quote where he claims that vendor lock-in isn't morally bad[2], which is the best I could find after 10 minutes of searching:
> The GPLv3 doesn't match what I think is morally where
I want to be. I think it is ok to control peoples hardware.
Voluntary control & choice of control vendors, maybe.
But enforced monopolistic control - c'mon there is no freedom there.
Not to mention legally enforced monopolies destroy the market for everyone, including themselves.
Pretty much the 1st observation Adam Smith makes.
Without freedom and thus competition there is no progress, everything stagnates.
Music & film industry is a case in point, every change they lobby against turns out to be insanely profitable when they are forced into it. ( 78's, radio, videos, mp3 , streaming - all were going to 'kill' the industry till they didn't )
Fat cats won't change or innovate without competition.
The less people use the web, the more they'll depend on the OS. Imagine if Facebook (or Slack) just had to build a native app for every OS they wanted users from, and there was no chance of using anything cross-platform to reach everyone. That would be the sweet utopia for the then Microsoft.
Making the dominant browser shitty is not identical to that scenario, but goes a long way in discouraging an OS-agnostic platform (the Web) in favour of their monopoly OS.
So you are saying they are against web apps that replace native apps such as Google Docs and thus it was not in their best interest to make the browser powerful. Interesting.
And the Web survived, and eventually became the mess we all know and love today. Usability standards have dropped a lot for everyone who doesn't own a Mac, compared to Windows in the late 90's and early 2000's. Back then, at least the trains ran on time...
Certainly, GNU/Linux has come a long way in terms of usability. I'm a very happy user of a GNU/Linux system nowadays (Arch Linux). But I wasn't really comparing Windows and GNU/Linux. I was comparing Windows and Web applications. IMO, Web applications in 2016 are still significantly less usable than Windows applications were in 2000. In fact, the more “modern” a website is, the least usable I'm likely to find it.
> I cannot in good conscience support a walled garden or advocate its use knowing how important freedom is.
I value civilized freedom (GNU/Linux on the desktop), not the law of the jungle (the Web).
---
Let's face it, the competition between Windows and Web applications was actually between business models. Between users paying for software, and filling the screen with ads and “sponsored content”. Given these two alternatives, I'd gladly pick the first. Freedom has nothing to do with it.
By walled garden I thought you were advocating Apple, I see I was mistaken.
I too support the freedom to be civilized and not subject to laws red in tooth and claw.
Yet diversity is important and so I also support there being freer places where new types of organisation can arise free from the old order - places like the Web.
There's a handful of Fortune 100s I've seen that are on Oracle Linux. They've mostly gotten deals through their existing relationships with Oracle and/or Sun. These places have typically been heavy on both Solaris / SunOS as well as on Oracle. Trying to develop a new relationship with RedHat to that level would not have been possible politically, so Oracle Linux it is.
Oracle doesn't care what you think at all, good or bad. If you hate them, they undermine you by making you sound like a bumpkin. If you love them, they undermine you by using you as a spy.
They influence your CEO/CIO/board/governor/mayor/general/owner/investor. A few years back, they convinced some dope in the State of California to buy a named user license for every resident of the state.
That makes no sense. With about 40 million residents, the government of California would need to have approximately 1.6 million CPU cores dedicated to Oracle before named-user worked out cheaper than per-core licensing. Either that or there's a special deal unrelated to Oracle's normal licensing price list, in which case who cares what the licensing metric is?
There is absolutely no basis for arguing .net being behind Java, JVM or the ecosystem by 20 years. I am sure you are conflating the library advantage that Java has enjoyed. .Net is clearly going to give Java ecosystem fits in less than 5 years.
Oracle is clearly doing all it can to close the gap with all the FUD but it might not be enough to help .NET because for what it is worth in my opinion, Microsoft appears inconsistent.
Are they betting the farm on Azure yet? Do they still see Windows as a profit center? Can they afford to give away developer tools for free as in free beer with no strings attached? Can they give away everything I'd need to run an Azure stack without paying them a single cent? I don't know but if they can't, I don't see how we can get Java teams and projects to switch over. Microsoft has a lot of cash but they don't have unlimited cash and it sort of matters in the long term. I hope the answers to the questions are yes. I wish Microsoft became to Windows what Red Hat is to Linux but as they say if wishes were fishes...
The first wave would involve enough tools for already .net projects to invade into Linux land. If this wave is not big, then Microsoft will have to try harder to convince Java devs to make the switch. But I am sure, there are many like my employer who make fintech products that with some work expand on to the Linux Server side very motivated to be part of the first wave.
More Java developers, I would be observing how many .Net shops expand their products and services to Linux.
I begrudgingly watch these games, and I hate all the ooohhhs and aahhhs at stupid Microsoft integrations with Linux. But this too shall pass. If Microsoft was to put out a free version of Windows say Windows Developer Edition, I would happily dual boot to it. That's my #1 gripe with Windows their shit licensing schemes and activations.
Other than that, this does not make me happy. All this embrace extend extinguish is not going to play with me. But I know a lot of younger developers, just starting out, will be taken away by it rather than properly switching to Linux or other *nix as they should. But what can you do about that.
Frankenstein OS (Linux + Windows) is going to break every dev tool chain you can think of. I don't see how anyone in their right mind would think Frankenstein OS is a good dev platform.
I guess if you don't mind having an unstable system and enjoy searching google for "how to get xyz to work in bash windows linux" and finding absolutely no answers on stackoverflow then Frankenstein OS is good for you. If you want to find and squash completely new types of bugs that you aren't use to dealing with, then use Frankenstein OS.
For those of us who just want a system that works and is reliable then we should stay away from Frankenstein OS.
>Frankenstein OS (Linux + Windows) is going to break every dev tool chain you can think of. I don't see how anyone in their right mind would think Frankenstein OS is a good dev platform.
It's a binary-identical linux userspace, and it (appears as if it) has the same linux kernel. There will be some rare edge cases (see: mounting a case-sensitive POSIX filesystem on top of the case-preserving NTFS) but aside from that i envisage lxcore.sys being extremely compatible. Certainly a better dev platform than my current cygwin/windows/samba/debian-in-hyper-v setup for mixed OS development.
> >Frankenstein OS (Linux + Windows) is going to break every dev tool chain you can think of. I don't see how anyone in their right mind would think Frankenstein OS is a good dev platform.
> It's a binary-identical linux userspace, and it (appears as if it) has the same linux kernel.
I don't think so (GPL is the main reason why I doubt it because everyone would consider that to be a derivative work of Linux). It looks like they're doing something FreeBSD has had for 10+ years and SmartOS has had for 5+ years. You emulate the syscalls. It's a very simple idea and devilishly hard to get right.
What I'm curious about: Isn't Oracle Linux mostly a joke of a copy-cat distribution? Apart from them acquiring Ksplice and possibly delaying ksplice-like functionality in SuSe and RedHat a couple of years, isn't Oracle Linux mostly just an excuse to drain Oracle users for OS license money for those that don't want to be constrained by limited hardware support in Solaris?
I guess what I'm asking, why would Microsoft want this person? (No offence intended to anyone involved)
> Isn't Oracle Linux mostly a joke of a copy-cat distribution?
Yes, it's RHEL with the serial numbers filed off.
> isn't Oracle Linux mostly just an excuse to drain Oracle users for OS license money
It's:
1/ revenge on Red Hat for buying JBoss when Larry wanted it.
2/ part of Oracle's vertical integration story.
Oracle Linux sales reps will tell you Oracle DB isn't fully supported on RHEL (i.e. they reserve the right to force you to reproduce production support problems on a rebuilt platform) and Oracle have been trailing certification on the last couple of releases of the DB on RHEL vs. OEL.
I imagine the end game Oracle are hoping for is undercutting Red Hat until they can run a hostile takeover, then shut down either the JBoss or WebLogic product lines, and generally do unto Linux what they've been doing to MySQL.
my 5c as an ex-oracle employee (disclaimer: I worked in Linux Support and Ksplice tools dev):
- Oracle Linux is a base copy of Redhat plus additional things to integrate better with Oracle products, it was a bad move against Redhat, but beneficial for Oracle purposes.
- Ksplice: most of people misunderstood the real work of it. Don't blame Oracle for acquire it, somebody sell it and it was always a private technology meaning 'patents involved'. Note that the real work happens when making "the patches" and making sure they are backward compatible, including different architectures. So the real purpose was to provide a service that nobody could provide before. note: As of today you can use Ksplice for free in Debian, Ubuntu and Fedora.
- Why Microsoft would want Wim ?, In my opinion because they need someone who had successfully built Linux into a Line of Business, from a business perspective it sounds a good deal. As of today I don't think Oracle truly supports Open Source, not sure what are the plans for Wim on that area at Microsoft.
> As of today I don't think Oracle truly supports Open Source, not sure what are the plans for Wim on that area at Microsoft.
Considering their frankly disgusting actions with OpenSolaris, they actively hate free software. In fact, they invented a new word: re-proprietrisation.
If you use their "Unbreakable Enterprise Kernel", it's actually a totally different (and much newer) kernel version than the one that ships with the equivalent RHEL release. Interestingly, they also provide it across OEL versions, so you can use the more modern kernel with the horribly outdated RHEL userland of your choice.
For instance, UEK R4 is based on the 4.1.12 Linux kernel. RHEL 7 ships with 3.10.0.
It still makes me nauseous to deal with Oracle, but providing support for a relatively modern kernel release is a step in the right direction. Now if they could shorten RHEL's time between major releases and get them out on a consistent timeframe, that would be another big step in the right direction. Of course then you're practically shipping Ubuntu.
It would be amazing to see a Microsoft GNU/Linux distro in the future. To be honest it wouldn't exactly be hard for Microsoft to do. Take a Debian base, add whatever bits they need to make sure it works nicely in Azure, have an official Microsoft apt repo and they are done.
I actually think it will happen. It makes sense for Microsoft to have an official Linux distro that they can offer true support for.
The current iteration of Windows 10 tries to abstract away hardware under a higher level "Windows" layer and mostly get rid of variation between windows for embedded, mobile, and Intel platforms. With the new Bash/Ubuntu feature, I think Windows is moving on to abstract away the operating system.
My wild-ass prediction for a Microsoft Linux distribution is one in which Microsoft Windows replaces X-windows. Wayland is already trying to do this because of the perceived security vulnerabilities of X-windows' architecture. In a limited sense, this is sort of an old idea when it comes to nix: there were paid GUI products for layering on top of nix thirty years ago, e.g. Open Look and Motif.
That'd be nice. No more dual booting presuming they bring DirectX along. It seems far of though. Microsoft would have to give up a lot of lower level control.
> If anything, they'd just make NT fully POSIX-compliant.
They did this with the POSIX subsystem, and the ability to do this was in mind very early in NT history. They ripped it out in Windows 8, IIRC. I guess it's back.
My prediction is that they'll continue to work on the recently announced "Windows Subsystem for Linux"[1] and attempt to cover a larger and larger portion of the Linux ABI. If people can develop, and run the majority of Linux programs on Windows, and those programs are competitive in performance, and those programs have MS support backing, then they have a huge win in the enterprise space.
Personally, I'm happy to keep providing whatever mix of OS services customers request, but I'm very interested in where this could be going
I think this is an amazing move for Microsoft. If they get the kinks worked out and get it working well on Windows Server, they'll have one platform that can run pretty much all the major enterprise software without virtualization. That's great; it's a way for Linux shops to convert to Windows Server without having to fully commit right away, because they'll still be able to quite easily run their existing stack and leverage their developers who are used to Linux tooling.
Why is that good though; why would Linux shops want to convert? In the space I work in companies (including enterprises) like the fact they can do whatever with the source code and that they can audit whatever part they want. MS has that too but not for many clients and you cannot do whatever with it. The freedom in Linux means a lot to a lot of people even if you maybe could get a bit more perf or support from a paid platform. We have people working with VS (a few only) and because of our tooling it works smoothly anyway. I have no clue why you would switch to something paid and closed...
This time around we have a decade plus of virtualization experience and specialized silicon in many (most?) modern processors like Intel VT-i/x/d and AMD-V. We no longer have to try to emulate kernel code or implement interfaces like POSIX or WINE on top of other kernels that inevitably lead to impedance mismatches between very different archirectures.
For example, modern virtual machine software like Parallels and VMWare Workstation allow for "unity" modes where the guest OS window manager is hijacked so that each window can be rendered onto the host without the rest of the guest desktop interface. If you're running the guest kernel "side by side" with the host as a virtual machine, you can focus on drivers that bridge the two operating systems (filesystem, network, window manager, etc.) and make it seamless instead of trying to shoehorn a low level emulated interface into a system that may not be ergonomic for that task.
Running 64bit Linux elf binaries on the NT kernel, side-by-side with windows binaries is quite different from WSUS -- at least what experience I had with WSUS. It's more like Wine (a port of the win32 api to Linux (and BSD/OS X?) that allows running unmodified windows executables on Linux.
Being able to "apt install redis" on windows, and get the redis-build that Ubuntu ships, and be able to use it locally is a pretty big deal, IMNHO.
Windows [kernel] is a very advanced operating system with an incredible wide support for third party drivers. I think the prediction would be more oriented to running them side by side.
There's also a decent monoculture concern. Everyone running off Linux isn't necessarily really a good thing. We should strive to have multiple independently developed solutions to computing problems.
They've done it before, when they replaced the foundation under DOS/Win3/Win95/Win98/WinMe line with WinNT, and Apple did it when they replaced the foundation under MacOS 1-9 with NextStep and called in OS X.
Apple's non-unix line endings (CR) changed to LF, their non-unix path delimiter (:) changed to /, and they were suddenly a major force among non-Apple-targeting developers who had always derided the Mac as a "toy" prior to OS X.
If MS has similar ambitions, they could do again what both they and Apple have done before: toss away millions of lines of kernel code.
Both Windows 9x and classic Mac OS were fundamentally missing features relative to the alternatives at the time, though-- especially classic Mac OS, which (as of OS 9) still lacked proper preemptive multitasking and protected memory (for those who don't remember that era, this was a huge disadvantage in terms of stability and reliability, even compared to 95/98/Me which were roughly contemporaneous).
Current-generation Windows doesn't really have any such flaws-- the underlying kernel seems to be pretty sound, the hardware driver ecosystem around it is the most complete and robust of any mainstream OS, and they seem to be showing now that they can adapt to developer demands without doing something drastic. There's no real compelling reason that I can see for Microsoft to make a transition to Linux (or BSD, if the GPL is too toxic).
In both the pre-WinNT and pre-OS X cases, the OS they discarded was seriously dated and lacking important functionality. Whether you like Windows or not, it's neither of those things. It also has spectacular backwards compatibility that would very tough to lose.
I recall reading somewhere (can't find it for beans now) that the Windows kernel was a huge mess codewise since many of the original developers have moved on and poor to nonexistent documentation was left, meaning that the modern employees had to basically reverse engineer a lot of the code.
Radio Shack used to sell TRS-80 Model 16 microcomputers running Xenix in their stores to business customers. At least up until the mid-1990s, many local Radio Shack stores were using these machines as their point-of-sale, inventory and financial systems. Xenix in general was the most widely used Unix in terms of installs into the late 1980s.
>Xenix in general was the most widely used Unix in terms of installs into the late 1980s.
Interesting, didn't know that ... Because PC hardware was cheaper and more ubiquitous, could be one reason, maybe.
On a related note, UNIX became big in India (people used to call it a Unix country) in the mid or late 1980's, per what I've read, because of a government decision on computerization. The Rangarajan Committee (he later became the Governor of the Reserve Bank of India, which is like the US's Federal Reserve) recommended use of UNIX as the operating system for nationalized banks' back-office automation, because of its multi-user and multi-tasking nature (and possibly / likely because it was cheaper than mainframes, maybe even because less proprietary).
UNIX usage in India took off due to that (thousands and thousands of bank branches in India), and hence many devs and admins developed Unix skills ... I was part of that trend, and benefited from it a lot, professionally, in terms of learning ...
My first Unix was some PC-based clone, the name of which I cannot remember now, but was also a while before Linux. Not sure whether it was before Xenix or not, though I used Xenix (SCO Xenix at the time, IIRC, or was it SCO Unix) a year or so later.
First Unix's name may have started with E-something. Everex? Not sure.
I think I also got to use Interactive Systems' PC Unix (PC-IX?) around the same time as the first one.
Soon after, moved to Unix on higher Motorola 680x0 processor based minicomputers, and even a multi-CPU SMP RISC Unix (from MIPS) for a while.
Later SVR3 and SVR4. Didn't like 4 though. By then (as I learned later) the UNIX wars had started, and it seemed to be a clunky hybrid of features from the SVR3 and BSD camps. Later worked a good amount on HP-UX too, on their PA-RISC business servers. Liked HP-UX. Pretty stable and powerful OS with a good patch management system and many other features and tools (HP PRM, Glance Plus, Ignite, MC/ServiceGuard, etc.).
The hp-ux mailing list was good too - very friendly and helpful people, I helped out others too.
Never got to work on Solaris, though, which I regret.
I remember I first wrote my selpg utility [1] on a HP-UX box (for a large corp customer, at their request), and then released it on the HP-UX mailing list. Some people appreciated it.
I did Xenix, DG/UX, Aix, got my first Linux distribution in the form of Slackware 2.0.
Tried to get Coherent before, but could not afford it.
Afterwards Red-Hat, Mandrake and SuSE were my favourite ones until I ended up with Ubuntu.
At work I also got to use Solaris and HP-UX.
My first experience with containers was with HP-UX vaults.
However I never managed to leave the worlds of Amiga, Windows and BeOS behind. Specially in terms of Demoscene, IDEs culture, graphics and game coding.
Didn't know about HP-UX vaults. Maybe it came after I stopped using HP-UX, or I just missed it.
Edit: Just googled, it looks like vaults came in either HP-UX 10.24 or 11.x. Think I used HP-UX versions 9.x and upto 10.20.
You're lucky to have worked on Amiga [1]. Read a good amount about it, including its power and performance, multi-tasking, in BYTE etc., earlier, along with the Atari ST, though never got to use either.
(Still remember an Atari ST ad, probably a big deal at the time: "A megabyte of RAM for $x99!"). And where are we now in terms of RAM ...
[1] And had read about Carl Sassenrath, wow. Did all that stuff for the Amiga, and then goes and creates REBOL, maybe single-handedly (?), with the language, and the libs, and the GUI.
> It would be amazing to see a Microsoft GNU/Linux distro in the future.
Except it would almost certainly be proprietary and would take away your freedoms. I don't understand why everyone is suddenly giddy about the "new Microsoft". They haven't embraced free software, they've just released a few bits as free software while still keeping the conglomeration proprietary.
> What would be the point of using microsoft's linux?
Azure. It will be like Amazon Linux, which is based on Fedora if I'm correct. I wonder what Microsoft will use, and if they choose Debian, if the Debian project will profit from it.
Furthermore, they will want better support for Ubuntu on Windows. If people don't need an Ubuntu machine to run Linux, without having to mess with Virtualbox, that will keep more people on Windows, well I guess that's what they hope.
They seem to move into a new world, where they are no longer the one superpower. SQL Server can run on Linux, just another example.
They could use it as stepping stone for businesses heavily invested on Linux or already having a mix of Linux and Windows: "we guarantee this is the best Linux distribution for compatibility with MS tech (Msad, powershell, Azure, mono etc etc)".
I don't know how appealing that is. Even from a GUI perspective, moving from Linux to Windows is such a huge step backwards.
I have to keep an eye on a whole bunch of things at work so I only run a Windows box for one or two pieces of software. This box takes up less than 25% of my screen real estate.
Every window on the Linux box is automatically placed and I usually have to put in literally no effort. On the Windows box every window is such a pain to manage. Some applications make an effort to remember where their windows were placed, but this is usually broken in some way and still does not allow me quickly switch layouts like on Linux.
The same as using Red Hat's Linux. You get a well supported environment. If you are a Linux shop but want to run on Azure then it makes sense, to me anyway, to go with the best supported OS on that platform.
I love Linux and while I also have some nagging negative thoughts about Microsoft getting so cosy with the Linux world, I also can't pretend I wouldn't be super excited to run a Microsoft Linux on my dev machine and then push to a Microsoft Linux on my Azure instances.
I don't think there is a widespread "nagging negative thoughts" about Microsoft working with Linux. That isn't where the skepticism comes from.
Azure, like all other cloud providers, fully supports and functions with all mainstream Linux distros (indeed, the Linux kernel includes a large number of kernel contributions from Microsoft, particularly around hypervisor support). When you conjecture about some synergy between your dev machine and Azure cloud machines, it makes me wonder if you are just extrapolating based on some assumptions of the platform, or if you have a real working knowledge of it.
All of this conjecture just seems bizarre. It's good that Microsoft is getting more knowledgeable about other platforms, but there is nothing at all exciting about some conceptual Microsoft Linux.
I come from the Microsoft of the 90s where they followed their Embrace, Extend, Extinguish methodology. My "nagging negative thoughts" all stem from those memories.
As for dev machine/cloud machine conjecture, I just mean I would like to have a consistent experience between what I develop on and what I deploy too. It isn't a huge deal, just nice to have more than anything.
Not a huge deal, but you'd be "super excited" about it?
I develop on Windows, mostly. I deploy to Ubuntu, Redhat, Amazon's AMI, among others. I literally will repeat that you sound like you know nothing about Linux, cloud providers, or Microsoft's play in this market.
>can't pretend I wouldn't be super excited to run a Microsoft Linux on my dev machine
Seeing as MS is basically a branch of the NSA I'm not excited about that at all. I might be slightly excited if MS went open source and allowed people to include their tools in other distros, but the NSA would never allow that.
This. I would be very interested in running Microsoft Linux instead of Ubuntu on a physical dev box. With .NET Core, ASP.NET, etc. having an MS proper Linux would be great.
Something along the lines of "We officially support development with ASP.NET, .NET Core, Mono, etc. on Microsoft Linux for deployment to Azure Microsoft Linux instances".
What you're describing will never happen. MS wants to keep .NET/etc development easiest on Windows. They have no incentive or plans to deliver the same support for developers on Linux as they do for devs on Windows.
Any true "linux distro" released by MS will have gimped out tools. If they ship windows with a Linux ABI ("Ubuntu + Windows") so you have MS support, then it's never going to be proper Linux.
I don't see how anything MS is doing really helps Linux. If they were really pro-Linux they'd make a commitment to supporting it 100% by making 100% of their development software compatible with Linux.
Just more extending for the purpose of extinguishing. I have no reason to believe otherwise because MS has not inspired confidence in me. All the tools they've open sourced or released on Linux are half assed. A billion dollar company like MS can make good software for Linux that isn't gimped, they just choose not to do so because they prefer that Windows remains a more viable platform for people who use their tools.
Your last paragraph betrays that you completely misunderstand the Linux platform, cloud platforms, or how Microsoft can succeed. What you described would literally be the death knell for all of Microsoft's recent initiatives, and goes in exactly the opposite direction of their movements.
How so? Microsoft want to support everything they can on Azure. That is just sensible business IMHO.
However there are businesses out there who like to work in a single vendor system as much as they can. I have no doubt that Microsoft will come out with their own Linux distro in the next 2-3 years. They don't need too, but they also didn't need to do lots of the things they have done recently.
Your argument is that Microsoft would introduce their own distro (a "proper" Microsoft Linux), and then declare their Linux-related ventures only "supported" on that Linux.
I feel like I've accidentally stumbled upon some internal discussion group of Microsoft's where very low level employees who completely misunderstand the market give their Microsoft-centric view of the world.
Just to share one example - visual studio has an amazing developer experience for exploring and debugging node apps. I wonder if there's anything else out there which comes close..?
> Taking back market share from Mac users. Especially among developers.
You're assuming that if they do release a MS Linux it would be geared towards the desktop which is ludicrous. I would love if they actually replaced the Windows code base for a Unix-derived one (it doesn't have to be Linux) but that is just not going to happen. It would only make it easier for Big Software to be ported to Linux and the Mac, with Windows and Microsoft losing its competitive advantage. Not going to happen.
The same as using a lot of the other Microsoft stuff: you can pay and have someone fix $problem on a deterministic timescale. You can upgrade without having to fear your production system will come crashing down.
Specially back than, of course, but back in the day, we wouldnt be able to afford for a Solaris and consulting(i didnt know how to manage one) giving our small size, and, i dont know how it was in the US, but in Brazil it was something really expensive.
Im saying this more in the light of what Linux was considered back then, and what it is right now.. In that time a OS maded by a "bunch of hippies" were something people used to laugh about, and people that use it like me were also mocked because of it, because of the seroius money and industry involved in other solutions.. while Linux was the OS of the "looser".
We live in a completely different world now, thanks specially to Linus, Stallman, and all the other people we wouldnt be able to name.
Sorry to be such a buzzkill, but even former oracle devs have told me software goes to oracle to die. Excuse me if I dont care that horrible company a got a guy from slightly less horrible company b because of his knowledge in a field company b wants to embrace only because they are recognizing it is much more of a threat than ever before (largely because of their failures in the first place). So while everyone is drinking the "ms is open sourcing everything" coolaid, I'm still sipping on "lessons from the 90s tea".
Its funny that my first reaction to the title was: Ugh he comes from Oracle, he is a leach that will try to destroy everything that is good! Then I read the article and it actually looks like he is a Open Source supporter etc.
With cores galore, there is no reason that an OS couldn't be developed that couldn't do high performance Linux + Windows binary compatible program execution virtually (ha) seamlessly.
Microsoft could be the perfect company to do this... and sweep up OSX compatibility at the same time. DOSBox/Bochs can handle legacy emulation...
But they're too stupid to do that, as in ignorance...
Their fundamental problem is (which they realize pretty well i seems) that they have lost developer's mind share. .NET may be a fine ecosystem and C# may be a great language but in all practical senses it is Windows-only. All these Mono/open source CLR games are not even the slightest blip on the radar for a practical day-to-day backend operations running cross platform (which is mostly Linux, but Windows as well).
MS is lagging behind the Java ecosystem by 20 years. It's fun to watch them scramble and try this and that, but I suspect that the train has left the station long ago.
I think Oracle Linux has been a joke. I don't know anyone in their right mind using that. RH or CentOS, yes. Oracle Linux? Most IT professionals will pay extra to have nothing to do with Oracle. Heck, I am considering risking moving to OpenJDK, just so I have nothing of Oracle in sight.