Computer scientist at Microsoft. Engineer on platform team of Business Central. Opinions are my own. Playing around with languages, compilers, and runtimes.

Denmark
Joined October 2020
Got the opportunity to go "under the hood" and provide some behind the scenes on how and why we have evolved AL over the years towards a more performant language. youtu.be/1xdpUmeun-s
1
106
If you are interested in writing performant AL code for Business Central, this is a great opportunity. You get a three for one deal here! AL code, compiler, and runtime experts in one session. As always when I'm involved, internals included! Wednesday at 14:00. #msdyn365bc
1
2
20
447
I would argue the perfect last session for your #BCTechDays conference is to join Torben Meyhoff and I, for our session: Tri-State Locking: Reducing locking in the runtime We will explain AL's locking scheme in-depth and explore recent improvements in the area.
3
6
1
30
1,369
Have you ever wondered how to swiftly delete data in #msdyn365bc? Most of the time, letting the runtime optimize is the way to go. In my latest blog post we explore how customizations can bring the performance down + an informal reveal of AlterKey :) bcinternals.com/posts/deleti…
4
3
14
1,423
. @bertverbeek Submitted a PR github.com/microsoft/Busines… My analysis shows it as the classic problems of invalidating the resultset enumerator, which leads to repeated creation of the SQL statement. I wrote about it on my blog and explained why it happens: bcinternals.com/posts/on-rec…
2
2
4
821
In the #msdyn365bc 2023 wave 2 release notes we talk about reducing locks, the docs are rather vague on the how. I want to rectify that with my latest blog post, which goes in-depth with how the runtime will implicitly take locks for reads: bcinternals.com/posts/tri-st…
13
30
2,164
Was great to present with @NikolaKukrika at #BCTechDays. Especially cool to have a overflowing room of people eager to learn about locking in #MSDyn365BC. Thanks everyone for coming! And remember to provide feedback so we also can learn :)
1
1
21
945
Join us next week at #BCTechDays in #Antwerp. All good things must come to an end. We present you the final sessions. Curious about the closing? #MsDyn365BC
4
1
10
1,056
At Hamburg we/I received great questions about AL and #MSDyn365BC broadly. At least two of the questions seemed like a good writing prompt, so here is a new blog post covering Bulk Inserts and RecordRef internals: bcinternals.com/posts/direct…
2
7
15
1,604
A fundamental concept in Business Central is (implicit) transactions, they are often taken for granted, but essential. Furthermore, I have found that very few AL developers understand the rules for implicit locking in AL, so here it is: bcinternals.com/posts/transa… #msdyn365bc
8
39
In my latest blog post we will explore micro benchmarking in AL and all the caveats and annoyances it brings. Hopefully, it will spare the reader a bunch of mistakes since I already tackled them. bcinternals.com/posts/benchm…
2
9
1
25
Will be at #DOKNordic presenting the "What's new in the server and database". Tons of great stuff, some of it I did and can explain in great detail. Looking forward to meeting all the developers I write a platform for. #msdyn365bc
13
Before continuing our series on Partial Records for performance, we must take a quick detour exploring the pitfalls of Partial Records. Here focusing on what goes wrong and thereby what not to do when using Partial Records. #msdyn365bc. bcinternals.com/posts/partia…
2
5
16
With my blog's second installment we will explore the internals of a recent addition to #msdyn365bc: Partial Records. History included. One post wasn't enough to truly explore the matter, so in the near future we will revisit the topic. bcinternals.com/posts/partia…
4
17
Regarding this excellent video from @eHougaard youtube.com/watch?v=315SuCUK… I should remind everyone that it might end up hiding errors from you, f.e. one might get a duplicate key exception on a subsequent operation that isn't an even an insert.
1
2
My blog covering the internals of #msdyn365bc has finally sprung to life. It starts out covering the most fundamental data type in BC: Records. bcinternals.com/posts/on-rec… I would all of your feedback :) the source code for the blog can be found here: github.com/phduck/ALBlog_go
1
5
26
#BCALhelp Has anyone written a statistics or benchmarking library in AL? Or do I have to write them? My endgame is to have something like #BenchmarkDotNet just for AL.
3
3
8