Yesterday was my second time at a Developer Developer Developer conference. This time it was based in the city of Bristol, which is just an hour's train journey away!
The day started off with a very early start thanks to my eldest son kindly waking me up at 4am! I went to the conference with fellow .NET Oxford founder Matt Nield, and we pretty much had the train to ourselves. Amazing how different it was at a weekend to my usual train commute during the week! So both ways, there was a lot of .NET Oxford discussions and planning! We even arrived with plenty of time for a coffee and mingling before the start!
The event was introduced by Ross Scott, welcoming everyone, introducing sponsors, and telling us about his PocketDDD app that he had written so we could all provide feedback of both the event and each talk. All users of the app were also entered into a prize draw which was drawn at the end of the day. The app was also very handy as a reference for the agenda throughout the day.
For the first session, we choose to attend Robin Minto's talk about the risks of XSS attacks and how to prevent them. Security can be a scary concept, and unfortunately a surprising number of developers really have no idea about even the basics of security - with XSS of course being a big one! Robin explained about the different types of XSS attack, then followed with live examples using his demo site. Lots of references to the OWASP site - a site that all web developers should get very familiar with!
Being an avid podcast listener, I've heard a lot about Azure Service Fabric, but I hadn't actually seen it in action. So for me, the choice of talk for this session was obvious! Thankfully, Kevin certainly didn't let us down - covering a lot of ground in the hour that he had - starting with the history of how we arrived at the microservice architecture, then talking about Service Fabric itself, and then showing us live demos - both locally and in the cloud. Definitely something high up on my long list of tech to play with!
Azure Functions is something I've been playing around a bit lately, as I'm using them in my blog rewrite (coming very soon!). For those that don't know - Azure Functions are basically independent methods in the cloud that can be triggered by various event types, and also output to various targets. Examples of both inputs and outputs might be HTTP triggers/responses, Service Bus queues, storage, etc. Azure Functions are a type of serverless architecture, which is a relatively new term, and doesn't mean that there are no servers - it just means that you don't know or care about them! A good analogy I recently heard on Twitter was that serverless is to servers as wireless is to wired - there are still wires, but you do not need to interact with them.
It was a great talk with lots of live demos - including using the Azure Function CLI, which I haven't had chance to try yet, and probably should have done during my blog re-write!
For this talk I was really umming and arring between the Razor talk and the Twitter Stream talk. The Twitter one was of interest due to the technologies listed. I've dabbled with the ELK stack before, used RabbitMQ in a previous company, and also heard a lot about Serilog so was interested in seeing this in action. However, I decided that the Razor Deep Dive talk was probably more useful for the stuff I tend to work on - and I'm really glad I did, as Joe did an amazing job! I really felt that I learnt a lot of things that I can immediately apply to my projects. A very well delivered talk - probably my favourite one of the day!
It also turns out that Joe is a fellow .NET usergroup organizer and runs the .NET South West User Group! I'll definitely have to make a visit to one of their events in the near future!
The last talk of the day was by Ian Russell, talking about Functional programming in C#. This was pretty much a sales pitch for F# - and Ian made no attempt to hide it (that's not a complaint btw!). Starting off talking about the LINQ we all know and love, and how we're probably doing a lot of functional programming without even realising it. Then Ian went onto some examples in C#, and showed how much more succinct that code could be when written in F#.
Interestingly, all his live examples were done using LINQPad. As you may know, I'm a MASSIVE fan of LINQPad, and it surprises me how many .NET developers don't use this fantastic tool. A tool that I use daily to save me massive amounts of time. I was particularly interested when Ian asked everyone who uses LINQPad. The shows of hands was actually surprisingly small. This definitely compounded my theory that it's a very underutilized tool given that power that it provides. I'm even actually thinking about doing a lightning talk on LINQPad at one of our .NET Oxford meetups to try and promote this incredible tool more to the community!
One of the sponsors of the event was Just Eat, and they very kindly allowed everyone into their offices after the event for free pizza and drinks. And wow, they most certainly have impressive offices! We didn't see the working area, but their main breakout area had a bar, pool table, foosball table, air hockey table, and more! Definitely a company who knows how to keep their staff happy! A massive thanks to them for opening up their offices to us all!
With this DDDSW now over, we're looking forward to the next DDD which is actually just around the corner! It'll be hosted at the Microsoft Headquarters in Reading on Saturday the 10th June! This is going to be a big one, and .NET Oxford will most certainly be there! As you can see, Matt is quite excited! ...
Also don't forget that next month, we have our next .NET Oxford meetup which will be all about Xamarin! Please do RSVP if you're planning on coming, as this gives us an idea of numbers - hopefully another full house!
See you there! ...