4 ms·
No, really, all you anti-microsoft what kind of programming "job" experience do you have to say that M. is so bad? Mac is better? Linux? Really? And for what?:
by zooey 17y ago
No, really, all you anti-microsoft what kind of programming "job" experience do you have to say that M. is so bad? Mac is better? Linux? Really? And for what?: I mean real job experience where you are paid by somebody to do something not just working on your own secret project.They are just tools.It's 2010.Grow.
- RyanMcGreal 17y agoWindows can be a good platform for developing software, as long as you're using IDEs to develop applications targeted at Windows machines. For example, Visual Studio + SQL Server is just fine for building .Net applications that run on Windows. For everything else - and "everything else" includes large swaths of lucrative, profitable programming activities, including something like two-thirds of the internet - Windows is simply excruciating. I'm not exaggerating; after spending the past year or so developing on Ubuntu, I don't know how I managed to get anything done before. The Windows command line is minimally usable (I have to right-click on the window frame to pull up a context menu that provides select/copy/paste functionality? Really?) and its language is minimally powerful (I understand powershell improves significantly on this). Unless you're moving files around a Windows network, in which you can map drives in Explorer, such basic network things as FTP/SFTP require clumsy third-party GUI applications and your choice of FOSS options is severely limited. SSH requires a clunky third-party tool like PuTTY or a Posix emulator like Cygwin. Native support for open source database servers like MySQL, Postgres, and SQLite is dodgy at best and requires bolted-on interfaces. More exotic, innovative database systems are generally out of the question altogether. Some programming languages, like Python, are reasonably cross-platform (though in the case of Python you're still stuck with a choice between using the crappy Windows command line or the slightly-less-crappy IDLE IDE built in non-native Tkinter), while others are much harder to get working. Java is fully cross-platform and has IDEs that work as well on Windows as any platform, but there's no particular reason to develop Java on Windows rather than another OS. It's true that installing Cygwin makes a lot of the deficiencies of Windows go away - but that's by emulating a Posix environment such as you'd find natively on Linux or OSX, which is kind of the point about Posix being generally a much better platform for programming than Windows.
- aaronbrethorst 17y agoI firmly believe in using the right tool for the job. I worked at Microsoft on the Visual Studio team for four years. I love Visual Studio. Visual Studio is awesome. That doesn't change the fact that I (and lots of other people) firmly believe that writing Rails applications on Windows is a miserable experience.
- Daishiman 17y agoI'll bite. I've worked several years doing .NET and web development. Sure, desktop Windows development with C# in Visual Studio is a really, really nice experience. But shoot me dead if I ever have to do a real, actual, useful, standards-compliant website in Windows with Visual Studio. I'll take me screen, shell, Vim, Python, and SSH over it any day.
- rbanffy 17y agoI know I shouldn't feed trolls but I also feel I should clarify some things. I started developing software professionally about a quarter of a century ago, on Apple IIs using the built-in BASIC, 6502 machine language and assorted toolkits for graphics and animation. For a long time, I used Microsoft technologies, from Actor (a Smalltalk-like environment that ran on Windows) to Visual Basic, Visual C++ (mostly for WinCE) and assorted MS web technologies. I also did a lot of web stuff on Unix platforms at the same time. It was not until 2002 that I made my switch to Unixes complete. Unless you develop for Windows, it makes little to no sense to develop on Windows and, as far as you are comfortable with other platforms, it makes little to no sense to deploy to Windows. It's expensive, not particularly predictable and the hood comes soldered. Not a good thing on a server. In fact, I like to develop on a platform as close as possible to the deployment platform. It makes a lot of sense. Development stacks are tools. All I implied was some are much more refined than others. With time you'll learn.
- zooey 17y agoI use a text editor, a shell, other tools. The idea that I want to fight is that linux is a far better environment or mac is far better than windows. I mean, just use what you want, but when you say "x" is better is just because (usually) you are mixing personal like/dislike with ideology (and in the IT community there is a lot of ideology: just think about apple...). I don't care about Microsoft, and all these talks about "the tools" are all right until a certain point. Some times, I've to be honest, seems like talking with kids. I mean really you need ubuntu to do a good job? Maybe developing rails is a far better experience on linux for some reasons I don't know (I'n not a rails develoepr): so you'll use linux. People use linux as a server because is a unix-like platform costing no money. It's better than microsoft server. Good for them and for me because I also use linux. I use windows because I'm used to this platform, I need some tools are just on Windows and I don't like too much the Apple OS. But I've to be honest, I don't like also Steve Jobs and the ideology that Apple brings with its cult. So I'm religious as you. The important thing is to be aware of why you think in a certain way and why you take certain decisions. Tools are tools are tools.