This might be slightly off-topic, but am I the only one that thinks that command line tools are archaic with some pretty serious drawbacks? I see and acknowledge the power they can wield in the right hands, but for mere mortals it's a terrible experience. Especially on a windows box.<p>I've started learning Symfony2, and the default is to get it up and running using the dependancy manager composer, a commandline based tool. I've spent a week trying to finish the simple task of installing the framework. No success. Now, I don't make a living programming, so I'm definitely at the shallow end of the programming pool. But still. A week.<p>There are several problems as I see it:<p>- No discoverability. You are given no clues whatsoever as to what commands are available to you. You have to know exactly what you want to do. Yes, you can read manpages, forum posts, etc. but finding, learning and memorising a whole set of commands used in some program you might never use again seems like a terrible waste of productive time. Without the manual you're flying blind.<p>- All sorts of opaque dependencies. Composer for instance apparently requires git installed for it to work. But it doesn't say that anywhere. You also need to define paths, etc. which isn't covered anywhere.<p>- A million minor flaws and bugs. Until now I've run up against at least a few bugs, either in composer or in some other part of the chain of software. Only opaque general warnings are given, and finding out exactly what is wrong is next to impossible.<p>- Terrible UI. Copying and pasting doesn't follow convention, copying from a commandline to a notepad inserts linebreaks that you have to clean up manually, there's no way to maximise the cmd.exe window. The list of basic usability flaws goes on.<p>This isn't meant as trolling or ranting, although I must say I'm genuinely alienated by the commandline. I understand that text is great way for programs to talk to each other, I understand that the commandline is a great way to talk to a remote server, and I understand the power that piping, etc. gives you, so it's not like I'm denouncing the power that's inherent in the tool.<p>The problem is that the learning curve is tremendously steep, and I just don't feel it's worth it. To do the simplest thing I need to learn how a whole ecosystem works. I also have to page the information I need together from a number of different sources that I first have to find. It's kind of like having to build a car just to ride down to the baker to get some bread. It's quicker to walk than assemble a car before you can drive.