You are currently browsing the archives for the Agile category


From Chaos to Kanban

There’s always a great atmosphere and discussion at Agile Staffordshire whenever we have a guest speaker. February did not disappoint. Craig Judson (Operations Manager at Codeweavers) presented Kanban in general and then elaborated on how Kanban is utilised specifically for continuous delivery of software.

Subsequently, a vibrant and energised discussion took place on working practices and project/product management. It was great to have such a varied mix of disciplines and roles present to contribute; consultants, developers, academics and managers. It was particularly interesting to note how various people were adapting well-known techniques to their work place and teams.

Thank you, Craig!

Craig Judson discussing Kanban and software delivery.

Craig Judson gave a presentation on Kanban and how it is used to deliver software at Codeweavers.

Also in February, Rosie Anderson and Rebecca Mycock stopped by to introduce Outsource. While Agile Staffordshire is primarily a group to share experience, expertise and good practice it is useful to network and learn about jobs, careers and opportunities in the Industry. I am sure that we will welcome them again at some point in the near future. Students may wish to pay attention to our blog for news concerning graduate recruitment (as well as all of the great professional experiences they can learn about). Thank you, Rosie and Rebecca!

Git Introduction January 2015

Paul Williams presenting Git.

Paul Williams gave a great introduction to the group on version control basics with Git

There was a great vibe this January; our first meeting of 2015. Paul Williams opened the year with a great session introducing Git. The session served as a useful introduction to those new to Git as a version control mechanism and incorporated rebasing techniques for those with intermediate skills. We experienced a wide spread of issues related to version control; what else would you expect with up to 20 people trying to do the initial commit? We also had a sneak peak how others are using Git in professional ventures. It was a great fun! Agile Staffordshire enjoyed an enthusiastic turnout; it was lovely to see everyone. Thank you, Paul.

The session provoked some good discussion and even set the scene for our first quarter topics. In March 2015, Agile Staffordshire will hold a session on Vi (the editor that appeared mercilessly upon commits) and more advanced Git techniques in April 2015. February’s session will focus on project management, with a specific discussion on Kanban in relation to software development. Keep watching our blog for upcoming events or join our meet-up group.

Group working at Agile Staffs January 2015

Ad-hoc team trying to commit to repositories in ad-hoc ways! What could go wrong? Not much really!

Enjoying Git session - January 2015.

It’s amazing how a bit of Git can make people smile.

I would like to add special thanks to Staffordshire University for hosting our event and providing wireless Internet connectivity throughout the session. Super stuff! Another special mention to Mel for taking photographs!

September – Agile Discussion

Date: Thursday 25th September 2014
Time: 19:00
Venue: Staffordshire University – Stafford Campus (Octagon building, K102)

Rally round all agile advocates, this month we are coming together to share and prepare ideas for next months Agile Lightning talks. Next month, with the new academic year under way, we will be sharing our experiences of Agile with a series of Lightning talks about what agile it means to us.

How does agile affect as a developer, designer, manager, customer?
So come tell us, what does Agile mean to you, and sign up at http://meetu.ps/2ywP92, bring yourselves and your colleagues.

August – The Guilded Rose Kata

Date: Thursday 28th August 2014
Time: 19:00
Venue: Staffordshire University – Stafford Campus (Octagon building, K102)

The Guilded Rose Kata fictionalizes the experience of working with someone else’s code. You’ll probably groan when you first see the code provided to you. The amount of code isn’t overwhelming, its the prefect balance to evoke the feeling, “I can’t wait to re-write this cruft.” It’s suggested that you use Test Driven Development with this kata. Once done, read the **spoiler** section at http://craftsmanship.sv.cmu.edu/katas/gilded-rose-kata to see if you had a similar experience or not.

The above link also provides versions of the kata in C#, Ruby and Java. Google provides other implementation in other languages.

So, sign up at http://www.meetup.com/Agile-Staffordshire/events/201606022/, bring yourselves, your colleagues and your favorite IDE along and we’ll have some pain fun.

July – An Introduction to Functional Programming with F#

Date: Thursday 31st July 2014
Time: 19:00
Venue: Staffordshire University – Stafford Campus (Octagon building, K102)

F# is a functional-first programming language which helps you to tackle complex computing problems with simple, maintainable and robust code. In this session, Ian Russell will get you started on the road to thinking and writing code functionally.

If you’re interested, please sign up on meetup.com

June 2014 – Is TDD Dead?

Is TDD Dead?

Here lies TDD…

Date: Thursday 26th June 2014
Time: 19:00
Venue: Staffordshire University – Stafford Campus (Octagon building, K102)

Fear not, TDD is not dead, although it’s certainly been talked to death this month. This catchy title has been doing the rounds on the web recently since the Kent Beck + Martin Fowler + David Heinemeier Hansson talks. This month we are going to take a look at it ourselves, try out some different approaches and share our experiences.

For me it all started about 2 months ago when I watched Ian Cooper’s talk on TDD, Where did it all go wrong. I’ve been told over and over, that unit testing gives you the freedom to change code with the safety of maintaining functionality for the customer. So refactoring is the process of changing code without changing functionality, and those like Kent Beck would advocate your test suites allow you to safety refactor to design patterns as they emerge in the system. Yet this video struck a chord, I struggle to refactor code without breaking tests, and so lose confidence that the functionality is unchanged as the tests are now different.  Ian’s video addresses these points by highlighting different approaches and definitions to unit testing, and asks is the way some of use do TDD slowing us down.

We are going to explore this issue by scratching an itch many of you had during last months lean coding challenge, Refactoring! After a quick summary of Ian’s video, we are going to pair up and refactor a completed C# implementation of last months Checkout Code Challenge. It will be covered by two test suites. One set focusing on implementation per method and another suite on behaviour of the system. After an hour of coding we will break for a retrospective to find out how everyone’s refactoring was influenced by the different test suites, the advantages each way of testing has to offer and insights into TDD for agile development.

As we’re going to be writing code in C#, bring your laptop with visual studio set up – Project Code on GitHub

If you’re interested, please sign up on meetup.com

See you there!

Jon Willis

May 2014 – Lean Code Challenge

Date: Thursday 29th May 2014
Time: 19:00
Venue: Staffordshire University – Stafford Campus (Octagon building, K102)

For this month’s session, we’ve decided to re-run the Lean Code Challenge that was run back in July 2011. The format is quite simple – Paul will introduce 7 key Lean Software principles and their importance in software development. Following this, the code challenge will take an hour, although being split into six iterations, it really is fast and furious. Finally we will have a little retrospective about the challenge and what people have learnt.

As we’re going to be writing code, bring a laptop with your favourite language / IDE / compilers.

If you’re interested, please sign up on meetup.com

 

Guest speaker @pezholio presents an introduction to the Open Data Institute

Date: Thursday 24th April 2014
Time: 19:00
Venue: Staffordshire University – Stafford Campus (Octagon building, K102)

Stuart Harrison, a ruby developer at the Open Data Institute will be giving a talk entitled “Open Data, Open Development and the Open Data Institute”, and he’ll be talking about open data in general (what open data is, and what good open data looks like), the work of the ODI, and their open development practices.

For those of you who are unfamiliar with the ODI, you can find more information about them at http://theodi.org/

January 2014 – Kata with Constraints

Calculator Kata

Calculator Kata

Date: Thursday 23rd January 2014
Time: 7:00pm
Venue: Staffordshire University – Stafford Campus (Octagon building, K102)

With the new year now behind us, to kick start 2014 Agile Staffordshire will be going back to basics with a twist. A key technique in agile development is Test Driven Development (TDD), a difficult skill to master yet often practiced through simple Kata exercises. For the uninitiated, Katas are a reference to martial arts where students repeatably practice a set of moves in order to better learn and understand. Programming Katas are similar short 10-30 minute challenges where the goal is the same but each attempt can lead you to experience a different journey.

This month we will be pairing together to do the String Calculator by Roy Osherove but with a constraint of your choosing. Kata rules are below, as are a selection of constraints but feel free to choose your own. There is no set language, but you will need one with a testing framework for TDD.

String Calculator

The following is a TDD Kata- an exercise in coding, refactoring and test-first, that you should apply daily for at least 15 minutes (I do 30).

Before you start:

  • Try not to read ahead.
  • Do one task at a time. The trick is to learn to work incrementally.
  • Make sure you only test for correct inputs. there is no need to test for invalid inputs for this kata

String Calculator

  1. Create a simple String calculator with a method int Add(string numbers)
    1. The method can take 0, 1 or 2 numbers, and will return their sum (for an empty string it will return 0) for example “” or “1” or “1,2”
    2. Start with the simplest test case of an empty string and move to 1 and two numbers
    3. Remember to solve things as simply as possible so that you force yourself to write tests you did not think about
    4. Remember to refactor after each passing test
  2. Allow the Add method to handle an unknown amount of numbers
  3. Allow the Add method to handle new lines between numbers (instead of commas).
    1. the following input is ok:  “1\n2,3”  (will equal 6)
    2. the following input is NOT ok:  “1,\n” (not need to prove it – just clarifying)
  4. Support different delimiters
    1. to change a delimiter, the beginning of the string will contain a separate line that looks like this:   “//[delimiter]\n[numbers…]” for example “//;\n1;2” should return three where the default delimiter is ‘;’ .
    2. the first line is optional. all existing scenarios should still be supported
  5. Calling Add with a negative number will throw an exception “negatives not allowed” – and the negative that was passed.if there are multiple negatives, show all of them in the exception message

    stop here if you are a beginner. Continue if you can finish the steps so far in less than 30 minutes.


  6. Numbers bigger than 1000 should be ignored, so adding 2 + 1001  = 2
  7. Delimiters can be of any length with the following format:  “//[delimiter]\n” for example: “//[***]\n1***2***3” should return 6
  8. Allow multiple delimiters like this:  “//[delim1][delim2]\n” for example “//[*][%]\n1*2%3” should return 6.
  9. make sure you can also handle multiple delimiters with length longer than one char

Kata Constraints

Select ONE constraint from below.

  • No If, Else, Switch Statements
  • No mouse
  • No Classes
  • Use a functional language
  • No Mutable State
  • No Getters/Setters
  • No IDE
  • 2 Refactorings after each passing test
  • Single word method names
  • Or make one up yourself…

Many of the constraints above which affect the design of code, work towards improving object calisthenics. More on this can be found here.

The goal of the session is not to complete the Kata (you may even restart several times) but to learn through the experience of your selected constraint.

This will also be a special month, as it will be the last regular attendance of one of Agile Staffordshire’s founding members. Neil Kidd will be moving on to a new position at 7Digital, so all please wish him the best.

Hope to see you there.
Jon

 

December 2013 – Christmas Gathering

christmas decorations

Christmas-Decorations from http://www.freefoto.com/

Date: Tuesday 17th December 2013

Time: 7:00pm

Venue: The Morris Man

Location: Google Maps

Social

We have not planned a particular theme or activity for this meeting – simply a jolly good pre-Christmas meal and get together.

Hope to see you there,
Neil


Tag Cloud