GUI or CLI

  • Comments posted to this topic are about the item GUI or CLI

  • Horses for courses.

    I would say 'it depends' on, amongst other things, your scale, your mix of servers/instances, your job function and experience.

    I find truly ironic, this "Text Mode" obsession in the "Windows" world. Even within Microsoft's later editions of Visual Studio, there's less ad less "Visual" and more-and-more "Text Editor" for producing user interfaces.

    And I get really annoyed with is people who think *their* way of doing something is the *right* way, and that any other way is deserving of scorn. That's the domain of religious zealots.

    I'm a 'part-time' DBA (about 1/4 of my job time-wise), managing a score of mostly application-specific SQL instances that are mostly completely different from each other. In 'global' terms, our databases are tiny; the largest (our ERP database) being only about 50GB. So all up, we have a few hundred GB of data that I try to at least make sure is backed up regularly, and performance kept acceptable.

    I use SSMS pretty much exclusively. Not that I'm afraid of a command line (I come from a VAX/VMS background, and moved to Windows out of necessity), but SSMS gives me a one-stop place to get to all the servers as/when needed. We have very few in-house developed systems; mostly I'm poking around inside some vendor's 'shrink-wrap' database trying to fix problems that have cropped up, and it's just much quicker for me to just click-to-expand databases, tables, views, etc. I use the scripting features all the time, but avoid using the GUI view designer (because I find the resulting SQL is barely legible). I find it an invaluable tool.

    Most of the rest of my job is maintaining our few internally developed apps, which also involves me using SSMS as a development/troubleshooting/configuration tool. And it makes a great XML editor.

    I'm sure if I was a full-time DBA to a Fortune 100 company with 500 identical servers servicing some Mega-Application, that I would have a very different view of the world. But that's not my job, so SSMS is the right tool for *me*.

    I see the deprecation of GUI-based tooling as a step away from Microsoft's heritage. I believe that their GUIs (flawed though they may be) are core to the success that Microsoft have had with many of their products - the GUI admin tools available back in Windows NT days made the opposition (Novell) look primitive, and made Windows admin easy. Similarly with the Visual XXX development tools, and SQL's SSMS and its predecessor (Enterprise Manager) - they empowered people who just needed to get a job done, to get the job done, and get it done quickly, and made the products much more 'approachable' than their competitors.

    For me, I think that if I didn't have SSMS, I'd have to question why I'd bother holding on to SQL Server as a platform for our internal systems; licensing PostgreSQL would be much simpler...

  • Pretty much agree with Ryan.  I've yet to see anything worthwhile come out of a religious war.  I'm a great believer in the genius of AND vs the tyranny of OR.
    For me the GUI is great for rapid experimentation, prototyping what you want to do and generating the base scripts.
    The command line is great for putting together a script that can be run in multiple environments.

    These are tools to do a job not shackles to hamper us.

  • I totally agree with Ryan and David. I love the following from David (whether his or a quote in of itself):

    the genius of AND vs the tyranny of OR


    I also think that it is essential to be able to both as a professional. Not necessarily an expert, as already stated, but be comfortable to use either as and when needed even if it requires the support of ones own favourite search engine.

    Gaz

    -- Stop your grinnin' and drop your linen...they're everywhere!!!

  • I'm very happy with a CLI, but I am old and that is all that we once had.  I also use Linux extensively at home, and use the terminal a lot there (Guake makes it much easier as well).
    Strangely I was asked yesterday if a server had an FTP Client on it, and received a look like I had grown a second head when I replied that they all did, opened a cmd window and typed FTP, to enter a session.
    For some things, a GUI is easier, especially if it is a one-off setting, but if you need to set up a bunch of machines, or server, all exactly the same then the CLI, and preferably a script, is the best tool for the job, whether that is DOS, Bash, PoSH, or SQL.

  • Both CLI and GUI have their advantages and disadvantages. I'd like to believe I'm in the majority of rational thinkers in that, where a CLI is more efficient or provides an option not available in the GUI, or vice-versa, let the tool fit the requirements.

    Luther

  • There's no war between CLI and GUI proponents, there's just clickbait and emotional responses spewed on the InterTubes.

    It's not an absolute either/or absolutism, experienced computer pros recognize the strengths of the full spectrum of resources we have available. I think it's fine that we can explore a range of various tools from the bare CLI, to the assisted CLI  that has tab completion, to VS Code, to SSMS, to Visual Studio.

    I still have batch files in production. I also still develop applications with user friendlier interfaces. I recognized the value of both of the CLI and GUI back when AutoCAD had a CLI and the first Macs were released in the '80s. And one of the coolest things about SSMS is that you can automatic generate scripts from the GUI. It's a good marriage of both interface paradigms.

  • Do we also need to recognise professional banter for what it is? Is this adding to a myth of contention?

    Gaz

    -- Stop your grinnin' and drop your linen...they're everywhere!!!

  • Gary Varga - Tuesday, March 14, 2017 2:30 AM

    the genius of AND vs the tyranny of OR

    Sadly not one of mine.  Neither is "willing prisoners of the familiar".

  • chrisn-585491 - Tuesday, March 14, 2017 6:36 AM

    There's no war between CLI and GUI proponents, there's just clickbait and emotional responses spewed on the InterTubes.

    It's not an absolute either/or absolutism, experienced computer pros recognize the strengths of the full spectrum of resources we have available. I think it's fine that we can explore a range of various tools from the bare CLI, to the assisted CLI  that has tab completion, to VS Code, to SSMS, to Visual Studio.

    Probably not on SQL Server Central; people on these forums seem to be quite civil and level-headed. 

    But I've seen some hysterical (both meanings of that word) flame wars on the craziest of I.T.-related subjects.

  • The great Tom Kyte from Oracle said:

    "there is and will be character mode sqlplus which IMHO was/is the best interface. I never used that "gui" thing in windows when forced to run windows -- always the dos command line version.

    there is "isql" plus as well, the browser thing (which I never use)... "

    Mind you, that was in 2003.

    SQL*Plus

  • I think I'm like you, Steve. I've use PoSH when I can, but am not an expert at it. Whenever I'm using SSMS or Visual Studio I depend a great deal upon tab completion. I know what I want to do and can do it most of the time, but there are times when I cannot remember precisely the name of a command. Tab completion is a Godsend. But I wonder about some companies who evaluate applicants. Over the last 2 years I've applied for several and been evaluated for positions. Many use different online code testing sites. You go to them, they give you a problem and then you write it up in whatever your language of choice. And often there is no tab completion of any sort. I feel like I'm at a distinct disadvantage and really for no reason whatsoever other than I don't commit to memory each and every command's spelling.

    Kindest Regards, Rod Connect with me on LinkedIn.

  • Rod at work - Wednesday, March 15, 2017 8:19 AM

    I think I'm like you, Steve. I've use PoSH when I can, but am not an expert at it. Whenever I'm using SSMS or Visual Studio I depend a great deal upon tab completion. I know what I want to do and can do it most of the time, but there are times when I cannot remember precisely the name of a command. Tab completion is a Godsend. But I wonder about some companies who evaluate applicants. Over the last 2 years I've applied for several and been evaluated for positions. Many use different online code testing sites. You go to them, they give you a problem and then you write it up in whatever your language of choice. And often there is no tab completion of any sort. I feel like I'm at a distinct disadvantage and really for no reason whatsoever other than I don't commit to memory each and every command's spelling.

    I do worry about these online tests. As development becomes just part of my role I have lost the ability to know so much syntax off the top of my head. It would seam that I could start typing and I would remember as I was going along. There was no pause. Now I am focused on so much else besides code that if I were to be tested like this then I would not be able to convey what I perceive as my knowledge.

    Gaz

    -- Stop your grinnin' and drop your linen...they're everywhere!!!

  • Gary Varga - Wednesday, March 15, 2017 8:27 AM

    Rod at work - Wednesday, March 15, 2017 8:19 AM

    Over the last 2 years I've applied for several and been evaluated for positions. Many use different online code testing sites. You go to them, they give you a problem and then you write it up in whatever your language of choice. And often there is no tab completion of any sort. I feel like I'm at a distinct disadvantage and really for no reason whatsoever other than I don't commit to memory each and every command's spelling.

    I do worry about these online tests. As development becomes just part of my role I have lost the ability to know so much syntax off the top of my head. It would seam that I could start typing and I would remember as I was going along. There was no pause. Now I am focused on so much else besides code that if I were to be tested like this then I would not be able to convey what I perceive as my knowledge.

    I had a whiteboard test for my current role, but I was asked to use either SQL or psudocode as it is more important to have a knowledge of how to do it than be technically perfect off the top of your head, and to be able to explain you reasoning.  Even in a language with autocomplete there are still logical errors code when you first compile/run it, that is why we have debugging.  "The art of computer programming" was deliberately written in mathematical psudocode because Prof.Knuth realized that languages may come and go, but the fundamental principals remain the same.  This is true no mater which test you do, or if you use a CLI or GUI to achieve it.

    I do agree with Gary that professional badinage could be seen as an argument from someone outside of our particular field of expertise, and even emoticons cannot fully derogate this. Perhaps it is time to bring back the teaching of rhetoric and debating in schools.

  • One of the greatest inventions ever is the 'right click, script as'  and the script button on many of the SSMS dialog boxes. When SQL Server was in it's early days, DBA's were advised NEVER to use Enterprise Manager to do anything, because you never knew what it was doing behind the scenes. With the script option, you get to see everything, make whatever changes you need, and save the code if needed.

Viewing 15 posts - 1 through 15 (of 16 total)

You must be logged in to reply to this topic. Login to reply