Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

although you can do anything in linux it tends to require a lot of tweaking in config files and reading a lot of manuals/tutorials before you can have it running in your way.

i know that it gets a lot easier by time, and the apt-get installations with ubuntu/debian is heading the right way.

but how can linux be more userfriendly for us in the future?

i thought that if more is automated like an IDE environment, eg. typing svn will give us all the commands and description about each command when you move between commands with your keyboard. that would be great.

but that's just one example. another is the navigation in the terminal between folders. now you have to type a lot just to jump from/to different folders. would be great with some more automatization here too.

i know that these extra features will slow down the server, but its 2010 now, and these features are not that heavy for the cpu, but makes it more userfriendly and encourage maintainance of a server, not frighten u off.

what do you think about this? should/could we have more user friendly linux environment in servers, something that has annoyed you a lot?

a lot of things are done in the unix way, but maybe we should reinvent the wheel in some areas, cause apparently, its so...repeatingly today and difficult to do easy tasks. it should be easier i think..

share|improve this question

migrated from stackoverflow.com Apr 2 '10 at 0:45

This question came from our site for professional and enthusiast programmers.

6  
Unix is designed for advanced users; once you get over the learning curve you actually start to appreciate much of this stuff, believe it or not. –  Justin Ethier Apr 2 '10 at 0:14
1  
once you get the hang of it, it will be easy. If you want easy without too much learning, use windows. –  user37841 Apr 2 '10 at 0:20
    
im not talking about not willing to learn, or want it simpler, but easier to use. like coding php/java without a good IDE. its a pain in the ass...requires a lot of manual work. im talking about, not have to type a lot, lookup in a lot of manuals to remember things. eg, maybe just have ALL the directives in ALL the config files to start with? then you just uncomment and they are ready to use (yes, a lot of config files have this, but not all directives, and not all config files are in this way). but small things like this, would spare me to save a LOT of tutorial reading. –  ajsie Apr 2 '10 at 0:26
    
and also have comments the describe what each directive does, and if i want to find a new applications ALL config files, i should just type a command and i see all files are located where. what are config files, what are other files..and so on.. like an IDE...more supporting the allround stuff. –  ajsie Apr 2 '10 at 0:28

3 Answers 3

up vote 3 down vote accepted

I will assume you know UNIX philosophy and why UNIX tools are built the way they are.

I'll address two main points in your question that I understood from your post: "the shell is laborious to use", and "there is a lot of config file tweaking"

Shell

I don't agree that operating in a shell is more repetitive and manual. It is, in fact, the opposite. You can easily script and automate things.

Also, modern distributions make manual shell use even easier to use with tab completions for file names and also command arguments. That makes navigation much easier. In Ubuntu you can type svn followed by space and hit tab twice, for example, to get the list of available svn commands. Plus, virtually any command will give you its usage instructions if you misuse it. If there is a feature of the command line you think you need, it's either already there and you don't know about it, or there is a better way. :)

There is some learning curve involved, but the learning pays off as you discover more and more things you can do with a command line tools and the way you can combine seemingly unrelated minimalistic tools, there is some point where your productivity becomes greater than if you'd use more integrated tools (like IDEs).

For example, things like multi-platform multi-architecture C++ builds tha tpulls subprojects from a set of different development branches while using multiple different toolchains is not easy to do in an IDE, because it's usually tailored for a number of common use cases.

Config files

Because software in Linux-based operating systems is not made by a single vendor, its software packages come from a very wide variety of people, and hence Linux ecosystem is very heterogeneous and everyone tends to do things their way with regards to things like APIs and config files. That's the price you pay for diversity.

But it's not as steep as it seems. As you learn more about it, there are recurring patterns in the way programs and libraries are organized (there are only so many sensible ways), so you can pick them up in minutes without reading lots of documentation.

share|improve this answer
    
agree with you, after the learning is done, everything seems to be more easy to use. just have to go through the learning process:) –  ajsie Apr 2 '10 at 15:48

The UNIX philosophy is each component should "do one thing and one thing well" and this has served UNIX and Linux quite well. IMHO, yes, we can make things more user friendly, but the way to do so is by providing a separate GUI configuration application that reads/writes the underlying config files; not by making the low-level code more complex, which would make things slower and possibly introduce bugs.

share|improve this answer
    
i dont know, seems like we are putting a lot of time in knowing how everything works, when we only wants to set up easy things. a lot of people (i mean A LOT) are only reading tutorials cause its easy. just google something up quickly, copy, paste approach. we shouldnt always depend on google. then something is wrong. if i install apache, i want to know exactly where the main folder is, where all the files are, i edit the main conf file, everything is there. now, you have to jump between files, reading a lot from google to get a hang of it. it should and COULD be easier than this, trust me.. –  ajsie Apr 2 '10 at 0:38
    
it has nothing to do with being an advanced or simple user. it has to do with structure and userfriendlyness...linux shell management in a apple way. so im not talking about GUI stuff. and still, every component will do one thing and one thing well. but next time i install another software, i know exactly where the conf file is, and by entering in, i have every piece of information there. ready to go...(why separate config options from the config files, put it all there , just comment en, then i mean ALL options, no more googling on easy stuff right?) –  ajsie Apr 2 '10 at 0:38
    
@ajsie, It takes time to parse the config file, and the config file takes up space, so no, it does not make sense to have a super long config file. Also, different distributions have different default configuration files, anyway. So, some distributions might have more complete config files than others. –  Michael Aaron Safyan Apr 2 '10 at 0:59
    
since every application uses its own formatting, you need to read the manuals for the app - I know, horror! RTFM is cliche because it's so true –  warren Apr 5 '10 at 15:14

I'd only want to add my couple of cents. You may know this, but there may be others reading this who don't.

  1. Use Tab and Double-Tab, become used to use it, you'll probably be surprised how useful it is.
  2. Use pushd/popd to swap directories.
  3. Use grep, sed, awk to read, parse and edit files and config files in particular. If you use them, learn more. If you think you know them, learn even more :)
  4. Use pipes. It's simple, but it needs time to come to understanding how powerful this feature is.
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.