What a year it has been!

Roughly one year ago, my “lifetime” employment with Microsoft came to an abrupt end after 23 years of service – and what a year it has been…

After publishing my layoff announcement on LinkedIn, which had approximately 1.1 mio views, 7200+ likes and 550+ comments, I decided that my biggest asset was probably my name and reputation. So I created my own company, Freddy.DK ApS, with the goal to stay active in the Business Central community as long as it is rewarding and fun.

And… it has definitely been both rewarding and fun… it is impossible to describe in a few words what I have done, but I will try to list some of the highlights.

Recharging in Greenland

While I truly see my layoff from Microsoft as a gift, it obviously also adds some tension about what’s next. My recommendation to anybody who experience things like this is to pull the plug and recharge, whether you are experiencing Greenland, walking the Camino or doing other adventures is not important, but doing something to clear your mind is truly worth it.

Directions for partners

Torben Kragelund (CEO in the Directions for Partners org) called me before I even announced the layoff and asked me whether I would consider coming and working for the Directions team. The Directions conferences and the Days Of Knowledge events has always been dear to my heart, so I didn’t hesitate in accepting.

And… it has been an amazing journey. From being “on the other side”, to being part of the team has been truly rewarding and you suddenly realize the amount of work needed to pull off conferences like Directions EMEA. I do think that the Directions conferences and the Days of Knowledge events are more important than ever and we need to ensure that we keep evolving these events for partners throughout the world to ensure that the community stays strong and relevant.

I truly believe that every Business Central professional should visit at least one of these events, being Directions, Days Of Knowledge or BC Days – the payback is instant.

Microsoft MVP

From Least Valuable Employee to Most Valuable Professional in less than a year:-)

Having worked with all the Business Central MVPs for a decade, I’ve grown to truly value and respect this group of people. Becoming an MVP and joining the group was a huge milestone for me and I will try to honor this badge to be eligible to many renewals.

BTW – before actually becoming an MVP, I received my MVP of the MVPs award from the Microsoft MVPs. That award is dear to my heart, THANKS!

AL-Go for GitHub

During my last years at Microsoft, I created a product called AL-Go for GitHub and as you might know, this product has now grown to become a central part of app development in Microsoft and with many partners.

While AL-Go for GitHub is plug-and-play, there are still a million settings and ways to setup AL-Go to match your needs. One of my first customers was Bunker Holding Group, who had a very large and impressive setup on Azure DevOps and wanted to move to AL-Go for GitHub. While this sounded easy, it came with a lot demands, requests and new ideas, which wasn’t part of AL-Go.

One of their problems was that their IT department didn’t want people to have admin rights, nor did they want to have people running Docker. This lead to the development of Fkh – Freddy’s Kubernetes Helper, which basically ensures bunker that they are ready when Microsoft stops supporting BcContainerHelper.

So, if you need help on implementing, maintaining or understanding AL-Go for GitHub, you probably won’t find anyone more qualified than me:-)

Fkh – Freddy’s Kubernetes Helper

As already mentioned, the idea behind Fkh (pronounced F-cage) came from my meetings with Bunker Holding to get over the love/hate relationship with Docker running on developer PCs.

Fkh (https://github.com/Freddy-DK/Fkh) is Open-Source and installs in your own Azure Subscription.

Fkh lets authorised GitHub users work with Business Central containers and perform developer tasks on demand — directly from VS Code, a CLI, a Web frontend, or GitHub Actions workflows.

A GitHub-authenticated Azure Function acts as the provisioning gate; Terraform manages all Azure/Kubernetes infrastructure, all Docker containers are running in a Kubernestes cluster, in which you will have a Linux node running MS SQL Server with a persisted drive ensuring that containers doesn’t loose their data and a Windows node running standard Business Central containers connecting to the Linux SQL Server.

Expect many more blog posts about this product…

AI

The impact on AI on the global workforce is/will be huge and it is important to look at AI from many angles. It is very common to look at AI from the angle that AI is going to take our jobs, but I truly believe that there is more to it than that.

AI will definitely destroy jobs, but it will also create jobs and it will redesign jobs. I do think however that tasks and not occupations are the real unit of impact and that the upskilling of the workforce is one of the most important things we can do. World Economic Forum says that 59% of the workforce will need upskilling and training in AI by 2030.

So, while many Tech companies are riding the front of the wave and developers are throwing themselves into agentic development and autonomous agents, many “normal” companies are left in the calm water, not knowing that whether the wave will hit them, thinking: “What now?”

This is one of the reasons why we started a collaboration with Knowledge Partner and are offering AI training for their customers, to get them up to speed on how to use the tools they already have access to, boost personal productivity, but primarily to get an understanding of AI and what it can do for you – in order to get people to think about AI and agents. Read more about this here: https://dalgaskompas.com/

We are planning to extend this collaboration to other partners; running AI training in their name for their customers.

Why Shibas?

One question I got from a lot of people is: “Freddy, why are you always displaying images of a fox?”

It is not a fox, it is a Shiba Inu and the simple reason is, that I am the happy owner of a Shiba Inu, which is probably the most intelligent dog breed that exists, Shiba Inus are famously independent, stubborn, and cat-like and there is a famous saying that goes: a dog may have a master; a Shiba has staff.

The future

The future for Freddy-DK ApS revolves around 4 major pillars:

  • Directions for partners conferences and events
  • Helping customer and partners with AL-Go for GitHub and Freddy’s Kubernetes Helper (Fkh)
  • AI Training and helping partners and customers with their challenges in this area.
  • Community contributions (blogging, vlogging, speaking, open-sourcing etc) to help keep the Business Central community strong and vibrant.

Enjoy

Freddy Kristiansen

All good things come to an end

After 23 engaging years at Microsoft – and having made it through at least 10 rounds of layoffs – my name was pulled from the hat, and I was asked to pack my things and leave.

That is obviously not entirely how it went, but it definitely is how it felt.

On the bright side, this gives me the chance to pursue a long-overdue dream: starting my own business and helping customers and partners in areas where I can truly make a difference.

Running my own business also gives me the flexibility to prioritize myself, my family and our overall wellbeing to a higher extent than has been possible for a long time.

So, what’s next?

As already stated, I’m starting my own business and will soon begin offering services to customers and partners who could use my help – more details coming soon.

I’ll also be dusting off my golf clubs, getting back into a regular exercise routine, and hopefully hitting the bike trails again.

But first, a break: I’ll spend June wrapping things up, then head to Greenland and Iceland in July with my wife and close friends – finally taking a real vacation, without a Microsoft laptop.

Follow me here on my blog, on LinkedIn or on my future homepage, which I will share here as well.

Godspeed

Freddy

Working with AL-Go for GitHub preview

If you want to have the latest updates of AL-Go for GitHub, you can update your repository and use https://github.com/microsoft/al-go-pte@preview or https://github.com/microsoft/al-go-appsource@preview as your template repository.

This means that you will get new updates before they are released. It also means that the actions you are using are instantly updated when we deploy a new version for preview and thus might be out of sync with your workflows.

Continue reading

Invoke-ScriptInBcContainer

As mentioned in this blog post, the Invoke-ScriptInBcContainer has undergone some serious changes in BcContainerHelper 3.0.9, which just shipped.

This blog post will describe some details about how this function works.

The function takes a containerName, a scriptblock and an argument list as parameters and will execute this scriptblock inside the container.

Continue reading

Major improvement when invoking scripts in Containers…

I recently learned that some partners have had had issues when running build pipelines on Azure DevOps with multiple DevOps agents on the same host using Containers with process isolation. 1-2 years ago, we did a number of fixes to support multiple agents on the same host, and I thought that had fixed things, but apparently this was not true.

Hopefully the fixes, which are going into BcContainerHelper today will fix this once and for good.

Continue reading

Secrets in AL-Go for GitHub

This blog post will not reveal any secrets in AL-Go for GitHub:-)

Instead, it will explain ways for you to store secrets, which are used for AL-Go for GitHub. In almost every DevOps setup, you will have to store some keys, passwords, tokens or like. In GitHub, these are called secrets and AL-Go will look for a set of secrets by their name.

This blog post will also touch upon how you can use GitHub organizations and environments with your customer projects.

Continue reading

Deployment strategies and AL-Go for GitHub

When you are done developing your app, it needs to be deployed to your customers if it is a PTE or to AppSource if it is an AppSource app.

Currently we don’t have any automated way of publishing your app to AppSource – that is something we are working on and some day in the future, when it becomes possible, you will get a workflow in AL-Go for GitHub which handles this automatically.

This blog post will talk about PTEs, and what features are available in AL-Go for GitHub to assist you deploying your PTEs to customers.

Continue reading

Branching strategies for your AL-Go for GitHub repo

If you teach yourself to follow a fairly simple set of rules, you will see that the health of your project will increase dramatically, and you will be in a better place with your project development.

So, I will at the ripe age of 56 bestow upon you these 5 rules, which can be applied to any project, using any DevOps setup. In the following I will explain how to implement these rules using AL-Go for GitHub:

  1. Use Pull Requests
  2. Use Code Reviews
  3. Use automated testing
  4. Use Feature branches
  5. Use Releases and release branches

Godspeed!

Continue reading