2013-07-23

TrueCrypt on Mac installs old version of FUSE: use OSXFUSE instead

Not much more to say than that TrueCrypt up to and including version 7.1a for Macs installs an old version of FUSE, namely MacFUSE.  Instead, you should use OSXFUSE instead.

This really only applies if you intend to use FUSE for other applications or purposes besides TrueCrypt, and those other applications requires a newer version of FUSE than provided by the old MacFUSE.  If all you use FUSE for is TrueCrypt, then don't worry about it; TrueCrypt works fine with the old MacFUSE.

OSXFUSE (2.6.0 at time of writing) is the successor to MacFUSE, which is no longer maintained and should be considered outdated.

Make sure to install the MacFUSE compatibility layer when installing OSXFUSE (you may have to choose this explicitly under custom install within the installer).

Also make sure to not install MacFUSE within the TrueCrypt installer by un-selecting it explicitly under custom install within the installer.  If TrueCrypt was originally installed with MacFUSE, just download the MacFUSE installer separately, and use the uninstaller within the installation disk image.

2013-07-18

Stop SMART Board Tools from starting on Login on Mac OS X

I don't use the SMART Board that often, so I don't like having the Board Tools program (that's the vertical side bar that floats on top of everything after you have SMART Board programs installed) starting up every single time I log in to my computer (Mac OS X).

The critical information I found from Tyler Grusendorf's blog post on the same issue, but I don't think it's necessary to do all the steps he proposes.  Just delete the com.smarttech.boardtools.plist file from the /Library/LaunchAgents folder and that's it.  It worked for me.  :)

2013-07-11

Firefox lost my saved tabs due to hidden user Library Preference folder on Mac OS X 10.6.8

The symptom is odd enough.  You let Firefox upgrade itself, and upon reopening, you lose all your saved tabs and bookmarks.  Is it Firefox screwing up and losing all your saved tabs after an upgrade?  Or is it because you're on Mac OS X 10.6.8 with an encrypted home folder?

For reasons I know not, Mac OS X can split your home Library folder into two pieces (on Mac OS X 10.6.8 with an encrypted home folder).  Supposing your username is hsimpson, then one of your Library folders (the usual one) is inside the encrypted home folder, in the usual ~/Library.  The other one is in /Users/.hsimpson.

Best way to tell if Firefox is using the wrong Library folder is to open the Firefox profile manager.  Go to the Terminal, and type in something like:

/Applications/Firefox.app/Contents/MacOS/firefox-bin --profilemanager

Of course, firefox-bin is the actual executable on a Mac, hidden inside the Firefox.app application bundle (really just a special folder).  With the profile manager open, hovering the mouse over a profile name will display the directory path to where the profile is stored.

You may have to do some experimentation to figure out which is the "true" profile folder with the most up to date tabs and bookmarks (I suggest you backup all potential profile folders), but with some experimentation, you should be able to point Firefox back to using the correct profile folder.

I would know: I've had to do this more than a few times.

2013-07-08

Clojure Data Analysis Cookbook - a Book Review

Like yogthos, I was recently asked to review Clojure Data Analysis Cookbook.  With Incanter, data analysis has been one of the "selling points" of Clojure as a practical language.  A practical lisp for practical data analysis.

(Edit 2016: a second edition is available!)

The book is very example oriented, basically being a collection of code recipes for accomplishing apparently common tasks for data analysis.  It gives you recipes to go from taking raw data in the form of CSV, JSON, or whatever, to making an Incanter dataset, to doing analysis on those datasets (e.g. clustering the data by using a self-organizing map), to saving, viewing, or charting the resultant data.  Each recipe is accompanied by brief explanations, and cross-references to other related recipes in the book.

Each recipe is more or less self-contained, without much in building on top of previous recipes.  It makes the book more "random access".  It's less a book to read through cover to cover, and more of a handy reference to use by full-text searching for key terms, clicking on the relevant topic in the table of contents, or by looking up terms in the index.  It's definitely a book I'd rather have as a PDF ebook so that I can access it anywhere in the world, and so I can do full-text search in.

Having said that, you can tell whether a book was made to be seriously used as a reference or not by looking at its index.  There are 10 pages of indices, equivalent to about 3.2% of the number of pages previous to the index.  This counts as a book to be seriously used as a reference.

As a reference book, it's great for people who have already a familiarity with Clojure (and better yet, Incanter) in general.  If you don't know Clojure, this book won't teach it to you.  If you don't know Incanter, you can pick it up from this book if you're a fast learner (don't expect a lot of hand holding in learning Incanter though).

Similarly, I'd say you had best be familiar with how to do data analysis as a discipline in itself.  If you don't know whether to do clustering or regression, or whether to use a SOM or K-means, this book won't teach it to you.

Also, as a reference book, it is not comprehensive.  For example, as far as neural networks go, it only includes self-organizing maps.  There are no other kinds mentioned.  If you want another kind of neural network, you best know where to look for another Java or Clojure library.

Even with all those caveats, I'd still say this is a pretty decent book.  Why?  Because if you have some familiarity of Clojure, played around with Incanter for a bit to learn that library, have taken a class or two of data analysis in university, and aren't expecting a lot of hand holding from the book, then this book is a great guide to start you off on the road to doing data analysis with Clojure, Incanter, Weka, OpenCL, Cascalog, etc.


2013-03-26

Passion, Fascination, and Aspiration


Getting ahead, moving up the corporate ladder, building a career, etc. these are all legitimate, valid, and even admirable desires, if pursued for the right reasons. But where does that corporate ladder lead to? I still recall being warned by one professor, in the context of research some eleven years ago, to be careful of which totem pole to climb. Thinking on that warning some more, don't we find that all totem poles lead nowhere except to some arbitrarily higher elevation of some arbitrary spot in the ground?

And as for getting ahead: ahead of whom? And to what end? It's cliché to say that life is not a race, but if life were a race, then the end of the race would be called old age, and the prize would be death. So why would anyone want to hurtle down the race track towards that?

These questions doesn't imply that people should lead stagnant lives without goals, or without improving themselves. In fact, a person can become better by simply trying to become better all the time. What seems to become problematic is when we look for destinations, careers, and other people's lives, to not just aspire to, but to plan to achieve as a goal. I mean it seems problematic to crystallize a part of someone else's life, a life that that someone is still living, and then make it a goal to attain it.

To see what I mean by crystallization, here's two people who have careers that I'd love to have:

1) I look at someone like Peter Norvig, Director of Research at Google, and I think, "wow, I wish I could be like that. I want to be Director of Research! That must be such an awesome job — even he says it's 'the best job in the world at the best company in the world'!" Look at his resume — Division Chief at NASA, Sr. Scientist at Sun Microsystems, researcher at UC Berkeley, and was a Prof. at U of Southern California. I wonder how anyone, and especially how I, could build such a career!

2) Take a look at Chris Bishop, Distinguished Scientist at Microsoft and a Professor at the University of Edinburgh. "Wouldn't I want to be that 'when I grow up'!" He used to do research in theoretical physics too! Plus look at all the honours he's got, like being elected VP of the Royal Institution of Great Britain. How can I be successful like him?

Notice that out of these two people's lives, I've taken a very select aspect of it to crystallize into a portrait — in particular the titles, honours, and a minuscule portion of what they might be doing daily. Then I wonder how I can become that portrait.

The portraits are seductive — prestige and money! — but practically unattainable. They're like the "photoshopped" images of super models that are practically impossible for anyone to be in real life.

You could probably come up with several examples that apply more forcefully to your own life too. Any particular sports figure with fame and fortune you wish you could attain? Fancy the career of Lloyd Blankfein, the CEO of Goldman Sachs, and wish for a career that leads you to where he's at now? Want to travel the globe and be a famous travel writer like Paul Theroux? Want to be a rock star?