Live data from Hacker News

The power of the command-line as a programming environment

pindexis.github.io

1–10 of 35 posts

Re: The power of the command-line as a programming environment

#3
I find that after I discovered tmux, I was able to use the command line full-time much more easily. Now everything I do is command-line-unix-ey, from my coding (with Emacs) to my web browser (Elinks).

It's kind of a pain in the butt to learn, but I feel that it helps me stay focused on my work; there are a lot less distractions in the command-line world.

Re: The power of the command-line as a programming environment

#5
post #3

I find that after I discovered tmux, I was able to use the command line full-time much more easily. Now everything I do is command-line-unix-ey, from my coding (with Emacs) to my web browser (Elinks). It's kind of a pain in the butt to learn, but I feel that it helps me stay focused on my work; there are a lot less distractions in the command-line world.

I like the idea of text-mode browsing, but I find the translation of CSS causes practical problems whether its elinks link lynx etc. For example, Hacker News nested comments are displayed as being on one level. There is a hack to fix this, but per-site hacks is not a usable way to browse the web.

Re: The power of the command-line as a programming environment

#6

Neal Stephenson's "In the Beginning was the Command Line" is a more in depth take on this topic: http://www.cryptonomicon.com/beginning.html

According to https://en.wikipedia.org/wiki/In_the_Beginning..._Was_the_Co...

In a Slashdot interview in 2004, in response to the question:

... have you embraced the new UNIX based MacOS X as the OS you want to use when you "Just want to go to Disneyland"?

he replied: I embraced OS X as soon as it was available and have never looked back. So a lot of In the Beginning...was the Command Line is now obsolete. I keep meaning to update it, but if I'm honest with myself, I have to say this is unlikely.

Re: The power of the command-line as a programming environment

#8
My IDE is full screen emacs, with one emacs window running a shell for when I just want a command line. This works great on MacOSX and on Linux. It gives me integrated debugging, code navigation (with cscope-mode), code completion, git support and more. The downside is the steep learning curve, but I climbed that years ago and haven't looked back.

Re: The power of the command-line as a programming environment

#9
I would love to see more projects embrace this method of development as a lowest-common-denominator. I'd be great to be able to download a library and build it using the least number of tools. For a Java project, this might just be javac. The project could include build descriptors for ant, maven, etc. as well as IDE config.

It feels like half the time I download a Java/Maven project, there is some issue with the build that I have to spend time debugging. I'm not familiar with Maven, and Maven is pretty complicated, so this is a pain.

Re: The power of the command-line as a programming environment

#10
The exec system call in Unix has an argument named argv which is an array of strings. Each of these strings has traditionally been called a command-line argument. Also, when the user of a Unix shell hits the return key, a string or line of text is submitted to the shell for interpretation, and that string used to be called a command line.

For those writers who insist on using the term "command line" to mean avoiding pointing devices and doing everything through a terminal-emulation application, please tell me what term I should switch to to refer to the elements of argv or to refer to a string submitted to a Unix shell. I want a term that does not through endless repetition on HN and other forums leave the reader with the impression that the terminal-emulation app (or the Linux console) is my preferred interface to my computer.

Suppose for example that TextMate or Atom on OS X or Linux is my preferred programming environment and that from my preferred programming environment, I frequently run programs like grep, dict and ping -- with the output from those programs collected by and presented to the user by a TextMate or Atom extension. grep, dict and ping adhere to certain conventions, such as flags or switches that start with a hyphen, and the convention of writing ordinary output to a file descriptor named stdout while writing notifications of abnormal conditions to stderr. What term should I use to refer to those conventions?

Post reply on HN