Shallow and Pedantic
Whatever happened to black & white LCDs?
I had a Game Boy once. I could play it just about anywhere, and battery life - for the time - was great. I lost it at one point, and replaced it with a Game Gear, which sucked the life out of 6 AA batteries rather quickly. The Game Boy Color was actually decent on battery life, but since it didn’t have a backlight, you had to play it at very specific angles.
Another SSH trick
Ever have a machine you can only ssh into through another machine? It’s a very
common situation in the Technion. Here’s one way to get around it: Assume you
can directly ssh into alpha
, and from alpha
you can ssh into beta
. Have
the following code in your ~/.ssh/config
:
|
|
This requires you to have nc
(netcat) installed on alpha
. Once you do that,
you can run ssh beta
directly from your own box.
Automatically starting rtorrent within screen
These days I don’t stay at home often, but I do have an RSS/BitTorrent combo
fetching me all kinds of neat stuff for me, so I can have it ready for me on
the weekend. I love rtorrent, especially due
to the fact that I can run it in screen
, ssh home and see how things are
doing (or add more torrent to the download). However, sometimes my net
connection breaks down, computers gets shut off, or things like that. This week
my router broke down, so I can’t even ssh home to manually start up rtorrent.
My solution: A small script, which checks whether rtorrent is already running,
and if not - runs it in a detached screen session. Run this with your favorite
cron
software.
Quick time tracking hack
Gnome 2.24 adds a new Time Tracking feature, which I would have found useful. I
don’t have Gnome 2.24 at work, but I do have a Unix-based operating system…
Here’s my new ~/bin/track
:
|
|
Now, if I could only get vim to automatically hit “A” and space for me afterwards… (I’m betting there’s a way to do it, but AFAIK vim can only receive ex-mode commands as parameters).
Delegating methods in Ruby
Sometimes, when constructing a compound object, we are interested in exporting
functionality while retaining encapsulation. For example, suppose we have a
Secretary
class:
|
|
Our Secretary
provides a lot of useful functionality, that our Boss
class
would like to have. Boss
would like to be able to say that he can send a fax,
without having the user explicitly request his Secretary
beforehand. The same
goes for a lot of other methods Secretary
provides. Instead of writing a stub
function for each of these methods, it would be nice to do the following: