Mittwoch, 16. November 2016

Bonn Agile Tech Talk - November 2016: NoSQL

The blog has not been updated since March, although there have been regular meetups since then

April - Bonn Agile meets Scrumtisch Bonn @ ScopeVisio
May - Docker Cluster @ Chefkoch
June - Programmer Anarchy @ Cafe Blau
August - Sommerfest @ Viaboxx
September - Open Space @ Biergarten Alter Zoll
October - Clojure @ Doctronic

There have also been regular Scrumtisch events and another interesting events like the new Microservices meetup hosted by predic8. Make sure to keep an eye on these events in the future!

In November Bonn Agile was hosted by LeanIX in the center of Bonn. LeanIX is a startup focusing on Enterprise Architecture Management, they already have an impressive list of customers. They work with a lot of cutting edge technologies like Facebook's GraphQL (see below). Make sure to take a look at what they are doing!

There were three talks, the first was by Gereon Steffens of tarent. He gave an introduction to Redis, focusing on the features that make Redis more than just a key value store, for example super-fast geospatial operations on point geometries, which could very well be used for features like Geofencing.

Next up was Sebastian Mancke, also of tarent. He introduced the JSON capabilities of popular databases like SQlite, PostgreSQL and MySQL and compared their performance to each other. JSON is widely supported in the latest releases and the performance is also surprisingly good. Take a look at Sebastian's notes and source code, so you can run the performance tests yourself.

The third and longest talk was by Patrick Surrey and Dr. Niklas Henrich of LeanIX. They introduced us to GraphQL and how it is used in their product. It was interesting to see how it allowed a very flexible frontend that can customize requests to the backend so the exact data portions necessary are returned. They also shared their experience with combining GraphQL with various databases, ArangoDB, ElasticSearch and PostgreSQL. As GraphQL is still a pretty recent product it was really valuable to have insights in real world usage. Slides will be uploaded in a few days! Slides are now online.

There were 30+ attendees, and we had a productive dialogue concerning questions that arose from the talks. It's great to see that Bonn has a large and high-quality community of agile software developers!

The next meetup will most likely be an organizer's meetup: So if you want to get involved with Bonn Agile in 2017, for example by hosting an event, giving a talk or just want to network and help out (you don't need to invest a lot of time to do so), keep an eye on our Twitter feed and our Meetup page.

Donnerstag, 24. März 2016

Bonn Agile Tech Talk - March 2016: JavaScript

After having talked about Coworking Bonn at the February meetup, Ralph Grundmann invited us to Bonn Poppelsdorf and hosted the March meetup. The location is perfect for a meetup of 20-30 people! We were also given a tour and Coworking Bonn really seems like an awesome place to work. Check out the website, take a look at some pictures and check the pricing plans. Thanks Ralph for your hospitality!

First up was Jan Owen with his talk about the evolution of modularization in JavaScript. Starting with IIFEs, he presented the differences between AMD, CommonJS (and how it's used in npm or with browserify) and ECMAScript6 modules (and how they can be used with Babel or SystemJS). Check out his slides.

Jan Owen (@Gnitter)

Then Sebastian Mancke talked about ECMAScript6. He showed that the new features are just syntactic changes by transpiling them to ES5 using the Babel REPL. He introduced classes, closures, template strings, modules, and finally showed a private project where he used vue.js. Take a look at his presentation.
Sebastian Mancke (smancke)

Finally, Gregor Anders gave an in-depth introduction to TypeScript, a typed superset of JavaScript that compiles to plain ES5/6 JavaScript. Conceived by Microsoft, now a company that embraces Open Source and standards, TypeScript adds a type system to JavaScript so you can write code that is more maintainable - its intention is not to "fix" JavaScript! Gregor also mentioned DefininitelyTyped, a repository for high quality TypeScript modules.
Gregor Anders (gregoranders)

We had about 25 attendees, (some traveled as far as from Dortmund or Mannheim) who eagerly listened to our three talks and discussed intensely. Great to have so many skilled people who contributed to a high-quality dialogue.

As Coworking Bonn is located in the heart of Bonn Poppelsdorf, we easily moved the dialogue to the Gesindehaus for another 90 minutes. It was totally insightful, great fun and we were happy to see many new faces.

Join us again in April, where Bonn Agile will join Scrumtisch Bonn for a dialogue on the Agile community Bonn. Make sure to follow us on Xing, Meetup and Twitter for the announcement!

Mittwoch, 17. Februar 2016

Bonn Agile Meetup - February 2016: Distributed Teams - Remote Work - Home Office

On February 16th we met at Data In Transit for another meetup, this time about "Distributed Teams - Remote Work - Home Office".

For the first time we had three talks, and it was more like a mini-conference :)

The evening started with Fernando Sainz of talking about the pros and cons of remote work, with a lot of detailed insights. He concluded that neither onsite work nor home office is exclusively better, a mix would work best. Check out his awesome slides!

Fernando Sainz (@fsainz)

Next up was Ralph Grundmann of Coworking Bonn, introducing the brand new coworking space in Bonn-Poppelsdorf. He made a point that coworking is more than just renting desks! Check out his presentation to find out more, and definitely check out Coworking Bonn! We will definitely have a future meetup there, thanks Ralph!

Ralph Grundmann (@rgrundmann)

And finally Christian Dywan of Canonical shared his experiences with globally distributed teams in the open source context. He pointed out how cultural differences, timezone shifts and international tax laws affect collaboration and also said how important face to face meetings still are - however not for mundane tasks like coding.

Christian Dywan

A big thank you goes out to Jutta Horstmann of Data In Transit, who is just the most awesome host and an incredibly valuable community builder in Bonn! Drinks, snacks and a great location, we had a perfect evening!

The next meetup will take place on March 15th and will feature a selection of talks on JavaScript!

Freitag, 4. Dezember 2015

Bonn Agile Meetup - December 2015: Apache Kafka and Go Programming Language

Let's begin with old news: In November we talked about the future of the Bonn Agile meetup. As most of the organizers stem from a background in software development, we are planning to shift the focus more into the technological domain. For those primarily interested in methodology like Scrum, there is an interesting new meetup in Bonn, Scrumtisch Bonn.

We also decided to try a different format for our next meetup: Instead of having a single, longer talk which demands a significant amount of preparation, we wanted to try two shorter talks, which require less preparation and leave more space for a dialogue between the participants.

So the December meetup featured two tech topics, Apache Kafka presented by Andreas Kluth, and the Go Programming Language by Sebastian Mancke. The meetup was once again hosted by the generous folks at Tarent Solutions.

Andreas talked about using Kafka as a means to allow communication between services in a "shared-nothing" microservice architecture. As Kafka is a really light-weight pub-sub-messaging system, it is optimized for performance and throughput. The buzzword "Big Data" is really overused these days, but that's where Kafka has it's strengths, especially as it allows clustering of instances, which makes it perfectly scalable. Feel free to check out Andreas' slides.

In an interesting live coding demo, Andreas also built a scenario with Kafka, Zookeeper for clustering, and a producer and consumer of messages. This was a great opportunity for the audience to chime in and share their ideas and perspective, and evolved into an interesting dialogue.

After a short break, Sebastian took over and talked about the Go programming language. It is gaining a significant momentum, Google is pushing Go usage in Android apps, which used to be an almost exclusive Java domain. Although Sebastian has not used Go in a major project, he is optimistic that there will be more demand in Go in the near future.

As you can see in Sebastian's notes, the syntax of Go is both simple and expressive. It also introduces some interesting concepts like channels, which makes it easier to deal with concurrency. Sebastian described Go as easy to learn, he was able to become fluent in a few weeks and told us he gets things done faster in Go than in Java, although he is an advanced Java programmer.

Sebastian also did some live coding, which again proved as a great means to get the dialogue going and ask more in-depth questions.

After a well-deserved round of applause for the speakers, we had a few beers and ended the evening with some more tech banter. As always, it was great to meet up, have fun and learn something new.

The next meetup will be in February 2016, please follow us on Twitter where we will announce the exact date. Have a great Christmas break and a happy New Year!

Samstag, 4. Juli 2015

Bonn Agile Meetup - May and June 2015

Wow, it's hard to find the time and motivation to write these blog posts after the meetups have taken place :)

So here's quickly, just for the record:

We had a big crowd attending Andreas' talk about User Story Mapping in June. You can find some pictures and links from the events via the Google+ event page. Thanks to Data-in-Transit for hosting us in their brand new lovely offices!

In June we had a smaller meetup, but still a full coding dojo of a group doing mob-driven development. It was a lot of fun, so we forgot to take pictures! But you can find some links of what we were doing in the mailing list thread (German).

The upcoming meetup will be a beer-garden meetup, if the sun keeps shining. It's now on Tuesday, and you can find out more on the Xing event.

Freitag, 17. April 2015

Bonn Agile Meetup - April 2015: Cynefin Framework

For our last meetup, I suggested we take a closer look at the Cynefin Framework. Perhaps you've heard about it, or maybe not, but this seems to be one of the big up and coming terms in the agile world, and it is also present in other communities as well (project management, DevOps, etc).

If you want to learn more about what the framework is, have a look at the resources below (and the resources they again link to). For this post, it suffices to say that the creator of the framework Dave Snowden, and I think it is a very generic, perspective/world-view framework, rather than one that tells you what do exactly.

I personally grew really curious when I read some agile coaches discussing the Cynefin course on a mailing list some months ago. So I set myself the goal of holding a brief intro to the framework at our own meetup, and started consuming as much info on Cynefin as I could:
And then I found some more:
And more by Liz Keogh:

So, after having heard through some of the podcast episodes many times (I needed to hear through them repeatedly before I started to grok the discussion), I put together an adaptation of a workshop I found described the webpages of Cognitive Edge, which is Snowden's company. You can sign up for free there to get at some of the resources. Unfortunately, they re-implemented their website right after the meetup took place, and now I can't log in there for some reason.

The workshop was pretty straight forward. We met in a bar and...

  • We split into 3 tables, each of which were going to roleplay being the managers of a small company. 
  • I set some context for the company (what kind of employees, what they produce, etc), but left most up to the imagination of the participants.
  • Each team of managers were instructed to discuss incoming "problems" they had to deal with, by placing them in the Cynefin framework's categories.
  • I started feeding the teams one by one, giving them a few minutes to discuss each one, before I gave them a new problem. I had prepared these problems up front, but as I didn't have any reference from Cognitive Edge, I just made some up - not really sure if they were well suited to the task. Some examples:
    • The company has been selected for a tax audit
    • Our product needs to get certified
    • The canteen food is horrible
    • A customer nearly died while using our product
    • Average employee sick days are "too high" (more than 10 a year)
    • We're introducing SAP in our production/ordering pipeline
  • The teams were told not to solve the problems, merely to place them in the Cynefin framework.
  • Each problem was noted down on a post it, placed on the table, and were decorated with two arrows:
    • red arrow -> which direction the problem is headed if we do nothing
    • green arrow- > which direction we want to manage the problem
  • After all the problems had been placed, we swapped around positions to hear how the other teams had categorized their own problems for some more discussion.

There wasn't really any correct answers for any of these, but I found it really interesting, and I guess that is one of the key goals of Cynefin, how the managers had to separate complicated problems from complex ones. It was also interesting to see how trying to see the problems from the various perspectives, different solutions would pop into my head.

The minus about using this fictional company, instead of using it in a real company, internally, is that the context was somewhat artificial. I hope nonetheless that we got some valuable practice in how to make use of the framework when we go back to our day-jobs.

I certainly have started seeing more things now in light of the Cynefin perspective, not so much in my job, but more when I look at why large companies and governments are having problems with their massive IT projects. I also see the same trend in education. It seems society as a whole is trying way to much to treat things as if they were in the complicated domain, when actually they should be dealt with as complex issues.

The other key learning for me was that an agile process like Scrum, operates by iterating on features moving us from complex into more ordered systems (by implementing "constraining" software). But sometimes, we actually want to shake things up a little, and move existing systems out of the ordered space, to see what things can be improved upon, and we don't really have a technique for that in our agile methods. All in all, I think Cynefin is a fresh breath of air into the agile community, which has been pretty stagnant the last years. Perhaps we could need a bit of chaos and complexity in our methods.

I also hope that we can get some more knowledgeable Cynefin coach to visit us some time, and give us a proper talk/workshop on the subject. If you know one, or if you are one, let me know!

Montag, 9. Februar 2015

Bonn Agile Meetup - February 2015: Augenhöhe - Film und Dialog für eine neue Arbeitswelt

The first meetup 2015, and already a full house! We met at the Bildungswerk für Friedensarbeit in Bonn to discuss "new work", as depicted in the film "Augenhöhe", which portrays several companies that are based on core values like democracy, transparency and respect. 

We were lucky to have a great special guest, Fabian Dittberner, of it-agile, a company with a focus on agile consultancy, which already incorporates a lot of the values that come with the new work movement (Read more about it-agile in the September 2014 issue of Brand Eins). Fabian gave us a valuable first hand insight into the inner workings of it-agile, and whet our appetite for the Augenhöhe film.

The 45-minute film, which can now be streamed at Vimeo, gave us a great context for an hour and a half of dialogue, which was held in a "World Cafe" style. This proved to be both interesting and entertaining, and we gained lots of insights into the status quo and opportunities for improvement.

Afterwards we headed to Bierhaus Machold, where dialogue continued over a glass of beer. It was a great evening!

Here is some feedback from our participants

"Ich fand die Veranstaltung gestern sehr nett, ich war bestimmt nicht das letzte Mal dabei!"
"Es hat mich ebenfalls sehr gefreut! Ich hoffe, ich schaffe es mal öfters zu euch nach Bonn."
"Vielen, vielen Dank für die Einladung. [...] Ihr ward alle so nett und an diesem Tag habt Ihr mir einfach sehr gut getan :) - DANKE!"
"Danke für einen spannenden Abend auf Augenhoehe!"

Thanks to
  • Fabian Dittberner for co-hosting
  • Matthias Lübken for connecting us to Fabian
  • Guido Bosbach and Sven Franke for their help organizing and marketing the event
  • Bildungswerk für Friedensarbeit for the location
  • and the makers of "Augenhöhe"
  • our 25 lovely participants!