The sys admin's daily grind: TTYtter
Twitter, so everyone says, is modern, fun, sociologically illuminating and otherwise useless. Even Charly feeds a budgie – but at the console, it's a question of style.
I like graphical clients – in fact, I would be lost without Thunderbird – but because I often spend hours in front of machines without X11, I keep on top of the good old command-line tools. For example, I love using the Mutt mail client, and both slrn for Usenet and Irssi for IRC run on a small root server in a screen session.
Recently, I added another animal to my console zoo: TTYtter . As you might guess from the hybrid name, TTYtter is a non-graphical Twitter client. The Perl script uses either cURL  or Lynx  to connect to the Twitter API. TTYtter's author, Cameron Kaiser, who also happens to be a doctor, deliberately avoided special Perl modules like Net::Twitter so that he could run the tool on systems that are not allowed to download modules from CPAN.
I normally start my TTYtter with the following command:
ttytter -vcheck -ansi -wrap-user=Username:Password
The first parameter checks that my TTYtter version is up to date. (Kaiser is still polishing the client; version 0.9.5 was the latest when this issue went to press.) The -ansi option tells the program to use extended control characters – so the console can support a colored display, for example. The -wrap parameter gives me clean newlines after 79 characters by default.
Admin Style to the Max
After launching, TTYtter shows me the last 10 tweets and the last two direct messages. At the prompt, I can write another tweet and dispatch it. To use any of the Twitter API's other functions, I need to issue IRC-style commands preceded by a slash (/). Typing /trends displays a list of the current hot topics (Figure 1). Conveniently, TTYtter also provides a list of commands .
Incidentally, it is not difficult to control the Twitter API directly with cURL. The line
curl --basic --user "User_Name:Password"--data-ascii "Blafasel""http://twitter.com/statuses/update.json"
sends the text Blafasel as a Tweet under my username. In fact, this example actually has a meaningful use. For example, I just twitter any status messages from my server that are interesting, as you can see in Figure 2.
Buy this article as PDF
MSBuild is now just another GitHub project as Redmond continues its path to the light.
Malware could pass data and commands between disconnected computers without leaving a trace on the network.
New rules emphasize collegiality in coding.
Upstart lands in the dust bin as a new era begins for Linux.
HP's annual Cyber Risk report offers a bleak look at the state of IT.
But what do the big numbers really mean?
.NET Core execution engine is the basis for cross-platform .NET implementations.
The Xnote trojan hides itself on the target system and will launch a variety of attacks on command.
Spammers go low-volume, and 90% of IE browsers are unpatched.
Adobe scrambles to release patches for vulnerable Flash Player.