Live data from Hacker News

Learn just enough Linux to get things done

alexpetralia.com

11–20 of 138 posts

Re: Learn just enough Linux to get things done

#11

Great list for starters. But getting real work done requires much more. Having just walked through some basic steps with a novice, I can concur, modern linux is impossible without "recipes". Just setting up a hello world web app can involve: ssh login to running instance, using curl to download the gcloud sdk, tar to unpack, sudo to install, systemctl to start local processes, useradd dedicated www, chmod and chroot…

>These systems must become more accessible to the average human.

I disagree. Firstly, all the commands you mentioned are pretty simple to understand given that they have a manpage and lots of help available online.

Secondly, not everything needs to dumbed down for the average user. A large part of the power comes from all the tools and flags available and the combination possibilities. Dumbed down tools are limiting and frustrating.

I’d expect any software engineer worth their salt to not be an “average user” and grasp a few simple commands the same way they approach a new project or programming language, i.e. they should be able to pick up the basics even if it’s a complex system. That’s a prerequisite for programming and understanding a project’s code well anyways.

Re: Learn just enough Linux to get things done

#13
post #3

In my project, I maintain 3 documents. The first one is a similar list of basic linux knowledge that people should learn when arriving on the project. The second is "UnixTipsAndPitfalls" where people should add new entries when they encounter usefull commands. The third one is about tar.

> The third one is about tar.

Why do people have such a difficult time with tar? The only tar commands I've ever needed (or seen other people need) are `tar cf ...` or `tar xf ...` (occasionally I'll need to chuck a z in there if the file is/needs to be gzipped), are other people just using far more complex tar commands than I am?

Re: Learn just enough Linux to get things done

#14

Great list for starters. But getting real work done requires much more. Having just walked through some basic steps with a novice, I can concur, modern linux is impossible without "recipes". Just setting up a hello world web app can involve: ssh login to running instance, using curl to download the gcloud sdk, tar to unpack, sudo to install, systemctl to start local processes, useradd dedicated www, chmod and chroot…

These systems should be handled and operated by dedicated people (administrators/ops/devops/pick your religion) who care enough to know how to use the tools they work with. ;)

Re: Learn just enough Linux to get things done

#15

Great list for starters. But getting real work done requires much more. Having just walked through some basic steps with a novice, I can concur, modern linux is impossible without "recipes". Just setting up a hello world web app can involve: ssh login to running instance, using curl to download the gcloud sdk, tar to unpack, sudo to install, systemctl to start local processes, useradd dedicated www, chmod and chroot…

> These systems must become more accessible to the average human. I disagree. Firstly, all the commands you mentioned are pretty simple to understand given that they have a manpage and lots of help available online. Secondly, not everything needs to dumbed down for the average user. A large part of the power comes from all the tools and flags available and the combination possibilities. Dumbed down tools are limiting…

"Well" is the keyword here. They don't, far too often "good enough if it doesn't crash the machine on start" is a norm in companies of all sizes when writing applications code and infrastructure code.

Re: Learn just enough Linux to get things done

#16
post #5

This article should be named "Learn just enough Unix to get things done". Almost everything explained can be done on any Unix-like system like macOS and it's not exclusive to Linux.

Disagree.

It could be mentioned early in the article.

However for its target audience (I assume) that would be far less useful.

("This looks great but seems to be about Unix and I know this is a Linux thing.")

Re: Learn just enough Linux to get things done

#17
post #8
post #3

In my project, I maintain 3 documents. The first one is a similar list of basic linux knowledge that people should learn when arriving on the project. The second is "UnixTipsAndPitfalls" where people should add new entries when they encounter usefull commands. The third one is about tar.

Over years I've heard a lot of complains on tar being hard to use, but in real-life I really ever had to use only these two commands: tar zcvf and tar zxvf. It's actually quite easy to remember: tar Zip Compress Verbose File, and tar Zip eXtract Verbose File.

Yes. I also suggest to use tar instead of the dangerous cp -r: tar c -C src . | tar x -C dst.

It works over ssh connections (ssh -C for compression) and is a good training of tar syntax.

Re: Learn just enough Linux to get things done

#18
post #3

In my project, I maintain 3 documents. The first one is a similar list of basic linux knowledge that people should learn when arriving on the project. The second is "UnixTipsAndPitfalls" where people should add new entries when they encounter usefull commands. The third one is about tar.

> The third one is about tar. Why do people have such a difficult time with tar? The only tar commands I've ever needed (or seen other people need) are `tar cf ...` or `tar xf ...` (occasionally I'll need to chuck a z in there if the file is/needs to be gzipped), are other people just using far more complex tar commands than I am?

Because people assume they should RTM and if memory serves me right it is a whole lot more confusing than your post :-)

Re: Learn just enough Linux to get things done

#19

Great list for starters. But getting real work done requires much more. Having just walked through some basic steps with a novice, I can concur, modern linux is impossible without "recipes". Just setting up a hello world web app can involve: ssh login to running instance, using curl to download the gcloud sdk, tar to unpack, sudo to install, systemctl to start local processes, useradd dedicated www, chmod and chroot…

> These systems must become more accessible to the average human. I disagree. Firstly, all the commands you mentioned are pretty simple to understand given that they have a manpage and lots of help available online. Secondly, not everything needs to dumbed down for the average user. A large part of the power comes from all the tools and flags available and the combination possibilities. Dumbed down tools are limiting…

Problem is, as I've already mentioned elsewhere, that the manpages do a pretty poor job in a number of places.

Yes, I do use them but I guess most Linux users learned most of what they use from colleagues and Internet, not the official documentation.

Re: Learn just enough Linux to get things done

#20

Great list for starters. But getting real work done requires much more. Having just walked through some basic steps with a novice, I can concur, modern linux is impossible without "recipes". Just setting up a hello world web app can involve: ssh login to running instance, using curl to download the gcloud sdk, tar to unpack, sudo to install, systemctl to start local processes, useradd dedicated www, chmod and chroot…

>> For beginners, without a trusted hand to guide them, its beyond intimidating. These systems must become more accessible to the average human.

I cringe at thinking about what a newbie has to go through.

    Install the right version of php/python etc on your platform
    Install a virtual environment
    Install a package manager
    Install a framework
    Install a database
Post reply on HN