While I haven't been doing much posting recently, I have been doing behind-the-scenes work on this website. The main thing was that I changed quite a few images from being hot-linked (when sites were okay with that) to being hosted; this was done after realizing some web filters were not blocking my website but were blocking a bunch of the images that were hosted off-site.
I've also made some substantive changes to my laptop: I am no longer dual-booting Scientific Linux and Windows 7, so no more posts about Linux and this computer. Instead, I am running Windows 7 on my laptop and running other operating systems in virtual machines inside of that (using VirtualBox). Most of the time I use Windows 7 as a guest (yes, on a Windows 7 host), but I do also use WatchOCR and Xubuntu. The reason why I virtualize Windows 7 on Windows 7 is so recovering from a catastrophic incident (e.g. computer stolen or destroyed) is quicker: just move the Windows 7 VM with all of my work on it to another computer and continue working.
Of course, simultaneously running 3 VMs is tough on a computer, so I upgraded to 16GiB of RAM. I specifically used 2x Centon 8GB DDR3-1333 (PC3-10666) 204-pin. The specific part number was R1333SO8192, pictured below. (RAM can be finicky, so I figure giving more details about what worked for me is better than too few. Also, the 8GB is what is on the package even though it should be 8GiB - I just don't want to be called out for inconsistency. </pedantic>)
I also replaced the hard drive with a Samsung 840 Pro 256GB SSD (MZ-7PD256BW). It works pretty well, and I utilize the whole disk encryption, though I don't really notice any benefits over my previous Intel SSD (other than increased capacity).
Of course, it's not all good news: with all of these changes to my computer, my battery life has taken a substantial hit. When it was new, I was comfortably getting 8 hours. Now, with battery capacity at 62% according to the ThinkVantage Toolbox, I'm getting about 2 hours. I'm not often away from a plug, but virtualizing OSes may not be such a great idea if you need long battery life. Or simplicity in many other ways - but my complex system works well for me.
(To help those using search engines, my ThinkPad T420i is model number 4177-CTO.)
As part of the introductory qualitative methods course I am taking, each of us must conduct interviews and transcribe them as part of a larger class project. I recorded the interviews using Easy Voice Recorder Free (for Android), and it worked well for what I needed it to do. (Note to self: Put your cell phone on silent before conducting an interview. The recording device buzzing each time a text message is received is both unprofessional and distracting on the recording.)
As I am not (yet?) a qualitative researcher, I tried to complete the transcribing as inexpensively as possible, and free is the best kind of inexpensive. Rather than using specialty qualitative data analysis software (such as Nvivo), I've opted to go for transcribing and coding in Microsoft Word. Simple, but effective enough for a project of this size. (Of course, there is no reason another program such as LibreOffice Writer could not be used to really get at the "free" goal.) To play back the audio, a colleague recommended Express Scribe, a program by NCH Software.
Express Scribe has a free version which allows one to play the audio and control basic functions (Stop, Rewind, Fast-Forward, Play (regular and slow), etc.) using the function (Fn) keys on one's keyboard in lieu of using a pedal, though it also supports pedals. The function keys are used even the Express Scribe isn't in focus, allowing one to control the audio playback without leaving Word. Super convenient, and the entire transcribing process was relatively painless thanks, in large part, to Express Scribe.
But it isn't all roses.
When I downloaded the free version of Express Scribe, I didn't realize that wasn't all I was getting. Apparently, the free version of Express Scribe (and possibly the paid version?) includes 'extras.' Let's explore the situation.
The first thing that I noticed is that Express Zip had associated itself with nearly every type of archive (e.g. compressed files) on my system. Furthermore, it had given itself a context-menu (right-click menu) entry as "Extract with Express Zip". The picture below shows what I'm talking about.
'Okay, so what?' you might be inclined to say. Surely this is benevolence from NCH Software - free software that might make our lives easier. Except, when one double-clicks a file that has been associated with Express Zip or chooses "Extract with Express Zip" from the context menu, this is what appears:
All "an install-on-demand component is required for this operation" means in this case is that Express Zip isn't even really installed yet - just an advertisement for Express Zip is installed! I was curious as to what all Express Scribe had done to my computer, and pulled up the Set Associations window. (The easiest way that I've found to get to it in Windows 7 is to search for "Set Associations" in the Control Panel window.)
Now, of the file types that Express Scribe has oh-so-graciously associated itself with, I count four types that seem reasonable and twenty that are unreasonable (boxed in red above). In fact, Express Scribe (Zip?) doesn't even know what to do with some file types (e.g. .iso, a file type for disc images) and instead describes them as "Unhandled Extension Handler Finder". Oh, joy.
"Now, Doug," you might be tempted to begin saying, "Surely you assented to installing these 'features' when you installed Express Scribe!" My retort would be a resounding, "Not so!" While the inclusion of "extras" is a burgeoning trend in free software (e.g. Oracle's Java attempting to install the Ask Toolbar if the option is not unchecked), I carefully read each page of an install to make sure that shit like this doesn't happen. Excuse the language. But not really. These shenanigans are infuriating to me. In fact, I went back through the installer to see what actually transpired. Check out the next two images.
As shown in the images above, even if all boxes for optional software are unchecked, there are still things installed besides Express Scribe. These "install-on-demand" components are only hinted at in the License Agreement, and one may reasonably assume (as I did), that the components referred to were the ones recommended on the following page. They weren't. Let's see what was actually installed.
The "NCH Software Suite" comprises no fewer than seventeen install-on-demand components. Keep in mind that none of these seventeen components are actually installed; rather, these are effectively advertisements for them.
So now we have a clear idea of the problem arising from installing Express Scribe. Even when a user is careful and chooses to not select any optional components for installation, Express Scribe infiltrates the system to associate itself with unrelated files to offer you advertisements using 'components' that you did not choose to install. This is the sort of behavior that malware undertakes and, if it walks like a duck and quacks like a duck...
I cannot recommend Express Scribe or any software created by NCH to colleagues. In fact, I will actively recommend against using it whenever possible. I am not presently aware of a free (open-source or otherwise) alternative solution, but I cannot imagine that one does not exist (or that one would be easy to create). If you know of one, please leave a comment saying what it is and where to get it.
On my main computer (running Windows 7 Professional x64), uninstalling Express Scribe through Programs and Featuresin Control Panel seemed to remove the NCH Software Suite and the Express Zip context menu entry. I didn't have quite the same luck on another computer I use, and, if I can duplicate the problems, I will put up a guide for eliminating all traces of this software in the situation that a regular uninstall isn't sufficient.
A note to all software developers: I control what is installed on my computer, not you. Sneaking extra software onto my computer isn't cute or clever. Rather, this is the behavior of malicious software. If your software does this, as Express Scribe does, it is malicious - no matter how useful such software might be.
[Update: Steve Dennis, a developer for Mendeley, posted a comment explaining a bit more about the data collection and privacy concerns some users have with Mendeley Desktop. It adds some pros and cons about the process outlined here.]
While it remains to be seen what changes will, in fact, take place, the simple fact remains that Mendeley is not open source and remains controlled by a company that does not have my (and your) best interests in mind. The most important thing for Elsevier is making money, and, for now, keeping Mendeley operating serves this goal. However, my work is too important to rely on a tool that somebody else controls. (I did a pretty thorough post on my views about this after the discontinuation of Google Reader.)
Now, Mendeley advertises itself as both a reference manager (think iTunes for PDFs) and a social network. This social network aspect has generated a lot of data, and many researchers seem to find it useful. Consequently, Mendeley has integrated their web services and their desktop client so that a single account is required to use both. Yes, an account is required to use the desktop software that would work perfectly well without an online account. Sure, it is enhanced by internet connectivity, but an internet connection is not required to organize my documents.
But, an account is not really required. With a teeny bit of work, the Mendeley desktop software can be configured to work without a Mendeley account. This solution comes from the Mendeley support website, and is used to help people launch Mendeley when there are issues with the software and/or accounts. It is a 'feature' for support, but is certainly not something they advertise. The trick is to add --setting General_FirstRun:false (with two dashes, an underscore, and a colon) as an argument to the program when it launches. I'm doing this on Windows, but as Mendeley is cross-platform, it should ostensibly work on OS X and Linux, too. (Let me know in the comments if it does or doesn't work.)
To add this argument, right click the shortcut for Mendeley (e.g. the one on your desktop) and select properties. Then, add it to the box labeled "Target" outside of the quotation marks. Check out the image below.
After clicking Apply, you may need to grant Administrator approval for the changes to be saved, depending on your UAC settings. Adding this to the launcher skips the initial window that asks for your account information allowing you to use the offline features of Mendeley in peace. (You can add an account later by choosing "Tools" followed by "Options".)
Now, this option works with at least Mendeley Desktop 1.8.4, but there are no guarantees about 1.8.5 retaining this same feature. (Though there are many uses for this ability in a support context and removing it would be silly.) I feel somewhat assuaged knowing that I can use Mendeley on my computer whenever, wherever. Moreover, if I ever need to install Mendeley and their servers are unavailable, I can still use it.
I'm not Men-deleting my account. Not yet, at least. I'm still holding out hope that the program will be made open-source, assuaging even more of my concerns. There may still yet be hope according to something I saw from William Gunn, Mendeley's Head of Academic Outreach:
So, open source is still being talked about, and the API is remaining open. These are promising signs. For the meantime, at least, I'm going to check out using Zotero in addition to Mendeley. I've been hearing some good things about Zotero, and it never hurts to have options. As the saying goes, "Two is one, one is none."
With the winter holiday I returned to my lazy, non-blogging habits. A New Year's resolution did little to change the situation. I suppose one just jumps in, though. I'll try to keep up with things more this semester. Really.
Plans for this semester
I'm currently taking a seminar on statistics education and an introductory course on qualitative methods. While the former is clearly my area of interest, the latter is proving to be more enjoyable than I had anticipated. One of the books for the course is Crotty's The Foundations of Social Research: Meaning and Perspective in the Research Process which is a bit more abstract than I was expecting, focusing on epistemologies and theoretical perspectives. It is a refreshing change, and I'm currently working my way through Feyerabend's Against Method after having my views on post-positivism challenged. (They seemed to be most aligned with Popper before this academic year.) Other plans include a trip to San Diego for LOCUS-related things and In-N-Out Burger, insha'Allah.
Dealing with Protected/Secured PDFs
Occasionally I'll come across a PDF that is Protected/Secured (it says 'SECURED' in the title bar of Adobe Reader) which are rather annoying to deal with. I've been using Mendeley to organize the articles/books I've read, and I copy the abstract into the software so that it can be searched. Alas, one journal whose articles I often read secure every single PDF so that copying cannot be done. Really frustrating.
Thankfully, this "secured" state is not encrypted or password protected. From what I gather, the state is determined by setting a bit in the file to disable certain features and Adobe, upon finding this information, respects the file's instructions. Not all software respects the file's instructions, and those that don't allow copying without issue. Two such readers are Evince (part of GNOME) and Okular (part of KDE). Both are open source, and both at least have options for disabling the DRM on the files. They are also both available on Windows (as well as many other platforms and are exceedingly common on Linux); if you're just looking for a quick download on Windows, Evince might be better. Either way, problem solved.
I've been doing a lot of writing in Microsoft Word lately (there are others working on the same document and LibreOffice Writer can't seem to get it right), so I've been living in Windows-world. Yesterday I needed to access an R package that is UNIX-only apparently (heR.Misc - really? No Windows binaries?) and was greeted by Scientific Linux with some updates to take care of. Most of the updates installed fine, but five did not. The five that did not were all related to Qpid (packages like qpid-cpp-client). These could not be installed because yum could not resolve some dependency issues. Apparently the issue was that these updates were related in some way to the matahari package, which was deprecated by Red Hat (according to this forum post at least). A quick sudo yum remove matahari in the terminal and the updates installed correctly.
I figured while I was updating software that I would try to get an Aero Snap-like feature working in Linux. As much as I like the stability of Linux, I dislike the lack of some should-be-standard features in GNOME. In Windows 7, there are some great features like Aero Snap (automatically half-maximize windows) and windows grouped on the taskbar. CompizFusion can... somewhat perform these features, but not with the polish and consistency that I've come to expect.
I just care about my computer supporting my productivity, and I am therefore not attached to any particular window environment. KDE 4 seems to have implemented some of these features without the use of add-ons, so I figured that I would give it a try. However, installing KDE using YUM wasn't immediately obvious. Searching for "kde" resulted in tons of packages, but none seemed to be a wrapper for the entire environment. Eventually I went to the command line and executed (as root):
yum groupinstall "KDE desktop"
However, I should have realized that Scientific Linux doesn't have the latest, greatest packages. The KDE that was installed was version 4.3 and... didn't do what I wanted it to. I promptly switched back to GNOME and started playing around with CompizFusion.
Long story short, I got frustrated and gave up for the time being. I am determined to get this to work, but I don't have the time to devote to it right this second. I think this is where things went wrong: I wanted to uninstall KDE and did
yum groupremove "KDE desktop"
which uninstalled all KDE-related packages and not just the ones that had been installed above (I had previously installed some packages like kdegraphics which contains Okular (a great PDF reader)). While I would like to figure out how to remove an entire group except for certain packages, that's something to solve later. No big deal, I didn't use them much and could always add them back later. I rebooted my computer to complete some updates and...
No internet when it came back. The GNOME panel icon was just... gone. Now, my first instinct was to search the internet for related issues. I was able to get online by plugging in an ethernet cable and running, as root,
ifconfig eth0 up dhclient eth0
This gave me wired internet, though Yum Extender didn't want to believe it had internet. I ended up having to run from the terminal
to be able to install packages.
Most of the resources I found related to Ubuntu which can be rather different from Scientific Linux/CentOS/RHEL. I tried to see if the network manager was still installed by running
[Doug@FLASHMAN-SL ~]$ service network-manager status
network-manager: unrecognized service
Seems like a problem... except the network manager is not called network-manager in Scientific Linux. It is actually called NetworkManager.
[Doug@FLASHMAN-SL ~]$ service NetworkManager status
NetworkManager (pid 2077) is running...
I spent way too long reinstalling NetworkManager when that was never my issue. What it turned out to be was the program nm-applet was missing (uninstalled at some point), and I just needed to (re)install the package NetworkManager-gnome.
That was a headache that was mostly my fault, but the lack of solid documentation (and vague search terms like "gnome internet icon missing") made this difficult to figure out. Maybe putting all of these search terms in one place will help other people.
As an aside, my school (UF) now offers Red Hat Enterprise Linux to students... and I am toying with the idea of switching from Scientific Linux to RHEL. However, UF is running RHEL 6.1 and I'm running SL 6.2, and I would prefer to not do a clean install. Unsurprisingly, Red Hat does not support cross-grading (I asked), and I don't want to fiddle with a simultaneous cross/downgrade. Though I must say, the support would be nice for situations like this...