This summer I will be doing a lot of coding and I decided it was finally time to take the plunge and start using Vim. However this first meant that needed to tidy up my terminal. A couple of weeks ago I stumbled upon a fantastic colour scheme that I’ve been using ever since, Solarized. It’s incredibly easy to read and the simple colour palette provides a good syntax highlighting without being too in your face. I highly recomend it.
It quickly became apparent that in order to properly set up colours for my terminal prompt I would have to change from the default Bash to Zsh (I use a Mac Air). It turns out there are all sorts of benefits to this and it was definitely worth it. At the same time I also switched from the native terminal app to iTerm2 after reading this article. It was then incredibly simple to create my own theme and customise my prompt (the final setup can be seen below, click through a few times to see it full size).
Whilst trawling the internet for instructions for setting everything up so far, I’d seen a few people mention Tmux and Tmuxinator. Tmux simply allows you to have multiple terminal sessions open in one window and make it very easy to arrange everything in panes. Tmuxinator will then store a session as a template for repeated use and gives you the ability to specify different programs to different panes. This means that I only have to type one line to start the setup you see below.
Finally, it was time to install Vim. I chose to use pathogen to manage my packages and immediately installed the Solarized theme! Since then I’ve been tidying all my new dotfiles and now have them as repo on github. I’m brand new to Vim and have no idea what I’m doing. I know there is a lot of information online but if anyone has any packages they feel are very useful, or small bits of code for .vimrc I would greatly appreciate it if you could comment saying so. Alternatively if you like anything you see, feel free to ‘borrow’ it from github!
My Terminal setup
My younger brother has been learning to code in Python recently, mainly by working through some of the Project Euler stuff. He has also been investigating an idea into the relationship between how many factors a number has and its size, leading to something he humbly calls ‘The Campbell Rating’. (Take a look on GitHub)
It turns out that when you’re looking at larger numbers, the code for calculating a Campbell Rating can take quite a while to run and I decided that this was the perfect opportunity to start playing with Cython.
For those who have never heard of Cython, it allows you to write code in Python (highly readable and easy to understand) and then compile that code in C (very quick but harder to read). After following a little tutorial I found online I was quickly ready to get stuck into my brothers code. First, I tried compiling it without making any changes to the original code, and the result was something that ran 2x faster. Good, but was sure it could do better.
So I went through and started declaring all the variable used as C type variables. This is something that Cython would do anyway, but declaring them at the beginning of a function stops that from happening every time you iterate through a loop. The code was now 3x faster than the original.
Finally, I went through and made each function an individual C function. This means they can be called directly from C, again, much faster. I compiled the code once more, expecting another small increase in speed. However, I was rewarded with code that ran a massive 33x times faster than the original. All for just 10 mins work.
My plan now is to go through and find out if some of the earlier changes where actually unnecessary and work out what additions genuinely make the code faster. I’m very impressed with the results and would definitely recommend using Cython for anyone who’s Python code is taking a tad too long. Information on Cython can be found here.
Well, this weekend I attended my first ever conference. It was held here at Cardiff University from Friday to Sunday covering the incredibly broad spectrum of Python and Django. Over the course of a few days I met so many amazing people and learnt so much and I’d like to thank Daniele Procida for providing me with that opportunity.
But anyway! The conference itself… Friday was an open day to which anybody could turn up for free to listen to talks and attend tutorials. I happened to give one of the Science talks in the morning in which I presented a recent piece of coursework I completed in my computing class. This was a room full of people who all knew a lot more about coding than I do, however they were genuinely interested in what I had to say and asked meaningful questions afterwards. This attitude was apparent throughout the conference, no matter what your skill level, you were treated as an equal and offered help without feeling like a burden.
The talk went really well and I’m very pleased that I did it, but the highlight of the day was definitely the evening meal. We went to a restaurant called The Clink, in Cardiff Prison. All the waiters and all the chefs are inmates looking to turn their lives around which is awesome. Plus, the food was amazing!!! Seriously, just so good.
Saturday was another day of talks. My friend Matt gave a short lightening talk about how we had been introduced to coding and how it fitted in with our degree. At the end he said ‘why did I have to wait until university to learn to programme?’ and this is so true. I started learning to programme in September and have loved it all, but I’ve also been shown just how useful it can be. Using Sage Math I have an entire toolkit at my finger tips that was never available to me before.
Sunday was definitely the best day of the weekend. I spent the morning in a Tutorial for Django beginners where we worked through building a simple web application. Then we just got out our laptops and started working on our own projects whilst experienced Django users and developers answered our newbie questions and helped us fix any bugs. That afternoon I continued to work on my own project in the corner of the room where the code sprint was being held. A code sprint is where a group of programmers (in this case about twenty) all sit down and attempt to fix a large problem together. Today they were working on fixing bugs and reviewing code for the upcoming Django 1.7 release. However, despite how busy they were, whenever I needed a hand someone was happy to help. At one point I had Django core developers discussing the best way to solve one of my problems. These guys are some of the best in the world at what they do, yet they still found time to help a complete newcomer, and I’m really grateful to all those who did so.
Basically I had an amazing weekend! There’s rumours of another one next year which I would definitely like to attend. There’s also a Python conference coming up which if I can find the time (and the money) I’d love to attend as well. Thanks again to Daniele for organising it, and thanks Vince for presenting me with the opportunity to go.
This coming weekend I will be both speaking and attending at the first Django conference to be held in the UK! Django is a framework for building web applications in Python. I will be speaking about the piece of coursework I posted about recently. For more information head here.
A piece of coursework I did in my computing module. The entire document was written using LaTeX and all the maths was done with Sage and Python. The original code can be found here.
Pythons and Ladders
So, its the end of my second season of senior refereeing. The big news is that I am now a level 6 under the RFU system. This is as high as I could go without being nominated and then assessed multiple times. Pretty decent work I think!! It’s where I had aimed to be by the end of the season if everything went perfectly so I’m very happy.
Once again it was nice to end the season with a couple of 7′s tournaments. This year I attended the Caldy 7′s for the first time, and re visited the North Enlgand School 7′s. Unfortunately I wasn’t able to go out to Milan due to A-Level exams, but there is always next year!!!
I will be posting some of the more memorable parts of the past two seasons over the summer, I think the world deserves to share in some of the hilarity I have encountered.
And finally I would like to thank Tony Rossall and Nigel Yates for the all the hours they have spent coaching me and teaching me. Without them I would never have been at the standard I am today. Also, the members of Liverpool Referee Society who showed me the ropes and some of the darker sides to refereeing. I will not name them as there are too many, but I have made some great friends over the last two years. Good luck to you all!!
Sorry it’s been a while, had quite a busy start to the season!! The main change is that I’m now level 8 meaning I can go on exchange to anywhere else in the country, wooo!!! I’ve already been off gallivanting twice so far, the first time to London and the second to Birmingham. Both were thoroughly enjoyable days out with some great guys and I can’t wait for my next trip to Manchester in December.
To make a long story short, the report from London exchange was a bit disappointing. I think the excitement of the day got to me. However!! The assessor from Birmingham was full of praise and thought I showed real potential. So I’m pretty happy about that!
Other than that there’s not much news. I’ve been invited to join the North-West Federation and we have a meeting every three weeks. They’re small and very informative so I’m taking a lot away from them. A recent talk on managing the scrum proved very useful indeed.
Here’s a record of what’s happened so far;
Southport 17 – 5 Oldershaw
East London 0 – 45 Old Brentwood (London Exchange)
Mossely Hill 42 – 0 Bury
Caldy 2nds 52 – 0 Chester 2nds
Willenhall 16 – 14 Newcastle (Midlands Exchange)
Liverpool Uni 12 – 12 Bishop Burton
Old Brentwoods 60 – 0 North Manchester
Birkenhead Sch 72 – 14 Cheadle Hume Sch
For the first time ever I was invited to a seven’s tournament, and this was one of the biggest going. 40 different schools were invited to attend from the North of England, with a couple of special invites going to teams further afield. Unfortunately, I was arranged to ref the very first match of the day, so without any prior experience of the game, I just went for it.
I have to say that my first two games weren’t the best ever, but after a half hour break and the chance to watch some more competent ref’s have a go, I quickly got the hang of it. I think this shows the importance of just watching people and learning from then, its far easier to understand what it is you need to do.
In total I reffed six matches, including one quarter-final which was a great honour, and by the end of the day I’d also been invited to attend another tournament later in the summer. Success.
|Helsby 1st XV
||Knutsford 1st XV
For once the match I was refereeing was not miles away!! A 10 min drive down the road and we were there, so I didn’t have to leave excessively early for once! Before the match I checked online to find out the score of their lasts meeting, something recommended to me by a few senior referees, as it allows you to get a feel fore how the match might go. It didn’t look good, ‘Knutsford 78 – Helsby 5′.
Luckily however, the match was slightly more even. Neither team was really there to play serious rugby, they were far more interested in the after match drinking, but some decent rugby was played none the less. Due to the lack of skill, many mistakes were made by both teams, leading to some very frustrated players. A couple of times during the game things got heated up, but never anything too serious…until just after half time.
A couple of players started squaring up to each other and instantly there was a large mob of angry players all very close to hitting each other. Before I could react, a spectator rushed forward and dived into the fray, throwing a punch at someone as he did so. I blew my whistle, and ordered both teams to retreat 10 metres so that there was plenty of distance between them. Then, I called over the culprit and (what can only be described as) told him off. I’ve never had to discipline an adult before in any part of my life so this was quite a surreal and strange experience, part of me expected him to scoff and ignore me, but instead he did as I asked and left the feild.
My coach said that I had done exactly the right thing, personally, it still feels slightly strange to have had to tell an adult off, but I imagine it won’t be the last time that I have too.
|Birkenhead School 1st XV
||St. Ambrose College 1st XV
One more game under my belt and it was another one that I can be pleased with. The game was well managed and nobody stepped out of line, which is always positive. I had the respect of all the players, some of whom I’d met before, and I’ve realised that this is one of the key areas to get right. Without the respect of all the players and coaches the game is much harder to control but I seem to have learnt how to gain people’s confidence and it has helped me perform better in the long run.
Reffing Birkenhead School again next, and I’m already looking forward to it!
|New Brighton 2nd XV
||Sale 2nd XV
Just to clear up any confusion, this is not Sale Sharks 2nd XV!! I’ve had a couple of people who thought I was already refereeing professional matches, but unfortunately they were mistaken. On a positive note, this was probably my best performance to date. It was the first time I felt I really had the respect of the men I was supposed to be controlling, and it really made things a lot easier to manage.
I’ve realised that it’s the small things that count. I really made an effort with how I looked and I tried to present myself as someone who actually deserved their respect as soon as they met me. This all meant that by the time we actually stepped onto the pitch, the majority of the players were already on my side, listened to me and did as I asked. I couldn’t ask for more.
This all accumulated in the match being thoroughly enjoyable for all involved and I hope that I can retain the high standard of management.
|Liverpool Waterloo 3rd XV
|| Liverpool St Helens 3rd XV
I think the less said about this match the better. St Helens are the team that have given me lots of grief before and they were no different today. I promised myself I would be stronger than I was last time, and I think generally I was, but this was definitely not best game.
The weather was horrifically cold and it affected both teams badly, the ball was constantly being dropped which led to a very stop-start match. Not very fun for anybody involved. Once again St Helens were the worse side, facing a much younger and fitter Waterloo. Again this led to frustration and ultimately cheating and dissent. I tried my best to control them, but being so much younger than them means they have very little respect for me which makes things much harder. I’m going to have to really come down hard on them next time.
|Merchant Taylors School 1st XV
||St Ambrose College 1st XV
First match where I’ve not been watched been watched by someone far more senior than myself. It was actually quite refreshing and it really took the pressure off. The game was a fantastic reffing experience, the school matches are far more disciplined and the lads always have a lot more respect for me. I personally feel like I’m starting to noticeably improve, the offside was organised a lot better and my positioning is starting to become much more natural. Hopefully it will continue this way!
|Wirral Grammar School 1st XV
||Kings Macclesfield Grammar School 1st XV
After being invited to the North-West Federation the Society decided that they wanted me to be formally assessed. So they sent Tony Rossall (an ex-international Ref!) to observe me. Whilst the two teams were warming up, I was being fitted with a radio mic so that he could every word I said to the players and their replies.
The match itself passed without incident, apart from one point where I realised I didn’t know how to award a penalty try. Ah well, we learn from our mistakes don’t we?! After the match, I met up with Tony in the School canteen where he took me through the match step by step, showing me where to improve and where I was already doing well. A few days later he emailed me his report, along with my revised grading. I am now a level 9 ref! Straight from level 15 to 9, and once you get to level 6 you have to pass a fitness test, so I’m already doing very well for my age.
Tony also told me that from now on he will be my personal coach, with the goal of getting me as far up the referees ladder as possible. If you want to read what he had to say on my performance, his report is here.
|Liverpool University 3rd XV
||Bangor University 1st XV
This was easily the most technically skilled match I have participated in so far, and not just for the players. Both teams were so much faster and powerful than anything I was used to that it took me a few minutes to adjust my style accordingly. The match itself was a pleasure to referee because both teams were playing very good rugby without any quarrels or disputes.
The real point of interest was the two men standing on the side of the pitch watching me…One of them I recognised as Jim Heaney, the President of the Society; the third time in a row he’s watched me ref. He introduced his colleague as Geraint Davies the ‘Development Squad Co-ordinator’. This man’s job is to find young talented referees and help them progress through their training, all the way up to Premiership level, and he’d been watching me for the past 80 mins!! After a small chat, I was invited to join the North-West Federation Development Squad, and told that with the correct training, I had the potential to go all the way!
|Liverpool University Vets
||West Park 3rd XV
By far my favourite match so far! It was clear from the very beginning who was going to win: the Vets were obviously very young, and fit because of it, whereas their opposition, an ageing West Park 3rd team, were very slow and sluggish. Quickly, the score got out of hand and the rest of the match was spent with both teams laughing and joking about the weather etc.
The only moment of interest came when one particularly hard tackle left a player lying on the floor writhing in agony. The game was paused whilst some first aiders attended to him. After less than 30 secs they had decided it was too complicated for them and that an ambulance was required. A fast response car arrived and quickly deduced that his shoulder was dislocated with a possible break too! It was then left to me, as the ref, and the paramedic to look after this man whilst we waited for an ambulance to arrive to help him.
One final comment: Jim Heaney, the President of the Society was there again today, and he thought I did extremely well! Not sure why he’s turned up twice in a row, clearly he thinks I must be halfway decent.
|Moore 2nd XV
||Liverpool St Helens 3rd XV
I can honestly say that I hope I never have to ref a game like that ever again. The match started with both teams seemingly taking a very relaxed approach. However, it soon became clear that this was going to be a very close match and both teams soon rose to the challenge. The problems started when I gave a try to Moore that many spectators said should’ve been disallowed. In retrospect, they were wrong (which is why I am the referee and not them!), but this led to some very angry St Helen’s players, and from that moment on every decision I made was questioned and argued against.
I think it would have been better if I had immediately put a stop to all the back chat, instead of letting it get out of hand, but I was nervous and easily intimidated so I let them get away with it. By the end of the match, it was starting to affect both teams, resulting in Moore becoming so frustrated with their opposition that they committed a silly offence and I had to send one of their players off.
Afterwards, it transpired that the man I had noticed standing at the side of the pitch taking notes was none other than Jim Heaney, the President of the Society! Fortunately, he thought I handled the difficult circumstances of the match very well for a newly qualified ref. So maybe it wasn’t all as bad as I thought!
|Wirral 3rd XV
||Chester 3rd XV
My second and already I was reffing the same team again. Knowing how the Chester team played made things a lot easier as I could anticipate how the match was going to go and what sort of things to look for on the pitch. The only spanner in the works was the appearance of my Head of Sixth Form as the Wirral Vice Captain (for the first time ever he had to call me sir!). Unfortunately was substituted after 10 mins due to injury, and the rest of the game passed without any incident or excitement. The only thing anyone said to me was that I had to work on positioning, something that ref’s get told to improve up until the day they retire. So all in all, a good match, and a good performance!
|Chester 3rd XV
||Broughton Park 4th XV
Like the title suggests this was my first ever senior game, and the first with the Liverpool Society. So to add to the pressure they sent two assessors to decide if I was competent enough to become a full time member. Luckily, the majority of the match passed without any real incident. A few of the older guys needed a reminder about some of the laws, but the game generally had a friendly and relaxed atmosphere.
Overall, it was clear who was the better side. Chester were younger and fitter and by the second half it really started to show. Broughton’s standards started to slip, and eventually they crumbled under the pressure of a skilled Chester side.
The verdict of the assessors? I was in!! They said with the right training and lots of practice, I actually had the potential to go quite far. We’ll see…