Live data from Hacker News

Microsoft open-sources Graph Engine

graphengine.io

161–170 of 192 posts

Re: Microsoft open-sources Graph Engine

#161

Earlier quoted context omitted.

> At this rate, are we going to see Windows open-sourced? Doubt it. In my personal opinion, they're just playing catch up and trying to grab a piece of the pie in the Server space that opensource have been gobbling up. Linux got web server, cloud, scientific computing, big data (hadoop, spark, etc..), etc... I believe they're releasing these open source so they can get people on their Azure cloud and get people into…

> I do not think they will give up Window for free Win 10 was free.

Win 10 was free.

It was a time limited free upgrade for people who already had a valid windows license. I don't think it it was free.

Re: Microsoft open-sources Graph Engine

#162

Microsoft of 2017 makes me forget about Microsoft of 1997. It's insane how a shakeup of CEO and new cultural shift can seemingly add another major boost to it's brand. I welcome open source, eventually, I believe that it will eat commercial software, if the right economic incentives are in place. Microsoft may be signaling this to the market.

everything you see changed in Microsoft was done by the people, all people, those that work there and the community as well, they pushed things, the culture and all; those people working there are just people like the rest of the world; outside it was known the company official position through their executive voices but the people working there and the community in general helped tremendously steering the direction -- and of course the company desire to survive, to stay alive. it was slow, it is still slow, it is a tug war but it is happening :)

Re: Microsoft open-sources Graph Engine

#163
post #161

Earlier quoted context omitted.

> I do not think they will give up Window for free Win 10 was free.

Win 10 was free. It was a time limited free upgrade for people who already had a valid windows license. I don't think it it was free.

I had the same misunderstanding as well. However, I think they ought keep Windows 10 Insider program available to everyone free of cost and without having to pay for a license. I feel like this will fall on deaf ears though. Microsoft watchers say Windows already treats stable as a testbed for the enterprise users who withhold updates for n days. So, a new update shows up without much testing, breaks a bunch of stuff on consumer hardware, Microsoft finds out thanks to logs or twitter chatter and fixes it, and everyone including enterprise hardware take the updates.

I think eventually Windows being source available is possible but I doubt it will be free in a meaningful way.

Re: Microsoft open-sources Graph Engine

#164

Earlier quoted context omitted.

That's great! You should definitely add that to the docs. I just went to the same page and was extremely disappointed when I saw that it required Windows. A benchmark comparing it with similar solutions (esp. Neo4j) would be much welcome.

Sure we'll definitely update the docs! Or better to work out one way to put the docs on GitHub and keep it synchronized with the site (they're markdown anyway)

While you are at it, can you guys also do a feature comparison between Graph Engine vs Neo4J vs JanusGraph (vs Apache Giraph)?

Thanks

Re: Microsoft open-sources Graph Engine

#165
post #101

Earlier quoted context omitted.

> The fact that that requires implementing Linux kernel functionality is simply an artifact of the lack of a more modular design (or really any up front design) in Linux. Curiously the recommended syscall mechanism on x86 is by calling __kernel_vsyscall in the vDSO. If everybody did that then you could just make your own loader with your own custom vDSO that could implement the syscalls in userspace. However sometime…

vDSO maintainer here. > Curiously the recommended syscall mechanism on x86 is by calling __kernel_vsyscall in the vDSO. There are times when this doesn't work. Syscall resumption and cancellation come to mind. Also, __kernel_vsyscall is a hack to make fast syscalls work on the awful 32-bit x86 architecture, not a nice feature. > it would have been fantastic if calling through the vDSO had simply been the only documen…

> There are times when this doesn't work. Syscall resumption and cancellation come to mind. Also, __kernel_vsyscall is a hack to make fast syscalls work on the awful 32-bit x86 architecture, not a nice feature.

It's a pretty nice feature in the context of being able to make compatibility layers on other OS'ses in userspace which was the discussion here. Or would be if it was always used. Why doesn't it work for syscall resumption and cancellation?

> There is no __kernel_vsyscall or similar feature on x86_64.

Yes that was exactly what I was complaining about.

> You can on Linux using seccomp.

Yes but why would I want to make a linux compatibility layer on linux?

Re: Microsoft open-sources Graph Engine

#166
post #97

Earlier quoted context omitted.

If only. sudo, as configured out-of-the-box on Ubuntu, gets out of your way and lets you work (Except if you haven't properly authenticated in the last 15 minutes); polkit is similarly out-of-your-way. Sudo is also (relatively) easy to configure: "this command line can be run under sudo by anybody", "this command must not be run under sudo even if they know their password", etc. UAC is always-in-your-face about every…

While what you say was true about Vista, in Windows 7, 8, 8.1, and 10 UAC prompts are suppressed when they're the direct result of user interactions within the OS itself. Each OS reduced the number of UAC prompts a user experiences.

They also broke the security on the default configuration because now you can just interact with the system components to bypass UAC, see e.g. [0]. This is officially not a security vulnerability because UAC isn't actually a security barrier unless you set it to "Always prompt", but just a feature to make applications play nice. But note that it's not on "Always prompt" by default...

[0] https://github.com/hfiref0x/UACME

Re: Microsoft open-sources Graph Engine

#167
post #46

Earlier quoted context omitted.

It's not like they're doing it out of the goodness of their heart. They don't have a choice, they were becoming irrelevant, and now they're playing catch up to try to bring back all the devs to their platform.

MS was definitely not becoming irrelevant. The vast majority of enterprise software is written in .NET and the MS stack runs millions of businesses. They are evolving the framework to be faster and cross-platform based on external pressures but in the last few years they have managed to overtake several of the other language/framework options to again be one of the top choices for new projects. They aren't catching u…

"""The vast majority of enterprise software is written in .NET"""

I'm only familiar with one domain of enterprise software and that's ERP software. I'd like to see a %age number for "vast majority" but let's just say I'm struggling to think of ERP software based on the .NET stack outside of the Microsoft products (which are not exactly a success story). SAP is based on Java/ABAP, Oracle is based on Java, Salesforce is mostly Java (and those already cover >50% of the worldwide market). I think Infor uses both Java and .NET but maybe someone else can chime in. About the only .NET shop I can think of is IFS.

Zero of the FLOSS ERPs that I know use .NET for obvious reasons (mostly Java as well, some Python and the occasional Perl etc.). Maybe some will in the future but who knows. I'd also argue that most new ERP will likely be written with a "web-first" mindset which might mean .NET but is more likely to mean more traditional web stacks (imo)

Microsoft products are certainly used all over the place (most notably SQL Server in SAP products) but I think for this sub domain Java is king. Since ERP is a decent chunk of enterprise software I don't think it's likely that a "vast majority" of enterprise software is indeed based on the .NET stack.

Re: Microsoft open-sources Graph Engine

#168

Earlier quoted context omitted.

> However UWP can't listen for changes in those same files, so it's a real PITA. It can via the ContentChanged event see this example: http://stackoverflow.com/questions/39737147/how-can-i-watch-... > Give it a try. You can't send requests to `localhost` or `127.0.0.1` at all. Luckily getting the local IP address is easy enough from UWP: http://stackoverflow.com/questions/33770429/how-do-i-find-th... That will work s…

Hey! I didn't implement the loopback restriction in WinRT, but I sure was one of the PMs in the network team when it happened. As it turns out, pretty much everyone on the thread is right. Localhost is special on a network: it's the only machine that that you're guaranteed actually exists, and is therefore qualified as a high-value target for the bad guys. I hadn't heard about the printer creating a local HTTP server…

> We decided against a checkbox because users already have too many checkboxes, and mostly don't understand any of them.

How did you decide that it was too many? Also, if users don't understand any of them, what's the big deal about one more checkbox?

This was a bad decision IMO and it's the kind of thing that is causing nobody to use UWP. There are so many stories out there of people trying to use UWP for their project and then turning back when they realize how restricted the sandbox is.

Honestly, doesn't it seem a bit absurd that UWP apps can talk to anything else on my network except for Win32 processes on my own computer?

If Windows Phone were a thing, I'd probably be building UWP apps already. Mobile devices are the only place where I accept these types of restrictions, but it's mostly because I have no choice. If Microsoft comes out with a phone that can run Win32 apps, I'd switch to that in a heartbeat because then I could get full Chrome with extensions and I'd be able to do things like run uBlock, quick javascript switcher and all my other favorite extensions. (Yay freedom!)

Re: Microsoft open-sources Graph Engine

#169

Earlier quoted context omitted.

> They aren't going to just dump it all because you and a few others find the priviledge model inconvenient. > But, no, it won't allow unchecked IPC... And I'm not asking for either. How about just giving the user a simple permission like they have for allowing UWP apps to access your Microphone, Camera, Bluetooth, etc? Seems a little silly that my UWP app can access everything on my network except for my own darn co…

> Seems a little silly that my UWP app can access everything on my network except for my own darn computer via localhost, doesn't it? Unfortunately for historical reasons localhost (127.0.0.1) are treated almost like a named pipe. Meaning a LOT of Win32 (and UNIX-style) applications treat data over that path as "trusted." For one specific example, I've used a HP driver that installs a local webserver for no good reas…

One of the programs that does this is dnscache. It wouldnt be all that bad if localhost wasnt the actual named pipe instead of virtual network interface :( - you cant filter localhost traffic with a firewall in windows. This means everything with localhost access can speak to the internet (dns pipe) bypassing any firewall rules you might set.

Re: Microsoft open-sources Graph Engine

#170

Earlier quoted context omitted.

> However UWP can't listen for changes in those same files, so it's a real PITA. It can via the ContentChanged event see this example: http://stackoverflow.com/questions/39737147/how-can-i-watch-... > Give it a try. You can't send requests to `localhost` or `127.0.0.1` at all. Luckily getting the local IP address is easy enough from UWP: http://stackoverflow.com/questions/33770429/how-do-i-find-th... That will work s…

Hey! I didn't implement the loopback restriction in WinRT, but I sure was one of the PMs in the network team when it happened. As it turns out, pretty much everyone on the thread is right. Localhost is special on a network: it's the only machine that that you're guaranteed actually exists, and is therefore qualified as a high-value target for the bad guys. I hadn't heard about the printer creating a local HTTP server…

How about approaching this from the other end - reengineer windows filtering to allow control of localhost traffic.
Post reply on HN