PLAYterm: a New Way To Improve Command Line Skills
chrb writes "Linux Journal points out PLAYterm, an interesting project that offers up recordings of Linux command line sessions, with the aim of helping viewers to improve their skills by watching gurus at work." And there's no bad excuse to link to Neal Stephenson's excellent (and free-to-download in delicious zipped-text form) In the Beginning was the Command Line.
I never quite got this command line fetish (and I mean here bash). You're supposed to to simple things in the commandline, if you need something more complicated then use a proper scripting language like Python or Perl. And people shared Python/Perl snippets from the beginning of time.
guru "unix" command line users know pretty much exactly what they are doing and mostly escape extend their commands and type like there is no tomorrow - you would have to play back these videos in slow motion to really learn from them, command typed, enter pressed, pages of stdout scroll by. nice reference point for learners. the only way to truly learn unix commands and get comfortable with command line tools is to avoid the UI completely. try doing stuff from your tty terminals and disable x11 :) learn to do word processing with latex, telnet into your routers to configure them. if your not up for doing that, forget about using the command line tools. back in the early 90's, we couldn't afford RAM to even start x11 :) i personally use cygwin on windows and terminal on macosx for as much as i can.. never know when you need those command line skills again
According to wikipedia, Stephenson said the following in 2004, right here on /. : "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."
Here's the article
learn to do word processing with latex
For live preview, you'll need LyX and that needs X11.
telnet into your routers to configure them
Which for some users would require them to buy a router supporting telnet, as opposed to a home gateway appliance supporting only HTTP.
kn0r tmp # how to ssh?
kn0r tmp # ssh yourusername@someserver.com
^C
kn0r tmp #
If only there were a standard file format for textual content.
It's very simple. With CLI you do stuff that cannot be done (easily) with a GUI. Ever used rsync, grep, find or sed? If not, you probably don't really *work* with computers.
Check out my cross-platform apps
When I was a lad, we had to enter JCL commands on punch cards! And if you saw someone with a deck of cards in their hands, you could grab them and scatter them on the floor. Have fun sorting them!
This was probably one of the earliest forms of malicious hacking.
Schroedinger's Brexit: The UK is both in and out of the EU at the same time!
I watched two of the sessions, didn't see a guru at work.
"if your not up for doing that, forget about using the command line tools."
That's simple conceit, pure snobbery.
Because I am utterly uninterested in using Latex I should forget about ssh, encfs, apt, yum, git, tar, mencoder, ssh, locate, find, grep, echo, cat etc?
If "your" not up to learning basic English, forget about telling other people in writing what they should or shouldn't be doing.
unless they show the reasoning behind the commands and where you can find the knowledge related to that, it is pointless.
i could show you how i use my hp48, that doesn't mean you will understand ANYTHING and you will learn even LESS.
I've opened some of the "videos" and while I think it's a nice idea, it has serious drawbacks. Watching the commands get typed in takes a lot longer than reading code snippets. Also, code snippets will be indexed by search engines, so you can usually quickly find what you need. Here you are completely dependent on the quality of submissions, which is frankly not that high.
Either the the supposed "gurus" are actually people who have done nothing more than read the idiots guide to the command line, or we aren't watching them work. Somehow I don't think gurus type out an explanation of what they are doing mid work, somehow I don't think gurus type quite so slowly. Having had a look at these videos they aren't about becoming better at the commandline. They look very basic and require no prior knowledge.
Not that theirs anything wrong with the project, the summary and title are just a load of crap.
I'm actually not quite sure who they are targeting. On the one side they describe how "ls" works, and on the other there's no mention of the tab key, man pages or any of the other really useful things that show what's currently going on and how to get ahead in your terminal session.
The Mac archive was unopenable on my Mac, so I opened the PC version instead. Just incase others encounter the problem. I think Stufffit didn't like what the file was called, but I couldn't be bothered to tinker
Watch those corners
Just because the command line is useful doesn't mean GUI doesn't have it's advantages. I use whatever tool fits the job best.
I've even checked out TA this time. I am very fond of the principle and the idea behind this. c00, finally some shared shell stuff, should be better than reading BSD fortunes :>
For live preview, you'll need LyX and that needs X11.
Live preview, pfft. Real gurus write LaTeX code in ed and render it in their heads.
For live preview, you'll need LyX and that needs X11.
[La]TeX source does not specify exact layout, and its user should not rely on previews, tweaking the output by issuing random formatting commands until the output looks "right". X and frontends are useful for other purposes, for example, to avoid wasting paper when checking for mistakes in formulas, but this has nothing to do with running a WYSIWYG wordprocessor or imitation of one.
I think, we all went through this discussion when every moron used WYSIWYG HTML generators, and web pages looked like someone vomited markup over a block of text, unless user happened to have exactly the same 800x600 screen and fullscreen IE4 running on it, that "web artist" happened to have.
Which for some users would require them to buy a router supporting telnet, as opposed to a home gateway appliance supporting only HTTP.
All OS used on routers support command line interface. If router does not have command line interface, it was intentionally crippled by manufacturer.
Contrary to the popular belief, there indeed is no God.
Seriously, this isn't recordings... This is just some bloke typing what he learned about bash.
the only way to truly learn unix commands and get comfortable with command line tools is to avoid the UI completely. try doing stuff from your tty terminals and disable x11 :) learn to do word processing with latex, telnet into your routers to configure them. if your not up for doing that, forget about using the command line tools.
That's just a load of bull. Learning to use Latex or Telnetin to routers has nothing to do with learning to use command-line.
Not sure if serious or humorous, so I'll bite:
ssh
ssh --help
info ssh
man ssh
That said, I must admit that I seldom learn anything from it. The reason is that all options are shown. While this is good as a reference when you forgot how to use a program, it gives too much information if you want to find out basic usage.
Don't fight for your country, if your country does not fight for you.
Writing and structuring a book by relying only on inline formatting commands is horribly inefficient and has rightly gone the way of the dodo about two minutes after the GUI was invented. Using visual cues to relay structuring or formatting information is not a sin, but an efficient use of a communications channel.
As LyX, FrameMaker, AuthorIT and a host of other applications show, it's entirely possible to separate presentation from content in a GUI (and even a WYSIWYG) environment. You're right that the user should not engage in visual 'cargo cult' formatting, but forcing the user to write in a text-only interface is not the best way to achieve that.
Username: bobpassword^H^H^H^H^H^H^H^H
... and disable x11 :) ...
... but I need X11 to open all these terminals!
GP was probably alluding to the fact that any cli session is already txt... what is the point of videoing txt?? You'll still be reading txt, just in a massively less efficient format.
The Admin and the Engineer
$ SHUTDOWN -slashdort NOW!!!!!!
>> HOORAY!
Thanks for shutting down Slashdort. Too many people confused it with Slashdot.
SCNR
The Tao of math: The numbers you can count are not the real numbers.
Funny, stumbled upon PLAYtern two weeks ago and found it cool. But what I wanted to do was posting videos of me playing Zork on YouTube so I wrote a PHP script that converts ttyrec recordings into a bunch of PNGs and an AviSynth script that generates a video (demo). Different TrueType fonts and much of the VT100 command set is supported but I haven't yet found the time to clean up the code. If you are interested voice yourself and maybe I make a release out of it.
On se Internetz nobody noes your German.
You can add a serial port to the WRT54g and probably other routers, it's fairly simple.
I think, we all went through this discussion when every moron used WYSIWYG HTML generators, and web pages looked like someone vomited markup over a block of text, unless user happened to have exactly the same 800x600 screen and fullscreen IE4 running on it, that "web artist" happened to have
Yeah, but just about everyone on the planet uses either letter or A4 paper, and so a hard-coded WYSIWYG approach is reasonable for print, with a low chance that you send an A4 formatted document to a person in the UK who complains because it looks like crap when they try to print it on legal-sized paper.
Learn to love Alaska
If by "gone the way of the dodo" you mean "become the way that the majority of books are now sold", then yes, you are correct (hint: ebooks).
If a book is published on paper as well as e-book, there's about 0% chance the book was written using an HTML editor. Instead, it'll be written in a WYSIWYG package and an output processor will be used to create the HTML and PDF.
For ebook-only publications, there may be masochists who'll do the whole thing in an HTML editor, but I suspect that won't be the majority.
The same goes for instruction manuals. WYSIWYG package or a document management system as the source, and automatic processing to create HTML, PDF and whatnot.
# ./do_magic
Profit!!
#
interesting project that offers up recordings of Linux command line sessions
Like .bash_history ?
The three laws of thermodynamics:(1) You can't win. (2) You can't break even. (3) You can't even quit.
..but they really need to realize that people do want to skip ahead of introductions or things they already know in the videos. it would make more sense if it was a pseudo video glued together with javascript just printing lines from a text file imho. (possibly including comments that would be shown as annotations or links to refer to deeper documentation or information of some of the more intrinsic command, like a link to a regular expression tutorial for sed.)
Somebody please mod this up. Having bunch of, possibly commented, history files, would be much better than having this information as a movie.
AccountKiller
Video does help, you see cadence and sequence much more effectively. You see the actual env being targeted which may not be the same as your own but with the context you can map it to your env more easily.
A fool throws a stone into a well and a thousand sages can not remove it.
Replying to myself: when thinking about it some more, I realized there are two extremely important aspects of CLI use that will not show up in the history file: completion and substitution. The history file will only show the commands that got executed, not how they were entered.
AccountKiller
I've recently created a similar set of tutorials, but with a verbal description of what I'm doing while I'm doing it
http://www.youtube.com/watch?v=emJUvMLsU30
http://www.youtube.com/watch?v=18d-OdMHv3Q
All I needed for these was gtk-recordmydesktop and sound recorder. I prefer to have some explanation associated with the commands and seeing the description typed out on screen is too slow.
It would be handy if there were a way to speed the playback up, since the tutorials are sometimes too slow for my pace.
... and disable x11 :) ...
... but I need X11 to open all these terminals!
man screen
There's only one good way to learn programming/scripting/whatever technical: sit down with the reference and study, apply what you've learned in examples so it "sticks", lather, rinse, repeat. If the material is difficult to comprehend on an abstract level (or you don't have a reference) it's nice to have someone explain it to you - but learning a new programming language isn't like that unless it incorporates concepts that are foreign.
Emotions! In your brain!
GNU screen is as user unfriendly as GNU Info is. Sure if you're a suspender wearing unix graybeard you probably live it.. O course you probably browse the web with wget, use emacs and still use IRC and USENET for communication and NOT piracy.
but normal people are probably better off using a tabbed terminal in X.
In the Beginning was the command line? I guess you're a fan of The Diamond Age, because how can you possibly be convinced by "BeOS is like a Tank that can go 80 mph!" Or "Sell Microsoft, they'll never make it past the 90's." It's dated and stupid and wrong.
I blame my command-line fetish on the Legend of Zork.
When already we have a program like "script", what is so new about it?
yaml is a standard file format for txt-files, not sure if that might be of any interest to you
Just because an example was given, it does not mean that the issue collapses to that one point. Man Eating Duck is correct to say that it depends on what you want to do.
When I learned LaTeX, there wasn't a live preview. I edited on my home computer (not a PC), uploaded to the Vax, ran LaTeX to get a DVI, then downloaded and looked at it with my DVI previewer. If it was good, I ran DVI to 24 pin printer or to postscript and printed. Later I could do it all on DOS. Or a Macintosh. Or SunOS.
Mostly, I didn't care about how it looked. I focused on the content, dividing into chapters, lists, equations, references etc. LaTeX had the eye candy part.
I *wish* I could get rid of the live preview in Word and just tell it : here's a header, just like all the others. Maybe LaTeX just had a design I didn't feel compelled to tweak. Oh, LaTeX I could say switch to Helvetica from Times everywhere. I have to highlight every instance in Word.
I am developing a web- based terminal emulator and one of the most useful features I added was the ability to record and play back sessions in a video- like way. Have you ever tried to read a text log of someone's vim session? Ever wish you could play back the output of top so you could see the history of a process utilization?
Not only that but it wicked cool :)
-Riskable
"Those who choose proprietary software will pay for their decision!"
then downloaded and looked at it with my DVI previewer.
If not X11, then what did your home computer's DVI previewer run on?
I focused on the content, dividing into chapters, lists, equations, references etc.
How many iterations did it take to get an equation looking right?
I *wish* I could get rid of the live preview in Word and just tell it : here's a header, just like all the others.
I thought Word had character and paragraph style sheets (e.g. "Normal", "Heading 1"), where changing the style associated with a style preset would change all text associated with that style preset that hasn't had its style overridden. Templates from publishers come with the style presets that they want you to use.
That's about all you need to start.
That doesn't sound quite right. I did personally learn most of my basic command line skills in a windowing-free environment, but I don't think it's necessary.
I think that even after 20 years of command line experience I could learn new things. Regardless of running X.
See, this is a weird idea, too. That command line skills might come in handy. I use the command line every day. Maybe you use some kind of file management app like Windows Explorer? I file manage through the command line. Probably not the most efficient way (I never did learn tools like Midnight Commander), but the command line works well enough.
Alternatives:
Don't fire off grep when you fire off ps (which you did by piping to grep) — do your grep after the ps completes.
O=`ps -ef`;echo "$O"|grep bluefish|awk '{print $2}'
O=`ps -ef`;echo "$O"|awk '{/bluefish/ print $2}'
If you're not actually looking for something on the command line, don't print whole command lines, just the commands. ps without flags.
ps|awk '/bluefish/ {print $1}'
Specify to ps the executable command you wish ps to show you.
ps -C bluefish|awk '/bluefish/ {print $1}
And output only its PID (and hide output headers).
ps -C bluefish -o "pid" --no-headers
Or use pgrep.
pgrep bluefish
You've never used cisco, right?
I'm positive, don't belive me look at my karma
Fast typing is a menace on critical servers.
If all else fails, immortality can always be assured by spectacular error.
telnet router.home.net 80 # No http needed (bonus points for using netcat)
for a slightly more friendly experience:
lynx router.home.net
links router.home.net
or one of the other fine command-line HTTP clients.
... and disable x11 :) ...
... but I need X11 to open all these terminals!
No. Use screen.