Community, Microsoft Data Platform, R

Slack all the things!

Slack all the things!
Slack all the things!

OK, if you haven’t heard of it before Slack is kinda like IRC, kinda like Dropbox, kinda like a lot of things – it’s a neat place to bring together communications between your team or community, and the integrations allow you to pipe in external feeds like twitter activity or RSS. It’s a great way of collaborating online and I’ve found it especially useful not just within a company but within a global community.

I belong to a number of Slack groups which some of you may be interested in joining:

  • SQL Server Community is all about the Microsoft Data Platform and dog pics (that may just be me ūüėČ )
  • satRdays for talking about satRdays including developing the site, events, etc
  • Rest Azured is for talking Azure and is primarily a troubleshooting community with a bunch of active Azure MVPs helping out
  • Cardiff Dev for talking tech and having a laugh, aimed at local Cardiff techies
  • Confhouse for discussing events you’re organising and getting advice off fellow organisers

These are just a selection of the groups I’m involved in and it’s been extremely helpful extending my network outside of twitter in a more collaborative format. There are lots of community slack groups out there and I recommend you give Slack a go by finding some groups that fit your interests. If one of the above isn’t your jam, there a number of Slack directories out there, but my current favourite is Slofile. If like me you have a lot of Slack teams you belong to then I recommend you start using Franz, which if nothing else arrays Slack channels horizontally which works extremely well on my XPS13’s aspect ratio.

Have fun Slacking folks!

PS Any Slack communities you’d recommend for me to join?


Stepping down from SQL Relay

Some folks may already know, but I handed in my resignation from SQL Relay as sponsorship lead and Cardiff organiser.

Over my time in SQL Relay, I’ve helped deliver 30 conferences. I’ve attended about 15 of those! Being able to deliver so much learning to people all around the country has been an incredible experience and I’m tremendously proud of everything SQL Relay has achieved.

However, SQL Relay has become increasingly difficult for me to dedicate the time to. Over the years, I’ve added a lot of other commitments. I love being busy and helping the community but with the ~15hours a week I spend on Relay, I can be helping deliver other things.

It’s also a really good time to leave and let someone else do the work!

I wanted to be able to leave when new people could come in and grow, like I did. There’s now another crop of fantastic community members and leaders who can help Alex Whittles and co. deliver fresh awesomeness into SQL Relay if they choose to.

This isn’t to say I won’t still be involved in Relay next year. I’ll be supporting the nearest new event organiser, and whoever takes over from me as sponsor lead. I will still be cheerleading from the sidelines for it.

I look forward to seeing how SQL Relay continues to grow and change, and I’m looking forward to my own growth and change. Thank you everyone who has been involved with SQL Relay over the years, from organisers, to volunteers, to sponsors, to speakers, to attendees – it’s been a pleasure serving with and for y’all!

DataOps, Microsoft Data Platform

Unit testing in SSDT – a quick intro

This post will give you a quick run-through of adding tSQLt to an existing database project destined for Azure SQL DB. This basically covers unit testing in SSDT and there is a lot of excellent info out there, so this focuses on getting you through the initial setup as quickly as possible. This post most especially relies on the information Ed Elliot and Ken Ross have published, so do check them out for more info on this topic!

Continue reading

Security now with added locks

This blog now has some extra locks, these are in the URL bar!

It took my fantastic hosters WPEngine a little longer than I would have preferred to get a modern SSL policy. Now that they have, they did it in their typically awesome fashion. You can request a free Let’s Encrypt SSL certificate from the admin dashboard, and configure how http etc should work in less than 15 minutes, and you don’t have be a web wizard to do it. It went seamlessly and caused no downtime.

My site is now completely covered by SSL. This is better in the eyes of myself, google, and the lock-loving world! If you’ve got a blog, you should look into adding SSL.

Please note the link above is an affiliate link. I decided I like WP Engine’s service so much that I wouldn’t mind some money off my hosting by recommending it to y’all in a tracked way

Community, Microsoft Data Platform

2016 PASS Board of Directors Candidate Town Halls

It’s PASS Board of Directors elections again! After a number of twitter discussions last week about the applicability of PASS outside of the US and what I think PASS is good and bad at, I thought I would engage the process instead of just being a complainy-pants. I attended all 6 town hall webinars and asked questions to all the candidates. I recommend you watch them before voting.

Find out more about the candidates, the PASS Board of Director elections, and how to vote on the PASS website.

Continue reading

Community, Microsoft Data Platform

Reflections: SQL Relay is coming

I’ve been pretty quiet recently, I haven’t presented much, I haven’t blogged much, I haven’t worked on my open source projects much. All my energy left over from my major work project has been going into SQL Relay. SQL Relay is an ambitious project every year. We organise a conference that goes on tour. In previous years, I’ve gone to 8 cities over two weeks. Over the past 4 years, I’ve been part of organising 30 conferences. It’s kind of hellish!

I was talking to Gabor Csardi at the first satRdays and he said you’d have to be a masochist to organise a conference. He’s not entirely wrong. Organising a conference is hard, often thankless, work and you have to have a strong reason to do it. One that will keep you going when you’re buried in emails, tasks, and twitter deluges.

The reason I’ve done SQL Relay all these years is to give my user group and others in South Wales, a conference. I’m now joined by the likes of Viv Richards, who has kicked off SwanseaCon, but 4 years ago there was nothing, especially from a data perspective. I’ve been lucky/brave/supported/rich enough to go attend and present at lots of fantastic locations and I know that I’m incredibly privileged to be active in my favourite tech communities.

Most people have at least one of limited budgets, unsupportive employers, home situations that prevent travel, unhappiness about their jobs. No conference is held on the right day to suit everyone but I love that SQL Relay is free, 9 to 5, on a weekday in a city centre. Yes, you have to take convince the boss to give you a day off (for a completely free day of training though), or worst, take a day of holiday. It’s well worth it, however, as it doesn’t impinge on a schedule more than a standard working day would and you get awesome people sharing their knowledge with you. You don’t have to secure budget for your hotel, you don’t have to arrange extra childcare. If something goes wrong, you can always pop back to the office.

Weekend conferences are accessible to some and, similarly, weekday conferences accessible to some. We’ll never fit for everyone but I find Relay, at a local level, incredibly compelling. It’s been my pleasure to over-deliver locally. To always put on that extra track, to get another fifty people through the door, to deliver more broadly applicable content. I organise the sponsorship for the whole shebang but I do it all for the Cardiff event.

This year, I’m incredibly proud of a few aspects of the upcoming Cardiff event:

  • Our showcase track is about moving to the cloud. A lot of my user group are public sector, finance, and law firms. Until the recent availability of UK data centres, the cloud was a pipedream. Now they have an opportunity to learn and change.
  • A high level of beginner to intermediate talks. Everyone is a beginner at something, and I believe people need to increase their breadth. We can’t always deliver that in a user group, but a conference provides an excellent opportunity for that.
  • A coach to get people from Bristol. I’m not the only one to organise SQL Relay. The number of people varies year on year but this year was especially low. We decided to stick to just a week’s worth of events and that meant we could only do Bristol or Cardiff, not both. Cardiff was chosen but the Severn Tunnel closure makes it horrendous to travel between the two cities on public transport. We couldn’t secure sponsorship for it, but we have arranged a coach to take people directly from Bristol Parkway to the venue and back again.
  • Nine local speakers. I didn’t quite beg, borrow, and steal but this year we have a huge amount of user groups members presenting sessions. These are people who have passion for their jobs, invest in their own learning, and are now helping others learn and build on their own passion.

I’ve always been proud of what SQL Relay has achieved in Cardiff, and this year has been no exception. I look forward to sharing the day with anyone who comes along, and I look forward to the big dose of free time, I’ll have after we’ve wrapped everything up!

SQL Relay Cardiff – Oct 4th 2016


Finished my first GameMaker Game

Getting started with GameMaker, making Asteroids! I mean OK, it’s just a clone of a classic, but isn’t that how fledgling artists practice? Initially¬†created following a tutorial, I then went through and added a lot of extra features, including music, splash screens, a pause function and much cleaner code.

Embedding by i-frame is pretty ugly, so please follow the link below to try the game.

Asteroids Game

A/D or Left/Right to turn
W or Up to move
Space or Right Control to shoot
Escape to pause

You can download the gmz file, and import into your copy of Game Maker if you’d like, using this link:¬†

R, Security

HIBPwned updated on CRAN is a fantastic service that helps people find out if they’ve been involved in a data breach. HIBPwned is an R wrapper for that service.

Recently, due to abuse of the system, Troy Hunt had to add a limit of one request per 1.5s.

The new version published on CRAN last night adds a delay into each call so that we can continue to use it in R.

Check out the package on CRAN for vignettes and more information on the package.


Being an Organised Sponsor (SCE p3)

Being an Organised Sponsor is the third instalment of the Sponsoring Community Events series aimed at helping companies get to grips with sponsoring community events, and getting the most out of them. This post covers how to organise yourself and the common activities needed to get the most out of your sponsorship of a community event.

Project management

Rarely is sponsorship a simple transaction, there’s often deliverables from both parties at different times over a period of anything up to a year.

Having been on the other side of the fence A LOT, I think it’s important you have a dedicated person who manages things, with a deputy who can step up in the event of illness, job moves etc.

An important part of the project management is understanding when you need to deliver your end of things, and when the event will deliver theirs. Compile a timeline of activities to help stay on track and identify when you need you need to start working.

I recommend regular calls or review emails to make sure that everything is on track, particularly as this allows for things to be tweaked and improved. Exactly how frequent these calls occur depends on the complexity and volume of sponsorship benefits.

Digital presence

Once you’ve agreed to sponsor an event this is your first priority — being known and visible as a sponsor of the event.

Being promoted by the event

You need to make sure you provide your liaison with:

  • Copies of your logo in the formats they require them. This is likely to be PNG and in a variety of resolutions
  • A destination URL for visitors to the event website to navigate to. Ideally, this should be a page tailored to the typical audience of the event and should include a tracking component to make assessment easier on your end. Making the page relevant improves your ability to convert traffic from the event.
  • You may need to provide content about the company in a variety of lengths for inclusion on the website and physical collateral. Make this tailored to give it the highest relevance and chance to make an impact.

Social media

Social media has increasing importance for companies and for events, so it’s important to plan this area. The sorts of things that will need to be discussed and agreed between yourself and your liaison:

  • The key social media accounts and important hashtags for both parties
  • Your social media about sponsoring the event
  • The event’s social media about you sponsoring the event
  • The re-tweeting/re-syndication of your content — guidelines and preferences from both parties
  • Reporting performance of social media

There are a number of useful tools that you can use to help automate social media, like Tweetdeck (free) and Hootsuite (low cost). If you’re not already doing social media scheduling, now is the time to invest in that activity.

Physical collateral

Complementing the digital presence for all online interactions with potential and actual event attendees is branding present at the events.

Popup displays

If you are present on event specific displays then you will need to provide a vector copy of your logo to ensure it prints effectively. A very high-resolution PNG will do in a pinch.

You may also be entitled to have a number of banners or stands provided by yourself at the events. Make sure you receive any guidelines and the delivery address details in plenty of time to get these produced and sent to the relevant party in time for the event. Missing the deadline could see an important piece of branding not be present at the event.

The lead time on popup banners is fairly low (a few days to a week) but you need to allow for screwed up deliveries, defects, etc.

Booth materials

We’ll go into more depth on building an effective presence in the next post, but a booth typically requires popups or more extravagant stands, table cloths, and signage at minimum. Getting all this together requires some planning up front to design the look and feel that matches budget and the company goals. Exhibition stands also typically take longer to produce than popup banners so you don’t want to leave these til the last minute. You should also think about how you get the booth materials to the venue – if the way it’s getting to the venue is a stereotypical sales guy with a BMW that barely fits a suitcase then you need to rethink that giant booth!

Stuff We All Get (SWAG)

The swag bag is a bag of goodies that attendees get on the day and is usually filled with promotional items provided by sponsors. Swag is a great way to get your brand out there and seen on a regular basis.

If this is a one-off or trial sponsorship then we recommend sticking to items like good quality pens, pads of paper, and decent USBs. If you’re considering a lot of sponsorship then doing something iconic can really work in your favour, for instance, Idera do rubber ducks and have various limited edition ones which generates a collectors attitude amongst attendees.

Idera ducks
Idera ducks

These items can have significant lead times so making sure you have secured or ordered with plenty of time to spare. I recommend ordering an extra 5-10% to allow for problems like quality issues or delivery damages — any excess the event organiser has left over typically gets recycled into other community events.


Data sheets, company leaflets etc. also go in the swag bags, and it’s really tough getting ones that don’t go from bag to bin. To make sure these have any impact, you want something that is worth hanging onto or delivers a link that they can immediately access on their phone.

Like with the swag, order extra to allow for issues. These have a turnaround time similar to popup banners.


A great giveaway does wonders for reputations and data capture so getting this right is important. Firstly, make it relevant to the attendees of the event you’re sponsoring, secondly, keep within any rules the event organisers have, and thirdly, try to make it special. I often recommend that if you provide products or services then you should consider giving them away as prizes — a happy prize winner who became a super happy customer is an excellent success story that can provide powerful marketing content as it integrates your community engagement with a positive case study.

Data capture

Whether through the giving of prizes, scanning at booths, or through a general benefit, you can often end up in receipt of attendee’s personal data. You need to make sure the data capture method and stated permissions is compliant with any company policies. Additionally, you need to be prepared for the receipt of the data and processing it once you receive it.

Most event organisers will place limitations on how the data can be utilised or stored so if you sign an agreement, you should make sure these details are noted and you act in accordance with them.

You should plan time to incorporate this data into your company’s CRM system or equivalent. You should also do something with the data instead of just acquiring it. Have something like an email planned for after the event.

What next?

The next post in the series will take you how to build an effective onsite presence.


Assessing Sponsorship Opportunities (SCE p2)

Assessing Sponsorship Opportunities is the second instalment of the Sponsoring Community Events series aimed at helping companies get to grips with sponsoring community events, and getting the most out of them. This post covers some of the things that you should be thinking about when you are considering sponsoring and event.

What’s the point?

Before entering into a sponsorship agreement you need to have a firm idea of what you’re hoping to achieve. Understanding your driving reason for marketing via sponsorship helps you determine whether a sponsorship opportunity is right for you.

The three most common reasons are:

  • Reach Getting in front of people with the aim of converting them to customers
  • Brand recognition Building strong brand recall
  • Keeping up Competitors are sponsoring events

I do not recommend that the third reason should be your primary reason. “Me too” propositions are not winning propositions. Take the time to think about what you can actually get out of sponsoring events. Your competitor may be saturating the community events but is probably leaving other channels open in order to do so.

Is the audience your audience?

An event with little or no overlap between the audience you’re interested in talking to and who actually attends is an event has little benefit for you. Make sure you understand the mix of attendees before entering into an agreement. Factor it into your cost assessments and the marketing strategies you employ.

Is the cost appropriate?

The general rule of thumb is more money –> more engagement –> more money

So the more you spend, the more face time you get, the more you earn. Like any marketing activity, it’s never a guarantee but in this area, you have to spend money to make money. although you can be savvy about it!

You probably have a good idea about how much it costs you to acquire a new customer and what your average conversion rate is across your marketing channels. Use these figures, in combination with your core reason for sponsorship, to ascertain your best, likely, and worst case outcomes for ROI and assess the costs on that basis.

  • If your goal is direct conversion to customers, then make sure the lead cost is similar to what you achieve elsewhere and focus on higher tiers of sponsorship
  • If brand awareness is the primary goal then the relationship is less linear as the quality of your materials can gain you substantial recognition, with less spend

You shouldn’t just account for the direct cost of sponsorship in your calculations either. There can be a lot of costs involved in getting the most out of your sponsorship, like investing in a booth and staffing it for the duration of the event.

Can you negotiate on the cost?

Yes, generally you can. Here are some ways you can usually get movement on sponsorship costs:

  • If you don’t like some of the benefits or can’t utilise them, then you can negotiate package contents
  • Offer something better than money – take on or provide something that costs you a lot less to do than it takes the organisers
  • Trim benefits
  • Go for the long term, sign up for a number of years
  • Come in last minute (a risky strategy!)

How much business can you handle?

Depending on your capacity for new business it may not actually be in your best interests to go for top tier packages all the time. When people want to give you their money and you can’t take it fast enough, they usually get annoyed with you! If you’re a small consultancy business or your onboarding processes still need some work, then going for smaller packages for the first few events can stop you burning bridges.

Can you utilise all the benefits?

Sponsorship is not a simple transaction – there’s often requirements for design work, content creation, physical collateral, on-site staff, and qualified speakers at the different levels. If there are benefits you can’t utilise because you don’t have the resources, then try to either get them substituted for benefits you can utilise, or select a cheaper level.

Is the timing right for you?

Sponsorship might be something you are considering doing all year round to build brand awareness or it could be tied to a specific time-sensitive message. If it’s a time-sensitive message then make sure the event coincides. Line up sponsorship for events that coincide as early as possible. Last minute sign-up will give you less prime spots, less time for your brand to be seen, and less time for you to pull together the resources needed to maximise your benefits.

How will it be measured?

Tracking the impact of sponsorship is critical to the beginning of the endeavour as well as the end. Your measurements should align with your goal. For instance, if you’re aiming for increased reach metrics like new visitors from the event’s website, new leads added to the database, or new customers are important. Getting the framework in place for this data capture will likely require work on yours and event’s part so you need to think these through early. Once you have this information it allows you to make assessments throughout and after the sponsorship process.

Will the organiser deliver?

Community events are run by people who have day jobs, and those day jobs aren’t marketing and events management. Most community events run smoothly with well-organised and experienced people at the helm but make sure you understand the answers to questions about their experience, backup plans, and liability. This is, of course, the standard stuff you do anyway but it’s worth getting a feel for things before you enter into a legally binding agreement.

What is the event organiser looking for?

Each event has its own brand, its own way of communicating to attendees, and it’s own preferences so you’ll get the most value out of sponsoring an event2 where your marketing is compatible with that of the event. If the event is known for “big and slick” and that’s how you like to do things then you’ll have a much easier relationship and you’ll fit in better to the event, whereas if the event runs differently and your large exhibition stand won’t be allowed to be put up you might find yourself getting frustrated.

What next?

The next post in the series will take you through managing your project for the event from start to finish. And it is a project