"Amigos y nadie más. El resto, la selva"
-- Jorge Guillén

How to disposed of things that can't be recycled or trashed?

Found this article about stuff that can't really be recycled or trashed but you still need to dispose of! Things like old paint, batteries, and energy efficient light bulbs. It's a good thing to know, please read it!


Upstart 0.9 now replaces (x)inetd!

The upcoming version of Ubuntu, version 11.04 code name "natty", will include Upstart 0.9 which brings a very nifty trick (from http://www.ubuntu.com/testing/natty/alpha3):

Upstart now provides a socket bridge (upstart-socket-bridge) which is a daemon started early in the boot process that allows jobs to be started when socket connections are made. Jobs register their desire to be started by a socket connection by requiring the new "socket" event in their start on (or stop on) stanza(s):

# Internet sockets

# Local and Abstract sockets

For example, to have a web server only start when the first client connection is received, its job configuration file might specify:

start on socket PROTO=inet PORT=80

See the new manual pages for further details:

  • upstart-socket-event (7)
  • upstart-socket-bridge (8)


Westinghouse TV problem

So my LCD Westinghouse TV looses the HDMI inputs from time to time. I had fix this problem before, but this time I totally forgot about the fix. This is essentially how to reset the TV:

  1. Unplug all HDMI sources from your TV (HDMI 1,2,3,4)
  2. Unlug your TV's power from the wall (or from the back of the TV)
  3. Wait 30 seconds
  4. Plug all your HDMI sources back into the appropriate slots
  5. Plug your TV back into the wall


Git repositories moved to Github

Well, github does a lot better job at hosting opensource git repositories than we do. Therefore, I moved some of the projects to it and you can get to them from here:

Kiskeyix git repositories


Lock pick -- the "old" fashion way

Lock Cracking Done

So here is the short story:

I setup one of those nice locks on an old iMac and then, years later, forgot which password I set it to.

Yeah, totally unnecessary, but here I was stuck with an iMac on a desk that I could not move. So I started thinking of solutions for this situation and my hacking mind was racing towards the "brute force" it way. The facts were that:

  • I vaguely remembered changing the default password
  • I knew, or had an idea, of how the password was
  • There is only 4 places with 10 characters, so only 4000 possible choices
  • I had lots of time on my hands

With that in mind, I started thinking of how to shorten the list of possibilities. The character list was:

Lock chioces

  • pos1: d b w t r p m l h g
  • pos2: e a y w u r o l i h
  • pos3: e a t s r o n m l i
  • pos4: d y t s p n m l k e

And of course, after writing the choices down, this immediately started to look like a Ruby program will be needed.

So on position 1, there can only be a consonant. I knew that on position 2 I had picked a vowel. In addition, I also knew that I have picked a word -- something with a meaning that you can find in a dictionary. So, naturally, these became the constraints for my Ruby code.