News for hackers. Stuff that matters.
Re:Ask HN: What do you want to tell Microsoft? by JunkDNA on Friday September 17, 2010 @09:38AM (#1701083)
Some points:

- It's annoying in this day and age to be forced into using the entire MS Stack when I need to work with one specific technology. For example: if I want to test a web app on various versions of IE, I have to run Windows. OK fine, even though IE is the only browser that is tied to one OS, I'll let that go. However, if I want to use the Microsoft-provided free MS Virtual Machine images, I have to run them on Virtual PC despite the fact that I have a perfectly good VMWare installation. On my Mac, this means running windows on VMWare, and then Virtual PC inside that virtual machine. This is insanity. I'm trying to support your product, you should be making it as easy as possible for me. Even Apple ported Safari to Windows. As a developer, this just makes me feel hostile to MS. Another case: MS SQL Server. It's a real bear to connect to it from unix since (last I checked) there are no official drivers. You have to use some unix ODBC open source stuff and it's just not suitable for production work. My organization has a huge SQLServer instance I can't use because the Linux support is brittle. Contrast that with Oracle who has official drivers for practically every OS under the sun. The Windows for everything attitude has got to change. MS is a software company, not a Windows company. I know MS doesn't have a strong history of "playing nice with others", but it's sorely needed.

- Figure out a way to get corporate IT departments into regular upgrade cycles. The fact that lots of stubborn companies refuse to upgrade because the costs (perceived or real) are high is madness. It's a drag on the whole Microsoft ecosystem and heavily rate-limits the cycle time for new products.

- The segmentation of different Windows versions is just silly. There should be one version of Windows and that's it. It's simple for people to understand and it makes licensing a breeze. Artificially creating different versions doesn't really help anyone. Having a server and a desktop version is plenty (since they are genuninely different).

- MS needs to really decide how much longer they want to push an OS that is based on Windows/DOS heritage and not unix. I know this is tantamount to heresy inside MS. But if you look objectively at how Apple has used open source and unix, you see they are able to get incredible leverage for their size. Not having do to everything in-house and relying on the broader community is pretty good business for them. It lets them focus on the places where they can add value. At some point, it's not efficient for MS to maintain a parallel universe of "invented here" stuff. A proprietary Windows GUI/userspace on top of a unix core (like Mac OS) could really revitalize the whole Windows brand if done properly. It might even draw some geeks back from Mac OS. I became a Mac user because I was tired of dual booting Linux and Windows. I like having first-class email, word processing, photo sharing, etc... but I also want the unix underpinnings for my software development and scientific computing needs. Geeks aren't a big market by themselves, but they really make an impact on the decisions of others.

Re:Ask HN: What do you want to tell Microsoft? by gaius on Friday September 17, 2010 @10:03AM (#1701148)
MS needs to really decide how much longer they want to push an OS that is based on Windows/DOS heritage and not unix

You know the "Windows/DOS" stuff in NT is an emulation layer, right? It's known as WoW, Windows on Windows. The NT kernel is the work of Dave Cutler, of DEC VMS fame, and it is actually very, very good (form your own opinion about what has been layered on top of it).

Re:Ask HN: What do you want to tell Microsoft? by xpaulbettsx on Friday September 17, 2010 @03:38PM (#1702530)
Not quite :) The DOS emulation layer in Windows 32-bit is called VDM (http://en.wikipedia.org/wiki/Virtual_DOS_machine) - WOW is a technology that allows one bitness apps to run on a different bitness OS. WOW used to let 16-bit Windows apps run on a 32-bit OS (i.e. Win95), and nowadays, WOW64 is a shim layer that allows 32-bit applications to run on a 64-bit OS
Re:Ask HN: What do you want to tell Microsoft? by JunkDNA on Friday September 17, 2010 @04:20PM (#1702682)
If Microsoft could deploy a decent unix on top the NT kernel, that might not be a bad strategy. But the fact remains that there are a wealth of unix tools that you can compile and run on an number of unix variants, but are practically impossible to build and run on Windows without heavy customization. I'm arguing that is eventually going to be a problem for MS because they are forced to invent everything internally and can't really easily incorporate what's going on elsewhere.
Re:Ask HN: What do you want to tell Microsoft? by gaius on Friday September 17, 2010 @05:23PM (#1702885)
There's a POSIX subsystem.

Way back in the day, Microsoft had their own Unix, Xenix. However they did a deal with AT&T to get out of the Unix market - they probably still can't sell a Unix even if they wanted to.

Re:Ask HN: What do you want to tell Microsoft? by robbyt on Wednesday September 29, 2010 @02:15AM (#1738476)
Does anyone know what UNIX even is anymore? Does UNIX=BSD? So does that mean Microsoft could sell Linux, since Linux!=BSD?
Re:Ask HN: What do you want to tell Microsoft? by rbanffy on Friday September 17, 2010 @12:39PM (#1701760)
So, it's a VMS heritage ;-)
Re:Ask HN: What do you want to tell Microsoft? by gaius on Friday September 17, 2010 @12:48PM (#1701786)
Yep, 1979 vs 1970 for Unix ;-)
Re:Ask HN: What do you want to tell Microsoft? by rbanffy on Friday September 17, 2010 @07:51PM (#1703245)
I think Unix aged better.
Re:Ask HN: What do you want to tell Microsoft? by agscala on Friday September 17, 2010 @02:59PM (#1702351)
Oh, so that what the WoW in the SysWoW64 folder name means
Re:Ask HN: What do you want to tell Microsoft? by xpaulbettsx on Friday September 17, 2010 @03:39PM (#1702536)
Yep, the SysWOW64 directory has all the 32-bit DLLs in the system (usually an identical copy to the Win7 32-bit DLLs, though not always), and the System32 folder has the 64-bit binaries. Yes, this is confusing, but not breaking apps was more important
Re:Ask HN: What do you want to tell Microsoft? by sadiq on Friday September 17, 2010 @12:09PM (#1701603)
Very much the first point here.

Microsoft needs to stop trying to lock me in to their stack at every point and turn. Currently, if I want to use some Microsoft technology i'm forced in to the rest of the ecosystem and that's a hurdle that i'll likely never jump unless there is simply no other option.

In some respects, Microsoft is already at a disadvantage over Free and Open Source technology when starting new projects without legacy issues, just from the simplification of licensing and the supplier diversification. To add extra barriers, such as having to take on larger and larger parts of the Microsoft ecosystem to get the best out of one component just makes things worse.

Positive first step would be once and for all unequivocally clear up any IP issues surrounding both Mono and their library reimplementations to silence any critics. Second would be bringing Mono in to the .NET ecosystem as a first class citizen. I like C# and .NET but i'm highly unlikely to use it unless I have some real choices for deploying it. From what i've seen from Mono, it's an impressive project but not yet on par with Hotspot and the CLR.

On a site note, there have been some positive steps. The move to Apache 2.0 licensing on several recent contributions is a positive step and helps prevent more license proliferation.

Essentially, I want Microsoft to compete for my business with technology that I can deploy without the worry that i'm perennially locked in to one ecosystem and one vendor.

Re:Ask HN: What do you want to tell Microsoft? by rbanffy on Friday September 17, 2010 @07:53PM (#1703250)
> Currently, if I want to use some Microsoft technology i'm forced in to the rest of the ecosystem

You are missing the point. While you won't be persuaded to lock yourself in, countless businesses are already locked in and won't be able to switch from Microsoft precisely because of the way the whole stack is dependent on all of its pieces.

> I want Microsoft to compete for my business with technology that I can deploy without the worry that i'm perennially locked in to one ecosystem and one vendor.

They want the exact opposite.

Re:Ask HN: What do you want to tell Microsoft? by runjake on Friday September 17, 2010 @12:58PM (#1701821)
> MS needs to really decide how much longer they want to push an OS that is based on Windows/DOS heritage and not unix.

Some of us have the audacity to believe that NT OS might actually be superior to UNIX-like OSes. Sorry, it's true. And this coming from a "UNIX-like OS guy". I'm all for stripping away the DOSification of NT, like drive letters, instead of native (and UNIX-like) paths, etc though.

Edited slightly due to formatting errors on my part

Re:Ask HN: What do you want to tell Microsoft? by cturner on Friday September 17, 2010 @01:31PM (#1702003)
What you say is correct, but in a way that is disconnected from the user's POV.

Consider: the command line is a major drawback of Windows, and that's the most obvious manifestation of the Windows/DOS heritage. In addition to its lack of power, the Window doesn't even resize properly.

Plenty of tools that port easily to OSX or Haiku are difficult to port to Windows. Look at the situation with git.

The situation is poor. Technically, NT (and NTFS, etc) might be great, but aspects of the user experience is awful.

Re:Ask HN: What do you want to tell Microsoft? by runjake on Friday September 17, 2010 @02:43PM (#1702283)
The command line for Windows is now Powershell, which I find superior to Bash in many ways (although I appreciate Bash's relative simplicity, and I am still more familiar with the Bourne shell variants than I am Powershell).

CMD.EXE is still included, but it is the red-headed stepchild.

> the Window doesn't even resize properly.

And the PowerShell window still does not resize horizontally by dragging, which is silly. You can do it by adjusting the window's settings, but this is insufficient. Win32 Console apps need to die.

> Plenty of tools that port easily to OSX or Haiku are difficult to port to Windows. Look at the situation with git.

Of course it is, it was originally written targeting a completely different OS. The same could be said the other way, that's why stuff like WINE and Mono exist.

> but aspects of the user experience is awful.

I concur totally. Getting Windows 7 to what I consider usable (in a power user sense) is a 30-45 minute job with a fresh install (as opposed to ~ 20 minutes on Mac OS X).

Re:Ask HN: What do you want to tell Microsoft? by xpaulbettsx on Friday September 17, 2010 @03:42PM (#1702546)
I complain about the crappy Console subsystem every release, I'll try to shout louder :)
Re:Ask HN: What do you want to tell Microsoft? by runjake on Friday September 17, 2010 @04:08PM (#1702640)
It will get shot down due to legacy requirements. It boggles my mind they didn't start Powershell "legacy-free" and just emulate/re-implement the existing command line commands.
Re:Ask HN: What do you want to tell Microsoft? by xpaulbettsx on Friday September 17, 2010 @04:12PM (#1702653)
The problem if you do that, as soon as you run a console EXE, you're hosed, weird things will happen.
Re:Ask HN: What do you want to tell Microsoft? by runjake on Friday September 17, 2010 @04:17PM (#1702672)
As any of us who run resource kit, support kit, or development kit tools have found ;)

Thanks for your unofficial input throughout the threads. They've been great nuggets of info and insight from the inside, so to speak.

Re:Ask HN: What do you want to tell Microsoft? by xpaulbettsx on Friday September 17, 2010 @05:17PM (#1702874)
Thanks - I certainly don't believe that Microsoft always has a good reason for what they do, but I try when I can to illustrate what was going through the engineers' heads when they built the thing.

When you build a system that has to work for everybody, from your grandma who just wants simplicity, all the way to the Federal Gov't who has complex requirements and restrictions, all while making 100% sure that everyone's programs work flawlessly even if they happen to be horribly written, sometimes you have to make lousy compromise choices, I think that's our biggest challenge by-far, is balancing the n-degrees of concerns through smart, disciplined engineering.

Re:Ask HN: What do you want to tell Microsoft? by xpaulbettsx on Friday September 17, 2010 @05:32PM (#1702906)
Also, here's a great example of how we have to balance "fix the bug!" with "make programs work!":

http://blog.paulbetts.org/index.php/2010/07/20/the-case-of-t...

Re:Ask HN: What do you want to tell Microsoft? by sapphirecat on Friday September 17, 2010 @11:01AM (#1701357)
> It's a drag on the whole Microsoft ecosystem and heavily rate-limits the cycle time for new products.

I don't see this as a problem; I like the stability of MS vs. Linux (having watched the rise and fall of devfs and hal now, along with the death of gnome-mount, gconf, gdm theming and xdmcp serving, etc.)

OTOH, I think IE6's 10+ year support guarantee was a bit extreme. But, comparing developing something on IE vs. Mozilla, IE would be the clear winner. I mean, Firefox extensions, which you would expect to be developer-friendly, aren't necessarily compatible between 3.5.x and 3.6.x of the product! Do I really want to be constantly fixing things that used to work every few months? Does the business want to pay for it?

Re:Ask HN: What do you want to tell Microsoft? by jcromartie on Friday September 17, 2010 @12:59PM (#1701832)
> I don't see this as a problem; I like the stability of MS vs. Linux (having watched the rise and fall of devfs and hal now, along with the death of gnome-mount, gconf, gdm theming and xdmcp serving, etc.)

The problem that I see is that "stability" in the Microsoft world is entirely conditional on your willingness to upgrade everything all of the time since the whole toolkit is in a constant state of flux. Sure, you get working and officially-supported frameworks, but the goalposts are always shifting further down the field, and I think that's intentional on Microsoft's part.

Re:Ask HN: What do you want to tell Microsoft? by runjake on Friday September 17, 2010 @04:06PM (#1702632)
Could you clarify what you mean by: "upgrade everything all of the time" and "the whole toolkit is in a constant state of flux"? What toolkit, and what upgrades? And how is it different to you than the Linux side of things?
Re:Ask HN: What do you want to tell Microsoft? by sapphirecat on Friday September 17, 2010 @02:27PM (#1702214)
I don't think you can say Linux is better in that regard. Every 6 months, there's a new Ubuntu or a new Fedora, and within a couple of years (except for Ubuntu LTS releases, which last three! years on the desktop) they're gone again.
Re:Ask HN: What do you want to tell Microsoft? by jm4 on Friday September 17, 2010 @12:08PM (#1701599)
Another case: MS SQL Server. It's a real bear to connect to it from unix since (last I checked) there are no official drivers. You have to use some unix ODBC open source stuff and it's just not suitable for production work.

FYI, you probably want to use the FreeTDS driver on Unix/Linux. It's not an ODBC driver and it is production quality.

Re:Ask HN: What do you want to tell Microsoft? by JunkDNA on Friday September 17, 2010 @05:16PM (#1702869)
I need to check again, but the last time I tried FreeTDS I got scared because of some serious encoding issues that were causing silent data loss. I have been following the bug report and it looks like this issue may have been finally patched recently, but it sort of scared me off from using FreeTDS.
Re:Ask HN: What do you want to tell Microsoft? by nutmeg on Friday September 17, 2010 @02:13PM (#1702167)
If you're using Java, the MS JDBC driver works just fine.
Re:Ask HN: What do you want to tell Microsoft? by dmethvin on Friday September 17, 2010 @12:44PM (#1701774)
Even most casual developers can afford $200 for a Windows license to run on VMWare. Contrast that with testing Mac software in VMWare with a Linux or Windows host -- we can't legally do it because it's against Apple's license.
Re:Ask HN: What do you want to tell Microsoft? by mmelin on Friday September 17, 2010 @12:55PM (#1701811)
While I somewhat agree that Apple's licensing of OS X is overly restrictive (though the reasons for those licensing terms are fairly complex), the OP is specifically talking about testing web apps in IE, which is the only browser with >1.0 percent market share that does not run on both Windows and OS X.
Re:Ask HN: What do you want to tell Microsoft? by superuser2 on Friday September 17, 2010 @08:56PM (#1703368)
If you're writing desktop software for a platform, I think it's perfectly reasonable to demand you buy into that desktop OS.

Windows devs can test their web apps on Safari for free, from right inside Windows. Why should I have to drop $200 to make my web app work for most Windows users? That's the point he's making.

Re:Ask HN: What do you want to tell Microsoft? by abalashov on Sunday September 19, 2010 @04:41AM (#1705873)
Interesting. I have not had any problems using FreeTDS and UnixODBC in large-scale production environments to talk to SQL Server, although I agree that the interfaces of the tools are brittle and pathetically clunky, in a minimalistic sort of way.

I work in VoIP and have several customers who insist on storing all of their production data from open-source Linux telephony app servers in SQL Server because they are otherwise a Microsoft stack shop, and have not had an issue once all the DSNs were correctly set up.

Of course, said organisations are all using relatively old versions of SQL Server and intensely disinterested in upgrading, so who knows what awaits when they finally do and the FreeTDS v8.3 protocol implementation may not work properly anymore.

Re:Ask HN: What do you want to tell Microsoft? by jjs_ on Friday September 17, 2010 @10:42AM (#1701289)
Have you tried the free VMWare vCenter Converter? http://www.vmware.com/products/converter/features.html

I do not know whether or not they have overcome issues preparing Virtual PC images to run on the Mac yet...

Re:Ask HN: What do you want to tell Microsoft? by Herring on Friday September 17, 2010 @01:21PM (#1701940)
>- MS needs to really decide how much longer they want to push an OS that is based on Windows/DOS

Especially for their mobile offerings. It makes economic sense to push windows, but it's not best for the customer.

Re:Ask HN: What do you want to tell Microsoft? by x0t on Friday September 17, 2010 @11:46AM (#1701528)
I agree 100% with your last paragraph... their desire to keep bolting bits onto legacy software is a major annoyance and leads to a lot of kruft.
Re:Ask HN: What do you want to tell Microsoft? by runjake on Friday September 17, 2010 @01:00PM (#1701835)
NT is not legacy software by any means. If anything, they are bolting legacy crap onto NT OS (such as the concept of drive letters, where the NT OS natively uses more UNIX-like paths)
Re:Ask HN: What do you want to tell Microsoft? by alexkay on Saturday September 18, 2010 @06:29AM (#1704028)
> However, if I want to use the Microsoft-provided free MS Virtual Machine images, I have to run them on Virtual PC despite the fact that I have a perfectly good VMWare installation. On my Mac, this means running windows on VMWare, and then Virtual PC inside that virtual machine. This is insanity. I'm trying to support your product, you should be making it as easy as possible for me. Even Apple ported Safari to Windows.

To be honest, Apple is much much worse in this sense. I can buy Windows X and install it in a VM of my choice. Try this with OS X. And the only reason I need it is to port my app to their platform, potentially enhancing their ecosystem.