can you get more random?

Claim your time back from FaceBook

July 1st, 2019 Posted in tech | No Comments »

A quick Greasemonkey script has again saved me from endless scrolling on the FaceBook newsfeed.

// ==UserScript==
// @name     Facebook NewsFeed Remover
// @version  1
// @include  https://www.facebook.com/*
// @require  http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js
// @require  https://gist.github.com/raw/2625891/waitForKeyElements.js
// @grant    GM_addStyle
// ==/UserScript==

waitForKeyElements (".userContentWrapper", actionFunction);

function actionFunction (jNode) {
  jNode.before( "<div style='height: 500px; padding: 100px'>Nothing to see here</div>" );
}
Share

The disease of politics today is not populism, so much, as simplism

June 24th, 2019 Posted in Uncategorized | No Comments »

If you have a very different opinion to me on immigration, that might be because you have a very different experience of it from me. But to contemplate your different life experience requires an expense of brainpower to which most of us are unwilling to commit. It’s more efficient to dismiss others as bigoted or gullible.

https://www.newstatesman.com/2019/06/we-know-lot-less-we-think-about-world-which-explains-allure-simplism

Share

on Brexit…

June 5th, 2019 Posted in Europe, politics | No Comments »

Thomas Freedman in the NYT sums the situation up well:

Trump is fine with a world of competitive European nationalisms, not a strong European Union. So is Vladimir Putin. So, it seems, are the Brexiteers. How quickly they’ve all forgotten that the E.U. and NATO were built to prevent the very competitive nationalism that ran riot in Europe in the 20th century and brought us two world wars

Share

Fixing “Table ‘wp_my_blog_name_wfNet404s’ doesn’t exist in engine” wordfence error

April 3rd, 2018 Posted in Uncategorized | No Comments »

I’ve been using the excellent wordpress security plugin, WordFence for a long time and have been generally very happy with it. The only issue I have had is the above error, which has occurred following a disk filling up and the database crashing.

I’m documenting this here as it’s not the first time I’ve had to fix this problem and a web search for a solution gives suggestions to uninstall and reinstall wordfence, after selecting “delete all wordfence tables”. If you don’t want to delete all your wordfence data, and start with a clean install, the following solution may work for you.

Rather than getting wordfence to recreate the database tables, you can do it yourself, manually, as follows:

first check if the table exists and is accessible :

[MariaDB] desc wp_my_blog_name_wfNet404s;

If you get the following error message :

ERROR 1932 (42S02): Table 'resto.wp_sortirauresto_com_blog_wfNet404s' doesn't exist in engine

then drop the table, before recreating it :

MariaDB [resto]> drop table resto.wp_my_blog_name_wfNet404s;

To recreate the table, check the table schema in the following file : wp-content/plugins/wordfence/lib/wfSchema.php, searching for the string wfNet404s. I see the following, but it’s possible that this may change in future versions of wordfence.

  `sig` binary(16) NOT NULL,
  `ctime` int(10) unsigned NOT NULL,
  `URI` varchar(1000) NOT NULL,
  PRIMARY KEY (`sig`),
  KEY `k1` (`ctime`)
) DEFAULT CHARSET=utf8"

Use this to create the sql syntax to create the table :

create table IF NOT EXISTS wp_eat_out_net_blog_wfNet404s (
  `sig` binary(16) NOT NULL,
  `ctime` int(10) unsigned NOT NULL,
  `URI` varchar(1000) NOT NULL,
  PRIMARY KEY (`sig`),
  KEY `k1` (`ctime`)
) DEFAULT CHARSET=utf8;

You may need to do this with other tables (wfBadLeechers, …) with their own schema from the same file. Once the tables have been recreated, your next backup should take place without error.

Share

debugging ansible

March 14th, 2016 Posted in tech | No Comments »

I’ve been playing with Ansible recently, and enjoying automating my server installs, after years of relying on home-made scripts (or worse).

From time to time I need to find out why Ansible isn’t doing what I think it should be, and after using -vvvv verbose flag, my next step is running the generated ansible installation script manually on the server. I didn’t find this explained anywhere, so I’m documenting it here for future reference. Read the rest of this entry »

Share

Email productivity with Spark and ActiveInbox

February 26th, 2016 Posted in tech | No Comments »

I recently discovered Spark, and now use it along with ActiveInbox to effectively fight my way through the hundreds of emails I receive every day. If you haven’t tried either of these tools, I can recommend both of them.

ActiveInbox uses GMail’s labels to convert your inbox into a GTD-style task manager, allowing you to quickly go through emails in your inbox, classifying them as Actions to do, or postponing them until a future date (amongst other actions). It means you don’t need to treat your inbox as a todo list, with emails backing up until you no longer have a clear view of awaiting tasks. Instead you can clearly see overdue actions and add tasks and events to your calendar.

I discovered Spark with the release of version 2.0 of their app. Spark is an iOS email app that makes burning through your emails easy. Tasks like tagging, deleting, forwarding and archiving mails can be easily achieved by swiping directly on the mail, making it easy to treat emails rapidly.

Unfortunately there is a compatibility problem with these tools – in their default state it isn’t possible to use them together.  Read the rest of this entry »

Share

CAPE value 2014 returns

January 3rd, 2015 Posted in Uncategorized | No Comments »

Meb Faber’s CAPE value model returned 21% in 2013 but seemingly didn’t do so well in 2014. However that’s only the case if you’re looking at your returns in USD. converting the start and end of year values to euros and local currency, the return is around zero.  You can see my CAPE 2014 data in Google sheets. OK, so an average return of 0% is nothing to write home about, but it’s not quite as bleak as -13%. The next question is how easy it would be to hedge the currency risk. Any ideas? Also it would be interesting to see what the 2013 returns were in local currency. Maybe that’s a project for tomorrow.

Share

Better l10n for Joomla

July 6th, 2014 Posted in languages, tech | No Comments »

For the past couple of weeks I’ve been working on a site developed in Joomla. This wasn’t by choice, but it was a good chance to learn more about the CMS. The site is available in three languages so the question of content translation quickly came up.

There are several Joomla Plugins for managing multi-lingual content available, but none of them fit our needs.

The current available plugins can be broadly classified in 2 groups Read the rest of this entry »

Share

Learning portuguese : Day 1 – Pronunciation

September 4th, 2013 Posted in languages, portuguese | No Comments »

There are many different language learning strategies, but the one thing you’ll hear again and again is the importance of immersing yourself in the language. Obviously the best way to do this is to live in the country where your language is spoken, but if that’s not possible, listening to podcasts is the next best thing, as it will help you recognise the sound of the language and start to learn the pronunciation. Whilst learning German, I listened to Read the rest of this entry »

Share

September Challenge : Learn Portuguese

September 3rd, 2013 Posted in languages, portuguese | No Comments »

I’m going to be spending a long weekend in Lisbon in October and thought it would be interesting to see how much Portuguese I can learn in the next few weeks. I’ve been to Portugal several times before and each time I regret not being able to converse with the locals. After 2 weeks in the Azores a few years ago I managed to communicate using Spanish with (what was probably a rather bad approximation to a) Portuguese accent along with a few basic Portuguese words thrown in, but the result wasn’t pretty, although it got me a few smiles along the way.

Ok, so I’m not planning on becoming fluent in 5 weeks (well it would be nice, if a little unrealistic…). The idea is to try out various language learning sites, tools and methods and see what works for me. I’ll be spending an hour a day (if I can motivate myself) and reporting back here on my progress.

My first step was changing the language on my phone, which is always amusing. My phone has been in German for a while now, but I get the impression that I already understand more in Portuguese than I did with a German iPhone, after 2 years of learning German. Next step, basic vocabulary. I think I’ll start with DuoLingo, as I love their ‘Gamification’ of language learning.

40 hours to go…

Share