Google reCAPTCHA crash

For a moment last night (about two hours), Googles reCAPTCHAs became unavailable. I thought at first it was a botched update I made, but I found a newly created post on the reCAPTCHA Google Group page describing similar problems to me.

After waiting an hour, I decided to disable the CAPTCHAs on the forms to at least enable their functionality again. I didn’t want to open the forms to abuse too easily though and wrote a simple mathematics based question and answer anti-spam check. It can be broken with a bit of effort, but that is why the Google reCAPTCHA is the first choice.

On completing the changes to the forms (about 3 hours after I first noticed the CAPTCHAs being broken) I then noticed that the CAPTCHAs were back online, so I re-enabled the original anti spam measures and left my code on the shelf. So, the code isn’t in the wild yet, but it’s there ready just in case.

Bye bye DuckDuckGo

Last year I decided to try a different search engine other than Google. I wasn’t unhappy with Google, and understood their privacy policy and it’s actions on me. Instead I was looking to compare and contrast the features that other search engines offered with Googles. Having previously used Ask Jeeves, Yahoo, and Bing, I decided on using Duck Duck Go.

Duck Duck Go focus on privacy issues whilst providing search results from a wide range of sources. Plugins are widely used by the company to offer searches from WolframAlpha and Wikipedia. This provides a similar services to Googles integration of Maps and various other services into it’s search results.

I found that 50% of my searches return results that satisfied my original search intentions, whilst I ended up manually going to Google for the other 50%. The more specific terms (in particular those used in software development) made up most of the failed 50%, returning vague blog articles that were nothing to do with the term.

In the end, my switch back to Google as my default search engine (in Google Chrome, my default browser) came because of an inconsistent glitch whereby if I decided to expand on my search criteria (which I often had to do on Duck Duck Go), I would be brought back to the Duck Duck Go homepage. This, quite understandable, frustrated me.

In comparison to the other search engines, Duck Duck Go seemed to work about the same (in terms of relevant search results) and it has an easy to use interface. Minus the frustrating bug I experienced, I would happily tell someone about Duck Duck Go, but Google is of course still my number one.

Use the USB 3 port Luke!

Transferring 2.4 TB of data; bottleneck on backup was about 400 Mbps (standard SATA HDD speeds). On restore I was only getting 200 Mbps. I thought perhaps it was the ZFS (that somehow read operations were twice as fast as write) and stopped investigating. As I was lying down with my head on the table (swollen jaw – wisdom teeth), I noticed I’d somehow unplugged the USB cable from the USB 3.0 socket and put it into the USB 2.0 socket.

Surprise, surprise, this was the bottleneck.

When there are too many files in a folder…

Do you remember learning about Javas automatically resizing ArrayLists?

Well I just got to see for the first time and first hand the C equivalent on an Unix system for a SINGLE folders file listing (whilst running rsync) because there were more than the expected number of files in the folder. And not only did this list have to reallocate more memory once; it had to do it 5 times (each time doubling the amount of memory requested).

I got a little scared, but it seemed to happily progress and then I proceeded to remove said folder from existence (it was a recovery folder of a customers broken HDD)

Neo evades me

Yanna sent me a picture of her using a banana as a phone (what a smile she had too :D). Surprisingly, Yanna was not referencing the well known “Banana phone” song, but instead was imitating the following Keanu Reeves picture:


My instinct told me immediately that this was an edited image from the Matrix. I went ahead and watched the “Escaping from work” scene, to find only the following shot:


I now thought that perhaps another film had Keanu actually using a banana as a phone. My search failed to return any results. I went back to a more generic search, and found a fan site that had the following shot:


Yanna suggested that it may have been a camera shot as a opposed to the film footage. After looking through the fan site and seeing other shots of the Matrix that were not shots from the film footage, this seemed the most sensible explanation.

Windows 8 – Boot to desktop

Following the installation of Windows 8.1, many of the little niggles I found annoying are fixed from a single settings menu, including;

  • Boot to desktop
  • Start menu has same background as desktop. Whilst it is a small change, it has a big impact. No longer am I instantly lost as the whole screen changes colour. It integrates much better (plus another place to have my cat background :D)
  • Apps are shown instead of the tile. The tiles have their place on mobile devices, but I don’t have much use for them. Instead I show Apps, and sort “by most used”.
  • Better multi-screen support.

This menu is accessed by;

  • Right clicking an empty part of the task bar (the bar where the program short cuts are sitting).
  • Left clicking the menu option “Properties”
  • Left clicking the tag “Navigation”

There are many more changes (many little niggles), but this was one of the ones I appreciate the most.

Configuring Windows 8 to boot to desktop

Installing VSFTPD

Following different tutorials, I was able to successfully implement a non-SSL FTP server without much difficulty. However, the SSL portion proved difficult. There were no debug or error messages that I could read, and searches for the Filezillas generic message of “Unexpected TLS message” did not help… until I found this blog and realized that the unexpected message was the error message from the server (that’s a bad place to put debugging messages!). Following the blog’s instructions, I then proceeded to sniff the network and was able to quickly find that a single line of my configuration file was invalid (during runtime and not on starting the program, adding further to the difficulty of debugging).

An additional problem between VSFTPD and Filezilla is that Filezilla does not accept low encryption method (at least in the newest versions). This is not mentioned in either debug files and instead kills the connection with “TLS error”. Setting the VSFTPD encryption method setting to HIGH fixed the problem.