Tasks App

Tasks App

Tasks app

I have been recently struck by the realisation that I have this webserver with this beautiful domain name, and I am not using it to anywhere near its full potential. I came across a tutorial on Code School on using AngularJS, and after following it and fiddling a little bit, I found myself looking for a project.

Fortunately, something came up pretty quickly. I was looking for a daily work summary app. I found iDoneThis but the interface is a little clunkier than I would like, and most importantly, it's a freemium solution. As a result, I decided I was going to code my own. Stupidly, I started without a scope or spec document, but now I'm trying to document what I've done and where I want to go with it.


  1. The application must be able to show completed tasks in a summary view
  2. The application must provide a simple way to add tasks on the web
  3. The application must provide a simple way to delete tasks on the web
  4. The application must look simple and attractive
  5. The application must be accessible from any recent browser, mobile or desktop


  1. The application should be able to accept tasks sent in via email
  2. The application should be able to identify tasks submitted by the same person via email or web
  3. The application should provide a simple way to update tasks on the web
  4. The application should allow one to view tasks completed over any particular time period
  5. The application should allow users to request a "morning summary email" of all tasks completed yesterday/last week.
  6. The application should be able to be packaged into a simple mobile app


  1. I plan to complete the application itself using nothing but AngularJS and HTML5/CSS3
  2. The application will use the Bootstrap 3 framework
  3. The application will depend on a PHP API to a MySQL database which stores the tasks (Arrest-MySQL)
  4. UserApp will provide basic, off-the-hook authentication of users as a solution until a full user log-in solution is necessary
  5. Mailgun will provide the mail-handling service that translates the mails into a JSON that can be added directly into the database.


What's working:
1. Tasks can be submitted using a simple web-based interface.
2. Tasks can be submitted by email, although the parser cannot handle multiline emails yet.
3. All tasks submitted can be viewed.

What's not:
1. Tasks cannot be filtered by creator or date at the moment - v1.0
2. Users cannot set a colour for their flair - v1.1
3. Updating and deleting functions are currently disabled on the API backend, and not implemented on the web - v1.0
4. The application does not currently associate email addresses with users - v1.1
5. The application does not send out a morning summary email - v1.2
6. The application is not yet ready for mobile packaging - v1.3

While I have been working on this, it struck me that I could reuse much of the code I have built up (especially the modifications made to the API, etc.) to build a suite of simple applications. There will be another module to the tasks application for tracking tasks to do rather than just the done tasks that are currently tracked. These will probably run off the same MySQL table, with a simple modification to the table structure adding a "complete" boolean and a "progress" int as columns. These can be set to 1 and 100 on the initial creation of the columns.

The second application I will create will be a Notes application, similar to Laverna. This will require more effort and a bigger code rewrite, but the same API should be OK for both with a few tweaks.

Crimea in Crisis – How the West Has Lost

Russian troops in Crimea Vladimir Putin has out-politicked us. Love him or hate him, there's no denying that he is an accomplished world leader, and his latest trick has almost certainly won Crimea back.

Russia and Ukraine have always felt a very close unity. Indeed, Russia's name places it as the descendent of Kievan Rus, which unsurprisingly had its capital in Ukraine. It's worth mentioning that this is not a one-way thing. Many Ukrainians support Russia, and support forging closer ties with them. In Crimea, this number is around 80%.

Crimea has always been something of a thorn in the side for both Russia and Ukraine. Put simply, it's an expensive peninsula to maintain. It has no fresh water, and As a result, Ukraine have allowed it to have its own devolved parliament, in much the same way the UK allows Scotland autonomy. Crimea even want their own US embassy.

While since the end of February, all other languages have been abolished and Ukrainian is the only official language of the Republic of Crimea, 77% of its inhabitants speak Russian as their native language. 60% of them are ethnic Russians. This is at least partly due to Stalin's ethnic cleansing of the area, but the fact remains that the majority of Crimeans feel a closer affinity to Russia than they do Ukraine. Their parliament operates in Russian, their media is almost exclusively Russian, and many Crimeans are Russian passport holders.

In 2009 the deputy speaker of the Crimean parliament said that he hoped that Russia would do the same to Crimea as they had done in South Ossetia and Abkhazia in 2008. The short-lived Georgian war saw Russia mobilising into Georgian sovereign territory. The Russian argument is that they moved to protect Russian citizens living there. The Georgian argument, which was better publicised in the West, although has significantly less evidence to support it, is that Russia attacked first wanting to take control of the territory.

The Crimean parliament refuse to recognise the government currently sitting in Ukraine, and have appointed Sergey Aksyonov as Prime Minister, who has taken control of Crimean security forces.

It is all but certain a referendum in Crimea would see citizens voting to join the Russian Federation.

Putin has carefully stage-managed the entire incident, from troop deployment to last night's announcement that Russian troops were there with the blessing of Viktor Yanukovich, currently in exile in Russia. He has forced the rest of the world to make a choice, and either way it ends well for Russia.

The least likely choice is that the West backs down, and recognises Yanukovich as the rightful leader of Ukraine. If we do that, the occupation of Crimea is perfectly legal, as it is at his behest. We would be making it very clear to the Ukrainian protesters that we did not support them, the result of which would probably be anarchic violence in the streets once more.

The middle ground is that we refuse to recognise Yanukovich as the rightful leader. We accept the interim government and claim that Yanukovich no longer has the legal authority to allow Russian troops to enter Ukraine. It will then be simple for Putin to claim that if armed protesters can storm a government building and gain legal recognition, surely it's only fair to allow the peaceful residents of Crimea a referendum on whether they want to be governed by this leadership. We can dispute this, but I struggle to see how we could win.

The most likely choice is that we refuse to accept the current government, pending democratic elections in a few months time. Russia will almost certainly refuse to back down, and so Russian troops in Crimea are almost guaranteed until the elections. Russia will continue to insist that Yanukovich is the rightful leader, and will almost certainly help him to win the elections (legally or otherwise), contingent on Crimea being allowed a referendum.

What happens after? Initially, probably the secession of Crimea from Ukraine, followed swiftly by its assimilation into the Russian Federation.

The real question is for whom does this matter? Realistically, not many people. In fact, it would benefit almost everybody. Russia get their Black Sea Fleet harbour and take back some of the territory given away by Krushchyov (allegedly while drunk), Ukraine would no longer have to support Crimea financially, and would find their new electorate more EU-friendly, and Crimeans would get their wish.

Those the worst affected would probably be the pro-Russian elements of Ukraine who do not live in Crimea. Their position would lose many supporters as a result of Crimean secession.

Whether you agree with what he has done or not, it has been played out very elegantly, and for what it's worth, peacefully.

As you see, Putin has outpoliticked us. Well played, Vova.

Ukraine on Fire as Protests Turn Violent

Maidan It was to be a decisive move that put an end to the Euromaidan protests. After three months of protesters camping on Ukraine's main city square, pro-Yanukovich forces moved in thousands of protesters. Although they were not the first casualties during the past quarter of the year, the 28 people (or more – exact, verifiable figures are hard to come by) who lost their lives on the night of the 18th February were to mark a change in the atmosphere on the Maidan.

Ukraine is now right on the brink of civil war. While it's unclear which side fired the first rounds, it is now all but certain that both protesters and interior ministry forces are now armed. There are rumours that interior ministry troops are refusing to fire on protesters, but the restraint shown so far may well be a political decision. While Ukrainian sources are claiming that three EU ministers are meeting President Yanukovich, EU sources are saying that the ministers have been evacuated for their own security. The latter would seem to be more reliable at the moment.

Live footage from in Ukraine (run by protesters) shows protesters in control of Maidan, but observers are keenly aware that the true reason for the live stream is insurance. Yanukovich is unlikely to allow his forces to resort to brutal violence while, quite literally, the world is watching. Nevertheless, reports from AP are claiming that 8 protesters died this morning while trying to storm a building near the square, while other reports put the number as high as 35.

Kyiv Post journalist Christopher Miller is also reporting that protesters have captured more than 50 police, and are currently keeping them imprisoned in a building controlled by the protesters.

What initially began as a protest against Yanukovich refusing an EU co-operation deal has descended into a more general anti-government movement. We have seen Ukraine's nationalists capitalising on this, as well as opposition politicians encouraging the protests and government officials losing their jobs. The EU seem to be trying to defuse the situation, calling on Yanukovich to avoid violence, and threatening concrete sanctions. However, the lumbering moves of international democracy are almost certain to be too slow to keep pace with developments in Ukraine.

Meanwhile a video made on Maidan has gone viral, in which a young protester explains her reasons for being on Maidan. The video predates much of the most recent violence.

The future is unclear, and for the first time in a long time hushed whispers of secession are spreading. Lviv, another Western, pro-European Ukrainian city has declared political autonomy, and is rejecting Yanukovich. While a split is unlikely, it does make some geographic sense: the vast majority of pro-Europeans live in the Western half of Ukraine.

Whatever the future in Ukraine, it's hard to imagine Yanukovich as part of it.

For more updates on the situation, follow my twitter, @d1sxeyes, and keep an eye on the live stream.

Walk It Off

Header image

I've just launched the site for the beta version of my Android app, Walk It Off. In future versions, I'm hoping to add:

  • A key for the map
  • Portion sizes
  • Nicer looking infowindows
  • Moves integration to automatically work out your kms walked.

Check it out: Walk It Off

No Benefits Please, We're British

I am, as are many others my age, in something of a pickle. I have just escaped the 18-25 age bracket, and almost simultaneously have found myself without a job.

Now, I'm not expecting sympathy and I'm not asking you to get out the chequebook. My prospects are relatively good and I'm fortunate enough to have a family who are financially solvent enough to support me. Because the government won't.

Let me just talk you through my life for a few minutes to illustrate how ludicrous this is. I finished my GCSEs with good grades, and went on to achieve good grades at A-Level. I then went to a good university and earned a good degree. Then, I qualified as a teacher, and taught for a year in the UK, paying UK taxes. I then taught abroad for a year and a half, in Russia and France. Russia isn't part of the EU, but in France I was paying taxes into the EU coffers. I'm an experienced, qualified professional, and I'm fairly confident I'll be in work again within a month or two. But right now, I have no income other than that which I can earn by doing odd jobs here and there.

But it's not like I've not paid any taxes. In fact, I'd wager that I've paid enough to cover my £71.70 for a good few years, and as soon as I'm back in work, I'll continue to pay to support others. And yet, I'm not allowed to claim Jobseekers' Allowance. And before you ask, yes, I am actively seeking employment. I've applied for a good fifty or so jobs in the past week, and am waiting to hear back.

What's the problem then? Those bloody Romanians and Bulgarians coming and stealing our jobs? No, but ironically, it is because of them.

You see, David Cameron and co. at Tory HQ were so against our fellow Europeans coming over that they decided to make it as unattractive as possible, by passing a law saying that they couldn't claim benefits for the first three months. This was where the problem came in because somebody pointed out to him (quite rightly) that the EU wouldn't like this very much. So, the lawyers came up with a thinly disguised variation of the same law saying that anybody coming to the UK from an EU member state is not entitled to claim benefits until they have lived in the UK for three months.

While I'm sure the well-meaning Mr. Cameron would have loved to make an exception for those of us born in the UK, EU law is quite clear that you cannot treat EU member citizens any differently to your own citizens. And so the regulations are universal.

Despite being at the most financially vulnerable I have ever been, I am not entitled to claim any of the support that I am more than happy to fund through my tax contributions. Please do not infer that this is somehow a rant against benefits and how much tax we all pay. I am, broadly speaking, a socialist, and believe in solid progressive taxation to enable us to look after those who need our support.

Yet again, the government have opted to throw those who need the most support to the dogs. Why shouldn't we support Eastern European migrants who want to make a life for themselves here in the UK, when we have the luxury of outsourcing our manufacturing to them for minimal expense?

The EU is an organisation that will only ever work if we are not allowed to pick and choose the bits we like. And yet that is exactly what we seem to be getting away with at the moment. Never mind the referendum on staying in the EU that's potentially on the horizon following the next elections, if I were France or Germany, I'd be thinking hard about whether they actually want us to stay.

Read this post on Fortitude Magazine

Francois Hollande Caught With His Trousers Down… But So What?

Francois Hollande and his ladies France’s least popular president since France began having that sort of thing has experienced an unlikely boost in his ratings. It would seem all you need to do to impress the French is to fornicate with somebody other than your designated life partner.

The French are some of the biggest perpetrators of infidelity in Europe, with more than half of men and a third of women admitting to playing away, according to a recent study. They’ve even coined a delightful euphemism for it: the cinq-à-sept, literally five-to-seven, suggesting the most appropriate time of day for inappropriate liasons. Before work would mean (somewhat ironically) less time in bed, while much later would interfere in family life (again, somewhat ironically).

Hilariously, the revelations about Francois Hollande’s private indiscretions seem to have struck a chord with the French people that his economic and social policies have been failing to since his election. While this is pure supposition on my part, his cheating seems to have humanised him in the eyes of the French voter.

Hollande is far from the first French president to stray. According to the Guardian, every French president for the past 40 years has been either proven or suspected to have had an affair. De Gaulle and Pompidou stand out as the only faithful presidents of the Fifth Republic. Research has found that higher religiosity has been linked to higher levels of faithfulness. We can probably say that France’s experiment in separating church and state has proven an overwhelming success.

In France, you can hardly move without seeing Hollande’s bespectacled visage peering out of a magazine cover, or glaring at the people opposite the Le Monde reader on the metro. All of which leads me to question the nation’s priorities. Is French politics still a serious subject, or is it some kind of high-drama soap opera, replete with infidelity, financial scandals, and in the middle a bumbling fool trying to get people to listen to him about the issues facing France?

While politicians are arguably human and their mistakes and decisions are their own, how much does it really matter if David Cameron takes a selfie with the attractive Danish prime minister? Or if Bill Clinton makes a bit of a stain on an intern’s dress? I can’t see how that affects their ability to run a country.

Of course, every now and then a scandal erupts over inappropriate behaviour, such as the recent Lord Rennard revelations, which truly warrants public attention, but how can we in good conscience criticise a government investigating every facet of our private life when poor old Frankie H can’t even bonk a sexy actress without it being printed in 96 point headlines the next day?

Perhaps we should let our politicians get up to what they like behind closed doors, and offer them the same courtesy we’d extend to anyone else. You never know, they might end up repaying the favour.