Who is going to Build 2016?

• I am not going for this one and I am not streaming, but some one here may be interested.

• @Nagesh I'll be streaming it for sure. I'm most interested in seeing if there's any new hololens stuff on the way. Otherwise, I don't have any idea what they'll announce. I'm hoping they'll do some nice things with Xamarin, .NET Core, and maybe some better DirectX support in C#.

• @Magus said:

@Nagesh I'll be streaming it for sure. I'm most interested in seeing if there's any new hololens stuff on the way. Otherwise, I don't have any idea what they'll announce. I'm hoping they'll do some nice things with Xamarin, .NET Core, and maybe some better DirectX support in C#.

I think Xamarin will be given free to everybody soon. Microsoft and Oracle are having 1 thing in common. Take good product and then totally change it. (example - peoplesoft for oracle, skype for microsoft)

• Build 2016? Wait, so we're still on the 2015 build but the government is lying to us saying it's 2016?

I knew I shouldn't have trusted them!

• @Nagesh said:

I think Xamarin will be given free to everybody soon.

This. If they do this, it will change everything. No one wants to pay \$2k to develop for Android and iOS in C#. You give that away free? Growth is guaranteed.

• @Magus

The streaming has started! Satya look little like me, except I got load of hair on my head.

• @Nagesh said in Who is going to Build 2016?:
The streaming has started!

Also he is able to speak like you guys over there.

• So.... bash on Windows?

Intrigued, but I'll believe it when I see it. The way they describe the implementation, it sounds like an ugly hack. If they want true parity with Linux and Mac, NTFS has to go, I'm afraid.

• So.... bash on Windows?
Intrigued, but I'll believe it when I see it. The way they describe the implementation, it sounds like an ugly hack. If they want true parity with Linux and Mac, NTFS has to go, I'm afraid.

Until 8, they had quite a good Posix subsystem built into Windows, which was more compliant than Linux. No one used it, and it was a bit slow, so they removed it. Now they're working with Cannonical to have some kind of monstrous Ubuntu subsystem. I don't know what this will mean, but it's very exciting.

As for NTFS, please. Apple uses their own thing, and Unix fans can't even agree on what a filesystem is supposed to do. 'parity', ha!

• @Magus

As for NTFS, please. Apple uses their own thing, and Unix fans can't even agree on what a filesystem is supposed to do. 'parity', ha!

Forward slash vs backslash, hidden file convention, executable marker, user/group/everyone access rights, mounting devices instead of assigning letters... There are plenty of ways windows fs differs from everyone else. If they are serious about bash, they needbto fix this first.

• @cartman82 I wouldn't consider backslash or drive letters to be part of the filesystem, they're part of the OS's interface between software and filesystems.

• I want the CORTANA BOT in my skype chat!

• @LB_ is that so? TIL.

Either way, windows way of doing things will have to go. They should focus less on bash or any particular shell, and more on these fundamentals.

• Either way, windowsApple way of doing things will have to go. They should focus less on bash or any particular shell, and more on these fundamentals.

Everyone does things differently. You can either do what the majority of people are used to (Which, btw, is Windows!) or you can, because some console obsessed freak wouldn't shut up, switch to the 'best' way, confusing and alienating all your users.

• I want the CORTANA BOT in my skype chat!

Apple is mentioned 4 time by Gurdeep Singh pall

• @Magus oh please. No one is used to the abomination that's called cmd.exe. Linux users use bash. OS X users use bash. Windows users either use Powershell, or cygwin, and therefore, bash. If nothing else I wish we could move further ahead to a shell that doesn't make escaping those !s so hard and doesn't ask you to write esac with a straight face (hint fish hint).

@cartman82 most of those issues have been somewhat resolved in cygwin already. The only command you really don't want to use is chmod and chown. Windows will enforce its own ACLs just fine, the problem is trusting the compatibility layer to present those to you correctly. As for the rest, at least in cygwin, POSIX conventions probably are going to rule.

• forward slashes only; backward slashes are already used for escaping
• hidden files start with a period. System calls open and rename may be so smart to make such files hidden on Windows as well, but otherwise the hidden file convention is merely that, and it is up to each individual program to support it. (That doesn't mean that programs can't be changed to respect the Windows flag instead; it merely seems that this hasn't happened yet.)
• mounts in arbitrary folders are already supported by NTFS, so you can already have C:\floppy\ really be A:, or have C:\foo\bar really be C:\foo\baz\bar. This may cause confusion in programs that crawl a directory tree; again, it is up to the individual program to be well-behaved. This time however the problem is on the Windows side of things, since this feature is almost never used so programs aren't written to expect them. Additionally, NTFS symlinks require administrator access; on Linux they don't. cygwin works around this with a userspace implementation.
• speaking of, NTFS also supports folder hardlinks. These are not a thing in the Linux userspace, and also not really a thing in the Windows userspace, so expect those to wreck all sorts of havoc.

The elephants in the room are listed here, together with the solutions used by cygwin. For some things I expect the Windows team to not have resorted to some of those kludges. Deleting open files is also going to be another pain point.

• @bp_ i knew win had various levels of hard links, but I've never had them work as I wanted to - they seem to fail in weird ways.

• @swayde Huh, I've had pretty good success with them. Whenever an application doesn't like a symbolic link I use a hardlink or junction instead, works great. I use Link Shell Extension and I am pretty sure it just saves me typing the commands and doesn't actually provide any functionality that isn't already in Windows. Though I think it does add customizable icon overlays to let you know when a file is not 'normal'.

• @bp_ said in Who is going to Build 2016?:

@Magus oh please. No one is used to the abomination that's called cmd.exe.

Yeah right. I wish that was the case.

• More details.

Technically, it's like a windows equivalent of WINE. Looks and feels like cygwin/msys.

We'll see. I cant help but feel this will create an even bigger hodgge podge out of windows environment.

• Technically, it's like a windows equivalent of WINE. Looks and feels like cygwin/msys.

Wait a minute, didn't they have...

Microsoft calls it their "Windows Subsystem for Linux"

They did! Except it's been broken since Windows XP (or similar) and they never showed any signs of picking it up for years.

Well then.

Edit: Okay, it was actually called "Interix" and may not be from the same codebase, but it's almost practically the same thing...

• Forward slash vs backslash

Windows supports both

hidden file convention

dots are a stupid hack and make no sense

user/group/everyone access rights

NTFS ACLs can do a lot more than this

mounting devices instead of assigning letters

Causes all sorts of confusion

Basically, you want Windows wo become Unix because you're used to the conventions there and so don't like the Windows ways. I'd hate it if Windows started acting like Linux, I much prefer the Windows ways I'm used to

• @Jaloopa I've said it before; I find it odd how some people get a Windows and immediately try to make it act like a Linux. It's like getting a car an immediately trying to make it act like a bike; it just isn't going to happen.

• It's like getting a car an immediately trying to make it act like a bike

• Looks and feels like cygwin/msys.

Except Cygwin/msys requires recompilation, and this thing does not. It's literally WINE on reverse.

• @Jaloopa way to miss the point. The point is I want to be able to grep, cut, xargs, etc.; most of what you're worrying about is pointless shit. Some things already exist: cygwin requires recompilation and hides access to some APIs and its package management is suboptimal, github bash breaks everything that expects ncurses plus no package management, etc.

We know full well that this is a POSIX interface to Windows rules, and I don't expect Windows to change in any way other than gaining features like 256 color terminals. The truth is the Windows console experience has always been terribad, so Windows users would rather install GUI horrors to kludge your automation for you, because the console is so terribad.

Turns out consoles don't HAVE to suck. Turns out GUI programs can still expose useful command line switches like MSI does. Turns out you don't have to learn C# to download a file from the internet. Turns out that you can do ad-hoc shit to your system interactively, then dump your commands in a text file, and you have instant automation without having to open up MSDN to look up how to properly change the system proxy configuration or what have you. Turns out you can have a single central system that can keep your whole computer up to date and secure and stable, as opposed to just the Microsoft stuff.

All of this is coming to your pet platform in some way or another, as yet another way to be productive. I don't understand how having more tools on your belt is going to make your day worse.

• @bp_ said in Who is going to Build 2016?:

Turns out consoles don't HAVE to suck.

See: Powershell console.

• @bp_ said in Who is going to Build 2016?:

Turns out you don't have to learn C# to download a file from the internet.

Why learn C# when you can Invoke-WebRequest?

• @bp_ said in Who is going to Build 2016?:

most of what you're worrying about is pointless shit

I was just responding to @cartman82 and his list of things Windows does slightly differently to other systems. I'm not worried

@bp_ said in Who is going to Build 2016?:

Turns out that you can do ad-hoc shit to your system interactively, then dump your commands in a text file, and you have instant automation without having to open up MSDN to look up how to properly change the system proxy configuration or what have you

Right, you just have to look up how to do the ad-hoc shit in Bash. That's much simpler.

@bp_ said in Who is going to Build 2016?:

I don't understand how having more tools on your belt is going to make your day worse.

Having any file that starts with a . be auto hidden would make life harder for anybody who names files like that and wants to see them. Having C:\users\Jaloopa change to \usr\Jaloopa\ would make life harder for anyone who's got any path hardcoded in shortcut, script or filesystem link. Having Windows change to be like Linux in the ways @cartman82 suggested would make life harder for a lot of people with no desire to relearn perfectly cromulent UI paradigms.

did you actually read my post or did you just see something that looked generally Linux bashy and pull out the standard list of defenses?

• More details.

Technically, it's like a windows equivalent of WINE. Looks and feels like cygwin/msys.

We'll see. I cant help but feel this will create an even bigger hodgge podge out of windows environment.

The article does highlight that it's beta and has the following restriction:

Third, note that Bash and Linux tools cannot interact with Windows applications and tools, and vice-versa. So you won’t be able to run Notepad from Bash, or run Ruby in Bash from PowerShell.

This means you can't use this new shell as your main shell and simply launch native Windows programs – though running Windows apps would come with problems like differences in filepaths. I wonder how well this integrates with Cygwin — I'd guess "not at all" as Cygwin is compiled as native Windows executables...

There're lots of comments below the article, you might want to skim it.

• I find it odd how some people get a Windows and immediately try to make it act like a Linux.

What's odd about that? That people have different preferences?

• @boomzilla Having different preferences is fine; it's more those who go out of their way to make one act like the other. I mean, if you prefer the other, then why not just use that?

• it's more those who go out of their way to make one act like the other. I mean, if you prefer the other, then why not just use that?

• I am Scott Guthrie!!!

@Magus said:

@Nagesh I'll be streaming it for sure. I'm most interested in seeing if there's any new hololens stuff on the way. Otherwise, I don't have any idea what they'll announce. I'm hoping they'll do some nice things with Xamarin, .NET Core, and maybe some better DirectX support in C#.

I think Xamarin will be given free to everybody soon. Microsoft and Oracle are having 1 thing in common. Take good product and then totally change it. (example - peoplesoft for oracle, skype for microsoft)

• @JBert oh. Wait. What. The fact that you can't run Windows programs from it instantly killed my enthusiasm. I guess I'll give it a whirl but ultimately stick with cygwin, then.

• Basically, you want Windows wo become Unix because you're used to the conventions there and so don't like the Windows ways. I'd hate it if Windows started acting like Linux, I much prefer the Windows ways I'm used to

That is a problem that goes both ways, or even all three ways in this sick OS threesome we have. It always bugged me that people coming to Linux expect it to act like Windows and when it doesn't -- they rage. Heck, there was a @cartman82 thread recently about OS X where he was doing a similar thing.

So fuck off, I like natural scrolling!

All that being said, Windows could use real console application that allows for what bash terminals do (colors, for example).

• @bp_ said in Who is going to Build 2016?:

Windows will enforce its own ACLs just fine, the problem is trusting the compatibility layer to present those to you correctly.

FWIW, many POSIX systems support ACLs too, though most programs ignore them (which can lead to odd failures that are difficult to understand at first).

Looks like your connection to What the Daily WTF? was lost, please wait while we try to reconnect.