Organise a national community summit – before the event

IMG_20141005_131433_cropped

Italian GDG Leads Summit 2014

Between September and October of this year, I organised two national community summits, one for Italians Google Developer Group leads, the other for French. 70 people in total, a weekend each, lot of fun! After explained the reason why I worked on that, my stream of consciousness continues along a temporal line: the before the summit, discussed in this post, and the during and the after, subjects for future posts.

The summit is own and decided by the communities

A summit cannot be good if participants don’t feel the need of having one: they have to find their motivation to come, participate and share. During the discussions I have with the leaders of the communities I can scout for these motivations, raise the awareness and collect potential topics, but the communities have to decide, eventually. The summit itself is put under discussion every year, because it shouldn’t be taken as granted and has to be seen as a real resource from the communities. At the end, it’s an exchange: usefulness versus their time.
Once decided for having one, it’s crucial they’re involved in its organisation. Share and vote ideas using a document or a board, create a summit council in charge of the agenda, facilitate the communication: whatever is useful to contribute to a consensus-based process, because consensus generates involvement.
I generally take care of the boring stuff, like finding a location and manage the logistic of the travels, maintain the focus on the parts that need to be decided together etc, so communities can spend time on the most valuable part: the content. But I know groups that take care of everything, location included.

Set the date and announce it as earlier as possible

I reserve for the summit two days, generally the weekend: when people need to travel 4 or more hours, one day event don’t worthwhile the trip. And because they are running the community as a passion, asking to take two days out from work is not feasible. Fri-Sat might be another good alternative. In any case, I run a poll with potential dates, and the communities choose. I like to have the summit when the “community year” restarts, to have time for planning together. In Europe, this means just after the summer, September or early October. I generally start the discussion about the date of the new summit in June, to confirm it by the beginning of July.

Carefully select the summit location

This kind of summit can be easily organised in an hotel at the city center, sometimes even at the Google office. No way. I like to experiment with places detached from the everyday context, generally with nature around. A medieval farmstead in Tuscany, a country club near Paris, a dedicated structure. It may be hard to spot the right one: price, distance from train stations and airports, services offered: all need to be taken into account, but the impact on the final result really worthwhile the search. One year we went in a location barely covered by mobile connection, with Internet available only at the reception, and very slow. After an initial moment of panic, people realized that not having the connection for a weekend wasn’t a big issue. Panoramas and sun were far better.

Ask what attendees need and what they can provide

Even if the participating communities are all technical, I try to exclude tech topics from the agenda. I would like to provide contents for doing better as a community manager. Those contents are generally harder to find than tech content, and tailor them specifically for the needs of Google Developer Groups in their particular context, is practically impossible to find outside the summit. So, once we know the summit happens, the attendees list on a shared doc two things: what they want to know more and what knowledge they can offer to the others. In less than a week we create a road map, useful to understand where they are and where they want to arrive. Of course, year after year, I can recognise patterns on this map, and it’s not rare that requests and offers of the leaders recourse based on the maturity of their communities. Never mind, it’s important to verify every assumption. This initial and shared road map is used as raw base to work on summit contents. In addition, it is extremely useful to drive the “after summit” follow-up. Eight weeks before the summit are a good timing for this activity.

Set my goal

In addition to the general motivation for supporting this national summits, I need to set the specific event goals and metric meaningful for me, and different from the ones of the attendees. Clearly, they depend on the level of the local ecosystem: if it isn’t so active, an increase in the event number during the 6 months after the summit can be a good metric. If the goal is to improve the skills of the communities, track how many managements techniques presented at the summit have been adopted is important. Or, for a mature local context, maybe the birth of cross organised events, decided at the summit, is the success metric. Or the number of “organizer’s issues” solved at the event. Or the tangible development of the mindset around a national community of community organizers. In any case, it really depends on the general strategy and local context.

Balance between contents internally and externally provided

I like to have mixed sources of content during the event. Part from external experts, and part from the internal group of attendees.
For the first category, I brought at past summits a social media expert, a professional community manager, a person that was working around diversity and gender gap in the tech ecosystem, Improvisation theater trainers, a psychologist. As “external guest”, she should be able to provide fresh air, new points of view and high level of expertise around one inspirational topic I suppose can help the communities to grow better and stronger. Previous road map guides me in this selection, but I generally take some freedom of choice here.  To be really able to push them further in one direction I think is important.
For the second category, and thanks to the previous road map, I both identify communities that are doing great under one or more topics leaders want to know deeper, inviting them to present a session, and pick-up some of the “offered sessions”: maybe a successful activity analysis, ideas they want to share, community experiences they find valuable. Everyone can present, not only the most experienced communities.
Time balance between these two sources depends on local context. Ideally, I would keep at least 1/3 – 2/3 division, if not a 50%-50%.

Insert a fun, and unexpected, activity

I’m proud to always bring one fun and unexpected activity during the summit. An activity that helps the community-making process, last for a couple of hours, relax the evening atmosphere and different from a session. In the past I used the community dinner format, where each leads bring some food or wine from her city a and, all these food together, and only these, are used for the dinner. I’m from Italy, after all! Or the “My Story” activity, where each attendee has four minutes to talk about her to the rest of the group, using only one slide and with free choice on arguments relevant in her life and useful for others to better know the speaker. Or animate the evening with an Improvisation theater activity, perfect to create stronger bounds and to stretch some public speaking skills. Fantasy it’s the key here. One suggestion: keep diversity in mind, and propose activities suitable for all genders, even if male is the predominant one at this kind of summit.

And now?

Having all these stuff arranged, probably makes already halfway to a memorable event. Now it’s time to make it happens!

Two key tips to organise a women inclusive community tech event

IMG_20151128_185858On Nov 28th I attended an event where 50 women gathered together to learn the basics of JavaScript. Huge round of applause for MilanoJS, Girls in Tech and Women@Google that made the event possible. From the many conversations I had with the attendees, I extracted two key tips that should be *always* kept in mind to be more gender-inclusive when communicating about a community tech event. It’s not a guarantee that gender gap will be reduced but, at least, basic misunderstandings will be avoided.

1) Be explicit that you’re caring about women participation, even if it may seem obvious to you. Include in the event description that women are welcome, partner for the communication with a group that is associated with a female context, like Girls in Tech, Rails Girls, Women TechMaker or any other reality of the local ecosystem, use creativity that includes both genders. Fight the language stereotypes: in Italian we use the masculine for referring to the whole category, so use explicitly “sviluppatori / sviluppatrici”, instead than just “sviluppatori”. Remember, you have to communicate that you’re caring about the whole spectrum of your community, all the minorities included.

2) Be explicit about your target audience. Different women I talked with told me they came because they were searching for a beginner training on Javascript, and so the event was advertised, as a beginner training. I argued that it wasn’t the first organised in the Milan area, and they replied that it was the first beginner training on JS, all the others were training on JS, so the target audience wasn’t clear and they feared to be in a class with people already good with Javascript. And I asked if the same applies also for a “Polymer Hack Up” or a “Apps Script Hackathon“, and the reply was yes: hackathon format is perceived as an event for people with already some skills on the topic, not suitable if you know nothing about it. Curious enough, the two mentioned were organised to introduce the technologies to people with zero knowledge on them. So, explicitly mention when the event is for beginners, that you’re welcoming also attendees that haven’t heard anything about the argument.

I have to say that both tips don’t come out totally of the blue: there are different studies on gender inequality in schools and in business, and we all see the world behind the lens of unconscious bias, so the same situations applies also in a community. In addition, once discussed deeper with the attendees, asking the whys and the whats, everything resonates very well together. Happy to provide more details in the comments, if asked.

As final suggestion, if you decide to apply these two simple tips (and you should), please make an additional third step: ask for feedback to the new women at your next event, ask if they come thanks to one of the suggestions you’ve put in practice. I know it can be hard but, as for any hypothesis, it has to be verified.

Those learnings, I think, can be generalised to each event than want to include a minority. Maybe women, maybe any other. Explicitly be inclusive, do not take it for granted. And yes, I’m still generally agains gender-only events, but it had a sense in this particular context.

Organise a national community leads summit – Why?

20151108 - community_8_bit_wallpaper_by_zequihumano

Credit to zequihumano

Between September and October of this year, I organised two national community summits, one for Italians Google Developer Group leads, the other for French ones. 70 people in total, a weekend each, lot of fun! This and the following posts would be a stream of consciousness around different topics, maybe helpful to someone.

Why a summit?

Before talking about a specific event like the summit, let’s do a step back and understand why a company as Google is supporting “offline communities” like Google Developer Groups. The one-sentence reason is getting more consensus in my Developer Relations team right now is:
“Increase developer engagement and skill level on Google technologies by building a trusted community through strong relationships with influential local developers”
There is the final goal to increase developer engagement and skill level on Google technologies. The strategy to reach the goal is building a trusted community and the way to implement the strategy is through strong relationship with influential local developers.

The trust component is fundamental for maintaining a serene and solid two-ways communication channel. One side, I can suggest interesting content to discuss based on what Google cares in a particular moment of time, pass tips about community management methodologies, suggest improvements, share inspirational initiatives. On the other side, they can try to ask Google support for their activities, feel hears when proposing new or better ways to collaborate together, report me developer’s feedback and, for very specific cases, they can also count on me to try to solve a problem they have with Google as a company, like a support center not replying, an internal point of contact they need etc.

The community model is a way to implement the one:few:many outreach model, where I and my colleagues working with communities are the “one” part, the influential local developers are the “few” part and the audiences attending their events are the many part. This “many part” is also the reason why these “local developers” are influential: because they can reach and teach to a broad “last mile audience”.
It is also a way to get in touch with a group of people that care about particular values: they recognise the importance of the “giving back”, they like to share knowledge and try to create something better together. I personally love, and prefer, to work following this mindset, and the community model itself filters out who diverges too much from this approach.
The community helps, in addition, to reduce the dependency from the single point of failure: me! Yes, because I can leave my job, shift priorities or have less time. Instead, a network model, where newcomers are helped by expert, where the natural internal group sharing creates a positive spiral, where group culture is naturally breath by all the members, where sharing and synergies happens, is more resilient to failure when important nodes go down. I’m not saying it would be the same without me, but I can take a short break without too many damages.

Back to original question, it’s now easy to understand that a summit can be a convenient way to build and maintain strong relationships with these influential local developers. It offers unique advantages compared to other solutions: dedicated time to discuss and share, face to face approach, the feeling participants have been taken into account, occasions to have fun together and much more: all bring to a better knowledge and, ultimately, to a stronger feel of trust and respect among the group members, myself included. In addition, such occasion allows serendipity to happen, brainstorming of new ideas possible, makes feedback easier to receive and provide, a quicker notion sharing. And it brings real people knowledge, beyond the simple fact of being community managers: it create personal relationships, people get closer. And the closer they are, the more trust and strong relationships happen, the more the ground is fertile to create a national community of community leads. Regarding the fun part, I’ve learnt to never underestimate the power of shared experiences and positive remembers on the life of a social group.

The other ways I tried, all lack of some element: visiting groups creates strong connection between me and them, but doesn’t allow groups cross-pollination. Online meetup are useful to sync-up and share, but are sharp focused on the agenda, hard to run when more than 7/10 people are online and there is no room for fun, serendipity and personal connections. Podcasts, blogposts, newsletters are good to share a message, but are impersonal. On the other side, all of them are cheaper than a summit and require less effort to be arranged and run.

Regarding this very last point, I believe the best community you can build is the one that can happily survive when you leave, so the summit can be the moment of truth to verify the maturity of the community. If I’m the one that, year after year, propose the summit, arrange it, run after the leads to have them in, probably I’m not doing a great work. Instead, if after some years of first-person involvement, I receive an invitation for the next community summit, this could be a strong sign of a well-done job.

As mentioned before, in addition to create this trusted communication channel with the leads, it’s also crucial for me to build a strong network among the different community leads, a community of community leads. This will be the topic of one of the next posts in the series.

Confession of a Public Speaker book notes

The notes I write down this time are about the book “Confession of a Public Speaker“, by Scott Berkun. Public speaking is one thing I do time to time, but I’ve been doing since lot of time. I had my first talk in 2005 and it was about “802.11b Insecurity“. Good book, with lot of real-life considerations and suggestions, many of which I’ve learned first-person during those years.

Confession of a Public SpeakerIf I plan to do something in the presentation, I practice it. But I don’t practice to make perfect, and I don’t memorize. If I did either, I’d sound like a robot, or worse, like a person trying very hard to say things in an exact, specific, and entirely unnatural style, which people can spot a mile away. My intent is simply to know my material so well that I’m very comfortable with it. Confidence, not perfection, is the goal.

The slides are not the performance: you, the speaker, are the performance

It’s possible I’m not a better public speaker than anyone else – I’m just better at catching and fixing problems.

I admit that even with all my practice I may still do a bad job, make mistakes, or disappoint the crowd, but I can be certain the cause will not be that I was afraid of, or confused by, my own slides. An entire universe of fears and mistakes goes away simply by having confidence in your material.

Talking to some people in the audience before you start (if it suits you), so it’s no longer made up of strangers (friends are less likely to try to eat you)

Place matters to a speaker because it matters to the audience

You can play lecture drinking games with your friends, such as “ummmster,” where you do a shot of your favorite cocktail every time the speaker says “ummm.” With some speakers, you’ll be passed out in no time.

Most importantly, the density theory amplifies your energy. We’re social creatures. If five people – or even dogs, raccoons, or other social animals – get together, they start to behave in shared ways. They make decisions together, they move together, and most importantly, they become a kind of short-term community. The size of the room or the crowd becomes irrelevant as long as the people there are together in a tight pack, experiencing and sharing the same thing at the same time.

Ask the crowd if they’re too cold or too warm, and then, on the mike, ask the organizers to do something about it (even if they can’t, you look great by being the only speaker to give a care about how the audience is feeling).

Now I know I have to embody what I want the audience to be. If I want them to have fun, I have to have fun. If I want them to laugh, I have to laugh. But it has to be done in a way they can connect with, which is hard to do. A drunken toast at a wedding is often great fun for the toaster but miserable for everyone else. But great speakers are connection-makers, sharing an authentic part of themselves to create a singular, positive experience for the audience.

I’ve learned that by far the thing people seem angriest about is dishonesty. Show some integrity by speaking the truth on the very thing that angers them, or even acknowledging it in a heartfelt way, and you will score points. People with the courage to speak the truth into a microphone are exceptionally rare.

Request the names of three people to interview who are representative of the crowd you will speak to. See if your fears are real or imagined. Then, when giving your talk, make sure to mention, “Here are the three top complaints I heard from my research with Tyler, Marla, and Cornelius.” Including the audience in your talk will score you tons of points. Few people ever do this, and if the rest of the crowd disagrees with Tyler, Marla, or Cornelius, they can sort that out on their own after you leave.

The story is often told to suggest Lincoln’s brilliance – that he could just scribble one of the greatest speeches of all time in a few spare moments while riding on a train. It’s a story that inspires many to forgo preparing in favor of getting up on stage and winging it, as if that’s what great leaders and thinkers do. The fallacy of the legend is to assume that the only moments Lincoln spent thinking about the points he would make in the speech took place as he wrote them. That somehow he never thought about the horrors of the Civil War, the significance of human sacrifice, and the future of the United States except while he wrote down the words of the address on a random scrap of paper.

Continue reading

What about a Community Leadership Summit in Italy?

I’ve been working with Italian tech communities very closely since years now, and I’m convinced that time has came for a new step forward: running the first Italian Community Leadership Summit.

What

An occasions to connect community leaders, organizers and managers that are interested in growing and empowering a strong community. To debate around the present situation, visions and tools, sharing the teaching and learning adventure, agreed on common initiatives to make the community more capable and effective. It’s a protected moment where managers can leave the leadership roles and be the perfect community members they’ve had in mind, to work together in refining the art of community management and make it better understood and shared by us all. Nothing new, although.

Why

I feel the Italian context has now the right level of maturity for an event of this kind: we already have established networks of communities, like GrUSP, GDGs, DotNet etc, acting as meta-communities for the organisers and working together country-wide(ish), but generally only the same type of groups are inside these networks, and the latter are disconnected each other. Not because of a particular devil will, but only because “We’ve never had the occasion to try“.

It has happened that, during events like Codemotion or XXDays or others, the community managers gathered, had fun together, complained about common issues, shared experiences and contacts and even worked on new ideas together. Having a dedicated moment, not just an occasion during another event, can potentially bring a huge value to all the attendees.

Take for example Milan, where the community density (together with a good collaboration spirit leaded by Daniele) allowed to create Milano Tech Scene. Big enough to offer cross-pollination occasions and small enough to still preserve an old, good, community mindset. Just to compare, the density in cities like Paris, London or Berlin is so high that this kind of initiatives wouldn’t be possibile, and Meetup rules :) It’s time to scale this mindset to the whole country.

Finally, I trust contamination as one of the key to evolve in the dev ecosystem, and so the community scene should reflect this approach. Shared mindset, practices and skills on how to organize a successful event, contacts, next steps about the evolution of the community ecosystem and much more can only help that evolution, and having the feeling of the existence of such network can help newcomers to grow quickly and experienced managers to refine their art.

Why I’m proposing that?

Simple: be the change you want to see. I believe in the usefulness of the format and in this moment as the right moment. Following a lean approach, the Summit is the MVP I want to validate. After an initial phase where I gathered ideas, impressions and thoughts, it’s time to test.

Then, I’ve another objective in mind: diversity, in particular gender gap. Until we simply complain about low female presence at tech events, considering ourselves out of the equation because “We’re open to opposite gender participation”, we’re not really doing a lot to improve the situation. All of us should add our own contribution for the cause, no matter what we can add. Just do it. So, my first contribution in pushing everyone acting, is to open registration to one person only if he/she can bring (along) another person of the opposite gender. Could be an organiser of the same community or a different one, I don’t mind until we don’t cheat, like involving partners that haven’t never taken part to the community life. Aiming for a balanced participation. Damn difficult, but moonshots are here for that.

When and Where

Probably around November or December, before is too difficult and I don’t want to wait too much time. In Milan or somewhere else, proposals are more than welcome!

So, now?

I’ve already in mind something about the agenda, but probably I’ll discuss in another post. Right now, I really want to know what you think about this idea. Lean methodology says that is impossible to create something for the users if the users aren’t involved (also) in the problem-definition phase. Not a problem this time, but an opportunity. So, YOUR comments and constructive criticisms are more than welcome.

Identify your Twitter followings older that 4 months

Spring is all about cleaning, the saying goes, so why don’t apply the same principle also the the accounts I follow on Twitter? Why? Because I would like to maintain their number under 400 and because I would like to grow my very limited Python skills.

With the help of TweetPony (among the many), the task was pretty straightforward. Final result is a simple script that checks for the people I follow, verifies their last tweet date and alert me if it is older than four months.

Configure the Python environment (Ubuntu 14.04 Trusty)

I don’t want to pollute my system-wide Python installation with libraries and dependencies related to a single project, so I created a virtual environment. Still not a master on that, so forgive my errors:

apt-get install python-pip
sudo pip install virtualenv
cd %projectdir%
virtualenv build_dir
source build_dir/bin/activate

From now ongoing, all the pip commands will be execute inside the (build_dir) virtualdev, and not at system-wide level. Time to install the TweetPony library:

sudo pip install tweetpony

Once installed, I tried some examples from the GitHub repo, to check if it worked. And yes, it did (even without api key and permission, see later), but a boring console message appeared every time the script made a call to Twitter API, caused probably by the old Python 2.7.6 version or libs I was using:

InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning

In order to solve it, I installed some dev libraries required to compile some other Python libraries (again, inside the virtualenv only)

sudo apt-get install libssl-dev
sudo apt-get install libfii-dev
pip install cryptography
pip install pyopenssl ndg-httpsclient pyasn1
pip install urllib3

and added these lines of code at the beginning of the main function of the script, before any Twitter API call:

import urllib3.contrib.pyopenssl
urllib3.contrib.pyopenssl.inject_into_urllib3()

They made the trick! But, as I said, probably you may not need all of these.

The script

The script itself it’s pretty simple. I took the basic code to create the TweetPony API object from the repo’s example folder and I was able to get user’s friends_id (the account the user follows). Then, cycling thru each one, I checked the status of that friend, watching for last tweet date. Some cornercases management (like private tweets or no tweets at all) and voila’, I had all I needed.

Regarding authentication, all Twitter’s libraries require a consumer key and consumer secret to work, in addition to an OAuth access_token and access_token_secret. What made me preferred TweetPony to other libs, like tweepy or python-twitter, was that TweetPony doesn’t required anything. Test consumer key and secret are gently embedded into the lib source, while OAuth tokens are created on the fly for you and persisted over a file, .auth_data.json. To use new credentials, simply delete the file and add somewhere, at the beginning of your code, these two lines, with key and secret obtained from Twitter Dev Console:

tweetpony.CONSUMER_KEY = 'xxxx'
tweetpony.CONSUMER_SECRET = 'xxxxx'

Final consideration about Twitter API usage: there is a limit of 180 calls every 15 minutes, so I added a sleep after every check. Slow, but it worked with my 500+ followers :)
Continue reading

Converge Hackathon: developers + designers + diversity. Is it even possible?

One of the cool aspect of my current job is the freedom I have to experiment with what I think it’s valuable and important for the developer ecosystem. This time I tried to tackle two aspects, both under the diversity umbrella: expertise mix and gender gap.

In collaboration with frog design (thanks Laura and Alex for the help), we envisioned a platform to experiment and iterate around these topics, so we create the “Converge Hackathon” format. Let’s analyse the main idea and the first implementation, held at Google HQ in Milan, March 7th.

First, why an hackathon?

We all know what an hackathon is: a fixed amount of time for experimenting with new things, get in touch with smart people and have fun with passions. In addition, “Converge Hackathon” aims to improve the collaboration between designers and developers during the whole process of thinking, refining and realizing an idea. Hence the name. And because I viscerally love the hackathon format ;)

20150307 - Converge Hackathon 03

Don’t be shy and… present!

How the collaboration between developers and designers has gone?

Pretty much well, I would say.  This collaboration was one of the more acknowledged strength of the event. Here some of the attendees’ comments:
“Was challenging to work with stranger but at the same time interesting and funny. The best part was the division of the work”
“The collaboration was really good. It was my first time working with developers and I enjoyed a lot. Otherwise, I think it was needed a bit more of integration regarding with how the design and the coding could be merge”
“I’ve meet a lot of interesting people and different points of view on even the simplest thing”
“Good organization, very nice the initiative of mixing designers with developers and give an opportunity to work together”
Although it was challenging:
“I’m a designer. Speaking with Developer is very difficult because they only think in their square area.”
“At the beginning was difficult to know new people and get in touch with the developers”
To summarise: no pain, no gain when you start this kind of collaboration :) But the feedback showed that audience gained a lot, despite some small pain.
We balanced the attendees considering 2/3 of developers and 1/3 of designers, and frog carefully selected the latter viewing their portfolio, their profile, their activities. They wanted to be sure that the right profiles were part of the crowd. For developers, I let them in without any particular control. I trust in natural selection ;)
Another learning point was about the teams creation: such different crowd requires a focused pre-work for mixing the people in a proper way, something that goes beyond the quick ice-breakers we did in the morning, that work generally well in a standard hackathon. Dedicate the right attention to this aspect is crucial.
One final consideration is about the timing: one day only event makes hard to create something meaningful, and the ideation phase, that generally is very short during a normal hackathon because the attendees are eager to “get their hands dirty with code”, this time was fostered, and mostly led, by designers. The result was that final hacks were more elaborated that the average I’ve generally seen, but with the drawback of having prototypes less “working” than the usual. As note for us, organisers, next time we need to keep the ideation process inside a given timeframe, otherwise the risk is that, once the first half of the event has gone, teams are still thinking about what they can realise.

20150307 - Converge Hackathon 01

Diversity? Really not an issue for this team

Continue reading