Scala at Sky: a Data-Driven Community
I run a survey last week to get a steer on what we should focus on in the Scala Community. Here is what I learnt.
- 50% of us can get things done in Scala. Overall as you can see, a nice bell curve from beginner to seasoned scala developer. But nobody claims the title of expert, something we need to fix!
- 55% actually code in Scala at Sky.
- 74% are permanent.
- 87% are based in London.
- 53% are not happy with the community, 40% are barely happy while 87% really wants it to become something fun and vivid.
- Oh and I had to chase 7 times to get 32 people to fill this survey :)
Me trying to get traction on 11th November with a Scala Haiku on our Slack channel:
Another beautiful day
To build the Future
flatMap the world
and fill a survey
Where We Expect The Community
Biggest topics for us in decreasing order of interest:
- to share best practices
- to spike new technologies
- to contribute to Sky’s visibility as a great tech company
- to support OSS with Scala at Sky
Those are the areas where any initiative would be welcome by all. Sharing best practices is a good one I think. Scala being very powerful but quite unopinionated, it gives a lot of room to shoot yourself in the foot. Many times I have seen teams being undecided on how much FP was too much, when to use implicits, how much to encode in types, etc. Few things could help drive the discussion here, to name a few: scalastyle and scala-best-practices.
On the lower end of the spectrum we find:
- training (25% no)
- career (22% no)
- technical direction (9% no)
- hiring (9% no)
But that doesn’t mean we shouldn’t cover those areas. Training is at the bottom yet 53% have expectations from the community about it among which 20% are in high demand for it.
On an unrelated note, I was representing Sky at Silicon Milk Roundabout last weekend and something was clear: there is a niche of engineers on the market that are actually highly interested in Scala but are yet to use it commercially. The company that can offer that to them with a serious training will achieve a great win-win I think.
Our Resources
Back to the survey, overall expectation for this community is great. So let’s see what we are up to to support that. Four things we could be quite successful at based on how many are ready to contribute here (how many raised their hands in parenthesis):
- brown bag sessions (80%)
- it seems the best time of the week is either Monday or Tuesday during lunch time or just before.
- open source projects (77%)
- technical articles (22 authors)
- training (19 keen to give a hand here)
Looking at the results, it seems that to feel like a community leader, you have to be a contractor. Only this category offered to lead on few topics. Also contractors seem to be more keen to have this community to work at building Sky’s visibility as a great player on the tech scene. I guess it’s easier when a contractor to figure there is a market out there and existing on that market gives leverage even internally.
Anyways, in total, the 32 responders are ready to devote a total of 85 hours a month to this community. That’s not bad, we just need to be mindful of how we spend this budget!
The two major hindrances are proficiency and inability for the surrounding team to manage time and commitments adequatly for a bigger Sky to emerge. The former is something we can fix with a bit of training and OSS. The latter is rather cultural and inspires me this:
What Now?
As you’ll see in this section, I believe we should put our community GitHub1 repository and particularly its wiki to good use.
Since brown bag session is the most federating activity that surfaces in this survey, I think we need to come up with an appealing approach to it. One comment said that the current format was rather pointless, harsh but point taken.
I’ll facilitate the decision for the best frequency and schedule on #scala. Now the best way for you to come is for you to know you’ll get value from it. Two things we can do to help here: feed your expectations in our brand new Wanted Topics page and help maintain an agenda for each session.
If you actually want this community to be good fun, open the Wanted Topics page and add a couple of ideas. If you’re a beginner, that’s your chance to learn from others. If you’re a seasoned Scala dev, since you aren’t yet expert, that means you know about stuff you don’t know. Put it here!
Since many of you have mentioned you’d be ready to write a post related to Scala, I suggest you put your money where your mouth is and add a line in the Coming Soon section here. Yes I will probably chase you but then you’d be a published tech writer, think about it! If you have no idea at the moment, the Wanted Topics list should be of help soon, how cool is that?
I have created few pages more: Best Practices and Radar. The latter is inspired by the famous ThoughtWorks radar. I think it’s a powerful tool to help consolidate the estate in a big compagny like Sky but I am yet to implement it in an effective way. Hopefully the community can overcome my weakness here!
Thank you to all that took part in this survey. Hat tip to the Recommendation team for having stepped up so well to make us great at hiring and to prepare Scala Exchange 2015.
And remember, only the Emperor will show you the true nature of the Force!
- Remember it’s a private repository, to be able to view it you need to be logged-in on GitHub and have associated your Sky username to GitHub [return]