Tuesday, December 30, 2008

The Command Line

It's only scary because we make it scary. It's the most powerful interface we currently have with our machines, the predecessor of the phonetic shell, of voice controlled interfaces.

It doesn't have to be. It shouldn't be.
I love the command line, but frick, do I hate unix.

Don't get me wrong. POSIX is great. It's on my list of requisites for operating system consideration-- but why in hades do END USERS _ever_ get exposed to it?

An online acquaintance of mine from Argentina made a nice little 'urip' utility that turns youtube links into audio files on your desktop. I'm his primary tester, and today we talked a little about command line arguments. An excerpt:

leo_rockway: I could check if the non regex matching "thing" is either -g or --ogg
ethan: what does -g do?
leo_rockway: converts to ogg/vorbis
ethan: ....
leo_rockway: didn't you just read the help?
ethan: but that's what --ogg does
leo_rockway: that's the long argument
ethan: is that how it's done?
leo_rockway: there's always a short and a long argument
leo_rockway: yup
leo_rockway: just man any command and you'll see
leo_rockway: man ls
leo_rockway: -a, --all
leo_rockway: do not ignore entries starting with .
ethan: funny thing there....
ethan: you know what
ethan: if you're going to bother with human readable arguments
ethan: drop the silly --
ethan: -a, all
ethan: list all
ethan: ls -a
leo_rockway: *shrug*
ethan: start a new, more efficient convention, if you can
ethan: urip ogg $URL
ethan: can it be done?
leo_rockway: yes it can
ethan: :)
ethan: think of the usability
ethan: ;)
ethan: when I'm giving my mom instructions over the phone....
ethan: 'install urip'
ethan: 'urip ogg $URL'
ethan: 'sudo apt dash get install urip'
ethan: 'urip dash dash ogg $URL'
leo_rockway: kill dash nine!
ethan: 'murder firefox'

Another excerpt, this time from my ~/.bashrc:

# system command aliases
alias list='ls'
alias delete='rm'
alias DELETE='sudo rm'
alias frigging='sudo'
alias install='sudo apt-get install'
alias uninstall='sudo apt-get remove'
alias check-update='sudo apt-get update'
alias update='sudo apt-get upgrade'
alias murder='sudo killall'
alias get='wget'
alias GET='sudo wget'
alias enter='cd'
alias up='cd ..'
alias home='cd ~/'
alias unmount='umount'

function remove () { mv "$@" ~/.local/share/Trash/files; }
function REMOVE () { sudo mv "$@" ~/.local/share/Trash/files; }

Ubuntu may want to be linux for human beings, but I don't know what everybody else is doing. I don't think we can stay on the same path and accomplish what we're setting out to do.
The command line is a cryptic disgrace because we seem content to leave it that way. Fixing this may require patching just about every application in the Ubuntu operating system, but hey, if it can't do that, what is bzr for again?

Saturday, December 27, 2008

Corner Case

Hi, I'm the corner case. I'm the guy you always leave out in the cold, the one you say is crazy. I do things with your software you never thought anyone would attempt. I innovate, I drive progress, and yet you shun me, ignore me, tell me what I'm doing isn't 'supported'.

I'm the one sending SMS, facebookchat messages, and tweets from pidgin. The one claiming that window-picker-appet is the savior of the gnome desktop. The one who made that dual seat rig with userful and pulseaudio. I'm the guy who uses gnome screensavers as my desktop background.

I run into your odd bugs, the ugly ones you hope no one will ever see. I submit the feature requests that put that silly, confused look on your face. I know where your project is going, I know its destiny. Please, listen to me--

I'm the corner case.

Just Works

Digipro drawing pad users of the world, unite.


Let's make these things Just Work in 9.04.
fabrice_sp is helping me with basically all of my packaging at this stage, we have one we're working on for the wizardpen. The idea for the end result is this:
a .deb file with the drive in it, and a postinstall script that goes as follows:

'please unplug your drawing pad and hit enter.'
grep -i name /proc/bus/input/devices
'pleas plug in your drawing pad and hit enter.'
grep -i name /proc/bus/input/devices
(the second time the command is run, there should be one additional result.)
Take that result and add it to /etc/hal/fdi/policy/99-x11-wizardpen.fdi, which needs to contain some other basically static xml, but I don't know how to post it here..

What would be /really/ nice of course is if the driver was included in main, and could recognize all the different wizardpen drawing pads and make them all Just Work; that is the end goal here, and we need all the help we can get. I hope the wacom folks have it better than this..

Friday, November 14, 2008

I'm an Ubuntero!

First order of business: I've upgraded the Ubuntu Stellarium package to 0.10.0
Here's how to get it.

I have installed stellarium on my machine with these same steps to ensure that nothing is broken. It's not as scary as it looks.

Note that this guide will not work if you're using a PowerPC machine such as a PowerBook or PlayStation3. Ubuntu doesn't have OpenGL acceleration on the PS3 anyways, and if you want to build a .deb for yourself on a PowerBook or other PPC based machine, let me know; I can walk you through it. Unfortunately, canonical only builds PPA packages for i386 (x86), amd64 (x86_64), and lpia (low power intel architecture)-- which is just another way of saying ...more x86. Also note that this guide will not work on Ubuntu Hardy; only Intrepid and newer. If you're still waiting for a bug or two to get worked out of Intrepid, just hang onto this for later.

Firstly, add the apt-line to your software sources.
System > Administration > Software Sources
Go to the 'Third-Party Software' tab, click the 'add' button near the bottom left corner of the window.
"Enter the complete APT line of the repository that you want to add as source"

deb http://ppa.launchpad.net/ethana2/ubuntu intrepid main

When you close the window, it'll tell you it needs to reload the index of stuff you can install, go ahead and do it.
== at this point, you have added my Personal Package Archive to your Ubuntu installation ==

[If you already had stellarium installed, just run updates and you're done. --I'll assume you don't.]

Next, go to Applications > Add/Remove, and search for stellarium. It should return one result, and that one result is of course the one you want.
Check the box next to it and hit 'Apply Changes'. Enter your password, and it will probably complain about how I haven't been knighted by King Shuttleworth. Ignore this and install anyway. I am responsible to Canonical for my behavior in regards to this PPA, having signed their code of conduct with gpg, and I'm not going to mess with anyone.

After installing this application, you will be provided with the opportunity to run it immediately. Do what you want.
Stellarium will show up under Applications > Education, but you can move it wherever you will with the Main Menu Editor found in System > Prefs.


*Enjoying is not required by the GPL; if you choose not to enjoy it, no one can stop you.

Friday, June 20, 2008

ignore this


md5 for a text file for the verification of its creation date