2 new Laravel things I’m using

Just wanted to share these two simple things I’ve recently found for Laravel 5.3

1. Repository Generator

https://github.com/andersao/l5-repository

This packages just removed about half a day of setting up the backend CRUD per. Model / Entity. A few commands, follow the instructions and then boom, you’ve got a fully functional repository class.

Sure, I’d need to write my on Tests around it performing as “expected”, however, I now have a basic Interface and Abstract which I can use across different Models.

2. Laravel Collective “Custom Components”

https://laravelcollective.com/docs/5.2/html#custom-components

Laravel Collective packages have been staple Laravel components for a while now, however I’ve never quite got to down all the docs (just whizzed on with the bits I need).

I’ve found the Custom Components part method. Before I’ve been creating a new “HTML Components” service class and linking up blade template files with that, however, now I can just keep it within the HTML Facade without any trouble. Much cleaner!

Strengths Finder 2.0 – Gallup

Strengths Finder 2.0 – Gallup

My Personal Strengths @dancourse

> 1 Strategic
> 2 Ideation
> 3 Relator
> 4 Includer
> 5 Significance

The book, Strengths Finder 2.0

We all like a good personality quiz, c’mon you’ve been tempted by a few Quizzes on your Facebook profile and Buzzfeed right? You hope they may reveal some insight and reflect some personal characteristics back at you whilst making you accept you may be more Hufflepuff than Gryffindor.

Well the Strengths Finder 2.0 by Gallup is a professional version of horoscopes / Buzzfeed questionaries for your working life. It offers you insight into your strengths, personality traits and supplies action plans.

The main drive for this “Strengths only approach” is the theory that your Effort multiplied by your Strengths will give you bigger gains than working tirelessly on your weaknesses for minimal gain.

Strengths X Effort = Maximum results

So ignore the weaknesses, multiply your talent and boss it.

I’ve done DISC profiles before with Inge, and I’ve had nearly a similar benefit from this. You get reaffirmation of your values back to you, but with this, it comes with dropping the baggage of your weaknesses and only aiming to take action on your Strengths.

The book, Strengths Finder 2.0

The in-house Entrepeneur

Very pleased to share with you a recent win both of my team’s pitches have achieved in the Santander Digital Innovation Challenge.

Warwick Uni is putting some money where it’s mouth is and is sponsoring early stage ideas across the University to improve everyone’s working lives.

Both teams I put forward have won a cash prizes, and in February will be starting some early validation of ideas.

What are the ideas? Can’t say too much yet, but one is to disrupt an internal space rather than wait a large organisation to supply us with something (we will be doing validated learning to improve), the other is attempting to leverage some new tech to channel shift a team’s work load.

I’ve already said to much! But I’m glad we won so had to share something, more news in Feb 2017.

The Lean Startup – joining up the pieces

What a relief to find this book. It’s already beginning to tie up a few concepts I’ve heard over the years and make them form a better picture of what’s been going on in the Tech / Startup industry.

The Lean Startup

It was Jamie King who mentioned it at Games for Health Conference UK 2016 in Coventry, and since purchasing it, the book has been a welcome companion on my daily travels.

It talks of reducing waste and validating assumptions. It talks of validated learning and not just saying, “we’ve all learnt a lesson” and moving on to make the same mistakes again. It talks about making experiments part of the fabric of your work and making things which fail but validate assumptions on your vision and helps you move along.

By doing experiments, like split tests on your site or bootstrapping business ideas, you learn about your visions cheaply, and reduce waste.

It’s so like Agile development, but for your business ideas.

Midlands lead the way… Games for Health Conference 2016 #G4HUK2016

Who’d have thought I’d ever write that. After leaving the cosy bubble of Bristol, we were “sent to Cov” a couple of years back. It must have been something naughty we’d done…

But last week I attended a conference that is just another example of how Coventry and the Midlands is thinking now. The Games for Health UK Conference  run by Dr Pam Kato and Coventry University was truly outstanding (http://www.seriousgamesinstitute.co.uk/events/pages.aspx?section=29&item=241). When you’ve been to a lot of conferences, it’s easy to spot a good one, this was one and I only was able to make the afternoon which was packed with content.

My afternoon started off with Earnst, talking us through some very practical changes we can all make to our games. Talking through Visual edits and previews with viz. Then moving onto how actually journals in games help people with Mental disabilities to remember and piece together the game they’ve been through already.

Then after such a practical chat, we were blessed with a talk from @alacon who took us through a very cognitive session on Women in Games.

There was some great research which shows how our “work environment” in which we spend most of our time effects men and women differently.

Focus Games were next up @focusgames and they offered a new perspective on the digital games we produce by showing us how they produce their very “low tech” board games for health care learning. Apparently, Agile has no place in board games!

Who’s heard of GTA? You know, Grand Theft Auto One, that game where you steal, punch and make money being super naughty! Well, my friend and I bonded over that game massively and one of the lead producers came to talk to us at the Games for Health Conference.

This man, Jamie King was filled with practical thoughts and books with theory he cares for and was so happy to share it all. He was an absolute highlight to the whole event. I only wish I had time to write more.

Can’t wait for the next one!

4 simple ways to increase you GitLab CI test speed

Our in-house development projects are well covered for Unit and Frontend tests since we adopted BDD (behat) and a bit of TDD (phpspec).

However, creating lots of tests has an impact downstream on our shared Gitlab CI server. Every-time we push a new set of changes to GitLab the tests are taking 30mins to complete and beginning to slow us down.

So here are our 3 easy tips to speed up your test runner and reduce the time it takes to run a full test run.

  • Increase the Gitlab Runner’s Concurrent setting so we’re using the server’s resources to it’s maximum, `concurrent = 50`
  • Split up the most time consuming test suites into small suites so we keep most suites under 2mins. We’ve gone from test suites, to calling individual Unit test Classes for the slowest tests.
  • Prioritise the longest jobs first (put them to the top of the gitlab-ci.yml) so they can get going immediately and not hold anything else up
  • If you’re lucky enough to have access to the Virtual Server, then increase your CPU’s. That shaved 2 mins off our test

These simple and inexpensive changes have taken us from 30mins to 5mins 30s.

Manual QA #FTW :(

Recently I’ve been looking to improve our app delivery QA. We’ve had to come up with a solution for our team to run the QA.

So we got the test plan from them and currently the QA was being run from a spreadsheet… on one person’s machine.

So after much chatting with our WMG Team, I lead the design and implementation of QA system we’d be more used to. This also meant rather than me diving is a developer and just writing some tests, I am utilising the resources available to me.

Our new system…

  • Keeps our workflow in Trello, which means shared work and understanding
  • Handles file uploads and pictures for visual help with Asserting something passes
  • Can push failed tickets straight into our Sprint board for resolution
  • Can write verbose test instructions so the QA can be passed to anyone in the team
  • Handles discussion on why it failed, or mistakes
  • We can copy the board for each build

Workflow

  1. In the “Master board”, we write new QA tests and maintain the Master instructions
  2. When a new build is released, we duplicate the “Master board”, we add the build number to its title to make a “Build board”
  3. We share and assign the QA tickets to the team
  4. We process them in order
  5. Any passes, we just archive the ticket, gently clearing out the board
  6. We mark any errors / fails / bugs in the “Build board” and move them to the Sprint board, “Failed QA” column
  7. Then Repeat for every QA run we need to do
testplan v0
Testplan v0
testplan v1
testplan v1
a verbose qa test 1
a verbose qa test 1
a qa test 2
a verbose qa test 2

[ReflectionException] Class LocalUsersSeeder does not exist

Just a quick techie post to help out any other laravelians’ who might hit this issue with Laravel 5.2 and database seeding.

I’ve written a seeder and it keeps failing to seed when I run this,

artisan migrate:refresh ---seed

[ReflectionException]
Class LocalUsersSeeder does not exist

Turns out the quick fix was all I had to do was re-run the

composer dump-autoload

Then it all worked! #HTH

Re: “Baking in” SCD…

Planning for Change, some evidence. Here’s a little follow up to my post, “Baking in” SCD.

I’ve been forwarded this link which is exceptional in it’s brevity and information. I suggest anyone in HE should read it’s from the, “Leadership foundation for Higher Education” and is called, “Adaptive capability in higher education institutions“.

It looks at 4 Universities and they change they went through with details from staff at all levels involved.

Some of the major points I thought were interesting.

  • Enterprise Enablers – in Plymouth Uni. 60 people who were enthusiastic about the changes from across the spectrum of the University. These people helped champion the change from all walks of the University staffing.
  • Town Hall meetings – Places to have open and frank discussions about the changes with the VC’s and people at the top.
  • Details reports on the actual state of the University – Senior staff having access to the correct information
  • A reason – The changes reported as successful had or created an urgent need
  • Removal of staff – Blindly reducing the headcount, left staff un-happy. But involving the unions, discussing reduced working hours and structural changes left staff with a better morale
  • Students suffer – There’s a massive tripartide relationship at Universities between Academics, Staff and Students. Balancing changes appeared to adversily affect the students.