This month I received an exciting email from Microsoft that I was re-awarded for a fourth year now for the 2022 – 2023 Microsoft Most Valuable (MVP) award in Azure. Receiving the Microsoft MVP award is both a humbling and exciting experience. It means you’re a member of a select group of experts of just over 3,000 MVPs from around the world, but I like to think of it as doing something I’m passionate about with other like-minded individuals, having fun and always having something new to learn and share with the community.
“The Microsoft MVP Award is an annual award that recognizes exceptional technology community leaders worldwide who actively share their high-quality, real-world expertise with users and Microsoft. All of us at Microsoft recognize and appreciate Callon’s extraordinary contributions and want to take this opportunity to share our appreciation with you.” – The Microsoft Most Valuable Professional (MVP) Award Team Microsoft Corporation
Since becoming a Microsoft MVP, I’ve learned a lot about the community and continued to share my passion, knowledge and experience within the community around Architecture and Development in Azure, Serverless, API Management, and DevOps technologies. I also keep a keen eye on what’s happening on the data technologies like Cosmos DB, Azure SQL, Synapse, and Purview.
Pictures of MVP Events
First MVP Summit, Microsoft Redmond CampusMicrosoft Ignite | The Tour TorontoMicrosoft Ignite | The Tour Toronto, speaker preparation
If you’re interested in learning about the Microsoft MVP program and seeing what it takes to become a Microsoft MVP, or how to get awarded, I encourage you to take a look at the Microsoft MVP website and also the following article on “How to become a Microsoft MVP” where they explain some of the details of the program.
To wrap up this post I would like to congratulate all the other newly awarded or renewed Microsoft MVPs all over the world! You truly are an amazing community and I’m truly humbled and honoured to be part of this group.
Happy New Year everyone! To kick off the new year I’d like to share with you what happened in 2021, what it meant to me, and where I plan on going in 2022.
So let’s kick off my 2021 year in review!
Year in stats 2021
Twitter: 1284 followers
LinkedIn: 587 followers
GitHub: 25 followers, 75 repositories
Blog (all time): 149.7K views and 116.3K visitors
Medium: 163 followers
YouTube: 0 subscribers (just opened an account in December)
What I achieved in 2021
2021 was a busy year. I was fortunate enough to keep busy on a large on-prem migration to Azure while also working on numerous app modernization projects in .NET working with Azure Functions, Azure App Service, Azure Cosmos DB, Azure App Configuration, Azure Key Vault, Azure Storage, Azure Cache for Redis, Azure Static Web Apps, Azure Logic Apps, Azure API Management, Azure Front Door, Azure CDN, Azure Data Factory, Azure Cognitive Services, and Application Insights / Monitoring. It was like being a kid in a candy shop. It’s amazing what you can build with these services, each of them having their appropriate place in the larger picture/architecture.
Here is a short summary of some of my highlights:
Microsoft MVP (Azure) renewed for a 4th consecutive year
Spoke virtually across the globe
Local .NET and Azure user groups
Best of Build 2021 Canadian Edition (Microsoft)
Global Azure 2021 bootcamp (Microsoft)
Roadmap for MVP Series Event about Selecting an MVP hosting / Cloud Computing Platform (Azure) for Silicon Halton
Taught an Azure Workshop for Light House Labs (Microsoft)
Submitted a video to the Festive Tech Calendar
Mentored numerous people
I was fortunate to be able to take further training in Azure related material
Worked on successful cloud a migration project
Worked on numerous app modernization projects
Started a YouTube channel in December
Hosted the first live YouTube session for Canada’s Technology Triangle User Group
This year I continued to work from home and I like it as I get to spend more time with my family and with 3 young kids, I get to see more of them during the day and have those special moments that I would have otherwise missed had I been in the office. On the other hand, I do miss the social setting and engaging with my co-workers in person, and it felt like I was living in Teams for half my day.
What didn’t happen
Certifications. Once again I had planned out 2 Azure certifications for the year but ended up pushing to 2022 due to priorities with clients and just trying to deal with another year of Covid.
Blogging. This year I focused on learning more Azure and sharing that with the community with virtual events. As a result my blogging was side lined. There were numerous days where I wanted to write about something but I writers block in transitioning the idea to a post. Good thing is I have a bagful of ideas now to write about in 2022.
What’s to come in 2022
I see 2022 as a year of exciting opportunities and light on the horizon with regards to the global pandemic (Covid-19) coming to an end (hey I can dream). I’m looking forward to finally adding some Azure certifications and continuing to expand my knowledge deeper into Azure. I will continue to speak at user groups and conferences. Speaking of which I’ll be doing monthly YouTube live sessions for Canada’s Technology Triangle User Group that I run and I’d like to start doing my own YouTube videos. With regards to presentations and user groups and conferences, I already have a few speaking engagements lined up for January, February and March, and I will be submitting a few call for speaker topics for the Global Azure Bootcamp (Mississauga) in April and hopefully, we do another Best of Build 22 Canadian Edition later in June.
I had a lot of fun teaching Azure workshops last year that I’m going to look for a few more to do this year. There is always something new to learn in Azure and sharing that with the community and helping organizations better leverage the cloud is a very fulfilling experience.
I already know that there will be no in-person Microsoft MVP Summit this year and that it will be online and virtual again, so I’m excited for that event to connect with the MVP community and to learn what I can from the Azure product teams. So far I’ve only been able to attend one in-person summit and I’m hoping my Microsoft MVP is renewed again so that I have another opportunity in 2023. Hopefully, the world is in a much better place for in-person events like this to resume again.
I doubt there will be a Microsoft Build or Ignite conference this year in person, but that would be a conference I would look forward to attending in 2023 if possible. Only time will tell.
I also want to take some vacation to Mexico, but that might be something for 2023, well see.
Happy New Year, and may you all have a fantastic year! Stay safe and I look forward to connecting with you at some point.
This month I received an exciting email from Microsoft that I was re-awarded for a fourth year now for the 2021 – 2022 Microsoft Most Valuable (MVP) award in Azure. Receiving the Microsoft MVP award is both a humbling and an exciting experience. It means you’re a member of a select group of experts of just over 3,000 MVPs from around the world, but I like to think of it as doing something I’m passionate about with other like minded individuals, having fun and always having something new to learn and share with the community.
The Microsoft MVP Award is an annual award that recognizes exceptional technology community leaders worldwide who actively share their high quality, real world expertise with users and Microsoft. All of us at Microsoft recognize and appreciate Callon’s extraordinary contributions and want to take this opportunity to share our appreciation with you.
The Microsoft Most Valuable Professional (MVP) Award Team Microsoft Corporation
Since becoming a Microsoft MVP, I’ve learned a lot about the community and continued to share my passion, knowledge and experience within the community around Architecture and Development in Azure, Serverless, and DevOps technologies. I also keep a keen eye on what’s happening on the data technologies like Cosmos DB and Azure SQL.
Once again the MVP Summit back in March was virtual due to COVID-19, but with a little luck I’m hoping for an in person experience in 2022. This is an amazing experience to connect with the product teams and MVPs from around the world – even if it was virtually this year.
If you’re interested in learning about the Microsoft MVP program and seeing what it takes to become a Microsoft MVP, or how to get awarded, I encourage you to take a look at the Microsoft MVP website and also the following article on “How to become a Microsoft MVP” where they explain some of the details of the program.
To wrap up this post I would like to congratulate all the other newly awarded, or renewed Microsoft MVP’s all over the world! You truly are an amazing community and I’m truly humbled and honored to be part of this group.
Happy New Year everyone! To kick off the new year I’d like to share with you what happened in 2020, what it meant to me, and where I plan on going in 2021.
Events
Microsoft Ignite Tour – Toronto
I spoke with my good friend Ehsan on Windows IoT and Azure.
My family tagged along with me and we got a hotel downtown Toronto. The kids always love doing this and they were nice and close had I needed to go see help.
Got to see lots of friends at the event, in the speaker room, and at an Microsoft MVP social dinner.
Was planning on attending my second Microsoft MVP Summit in Redmond, Seattle…then the lockdown and cancellation happened with respect to COVID-19. The summit was cancelled from an in person event to an online virtual summit. I was sad to not travel out to Redmond and be on the Microsoft campus but was thrilled that they moved it online and I absorbed every minute of it. It’s truly incredible to be part of an amazing community of people that have a passion for this stuff and you get to interact with the various product teams from Microsoft and hear about what’s coming.
Presented at two Global Azure events, one in Toronto, Canada and the other was in the UK.
Because of COVID-19, all social gatherings and community events stopped and moved online. I was thankful to keep busy and continue to present at various meetups around the GTA.
Speaking of meetups I took on the organizer and user group leader role for CTTDNUG in Kitchener, Ontario.
Other
Like most of you, I’ve been working from home since March. I like it as I get to spend more time with my family and with 3 young kids, I get to see more of them during the day and have those special moments that I would have otherwise missed had I been in the office. On the other hand, I do miss the social setting and engaging with my co-workers in person. It seems like now I spend half my day on Teams calls.
What didn’t happen
2020 was an interesting year that really went sideways and threw off the plans I had. I didn’t get around to working on my certifications, but funny enough I managed to start two colleagues on their own Azure certification path.
I missed out on a lot of blogging in the second half of the year that I had planned to do. I was and still am working on a large Azure migration for a client. I’m helping them move to Azure API Management, building new applications with Azure Functions, Cosmos DB, Storage, Event Grid and so many other Azure services. Plus there is the on-prem to Azure migration for the data center and consolidating their CI/CD processes into Azure DevOps. I had started on a number of these posts but the reality is working from home is different and it truly requires a good plan for work/life balance. I think I spent most of the second half of the year figuring that out.
What’s to come in 2021
I see 2021 as a year of exciting opportunities and challenges. I will be looking to finally tale some Azure certifications and continue to expand my knowledge deeper into Azure. I will continue to speak at user groups and conferences. I already have a few speaking engagements lined up for January, February and March. My first conference to submit a talk on will be for the Global Azure Bootcamp (Mississauga) in April.
There will be no in-person Microsoft MVP Summit this year but it will be online and virtual again, so I’m excited for that event to connect with the MVP community and to learn what I can from the Azure product teams.
I doubt there will be a Microsoft Build or Ignite conference this year in person, but that would be a conference I would look forward to attending in 2022 if possible. Only time will tell.
Happy New Year, and may you all have a fantastic year!
During my Global Azure Virtual 2020 live stream on Bringing serverless into the Enterprise, I had a few demo glitches. An inside joke for those that do presentations and demos is that the demo gods are either with you or against you. Some might say I didn’t offer up a satisfying sacrifice to the demo gods. I would argue and say I did but I feel it’s important to reflect and learn what went wrong and how I can be better prepared for the future by learning from our mistakes.
Prelude
So knowing that I presented on this topic for the Global Azure 2020 Virtual event and had some failed demos, I wanted to explain what happned and why and how to be better prepared for a future talk and hopefully it’s a lesson that you can learn from for your own talks, presentations or just development efforts.
Back in February 2020 I had submitted a few topics for the Global Azure 2020 event. At this point in time COVID-19 was going on but the world hadn’t shut down like it is today and the Global Azure 2020 event was still going to happen. In March I was notified that my topic was selected and I had about 6 weeks to prepare. Fast forward to mid March and everything was starting to be cancelled or made virtual. In the case of our local Global Azure 2020 event it was cancelled, so I didn’t work on my presentation. I was invited to participate in another Global Azure 2020 Virtual Community event in UK and Ireland so I focused on that content.
About 2 weeks prior to the Global Azure 2020 event, I was notified we would be making our local event virtual and I had to confirm if I still wanted to participate. At this point I was not prepared and my wife ended up signing up for a course over the weekend prior to the event – which left me with 3 kids (10 months, 4 yrs and 7 yrs) to manage for 10 hours each day over a 3 day weekend. My initial thought was to excuse myself from the event, but I really wanted to participate and with COVID-19 and everything halted, I found it was important to maintain that community connection even if it was a virtual event.
So this took me back to my college days of doing school, working and squeezing in a project over a tight deadline – not fun but with coffee as my partner, I got the kids to bed and started putting in a couple late nights to get it all done…or so I thought.
With my talk this year being on bringing serverless into the Enterprise, I focused on Azure Functions and my demos were on the following topics to illustrate common enterprise use cases:
Using PowerShell in a Azure Function for automation tasks
Deploy code to Azure using GitHub Actions
Avoiding cold start and latency with Premium Functions
Monitoring logs for your Functions
My PowerShell Azure Function Failure
My first failed demo was something I knew was being problematic going into the talk but I felt it was important to still talk about and I had screenshots of a working state from previous attempts so felt good to proceed. The demo was creating an Azure Function with PowerShell. The issue was that no matter what PowerShell command I tried to run, I kept getting errors that it could not be run successful as shown below and no matter what I did I kept getting an error that the subscription could not be set.
Because you never know if something will go off the edge during a demo, you should always be prepared to go ‘offline’. By that I mean show screenshots of what you were trying to do and the expected outcome. You could even go so far as recording your demo and then switching to that during your talk. I’ve never done this but I’ve heard some people have and it worked perfectly. The audience had no idea the demo was broken and they were able to convey their message.
That might be a bit extreme, but I usually do take some screenshots of the Azure portal as part of my notes I use to prepare the presentation, so I know I can always fall back to that if necessary and in this case that is what I did. It’s unfortunate I could not show the feature working as I intended, but I let the audience know and continue to roll along.
My Premium Function Failure
This was my favorite demo I prepared for the talk and it involved creating an Azure Function and hosting it on the Premium plan and then comparing that to the Consumption plan to show scale, latency and that there is no more cold start in Azure Functions with the Premium plan.
When I prepared this demo it was before I worked on the GitHub Actions demo – which would have come prior to this in my presentation. The order of the demos plays an important role in why this failed so I’ll come back to this later.
In order to show the cold start and latency issues with the Azure Functions Consumption plan and how the Premium plan avoids this I was using a load testing site called Loader.io. This tool required that the host URL be verified with a special token that had to be returned from the site. In order to map my Azure Function result to the expected URL that loader.io wanted I needed to configure and Azure Function Proxy.
When I was setting up the demo I first setup the proxy in the portal, and then I moved it so a proxies.json file in the Visual Studio solution as shown here
When I was testing this demo I was able to verify the token and use loader.io to load test my consumption and premium functions without issue. After getting this demo done I moved on to the GitHub Action demo and took a copy of the code and used that for the CI/CD to push it up into Azure and that demo worked without issue. When I tested the automated deployment, I just tested the function and not the load testing.
You may have an idea of what caused the failed demo, but if not it’s related to the proxies.json file. When I copied the file into my solution I forgot to go to the properties and mark it as content to be deployed. So in the GitHub Actions demo that took place prior to the load testing demo, it would have deployed a fresh copy and removed the Proxy I had originally setup in the portal. This meant that if I needed to validate the token from loader.io, I wouldn’t be able to and thus I saw the following error in my demo and was a bit surprised.
I didn’t have or want to take the time to live debug to find out what was wrong as I feared I would go down a rabbit hole and totally derail my talk. So I moved on and explained as best as I could what would have happened…again I have screenshots but it wasn’t as cool as showing it live.
Testing, rehearse and what went wrong
When I look back at that presentation, I had under 2 weeks to prepare and I was still working on the talk the morning of to finish up a few areas. I would not have left things to the last minute as I did but things were very fluid in Feb/Mar with COVID-19 and I wanted to put my best effort in for the community and felt I could still manage it but under not so ideal circumstances.
I worked on each demo individually as they weren’t really related except for the GitHub Action demo. I should have done that first because I would have caught the token verification issue right away due to the missing proxy.
Speaking of token verification, it would seem its valid for 24 hours and as I got close to the talk I didn’t want to warm up my functions as I wanted them in a cold state. So not testing them right before my talk I missed out on seeing that the token just expired, which would have shown me that the proxy was missing.
Due to the time crunch when I rehearsed I didn’t do my demos inline with the presentation, I did them separately. Again had I done the demos with the presentation I would have potentially caught the expired token and missing proxy. It’s important to do an end to end test and walk through of the presentation material regardless how comfortable you feel you are.
In retrospect I should have gone back and tried to troubleshoot this issue at the end of my talk. As soon as I looked at the function I noticed the proxy was missing and I was able to add it quickly which would have looked like this…
This would have only taken me 5 minutes to troubleshoot and fix which would have allowed me to show the real demo. All in all the talk went well and I got some really good feedback. No one complained about the broken demos and I mentioned that I would follow up with the blog post to show what was wrong and how I fixed it. I was a bit disappointed that I couldn’t show this demo live as its pretty awesome to see, so look for a future blog post where I’ll setup a Premium function and throw some load at it – maybe I’ll even record it and post to YouTube.
I hope you enjoyed this post and found something useful. I find it’s important to acknowledge when we do run into issues and how we solve them.
This week I received notification from Microsoft that I was re-awarded for a second year now the 2019-2020 Microsoft Most Valuable Professional (MVP) award in Azure.
Since becoming a Microsoft MVP, I’ve learned a lot about the community and continued to share my passion, knowledge and experience within the community around Architecture and Development in Azure, DevOps and Serverless technologies. I also keep a keen eye on what’s happening on the data technologies like Cosmos DB and Azure SQL.
Receiving the Microsoft MVP award is a humbling and exciting experience and it means you’re a member of this “elite” group of roughly 3000 Microsoft MVPs from around the world.
It is with great honor to receive news today that I received my 2nd year in a row for the Microsoft MVP Award in Azure category. What a pleasure to receive this news on Canada Day! Thank you Microsoft and the community and I look forward to another year of contributions #MVPBuzzpic.twitter.com/Wc7Ujbv57a
— Callon Campbell 🇨🇦 MVP (@flying_maverick) July 2, 2019
Earlier this year I attended my first MVP Global Summit and it was an amazing experience. I got to meet so many people in person that I only knew from online experiences. I also got to meet and interact with the various product teams and provide valuable feedback, and see what’s coming on the roadmap. I’m looking forward to attending next years MVP Global Summit and connecting with fellow MVPs.
If you’re interested in learning about the Microsoft MVP program and seeing what it takes to become a Microsoft MVP, or how to get awarded, I encourage you to take a look at the Microsoft MVP website and also the following article on “How to become a Microsoft MVP” where they explain some of the details of the program.
To wrap up this post I would like to congratulate all the other newly awarded, or renewed Microsoft MVP’s all over the world! You truly are an amazing community and I’m truly humbled to be part of this community.
Came across a great article about speaking at tech conferences. Check it out, it’s worth the read and who knows you might find yourself presenting.
You might be familiar with the following scenario.
You’ve been a developer for a while and you’ve learned quite a lot along the way. Travelled to a couple of tech conferences, saw a number of tech talks and one day you think – “I can probably do that”. This is what I personally thought at the beginning of 2017.
The good news is that this is true – you CAN do that.
Happy New Year everyone! To kick off the new year I’d like share with you what happened in 2018, what it meant to me, and where I plan on going in 2019.
I started 2018 off on the home stretch towards my first Microsoft MVP Award for the Azure award category. I was getting close and my mentor Sim said I needed to get out into the community and do more speaking engagements in. In 2017 I started to speak at local user groups when I started on my Microsoft MVP journey. So in 2018 I needed to go all in with lining up more speaking engagements, and in total for the year I managed to do 13 technical talks that covered all things Azure, Azure DevOps, Serverless, Azure Functions, Logic Apps, Event Grid messaging and finally a little AI with Microsoft Cognitive Services. I also participated at not one but two Global Azure Bootcamps (Mississauga and Kitchener/Waterloo). I won’t lie, it was tiring sometimes and in one month I squeezed in 3 talks. However it was a lot of fun to work on this part of my professional development, and I made a lot of new friends and expanded my professional network and I learned a lot!
I also got to attend my first Microsoft Build conference. This was a conference I’ve always watched from my desk at work and/or in the evenings at home to catch up on the recorded sessions, and I’ve always wanted to go their in person and take in the experience first hand. Sure you can watch it for free from home or at work, but its the experience and the people you get to meet in person that make all the difference. This year work decided to send me to Build and it was a dream come true. I travelled to Seattle with my son and met up with my Dad. While I was at the Build conference, my dad and son got to spend some quality time together and the three of us got to have fun in the evenings. After taking in the keynotes I went directly to the technology hall and engaged with the product teams to soak in as much as I could. I got to talk to my “super heroes”…the people I’ve always looked up to and admired for their passion in technology, who work at Microsoft and love what they do, and are just cool and down to earth.
Crunching the Numbers
I published 69 posts and have at least 11 drafts that never made it out.
I had 34,232 views by 26,430 visitors.
My most popular day for views was Wednesday and the most popular time was at 1:00 pm.
My top post was “How to Enable Dark Theme for SQL Server Management Studio”.
My top referrers were through Google search, Twitter and Medium.
My visitors came from all parts of the world. The top 10 in order were the United Stated, United Kingdom, India, Canada, Australia, Germany, Brazil, Netherlands, France, and Poland.
I also setup another blog on Medium where I re-blog my posts to expand my reach. What’s interesting is that Medium is a great place to write articles, and they bring in a lot of traffic. So my tip to anyone setting up a blog in 2019…take a look at Medium. You may still want to go and create your own website or host your blog on WordPress.com, but I would seriously consider incorporating Medium into your portfolio of services to use.
Top Moments of 2018
2018 was an awesome year for me and if I had to pick my top 3 moments for they year they would be…
Attending Microsoft Build conference and meeting people like Scott Hanselman.
Being awarded my first Microsoft MVP award in Azure and meeting other MVP’s.
This one is not technology related, but it was special for me. I purchased my first Harley-Davison, a 2018 Fat Boy 115th Anniversary Edition, Milwaukee-Eight 114 engine and I rode it almost every day from April to October – except for the rain days. What a beauty and I can’t wait to ride it in 2019!
What’s to come in 2019
I see 2019 as a year of exciting opportunities and challenges. I will be looking to take some Azure certifications and expanding my knowledge deeper into Azure. I will continue to speak at user groups and at least two conferences…the first is the Microsoft Ignite Tour in Toronto (Jan 10-11), and the the next will be at the Global Azure Bootcamp (Mississauga) in April. There is also a Global DevOps Bootcamp later in the year I will checkout and considering speaking at.
I’m also planning on attending the Microsoft MVP Summit in March, and somewhere between January 1 and March 31, I’ll be looking to do some more presentations around Azure and Azure DevOps towards my Microsoft MVP renewal that happens July 1.
Although I would love to attend the Microsoft Build conference this year if work would send me, I have other activities at that time so I will have to settle for watching it remotely. I will definitely look at going back sometime in the future, possible in 2020? Only time will tell.
Happy New Year, and may you all have a fantastic year!