Barrie Callender

On becoming a Software Developer and starting a UK business

Free Accounting Software for Small Business in the UK

'GnuCash is a free accounting application' We use GnuCash to run the accounts for our small business in the UK, which currently consists of me working through a contract and my wife building an automated income through an affiliate marketing site. I had used it when I was a contractor a few years ago and had no hesitation to use it for when my new contract started on 1st June 2016.

If you are starting a new business in the UK, I hope this article will help you decide if GnuCash will satisfy your requirements for an accounting application. Here I will provide our experience of GnuCash as one of the accounting tools we are using to run our small business.

I am not an Accountant so anything I write here is not advice. This is the first article I have written on this subject and I know I will write more on specific details as I gain more experience with the hope it will be useful to others.

Travis CI Fails With Undefined Method Error

'Travis CI turns green for Workpattern' My Workpattern gem makes use of Travis CI and I have it configured to test on five different versions of ruby as can be seen in the .travis.yml file just below here.

Every version apart from Ruby 1.9.3 was passing their tests. That version was failing whilst bundler was running and provided the following error message:

NoMethodError: NoMethodError: undefined method 'spec' for nil:NilClass
An error occurred while installing workpattern (0.4.0), and Bundler cannot continue.

This was the content of my .travis.yml file.

language: ruby
rvm:
  - 1.9.3
  - jruby-19mode #JRuby in 1.9 mode
  - 2.0.0
  - 2.1.0
  - jruby-head

A History of the World

'Mummy of Hornedjitef' I really enjoyed History when I was at school, but only the more recent stuff. I took European History from 1870 to the present day and by that mark I would have covered just 100 years by the time I sat the exam in 1979. In reality I concentrated on about the first 50 years of that. My favourite topics were Bismarck, the Franco-Prussian War and the Russian Revolution up to the death of Lenin.

I have never really been interested in older history such as the Greeks and Romans and those that came before them. I just couldn’t relate to it and I found the thought of it quite boring. I always knew people that liked that era in history, and there are many books and films about those earlier periods but the history books I read for that era seemed to be about a bunch of objects and where they were found and little more information than that. Nothing to spark my interest. My modern history was all about great ideas like communism and events that changed europe and there were people alive at the time of my exam that remembered some of it. It felt real.

Using Rust for Rubyists by Steve Klabnik

'Rust logo' I think it was the Ruby Rogues Polyglot programming podcast where I first heard about the Rust programming language, then again I think I may have heard talk before, but that is when I decided to take a look. To cut a long story short I ended up buying Rust for Rubyists and am now trying to learn Rust.

I only bought the tutorial a couple of days ago and so have managed to get to Chapter 6 of 11 chapters. I’m really enjoying it, and wanted to write something about it that could be useful to others going down this route. When I’ve not been sure about something in the tutorial, I’ve explored a little around it to help me make sense of it and I hope it will help others.

Practical Object Orientated Design in Ruby

'Practical Object-Oriented Design in Ruby by Sandi Metz' I was given Practical Object-Oriented Design in Ruby by Sandi Metz for Christmas and it has proven to be a great gift. Actually, Sandi Metz wrote the book, it was my wife who bought me it. I was not able to stop reading it, something my family noted over the Christmas period on more than one occasion. My children have asked how I’m getting on with POODR on a number of occasions. I think they like saying the little nickname for this book. Once I had finished the book, there was only one thing to do and that was start reading it again.

Git Branches Do Not Have to Be Related

This blog uses Octopress which is based on Jekyll and apart from it being easy to use, I chose it because it was Ruby and uses git. I figured I might pick something up about Ruby and git when using it.

Even before I had written my first post, Octopress had shown me branches in git that do not have to be related to each other. I will look at using the same technique in a Java library I have, where the same source code is used to produce two versions of a utility. I could have one main branch containing the source code, one for the version 4.7 build and another for the version 5.0 build.

Back to Octopress. If you want to serve up a web site on Github, you need to provide the static files in a master branch of a repository called USERNAME.github.io. Octopress showed me how you could have the Jekyll source files in one git branch and the statically generated files in another.

I Am Not a Programmer

'CallenB in 2011 or was it 2012' I have written applications over the years on the odd occasion that I have needed to. One such application was written for Network Rail in 2005 and as far as I know it is still there in 2013. It wasn’t the first application I’d written, but it remains the biggest. I’ve written bits and bobs since then, including a Rubygem called Workpattern, but I am not a Programmer and, judging by that Gem, certainly not a Ruby Programmer.