All Your Base Aftermath - the Afternoon

The second half of All your base was just as great as the first, although there was so many interesting ideas and new shiny things to try I will be busy through the holidays trying to process it all.

The talks this in the afternoon treated us to a feast of: Git as a NoSQL db, Redis, MySQL at Twitter, LawnChair mobile web persistence, Postgres Demystified and Apache Cassandra. What follows is just some of that data goodness…

Read More

All Your Base Aftermath - Morning Round Up

The All Your Base conference was a brilliant example of getting a conference right. Everything was ideal. The venue was right next to the train station and the after party was directly opposite, so staggering for the trainback home.

The network was awesome, actually getting a hard line and even a free ethernet cable in the goody bag (because who is going to remember to bring one).

And of course an amazing line up of speakers from cool companies including MongoDB (10gen), Heroku, Basho, MariaDB and many more.

Here is part one of my experiences at All Your Base.

Read More

The Master Plan for Salesforce Community Developers

The promise of fast application development using the Salesforce platform is very appealing and the latest release has attracted over 800,000 developers.

Heroku (part of the Salesforce family) is also attracting a lot of attention. By allowing developers to deploy their applications with a simple git push command, it helps make continuous deployment becomes a reality.

These are just two of the reasons I took the opportunity to join the amazing team at salesforce.com. So you can imagine I was overjoyed when I started as Developer Advocate for EMEA. Here is what that role is all about.

Read More

London Scala Hackday Powered by Heroku

Saturday 27th saw a great hackday thanks to Robert Rees, The Guardian and members of the London Scala user group. The ambitious challenge was to build an community website where events, conferences, blogs, code repos and community discussions were all available from one place.

There are several websites out there that do a part of what a community needs, to this project is trying to help bring all that together in one place. So the grand plans include, pulling in content from event sites, publishing events to sites, register at events with a single touch and widely distribute your interest and attendance automatically.

Or just have fun hacking on some cool technology and learning something new.

Read More

IBM and the Irony of Community Engagement

At the JAX London conference yesterday Steve Poole of IBM gave an inspiring speech, discussing the value of the right mix of business and open source participation in the development of Java. The same day, IBM decides to no longer support the yearly London Java Community conference. This does beg the question, does IBM understand the message they are communicating?

If you give a rallying call to the developers out there to help Oracle and IBM shape Java, then you also need to support that call and not just rely on the resource of that community.

Having asked IBM if the London Java Community could again use their great venue for their yearly conference, it seems the initial reply was yes, yes, yes, followed by a final response that they didn’t have the budget for us to us there venue. Maybe some one at IBM misunderstood the request.

I am sure that IBM contribute to the developer community in many ways, although as an organisation I have the perception it still struggles to understand the value of community, as Oracle once used to do. To me it seems to let down the amazing individuals at IBM who have contributed greatly to the community as well as a huge opportunity to get developers involved in IBM technology and products. It seems IBM are not helping themselves be the drivers of community engagement, which is a missed opportunity by them.

Over the last 5 years, the London Java Community have been driving Java developer engagement with activities such as Adopt a JSR, a yearly community conference and regular community events. We have been very grateful to IBM for providing us use of their space for our yearly conference in the past, but it seems IBM dont have the budget this year for one Saturday. This is a bit disappointing as after a long process we only find out now, about 5 weeks before the conference. Whilst there is no expectation for IBM to provide a venue, it is a great way that they can easily support the Java community in the UK. It seems doubly disappointing considering the great sessions by Steve Poole and Holly Cummins at JAX London that inspired over 500 developers across a dozen countries to get involved with Java’s future and some cool IBM technology.

This situation does highlight how difficult it is for large companies to engage with the community. If all you do is ask people to help, you probably wont get much reply without the perception of reciprocity!

With the support of IBM, Oracle, Atlassian, O’Reilly and others the London Java Community has been able to get so many more developers engaged with the development of the Java language. As we have grown to ~3000 members, we can do event more when working with partners that understand the value of community engagement, to help us help developers get involved in the future shape of Java.

Sponsors have real value to gain by investing in community activity and developer groups like the Java, Scala, Craftmanship and Clojure communities allow a means to invest in communities in a way that is valued by the developers in those community.

If you want the community to engage with you, you have to stay relevant and give developers inspiration, motivation and the means to get involved. IBM have given the community a perception of a really big push and fail in the same day. That is itself is quite a trick.

The London Java Community conference is going ahead as planned and registration will open as soon as we confirm a new venue, so please save the date of Saturday 24th November.

Thank you
@jr0cket


This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License, including custom images & stylesheets. Permissions beyond the scope of this license may be available at @jr0cket
Creative Commons License

London Salesforce Developers - Dreamforce Aftermath

Over 7,000 developers flocked to the DevZone at this years Dreamforce conference. I was one of them and along with Adam Seligman, Keir Bowden and Andy Mahood we told tales of our experiences to the London Salesforce Developer community.

Wes Nolte took charge of the mike and quizzed the panel on their experiences of the event. Here are the questions that stuck in my memory from the evening

What was the thing that got you most excited about Dreamforce ?

The thing that got to me was the sheer size of it all. With so many developers around it was great that we had a whole of Moscone West to spread it all out. There were banks of laptops provided for anyone to get involved in coding workshops and all through the day they were all filled up.

There were so many different things to do, from playing donkey kong to coding, listening to great talks, guided tutorials, code consultations and quizing lots of people from Salesforce and Heroku about their platforms.

The biggest problem was what to actually do from so much choice. Of course there was an app for that too and a chatter stream so you could discuss sessions as well.

If you couldn’t make up your mind you could also queue up and print your own t-shirt!

It was a sign of how open the conference was to have an un-conference section, where anyone could propose a talk. There was even a theatre dedicated to community related talks. I met some great guys from Bristol who are starting up their own Salesforce community events.

What was your favourite session ?

The most entertaining session was by James Governor from RedMonk, comparing the rise of craft brewing with the rise of developers. Craft brewing is bringing back the entrepreneurial flavour into beer making and bringing quality product to the market. Developers are doing the same for startups and enterprises around the world. Calling developers the new kingmakers, James highlights how important developers are and the responsibility we have on our shoulders to support the businesses and projects we are involved in. See article….

I also really enjoyed the live coding challenges from MVP developers and developer evangelists. There was a great banter as well as great code being bashed out.

My favourite moment was when one of my colleagues was presenting. They had a great presentation line up, all using on-line resources and then the wireless failed. Before the venue tech guys had chance to fix it, someone from the audience donated their phone and the presentation was on again. I had a warm fuzzy feeling about that!

All through the conference there was a feeling of collaboration and community. Whether that be debugging each others code through the workshops or collaborating on the mini-hacks. There was a constant stream of activity every day.

Have a look at all the videos and code produced at the DevZone this year and see for yourself.

What new stuff are you already using or want to try straight away ?

In a nutshell, it has to mobile development. I remember spending a day in a workshop getting up to speed with development on Android devices and there was still lots to learn by the time I had finished. That seems like a lifetime compared what I saw at Dreamforce. Using the Salesforce Touch platform you can easily and quickly build HTML5 and hybrid applications in be finished in hours, not days.

It seemed the hardest thing for mobile development using the Touch platform was registering for your Apple ID.

Turing the tables on the audience

At the end we turned the tables and each panellist got to ask a question of the audience.

I wanted to shorten our name from “Salesforce platform developers user group London”, not the easiest thing to tell your friends about. From the feedback we got we have changed it to the punchier London Salesforce Developers, which encompasses the different platforms (heroku, force.com, data,com, etc) under one name.

Summary

Over 80 developers braved the cold October night to hear about out experiences and it was a great social event, made even better by the beer and pizza provided by Tquila.

Thanks also to our gratious hosts, 10Gen, for providing the venue. 10Gen are the company behind the popular MongoDB.

Thank you.
@jr0cket


This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License, including custom images & stylesheets. Permissions beyond the scope of this license may be available at @jr0cket
Creative Commons License

Agile Cambridge 2012 Aftermath

An event full of discovery, psychology, therapy sessions, learning, juggling and lots more fun, that in a nutshell was Agile Cambridge 2012.! It was great to meet old friends and new as well as sit in on some great sessions. Here are just a few of my personal highlights from the conference.

Cynifin - dealing with uncertainty

In hindsight there was a theme of “dealing with uncertainty” running through the conference, but I guess when that is the consistent thread in our lives then its hard to get away from that pattern anyway.

This is the first time I managed to see Dave Snowden (@snowded) talk about his Cynifin model for dealing with uncertainty and it was worth the wait. Whilst I have seen several people talk about Cynifin before, Dave really conveys the value and importance of the model like no other.

Cynefin is a Welsh word that means “the place of your multiple belongings”. Essentially it refers to the fact that there are thousands of things in your experience that influence your understanding and you can never be fully aware of them or their affect.

Humans evolved to make decisions very quickly as tigers tend not to wait for a project budget before they eat you. We are therefore very good at making decisions based on partial requirements and past experience. We also focus on the negative as unfortunately avoidance of failure is more attractive than following success.

Cynefin is a “sense making” framework to help you understand and manage complex and complicated situations. Dependent on which of the four domains you are in, simple, complicated, complex & chaotic defines how you should think and analyse the situation.

In a simple domain then you can easily categorise the situation and deal with it appropriately. A software development team is rarely a simple domain and tends to fluctuate between complex and complicated domains, driven by the unpredictable nature of the businesses they support.

The Cynefin model looks a great way to think about the situations I am in and its a big take away to try and apply it to my working practices.

Cracking your big rocks

Some tasks seem to us to be so out of our scope, so unfamiliar or painful to do that we will do anything else to avoid doing them. These tasks that become unmovable and intractable in our minds and cause us to waste too much time thinking about not doing them. These are our Big Rocks!

Cracking your big rocks was another example of a great coaching session, specifically to help us break down some ones big rocks.

Assembling in groups of 4, one person had a big rock, two were coaching and one had a deck of big rock cards. The coaches helped the person understand the challenge of their big rock and encouraged them to find ways that they could start to break it down. The cards were used to help shape the coaching discussion or highlight concepts the coaches raised. Cards covered techniques for framing the problem, keeping rolling, saving progress as well as anti-patterns.

My Rock

I was the person with a big rock, mine was writing a book (although much applied to other writing too). I never seemed to have enough time to write the book, was overly concerned about quality and had many other personal and professional tasks pulling me away from the book writing. The coaches helped me break down the challenge, so rather than writing chapters at a time I started to focus on sections in a chapter. A section could be done in an hour or less and I could give myself a micro-break and decide whether to continue or re-prioritise.

I’ve never seen Johanna Hunt and Simon Cromarty talk before and was really impressed with their session, the way they bounce the conversation between themselves and the audience was really engaging.

Coaching techniques

Leaning to be an effective coach is very challenging so its great to learn new techniques to help. Using the simple props of juggling balls, we coached each other in how to juggle

Where no one in a group had any experience of juggling, it was a case of the blind leading the blind. In this situation one group decided to gate-crash a few other groups, observing what they were doing and learning by figuring out where the juggling experience was.

Coaching someone to juggle is a great exampel of where experience of the skill can bring a lot of value to the coaching.

In my group, Simon and Nasim were pretty expert jugglers. Simon had no problem understanding what I should be doing to juggle, the challenge for him however was to coach me rather than teach me - two very different things with different results. By suggesting things I could try and encouraging me to thing about what I was doing I soon gained more confidence. Nasim was observing Simon coach me and at the end of my basic juggling session, he gave feedback on what he saw.

When Nasim was coaching Simon he was a bit taken aback by Simon’s level of skill and wasnt sure how to coach him as he was already doing so well. However, by talking to Simon about his juggling technique he was able to relate to him better a juggler of equal skill. Also asking Simon what he wanted to achieve from the session helped set a goal for Nasim and Simon to get to, framing the session nicely. In this case Simon wanted to learn to juggle with 4 balls, so Nasim encouraged Simon to understand his technique so he could build on it and find a way to achieve his goal.

When it was my turn to coach, I encouraged Nasim to vary his technique, to go back to basic principles and to gradually introduce more balls into the mix. I typically asked lots of simple questions about juggling to prevent Nasim from over-thinking the task. I also asked emotional questions, such as which technique feels better, to gauge if I was helping Nasim keep in a positive state of mind.

By asking us to coach someone in a technique that we were not familiar with was a good way to practice our core skills as a coach, especially our ability to assess the situation, listen and gain understanding of the other persons objectives. As an agile coach, it is very easy for the agile practices and mindset to dominate the conversation and activities, when doing something that most people were not used to coaching it really helped us get back to basics.

One Man Dan

It was great to hear from Dan North (@tastapod) again, he is always entertaining and thought provoking. Dan is embarking on his solo career and will be hitting 13 different events between now and the December holidays. His talk on embracing uncertainty complemented the opening keynote perfectly and highlighted how unpredictable software development is and why its wasteful to try create order. Dan discussed the real value that can be attained by accepting uncertainty and dealing with it gracefully.

In Summary

Conferences are a great way to discover new things as well as catch up with friends and make new ones. It was great to catch up with Dan North and find out about his new adventures, hear the agile coaching stories from John McFaden and meet Darcy D, another ex-thoughworker mixing UX development and agile coaching.

There were lots of sessions I didn’t get chance to see, so am looking forward to catching up with them on InfoQ soon.

Thanks to Mark Delgarmo and team for organising the event. Special thanks to Rally Software for sponsoring the social event on Thursday night where I had some great conversations, delicious food and a pint or three of Samuel Smiths beer!

Hope to see you all at Agile Cambridge 2013!

Thank you.
jr0cket


This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License, including custom images & stylesheets. Permissions beyond the scope of this license may be available at @jr0cket
Creative Commons License

UK Developer Startup Wins Aussie Gold

Coding is fun, its also great if you make some profit!

UK developers lead by community expert Alan Parkinson recently formedHindsight Software, a start-up focused on bringing Behaviour Driven Development (BDD) to as wide an audience as possible. With their first product Behave for JIRA, they entered into the Atlassian Codegeist competition judged by Atlassian’s CEO Mike Cannon-Brookes. They scored a big win against a record number of entries in the annual competition.

Read More

Behavior Driven Development Coming to JIRA

Hindsight is a start-up company focused on building intelligent testing software that supports agile practices such as acceptance testing.  Using the Atlassian Marketplace to enable rapid development of their first tool, Behave for JIRA, they had a platform to quickly deliverer a valuable product to a large number of software teams around the world.

Atlassian competitions such as Codegeist showed Hindsight how easy it was to get started with plug-in development with JIRA and inspired the team to secure funding for their own product development.

Hindsight is passionate about software quality and is in the business of providing tools to help everyone in the software development team focus on quality of the delivered product.

Their first product, Behave for JIRA, brings acceptance testing to the wealth of Atlassian customers around the world and at a lower cost of entry into the market.  If successful the company will look to extend this service to the cloud.  In the mean time the Atlassian market place allows Hindsight to validate that their innovative solutions are valuable to the market before they make a major infrastructure investment

Behave for JIRA – bringing Acceptance Testing to all your projects

Acceptance tests allow you to express specific needs for your software product in a way that is testable and measurable.  It is also invaluable for breaking down the barriers in software development.

Behave for JIRA allows you to easily add acceptance tests to any issue in your projects.  Acceptance tests are written in a natural language, eg. English, but in a structured way so that those needs can be matched up to the software that is created to satisfy them.  In Behaviour Driven Development an example acceptance test would be:

Given _a specific situation
When _something occurs
Then _you will get a specific outcome

The most commonly used acceptance testing framework is called Cucumber and supports many different software programming languages.  Once you have defined you acceptance criteria with JIRA Behave, you can then run those tests with Cucumber to get instant feedback on you software development progress.

As this is a plug-in for JIRA, you can easily make use of all the data your projects and have a simple to use and powerful way to edit and review your test specifications.  This includes syntax highlighting editor for quick authoring of requirements & acceptance tests.

Developing products using Atlassian tools

As Hindsight have stakeholders with a vested interest in the success of the company, they make use of the Atlassian tool-set to ensure everyone is up to date with the progress of the software development.  Any non-technical people involved in the company can see the sprint burn-down charts and understand the status.  It is easy to see what is planned and what the development team have committed to and hold the team to account if they don’t meet the targets they set for themselves.

For the developers, using GreenHopper it was easy to see if things were going to over-run and a decision could be made quickly about re-prioritising the work.  As this all fed into a JIRA dashboard for the stakeholders, communication about progress was updated in real time.  When two new graduates were on-boarded, it took just two sprints to adjust their capability using GreenHopper to track and review progress.

The development team uses a Scrum-like approach, base on a two week iteration.  Using JIRA GreenHopper scrum template made set-up of the project as simple as defining a project name and pressing a few buttons. The team have also used the rapid board to manage their individual responsibilities so they can quickly priorities the features inside the sprint.

Hipchat provides an instant way for the team to to discuss challenges, especially when they are apart.  As Hipchat is also plugged into JIRA and their overall build process, any significant changes in the project get broadcast on the Hindsight Hipchat channel.  This immediate feedback from build servers, allows the team to quickly fix problems as they happen.

3 most valuable practices

1) Visibility to the business – stakeholders can see our commitments and easily hold us accountable

2) Distributed working is often a necessity and so having our up to date progress accessible anywhere there is an Internet connection is invaluable.  Using Distributed Version control also means we can work off line

3) In constant communication using Hipchat which also enables the team to see JIRA notifications on bug reports, issues re-opened tickets and other major events.

Head over to Atlassian to find out about their range of software for software developers and dont forget to checkout the Codegeist competition (ends 16th July 2012).
Thank you.
@jr0cket


This work is licensed under a Creative Commons Attribution 4.0 ShareAlike License, including custom images & stylesheets. Permissions beyond the scope of this license may be available at @jr0cket
Creative Commons License