Hacker Newsnew | past | comments | ask | show | jobs | submit | bithush's commentslogin

Yes because that was an incredible purchase for Microsoft!


Well, yes and no. I think the plan was to stop mismanagement after the purchase, but someone forgot to execute that part.


I think it was more Ballmer not having a clue about mobile. When I first saw his idiotic response to the initial iPhone I knew he would fail hard in the mobile space. Even today I think his idea of a smart phone is a Windows Mobile 6 device.


> 1. Open Explorer where you downloaded youtube-dl

Already too complicated for my parents. I have shown my mother how to open her downloads folder for over a decade and she still can't do it. Sigh.


It is wasting a lot of time with the pointless bool assignments. See my post below.


But then I'm not running the same code as either the parent of my comment, or the article, and the benchmark doesn't hold. It's how fast can my CPU run the same code vs theres. I could make it faster again by precomputing a table and doing a lookup but that defies the point!


Very good point. I was just surprised how much that simple bool assignment slowed things down so massively.


I started at 10.853, and with very little effort brought it down to 0.003

The slowdown isn't in assigning the bool; If you pass in 10000000 into that function, it's going to get isPrime set to true on the first iteration, but if you early out, you save all of those values. Again, this isn't really the point of the exercise, it's supposed to be comparing the performance of the same piece of code ran on different hardware.

https://gist.github.com/anonymous/c6d5bae04334cbc7ef9583ebb7...


I ran the C++ version on my i7-2640M laptop (ThinkPad T420s) and got 20.394s

Interestingly it is almost identical to his 2-generation newer MacBook Pro.

Edit: and if I fix isPrime to not waste using the prime bool I get 1.862s

Edit 2: and with my horrible Java copy&paste version[0] I get 2.050s

Edit 3: ok final edit but doing squareroot(n)+1 you speed it up to 0.012s for C++ and 0.019ms for Java. Fast enough for me, good night :)

[0] https://gist.github.com/anonymous/0709e1807f57b686683f3e5f7b...


Google Cache as the Debian tracker is getting hit hard https://webcache.googleusercontent.com/search?q=cache:UoVCY4...

Original link is to post #84 in the conversation.


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.


> perceived security vulnerabilities of X-windows' architecture.

I wouldn't really call them perceived, they're really really major. Sharing uncleared video memory across processes can expose a lot.


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.


What would they gain though? NT is a pretty good kernel with very broad hardware support.

If anything, they'd just make NT fully POSIX-compliant. They'd get the same benefit with a fraction of the effort of porting Windows-the-GUI to Linux.


> 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.


> What would they gain?

Long term deprecation of their work force? Reduction in operating costs?

Why pay people to support / extend a kernel / hardware drivers when Linus will do it for free?


Was Motif paid?

Edit: Checked: https://en.wikipedia.org/wiki/Motif_(software)

According to that article, it was, initially. Didn't know.


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

[1]: https://blogs.windows.com/buildingapps/2016/03/30/run-bash-o...


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...


It sounds like a rehash of Windows Services for Unix: https://en.wikipedia.org/wiki/Windows_Services_for_UNIX

What's different this time?

My prediction is that it'll languish in obscurity, rarely used, and eventually be discontinued.


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.


> What's different this time?

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.


WSUS is (conventionally) something different when talking about Microsoft - https://en.wikipedia.org/wiki/Windows_Server_Update_Services - whereas you clearly mean ${whatever Interix ended up renamed to}.


Yeah, according to Wikipedia, the abbriviation(s) I was looking for was: "Windows Services for UNIX (SFU)".


I posted my prediction over here:

https://news.ycombinator.com/item?id=11388418

> I think eventually, we'll see Windows transform into a Linux distro with a Windows UI.


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.


BSDs and Illumos. Both groups respect your freedom and are gratis.


Yeah they wouldn't just toss away millions of lines of kernel code.


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.


> Apple's non-unix line endings (CR) changed to LF...

That was because with OS X, they switched from a Mac OS subsystem to a Unix subsystem


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.

Take this with a grain of salt, of course.


There's been a rather effective cleanup effort a few years ago: http://windows-now.com/blogs/robert/mark-russinovich-explain...


This isn't super unusual for very old code.


Here are some comments from the times of the source code leak:

http://www.kuro5hin.org/story/2004/2/15/71552/7795

I'd say, the user experience has improved since then overall (meaning the code quality, too, in one of the most practical senses).


Somebody did an actual anaysis of that leak, and the code was considered high quality overall.

You get dodgy comments in the Linux kernel to.



They're already done something not exactly unlike that, albeit not for general use: http://www.theregister.co.uk/2016/03/09/microsoft_sonic_debi...


Kind of. SONIC is very specialised. It isn't a desktop or server version of Linux for general purpose applications.

Also it just happens to run on Debian.



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, a couple of years before GNU/Linux was even a thing.


Cool.

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.

[1] http://jugad2.blogspot.in/2014/09/my-ibm-developerworks-arti...

http://jugad2.blogspot.in/2014/10/print-selected-text-pages-...

Good fun doing a lot of systems stuff on those machines for some years.


Thanks for sharing.

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.


Thanks for sharing too - interesting.

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.

Good stuff.

Edit: typo.


"Santa Cruz Operation" yup, that brings back memories...


Yes, MS has been involved with Unix from much before the recent moves. Possibly a less known fact to some.


They even shipped IE for Solaris in the 90s!

https://en.wikipedia.org/wiki/Internet_Explorer_for_UNIX


> 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?


> 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.


Amazon Linux is based of CentOS 5.


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.


I think most businesses won't ever consider Linux from a desktop perspective, we are talking servers and backoffice.


You can have a tiling window manager under windows as well, like HashTWM https://github.com/ZaneA/HashTWM or AquaSnap http://www.nurgo-software.com/products/aquasnap . Window management under windows can be just about the same as it is under 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.


I apologise for being excited about something that interests me.


>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.


Which is why http://github.com/microsoft (and dotnet, and azure) doesn't exist, right?


"X has liberated a small amount of proprietary software, therefore they are good". No, they're not.


Taking back market share from Mac users. Especially among developers.


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".


>having an MS proper Linux would be great.

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.


I never said Microsoft would only support their Linux. Just that it would be an option and that some businesses would be interested in it.

I am assuming you believe Microsoft will not be venturing into the world of building their own Linux distribution?


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.


> you can pay and have someone fix $problem on a deterministic timescale

Really? When did MS start fixing bugs for their paying customers in a deterministic timescale?

The point about upgrades may be good, but MS has started breaking things on update recently too.


For years.

You open up a crit sit that is tagged as a product defect and they will turn fixes around quickly.

If you are strategic to them, they'll fly in people.


Huh, I've done both of those with Linux for more than a decade. Can you name some features more unique to Microsoft?


Licensing on HyperV.

Red Hat subscriptions require that you license by socket, effectively doubling the cost for licensing on a per server basis.

If you were using Microsoft Linux, you could potentially ditch VMWare and RHEL costs.


Running it on Azure?


Woz seems to be such a gentle and kind guy who just loves tech and gadgets. I don't think I have ever read of anyone having a problem with him. Pretty interesting as most people at such a high level in any sector (not just IT) are usually known to be assholes.


I've always felt that if people idolized Woz more than Jobs, the world would be a better place. That's probably just my own tinkerer/engineer bias coming to light though.


You're not alone. Woz seems like a really great guy. He has a big heart. When I think of what a true hacker is I think of Woz. A person who loves tech and to tinker but for the better for others and not just himself.


You don't idolize when you know enough to understand what Wozniak does. Jobs appeals to the religious side in the average people.


Does anyone know if this will allow me to run GBD in tui mode on Windows?


I wonder what odds I would get on MS bringing the UWP to OS X and Linux and maybe even Android?


Xamarin already has tools to create Mac apps from .Net/MonoDevelop.

The work has been started - it's just a matter of time.


Indeed. To be honest I would be shocked if Microsoft don't make the Universal Windows Platform a true Universal App Platform available on as many platforms as possible.

It seems to be the way they are going. Then every MS product will become a Universal App and Microsoft can deliver their software anywhere the UWP/UAP is available.


I think you underestimate how much can be made from arms trafficking!


Clearly the US makes a massive amount of cash selling weapons; yes, US is not an "arms dealer" - but likely comparable.


> US is not an "arms dealer"

> the US makes a massive amount of cash selling weapons

DOES NOT COMPUTE


It is semantics, illegal arms trafficking is a subset of the global market for arms.

https://en.m.wikipedia.org/wiki/Arms_trafficking


nxzero said nothing about legality.


Given he's called a "criminal kingpin" and compared to Viktor Bout, the merchant of death, pretty safe to assume he wasn't selling weapons legally.


I quoted you talking about the U.S.!


Then, I don't understand what you're comment means. Happy to respond again if you'd clarify want you intended.


'Arms dealer': one who sells arms. The point he is making is that, regardless of what is considered legitimate, both this individual and the U.S. government are, by definition, arms dealers.

Or at least that the U.S. is an arms dealer.


No. 'Arms dealer' refers to illegal arms dealers.

https://en.wikipedia.org/wiki/Arms_trafficking#Notable_arms_...


Agree, US is not a "dealer" they're an "exporter" -- and no one selling weapons for a government would ever offically refer to themselves as an arms dealer.


'Arms dealer' = illegal arms trafficker


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: