WEBVTT
00:00:00.321 --> 00:00:03.390
Welcome everyone to another episode of Dynamics.
00:00:03.390 --> 00:00:08.651
Corner Brad, what is the first word in an English dictionary?
00:00:08.651 --> 00:00:10.785
I'm your co-host, Chris.
00:00:11.500 --> 00:00:12.164
And this is Brad.
00:00:12.164 --> 00:00:16.310
This episode was recorded on April 30th 2025.
00:00:16.310 --> 00:00:17.603
Chris, chris, chris.
00:00:17.603 --> 00:00:20.071
What is the first word in the English dictionary?
00:00:20.071 --> 00:00:21.402
I don't know.
00:00:21.402 --> 00:00:34.939
I'd have to go to the English dictionary and look it up, but today we had the opportunity to talk about that, as well as AL Development, business Central and some cool toys With us.
00:00:34.939 --> 00:00:57.615
Today we had the opportunity to speak with Marcel Chabot the man of the hour hello, good afternoon.
00:00:57.655 --> 00:00:58.197
How are you doing?
00:00:58.197 --> 00:01:02.561
Doing great, how are you doing, you know, all things considered, I'm doing well.
00:01:02.561 --> 00:01:04.724
Well, ten fingers, ten toes, breathing.
00:01:05.944 --> 00:01:07.447
On the right side of the astroturf.
00:01:07.447 --> 00:01:08.367
That's all that really matters.
00:01:08.367 --> 00:01:10.450
Is there a right or wrong side?
00:01:10.450 --> 00:01:13.412
Well, there's the underside of the astroturf.
00:01:13.412 --> 00:01:14.313
You don't want to be there.
00:01:15.233 --> 00:01:15.733
How do you know?
00:01:16.754 --> 00:01:17.915
Oh, you have a point.
00:01:21.859 --> 00:01:22.141
So yeah, that's.
00:01:22.141 --> 00:01:22.662
I don't want to get in.
00:01:22.662 --> 00:01:27.393
I could say so much for that, but I think many may not understand my thoughts on that.
00:01:27.393 --> 00:01:29.728
But yeah, I don't know which side's the right side.
00:01:29.728 --> 00:01:37.007
I guess it depends on the day of the week, but not many people have told me about that side, so I really don't know if it's better or not.
00:01:37.346 --> 00:01:38.250
Survey's incomplete.
00:01:38.771 --> 00:01:42.771
Yes, yes, so maybe, well, maybe we could use Copilot.
00:01:48.239 --> 00:01:49.424
Copilot could tell us well, maybe we could use copilot.
00:01:49.424 --> 00:01:50.269
Copilot, do you think copilot would know I?
00:01:50.269 --> 00:01:50.590
I don't know.
00:01:50.590 --> 00:01:50.852
I don't know.
00:01:50.852 --> 00:01:52.057
Copilot can give me uh input on the afterlife.
00:01:52.057 --> 00:01:55.444
I don't know if I trust it philosophical for you?
00:01:56.527 --> 00:01:57.810
yeah, it's too philosophical.
00:01:58.069 --> 00:01:58.650
You're correct.
00:01:58.650 --> 00:02:00.701
And then how do we know if it's correct?
00:02:01.183 --> 00:02:10.169
so we just wouldn't know, right, right so I I've got a new microphone, so if I sound like garbage, let me know and I can turn knobs or whatever it sounds good.
00:02:10.889 --> 00:02:13.383
I so far it sounds good, but you can turn knob.
00:02:13.383 --> 00:02:14.686
It's turn whatever.
00:02:14.686 --> 00:02:18.542
Turn knobs if you want to see how it sounds it's got knobs and dials.
00:02:18.542 --> 00:02:26.438
I've been harassing everybody yeah, all right do I sound like I'm in a closet or what uh, you know some of these microphones.
00:02:26.438 --> 00:02:39.409
I'm glad with this one I don't have the knobs and dials, but I had the ones with the knobs and dials before and I just didn't understand and there really isn't a clear way to be able to tell no, it's a challenge how it sounds there's always post-processing, there's always post-edit.
00:02:39.871 --> 00:02:45.609
You know, as long as you're clear, you're fine, because there's a lot you can do.
00:02:45.609 --> 00:02:48.153
So much after the recording.
00:02:49.681 --> 00:03:01.919
And now you can do AI voice correction Right, so that if we need to do some, I'm not saying that's what we do, but I've seen that there's tools now with AI voice correction that you can do some corrections.
00:03:02.441 --> 00:03:16.258
It does help because there are times where we're recording and then the guests, you know, sometimes we don't notice it, but then, like once we get the raw file and it's it doesn't sound really really good and there's tools now.
00:03:16.258 --> 00:03:20.501
Yeah, it does help me kind of remove all of this stuff and just kind of isolate the voice.
00:03:20.501 --> 00:03:24.412
It's amazing what it can do now Makes my, my job easier.
00:03:24.412 --> 00:03:33.931
Nice, nice, I don't think you've ever worked hard, but anyway, do you have ai for that now?
00:03:33.971 --> 00:03:45.751
man, you should be more creative great, but thanks for taking the time to speak with the staff and I've been looking forward to speaking with you, uh, and also it was great seeing you in Las Vegas as well.
00:03:45.751 --> 00:03:47.234
That was a lot of fun.
00:03:47.234 --> 00:03:48.887
Appreciate the Uber, you know.
00:03:48.887 --> 00:03:52.362
It's always nice to when someone can figure out how to use the Uber application when you can't.
00:03:52.362 --> 00:03:56.372
And also congratulations on your recent Microsoft MVP.
00:03:56.372 --> 00:03:59.747
And before we get into the conversation, would you mind telling us a little bit about yourself?
00:04:00.949 --> 00:04:02.181
My name is Marcel Chabot.
00:04:02.181 --> 00:04:04.426
I'm a software developer.
00:04:04.426 --> 00:04:06.252
I'm the team lead here at the TM Group.
00:04:06.252 --> 00:04:11.893
I've been doing software development forever and have been in lots of different industries.
00:04:11.893 --> 00:04:18.392
I've done everything from brewing beer to rocket engines in all sorts of different industries.
00:04:18.392 --> 00:04:27.415
I come out of test and measurement, where we would rip trailer hitches off of pickup trucks and test all the things.
00:04:27.415 --> 00:04:38.387
Destructive testing was my favorite because I was young and destructive text testing is pretty exciting when you're just out of college and you get to break things for a living and that was kind of neat.
00:04:39.182 --> 00:04:53.791
I would love that, yeah, but the industry is super volatile and, uh, things went bad in michigan and I moved over to business software and been doing that for 18 years now and it's uh, it's a lot of fun.
00:04:53.791 --> 00:04:54.713
It's.
00:04:54.713 --> 00:05:03.487
It's interesting in all the different places that we get to because everybody has finances, everybody has money that's got to come and go.
00:05:03.487 --> 00:05:05.471
Everybody has a business to run.
00:05:05.471 --> 00:05:10.904
So you have your CRM systems, your contact management, your finance Everybody has it.
00:05:10.904 --> 00:05:28.365
So it's something where I get to put my fingers into all sorts of different industries and it's been fun how I've worked with breweries building sensor networks to monitor beer and I've worked with breweries building accounting systems to sell the beer Not the same ones.
00:05:28.365 --> 00:05:35.153
I've been hoping for that crossover at some point, but it's been really interesting to have both experiences.
00:05:35.480 --> 00:05:41.048
Hopefully you get to experience that and breaking things for a living must be fun, because you get a lot of frustration.
00:05:41.048 --> 00:05:41.990
It must feel good when you get home.
00:05:41.990 --> 00:05:43.033
It must be nice and relaxed.
00:05:43.033 --> 00:05:45.728
And did I hear that you built rocket engines?
00:05:47.064 --> 00:05:48.281
I tested some rocket engines.
00:05:48.281 --> 00:05:49.485
I did rocket engine testing.
00:05:49.485 --> 00:05:50.548
How did you test that?
00:05:50.548 --> 00:05:54.682
It was a bunch of sensors around something called a pebble bed.
00:05:54.682 --> 00:06:08.403
It's where you blow hot rocket fuel across a bed of ceramic beads, which they call technically NASA hot, and then the fuel combusts and you have to be able to control that.
00:06:08.403 --> 00:06:12.095
And um, there's a whole bunch of stuff.
00:06:12.095 --> 00:06:13.519
There's all sorts of phds.
00:06:13.519 --> 00:06:21.581
I just got the wire sensors and hook up computer software to it and all the phds got to watch these numbers go.
00:06:21.581 --> 00:06:23.863
Oh, and I'm like, yay, rockets.
00:06:25.985 --> 00:06:29.790
See, it sounds like you had some fun, and with ERP software implementations.
00:06:29.790 --> 00:06:39.187
It is fun because every implementation is different, it seems like, or every project's different and, as you'd mentioned, you can get into many different industries.
00:06:39.187 --> 00:06:47.088
Some organizations will specialize and have niche markets for verticals, as we call them, but then there's others that will deal with many different customers.
00:06:49.646 --> 00:06:50.309
I think it's fun.
00:06:50.309 --> 00:06:53.607
We set a countdown on a new client, which is time till.
00:06:53.607 --> 00:06:55.733
I can't believe nobody else.
00:06:55.733 --> 00:06:58.247
You know they're looking at a report.
00:06:58.247 --> 00:07:00.966
I can't believe nobody else needs this report.
00:07:00.966 --> 00:07:02.492
The report doesn't exist.
00:07:02.492 --> 00:07:04.447
Nobody has ever wanted this before.
00:07:04.447 --> 00:07:06.322
Nobody wants data, this report.
00:07:06.322 --> 00:07:06.983
The report doesn't exist.
00:07:06.983 --> 00:07:07.826
Nobody has ever wanted this before.
00:07:07.826 --> 00:07:08.449
Nobody wants data this way.
00:07:08.449 --> 00:07:10.875
But for your particular industry, I can see where that's important.
00:07:10.875 --> 00:07:20.264
But no, you are the first and we start a countdown and everybody, at some point when we're working on an industry that we have never worked in before, ask the question.
00:07:20.264 --> 00:07:23.350
I can't believe I'm the only one who wants this.
00:07:23.350 --> 00:07:25.612
Yeah, you are.
00:07:25.913 --> 00:07:26.735
Congratulations.
00:07:26.735 --> 00:07:29.305
You should start handing out a prize with that.
00:07:29.305 --> 00:07:34.927
So, working with Business Central and being a, I call you the scientist now, so maybe that will be your new name.
00:07:35.569 --> 00:07:40.449
You're not the first, oh I can't believe someone hasn't called you.
00:07:40.550 --> 00:07:41.533
No, I know, thank you.
00:07:41.572 --> 00:07:43.302
Well, I guess maybe I'll take that nickname away.
00:07:43.865 --> 00:07:45.672
So working with Business Central.
00:07:45.672 --> 00:07:47.639
How long have you been working with Business Central?
00:07:47.639 --> 00:07:49.252
You said you made the crossover to software.
00:07:49.252 --> 00:07:50.404
Have you always worked with Business Central?
00:07:51.661 --> 00:07:52.504
I started with GP.
00:07:52.504 --> 00:07:57.591
The TM group was one of the first GP consultants.
00:07:57.591 --> 00:08:05.613
Judy Thomas started with this newspaper ad looking for implementers for this new accounting package 40 years ago.
00:08:05.613 --> 00:08:10.572
So when I moved over to the TM group it was all GP.
00:08:10.572 --> 00:08:26.415
But then, you know, gp started to look a little old, at 30 some odd years, and we moved over to the next product in that tier, which was a division at the time just around the seaside AL, to cut over.
00:08:26.415 --> 00:08:29.327
So 14 years ago.
00:08:29.608 --> 00:08:31.492
Yeah, that was 20.
00:08:31.492 --> 00:08:37.312
No, well, the cut over seaside to AL was 2018.
00:08:37.312 --> 00:08:44.389
The vision to business, vision to geez, the vision to dynamics nav was with 2013, 2014.
00:08:44.389 --> 00:08:45.244
I can't even keep track.
00:08:45.283 --> 00:08:49.025
I'm trying to play this all back in my head yeah, it takes a long time.
00:08:49.025 --> 00:08:51.350
It's time has flown.
00:08:52.131 --> 00:09:01.629
I know, I know time is valuable and precious, and how quickly it goes by as you get older makes you take a look at what you do with your time and value a little bit differently.
00:09:01.629 --> 00:09:05.184
So do you work with development for business central?
00:09:05.927 --> 00:09:06.307
strictly.
00:09:06.307 --> 00:09:08.091
My group is strictly development.
00:09:08.091 --> 00:09:16.504
That's my focus and our accounting team, our functional team, bless their heart, has for years tried to get me to get credits and debits straight.
00:09:16.504 --> 00:09:30.931
But I still look at credits and debits from my point of view and it's backwards because accounting credits and debits are backwards from personal finance and I still get them backwards all these years later and they're they complain.
00:09:30.931 --> 00:09:35.073
I'll never be an accountant and I thank them for the compliment and get back to my work.
00:09:35.475 --> 00:09:37.985
Yes, as long as the numbers add together properly.
00:09:37.985 --> 00:09:41.520
That's the important thing that's the important thing two plus two should equal four.
00:09:41.520 --> 00:09:45.912
So you work with the development and and AL development's a lot of fun.
00:09:45.912 --> 00:09:47.124
Business Central development's a lot of fun.
00:09:47.124 --> 00:09:53.299
You get to do a lot of great things Maybe not some rocket science type things, but maybe you can as well.
00:09:54.323 --> 00:10:03.548
Coming out of GP, where you got not one but two user definable fields, and moving over to Business Central, where I can define fields all day long.
00:10:05.123 --> 00:10:21.124
It's such a great switch up to to a much more dynamic accounting system and uh it is great and uh, through conversation, some of the things you like to do, you like to, I guess, uh, test the limits of some development as well, too, correct I?
00:10:21.184 --> 00:10:21.445
do.
00:10:21.445 --> 00:10:24.871
There's a uh, there's a yearly I guess it's a competition.
00:10:24.871 --> 00:10:37.620
It's more of a nerd flex called the uh the advent of code and uh, there's 25 two-part problems that you can try to solve and it doesn't matter what language you do it in, because it always comes out with a number when you're done.
00:10:37.620 --> 00:10:47.167
And I tried to solve as many as I could in uh and I got through week eight and then things started getting really weird.
00:10:47.167 --> 00:11:00.216
Some of the answers require recursion and that worked for a while and then Business Central just said no, the processing requirements were really high.
00:11:00.216 --> 00:11:05.249
One of the answers was something called a 40-year transform.
00:11:05.249 --> 00:11:08.001
Where it's it's complex math on repeating things.
00:11:09.344 --> 00:11:15.875
And um, I tried to do a 40-year in business central and it just noped right out.
00:11:15.875 --> 00:11:18.543
And why would it do a 40-year?
00:11:18.543 --> 00:11:19.745
It's not the kind of math.
00:11:19.745 --> 00:11:22.168
There's no accounting that ever would need that.
00:11:22.168 --> 00:11:30.488
But getting through eight weeks, which is 16 problems, before it gave up I thought was pretty good.
00:11:30.488 --> 00:11:32.700
I bet there's people who could push it farther than me.
00:11:32.700 --> 00:11:38.541
There's a lot of really smart people out there and I bet somebody could solve all of them in there.
00:11:38.541 --> 00:11:42.327
But at some point I hit the point of diminished returns.
00:11:42.327 --> 00:11:43.691
I had some really neat things.
00:11:43.691 --> 00:11:50.601
I learned about the limits of BC and as they add new features in, it'll be more capable later.
00:11:51.504 --> 00:11:55.615
There's NET underneath, so yeah, so they expand the library.
00:11:55.615 --> 00:12:05.325
Well then, depending upon which version you're using, if you're using the on-premises version, you could reference some assemblies and also maybe use a control add-in.
00:12:05.706 --> 00:12:09.350
That might be cheating, though well, yeah, my goal was to do it in al.
00:12:09.350 --> 00:12:11.720
At any point, I could have kicked it off to an azure function.
00:12:11.720 --> 00:12:14.008
Did the work in an azure function return the answer?
00:12:14.931 --> 00:12:16.375
no, I understand.
00:12:16.375 --> 00:12:25.004
I thought about that after I said that and said then it's not al, you're just using al as a gateway to something else to solve the problem with the processing.
00:12:27.960 --> 00:12:33.264
But that may be the point that AL has a limit and stop doing crazy stuff in AL and kick it out to something outside that will do the work for you.
00:12:34.341 --> 00:12:43.606
Well, I think that is a good point, because I think everything has a purpose and you use the appropriate tool for that, for the job.
00:12:43.960 --> 00:12:54.510
It's a natural path't it like to to to go beyond outside of al for a different function it is and it's knowing if.
00:12:54.812 --> 00:12:59.546
If al is the only tool you have, then everything looks like an al problem.
00:12:59.546 --> 00:13:04.542
And uh, early in my development career, you know, I I knew a handful of languages.
00:13:04.542 --> 00:13:13.014
I was going to solve every world problem in my favorite language of the time and wrote some really bad code that I'm afraid might still be out there in the world.
00:13:13.014 --> 00:13:20.629
And then as you, as you get older and you do more stuff, you realize, hey, I'm just no, this isn't the right way to solve this.
00:13:20.690 --> 00:13:25.004
Moving on, yes, no, it's, it's no.
00:13:25.004 --> 00:13:27.801
You laugh because you said some really bad code.
00:13:27.801 --> 00:13:38.655
But I think, as as languages change, as you, you change with understanding and knowledge and problem solving and also even starting a journey through solving a problem.
00:13:38.655 --> 00:13:47.008
We again which is what we're doing with development we're solving a problem or a task or satisfying a need which again a need could be for solving a problem.
00:13:47.008 --> 00:13:49.988
I always look back and say, wow, I would have done that differently.
00:13:49.988 --> 00:13:51.926
Oh, wow, I can't believe I did it that way.
00:13:51.926 --> 00:14:03.163
And it may have been effective, it may work, but sometimes, as change comes, it's nice to look back and just scratch your head and say, why did I do it that way?
00:14:03.182 --> 00:14:05.528
and just scratch your head and say why did I do it that way?
00:14:05.528 --> 00:14:18.395
And in the space we're in we have clients that move between providers and when we're at a trade show, when we meet up, we're all comrades with the same type of problem.
00:14:18.395 --> 00:14:25.990
But we're also sometimes competitors and I will get other people's code and I'll get to read what they did to solve the problem.
00:14:25.990 --> 00:14:31.272
But you got to never judge another developer by the code.
00:14:31.272 --> 00:14:34.350
It could be, and I've been held hostage by clients.
00:14:34.350 --> 00:14:37.028
You have to get this done in this amount of time.
00:14:37.028 --> 00:14:43.629
Like I'm about to do something I'm going to regret and I've read an apology.
00:14:43.629 --> 00:14:47.282
I've gotten somebody else's code and there was a comment block on top.
00:14:47.282 --> 00:14:49.147
It says client required this.
00:14:49.147 --> 00:14:52.400
This is the only way I could solve this at the time.
00:14:52.400 --> 00:14:56.246
I'm sorry it's their manifesto.
00:14:56.988 --> 00:15:27.351
Yeah, yes, I've seen some of that, but you make a good point and I follow that as well as and I've learned over the years, I never criticize someone else's code because you don't know what you don't know and you don't know the situation that they're in, because we have all gone through situations where you have a requirement and that requirement changes throughout the process, even myself I say you know, okay, we'll just add this one thing, we'll add this one thing, add this one thing, all those things.
00:15:27.392 --> 00:15:31.345
Had you known about them all at the very beginning, you would have done something completely different.
00:15:31.345 --> 00:15:36.629
But you didn't have the opportunity to go back and rework it because some of the requirements may have changed.
00:15:36.629 --> 00:15:43.008
It's not necessarily in the sense of scope creep scope creep because it may have been a requirement one at one point which was completed.
00:15:43.008 --> 00:15:48.176
Then requirement two was to tack or add additional requirements to the first requirement.
00:15:48.176 --> 00:15:56.860
And you don't always have the opportunity to go back and redesign and rework everything because of time, budget, a number of reasons.
00:15:56.860 --> 00:16:00.291
So I try not to criticize.
00:16:00.291 --> 00:16:05.673
There will be a few rare cases where you can look at something and go why were you just doing that?
00:16:06.282 --> 00:16:08.610
yeah, this looks like someone's junior programmer.
00:16:08.610 --> 00:16:10.476
Yeah, someone's just warming up.
00:16:10.476 --> 00:16:11.801
The variable names are garbage.
00:16:11.801 --> 00:16:21.235
Yeah, but for the most part there's a lot of talented people in the space and you know I'll get something and I I start to know names of people I know.
00:16:21.235 --> 00:16:29.376
I know several different groups of initials, like oh, I know, I know this guy, I've seen his stuff before, his stuff is typically good, so why is this crashing?
00:16:29.376 --> 00:16:30.200
And I'll go through and go.
00:16:30.200 --> 00:16:42.682
I bet the customer changed how they do this and you start to know the people in the space and a lot of respect for a lot of really creative people out there that have solved some problems that I might've just said no.
00:16:44.386 --> 00:16:53.625
It is, and with the evolution of the language it gets a little challenging as well, because now each revision or each version of the language that comes out, you have additional functionality.
00:16:53.625 --> 00:16:58.272
So something you may have had to solve even a year ago wasn't in the language.
00:16:58.272 --> 00:17:02.982
So now you look at it and go, oh, you could have done it this way For efficiency.
00:17:03.043 --> 00:17:07.373
I think we had a conversation about that, right, brad, Like where you know, would you go back?
00:17:07.373 --> 00:17:13.847
Let's say you go back a year later and it's something that you had built last year, would you take the time to like, oh okay, I should be.
00:17:13.847 --> 00:17:18.846
Maybe I need to rewrite some of these areas to be more efficient, or do you just leave it alone?
00:17:20.141 --> 00:17:21.041
It should be a list.
00:17:21.041 --> 00:17:23.084
No more temp tables.
00:17:23.084 --> 00:17:23.825
There should be a list.
00:17:24.625 --> 00:17:26.827
Well, I would love to go back.
00:17:26.827 --> 00:17:29.089
I think it depends on where you are and what you're doing.
00:17:29.089 --> 00:17:37.318
I think if you have an application or an extension that you're publishing, you should enhance it obviously over time.
00:17:37.338 --> 00:17:37.799
Yeah, that makes sense.
00:17:38.541 --> 00:17:39.606
For the better use of your customers.
00:17:39.606 --> 00:17:40.982
Customer implementations.
00:17:40.982 --> 00:17:41.766
It's difficult.
00:17:41.766 --> 00:17:43.049
When do you do it?
00:17:43.049 --> 00:17:43.701
How do you do it?
00:17:43.701 --> 00:17:57.266
Because of the amount of time it may take, and it's not just the time being, budgetary constraints, but time for the customer themselves if they have to get involved in testing and user acceptance and all that process too, so it becomes a bigger project.
00:17:57.266 --> 00:18:04.375
That is a good question of when do you do that, why do you do that, how do you do that and should you do that?
00:18:04.375 --> 00:18:05.357
Why do you do that, how do you do that and should do you do that?
00:18:05.357 --> 00:18:12.665
Because it's also to the benefit of the customer and sometimes, if they don't understand, it's almost as if you have video cameras on your house.
00:18:12.665 --> 00:18:14.791
I'll buy a video camera today.
00:18:14.791 --> 00:18:18.107
Wait two or three years, should I replace the video cameras?
00:18:18.107 --> 00:18:19.411
Even those video cameras are working.
00:18:20.200 --> 00:18:20.540
What would I?
00:18:20.580 --> 00:18:21.363
get for it Would I get.
00:18:21.363 --> 00:18:22.546
I get better results.
00:18:22.566 --> 00:18:23.648
I'm just trying to take a step back.
00:18:23.648 --> 00:18:25.232
Someone still has to pay for it, right?
00:18:25.819 --> 00:18:26.964
Would I still get better results?
00:18:26.964 --> 00:18:27.587
Would I get better?
00:18:27.587 --> 00:18:33.173
Would I get better resolution and a higher quality video, or something like that?
00:18:33.173 --> 00:18:42.267
Somebody does still have to pay for it, but how do you equate the, the benefit to the cost, and sometimes it's not so easy.
00:18:42.267 --> 00:18:49.483
So that is a good, challenging question of should you do it and when do you?
00:18:50.144 --> 00:18:50.266
do it?
00:18:50.266 --> 00:18:50.726
And how do you do it?
00:18:50.726 --> 00:19:02.261
Um, you know, swapping out temp tables to lists, maybe you know, on a grand scale, yeah, you'll benefit, but if it's not broken, they're not going to get anything from it right now.