5 ms·
I tend to agree with most of this (university, GPA, subject, blah blah blah). Bits of paper that are signals of arbitrary things (family standing, ability to ta
by stegosaurus 11y ago
I tend to agree with most of this (university, GPA, subject, blah blah blah). Bits of paper that are signals of arbitrary things (family standing, ability to take on debt, country of birth).
Anti-Windows bias doesn't really feel like an example of 'pedigree' to me, though.
I can't imagine programming on Windows. I can't even imagine using the OS. I moved away from Windows ~a decade ago and haven't looked back - it seems to be getting worse every year (the business model for W10 appears to be surveillance?).
Anyone care to chime in? What's the appeal of Windows in this day and age? To me it really feels like 'big companies use it so their programmers do'.
- TickleSteve 11y agoRegarding the attraction of windows.... market-size and momentum. Remember a good softie is flexible... that includes getting experienced on all OSs, dont limit yourself... Windows isn't all that bad (and ignore all the silly surveillance scare stories). Good software should be platform-independent, good software engineers should also be platform-independent.
- J_Darnley 11y agoThe appeal of Windows for me is inertia. I keep using it because I can keep using my preferred programs, namely: Winamp, MPC-HC, and my video game library. Perhaps once my desktop with Windows 7 installed dies I will put Linux on a new one as the idea of using 10 terrifies me. I did try to use Linux a few times in the period between 2007 and 2010 but I never found a desktop environment I liked enough. The file browsers and music players always left much to be desired. I can't say much about how the programming compares as I stick to the command line mostly but I do prefer the thought of using the Win32 API over whatever might, might be available on Linux. Do I choose GTK and its copious unique types (even for integers) or do I force myself to learn the abomination that is C++ to use Qt? What audio subsystem do I use from the dozen or so that is around?
- stegosaurus 11y agoVideo game library is a fair point. I use W7 in a VM for that, though I find myself playing games less and less nowadays. I guess it's that I don't do GUI programming. I mostly produce software that does things directly (rather than enabling others to do things). I fundamentally have very little use for a GUI unless I were producing software for someone else to use (e.g. QuickBooks or something). I think that's probably the barrier in both directions. GUI users don't usually see eye to eye with terminal users. It's vi-vs-emacs all over again. :P
- wolfgke 11y agoThings that I love about Windows programming: - IO Completion Ports (IOCP): https://speakerdeck.com/trent/pyparallel-how-we-removed-the-gil-and-exploited-all-cores https://speakerdeck.com/trent/pyparallel-how-we-removed-the-... (to quote slide 40: "What works well on UNIX isn't performant on Windows[;] What works well on Windows isn't possible on UNIX"). - native support for fibers (CreateFiber etc.) - binary compatibility for GUI applications over decades (try to get to run an application that was linked against GTK+ 1.x under a current GNU/Linux system) - I personally prefer the Visual Studio debugger by far over gdb (but YMMV) - there is exactly one way to write GUI applications against (WinAPI) - all other libraries as MFC, WTL are just wrappers for it. Try writing an X11 app against XLib or xcb and you will find out why Windows is better in this point. - the same holds for other GUI functionality as clipboard and drag & drop (OK, admitted, it is a PITA under Windows, but far worse under GNU/Linux/X11) - When developing GUI applications under Windows vs. say Gtk+ oder Qt under Linux: If there is some functionality, which is very low level (say, support for multiple mice): Under Windows for this there is Raw Input and under X11 there is XInput2. While the Raw Input feels integrated quite well into the style of the whole WinAPI, using XInput2 when developing using Qt oder GTK+ feels really foreign and I always fear that I will break something. In other words: When developing for Windows the APIs often look much more homogenous than under GNU/Linux where I personally feel that there are different libraries with different styles (but you might feel differently) - I find the MSDN documentation much more helpful than man pages, but this might be my personal preference, at least I feel that when under Windows something is documented it is nearly always documented really well, while the quality of documentation varies a lot under GNU/Linux and is (for things that change more often) often outdated - Also I consider it as a bad idea that many Linux devs consider code as documentation if by default most "user-centered" GNU/Linux distributions will not install by default the source code to any installed package. - I personally prefer the slightly "overengineered" style of the Windows API instead of having to hack something (sometimes ugly) together if the API will not provide what I need; but this is again a matter of preference.
- munin 11y agothat is a great presentation. the degree to which everything is asynchronous in NT is awesome. it's a shame techies don't engage with it or dig in to it and just say that linux is better because it has a better shell.
- UK-AL 11y agoSpeed of setup, and a standard stack everyone knows. You don't argue over which email server you use, you just setup Exchange. You don't argue over nginx, apache, etc just use IIS. It's also configured quite well out of the box, where as Linux you spend several days getting it all configured to perfection. When you just want to focus on the business problem at hand, I find it brilliant. Where as in other stacks you get caught up in technology, for technologies sake. I find you can go from 0 to release a lot faster.
- olavgg 11y ago> It's also configured quite well out of the box, where as Linux you spend several days getting it all configured to perfection. Uhm, no. Most distros comes with sane defaults, perfection is something you work hard with to achieve on both Windows and Linux. Counter-Example: how to run get max performance out of 10Gbps Ethernet on Windows.
- ArkyBeagle 11y agoThe 'C'/C++ APIs are something to behold. More or less awful. There is a rich set of choices out there. This being said, there are lots of choices in actual applications that may or may not be available on other platforms in the same way. Ideally, I'd run a Linux host and Windows guest. For a long list of reasons, it's the other way 'round. Also, don't embrace the upgrade death march with Windows and life gets better. Keep full-install media of The One That Works.
- VLM 11y agoSo far none of the responses have gone on a business tangent, yet usually business guys are the ones who decided on / enforced the MS-only doctrine. I assure you some MBA veep who's never touched a keyboard did not make the decision based on the accurate technical details in some replies. The first one is hiring. Supposedly everyone knows windows, great hiring pool. I donno if I believe that anymore, but in the old days there was certainly no shortage of MCSE to hire. It doesn't matter if the UI for the OS and office software change completely every couple years because "everyone knows windows" so training costs only exist for alternative OS or alternative office software. When that linux genius quits he's irreplaceable, isn't he? That's a great position to be in if you're that guy (me), but business people hate that. To some extent this is a young person vs old person problem because college campuses (campii?) are owned by apple, not MS. MS is just to run the dorm xbox, that's all. This is strategic planning on the part of decision makers. The second is financial embrace and extend. Once you got one windows server or a couple desktops, inevitable licensing agreements make the marginal delta of "another windows box" extremely cheap (maybe zero) vs the measurable costs of mac etc. BSA / etc audits will make your life a living hell unless you participate in this scheme. This is bean counting on the part of the decision makers. The third is interoperability. Unless you're the worlds most boring company you'll be doing something weird and under the first topic above, everything weird has by default windows clients or drivers or applications. There will be a windows client for an eprom programmer or I2C driver. There might be alternatives but it will work under windows. Then see the topics above. You will need windows boxes... you just will. This is pragmatism on the part of the decision makers. The fourth is CYA. Like decades ago, "nobody ever got fired for buying IBM" today "nobody ever got fired for buying MS". You could get fired for buying a mac and it doesn't work, or installing linux on a server that crashes, but no quality of service, including zero, is low enough to get fired for buying microsoft. No matter how badly the system gets powned or how much stuff gets stolen, you can't get fired if you bought MS products. Just doesn't happen. If you can afford it, and you like being employed, the decision seems clear from a risk management perspective. Cowardice on the part of the decision makers. The fifth is support. Business people think we get support by calling a script reader in India who tells use to wipe, reinstall, and reboot, and furthermore that is worth money and worthy of making procurement decisions. In the real world we know we use google for support and non-MS stuff googles better. But business people like a risk management of a nice security blanket of telephone support from a dude with a nice looking certificate. Its not actually useful of course, but business people don't understand it. Business people think computer support is like medical support and you call 911 and get fixed up, but 911 converted to computer support would be a pretty funny standup comic routine. Essentially this is plain old ignorance on part of the decision makers.
- rb808 11y ago.NET runtime and framework with Dev Studio are very very good. If you haven't tried for a long time, you owe it to yourself to take a look. To me my stereotype - if you're in a corporate world and want developers that like users and spend a lot of time on complicated business problems - you're likely to see lots of "windows developers". If you want some to write apps with lots of technical complexity and simple business logic, you're better off with "unix developers".
- pjmlp 11y agoWhat I love on Windows. Not stuck on the CLI and text terminals culture. The Windows developer community knows its way around basch, Technet scripts and Powershell, but we rather use nice comfy GUI tools. C++ (moving away from C), .NET languages, COM and nowadays WinRT offer programming paradigms that follow Xerox PARC ideas and drive forward developer experience. Those kind of developer experiences being shown by Bret Victor. I could say the same about Mac OS X developer experience. For almost a decade I was a dedicated *BSD and GNU/Linux user as well, but they seem to be stuck being just yet another UNIX clone without any consistent plan for anything outside C and POSIX APIs.
- zeveb 11y ago> Not stuck on the CLI and text terminals culture. See, those of us who use Unix & free software see that as a benefit, just as the literate find the written word to offer advantages over picture books. With a keyboard, I am able to enter hundreds of discrete inputs: with a mouse or touchscreen I have one 2D input and a few buttons. With a keyboard I am able to have a conversation with my computer and my data; with a mouse I point and click, which isn't much different from pointing and grunting in human conversation.
- pjmlp 11y agoSee, some of us that were already into computers when Sun was a startup got bored of it. Your answer is a typical example of UNIX CLI users that need to express themselves as being more intelligent than GUI users, while forgetting that some us do have enough CLI experience and decided to grew out of it. I can use macros and key + mouse combos in FPS style across many GUI applications and if I ever need a CLI, Powershell or Terminal (Mac OS X) are just a click away.
- AndrewUnmuted 11y agoMouse use has a much higher risk of CTS and other work-related injuries. [1] I've worked at startups and enterprise environments, and what has always remained constant at every Microsoft/Enterprise company is the troves of obese, unhealthy, arthritic middle-managers that can barely use a computer anymore because they got lazy and succumbed to using GUIs to get their basic work done. Now, they are stuck on MS because any foreign GUI elicits a sudden "NOPE!" from them. They are constantly unhealthy because none of them have standing desks. They don't have standing desks because mouse use is extremely non-intuitive in such setups and in many cases dangerous [2]. By surrendering to the mouse and the GUI, my older co-workers are low-quality producers, exceedingly lazy, and otherwise slowly dying. My console emulator has looked the same for the last ten years. I can SSH into any UNIX system and it's familiar to me. Innovation hasn't slowed me down at all. [1] http://www.nytimes.com/health/guides/disease/carpal-tunnel-syndrome/prevention.html http://www.nytimes.com/health/guides/disease/carpal-tunnel-s... [2] http://www.workwhilewalking.com/avoiding-carpal-tunnel-neck-and-shoulder-pains-when-using-a-treadmill-desk#gsc.tab=0 http://www.workwhilewalking.com/avoiding-carpal-tunnel-neck-...