Last night we held the first ever .NET South East meetup event! I’ve been really looking forward to this meetup since first announcing the idea at the end of June. I talked about some of my motivations behind starting the group in an earlier blog post.
I’d spent a lot of time leading up to this event trying to think about all of the bits I needed to plan and have ready. I had great support from some of the other community leaders to help with ideas, advice and suggestions. I was also able to attend an event at Microsoft in London for community leaders, speaking with some of their team about how they can support user groups, so I’m looking forward to working with them too.
Over the days and weeks before the event I had been staggered by the number of RSVPs we were getting via meetup.com. One of my two big concerns when moving forward to launch the group had been whether there would be interest from the local community and people would show up. I had set a rather arbitrary 60 person limit for the group, never really expecting to hit that. However, with a day or two left before the event, we were full! In fact I was starting to worry that if everyone turned up, we would run out of space and seating.
The big day!
Thoughts of the meetup were always in the back of my mind during the day and as the start time approached I was equal parts excited and nervous. I start and finish early at work so by 4pm I was able to shoot out and grab an early dinner from Pompoko in Brighton. It was nice to have 20-30 minutes to relax out of the office and prepare myself for the evening ahead.
Returning to the office at 4:30pm it was time to begin setting up. We have 3 meeting rooms at Madgex which can all be opened up into one large space. It’s the perfect location for an event like this as we have a large TV screen for presenting on and an audio system with an array of microphones. I’m hugely thankful to two Madgex staff in particular at this stage who helped me to get this room ready and setup the equipment. Leah our amazing office administrator was on hand helping to set up the seating, whilst Ricky our IT tech was there to ensure the audio/visual side was all functioning as expected.
Our one and only technical hitch for the evening was actually with one of the folding doors which allow us to open up the last room as part of the space. The last folding section was jammed shut and we couldn’t open the door fully. However, it wasn’t a major issue and we were still able to get the seating setup. It was not one of the things I’d worried about going wrong! I’d been mostly concerned with the TV output and microphones working correctly.
I was amazed at how quickly the time evaporated as we got the room and snacks prepared. Once the meeting rooms were ready I set about putting up some signs to guide people into the Madgex offices. By 6:15pm we had our first early bird arrivals. Some more of my colleagues at Madgex jumped in to add their support here, helping get people through the security doors and into the office. Madgex are on the 1st floor of a shared building and access is tightly controlled. To access the building you need to be buzzed in, then to use the lifts you will need an access fob.
It was actually the logistics of this which was the hardest part of the evening. Fortunately I had two volunteers on hand to help. Rachel, our development team lead kindly based herself in the foyer of the building to let people in. She would then put them in the lift and swipe her access fob so they could be delivered to the 1st floor. Ready and waiting in the entrance of the Madgex office, Chris, one of our senior developers was ready to greet the guests and get them signed in. With RSVP lists on hand Chris was able to tick off the attendees for the evening.
The other logistics challenge we have is access to the toilets, or more specifically, how people get back into the Madgex office. Once you leave for the toilets a security locked door stands in your way if you want to return. We had organised visitor access fobs for the evening and Chris was superb as passing those out and gathering them back from our guests. During our 10 minute break Chris manned the door to enable people to use the facilities.
Without Chris and Rachel helping on the night I’m really not sure how we could have gotten everyone in so successfully, so I know for next time that I need to line up at least two volunteers again. We also realised that once we start it’s near impossible to hear the intercom buzzer so I have made sure to update our details on meetup to stress that entry after 7pm can’t be guaranteed. Unless we are able to get someone stationed near the door (who was not worried about missing the talks) I’m not sure how we can improve this. We’ll try to think about possible solutions to that problem, but hopefully everyone arrives on time. By having the arrivals from 6:30pm and talks at 7pm, we hopefully give enough of a window to get people into the event.
In the end we had 49 attendees (including myself) and I think nearly filled every seat in the room. I was really amazed by the turnout as people started to fill up the area where we were serving drinks and snacks. Before long it was getting quite congested. We’ll think about the possibility of picking a different networking space for the next event. I’d honestly not dreamed that the first event would be so popular. A big thanks to everyone who made time to attend and show their support. It’s great to see that we have such a large community who are willing and able to attend. I really hope we can keep the attendance level up for the upcoming events.
Intro and news
As we hit 7pm it was time to get everyone seated and begin the event. I expected to be more nervous than I was as I prepared to give my introduction. However, I felt pretty good and after a minute or so I was into my stride. After covering the obligatory health and safety notices I went on to share some of the reasons behind starting the group and welcoming everyone to the event. I then took a chance to thank our sponsors, especially Madgex for the support they’ve given and for providing a venue for the evening. The meeting rooms are a great space and I hope everyone was reasonably comfortable in there.
I also covered a little news and events section which originally I was unsure about including. However, with the release of .NET Core 2.0 last week I felt that was worth spending a few minutes to talk about it. The big changes are the wider API surface now available in .NET Core 2.0 which align it to .NET Standard 2.0. This hopefully eases the barrier to entry for companies with existing code that they may want to migrate over to core.
I also highlighted the .NET Conf event which is running in September as well. It’s a free, streamed conference organised by Microsoft which will likely include a lot of .NET Core 2.0 and ASP.NET Core 2.0 content.
Dylan Beattie: Life, Liberty and the Pursuit of APIness : The Secret to Happy Code
With my introduction complete it was time for our first talk. Dylan Beattie was kind enough to join us from London (on his birthday) to give his fantastic talk entitled: Life, Liberty and the Pursuit of APIness : The Secret to Happy Code. In this very entertaining talk Dylan presented examples of both good and bad interfaces and how these can affect the happiness and frustration of end users.
During the talk he highlighted the power of giving helpful error messages and prompts for the user/developer to solve the issue wherever possible. Blank wall error messages should be avoided where they offer no useful information to enable the user to proceed. The way those messages are phrased is also important.
Dylan spoke about a personal obsession of mine – including proper XML comments to supply tools like Visual Studio’s intellisence a way to provide developers with useful instruction about how to use your library / code. This is something I’m very keen on as I’ve used a few poorly commented libraries that provide no intellisense support to guide you through their API.
The discussion continued onto proper and relevant logging / monitoring and how logging levels and messages should be used wisely to provide insight into the health of systems. A good recommendation is leaving relevant debug logging in place that can be enabled in production if you need to diagnose hard to replicate errors.
It was a great talk and really well received by the audience.
Dylan ended with a short promotion for a .NET conference that he helps to organise in London called Progressive .NET. There’s a fantastic speaker line-up for the event so I recommend you check it out and convince your boss to send you along! We also have a 20% discount code you can use against the current list price: SE_PROGNET_20
My Talk: Docker for .NET Developers
After our 10 minute break I was pleased to see that nearly everyone had stayed for the second talk of the evening. This time I was in the spotlight and presenting my talk about how .NET developers can get started with Docker. In this talk I share our experience at Madgex as we got started with Docker for a new product. Along the way I explain the architecture we developed and how we used Docker to ease the workflow for our front end developers. Along the way I show some code demos about how we can get started using Docker, building images and running containers. We look at using docker-compose for co-ordinating multiple containers.
I conclude the talk with an explanation of how we’d developed a build and deployment process and how we run in production on AWS using Docker. This included a final demo showing the deployment process in action.
With the end of the evening closing in, before heading off to the pub we drew the winners of the prizes from our fantastic sponsors for the event. The prizes we had to offer were:
One year individual subscription to any single JetBrains Toolbox product
- DevCraft Complete license code
- T-Shirts x 5
- ebook – 1Docker in Action by Jeff Nickoloff
- ebook – Docker in Practice, 2nd edition by Ian Miell and Aidan Hobson Sayers
6 months Business license
I went for the low tech, names out of a bowl approach for the first event! The rules I’ve devised which I hope are fair are:
a) names are added from the RSVP list (as at 1 to 1.5 hours before the event)
b) if the name drawn is not in attendance, we redraw.
Congratulations to the winners. I hope everyone who won was happy with their prize. One issue we did encounter were that meetup.com doesn’t enforce full names for RSVP’s so we could run into issues with drawing a winner signed up with just their first name when more than one person in the room shares the name! I’m not sure what we can do there but we’ll try to manage it fairly or do some kind of tie break in those cases. I’ll also urge our attendees to add their full names when registering on Meetup.
One of the main concerns I had when starting the user group was finding speakers. So far those concerns have not been warranted and I’m pleased to have been able to line up some great speakers for the coming three months of events.
.NET South East September 2017 – Jon Galloway
We’re excited to announce that Jon Galloway from Microsoft will join us for the evening to share two exciting talks. What’s new in ASP.NET Core 2.0 and a talk about The .NET Foundation. This is filling up fast and we expect it to be quite popular. Please make sure you visit the link and RSVP to attend as we will have to limit numbers.
.NET South East October 2017 – Rabeb Othmani
Rabeb joins us with her talk “Welcome to the age of conversational interfaces” – looking at how we can build interfaces using SMS, voice and bots.
.NET South East November 2017 – Michael Newton
Michael joins us with his talk “Making Distributed Systems in .NET Easier” – discussing distributed architecture with .NET.
Call for speakers
I’d love to get a range of varied content and speakers to present at our user group. We have a nice pipeline for the coming months but those months will fly by very quickly. If you’d be interested in speaking at a future event we’d love to have you. Please get in touch via the contact form on this blog or ping me on Twitter and we can discuss availability and topics.
I’m really keen to draw as many speakers from our local community too so please let me know if you might be interested in speaking. Perhaps you have presented a talk internally and could open it up to a wider audience. I highly recommend speaking as a way to develop professionally. I’m happy to offer advice for new speakers and help where I can.
A collection of links shared during the evening.
Dylan Beattie’s blog
Steve Gordon’s blog
.NET Conf – Sept. 19th – 21st
Progressive .NET Tutorials – Sept. 13th to 15th
Humanitarian Toolbox Summer Hackfest
.NET Core 2.0 / ASP.NET Core 2.0 Introduction – Scott Hunter
Ian Cooper – Creating a .NET Renaissance (NDC Oslo 2017)