Ninja Ferret

The random thoughts of a software developer

DDD East Anglia 2019

I attended the DDD East Anglia conference in Cambridge. The DeveloperDeveloperDeveloper! series of events are free, community-driven events that are held around the country and on a Saturday to allow as many people as possible to attend.

My Lightning Talk - Creativity

I have been interested in how to be more creative and I wanted to share a simple technique for becoming more creative.

There are several mindsets we can find ourselves in:

  • Open mindsets are playful, open to new experiences, very creative but they lose focus easily and are terrible at getting things done.
  • Closed mindsets are where we are focused on getting things done, but are less open to new ideas and so less creative.

You need to exist in both the open modes and the closed modes. When we want to explore ideas to solve a complex problem we need to be in the open mode, when we are trying to implement on the decisions that are made we need to work in the closed mindset where new ideas don't distract us from delivering.

To get into the creative mode you cannot be stressed, you can't be worried about that e-mail you need to send, etc. so you need to find a time and space where you can relax (~90 minutes). A bit of humour goes a long way in helping you get into an open mindset. Once there, you need to play with the problem and allow yourself to explore tangential areas.

Don't expect ot always find the solution straight away, never leave the creative process to the last possible moment, play in advance so that when the time comes you have more than just one idea. Even if you don't come up with possible solutions straight away, you have seeded ideas and your subconscious may well find a new creative solution.

When you're in the closed mode, trying to get stuff done, if you have a creative idea don't let it distract you, write it down and come back to it later when you have actually delivered.

Here are my slides from my talk.

The very first computer program

by Steven Goodwin

Steven talked us through the very first computer program by Ada Lovelace, the very first 24 instructions that were written to calculate Bernoulli Numbers on the Babbage Analytical Engine.

We discovered that the first program had comments that explained each instruction and there were "tests" included in the program (i.e. the values expected after each instruction). Though there were only 24 instructions there was some copy and paste where Ada tells us to copy previous instructions to do some iteration.

It was fun to also find out that there was a bug in the program, however, this looks to be a bug in the comments. Remember folks, keep your comments up to date ;-)

Here are my sketchnotes:

Sketchnotes from the talk 'The very first computer program' by Steven Goodwin

Clouds, microservices and brittleness

by David Whitney

David presented us with a lot of his experiences in working with the cloud and working with microservices.

What I took away from this was that there is a huge amount to think about when you are working with microservices. These can range from how you communicate between the services? How do you handle a service going down? How to you monitor those services?

One of the key things that stuck in my mind was what changes together, stays together! This means that each microservice has its own database, it owns its own data and is deployed with its own data. It also means that services are not a uniform size, they contain a whole bounded context rather than the Netflix "one microservice per table".

Remember, it is OK to have a monolith. As I argued in the Monolith of Microservices we can design a well-structured monolith and it is perfectly fine to use it and scale it until there is a specific need to extract services.

Here are my sketchnotes:

Sketchnotes from the talk 'Clouds, microservices and brittleness' by David Whitney

How to hack an election

by Gary Short

Gary talked about the tricks "black hat data scientists" use to influence how people vote.

In the UK's electoral system, it is possible to target relatively few people in the most marginal seats to dramatically affect the results of the election. They can influence people to vote for quite extreme change by a range of techniques from convincing them that the current political situation is already broken (the "broken window effect") to persuading them that their own lives suck so change can only make things better (the "compensation effect")).

Here are my sketchnotes:

Sketchnotes from the talk 'How to hack an election' by Gary Short

In retrospect

by Sam Hogarth

Sam believes, quite rightly, that Agile is not a solved problem!

The problem with a very prescriptive form of Agile is that we are losing out on a central pillar of agility, the fact that we should actually iterate to solve the specific problems that we face. There is no "one-size-fits-all" solution and we should not be trusting anyone who sells us a "silver bullet" but rather the people who coach us to solve our own problems.

Sam believes that they key to true agility is in do-measure-review-retrospect cycle, which appears in many variations in different environments, e.g. the Observe-Orient-Decide-Act (O.O.D.A.) method of the military. When explaining in military terms, Sam explained if you move through the O.O.D.A loop faster than the competition, you adapt faster to change, gain an advantage and you disrupt the competition going through their own loop.

So, the Retrospective is where we look back at what we have done, or rather how we have done it. We gather the information, we dig into the root causes (e.g. the "5 why's" technique) and decide how to improve.

Another key point is to keep changing the format of your retrospective, otherwise they become stale, the same issues keep arising and everyone is disengaged.

Here are my sketchnotes:

Sketchnotes from the talk 'In retrospect...' by Sam Hogarth


Thanks to all of the organisers who volunteer their time and effort to make these events happen. Massive thanks to all of the speakers who give their time and effort to come here and present their talks for free to benefit the community. One last thanks goes out to the sponsors, you provide the money to make the event happen, so thank you for supporting the community.


blog comments powered by Disqus