Weeknote 14/2020: Podcasting, furlough and a socially-distanced birthday

We’re living in strange times at the moment, so it seems as good as ever an opportunity to bring back my attempts to blog at least weekly with a brief precis of my week.

In the beginning

The week started as normal. Well, sort of. The new normal. Like everyone else in the UK, I’m living in times of enforced social distancing, with limited reasons to leave the house. Thankfully, I can still exercise once a day – which for me is either a dog walk, a run or a bike ride.

On the work front, I had a couple of conversations around potential client work, but was also grappling with recording Skills Framework for the Information Age (SFIA) skills for my team. Those who’ve known me since my Fujitsu days may know that I’m no fan of SFIA and it was part of the reason I chose to leave that company… but it seems I can’t escape it.

Podcasting

On Monday evening, I stood in for Chris Weston (@ChrisWeston) as a spare “W” on the WB-40 Podcast. Matt Ballantine (@Ballantine70) and I had a chat about the impact of mass remote working, and Matt quizzed me about retro computing. I was terrible in the quiz but I think I managed to sound reasonably coherent in the interview – which was a lot of fun!

Furlough

A few weeks ago, most people in the UK would never have heard of “Furlough Leave”. For many, it’s become common parlance now, as the UK Government’s Job Retention Scheme becomes reality for hundreds of thousands, if not millions of employees. It’s a positive thing – it means that businesses can claim some cash from the Government to keep them afloat whilst staff who are unable to work due to the COVID-19/Coronavirus crisis restrictions are sent home. In theory, with businesses still liquid, we will all have jobs to go back to, once we’re allowed to return to some semblance of normality.

On Tuesday, I was part of a management team drawing up a list of potentially affected staff (including myself), based on strict criteria around individuals’ current workloads. On Wednesday it was confirmed that I would no longer be required to attend work for the next three weeks from that evening. I can’t provide any services for my employer – though I should stay in touch and personal development is encouraged.

Social distancing whilst shopping for immediate and extended family

So, Thursday morning, time to shop for provisions: stock is returning to the supermarket shelves after a relatively small shift in shopping habits completely disrupted the UK’s “just in time” supply chain. It’s hardly surprising as a nation prepared to stay in for a few weeks, with no more eating at school/work, no pubs/cafés/restaurants, and the media fuelling chaos with reports of “panic buying”.

Right now, after our excellent independent traders (like Olney Butchers), the weekly town market is the best place to go with plenty of produce, people keeping their distance, and fresh air. Unfortunately, with a family of four to feed (and elderly relatives to shop for too), it wasn’t enough – which meant trawling through two more supermarkets and a convenience store to find everything – and a whole morning gone. I’m not sure how many people I interacted with but it was probably too many, despite my best efforts.

Learning and development

With some provisions in the house, I spent a chunk of time researching Amazon Web Services certifications, before starting studying for the AWS Cloud Practitioner Essentials Exam. It should be a six hour course but I can’t speed up/slow down the video, so I keep on stopping and taking notes (depending on the presenter) which makes it slow going…

I did do some Googling though, and found that a combination of Soundflower and Google Docs could be used to transcribe the audio!

I also dropped into a Microsoft virtual launch event for the latest Microsoft Business Applications (Dynamics 365 and Power Platform) updates. There’s lots of good stuff happening there – hopefully I’ll turn it into a blog post soon…

#NicksPubQuiz

Saturday night was a repeat of the previous week, taking part in “Nick’s Pub Quiz”. For those who haven’t heard of it – Nick Heath (@NickHeathSport) is a sports commentator who, understandably, is a bit light on the work front right now so he’s started running Internet Pub Quizzes, streaming on YouTube, for a suggested £1/person donation. Saturday night was his sixth (and my family’s second) – with over 1500 attendees on the live stream. Just like last week, my friend James and his family also took part (in their house) with us comparing scores on WhatsApp for a bit of competition!

Another year older

Ending the week on a high, Sunday saw my birthday arrive (48). We may not be able to go far, but I did manage a cycle ride with my eldest son, then back home for birthday cake (home-made Battenberg cake), and a family BBQ. And the sun shone. So, all in all, not a bad end to the week.

Opening up the “Virtual Boozer” #vPub

With social distancing in effect here in the UK and all pubs, bars, cafés and restaurants closed for the foreseeable future, we need to find new ways to socialise.

So, Friday night saw the opening of the “Virtual Boozer”, with me in my Man Cave and my mates James, Pete and Phil all on a video conferencing link. I have to admit it was a little odd, but it worked… and, as we couldn’t meet in person, it was a good way to hook up – even if most of the conversation was COVID19/Coronavirus-related.

I’ll admit the idea is not my own:

  • For a while now, Matt Ballantine (@ballantine70) has been running a “Global Canteen” on an ad-hoc basis for some of us on the WB-40 Podcast WhatsApp group to meet virtually. Last week, the idea of a “Global Boozer” was suggested as a natural extension of this.
  • And Sharon O’Dea Tweeted about using Zoom to meet up with her friends:

So, how can you set up your own Virtual Boozer (a virtual pub for the lads – I should note that our more sophisticated female partners have asked for a virtual wine bar”)?

I thought quite hard about the platform to use:

In the end, I went with Microsoft Teams. Mostly because it’s a tool that’s familiar to me (I use it every day at work) and because it works cross-platform but partly because I have an Office 365 E1 subscription and it’s included. There is a free tier for Microsoft Teams too…

These are by no means all of the tools available though – there’s a huge list that’s been collated in the Remote Work Survival Kit.

I tried creating a Team for the Virtual Boozer and inviting external recipients. In the end, it was just too complicated – with six steps to ensure that external access was granted (and still failing to invite external people). So I fired up Outlook, created a meeting, used the Teams add-in to drop in some meeting details, and emailed my friends.

It worked, but as Matt Ballantine highlighted to me, using the same tools for work and home is perhaps not the best approach to take (he equated it to going for a drink with my mates in the office!). Next time I’ll be seriously considering using Google Hangouts, which seems to work as a mobile app or a browser add-in – and is perhaps a little more consumer-friendly than Microsoft Teams. Everyone has their own preferences – just go with what works for you!

Postscript

The Virtual Boozer opened again last night (27/3/2020); this time using Google Hangouts. It seemed to work well, in a browser or in-app but it does require that you have a Google Account. Much like Teams, scheduling involved creating a calendar appointment (which, for me, meant re-activating my dormant GMail/Google Calendar). Also, it jumps around to show you the person who is talking at the time – some of my friends would have prefered to have all faces on the screen together (which is one of the advantages of Zoom).

Another option, which my youngest son has been using with his mates is Houseparty.

Remote working: spare a thought for the managers…

With the current COVID-19/CoronaVirus health crisis, there’s a huge focus on working from home – for those who are able to.

I’ve been contractually based from home since 2005 and remote working has been the norm for a good chunk of my career. That means I kind of take it for granted and didn’t really appreciate some of the things that others struggle with – like how to focus, finding space to work, and social isolation. (I’m also an introvert, so social isolation is probably not a huge concern to me!)

Somewhat disappointingly, there also seems to be a surge of articles on “how to work from home” – mostly written by people who seem to have very little real-world experience of it. But there are some notable exceptions:

  • Last year, Matt Haughey (@mathowie) published his tips from 16 years of working from home. Whilst some of the advice about his chosen tech (wide angle lens, special lighting, Apple AirPods and Slack) might not be everyone’s cup of tea, there’s a lot of good advice in Matt’s post.
  • And, earlier this week, my colleague Thom McKiernan (@ThomMcK) wrote an excellent blog post on what he calls the six rituals of working from home. I hadn’t really twigged that working from home is a fairly new experience for Thom (since he came to work at risual) and Thom’s post also flagged some of the bad habits I’ve slipped into over the years: the 08:55 starts; the procrastination; not taking regular breaks; and going back to work in the evening). It’s definitely worth a read.

But equipping people with the tools and mindset to work remotely is only part of the problem. Whilst I believe (hope) that the current crisis will help organisations to discover the benefits of remote and flexible working, some of the major challenges are cultural – things like:

  • Trust: comments like “Oh, ‘working from home’ are you?” don’t help anyone. Sure, some people will slack off (it’s human nature) but they will soon be found out.
  • Presenteeism: linked to trust, this often comes down to a management style that is reliant on seeing people at a desk, between certain hours. It’s nothing to do with how productive they are – just that they are there!
  • Output: so many people are hung up on hours worked. Whilst we owe it to ourselves not to over-do things, or for employers to take advantage of employees, much of today’s work should be output-driven. How effective were you? Did you manage to achieve x and y, that contribute towards your personal goals (which ideally contribute towards the company’s goals)? It’s not about the 9-5 (8-6, or 6-8), it’s about delivery!

For managers, it can be difficult when you have a remote team. I struggle sometimes but in some ways, I’m fortunate that I have a relatively senior group of Architects working with me, who are (or at least should be) self-starters. If they don’t deliver, I will hear soon enough, but then I’ll have another problem in that I’ll have a dissatisfied client. So, ideally, I need to make sure that the team understands what’s expected of them.

My approach is this:

  • Trust: everyone I work with is trusted to “get on with it”. That’s not to say I don’t check in on them but there is a huge reliance on people doing what they have been asked to.
  • Empowerment: I don’t micro-manage. I’ll make sure that we have regular 1:1s, and cross-team communications (see below) but everyone in the team is empowered to make decisions. I’ll be there to support them if they want guidance but I need people to make their own choices too… which means I need to be ready to support them if those choices don’t work out the way they, or I, might have liked.
  • Clear guidance: of course, I have a manager too. And he reports to our Directors. Things get passed down. I may not like everything that “passes my desk” but sometimes you just need to get on with it. Communication to my team about what’s required/expected, why it’s needed and when it needs to be done by is vitally important.
  • Communication: related to the above but making sure there are regular team calls. Even once a fortnight for 45 minutes (because we always over-ran 30 minute meetings and an hour is too long) is an opportunity to disseminate key messages and for everyone to share recent experiences. Every few months we’ll meet face to face for a day and work on something that gets added value from being together – but that’s not really remote working (or advisable in the current climate).
  • Understanding my limits: I’m a practicing Consultant as well as a people manager, so I’m not always there (I also work part-time). This goes hand in hand with the empowerment I mentioned above.
  • Tools: everything I’ve written in this post up to now has been about the people but technology can play its part too. I use Microsoft Teams extensively (you may have another choice – email, Slack, SharePoint, Yammer, or something else):
    • I work in the open – on Teams. Email in an Inbox is hidden whereas a post on Teams is visible to all who may have an interest.
    • When I’m not at work, my out of office reply directs people to post on Teams, where another member of the team might be able to help them.
    • Voice and video calls – Teams. Even my mobile phone is directed to a phone number that ends up in Teams.
    • When I set up a project, I use a Wiki in Teams to set out what is required of people – useful information about the client; what they expect from us; what the project is delivering (and how).
    • When I want to get a message out to a team (either hierarchical or virtual/project), I use Teams to communicate (hopefully clearly).

I’m not sure how successful I am – maybe my team can tell me – but it’s an approach that seems to work reasonably well so far. Hopefully it’s of some use to other people.

If you’re a manager, struggling with managing a remote team – or if you have some advice/guidance to share – please leave a comment below.

Further reading

(The up-to-date version of the Remote Work Survival Kit can always be found in Google Docs, with most of the content on the website). A PDF extract is created periodically.

Office updates in an unfamiliar language

A few weeks ago, I spotted this, when I went to apply updates to Office 365 ProPlus on my work laptop:

It had me confused, but Colin Powers (@iamcolpow) pointed me to a Microsoft Community forum post with a potential fix.

I changed the language order in my Office settings so that English was the first option after Match Windows. Whatever was causing Windows to fall back down the list then went to English rather than Arabic.

Office Language Preferences as originally set
Office Language Preferences after the change

Now I can read the dialogue boxes on my Office updates!

Microsoft Online Services: tenants, subscriptions and domain names

I often come across confusion with clients trying to understand the differences between tenants, subscriptions and domain names when deploying Microsoft services. This post attempts to clear up some misunderstandings and to – hopefully – make things a little clearer.

Each organisation has a Microsoft Online Services tenant which has a unique DNS name in the format organisationname.onmicrosoft.com. This is unique to the tenant and cannot be changed. Of course, a company can establish multiple organisations, each with its own tenant but these will always be independent of one another and need to be managed separately.

It’s important to remember that each tenant has a single Azure Active Directory (Azure AD). There is a 1:1 relationship between the Azure AD and the tenant. The Azure AD directory uses a unique tenant ID, represented in GUID format. Azure AD can be synchronised with an existing on premises Active Directory Domain Services (AD DS) directory using the Azure AD Connect software.

Multiple service offerings (services) can be deployed into the tenant: Office 365; Intune; Dynamics 365; Azure. Some of these services support multiple subscriptions that may be deployed for several reasons, including separation of administrative control. Quoting from the Microsoft documentation:

“An Azure subscription has a trust relationship with Azure Active Directory (Azure AD). A subscription trusts Azure AD to authenticate users, services, and devices.

Multiple subscriptions can trust the same Azure AD directory. Each subscription can only trust a single directory.”

Associate or add an Azure subscription to your Azure Active Directory tenant

Multiple custom (DNS) domain names can be applied to services – so mycompany.com, mycompany.co.uk and myoldcompanyname.com could all be directed to the same services – but there is still a limit of one tenant name per tenant.

Further reading

Subscriptions, licenses, accounts, and tenants for Microsoft’s cloud offerings.

Digital transformation – it’s not about the technology

For the last few years, every IT organisation has been talking about “digital”. Digital this, digital that. “Digital transformation” has become a buzzword (OK, two words), just like “Cloud” in 2010 or “Big Data” a few years later.

But what do we mean when we talk about digital transformation? It certainly caused a stir in my recent team meeting.

To answer that, let’s look at three forms of transformation – Cloud, Business and Digital – and how they build on each other:

  • Cloud transformation is about tools and technology. It’s often IT-led (though it should involve business stakeholders too) and so it’s the domain where us techies are most happy. Often, it involves creating new platforms, using cloud services – Azure, Amazon Web Services, Office 365, G-Suite, Dynamics 365, Salesforce. But cloud transformation is just an enabler. In order to deliver value, business transformation is required.
  • Business transformation is about re-engineering internal processes to better serve the needs of the business and improve the way in which services are delivered. It’s about driving efficiencies and delivering better outcomes, but still focused on the way that a business (or other organisation) operates. Business transformation should be business-led but will often (but not always) demand new platforms and services from IT – which leads back to cloud transformation.
  • Digital transformation relates to the external interface with clients/customers/citizens/students. This is the domain of disruptive innovation. Evolve or become extinct. It’s often spoken about in terms of channel shifting – getting people to use digital services in place of older, more laborious alternatives but, ideally, its complementary, rather than replacing existing methods (because otherwise we run the risk of digital exclusion). Importantly though, it’s no good having digital transformation without business transformation and, like business transformation, digital transformation should be business-led.
Cloud, Business and Digital Transformation

Let’s take an example of digital transformation: when my bins were missed from a council waste collection, I logged a call via my local council’s website, which created an incident in a case management system and within an hour or so the bin lorry was back in my street because the driver had been alerted to the missed collection on his in-cab display. The service was excellent (OK, there was a mistake but it was quickly dealt with), the resolution was effective, and it was enabled using digital technologies.

But here’s another example. When I was held up in the neighbouring county by some defective temporary traffic lights at some roadworks, the local authority‘s out of hours phone service wanted me to channel shift to the website (not appropriate when driving a car). It also couldn’t cope with my problem – the out of hours phone service ended up at a random mobile voice mailbox. In the end, I called the Police on 101 (non-emergency) when really some basic business processes needed to be fixed. That shouldn’t necessarily require a technical solution but digital transformation of external services does rely on effective internal processes. Otherwise, what you have created is a shiny new approach on the outside, with the same clunky processes internally.

Hopefully this post has helped to describe the differences between cloud, business and digital transformation. But also consider this… digital transformation relies on business transformation – but not all business transformation needs new IT… the important thing is to identify the challenges being faced, the opportunities to innovate, and only then consider the platforms that are needed in order to move forwards.

Workaround for when Microsoft Edge Beta (v79) fails to load pages

Last week, following Microsoft’s announcement at Ignite that the (Chromium-based) Edge was nearing completion, ready for launch on 15 January 2020, my browser updated itself to the final beta – version 79.0.309.14. And it broke.

I found the original Microsoft Edge to be unreliable and for many years my default browser was Google Chrome. When my latest work PC came without Chrome, rather than ask an administrator to install Chrome for me I installed the Edge beta, which had been rock solid until this latest update.

Various people suggested a later build might fix it (my PC says Edge is up to date, but there will be faster deployment rings than the one I’m on) but the real fix came from my colleague Thom McKiernan (@thommck) who suggested adding the -no-sandbox switch to the Edge Beta shortcut:

"C:\Users\mark\AppData\Local\Microsoft\Edge Beta\Application\msedge.exe" -no-sandbox

The Edge beta complains that “You’re using an unsupported command-line flag –no-sandbox. This poses stability and security risks.” but all my tabs load without issue now. Let’s see if this is properly fixed next time my browser updates…

[Updated 14/11/2019: this post originally indicated that the use of the -no-sandbox switch was a fix for the issue. It’s not – it should be seen as a workaround and used with caution until this problem is properly resolved.]

A toolkit for cyclists: saving money on basic maintenance

Anyone who regularly reads my blog or follows me on Twitter will know that cycling (or being a “cyclist’s Dad”) is one of my major activities. I also commute by bike where practical – I have a Brompton folding bike, which has caused some amusement in the office (think BBC W1A) – though I mostly work from home and commuting by bike up two flights of stairs might be a bit tricky…

Image result for w1a brompton

With more bikes in the family than I care to admit (I have at least 5 at the moment and my eldest son’s n+1 count is increasing too), I’ve been trying to do more of the servicing myself (or with my son) to reduce costs. This has been spurred on by a few things including:

  • I needed to call on help from others to swap pedals at a race recently. I had the skills but not the tools. I then bought the right tools…
  • I discovered that drive chains are supposed to be shiny, not grimy and that they perform much better when you know how to remove and degrease the chain, cassette, chainrings, etc. A chain cleaner is great, but if the other components are still covered in gunk then the chain quickly turns black again.
  • I also had to remove the cranks and bottom bracket on a bike as part of another project so the bike-specific toolkit has been growing.
  • My son was able to use his new knowledge and my tools to swap components between frames.

Luckily, it needn’t be expensive. Much as I would like to have a wall of Park Tool tools, that’s a stretch too far for my wallet, so this is what’s in the toolkit so far:

BTW, almost every task I’ve needed to complete has had a short video available on YouTube to tell me how to do it. GCN is consistently good.

Note: Wiggle rejected me for their affiliate marketing scheme, so there is no financial incentive for me if you click the links above – they are purely for the convenience of readers!

Why landscaping my garden was just like an IT project

Over the last few weeks, I’ve been redeveloping the garden at home and the whole experience has made me reflect on the way that IT projects are often delivered…

Who’s been developing the garden?

Well, when I say “I’ve”, that may be pushing it slightly… I paid other people to do significant chunks of it but that’s the first similarity. I started work and quickly realised that it would a) take me a long time and b) involve the use of tools and machinery that I don’t have so I needed to engage specialist assistance.

This is just like my customers who have something in mind that aligns with their strategic goals and objectives but they lack the resources or experience and so look externally for assistance.

Getting some quotes

Having decided that I needed help, the next step was to get some idea of what it might cost. After speaking to a selection of potential contractors, I knew that my budget was hopelessly optimistic and I’d either need to scale the plans back or dig deeper into my pockets.

Again, just as in my professional world, everyone has their idea of what something might cost but sometimes that’s just not realistic.

How quickly can we start?

Having agreed on a price and a scope, the next question was how soon? Actually, for me this was pretty good: 2 weeks to start and it should take about 2 weeks. Great. Let’s do this.

In my professional life, I come across procurement periods that can run for months but then the project must happen right now. It’s not realistic to expect a professional services company to have people waiting around for your order (if they do, then maybe ask why). Expect to take a few weeks to engage.

The flurry of activity

The big day came. My drive was filled up with a skip and several tons of aggregate, sand and cement. Materials came and went. People were on site. Earth was moved. Things happened.

It always feels good when something becomes real. Progress on any project is good, especially after waiting a while to get going. But don’t expect a smooth ride the whole way…

The first sprint delivered

Whilst my family took a break, work continued at home. Drainage was installed, wooden sleepers were built up into steps and walls and a stone patio was laid.

That sounds like a successful first sprint. Step one completed, demonstrable progress and a milestone payment due.

Slippage

But hang on, we’re already 9 days into a 2-week project and there are still many items on the backlog. The weather had either been too wet or too hot. And there were delays from the skip hire company that led to inefficiencies in removing materials from the site. We were making progress but the timeline (and so the budget) was starting to slip

Many projects will have unforeseen issues. That’s life. Managing them is what makes the difference. And the key to that is communication between client and supplier.

Scope creep

What about the electrics? I had already spotted that they were missing from the quote but there was armoured cabling to be buried before the garden was completed. And that meant bringing in another contractor. Thankfully, he had worked with the landscaping team before, so he could fit around them without delay (at least for the first fix).

More contractors mean dependencies. Even when teams have worked together previously, there will be some complications to work out. Again, good project management helps.

When will this end? And what about the budget?

Sprint 2 was more of a jog. There was still earth to move, a pergola to be built, a concrete base for my “man cave” to be poured and turf to be laid. Time was ticking – the gap I’d left between the landscaping and the project work packages I was due to deliver myself (log cabin construction, garden furniture arrival) was shrinking – and with work taking place on a time and materials basis the budget was stretched.

Time for a meeting. Let’s agree what’s still left to do and how long it will take, lock down the budget and push towards completion.

I have to admit this was frustrating. But I’ve seen it in my world of IT too. Want a fixed price? Be prepared to pay more as the risk taken on by the organisation delivering the work needs to be factored in. Time and materials can work both ways (finish early, pay less – or to project over-runs) and after a while, patience will wear thin. Again, communication is key. Establish what’s left to do in the agreed scope, nail down the timescales and push for completion.

And as for the other work packages, very few projects exist in isolation. There’s nearly always an entire programme of works to deliver to meet the stated goals/objectives. Some realism is required about how dependencies will align because if you expect the various work packages to run on from each other, you should be prepared for the occasional disappointment.

Phase 1 complete

Three and a bit weeks after work started, phase 1 was complete. And it looked great. All the pain was worthwhile. Just in time to start construction of the log cabin on that base.

phase 1 of the garden completed

60% over time, 7% over budget. Not wonderful stats but also not atypical.

Postscript: Phase 2 delayed

The log cabin arrived on time but was damaged on delivery. And it would take 2 weeks for a replacement roof apex to be manufactured and shipped. With most of the materials on-site though, it needed to be built as far as it could be and then wrapped up to protect it from the elements.

Sometimes, even the best planning can come undone. Supplier contracts might help with speedy resolution of issues but sometimes there’s nothing to be done except to sit and wait…

Using Microsoft Bookings to manage device rollouts

Microsoft Bookings, showing available services

End-user computing (EUC) refreshes can place significant logistical challenges on an organisation. Whilst technologies like Windows 10 Autopilot will take us to a place where users can self-provision, often there’s more involved and some training is required to help users to adopt the technology (and potentially associated business changes).

Over the last few years, I’ve worked on projects that have used a variety of systems to manage the allocation of training/handover sessions to people but they’ve always been lacking in some way. We’ve tried using a PowerApps app, and a SharePoint calendar extension but then Microsoft made their Bookings app available on Office 365 Enterprise subscriptions (it was previously only available for Business subscriptions).

Microsoft Bookings is designed for small businesses and the example given in the Microsoft documentation is a pet grooming parlour. You could equally apply the app to other scenarios though: a hairdressing salon; bike repairs; or IT Services.

I can’t see Microsoft Bookings on my tenant!

That’s because, by default, it’s not there for Enterprise customers. Most of my customers use an E3 or E5 subscription and I was able to successfully test on a trial E3 tenant. My E1 was no good though…

The process to add the Business Apps (free) – including Bookings – to an Enterprise tenant will depend on whether it’s Credit Card (PAYG), Enterprise Agreement (EA) or Cloud Solutions Provider (CSP) licenced but it’s fully documented by Microsoft. When I enabled it on my test tenant, I received an invoice for £0.00.

So, how do I configure Microsoft Bookings?

The app is built around a calendar on a website, with a number of services and assigned staff. Each “staff member” needs to have a valid email address but they don’t need to be a real person – all of the email messages could be directed to a single mailbox, which also reduces the number of licences needed to operate the solution.

It took some thinking about how to do this for my End User Device Handover scenario but I set up:

  • A calendar for the project.
  • A service for the handover sessions. Use this to control when services are provided (e.g. available times and staff).
  • A number of dummy “staff” for the number of slots in each session (e.g. 10 people in each session, 10 slots so 10 “staff”).
Microsoft Bookings, showing confirmation of booked service Microsoft Bookings, calendar view

Once all of the staff available for a session are booked (i.e. all of the slots for a session are full), it’s no longer offered in the calendar. There’s no mechanism for preventing multiple/duplicate bookings but a simple manual check to export a .TSV file with all of the bookings each day will allow those to be identified and remediated.

(Incidentally, Excel wouldn’t open a TSV file for me. What I could do though was open the file in Notepad and copy/paste it to Excel, for sorting and identification of multiple bookings from the same email address.)

Further reading

These blog posts are a couple of years old now but helped a lot: