All Episodes

June 17, 2025 72 mins

In this Episode of Dynamics Corner, hosts Brad and Kristoffer engage Marcel Chabot, a veteran software developer and innovator, to unpack his eclectic journey from rocket engine testing to mastering ERP solutions with Microsoft Dynamics 365 Business Central. 
Marcel Chabot illuminates the intricacies of AL development, emphasizing its integration with .NET and the creative problem-solving it demands while navigating the challenges of migrating from legacy systems, such as GP. He emphasizes the crucial role of code quality, collaboration, and understanding client needs in minimizing technical debt and enhancing extensibility. 
The conversation explores the evolving landscape of programming languages, highlighting the crucial role of ISVs in improving the capabilities of Business Central.
Marcel Chabot advocates for balancing custom solutions with off-the-shelf functionalities to optimize implementation and reduce maintenance costs. This episode presents a compelling blend of technical expertise and practical guidance for developers and business leaders navigating the complexities of modern ERP systems.

Send us a text

Support the show

#MSDyn365BC #BusinessCentral #BC #DynamicsCorner

Follow Kris and Brad for more content:
https://matalino.io/bio
https://bprendergast.bio.link/

Mark as Played
Transcript

Episode Transcript

Available transcripts are automatically generated. Complete accuracy is not guaranteed.
Speaker 1 (00:00):
Welcome everyone to another episode of Dynamics.
Corner Brad, what is the firstword in an English dictionary?
I'm your co-host, Chris.

Speaker 2 (00:11):
And this is Brad.
This episode was recorded onApril 30th 2025.
Chris, chris, chris.
What is the first word in theEnglish dictionary?
I don't know.
I'd have to go to the Englishdictionary and look it up, but
today we had the opportunity totalk about that, as well as AL
Development, business Centraland some cool toys With us.

(00:34):
Today we had the opportunity tospeak with Marcel Chabot the
man of the hour hello, goodafternoon.

(00:57):
How are you doing?
Doing great, how are you doing,you know, all things considered
, I'm doing well.
Well, ten fingers, ten toes,breathing.

Speaker 3 (01:05):
On the right side of the astroturf.
That's all that really matters.
Is there a right or wrong side?
Well, there's the underside ofthe astroturf.
You don't want to be there.

Speaker 2 (01:15):
How do you know?

Speaker 3 (01:16):
Oh, you have a point.

Speaker 2 (01:21):
So yeah, that's.
I don't want to get in.
I could say so much for that,but I think many may not
understand my thoughts on that.
But yeah, I don't know whichside's the right side.
I guess it depends on the dayof the week, but not many people
have told me about that side,so I really don't know if it's
better or not.

Speaker 3 (01:37):
Survey's incomplete.

Speaker 2 (01:38):
Yes, yes, so maybe, well, maybe we could use Copilot
.

Speaker 3 (01:48):
Copilot could tell us well, maybe we could use
copilot.
Copilot, do you think copilotwould know I?
I don't know.
I don't know.
Copilot can give me uh input onthe afterlife.
I don't know if I trust itphilosophical for you?

Speaker 1 (01:56):
yeah, it's too philosophical.

Speaker 2 (01:58):
You're correct.
And then how do we know if it'scorrect?

Speaker 3 (02:01):
so we just wouldn't know, right, right so I I've got
a new microphone, so if I soundlike garbage, let me know and I
can turn knobs or whatever itsounds good.

Speaker 2 (02:10):
I so far it sounds good, but you can turn knob.
It's turn whatever.
Turn knobs if you want to seehow it sounds it's got knobs and
dials.
I've been harassing everybodyyeah, all right do I sound like
I'm in a closet or what uh, youknow some of these microphones.
I'm glad with this one I don'thave the knobs and dials, but I
had the ones with the knobs anddials before and I just didn't

(02:31):
understand and there reallyisn't a clear way to be able to
tell no, it's a challenge how itsounds there's always
post-processing, there's alwayspost-edit.

Speaker 1 (02:39):
You know, as long as you're clear, you're fine,
because there's a lot you can do.
So much after the recording.

Speaker 2 (02:49):
And now you can do AI voice correction Right, so that
if we need to do some, I'm notsaying that's what we do, but
I've seen that there's tools nowwith AI voice correction that
you can do some corrections.

Speaker 1 (03:02):
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 oncewe get the raw file and it's it
doesn't sound really really goodand there's tools now.
Yeah, it does help me kind ofremove all of this stuff and
just kind of isolate the voice.
It's amazing what it can do nowMakes my, my job easier.

(03:24):
Nice, nice, I don't thinkyou've ever worked hard, but
anyway, do you have ai for thatnow?

Speaker 2 (03:33):
man, you should be more creative great, but thanks
for taking the time to speakwith the staff and I've been
looking forward to speaking withyou, uh, and also it was great
seeing you in Las Vegas as well.
That was a lot of fun.
Appreciate the Uber, you know.
It's always nice to whensomeone can figure out how to
use the Uber application whenyou can't.
And also congratulations onyour recent Microsoft MVP.

(03:56):
And before we get into theconversation, would you mind
telling us a little bit aboutyourself?

Speaker 3 (04:00):
My name is Marcel Chabot.
I'm a software developer.
I'm the team lead here at theTM Group.
I've been doing softwaredevelopment forever and have
been in lots of differentindustries.
I've done everything frombrewing beer to rocket engines
in all sorts of differentindustries.
I come out of test andmeasurement, where we would rip

(04:23):
trailer hitches off of pickuptrucks and test all the things.
Destructive testing was myfavorite because I was young and
destructive text testing ispretty exciting when you're just
out of college and you get tobreak things for a living and
that was kind of neat.
I would love that, yeah, but theindustry is super volatile and,
uh, things went bad in michiganand I moved over to business

(04:47):
software and been doing that for18 years now and it's uh, it's
a lot of fun.
It's.
It's interesting in all thedifferent places that we get to
because everybody has finances,everybody has money that's got
to come and go.
Everybody has a business to run.
So you have your CRM systems,your contact management, your

(05:08):
finance Everybody has it.
So it's something where I getto put my fingers into all sorts
of different industries andit's been fun how I've worked
with breweries building sensornetworks to monitor beer and
I've worked with breweriesbuilding accounting systems to
sell the beer Not the same ones.
I've been hoping for thatcrossover at some point, but

(05:31):
it's been really interesting tohave both experiences.

Speaker 2 (05:35):
Hopefully you get to experience that and breaking
things for a living must be fun,because you get a lot of
frustration.
It must feel good when you gethome.
It must be nice and relaxed.
And did I hear that you builtrocket engines?

Speaker 3 (05:47):
I tested some rocket engines.
I did rocket engine testing.
How did you test that?
It was a bunch of sensorsaround something called a pebble
bed.
It's where you blow hot rocketfuel across a bed of ceramic
beads, which they calltechnically NASA hot, and then
the fuel combusts and you haveto be able to control that.

(06:08):
And um, there's a whole bunchof stuff.
There's all sorts of phds.
I just got the wire sensors andhook up computer software to it
and all the phds got to watchthese numbers go.
Oh, and I'm like, yay, rockets.

Speaker 2 (06:25):
See, it sounds like you had some fun, and with ERP
software implementations.
It is fun because everyimplementation is different, it
seems like, or every project'sdifferent and, as you'd
mentioned, you can get into manydifferent industries.
Some organizations willspecialize and have niche
markets for verticals, as wecall them, but then there's
others that will deal with manydifferent customers.

Speaker 3 (06:49):
I think it's fun.
We set a countdown on a newclient, which is time till.
I can't believe nobody else.
You know they're looking at areport.
I can't believe nobody elseneeds this report.
The report doesn't exist.
Nobody has ever wanted thisbefore.
Nobody wants data, this report.
The report doesn't exist.
Nobody has ever wanted thisbefore.
Nobody wants data this way.
But for your particularindustry, I can see where that's

(07:10):
important.
But no, you are the first andwe start a countdown and
everybody, at some point whenwe're working on an industry
that we have never worked inbefore, ask the question.
I can't believe I'm the onlyone who wants this.
Yeah, you are.

Speaker 2 (07:25):
Congratulations.
You should start handing out aprize with that.
So, working with BusinessCentral and being a, I call you
the scientist now, so maybe thatwill be your new name.

Speaker 3 (07:35):
You're not the first, oh I can't believe someone
hasn't called you.

Speaker 2 (07:40):
No, I know, thank you .

Speaker 1 (07:41):
Well, I guess maybe I'll take that nickname away.

Speaker 2 (07:43):
So working with Business Central.
How long have you been workingwith Business Central?
You said you made the crossoverto software.
Have you always worked withBusiness Central?

Speaker 3 (07:51):
I started with GP.
The TM group was one of thefirst GP consultants.
Judy Thomas started with thisnewspaper ad looking for
implementers for this newaccounting package 40 years ago.
So when I moved over to the TMgroup it was all GP.
But then, you know, gp startedto look a little old, at 30 some

(08:15):
odd years, and we moved over tothe next product in that tier,
which was a division at the timejust around the seaside AL, to
cut over.
So 14 years ago.

Speaker 2 (08:29):
Yeah, that was 20.
No, well, the cut over seasideto AL was 2018.
The vision to business, visionto geez, the vision to dynamics
nav was with 2013, 2014.
I can't even keep track.

Speaker 3 (08:45):
I'm trying to play this all back in my head yeah,
it takes a long time.
It's time has flown.

Speaker 2 (08:52):
I know, I know time is valuable and precious, and
how quickly it goes by as youget older makes you take a look
at what you do with your timeand value a little bit
differently.
So do you work with developmentfor business central?

Speaker 3 (09:05):
strictly.
My group is strictlydevelopment.
That's my focus and ouraccounting team, our functional
team, bless their heart, has foryears tried to get me to get
credits and debits straight.
But I still look at credits anddebits from my point of view
and it's backwards becauseaccounting credits and debits
are backwards from personalfinance and I still get them

(09:27):
backwards all these years laterand they're they complain.
I'll never be an accountant andI thank them for the compliment
and get back to my work.

Speaker 2 (09:35):
Yes, as long as the numbers add together properly.
That's the important thingthat's the important thing two
plus two should equal four.
So you work with thedevelopment and and AL
development's a lot of fun.
Business Central development'sa lot of fun.
You get to do a lot of greatthings Maybe not some rocket
science type things, but maybeyou can as well.

Speaker 3 (09:54):
Coming out of GP, where you got not one but two
user definable fields, andmoving over to Business Central,
where I can define fields allday long.

Speaker 2 (10:05):
It's such a great switch up to to a much more
dynamic accounting system and uhit is great and uh, through
conversation, some of the thingsyou like to do, you like to, I
guess, uh, test the limits ofsome development as well, too,
correct I?

Speaker 3 (10:21):
do.
There's a uh, there's a yearlyI guess it's a competition.
It's more of a nerd flex calledthe uh the advent of code and
uh, there's 25 two-part problemsthat you can try to solve and
it doesn't matter what languageyou do it in, because it always
comes out with a number whenyou're done.
And I tried to solve as many asI could in uh and I got through

(10:43):
week eight and then thingsstarted getting really weird.
Some of the answers requirerecursion and that worked for a
while and then Business Centraljust said no, the processing
requirements were really high.
One of the answers wassomething called a 40-year

(11:05):
transform.
Where it's it's complex math onrepeating things.
And um, I tried to do a 40-yearin business central and it just
noped right out.
And why would it do a 40-year?
It's not the kind of math.
There's no accounting that everwould need that.
But getting through eight weeks, which is 16 problems, before

(11:28):
it gave up I thought was prettygood.
I bet there's people who couldpush it farther than me.
There's a lot of really smartpeople out there and I bet
somebody could solve all of themin there.
But at some point I hit thepoint of diminished returns.
I had some really neat things.
I learned about the limits ofBC and as they add new features

(11:48):
in, it'll be more capable later.

Speaker 2 (11:51):
There's NET underneath, so yeah, so they
expand the library.
Well then, depending upon whichversion you're using, if you're
using the on-premises version,you could reference some
assemblies and also maybe use acontrol add-in.

Speaker 3 (12:05):
That might be cheating, though well, yeah, my
goal was to do it in al.
At any point, I could havekicked it off to an azure
function.
Did the work in an azurefunction return the answer?

Speaker 2 (12:14):
no, I understand.
I thought about that after Isaid that and said then it's not
al, you're just using al as agateway to something else to
solve the problem with theprocessing.

Speaker 3 (12:27):
But that may be the point that AL has a limit and
stop doing crazy stuff in AL andkick it out to something
outside that will do the workfor you.

Speaker 2 (12:34):
Well, I think that is a good point, because I think
everything has a purpose and youuse the appropriate tool for
that, for the job.

Speaker 1 (12:43):
It's a natural path't it like to to to go beyond
outside of al for a differentfunction it is and it's knowing
if.

Speaker 3 (12:54):
If al is the only tool you have, then everything
looks like an al problem.
And uh, early in my developmentcareer, you know, I I knew a
handful of languages.
I was going to solve everyworld problem in my favorite
language of the time and wrotesome really bad code that I'm
afraid might still be out therein the world.
And then as you, as you getolder and you do more stuff, you

(13:17):
realize, hey, I'm just no, thisisn't the right way to solve
this.

Speaker 2 (13:20):
Moving on, yes, no, it's, it's no.
You laugh because you said somereally bad code.
But I think, as as languageschange, as you, you change with
understanding and knowledge andproblem solving and also even
starting a journey throughsolving a problem.
We again which is what we'redoing with development we're

(13:42):
solving a problem or a task orsatisfying a need which again a
need could be for solving aproblem.
I always look back and say, wow, I would have done that
differently.
Oh, wow, I can't believe I didit that way.
And it may have been effective,it may work, but sometimes, as
change comes, it's nice to lookback and just scratch your head
and say, why did I do it thatway?

Speaker 3 (14:03):
and just scratch your head and say why did I do it
that way?
And in the space we're in wehave clients that move between
providers and when we're at atrade show, when we meet up,
we're all comrades with the sametype of problem.
But we're also sometimescompetitors and I will get other
people's code and I'll get toread what they did to solve the

(14:25):
problem.
But you got to never judgeanother developer by the code.
It could be, and I've been heldhostage by clients.
You have to get this done inthis amount of time.
Like I'm about to do somethingI'm going to regret and I've
read an apology.
I've gotten somebody else'scode and there was a comment

(14:46):
block on top.
It says client required this.
This is the only way I couldsolve this at the time.
I'm sorry it's their manifesto.

Speaker 2 (14:56):
Yeah, yes, I've seen some of that, but you make a
good point and I follow that aswell as and I've learned over
the years, I never criticizesomeone else's code because you
don't know what you don't knowand you don't know the situation
that they're in, because wehave all gone through situations
where you have a requirementand that requirement changes

(15:19):
throughout the process, evenmyself 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.
Had you known about them all atthe very beginning, you would
have done something completelydifferent.
But you didn't have theopportunity to go back and
rework it because some of therequirements may have changed.
It's not necessarily in thesense of scope creep scope creep
because it may have been arequirement one at one point

(15:42):
which was completed.
Then requirement two was totack or add additional
requirements to the firstrequirement.
And you don't always have theopportunity to go back and
redesign and rework everythingbecause of time, budget, a
number of reasons.
So I try not to criticize.
There will be a few rare caseswhere you can look at something

(16:03):
and go why were you just doingthat?

Speaker 3 (16:06):
yeah, this looks like someone's junior programmer.
Yeah, someone's just warming up.
The variable names are garbage.
Yeah, but for the most partthere's a lot of talented people
in the space and you know I'llget something and I I start to
know names of people I know.
I know several different groupsof initials, like oh, I know, I
know this guy, I've seen hisstuff before, his stuff is

(16:26):
typically good, so why is thiscrashing?
And I'll go through and go.
I bet the customer changed howthey do this and you start to
know the people in the space anda lot of respect for a lot of
really creative people out therethat have solved some problems
that I might've just said no.

Speaker 2 (16:44):
It is, and with the evolution of the language it
gets a little challenging aswell, because now each revision
or each version of the languagethat comes out, you have
additional functionality.
So something you may have hadto solve even a year ago wasn't
in the language.
So now you look at it and go,oh, you could have done it this
way For efficiency.

Speaker 1 (17:03):
I think we had a conversation about that, right,
brad, Like where you know, wouldyou go back?
Let's say you go back a yearlater and it's something that
you had built last year, wouldyou take the time to like, oh
okay, I should be.
Maybe I need to rewrite some ofthese areas to be more
efficient, or do you just leaveit alone?

Speaker 3 (17:20):
It should be a list.
No more temp tables.
There should be a list.

Speaker 2 (17:24):
Well, I would love to go back.
I think it depends on where youare and what you're doing.
I think if you have anapplication or an extension that
you're publishing, you shouldenhance it obviously over time.

Speaker 1 (17:37):
Yeah, that makes sense.

Speaker 2 (17:38):
For the better use of your customers.
Customer implementations.
It's difficult.
When do you do it?
How do you do it?
Because of the amount of timeit may take, and it's not just
the time being, budgetaryconstraints, but time for the
customer themselves if they haveto get involved in testing and
user acceptance and all thatprocess too, so it becomes a
bigger project.
That is a good question of whendo you do that, why do you do

(18:02):
that, how do you do that andshould you do that?
Why do you do that, how do youdo that and should do you do
that?
Because it's also to thebenefit of the customer and
sometimes, if they don'tunderstand, it's almost as if
you have video cameras on yourhouse.
I'll buy a video camera today.
Wait two or three years, shouldI replace the video cameras?
Even those video cameras areworking.

Speaker 1 (18:20):
What would I?

Speaker 2 (18:20):
get for it Would I get.
I get better results.

Speaker 1 (18:22):
I'm just trying to take a step back.
Someone still has to pay for it, right?

Speaker 2 (18:25):
Would I still get better results?
Would I get better?
Would I get better resolutionand a higher quality video, or
something like that?
Somebody does still have to payfor it, but how do you equate
the, the benefit to the cost,and sometimes it's not so easy.
So that is a good, challengingquestion of should you do it and

(18:49):
when do you?

Speaker 3 (18:50):
do it?
And how do you do it?
Um, you know, swapping out temptables to lists, maybe you know
, on a grand scale, yeah, you'llbenefit, but if it's not broken
, they're not going to getanything from it right now.
But then there's some stuff outthere that's like hey, you know
, there's a lot of new featuresum apis, going from page-based

(19:12):
apis to api 2.0, where they'remore stable, you can do the
faster read.
Only there's real value in that.
We need to move you from usingthis page as an api to a real
api get off the old data.

Speaker 2 (19:28):
I'm thinking about all of this now and it's just
really that's a good framing,because if you go back to a lot
of these implementations thatthey have, how you can do some
sort of analysis.
Then again, like you said, ifthey don't realize the bank, the
benefits and gains that theywould get from it, what do you
do?
And or do you do it as part ofanother task when you touch it,
as they say so, if you have togo and enhance it.

(19:50):
It's, it's a challenge.
It's a challenge and then itbecomes challenging to support
some of that stuff as the yearsgo on and ultimately you may end
up getting forced on somechanges to to move as the
application and the languagewhich yeah, when we all get the
email, this feature's going away.
Time to catch up those, those,uh yeah, those wonderful emails.

(20:12):
Well it's, at least if you canget some testing ahead of time,
you can try to get in front ofit.
So what are some other uh coolhacking type things?
Have you done with an al topush it to the limit?
So you've worked on that.

Speaker 3 (20:22):
Uh, advent, uh the 25 did the advent of code for fun.
Um, life's been really busylately to be able to do any
other really crazy stuff, butjust a lot of the API things
have been a lot of fun to useBusiness Central as the back end
to do work for other APIs andother processes, just because

(20:47):
it's easy to write code in.
Just because it's easy to writecode in A lot of our
integrations.
We just push data into BC usingan API, to a temp table and
then have it, since it's such aneasy language to do
record-based work in, do a lotof our processing over there and
just having a work frame likeAL is just nice.

(21:07):
It does record-based work andif that's what you're doing, I
mean I'd prefer sequel, but it'sa close second well, it is
because there isn't manylanguages I can't think of.

Speaker 2 (21:24):
I don't know every language.
Obviously it's it's tough toknow them all and they seem to
come and go and even can createthem, but where, like you said,
it is one unique thing, whereyou have a language where it
does handle all of the datamanagement for the most part for
you and, like you said, it's,it becomes a record based system
where you can work with therecords and work with the data
easily as part of the language,without having to make the

(21:46):
connection, pull back the dataset and to then manage the data
set that way.
And then it's even, you know,with the ui putting the fields
on the page.
It's so simple now.
You just have a field and youput it on there and it's magic.
It works with the data set, theunderlying data set so I do
like that.

(22:08):
I like a lot about the language.
I do see it moving to me.
It's becoming more and more dotnet.
You know, I wonder almost ifyou should just rip the band-aid
.
I understand for backwardscompatibility and all that stuff
over all the years, buteventually do you just, well it
does.
It does get transpiled intoc-sharp anyway it does.

Speaker 3 (22:29):
It does in the end.
And I and I cornered one of theuh, the developers and said why,
why can't I just have the restof mynet and it?
And it actually came down toperformance and stability where
if you gave me all the toys,then I would use all the toys
and the platform is notefficient for all of that.
And having a gated set offunctions and features means

(22:56):
that I won't be doing 40-yeartransforms in Business Central
because I won't have the toolsto do it and I won't be tempted
to waste the SaaS platform'sprocessing power on something it
shouldn't do and that if Ireally want to unlock it and
have all thenet stuff, kick itout to an Azure function and pay

(23:16):
for that and and use all thepower I want, but don't use it
off of their SAS platform.
And and it makes sense it keeps.
It keeps us gated, it keeps themice in the maze where we're
doing the things that they cananticipate, they can code
efficiencies around and they canmake sure we're not going to

(23:37):
suck up all the resources by bydoing something crazy.

Speaker 1 (23:42):
I understand that.

Speaker 2 (23:43):
I understand having a scaled back version of C sharp.
I guess you could say or, or ALdot, yeah, or or the site.
But guess you could say or orAL yeah.
Or or other sites, but it doesseem to be aggressive, which has
made development much nicer andeasier with it, because some of
the tasks that you may have todo and again you can argue it
goes back to what you're sayingwith the calendar, the.

(24:04):
How complicated tasks would youhave to do within an account?
You know ERP software.
I'm not saying people haven'tdone it.

Speaker 1 (24:12):
I'm not saying they're on cases to it.

Speaker 2 (24:13):
So before anybody starts telling me, that, oh, we
can do all this complex stuff.
You can do some amazing andgreat things, but again, the
underlying nature is is businessprocessing and business
processing.
If you need to communicate withother systems, you have the
framework for that.
So it's more of like you said,it's the, it's the record
management of the data that youprocess within your ERP system.

Speaker 1 (24:30):
It's keeping you focused within the application.
You're not like the full-stackdeveloper where you have to
learn all these hundreds ofdifferent languages.
You're just sticking with AL.
Is there any point in time youthink that's going to happen,
where you have to eventuallylearn all the other languages
because you can integrate itwith other things?

Speaker 3 (24:52):
I don't know.
My team is mixed so I have twotypes of developers on my team.
I've got the AL developer.
He got a job, he's in IT.
They bought this new productcalled Business Central and,
look, you can extend it here.
Here's a manual and theplatform.
Go to it and learned how todevelop in al and al is the his,

(25:15):
his main language, that's thethat goose main language.
They know al and maybe a littlebit of a couple others, but
they're they're al developersand they approach every problem
with straight al.
And then I've got otherdevelopers that know a dozen or
so languages, program crazythings on the side for fun and

(25:37):
and do all sorts of stuff andthey approach things very
differently and it's it's fun toteam them together because the,
the al developer, will come inrecords first and then the page
layout will be exactly likeevery other page in business
central and and the process flowis is very predictable.

(25:59):
Based upon that way businesscentral does its stuff, where my
, my stack developers that knowa bunch of different languages
are like well, in c, sharp Iwould do this and pascal I would
have gone this way, and they'relooking at it from a bunch of
different angles on how toprocess the data and their
layouts come out looking morelike windows apps than business

(26:22):
central al pages.
But they've made al do someweird things like yeah, I need a
custom control for this.
And they're just knock one outout in Java because it would
look better if they did it thatway.
And it's neat because theunconstrained by language brings
different ideas in.
But then there's efficienciesand concepts and controls from

(26:46):
the AL developer and they kindof pull each other to this
really neat center of a reallyinnovative solution to a problem
, but still very AL and businesscentral friendly.

Speaker 2 (27:00):
You hit something, I think, from my perspective and I
just read a book called Rangewhich talked about
specialization and understandingwhich goes back to something
with development that I'vealways believed in is sometimes
it's understanding the conceptsof what you're trying to do
versus the language that you'redoing it in.

(27:21):
And if you understand theconcept of what you're trying to
do even more so in 2025, youcan learn the language that you
need or how to say it in thelanguage.
Similar to, if I went into aforeign country and I didn't
know the language, I would beable to learn by being immersed
in it somewhat quickly, I wouldunderstand what I was trying to

(27:44):
say and I would be able tofigure out what I was trying to
say.
Maybe not learn the entirelanguage, but at least
conceptually I knew logicallywhat I was trying to say.
Maybe not learn the entirelanguage, but at least
conceptually I knew logicallywhat I was trying to say.
I think it's the same case whenit comes to programming
languages.
Again, it's another language,it's a way of speaking, in a
sense, and also to your pointwith what they do, with coming
around, and I see a lot ofdevelopers that are talented

(28:06):
developers in another languageor another platform, come into
AL and try to do the same thingas you had mentioned some unique
and creative ways of trying tosolve problems within AL, but
without understanding thebusiness application, it creates
some more issues, or they thinkthey have to solve the problem

(28:28):
with a little more complexitythan you need to do with an AL,
because AL has the structure towork within the application.
So in a couple places it goesback to what I'm trying to say
is I think understanding theapplication is extremely
important, and how it works,even from the user interface, is
what you had spoken about.
So that way, from theexperience point of view and
even the flow point of view, youcan make sure that you develop

(28:51):
within there and then alsounderstand what you're trying to
do, versus copy and paste abunch of code that you see in
another function and try to getit to work without really
understanding why you're doingwhat you're doing.

Speaker 3 (29:03):
Vime coding To me the language comes easy.

Speaker 2 (29:07):
It's what we used to see a lot of back early on was a
lot of copying paste from someof the the major code units, and
you could actually see wheresomebody maybe took pieces of
individual sets of code and putthem together and they got, they
did work to give them theresult.
But if you analyzed each thingof what the each line of code or
what the code was doing,sometimes they were counter, uh,

(29:30):
counteracting each other, andit's almost like set a flag,
unset the flag, set the flag,unset the flag, and they, they
could have reduced it.

Speaker 3 (29:38):
So could have been simpler.

Speaker 2 (29:40):
I do see that where a lot of individuals come in
without knowing the application,it becomes a little more
challenging a little challenging, and it's.

Speaker 3 (29:52):
I think it comes down to one of the things I chat
with my low-code, no-codefriends about is, I mean, the
language learning.
Al is a barrier.
It is more complicated thanPower Automate or any of the
other workflow tools, but thechallenge I don't think and
maybe it's because I'm old andgray-beard at this point the

(30:13):
challenge is not the language,it's learning how to solve a
problem in the environmentyou're working.
How do you?
You know the client says theywant this, how do you break
their expectations down intothings and steps and processes
that you can do?
And I think that's the hardestpart of any programming project

(30:37):
is not the language and again,that might be because I'm old,
I'll accept that, but it's a lotof.
It is teaching people how tolook at a problem and go okay,
what's the smallest unit in thisproblem that we can solve right
now?
What's the first thing?
Well, the first thing is we'regoing to need to, and they blurt

(30:58):
out the whole problem.
It's like no, that's the wholething.
Again, how about?
What does the data look like?
And break down the data?
Okay, now, what's the flow ofthe data?
How does it get in and get outand work it piece by piece.
Taking a complex problem andturning it into those little
pieces that you can code is, Ithink, the real skill.

(31:19):
That is the toughest part tolearn for any language.
And once you know how to thinklike a programming language,
then new languages is is not ashard.
Because, all right, I, I know Ineed to break down to this
piece.
How do I do it in al?
How do I do it in lua?

(31:40):
How do you do it in c sharp?
That's syntax, but you know youneed to find how to get to this
, this piece.
And uh, a friend of mine was waslearning lua and asked me to
help him learn it.
I'm like, okay, well, whatwe're gonna do is we broke it
all down in english and wehopped into uh, copilot and

(32:01):
asked it how to do each of thelittle steps in lua and we were
able to write the program inlike two hours.
Like I don't, I don't know lua,but I knew how to break down
software and I know how to askthe questions and and off we
went and it was a.
It was a whole lot of funlearning a new language by
copilot and I.

(32:22):
I can see how that's going tohelp a lot of people, but
copilot doesn't know how tobreak the problem down yet, and
I think that's the part thatpeople are most challenged with.

Speaker 2 (32:36):
You hit it right there.
It was similar to what I wastrying to say is it's not the
language, because you can figureout.
It's understanding theframework of what you have to
work with and then being able tobreak down and your point of
problem solving now that iswhere the most value is for a
problem is how can you analyzethe problem, break that problem

(33:00):
down and come up with thesolutions.

Speaker 1 (33:01):
And you're absolutely correct co-pilot works best
with small, bite-sized chunks soit doesn't work so let me ask
you this then For people thatare coming into AL development
that may have a differentbackground on different
programming language, yes, itshould be easy for them to pick
up, you know, understanding thebasic of the syntax of a

(33:23):
programming language.
But what happens for thosepeople that are coming maybe a
full-stack developer thatunderstands, you know, they have
to build the backend framework,frontend framework, all this
stuff coming into AL, it's notthe language that they're not
understanding, but thelimitation of, like, the other
tools that they can use.
I think that's where thechallenge is.
You know, and I had spoken to afull stack developer that uses,

(33:48):
you know, react and Ruby andall the other languages out
there, the modern languages, andthey had an opportunity to look
at AL and they're like, okay,what else can I do with it?
And then, of course, theythat's where they, you know they
get stuck because they're soused to other tools in their
tool belt to build something.

(34:08):
In this case, you're kind of inthe confines of what you have on
your tool set and that's it.

Speaker 3 (34:14):
Yeah, it's going from free range.
I can do anything in thislanguage, not that I should.
You can do a whole lot in Reactand then you go over to AL.
You're writing accountingsoftware.
You don't need to animateanything.
Put that down.
There are things you don't needto animate anything.
Put that down.
There are things you don't needto do here and the language is

(34:36):
not designed to let you do thosethings here.
And it's back to.
I would talk about giving youfree range of NET.
It's not going to give you theresources and the computational
power to do it, and we're alsogoing to sell it at a pretty
decent price per license becausewe're not going to give you the
ability to do things that areoff brand.

(34:56):
You are doing accounting hereand that is all.

Speaker 1 (35:01):
So in that case, if you are someone coming in and
again we're always looking fornew talent right Coming into the
business central developmentand some of those may bleed from
other modern languages.
So is it fair to say if theywere to build a solution, they
should also build it with amindset that it can be consumed

(35:24):
by other you know tools orconsumed by other, whatever
integration language that you'regoing to use, like for example,
you may build a solution wherea power automate can consume
right.

Speaker 3 (35:41):
Is that?

Speaker 1 (35:41):
something that you should consider as a person,
that's building solution.

Speaker 3 (35:45):
When I'm building stuff I like to think about okay
, I'm giving them some tables,I'm giving them some pages,
Because that's what's in scoperight now A couple tables, a
couple pages.
But you know, it's a fewminutes to take these key events
that happen and turn them intobusiness events, and that lets
us fire easily into PowerAutomate.

(36:07):
Maybe I'll throw I mean, it'sjust me working here, but I'll
throw integration events in hereso that later we can extend and
grab on.
It's nice to think about future, you and the future use cases,
especially when things likebusiness events, which are just
fancy, fancy webhooks, arealmost free to add in.

(36:30):
When this process finishes, justfire that webhook and then
later when the customer says, oh, I really wish I could get an
email when this finished, Okay,Go to Power Automate, grab this
event, send yourself an emailand they're like oh, wow, you
really thought that through.
Yeah, I really thought thatthrough and it gives you that
extra bonus thing.

(36:50):
And then when I find them fromothers, I'm like ah, that person
was thinking about the futuretoo.
And it's great because we havethose abilities and knowing that
the language has limits andthat I may need to send this out
to another package, anotherproduct, another tool, set to
finish or to do more work.

(37:12):
Knowing you have thoselimitations and coding in the
ins and outs for it makeseveryone's life better.
But sometimes you just can'tbecause a lot of these projects
that we do, we give them a quotebut the budget was set before
we showed up.
They know how much they'rewilling to spend on the project

(37:32):
and really we're giving them aquote and then we're going to
argue it down to what they weregoing to spend anyways and make
compromises and sometimes thatextensibility is the first thing
off the table.
But when I get the chance, it'sgreat to be able to do and then
get those benefits later.
When that extra scope does comeup a year later, when they're

(37:55):
ready to add in automations andthings You've already put the
hooks in, that's great, that's alot of fun and you've prepped
it.

Speaker 2 (38:01):
To go to a different language there because, with the
application constantly changingand evolving, to have that
flexibility, as you hadmentioned, to put some of those
events in there or to even codeit to the smallest possible
function and then tack thosefunctions and build them blocks

(38:22):
together is their savings in thelong run, and it doesn't take
much to get into that habit.
As you had said at first.
It may take some time to thinkabout it and to do it, but where
I got into the habit, that wastesting Once you really start
getting into automated testing.
It teaches you or forces you towork with the lowest common
denominator of functions andthen you just stack those

(38:45):
together and building blocks,even if you have to do the
repetition as you go througheach to be able to have that
expansion and to provide thevalue.
It's funny that you say thebudget.
They do have a budget.
I love those conversations.
There's a budget of what theywant to spend, which means
what's the value?
Right?
I always look at it as thevalue.
What's the value to them forwhat they're looking for, them

(39:08):
being the customer?
And then when you have to givea quote for it, I almost want to
say, when someone wants toargue it down, it's almost again
.
If somebody I would say in everyepisode is like building a
house or putting a deck on, ifyou have to make a compromise, I
told you the deck was $2,000.
If it was $1,000, I would havetold you it was a thousand
dollars, right?

(39:29):
So if you want to take athousand dollars worth of value
off, okay.
Well, now, instead of usingtrex vinyl, for example, if it's
trex vinyl, trex composite, younow have to use wood.
The wood will rot.
It can be a cheaper price, butyou'll have to replace it long.
You know you have to replace itsooner than you would have to
if you had the trex.
And that's sometimes theconversation that you have and

(39:49):
it does come down to everybodyhas a value for something, right
?
And all of us do it.
If I go buy food, what's thevalue of the food I buy to me?
I'll pay the value that I thinkit is, and it's almost like a
different conversation when youstart looking at the value of it
and then understanding thechanges that you have to make.
And it's not, it's not like anegotiation, where you know you

(40:10):
come in high, you know with theintention of, okay, well, we can
really get it for this, butwe're going to shoot for the
stars.
It's always difficultconversations to have.

Speaker 1 (40:19):
Yeah, and I think and you mentioned about like your
future self maybe maybe havingthat conversation of like if
it's a PTE or a specific problemyou're trying to solve for the
client, it's a one-off thing.
You estimate it and then youbuild it.
Maybe you'd add some businessevents.
But maybe, from the flip side ofthat, if you're building an ISV

(40:42):
application or something likethat, then perhaps consider that
so that your solution can beextendable beyond the confines
of Business Central.
In this case, give some love tothe low-code, no-code people
there in the world where theycan then interact with your

(41:03):
application and I don't seenthat as a practice out there,
but it would be easier for thebenefit for your clients that
are using your app, but alsobenefit for somebody in there
where they can consume it and dosomething beyond your
application.
I think your applicationbecomes very useful in that

(41:26):
sense and just focusing on maybeadding the features that
pertains to the business, butthe consumption of other areas
would be helpful, becausethere's been times now where we
have a client that says, hey, wewant to utilize part automate,
we wanted to see or triggerbased upon a change on this
table.
Well, the list you have is verylimited and it may be a table

(41:50):
that is a custom table orwhatever.
You have to build that right.
But it'd be really nice formaybe it's my wish list for all
the ISVs out there to considerthose for when you're building
your application.

Speaker 3 (42:07):
When I talk to ISVs, I usually corner them and say
okay, look, here's the deal.
If you tell me that yourproduct does 100% of everything
my customers want, there'seither one of two things are
true.
One, you're bloated and way tooexpensive, or two, you're lying
to me.
One or the other, becausethere's no way you can do 100%

(42:28):
of what my clients want.
They're diverse, they've gotodd expectations.
They span so many industries.
You can't make a product thatdoes everything they want.
So give me a product that does80 of what they want and a lot
of web hooks.
Yeah, give me business events,give me hooks, I will do the%.
That's what I'm good at.

(42:49):
I don't want to write awarehousing product.
I don't want to have tomaintain an entire warehousing
product, but I'll write the 20%that turns your warehousing
product into their warehousingproduct and get the most benefit
out of it.
And then you don't have to dealwith all of the weirdness.

(43:09):
Right, the best 80% you can.
And then give me the 20.
And and that's where peoplelike us all shine yeah, like,
this works almost like I want itto.
I got your fam.
What do you want it to do?
And if they've got all thehooks in there, then we set it
up and we make it do what theywant and the customer's really

(43:31):
happy.

Speaker 1 (43:31):
We're only dealing with this little 20 that we
tweaked and and the and the isvsgot the other 80 and, and those
types of relationships workgreat yeah, it's, it's a series
of isvs that do that yeah, it'sspot on, because there's been
times where, like this functiondoesn't, it doesn't exist in
this ISV, and then, whether youhave an opportunity to extend

(43:52):
that or if you don't, you sendan email to the ISV and say, hey
, maybe add this on your futurerelease.
But if you create some otherevents where they can consume
for example, even as simple asnotification that Power Automate
can consume, that you don'tneed a developer, that a power
automate can consume, that youdon't need a developer A client
can go ahead and just consume itor extend it using power

(44:13):
automate for their whatever usethey need.
It's not something that youshould, maybe don't care about,
but giving that power back tothe end user it's powerful,
Makes your product much easierto handle.

Speaker 3 (44:27):
Yeah, and I got ISVs that I'll send an email to hey
when I get to right here I needan event and sometimes they'll
send back going.
Oh yeah, that's the on before.
Blah, blah, blah.
Great, thank you, I'm going togo use that.
Other ones, it goes okay.
Next release we're doing arelease in a week.
Watch for the event.
Good, thank you.
And be able to hook in and dothe things I want to do.

(44:49):
And that type of the ISVrelationship in this space is
great, because they're typicallyreally open to listening to us
down here on the ground saying Idon't want you to add this to
the product, that would be crazy, but I need it.
So can I have a hook or anevent or something to do this?

(45:10):
And they're pretty receptiveabout that.

Speaker 2 (45:14):
They are.
A lot of them have been verywilling to help again.

Speaker 1 (45:20):
Some less.

Speaker 2 (45:23):
Thankfully I haven't had to run into too many
challenging ones.
I think everybody wants to be.
You know it's the benefit ofeverybody.
Rising tides raise all ships.
I want to jump for a little bit.
So you worked with GP before.

Speaker 3 (45:37):
Yes.

Speaker 2 (45:38):
Can you develop with GP or in GP?

Speaker 3 (45:42):
GP has its own language called DEX, and it's my
least favorite language.
So as a company we didvirtually no decks.
We farmed it all out.
Uh, at one point gp tried to doa dot net wrapper to let me
write uh, gp forms in dot netand they looked almost like gp

(46:04):
and that that didn't go anywhere.
Uh, most of our work was uhfiddling with stored procedures
and sql triggers to to do moremath.
Um, there was a couple toolscalled extender that let you add
fields.
Um, it was very, I want to say,dirty, because a lot of times
you're just in the storedprocedures or watching for

(46:26):
insert events on sql tables todo automations.
It was challenging and we stillhave lots of clients on GP.
The migration is slow, so Istill get lots of calls to work
on it and it's challenging wheneverything you do is outside the
product.

(46:47):
So you're attaching on SQL,you're using extenders and
things, but you're not a firstclass extension unless you're in
Dex.
And even when you're in Dex,loading in these dictionaries
they're called, they kind ofjust bolt onto the side just
barely.
And then moving over tosomething where BC, where all

(47:11):
extensions are treated equally,you have parity across everybody
.
It's totally different.
I can do anything the big boysdo.
In fact, we have the big boyscode, so if they're doing it, we
can look at how they did it,and it's very, very different

(47:31):
and very constraining on the GPside.

Speaker 2 (47:34):
I've talked with GP users.
I haven't really talked toanybody about the GP development
or extension to get a fullunderstanding of how you make
enhancements to it, so it seemseven from the transition.
So not only would you get aproduct that's a full if you
were to move from GP to BusinessCentral, you also have the

(47:55):
ability of the flexibility again, where you have an application
that would have 80% of what yourbusiness needs and that last
20% which may give you someuniqueness or specialty for your
individual, specific business.
It's much easier to get thereand maintain and move forward
than it sounds like it is withinGP.

Speaker 3 (48:13):
Yeah, there's a point in the conversation when we're
moving people over and we'restarting to do their data
migration, it's like, oh, youused these two user-defined
fields for these values, whatare they for and where do you
want them in BC?
And they're like, oh well, thisis the customer remote account
number or whatever.
Okay, so you need a remoteaccount number.
What else do you need?

(48:34):
Well, we have another Excelsheet where we keep track of
what system it is.
Do you want me to put remoteaccess system on the customer
record?
And their heads explode Because, like, wait, you can just add
that field.
Yeah, do you have other dataabout this customer that you're
keeping scattered, as mygrandmother would say, from hell
to breakfast?
Do you have other data aboutthis customer that you're
keeping scattered, as mygrandmother would say, from hell
to breakfast?

(48:54):
Do you have scattered data thatyou would like here?
And there's Excel sheets thatcome out of nowhere of.
Here's all this other data wekeep about our accounting system
, but it doesn't fit inside GP,so it's over here in this Excel
sheet.
It's like, oh well, I'll justadd those fields and we'll just
import that data andautomatically we transform their

(49:17):
business just by getting rid ofan Excel sheet of poorly
managed data and putting itright inside those types of
constraints.
When they go away, they reallychange how a business works.
It's a lot of fun.

Speaker 1 (49:30):
What's the biggest constraint?
I know there's beenapprehension of moving from GP
to BC.
What is the typical one?
One that I've heard istypically a customization that's
unique, and trying to replicatethat in Business Central may
not be viable or maybe tooexpensive.
I don't know.
I'm just curious from yourperspective.

(49:51):
I've never worked in GP, either, in passing, but never done
anything beyond that.

Speaker 3 (49:56):
Well, I mean, gp is 40 years old and it does lots of
things in a very GP way.
And moving those processes intothe BC world, I mean GP is
segment accounting and BC isdimension accounting.
There are different ways tothink about and work your data

(50:17):
and if your business has beeninfluenced by the way GP does
things, then you have to changethe way you do business because
BC is a different way of doingthings and it's.
Most people don't think theiraccounting package has dictated
how they run their business, butit does.

(50:38):
If it is more work for you toput data in a certain way, then
you will find a way to put it inthat's easier and your business
will constrain itself to thatmethodology.
And then, being 40 years old,there's lots of-ons to gp that
the companies don't existanymore.
I can't.
I can't get that customization.

(50:59):
It's not there.
And it was like there's somereally big ones that haven't
moved to bc, probably are nevergoing to move to bc and um
that's.
And moving those specificclients over is very difficult
because there are tools thatjust don't exist.

Speaker 1 (51:19):
Yeah, and they would have to be rewritten, or
hopefully an ISV exists.

Speaker 3 (51:24):
At some great expense .
Yeah, and it would be expensive.

Speaker 1 (51:27):
And the customer pays for that right.
It's not like someone has adeep pocket that can recreate
that solution, and you do hopethat there's a ISV or an add-on
on the app source that wouldpartly replicate that.
But there's always going to bea little bit of effort to

(51:48):
somehow get that to work ormaybe even change a business
process because of that.
So I think that's where a lotof challenges.

Speaker 3 (51:57):
And that goes for any system.
When we pull people off ofQuickBooks and they have to
follow a more strict rule setBusiness Central rules are more
strict than QuickBook rules, alot of it dealing with the fact
that business central ismultinational.
You can do things in QuickBooksthat's not legal in Europe and

(52:21):
so there are more rules.
Pulling someone from NetSuiteor any of the other great
accounting packages, there'snothing wrong with them Intact
is cool but they all have rules,they all have limitations and
they all dictate a bit of howyou do business by those
limitations and those features.

(52:42):
I do it this way becauseNetSuite does this really well
and it streamlined my businessby doing this.
If BC does that a different way, you're going to have a hard
time switching and I'm not goingto rewrite BC to make it into
NetSuite.
That's just not how we do.

Speaker 1 (53:01):
Yeah, there's so many of those right where they're
coming from another ERP, goingto Business Central, and it's
like I want it to work just likethat one, just like this.

Speaker 3 (53:11):
And a lot of times those folks are coming over by
acquisition.
They got bought parentcompany's on BC.
You're getting on BC.
They don't want to do it, sothey'll find a reason not to.

Speaker 2 (53:24):
And that sometimes is a risk during implementation is
, if somebody's saying that theycan't do something or they need
something, really validate whythey need to do it that
particular way.
In some cases, it could be froma self-imposed limitation, or a
limitation that was within theprevious system or a previous
process, or even the size of thewarehouse they were in at one

(53:44):
particular time, and they justcame up with a process that you
had to follow with.
It's challenging, it'schallenging, uh, it's.
It's challenging it'schallenging it's.
It's.
We can go all over the placewith this, but to think about
the development with, with an al, from the from the al
development point of view, doyou ever take a look at when to
develop, when to extend versuswhen to use the base

(54:07):
functionality?

Speaker 3 (54:09):
that's always a challenge.
I'm a developer, I'm paid theright code.
So a lot of times when I turnto my client go, you know what?
You should just download thisextension.
It's free, you should just dothat one.
It breaks my heart a littlebecause I would like to write
the cool code.
That's kind of what I'm paid todo, but at the same time it's

(54:29):
the customer's best interest andthat's a part of being the gray
beard is, when I was younger Iwould write code for everything.
And now you know you said getolder and you're like I don't
want to maintain code foreverything.
That's a that's.
That's a lot of extra work andclients hate paying for you

(54:52):
fixing things that broke thatthey didn't break if it doesn't
bring value.
Um, the the big wave updateswhen something changes and I
have to do a fix.
They're not getting any newfeatures from me.
But I have to go fix somethingthat microsoft broke.
They hate that.
And the the more code I put outthere, the higher tech debt

(55:14):
there is.
So I want to extend when itbrings the most value to the
client.
I want to use basefunctionality when I can and use
off-the-shelf things that I canbuy and leave that tech debt
with somebody else to managewhen it's applicable.
And again it's back to that 20%.

(55:36):
I would like to be able to usethe core and then pick up
modules from reputable ISVs for80% of the stuff the client
wants to fill that gap.
And then I'm only developing20% and that comes down to tech
debt.
Like insight works, they've gota huge package.

(56:00):
That's a lot of tech debt, butit's one deployment and when it
breaks they fix one thing thatimpacts a thousand clients.
If microsoft breaks somethingand it's in all of my extensions
I got to go fix it on everysingle client.
They recently renamed afunction and if you were copying

(56:22):
reports, you know back in BC,15, 16, there was no report
extension.
So if you need to change areport, you copy the report,
you'd paste it and you changethe number and then you'd edit
the report.
Dark, dark days, those were um.
So all the reports that weremodified that way had a uh a

(56:47):
function in it that microsoftdecided that it should be the
full name, not not this crazyshort name, and I had to go find
it.
It was in 26 of my clients thatwe copied that report for.

Speaker 2 (56:59):
You're talking about the language.

Speaker 3 (57:01):
Yeah, yes, language is not allowed.
I had to go find and change itto CU language in everybody.

Speaker 2 (57:10):
Yeah, language was one of those ones that.
That was just a recent updatethat they got anybody, like you
said it would copy the reportsover.
I saw that and uh, sequencetemplate template sequence.

Speaker 3 (57:23):
Template sequence.
It was sqnc, now it's sequencelike the full word.

Speaker 2 (57:28):
That bit me in a couple yeah no, it's interesting
to see some of, uh, some of howthis evolves and, like you said
, you made some good points.
You know the tech, that whereyou can manage it in one
location, in one place, and italso provides a very better
value for the implementation aswell.
Like you said, you don't haveall these little offshoots off,
uh, all these little crazyextensions yeah, to do some

(57:49):
certain things my team wouldrather solve the weird problems.

Speaker 3 (57:53):
They don't want to.
You know, the easy stuff thatthere's something I can get off
the shelf really well doesn'thelp the client.
It doesn't excite the team.
If you've got a team that'sexcited by sitting with the
client talking through achallenging problem and finding
a neat solution, that's a greatteam to work with.
And having them do weird littlethings where there's already

(58:16):
packages to solve them, thatthat's no fun.
You want to.
We didn't get in this, thisdevelopment career, to to be
bored.
We wanted to play with thelatest technology, solve
challenging problems.
We want to.
It's kind of fun.
We're broken people that that'swhat we do.
And uh, being able to have the,uh, the, the, the opportunities

(58:37):
to do the neat projects thatthat comes from staying out of
the things that have alreadybeen solved yes, thank you.

Speaker 2 (58:46):
Well, that's okay, but i'm'm with you on it's.
It's always.
What I say is it's.
It's.
When everyone says they try todo this cool thing and they
don't want to hold onto it towhere they're maintaining it
forever.
For me, I've always had themindset I'll teach someone to do
it because then I can go offand do the cool things and it's
like you said right there don'twaste your time doing the things

(59:07):
that have already been solvedor there's a way to solve it
easily.
Worry about focus your time ondoing the things that are
challenging and not challenging,because you're only doing the
things that are challenging, butvalue and spend your time where
it's needed and if somethinghasn't been solved, if you have
something complicated to work on, work on that versus, like you
said, creating entire warehouseimplementation software package

(59:31):
when there's some that arealready available that you can
extend, which is nice yeah yeah,and I don't know if we're
broken I don't know, I'm gonna,is everybody else broken?

Speaker 3 (59:42):
I I got.
I have a stack of board gamesbehind me.
I've got weird electronicthings happening back there.
That crazy orb, right, rightthere is actually changing
colors and patterns based uponthe online status of my team
members.
It's connected into teams andit just the patterns on the ball

(01:00:04):
change based upon their uh,their availability.

Speaker 2 (01:00:07):
That's very cool it just sits there why do you do
that?

Speaker 3 (01:00:11):
uh, that's the kind of broken I am.

Speaker 2 (01:00:13):
Okay, yeah, I didn't know if you were doing it just
to see if somebody was online orif they were offline, or you
just wanted to tinker.

Speaker 3 (01:00:22):
It started as a Christmas project.
I made a wreath that had allthe lights on it were different
team members on the wreath,because what is the holidays
without a little bit light?
Stalking of your coworkers?
And it was behind me and andchanging colors and I spent a
lot of time doing it.

Speaker 2 (01:00:41):
So I I have that.
See, that's the stuff I want totalk with you about.

Speaker 1 (01:00:43):
I want to do that cool stuff yeah, it's like all
these side projects, it's notjust, it's not just business
central right right, no, that's,it's all side projects.

Speaker 3 (01:00:52):
That's um, there are a bunch of lights called a
neopixel and there's a um, aboard called an esp32.
There's a littlemicrocontroller that's hooked on
my wi-fi and I've got acompanion app on my computer
that gets everyone's team statusand sends it over to it the
companion.

Speaker 2 (01:01:09):
Did you write the companion app?
Yep, okay, actually did you dothis with, like that raspberry
pi?
I was reading but I say youcan't.
I can only do so many things,but I would like to have some of
those cool things.
Is that board similar to, likethose raspberry pies?

Speaker 3 (01:01:22):
the pie is a whole computer.
This is less so.
It runs a block of code.
You can write code and it runsthat code.
It doesn't have an operatingsystem like you would with a
desktop, and this actually cameout of covid.
Um, the kids were home fromschool.
I've got meetings so I had hungtwo lanterns outside because my

(01:01:44):
wife works from home too, andthe lanterns were hooked to our
team status and if we're oncalls they return red.
That way when the kids cameterracing down the stairs
wanting snack or something,they'd see two red lights
outside and stop and go backupstairs.

Speaker 2 (01:02:01):
See, that's a practical use.

Speaker 3 (01:02:02):
I like that, and that way you don't have to worry
about turning it on and turningit off so it's kind of like the
on-air light and they wereoutside our offices so that the
kids would know what our statusis.
That's something.

Speaker 2 (01:02:16):
I want to do.

Speaker 3 (01:02:19):
It's on my GitHub if you're looking for it.
The whole project is there.

Speaker 2 (01:02:22):
Which?
The Teams one or the light, theTeam light or the?
I'm on a call light, or arethey all on there?

Speaker 3 (01:02:30):
Well, the on-the-call , it's just the teams like
watching one channel where thatguy is, the teams watching
everybody's channel.
So it's just a matter of who,who you want to light.
Whose status goes to whichlight.
So you put your status beingall of them.
So I could, I can, set it to mystatus, which would turn it all

(01:02:52):
red now.
So it went all red on thebackground there.
I can't see it.
Yeah, it's red, it's kind ofblown out.
Or I could set it to Dottie'sstatus.
Well, she's free Now it's allgreen, that is fascinating Brad,
maybe I'll do that for you Ilike this.

Speaker 2 (01:03:15):
Are you available?
I could just look back I likethat.

Speaker 3 (01:03:19):
No, I see that that's .
And now it's going back to thework pattern that is hilarious.

Speaker 1 (01:03:25):
That is some of the cool side projects.
Right to be able to do thosesee.

Speaker 2 (01:03:28):
Those side projects are cool.
That that is like I said.
But there's only so many thingsyou can do with technology and
everything going around it's.
I find it's hard for me to wantto read.
Sometimes I feel like I have togo outside you know, and then,
and uh, it's just a touch grassfor a minute yeah

Speaker 3 (01:03:49):
you don't have grass down there, I have grass oh, you
have grass and then I do thingswith 3D printers and lasers.
Have you ever been to amakerspace?

Speaker 1 (01:04:01):
yes, I have been to a makerspace.
My son is on makerspace andthat's fun to see so yeah, brad,
it's like a gym for nerds.

Speaker 3 (01:04:11):
Instead of having weights and swimming pools, it's
ours has got a wood shop, ametal shop.
Uh.
3d printers, laser cutterengravers it's got all that
stuff?
where is that?
You don't have to get my mine'sa mile up the street, but
they're, if you, if you look formaker spaces near me, also

(01:04:32):
called hacker spaces um, they'redifferent ones.
They're they're usuallycommunity-based.
Um.
There's another one in nexttown over.
They're more electronics and,uh, auto body, they have a, they
have they vehicle lifts.
Uh, there's one north of us,near the theater district in in

(01:04:52):
manchester, um called um, let'ssee, make it in nashua
manchester makerspace.
They do a lot of theater, a lotof props, a lot of a lot of
work like that, because they'renear a theater, so their space
is very theatrical houses in aschool, so it's super
educational, focused it's.

(01:05:13):
It's a lot of fun and all theseplaces let you get in on tools
that my wife won't let me buythat's, I heard of it.

Speaker 2 (01:05:22):
That's why I asked, because I've heard of one around
there and I remember talkingwith them when they were trying
to put it together, because theywere looking for funding to
help because they wanted to gowith the educational portion of
it, which I agreed with, becauseany place where you had that's
what I was asking about, becausethey had a memory of that with
seymour and someone was lookingfor funding because then they
would allow local you know,local school-age children to

(01:05:43):
come use the services so thatthey could learn different
things.
So that's why I was asking, Iwas just wondering if it was the
same one yes, it was make it.

Speaker 3 (01:05:50):
Labs in in Nashua has done some really cool stuff.

Speaker 2 (01:05:53):
They're a fantastic group.
Yeah, that's the one that I wasreferencing.

Speaker 1 (01:05:57):
Makerspace is amazing , especially for young.
I know my son is doing he wasdoing Lego robotics, and so they
get a lot of funding from localtech companies like STEM,
things like that.
So you know you are welcome todo, even as an adult.
So you know you are welcome todo even as an adult.
So you know, get to learn allof that stuff.
So it's great to see them buildsomething and then have a Lego

(01:06:17):
robot solve problems with someof the obstacles that it has to
go through, which is very, veryfascinating.
And, of course, it gets themstarted on.
You know programming, languageand you know developing those
things.
Pretty cool.

Speaker 3 (01:06:32):
My son was learning how to mig weld.
He's got a mig gun that sparksflying everywhere and I hear him
giggling under the mask as he'smelting metal and having a
blast it's great.

Speaker 2 (01:06:42):
Had I known marcel was so close and into all this
stuff, I wouldn't have moved.
Yeah you're welcome backanytime, I'll be back, don't you
worry, I'll be back.
Uh, yeah't you worry, I'll beback.

Speaker 3 (01:06:54):
I missed the get-together last time because
it just kept moving around and Iwasn't able to.
No, I understand.

Speaker 2 (01:07:00):
We'll definitely get it during the next trip.
But no, I have to be back withsome more permanence.
New Hampshire will always havemy heart.

Speaker 3 (01:07:09):
If you're up on a Thursday.
We have Makerspace open houseevery thursday from 6 30 to 9.
Come on by and we'll uh, we'llcut some stuff with a laser
that's so cool I want to make ateam thing, okay, or something I
want to make something.

Speaker 2 (01:07:25):
I don't know.
I don't know if I wanted to getinto that, to get into the
raspberry pi.
I was trying to think of likesome cool practical uses or
something I could do.
Maybe I'll have to like tie itto business central somehow.

Speaker 3 (01:07:34):
I don't know there's a thing called a pie hole that
you can make it's.
It's a one-day project.
You can order your pie onlineand what it does is you plug it
into your network and you set itas your dns, and when web pages
pop up that have ads, it sendsthe ads into a black hole so
they don't show up on yourscreen, and it sits back in my

(01:07:55):
network cabinet, plugged intothe network, and all my
computers in the house aread-blocked through the pie hole.
It's a one-day project Google itPie hole.

Speaker 2 (01:08:08):
P-I-H-O-L-E.
I'm going to look at it.
Pie hole I thought your piehole was something like that.
I always heard of piehole beinga mouth.

Speaker 3 (01:08:12):
Yeah, you're putting your piehole.
No, it drops all of the ads.
It does a great job filtering.
It doesn't get 100% but for noload on my computers it does a
great job of toning down all theads online.

Speaker 2 (01:08:29):
I will have to look that up and see what I can do
with that and I'll definitelynext time I'm in the area if it
fits on the Thursday eveninghave to come to this maker.

Speaker 3 (01:08:38):
And the weather's nice.

Speaker 2 (01:08:39):
Well, maybe you have to be.
Is it better when the weather'snice or better when it's cold
and miserable?

Speaker 3 (01:08:46):
It's in a school and as such there is no air
conditioning in the summerbecause the school is not
technically open, so it gets hotin there.

Speaker 2 (01:08:56):
So yeah, cooler days are better.
Okay, that's what I started tothink about the time of the year
, because I know how it gets inthose.
I'll definitely have to gothrough that, and then we'll
also have another get togetherthe next time in the area, and
we'll try to not do it on aThursday.
It just worked out.
You know how the schedule iswhen you try to get several

(01:09:16):
people together.
Well, marcel, thank you fortaking the time to speak with us
today.
I look forward to speaking morewith you and I have to check
out that Advent thing.
I know we spoke with that somemonths ago as well because
unfortunately, you know,sometimes the year gets a little
bit busier.
But now it does.
Things are freeing up where I'mgoing to have a little extra
time to do some fun things, sowe do appreciate you taking time
to speak with us.

Speaker 3 (01:09:36):
Thank you for having me on.
It was a blast.

Speaker 2 (01:09:38):
It's always.
We couldn't do this without anindividual such as yourself.
If anyone would like to learnmore about Makerspaces, about
some of the cool teams that youcan do AL Development, gp,
business Central, all the coolnerdy things you do, or even
rocket science what the coolnerdy things you do, or even
rocket science.

Speaker 3 (01:09:57):
What's the best way to get in contact with you?
Uh, you can find me on linkedinit's marcel chabot or you can
find my blog at aardvarklabsblogand, uh, I post educational
content, makerspace stuff, there, uh, almost weekly.
Um, I have some bigger projectsin mind that will probably slow
that pace down, so stay tunedto see what I'm, uh what I'll be
working on there.

Speaker 2 (01:10:12):
And next time we'll have to get get into how the odd
rock labs name came, becausewhen I saw that with you months
ago I was trying to figure outthe relationship.
Who comes up with an odd park?
So?

Speaker 1 (01:10:23):
there has to be something you got to make it to
the top of the list, man Hardbark.

Speaker 3 (01:10:30):
That's actually.
It's aardvark, that's actuallyit.
When I was uh, when I, when Iused to play uh games on the
local local, the lands, localarea network gaming days, um, I
was never sorted first by ascore, but first alphabetically.
Yeah, there you go, aardvark iswhat I put on and it just.
You know, 30 years later, Ilike to throw aardvarks and

(01:10:51):
things Still on the top of thelist.
Still top alphabetically.

Speaker 2 (01:10:57):
Thank you again, sir, for speaking with us.
We appreciate it.
I'll talk to you soon.

Speaker 1 (01:11:00):
Take care, sir, Talk to you later Ciao ciao, thanks
Bye.

Speaker 2 (01:11:04):
Thank you, chris, for your time for another episode
of In the Dynamics Corner Chair,and thank you to our guests for
participating.

Speaker 1 (01:11:11):
Thank you, brad, for your time.
It is a wonderful episode ofDynamics Corner chair.
I would also like to thank ourguests for joining us.
Thank you for all of ourlisteners tuning in as well.
You can find Brad atdeveloperlifecom that is
D-V-L-P-R-L-I-F-E dot com, thatis D-V-L-P-R-L-I-F-E dot com,

(01:11:32):
and you can interact with themvia Twitter D-V-L-P-R-L-I-F-E.
You can also find me atMattalinoio, m-a-t-a-l-i-n-o dot
I-O, and my Twitter handle isMattalino16.

(01:11:52):
And you can see those linksdown below in the show notes.
Again, thank you everyone.
Thank you and take care.
Advertise With Us

Popular Podcasts

New Heights with Jason & Travis Kelce

New Heights with Jason & Travis Kelce

Football’s funniest family duo — Jason Kelce of the Philadelphia Eagles and Travis Kelce of the Kansas City Chiefs — team up to provide next-level access to life in the league as it unfolds. The two brothers and Super Bowl champions drop weekly insights about the weekly slate of games and share their INSIDE perspectives on trending NFL news and sports headlines. They also endlessly rag on each other as brothers do, chat the latest in pop culture and welcome some very popular and well-known friends to chat with them. Check out new episodes every Wednesday. Follow New Heights on the Wondery App, YouTube or wherever you get your podcasts. You can listen to new episodes early and ad-free, and get exclusive content on Wondery+. Join Wondery+ in the Wondery App, Apple Podcasts or Spotify. And join our new membership for a unique fan experience by going to the New Heights YouTube channel now!

The Breakfast Club

The Breakfast Club

The World's Most Dangerous Morning Show, The Breakfast Club, With DJ Envy, Jess Hilarious, And Charlamagne Tha God!

Fudd Around And Find Out

Fudd Around And Find Out

UConn basketball star Azzi Fudd brings her championship swag to iHeart Women’s Sports with Fudd Around and Find Out, a weekly podcast that takes fans along for the ride as Azzi spends her final year of college trying to reclaim the National Championship and prepare to be a first round WNBA draft pick. Ever wonder what it’s like to be a world-class athlete in the public spotlight while still managing schoolwork, friendships and family time? It’s time to Fudd Around and Find Out!

Music, radio and podcasts, all free. Listen online or download the iHeart App.

Connect

© 2025 iHeartMedia, Inc.