Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

SQL Server has some extra tools, as you've pointed out. You can probably find open source tools equally as powerful (and, by definition, more flexible) to perform those tasks. Granted, you may have to invest some time finding and learning those tools - but really, that's just life. Sometimes it's worth putting in the effort [1].

I've found that the main difference is how you work as a developer. If you're happy using a clicky interface to get your work done, more power to you. I need to be able to script everything I do, because I don't like to repeat myself. The rigmarole of restoring a db from a backup in SQL Server is just insane compared to the 4 second command I could issue at the terminal for postgres.

I know it's going to sound like a total exaggeration but I literally can't use MS products for more than a few hours at a time because of the pain I get in my arm from using the mouse. And trust me, it's not just because I don't know my way around - I spent years developing on that platform (and will never go back).

[1] http://xkcd.com/1205/



SQL Server gives you both. They have a UI for everything, and everything you do has an option to script. So you might go through the whole wizards for replication, then when done, save off a T-SQL script. To my knowledge, there's nothing that requires the UI; it's there just to make things easier. Then on top of that, they expose an API you can use for further automation, if T-SQL isn't to your liking.

Your example is particularly odd: RESTORE DATABASE bla FROM DISK = 'file.bak' The docs are quite comprehensive, with lots of useful examples[1].

MS deserves some flak for UI-only, but SQL Server isn't one of those products (at least since 2005). MS products in general are also becoming much more scriptable, as Powershell access is becoming a requirement for new products.

I prefer a clicky interface for things I'm not going to do often (like configure a new cluster) or things I don't want to commit to memory or have to look up. Anytime I need to repeat, I either read docs and construct a command, or if it's a complicated thing, I'll use the wizard to generate a base script and modify as needed.

1: http://msdn.microsoft.com/en-us/library/ms186858.aspx


It's not all roses. Have you ever tried scripting and versioning SSIS for example?

Probably not.

Which is why we use Spring Integration...


It feels like using the mouse is the tradeoff for using Microsoft products. I use Visual Studio and SQL Sever at work, and they are such a productivity boost, but I hate how often I have to use the mouse. The problem is many of the benefits of using their products perks would be difficult to navigate around with a keyboard.

At times it's frustrating how often you have to use the mouse, but other times it's so great compared to any alternative ways (that I know of).


Learn the shortcuts, it isn't very hard.


Yes one thing that always amused me at microsoft was how often they would talk about how much better their tooling experience is. It's not. Being able to go into roo or ror or whatever else and generate huge amounts of scaffolding and get tons of upfront work down with out only a few keystrokes beats the socks off of an obtuse and clunky sql and ide interface where some portions work well and some portions look like remnants of the early nineties.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: