Peter Norvig wrote a simple spelling corrector in 20 lines of Python
2.5, so I thought I’d see what it looks like in Ruby. Here are some
areas I’m not pleased with:
Now that I’ve switched to a Macbook Pro with OSX Leopard as my primary
desktop, I’ve located my Ubuntu machine in another part of the house
to be accessible to my children. Not wanting to walk to the room where
it’s located just to flip the power switch, I researched how to get
“wake on LAN” working, so I could power it up remotely.
I’ve learned a number of programming languages since I began
programming 25 years ago. Earlier in my career, my choice of which
programming language to learn was largely driven by external factors
such as a class or job requirement, or the expectation of job demand
in the future.
I recently installed the software that came with a LEGO Mindstorms NXT
kit onto a Mac Mini running OSX 10.4. I was somewhat concerned when
the install program prompted me for an admin password, so I attempted
to install the software into a directory in my home directory instead
of the main Applications directory, but it still prompted for an admin
password. Since LEGO is a large reputable company, I gave them the
benefit of the doubt and figured the admin password may have been
necessary to install Bluetooth drivers or some other feature. I
should’ve learned a lesson from the Sony root kit debacle with respect
to blindly trusting large corporations. In the Sony case,
maliciousness was involved, in the LEGO Mindstorms case, I think only
incompetence is to blame.
Someone posted a question on comp.lang.ruby recently asking for help
with solving anagrams. The poster originally asked about ways of
generating permutations and several people pointed him to the facets
library which has some permutation utility functions. As it turns out,
I benchmarked the following naive permutation generator as 3 times
faster than the facets library code:
I’ve been teaching my eldest daughter to program in Logo over the
summer. Brian Harvey has posted PDF files for a set of excellent books
on learning to program in Logo on his
web site.
The Berkeley version
of Logo he’s produced is really excellent. It’s not just your typical
turtle graphics language; it has arrays, macros, file processing,
graphics, etc.
I’ve been using my laptop more frequently at wifi hotspots. Many web
sites I visit encrypt traffic with SSL for authentication, but after
that they send traffic in the clear which means the cookies that are
used for authentication purposes are sent in the clear, so anyone with
a sniffer within range of my laptop could easily intercept the
traffic, steal my cookies and impersonate me on the web site. Not
good! So, I went looking for a simple solution, and found a great
article about using ssh for this purpose. Ya gotta love open source
software.