I could be wrong but I don't think namliam was suggesting that Jet's RI was flawed based on regional settings but rather that one shouldn't rely on it to cover up sloppy coding & general laziness.
With that framed, I have to say I disagree.
From a client's POV, I don't really give a hoot whether the developer I hire is brilliant enough to re-write RI in code. I want my application yesterday and for a good price. I wouldn't pay a developer to work extra hours so he could roll out his own RI. If it happened that two different developers billed me quite differently because one developer went the lazy way and used Jet's RI while other wrote his own RI, it's no-brainer which developer I'll ask to do for next project.
From a developer's POV, I would sooner run to a codebase that was old, used many times, developed and supported by many other developer before I write my own code. It's simply me being pragmatic; Even if I was a genius coder, there's going to be chances I'll have introduced bugs and errors in my code, and all I have is "well, it should work, I think.". If it breaks, then I better as hell have adequate documentaiton to know what the hell broke. Jet's RI fits all the criteria I listed (old, re-used many times, developed & supported by several other developers) that I never think twice about using Jet's RI. Same can be said about bound forms. I can certainly write a fancy-pant unbound form, but if I can get away with same thing on bound form with much less code, then the end product is much likely to be less buggy, maintainable and scalable which is a big win for the client (see the previous paragraph).
Now, what about the claim such as "But, but Jet throws all those weird doohickey error messages and it won't let you do stuff you know it's legal to do!" My response is that's where the laziness shift. I could be lazy and just write my own code so I know exactly what it's doing or take time to understand the Jet's architecture and design within the limitations. Almost always, we can find ways that works and use it to suppress what would be otherwise confusing errors.
It's also a question of swimming downstream. You certainly can swim upstream but don't be disappointed if at the end of day, you're only a few feet upstream from where you started out.
With that framed, I have to say I disagree.
From a client's POV, I don't really give a hoot whether the developer I hire is brilliant enough to re-write RI in code. I want my application yesterday and for a good price. I wouldn't pay a developer to work extra hours so he could roll out his own RI. If it happened that two different developers billed me quite differently because one developer went the lazy way and used Jet's RI while other wrote his own RI, it's no-brainer which developer I'll ask to do for next project.
From a developer's POV, I would sooner run to a codebase that was old, used many times, developed and supported by many other developer before I write my own code. It's simply me being pragmatic; Even if I was a genius coder, there's going to be chances I'll have introduced bugs and errors in my code, and all I have is "well, it should work, I think.". If it breaks, then I better as hell have adequate documentaiton to know what the hell broke. Jet's RI fits all the criteria I listed (old, re-used many times, developed & supported by several other developers) that I never think twice about using Jet's RI. Same can be said about bound forms. I can certainly write a fancy-pant unbound form, but if I can get away with same thing on bound form with much less code, then the end product is much likely to be less buggy, maintainable and scalable which is a big win for the client (see the previous paragraph).
Now, what about the claim such as "But, but Jet throws all those weird doohickey error messages and it won't let you do stuff you know it's legal to do!" My response is that's where the laziness shift. I could be lazy and just write my own code so I know exactly what it's doing or take time to understand the Jet's architecture and design within the limitations. Almost always, we can find ways that works and use it to suppress what would be otherwise confusing errors.
It's also a question of swimming downstream. You certainly can swim upstream but don't be disappointed if at the end of day, you're only a few feet upstream from where you started out.