Blog-vent Calendar (0/25)

 

TL:DR I'm gonna do something stupid and commit to writing a blog post every day from December 1st until the 25th. It's kinda like a boring advent calendar.

The Thing!

In the shower this morning I had an idea. Often when I have an idea in the shower it usually fizzles out before I've managed to get downstairs, trip over the cat, feed the cat and boil the kettle. This one didn't though, it persisted all day.

The germ of the idea came by virtue of it being that time of year where people stop doing something for a month (stop-tober) or grow some additional facial hair (movember) and then the recent flurry of black and white pictures with no context I've seen on Facebook recently, something clicked.

I've always wanted to write my blog more but I struggle because I have so many other things to do. So why not make an annoying thing that I can subject my handful of twitter and Facebook friends to? So from the 1st until the 25th of December I will write a daily blog post, like an advent calendar.

What is this all about? Are you okay Hun?

To be honest I've always shied away from this kind of thing, never especially putting myself out there online or participated in the wild west of debate at the bottom half of the internet, but I've always envied those who do. For example, I have one friend who participates in very lively discussion about issues of gender, gender inequality, gender identity and a multitude of varied and diverse topics. Reading the comments and discussions my friend engages in over the last few months I realise I know nothing about these things.

Whenever someone asks my opinion about something I've not thought about my response would often be "I have no opinion on this". Actually this happened a few times with family when asking my opinion or how I feel about something and it wasn't until my partner pointed out to me that responding the same way comes across as quite dismissive of the "something" itself.

I think much of this manifested itself during my History A-Level. I was terrible at forming an opinion because I felt that I could see both (or more) sides of the argument. Whenever my teacher would say something like "what would be Louis XIV's options be at this point?" I would often suggest options no-one would consider as viable (mainly because I always suggested things like war or extreme options). This was not because I thought these were viable, or something that I agreed with, or that I thought it was a good idea, but because I was asked what his options were. The vast number of "options" that could be considered prevented me from making sensible arguments and think this is still the same today. However this helps me write code, because that's what you need to do, consider the odd things that could happen and try to cope with them. A simple bit of code may get you most of the way there;

if(option == "diplomacy")
{
   martin.opinion = "reformer";
}
else if(option == "war")
{
   martin.opinion = "warmonger";
}
else
{
   //no opinion, exit
   return 1;
}

However you can't do this when discussing an argument with people. Or maybe I could use some AI to do this?

My exposure to blogging have usually been about some system config that someone might find useful or my anger at a piece of software that has caused me some grief. I never blog about anything that matters, and maybe I've never thought too much about topics that matter, instead focusing on things I have to get done that day, week, month, year.

So with all this, I am proudly responsible for one of those annoying posts people see on Facebook! Not that anyone will follow suit because I have sensible friends who I actually know IRL, and they're not stupid.

Also, on a random personal note, I've not had an advent calendar for years, mainly because I don't like chocolate, or maybe I'm getting old.

Getting my head around a new backup system

 

Warning .... this is just a brain dump really while I wade through the crap that is BackBlaze's confusing product + thirdparty software you need, the aftermath of crashplan and trying to narrow down what it is I need backing up where.

Crash plan is dead.... thank God for that. Despite the software being very good, very useful, sensibly thought out for normal people who have normal household backup needs, the cloud service sucked. The way they exited the consumer market too, it just shows how cloud services in general should not be 100% relied upon. ALWAYS HAVE A CLOUD EXIT STRATEGY.

Anyway, in the midst of everyone moaning about Cloudflare, BackBlaze, the only other real cost effective competitor, went on a gloating spree to say how good they are happy to accept new customers. So let's dive into my backup needs, what is available and what it costs.

My Backup responsibilities

Machines to backup (some needless detail too cos I'm a geek);

  • Laptop (My Lenovo X250 180GB SSD) dual boot Win10 (100GB) and Linux (80GB)
  • Laptop (Girlfriends MacBook Pro 80GB HDD) MacOS
  • Laptop (Girlfriends Lenovo T450 180GB SSD) Win10
  • Desktop (AMD A10 6800k 250GB SSD) Win10
  • NAS (HP N40L Microserver w/12TB Storage) Ubuntu LTS

Requirement

I want program that I can install on each machine/partition which backs up to both my NAS and a cloud service.

  • If I don't backup my girlfriends machines, they won't get backed up, so it needs to be done without her intervention
  • It shouldn't have to cost more than the family backup plan with CrashPlan ($150 per year total)

Previous Setup

We had a CrashPlan family plan and was installed on all the laptops (and partitions) and Desktop computer. CrashPlan was also installed in headless mode on the NAS. So all of the laptops and desktop backed up to both CrashPlan Cloud and my NAS.

The NAS itself has a more powerful twin (A N54L at my Dads house). The NAS has about 500GB of important data which I was backing up to the CrashPlan cloud (photos, emails, documents, previous work that kind of stuff) and the rest is stuff that I can re-download, re-encode or reprocess (sure it'd be a pain but it's not the end of the world, hence why I have the N54L twin).

So in all I have three operating systems, six instances that will have around 1TB max of data total to backup to the cloud, five instances (the laptops and desktop) which will back up to my NAS for local backup. 

The BackBlaze Offering

BackBlaze personal is $5 per month per PC or Mac for Unlimited backup.

Clearly this is very strict and they are trying to protect themselves against going the way of Crashplan. I understand this.

However for the following reasons, BackBlaze personal isn't an option;

  • To backup only the Windows and Mac instances, it'd be $20 per month to back up
  • I want to be able to sort all the backups in one account (like a family plan!)
  • I'd need a secondary piece of software on each machine to backup to my NAS
  • I'd need another solution Linux Laptop partition and however I deal with the important data on my NAS

To use BackBlaze with Linux use B2

Okay, so this isn't an unlimited plan, but since it's less that 1TB I'm trying to backup here then the cost shouldn't be so bad and I really do understand why BackBlaze are being an arse about this. However, here are the points here;

  • Simple pricing
    • Storage - $0.005/GB/Month
    • Download - $0.02/GB
    • Class "A" transactions – Free
    • Class "B" transactions - $0.004 per 10,000 with 2,500 free per day.
    • Class "C" transactions - $0.004 per 1,000 with 2,500 free per day.

Simple right, oh, here is the simple API Calls chart with all the transaction limits and what the transaction actually is that you need to be aware of https://www.backblaze.com/b2/b2-transactions-price.html .... Just as an aside, as much as I enjoy IT work, SysAdmin etc. when I get home I don't really want to have to do the same cloud costing bulls&*t that I have had to do at work.

So using the B2 Cost Calculator it looks like backing up 500GB with a monthly churn of say 30GB and no downloads (I assume this means recovery and not some sort of sync cost?) then it's looking at around $40 per year. This looks really reasonable, however in the estimator it doesn't not mention anything about "transactions", let's assume that I won't go over the daily limit, because nothing ever goes wrong when you assume you understand a pricing plan right? 

Pricing aside, how do you actually backup to B2?

Well, you need some software from somewhere else as BackBlaze only provide the storage and API to this. 

This is where I get quite annoyed with BackBlaze claiming to be a viable alternative to Crashplan. B2 is simply NOT a set once and forget backup solution. This is clearly designed as a cloud storage solution to rival S3 and in that it succeeds. But as an actual backup solution, this is 100% dependent on a now 3rd party in this backup solution.

I suppose we should look at some software

  • ArqBackup - $49 one-time fee per machine user (+$29.99 per licence for lifetime upgrade), Mac and Win only.
    • It can backup locally to SFTP so that's a plus
    • Looks very nice, well supported and easy to use
    • Two licences will cost me $196 $99.98 + ($59.98 for lifetime upgrades) + the backup cost
      • CORRECTION 11-09-2017 Licence improvement URL
      • Micheal Bennett kindly contacted me to let me know that ArqBackup now provide the licence per user rather than per machine. This greatly decreases this cost.
    • I still need a solution for the Linux part
  • duplicati duplicati.com - Free! - Linux, Mac, Win
    • This looks at the moment to be my best bet
    • Still in Beta, I've tried the Linux version and it seems okay for NAS backup so far
    • B2 support is quite new
    • If the Windows/Mac version is okay I may do this and donate the difference between the Crashplan family plan and the BackBlaze storage to the Duplicati developers
  • CyberDuck
    • Not a backup utility, it's a file transfer program like WinSCP
    • As a file browser though, this is awesome, just not for my needs today.
  • GoodSync $29.99 per computer
    • Quite cheap, no yearly cost
    • Might be okay for me but certainly not automated and invisible enough for my girlfriends needs
    • If I'm going to use something as complex as this, I may as well use duplicati
  • qBackup $29.99 per computer - $99.99 for a linux licence!!! WTF!?!
    • After seeing the Linux price, I stopped downloading. What a cheek!
    • So from the manual, it looks similar to GoodSync
    • The website doesn't look like it's been updated in a while, I don't trust it.
  • Cloudberry - $29.99 per computer
    • AGAIN! WTF!? They limit you to 1TB storage.... but they don't offer storage. What kind of crap is this!?
    • Sure I'm not using 1TB but why should the 3rd party vendor dictate how much I store when they're not even storing it?!
  • duplicacy.com - $20 per computer + $5 per year per computer
    • Not as much as Arq but adds a yearly cost per machine
    • Doesn't look as feature rich as Arq, but that could just be the lack of info on the website
      • I must admit that if I'm looking to pay for a backup solution, first appearances of the website really seem to matter to me
    • I may try this out but probably only if duplicati isn't suitable which I suspect won't be the case

 

Other sensible solutions?

Office 365?

This one isn't quite for me, but it maybe in the future. I'm an academic so I get a work copy of MS Office via 365. However my girlfriend doesn't have this. So, for £59.99 per year (£5 per month), you can get a personal Office 365 account giving you all the products as well as 1TB oneDrive storage, way more than needed.

This can be further extended to £79.99 per year for a family version and you can have up to 5 users each with 1TB storage on oneDrive.

This could be coupled with any of the same pieces of software you have to have for B2.

 

Conclusions?

I will finish this when I have some conclusions. In the mean time, I hate the cloud!

undefined

SeqAn and ReadTheDocs

 

So you find a typo in the SeqAn read the docs manual and you think "I will be a good citizen and correct it", but before you issue a pull request you want to test that the URLs work. To do this you need to 'compile' the docs, a little like you do with LaTeX. Here we go;

I've done all this on a AWS Ubuntu "14.04.5 LTS, Trusty Tahr" instance for a clean install so you can see only what is required.

Install Dependencies

$ sudo apt-get update

$ sudo apt-get install python-sphinx python-pip git

 Install Sphinx extensions

$ pip install --user sphinx_rtd_theme

$ pip install --user sphinxcontrib-bibtex

$ pip install --user seqansphinx

Go to your development directory, clone SeqAn and 'Compile' the docs

$ mkdir development

$ cd development

$ git clone https://github.com/seqan/seqan.git

$ cd seqan/manual

$ make html

 

There you go, you can now edit the SeqAn manual and view the resulting HTML pages on your local machine (assuming you're not being daft and doing it on an AWS instance to ensure you get only the minimum dependencies like me).

 

Home ← Older posts